Showing posts with label arduino. Show all posts
Showing posts with label arduino. Show all posts

Sunday, 26 March 2017

Phiro Pro Robot - a little box of fun.

Phiro Pro is a recently released education robot kit from Robotix Learning Solutions. Designed to be flexible, you can add LEGO to it or work without it; sensors on the sides, front and bottom; built-in speaker and RGB controllable 'headlights'.



One of the other interesting features is the robot can be controlled in three general ways/modes:

  • Using buttons on the robot to enter a sequence of moves - a bit like a Bigtrak
  • Using swipe-cards (see the figures below)
  • Programming using:
    • Scratch - Mac or PC
    • Snap4Phiro - Arduino programming PC/Mac/Linux basded.
    • Pocketcode on smartphone.



The first two are fun and are also available on their lower-priced Phiro Unplugged version, but the real (for me any way) is programming it. So far I have only played with the Scratch instructions (see below) - getting it to move to key presses and to get the 'headlights' to cycle through a range of colours.




The software is free to download and there are numbers of lessons and activities on the site - the only criticism of the site is the manuals for the software were not very easy to find,  included in the section for the lesson  (though I might have missed another way to get to them).

Setting it up is up is relatively easy, but the instructions need to followed carefully - I set-up the software in the wrong folder (not following the instructions properly) and it delayed geeting it working. It is good fun to play with in all the modes (my favourite is programming though). 

The stated research backing is good to see on the website, but then I am biased (see the last one).





More about this robot kit can be found at http://www.robotixedu.com/phiro.aspx or Twitter at 


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

Monday, 16 May 2016

First Try with 7bot Robot Arm

In a previous post (http://robotsandphysicalcomputing.blogspot.co.uk/2016/05/playing-7bot-robot-arm.html) I discussed starting to set up the 7bot robot arm (https://www.kickstarter.com/projects/1128055363/7bot-a-powerful-desktop-robot-arm-for-future-inven) . I have still to set up the gripper.

This post document my first tentative steps with playing with it. The code below was used to try and get my head around the positioning of the arm - which servo does what (a good guide for this has been provide by the company online) and what the changing angle on the servos actual does. Essentially the code puts the arm in a starting position and varies the angles from there in usually in 15 or 30 degree increments over seven positions.

#include <Servo.h>
#include <DueFlashStorage.h>
#include <Arm7Bot.h>
Arm7Bot Arm;
void setup() {
  // initial 7Bot Arm
  Arm.initialMove();
}

void loop() {
  // set motor[0] speed to 100
  Arm.maxSpeed[0] = 30;
    double angles_0[SERVO_NUM] =  {0, 100, 90, 0, 90, 90, 75};
  Arm.move(angles_0);
  // Move to pose 1
  double angles_1[SERVO_NUM] =  {0, 100, 0, 0, 90, 90, 75};
  Arm.move(angles_1);
  // Move to pose 2
  double angles_2[SERVO_NUM] =  {30, 110, 15, 0, 90, 90, 75};
  Arm.move(angles_2);
  // Move to pose 3
  double angles_3[SERVO_NUM] =  {60, 120, 30, 0, 90, 90, 75};
  Arm.move(angles_3);
  // Move to pose 4
  double angles_4[SERVO_NUM] =  {90, 130, 45, 0, 90, 90, 75};
  Arm.move(angles_4);
   // Move to pose 5
  double angles_5[SERVO_NUM] =  {120, 140, 60, 0, 90, 90, 75};
  Arm.move(angles_5);
  // Move to pose 6
  double angles_6[SERVO_NUM] =  {150, 150, 75, 0, 90, 90, 75};
  Arm.move(angles_6);
  
}   

Video below shows the routine in action.



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, 4 May 2016

Playing with 7bot robot arm

The 7bot is a recent kickstarter project https://www.kickstarter.com/projects/1128055363/7bot-a-powerful-desktop-robot-arm-for-future-inven from 7bot. A metal robot arm based around Arduino Due (https://www.arduino.cc/en/Guide/ArduinoDue ). Development of the software, at the time of writing, is still ongoing but looks interesting and already on the comments page of the site, user's have started posted their code. 




Had to install the following software and put the un-zipped files in the library folder of the Arduino folder.

https://github.com/7Bot
https://github.com/sebnil/DueFlashStorage 

Some useful information of setting up using the Arduino Due is available at https://www.arduino.cc/en/Guide/ArduinoDue and is definitely worth a read - it helped me setting it up.


At the moment I have just used the examples from the GitHub site and example is shown in the video below. This looks like an exciting little arm and hopefully there will be more on this blog about it.




I would be interested in hearing from others who have been playing with this arm.



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, 31 March 2016

mBot - cute, fun and Arduino based

I have had an opportunity (ie, the time) to play with mBot, Scratch Programmable Robot using the mBlock software which appears to be a modified version of Scratch - so relatively easy to use. They have added a section of blocks, to the standard set, marked Robots containing blocks for both Arduino and mBot. 

An earlier blog post (mbots - graphical programming and Arduino) discuss some of the basics of the robot. Just for fun I wanted to play with the ultrasonic sensor, getting the robot to react, change direction (run away) and the 'face' on an LED matrix that came with the robot if there is an object in the way.



The routine
  • Loop
    • Show a smiley face (using Port 4 )
    • If the ultrasonic detector senses something close (guessed at a setting of 10)
      • Go backwards quickly
      • Play a tone
      • Show an upside-down smiley face 
      • wait 1 sec
    • Otherwise
      • Move forward
  • End the loop


Download the code to the mBot using the Upload to Arduino button (see below). Here is where you find out whether you have set the system up correctly. In the mBlock editor pull down menu choose Connect and select the required connection; I have been using a USB cable so I needed to select the serial option and select the USB hub. After that using the Upload to Arduino button did lead to the code downloading.






The video below shows it in action






This is good fun, and a very cute. The build quality of the bots (not my building ability) the metallic construction means the bots feel substantial.  The software as it is Scratch based I think it will be interesting to try it out with my Code Clubbers - especially as they have been asking to play with more robots.

As always I would be interested to hear from others on their experiences of using this little robot.

Related links
mbots - graphical programming and Arduino






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

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.

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.

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.

Remote Data Logging with V1 Microbit

In an earlier post  https://robotsandphysicalcomputing.blogspot.com/2024/08/microbit-v1-datalogging.html  a single microbit was used to log ...