Sunday, 22 November 2015

Robot Software

In the previous blog posts for this 'series' "It is a good time...." 


  • Post 1 looked at the hardware unpinning some of this positive rise in robots;
  • Post 2 looked at social robots;
  • Post 3 looked at a collection of small robots;
  • Post 4 looked at further examples of small robots

Robots, such as the forthcoming Buddy and JIBO, will be based some established open sourceand other technologies. Jibo will be based around various technologies including Electron and JavaScript (for more details see: http://blog.jibo.com/2015/07/29/jibo-making-development-readily-accessible-to-all-developers/). Buddy is expected to be developed around tools for Unity3d, Arduino and OpenCV, and support Python, C++, C#, Java and JavaScript (for more details see http://www.roboticstrends.com/article/customize_your_buddy_companion_robot_with_this_software_development_kit). This post continues with some of the software being used with the smaller robots. 

A number of these robots are being programmed via Scratch or Scratch-like environments for example the OhBot (http://ohbot.weebly.com/) or Crumblebot (http://robotsandphysicalcomputing.blogspot.co.uk/2015/07/edge-following-crumblebot.html). Arduino based systems, discussed in Post 1, form the basis of a relatively large number of robots. Some other ways are discussed below.  



LeJOS
LeJOS (http://www.lejos.org/index.php) is an alternative way to program the LEGO Mindstorms Robotic Systems including the oldest RCX to the latest EV3. What it does is allow the robots to be programmed in Java by putting a small virtual machine on the controller/Brick. 

Some examples of it in use or being discussed can be found at:


A relate tool that use LeJOS as one of its underpinning technologies is Enchanting. A Scratch-like way to program LEGO robot based around Mindstorm NXT and EV3. For more details on this go to: http://enchanting.robotclub.ab.ca/tiki-index.php



Tickle


Tickle (https://tickleapp.com/en-us/) is one of my favourite of the physiclal computing programming tools at the moment. It is designed for program a quite range of devices using a 'Blockly-like' graphical programming approach. The Sphero range of robots and some of the Parrot Drone are supported.


When  I recently bought a Parrot Rolling Spider Mini-drone, I used the Tickle App (https://tickleapp.com/en-us/)  to control it. This was the first time I have actual programmed something that flies; the fact you are controlling  something you able to move in all directions is very engaging.

On the left is an example used; essentially lift off, repeatedly move forward, turn and in the end land.

As well as drones, the Sphero robots can be controlled using Tickle (that is how I first came across it). This does also include the entertaining and popular Sphero Star Wars BB-8. Which is well worth a play, if you get an opportunity. Dash and Dot (see http://robotsandphysicalcomputing.blogspot.co.uk/2015/07/cutest-computational-thinking-in-world.html for more details)  are also controllable through Tickle was well. 


Also a number of devices such as Punch Through Design's Arduino-based LightBlue Bean (https://punchthrough.com/bean-teaser), a Bluetooth Low Energy (BLE) microcontroller are supported- I have get to play with this one though.

I like the Tickle App because of its easy of use but mainly for the company's expansion of the range of devices supported.




Feedback
Please add comments with other software choices.



All opinions in this blog are the Author's and should not in any way be seen as reflecting the views of any organisation the Author has any association with. The author does not and can not take responsible for any harm cause by the software discussed - if you are unsure do not use the software.

1 comment:

  1. Nice post! This is a very nice blog that I will definitively come back to more times this year! Thanks for informative post.
    kids drone

    ReplyDelete

Who wants to produce AI produced cartoon strips

Question: How easy is it produce a comic/cartoon using genetative AI? Let's start with  using ChatGPT4o to produce cartoons. The idea wa...