Sunday, 19 February 2017

Cozmo - Wall-E has a rival

I suspect someone from Anki was watching Wall-E (not the first to notice that see verge article http://www.theverge.com/2016/6/27/12007772/anki-cozmo-robot-ai-toy-wall-e-pixar) when they designed Cozmo it sounds, looks a bit like and has cuteness of Wall-E; but resembles the little cleaning robot M-O (which it is hard not to like); all crossed with a cute bulldozer. That is two ‘cutes’ in one sentence – this is a robot has this in abundance. From saying your name, to excitedly tapping the blocks, to victory dances when it wins a game. This is a smart little robot full of a lot of features that are revealed over the days you play with it.


The video from the manufacturer, Anki, above gives some idea of the technical aspects of it.

Anki have already produced an open-source SDK https://developer.anki.com/en-gb that is Python-based.

Powering up Cozmo for the first time and connecting to the App is relatively easy and quickly you are into playing with it (I am trying not to say him or her). 





It is not, at the time of writing, available in the UK; I ordered mine from amazom.com and it arrived within two weeks. 



My personal view is Cozmo is worth the price (I paid $179.99 + shipping, etc), the Anki team behind have made this a small robot that packs in a lot of user experience. You want to play with it, and hear it say your name or watch it win or lose in a game with you. I am looking forward to trying to program it - but maybe first I will just go and have another game of tapping the blocks, or through AR watch it picking up the blocks from its perspective, or...

SDK
Installation guide - http://cozmosdk.anki.com/docs/initial.html


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. Twitter @scottturneruon

Saturday, 18 February 2017

Robot insect for the home - Antbo

Robot insect for the home, Antbo, started as a crowdfunded project (see the video below) (https://www.indiegogo.com/projects/antbo-an-insect-robot-anyone-can-build-steam-diy#/) from the DFRobot Robotics. 

This is post is not really a fully review, just some initial thoughts, as I haven't spent enough time playing with it; but what I have seen so far does interest me.



The price during the crowdsource was around the $59-$69 which because of the range of sensors and features does seem reasonable. The screenshot below is taken from the funding website discussing some of the features.




An intriguing point in the literature is the self-learning - using 30 neuron neural network – I would love to have more details of this one.

At the moment I have been controlling it through the iPad app which gives a variety of modes - directly driving; setting it on patrol (first picture below); drawing a path on screen for it to follow (third picture below) and even voice command. All of which it is good for the price point.







DFRobots have developed their own app based programming interface WhenDo (https://itunes.apple.com/us/app/whendo/id1001086940?mt=8) see below , I have only had a brief play with it but seems well featured with functions.



There is a way to connect it to Scratch, this is something I am looking forward to finding out more of and playing with.

One of the things I am always skeptical about from promotional materials, is the build time of projects, the robot "in under an hour" kind of thing; in this case it was true it is quick to build.  I had a problem with it not powering up at first, this helpful website came in useful: https://www.dfrobot.com/wiki/index.php/Antbo_SKU:ROB0140 . The problem was one of the connectors needed to be bent to improve the connection.

So based on what I have seen so far, I am glad I bought it (in fact it was two of them) and will enjoy playing with it/them. 

Something I would be interested in is hearing comments from others who have one (or more) of these. What have you found out?



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. Twitter @scottturneruon

Sunday, 29 January 2017

my robot BETT2017

I will start with a confession, I only had about 2 1/2 hours at BETT 2017 due to external time pressures so to say I didn't yet a chance for a good (or even a bad) look around is an understatement; so I am not reviewing the show just a few notes on what I did manage to see.


STEAM Village
First and mostly, it was great to talk to so many people, only few I had met face to face previously, about robots, micro:bits, Raspberry Pis and coding. Most of this happen in the relatively small (compared to the event space) STEAM village and nearby stalls. It was great to see the strong presence of both Raspberry Pi and Micro:Bit Foundation, along the variety of different activities and example usage of both, with Code Club (I know it is part of Raspberry Pi Foundation) there was well. This was all alongside some other companies

Four of these stuck in my mind.

1. DFRobot (https://www.dfrobot.com/) with their range of Arduino-based robots and non-programmable kits. The two kits that caught my eye was the FlameWheel robotics kit (to see more on this go to https://www.dfrobot.com/index.php?route=DFblog/blog&id=563) and the Insectbot kit (see the video below). As an aside, I recently got one of their new designs Antbo through a crowdfunding offer https://www.indiegogo.com/projects/antbo-an-insect-robot-anyone-can-build-steam-diy/ (more this in a future post)




2. School of Code (http://schoolofcode.co.uk/) with their web-based coding but with the emphasis on collaborative coding was great to see. Have at go for yourself at their character building example http://www.schoolofcode.io/game-avatar, done as part of the Hour of Code, it is good fun.


3. It was great see GitHub were there was as well, and they couldn't be more generous with the stickers and other materials. I wish I had more time to talk to them.

4. Last but not least was CBiS Education (http://www.cbis.education/) with an extremely tall model of their DIMM robot. I think their products are interesting, here are a few earlier posts about projects with their products Robot Arm and Python, UFO talks to Robot part 1, UFO talks to Robot part 2).


Outside of the STEAM village
There were two stands that particularly caught my attention.

Robots In Schools Ltd (I wish I own that name) with their Edbot package - a single Edbot but networked so the teacher can share access to the robot by assigning control to the students machine. I really liked this idea. For more details go to: https://robotsinschools.com/inclassrooms/.

Second was Ubtech (http://ubtrobot.com/) with their Alpha 1 and 2 (more on Alpha 2 in a future post). What I found most interesting was their ideas of potentially embedding Raspberry Pi or Arduino inside their Alpha 1 for a more open source solution.


Would I go back next year? 
Yes please, but I just want a day or more there though next time.  

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. Twitter @scottturneruon

Friday, 30 December 2016

Neuron Controlled Edge follower updated

In the last post experimentation with an artificial neuron controlling the Bit:Bot to follow the edge of a line (it follows the left-hand side of the line).




More details can be found in the previous post.The neurons (well two separate ones, S1 and S2) are produced using weighted sums - summing the weights x inputs [ right-hand sensor (rs) and left-hand sensor (ls)] plus a bias for each neuron in this case w[0] and w[3].
    net=w[0]+w[1]*rs+w[2]*ls      
    net2=w[3]+w[4]*rs+w[5]*ls


If weighted sum >=0 then its output 1 otherwise 0


What actual causes S1 to be either 1 or 0 is all defined by a set of weights w (three for the first neurone, S1,  three for S2).

w=[0,-1,1,-1,1,-1]


Modifications to the code in the last post have been around fine tuning the values in converting the outputs of the two neurons S1 and S2 into actions as shown below.
    if s1==1 and s2==1:
        forward(20)   
    elif s1==0 and s2==1:
        forward(15)
        right_turn(25)
    elif s1==1 and s2==0:
        forward(15)
        left_turn(25)       
    elif s1==0 and s2==0:
        backward(5)

The functions for forward, right_turn, etc are defined elsewhere.


To change the function of the system, change the values in wThe complete code is shown below.


Code
from microbit import *
import neopixel, random, array

w=[]  

def forward(n):
    pin0.write_analog(551)
    pin8.write_digital(0) 
    pin1.write_analog(551)
    pin12.write_digital(0)
    sleep(n)
    
def backward(n):
    pin0.write_analog(551)
    pin8.write_digital(1) 
    pin1.write_analog(551)
    pin12.write_digital(1)
    sleep(n)
    
def right_turn(n):
    pin0.write_analog(511)
    pin8.write_digital(0) 
    pin1.write_analog(511)
    pin12.write_digital(1)
    sleep(n)
    
def left_turn(n):
    pin0.write_analog(551)
    pin8.write_digital(1) 
    pin1.write_analog(551)
    pin12.write_digital(0)
    sleep(n)
       
w=[0,-1,1,-1,1,-1]

while True:
    ls= pin11.read_digital()
    rs= pin5.read_digital()
    
    net=w[0]+w[1]*rs+w[2]*ls
    net2=w[3]+w[4]*rs+w[5]*ls

    if net>=0:
        s1=1
    else:
        s1=0

    if net2>=0:
        s2=1
    else:
        s2=0
   
    if s1==1 and s2==1:
        forward(20)   
    elif s1==0 and s2==1:
        forward(15)
        right_turn(25)
    elif s1==1 and s2==0:
        forward(15)
        left_turn(25)       
    elif s1==0 and s2==0:
        backward(5)


Video of it in action:






Please feel free to use the code and improve on it, and I would especially welcome the seeing the improvement through the comments.



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. Twitter @scottturneruon

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...