Tuesday 4 August 2015

Playing with Tickle and Mini-drone

Recently I bought a Minidrone Rolling Spider Parrot and used a beta version of the Tickle App (https://tickleapp.com/en-us/)  to control it.

This was the first time I have actual programmed something that flies and it is quite addictive having something you are controlling being able to move in all directions.

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

I wish the mini-drone had a little bit more battery time (I would suggest getting an extra battery).  Combining with the drone and the Tickle App does add something to the experience, rather than just control it directly (though that is fun).






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.

Friday 31 July 2015

Lego Mindstorms – Sentry Robots


Sameer Kumar Shrestha, Northampton

The report presents the dissertation on title Prototype of Sentry Robots for Advanced Security which includes the use of LEGO robots showing interaction between each other with the help of wireless communication medium in Bluetooth. The purpose of the work is to build a communication between multiple LEGO robots using the wireless technology. For this task, the NXT version of LEGO Mindstorms has been selected. It is because there is need of complex communication which is possible through wireless medium such as Bluetooth and also a suitable processing device for the proposed task which is present in the LEGO Mindstorms NXT. The report has also focused on the background information about the NXT system and its great flexibility with LeJOS NXJ as the programming platform. The outcome is the implementation of developed work with the use LEGO Mindstorms NXT and the LeJOS NXJ as programming platform. The task was approached with one LEGO NXT robot maintaining the distance between the object in the environment and searching the object by rotating in case of lost. After the completion of the first task, the next task was to study the communication behavior of multiple robots communicating with each other to fulfill the same job. For this, three NXT robots were taken and programmed in such a way that they form the shape of triangle and keep tracking the object.  All three of them send and wait for the information from each other and process this information to produce a suitable output, i.e. to respond to the action from each other. Thus, it was found that the implementation of several processes to multiple LEGO based communication had faults, due to the technical hitches with the communication technology and limitations of the NXT systems.





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.

Tuesday 28 July 2015

Picobot - a swarm bot


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 playing with programming they are good in their own right. Being small with the ultrasonic sensors gives them an non-threatening 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.

Related Links




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 26 July 2015

Narinder's Swarm Robots

This time not my experimentation but by a colleague and student I was supervising.

Some interesting work has been developed by Narinder Singh (MSc Computing student and Technician) in the Department of Computing and Immersive Technology, University of Northampton. The work revolves around investigating the use of relatively simple robots, kilobots, to investigate swarm robotics.

The kilobots (http://www.k-team.com/mobile-robotics-products/kilobot) are relatively low-cost devices specifically designed for work of swarm/collective intelligence experiments.


Example:Dancing Kilobots 

For more examples go to: Kilobot videoss

Supervisor Scott Turner


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 23 July 2015

Scratch Robot Arm

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









Downloadable from their site http://www.cbinfosystems.com/cardboard2code_module2.aspx - 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.

Left my son with it, asked him if he could make it do something if a new sprite is added and the gripper touched it (similar to the exercise in the notes). He went on to produce a sprite that when it is touched by the gripper, went on to change colour a few times. I could see this being potentially used in Coding Clubs within schools.





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




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 22 July 2015

mbots - graphical programming and Arduino

Makeblock (http://mblock.cc/mbot/) funded through Kickstarter the development of a new robot - mBot (https://www.kickstarter.com/projects/1818505613/mbot-49-educational-robot-for-each-kid) 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, to program a robot with LEDs, light sensors and buzzer integrated on the main board; but also comes with sensors for line-following, ultrasonic sensor and with the version in the kickstarter reward a 16x8 LED matrix.

My impression so far it is really quite intuitive to work with, in the example above 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. 



Related




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.

Monday 20 July 2015

Lego Robot and Neural Networks

An overview of using Lego RCX  robots for teaching neural networks present at workshop in 2011.



The video below shows the robot trying out sets of weights for two neurones, until a set of weights are found that enable the robot to go around the circle.





As a part of a set of tools I have found the following useful for teaching the principles of simple neurones.

 Example code:

import josx.platform.rcx.*;

public class annlf{
 public static void main(String[] args)
 {
  int w[][] ={//put weights here};
  int o[]={1,1};
  int s1,s2,res1,res2;
  int sensor1=0,sensor2=0;
  robot_1 tom=new robot_1();
  Sensor.S1.activate();
  Sensor.S3.activate();
  for(;;){
   sensor1=Sensor.S1.readValue();
   sensor2=Sensor.S3.readValue();
   LCD.showNumber(sensor1);
   if (sensor1<42)
    s1=1;
   else
    s1=0;
   if (sensor2<42)
    s2=1;
   else
    s2=0;
   res1=w[0][1]*s1+w[0][2]*s2+w[0][0];
   if (res1>=0)
    o[0]=1;
   else
    o[0]=0;
   res2=w[1][1]*s1+w[1][2]*s2+w[1][0];
   if (res2>=0)
    o[1]=1;
   else
    o[1]=0;
   if ((o[0]==1)&&(o[1]==1))
    tom.forward1(10);
   if ((o[0]==0)&&(o[1]==0))
    tom.backward1(20);
   if ((o[0]==1)&&(o[1]==0))
    tom.tlturn(20);
   if ((o[0]==0)&&(o[1]==1))
    tom.trturn(20);
   LCD.refresh();
  }
 }
}

The example code uses two neurones to produce a line follower. The nice thing about this though is it easy to adapted this for a single neuron or multiple neuron tasks. For more on this some examples can be found here.
The above approaches used the Mindstorms RCX robots but it can equally be done with the newer NXT robots


 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.

Top posts on this blog in March 2024

The Top 10 viewed post on this blog in March 2024. Covering areas such as small robots, augmented reality, Scratch programming, robots. Micr...