Sunday 22 November 2015

It is a good time to play with robots

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;

This post continues with small robot idea a bit more, looking at some of the other robots I have been fortunate to be able to play with. The opinions are from a personal point of view of playing with them, but comments are very welcome.

Kbots

The kilobots (http://www.k-team.com/mobile-robotics-products/kilobot)were designed to be relatively low-cost devices specifically designed for work on swarm/collective intelligence experiments. Developed at Harvard University as a scalable system to program groups of robots (now into the thousands) (http://www.eecs.harvard.edu/ssr/projects/progSA/kilobot.html).



Individually these are quite simple units, they move by vibration. The real advantage, in my opinion, of the system though is you can program lots of them in one go - scalability is therefore not that difficult.

The video below is from a colleague's work who used these during his MSc work on collective intelligence. To read more on this go to: http://robotsandphysicalcomputing.blogspot.co.uk/2015/07/narinders-swarm-robots.html





Scratch Robot Arm


It is not physical but CBiS Education have release a free robot arm simulator for Scratch. 

Downloadable from their site here - it includes a Scratch project, guidance on Scratch along with an exercises in using the robot arm simulation and an exercise with teacher's guidance. 

CBiS produce a physical version of this, details are available at  http://www.cbinfosystems.com/cardboard2code_module3.aspx




What I like about this is, apart from being free, is it is Scratch-based and it does simulate physical problems such as the need to co ordinate multiple parts of the arm often to achieve a task.


LEGO
Where do I start with these? LEGO have done a great deal to get a lot of people interested in, and provided a route into robotics. Whether though the 1980 - 1990s with the Technics range or when they released their Mindstorms (I can see another post coming on here).

My interest has been focused for the last ten years or so on their use in teaching problem-solving and Java Programming to undergraduates (read more here). The combination of either the earlier RCX or NXT ranges with the incredible LeJOS (http://www.lejos.org/) provides an accessible and easy (I think easy some times) way to link robots and undergraduate programming in Java.

I will expand on these a little more in a post of dedicated to LEGO .


Junkbots

Another shameless plug, Junkbots, was a project that started close eight years ago concerned with linking computing, engineering and environmental science in activities for use in schools. The core was to use and look at waste and how could we combined waste materials and robotics to either build a 'bot' out of junk or used in combination with robotics (initially based around LEGO) to clear small junk piles (a few light materials - nuts, bolts). To read more on this project go to http://junkbots.blogspot.com/ .

The area that quickly became the focus was the building 'bots' out of junk (session plan: http://junkbots.blogspot.co.uk/2015/08/junkbot-session-overview.html). This evolved into the building one of these but controlled via a raspberry Pi. This is the idea discussed below.

The card chosen to control the motors was the 4Tronix PiRoCon card. It fits straight onto the Pi through the GPIO - no extra cables needed. ScratchGPIO has it as an addon so it makes programming it even easier (see http://cymplecy.wordpress.com/2013/10/31/pirocon-from-4tronix/). It is quite easy plug the board directly on to the GPIO connector of the Raspberry Pi (4tronix provide some advice in section 15 of http://4tronix.co.uk/blog/?p=22 on mounting the board). The only other changes I needed to make because I wasn't powering the motors through the DC input I had to change the jumper settings next to Vin Connector (see http://4tronix.co.uk/blog/?p=41 for layout) to reflect this.

Now for the fun bit getting the whole thing to draw (see Figure 1 and the video at the end)!

The junkbot itself is made up of a drinks can, three supports ( LEGO was used here but it equally could be straws, sticks), a pen/pencil, and a  motor and broken propeller combination to create an unbalanced motor.

With the Raspberry Pi off, the the motor's wires are connected to the controller card at the connections for MotorA and the battery is also connected. Turn the Pi on and run ScratchGPIO5plus.


Figure 2
Figure 3





Figure 4















The first task is to make the variables AddOn (which will be used to tell the program we are using the PiRoCon card) and MotorA for the motor (see Figure 3).

In Figure 4 the program can be seen, essentially the left and right key spin the junkbot clockwise or anticlockwise by setting the Motor to either +ve or -ve values from 0 to 100. The space bar is used to stop the motor.

As it moves because one of the supports is a pen it draws. See the video below to watch it draw a squiggly line - control is still a challenge.

 
The bot was developed by Hayden Tetley and Scott Turner. Hayden's time was paid  for through the Nuffield Research Placements  Scheme (http://www.nuffieldfoundation.org/nuffield-research-placements).

Related Link

 




In the next post in the series I want to look at the software a bit more.




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.

Wednesday 18 November 2015

Impact of research

A recently released kickstarter project website http://www.robotixedu.com/phiro.aspx has quoted research from the University of Northampton. This is an interesting product designed to teach children programming . In essence programming robots is good way to develop problem-solving skills.



The publication mentioned can be found at



  • Robots in problem-solving and programming (Scott J Turner, Gary Hill), In Proceedings of 8th Annual Conference of the Subject Centre for Information and Computer Sciences, Higher Education Academy Information and Computer Sciences Centre, Ulster, pp. 82--85, 2007. [paper]

  • With example related paper :

      • Problems first second and third (Gary Hill, Scott J Turner), In International Journal of Quality Assurance in Engineering and Technology Education (IJQAETE), volume 3, pp. 88--109, 2014. [paper]
      • Robotics within the teaching of problem-solving (Scott J Turner, Gary Hill), In ITALICS, volume 7, pp. 108--119, 2008.[paper]

    To read more about the research by the team in the area of robots for developing problem-solving skills go to:

    http://compuationalthinking.blogspot.co.uk/2015/03/problem-solving-publications.html


    If you'd like to find out more about Computing at the University of Northampton go to: www.computing.northampton.ac.uk. All views and opinions are the author's and do not necessarily reflected those of any organisation they are associated with or endorse the product.


    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.

    Sunday 15 November 2015

    Robotics within the Teaching of Problem-Solving

    Robotics within the teaching of Problem-Solving



    Volume/Issue:  Vol 7, Issue 1

    Date:Sunday, 1 June, 2008

    Journal Name: ITALICS

    Author(s)

    Scott Turner
    Gary Hill

    Abstract
    This paper considers the experiences of teaching on a module where problem-solving is taught first, then programming. The main tools for the problem-solving part, alongside two problem-solving approaches, are tasks using Mindstorm (LEGO, Denmark) robot kits. This is being done as a foundation step before the syntax of a language (Java) is taught to enable a Graphical User Interface (GUI) emulation of a previous robot problem. Results of student evaluation and feedback will be presented and the use of two simulators will be considered.

    Full paper available at: https://www.heacademy.ac.uk/robotics-within-teaching-problem-solving or PDF version https://www.heacademy.ac.uk/sites/default/files/ital.7.1h.pdf

    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.

    Saturday 14 November 2015

    It is a good time to play with little robots

    In the previous two posts, mentioned the low-cost small devices are opening up new opportunities for robotics (http://robotsandphysicalcomputing.blogspot.co.uk/2015/10/it-is-good-time-part-one-introduction.html) and the rise of social robots in the home (http://robotsandphysicalcomputing.blogspot.co.uk/2015/10/it-is-good-time-2-social-robots.html) was considered.

    In this post and the next, 'small' robots (my phrase), relatively low cost robots, are considered. A few examples are discussed.


    Picobot


    One of the most interesting small robots on the market is the PicoBot from 4Tronix (http://4tronix.co.uk/blog/?p=708). 


    These are small, relatively low-cost robots with a good range of basic sensors based around Arduino. A nice feature is they are quick to put together (5-10 minutes each for the two above).  The size, time to build and the radio modules make them an interesting option for playing with swarm robotics - if only I had the money.


    Don't let the swarm robot idea put you off, as small robots to play with programming they are excellent in their own right. Being small with the ultrasonic sensors gives them an non-threatening/cute look; add in they have some build it programs to play with (select by buttons on the bot) to get you going without any programming.





    Crumblebot

    CrumbleBot (http://4tronix.co.uk/store/index.php?rt=product/product&product_id=493) is based around the Crumble Controller (http://redfernelectronics.co.uk/crumble/) providing i think an intuitive graphical interface (similar to Scratch) to control two motors and four inputs/outputs. The CrumbleBot comes with line-detecting sensors and Light-Dependent Resistors for light detection, with a few other features that I have yet to play with. So is nice little framework for simple robotics. Make sure you order the Crumble Controller at the same time as CrumbleBot.

    So I wanted to experiment with making a edge following robot - where the robot goes around a line by following the edge of the line. The idea is while make small movements,



    • Check that one of the sensors is on the line (in my case the right sensor);
    • If that sensor detects the line, then pull the robot to the left slightly and then forward a small step;
    • If the sensor does not detect the line, the pull the robot to the right slightly.


    mBots
    Makeblock (http://mblock.cc/mbot/) developed mBot Educational Robot with the subtitle "$49 educational robot for each kid". What they came up with is a interesting system that uses their mBlock software, which resembles Scratch but produces code for Arduino. 

    My impression so far it is really quite intuitive to work with, in the example below I fairly quickly got the robot:



    • moves forward;
    • displays 'f' on the LED matrix; 
    • turns right;
    • displays 'r' on the LED matrix;
    • repeats until the on-board is pressed to stop the motors. 


     What I like most though is seeing the graphical code turned into Arduino code - the potential to see the same thing done into two ways adds extra educational value. 




    Dash and Dot

    Wonder Workshop (https://www.makewonder.com/) produce the Dash & Dot robots (see picture above). It is hard not to be charmed by these robots, they are cute, easy to use, download the Apps and you are ready to go almost out of the box - and add to this an easy to use but fairly powerful tool for developing programming.


     Blockly, available as one of apps, can be used to program the robots. It is a simple looking graphical language (simpler looking but similar to Scratch). A simple example (shown opposite) where Dash (the bigger of the two) does things such as  moves forward,  going left, lights change to orange, , left ear changes colour, head moves forward and it roars like a dinosaur. It relatively easy to then add loops and test (such as checking if it's 'friend' Dot is in view). Below is a very short video of Dash moving around until it 'sees' Dot.





    It is difficult not to anthropomorphise these, especially when they are left alone they try and attract your attention with noises. They are just fun as well.


    Recently, other developers have been producing alternative programming approaches. The Tickle App (https://tickleapp.com/en-us/) has added these robots to their supported devices.





    Now what?
    There are new robots coming out all the time at the moment.

    As an example an exciting project by Robotix called Phiro (http://www.robotixedu.com/phiro.aspx) with two versions aimed 4-8 years using swipe cards to program it or one aimed at 9-18 years (and probably a lot older) programmed with a variety of programming languages. The robot can be linked with LEGO bricks, a definite plus. Being able to program it on PC or smartphones is a great feature.
      



    Two others Ringo and Wink developed by Plum Geek http://www.plumgeek.com are interesting. Ringo, which is out now, is a simple looking and relative inexpensive, arduino-based robot that is actually has quite a few sensors (accelerometers, gyros, line-following, light) and has some predefined routines installed. As it is arduino-based, it is programmable as well. Wink is a new robot that is, at the time of writing, a kickstarter project (https://www.kickstarter.com/projects/plumgeek/wink-learn-to-code-with-a-bug-robots-for-everyone) aimed a teaching programming and based on many of the parts from Ringo.




    The next post will consider some of the interesting software that is providing some fun opportunities.




    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.

    Sunday 25 October 2015

    It is good time to play with Social Robots

    Social robotics has a research area in Universities for a while, looking into interface with robots that are based around our social cues, or modelling social cues to understand neurodiversity such as Autism. Some great work by companies such Aldebaran Robotics (https://www.aldebaran.com/en) with their Nao and Pepper robots have raised the profile of social robotics.



    People like Cynthia Breazeal leading on this:



    What I find most exciting is these robots are now they are coming into the home.





    OhBot
    At the entry level in terms of price, and very well featured, is the OhBot (http://ohbot.weebly.com/). This is a  is a kit for a robot head with a Scratch-like interface having face-detection, some speech recognition in the current version; controlling several servos to get facial movement. It has provided hours of fun so far (see the video below). This is a great bit of kit for its price.




    Jibo
    Jibo has been developed by a company headed by Cynthia Breazeal. It is not yet released (end of 2015/beginning of 2016) but the videos make it look very interesting. A stationary robot that seems to be about providing a social interface to many of things we do.







    Buddy
    A robot soon to be released by Bullfrog Robotics (http://www.bluefrogrobotics.com/buddy-your-companion-robot/) . This is an incredible cute robot. 




    Related links
    It is a good time: 1 Introduction


    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.

    Saturday 24 October 2015

    It is good time 1: Introduction

    I have want to write this for a while, a short series of blog posts on why I think this is in an incredible time to be interest in robots and physical computing.

    Three posts in the series:
    - Introduction
    - Small robots
    - Social robots

    It only takes a quick look on line to see a vibrant and growing network of people who are sharing and supporting each other to use physical computing to do imaginative things. They might go under different names PiJams, Makerspaces, etc but essentially it is about bring people with similar interests (and those are wide) in physical computing together. That is just, physically, but now adding a on-line community that also shares and supports each other you have something that is worth being involved in. If you are unsure  what I mean by this have a look at some of the following people's twitter timelines:
    @whaleygeek (https://twitter.com/whaleygeek)
    @ martinohanlon (https://twitter.com/martinohanlon)
    @simonmonk2 (https://twitter.com/simonmonk2)
    +Carrie Anne Philbin @MissPhilbin (https://twitter.com/MissPhilbin)
    @Makerspaces_com 
    @TheMagP1

    From a very long potential list



    Powering all this (apart from drive, enthusiasm, creativity, inventiveness, ....of the people involved) is a number of small devices. Two examples include:


    • Arduino (see more on these at https://www.arduino.cc/) which are a range of open-source hardware and software components designed for wide use as the basis of physical digital projects (robots anyone?). These are generally low-cost boards and if you go to Kickstarter (https://www.kickstarter.com/) it doesn't take long to find projects and projects that have +Arduino at their core. 

    • Raspberry Pi (https://www.raspberrypi.org/) is one of the other drivers of this. Essentially a low-cost single board computer developed (and well supported) with the intention of being used to teach basic Computing and potential used in the developing countries. I think it took most people with an interest in physical computing probably less than a second start imagining potential things that can be done with it - and so they went on to prove.


    Ok, so what? Why does this matter? My opinion this area is fun to start with, but if you look at the creativity that is going on; new products (that are a mixture of genuinely new ideas, radical refinements or lower costs takes) are being created rapidly. This is exciting.

    The next two posts will be about small and social robots emerging at the moment.


    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.

    Thursday 10 September 2015

    Sphero Droid BB-8 on patrol




    Sorry not programming this time, but this is a great little toy. An App-control robot from Sphero based on the Star Wars new Sphero BB-8 Droid . The video shows it in patrol mode, which in the case of my one is either rolling under the chair or rolling around the room.



    One of the other parts of the app include an augmented reality option where on the tablet it appears to be projecting messages and videos (included ones you create).



    It is difficult to resist playing with this one.



    ChatGPT, Data Scientist - fitting it a bit

    This is a second post about using ChatGPT to do some data analysis. In the first looked at using it to some basic statistics  https://robots...