Robotics Lab


About the Robotics Lab

Photo of the Robotics Lab

The Robotics Lab is located on the Ground floor of Greencoat Building, in GB_G11.

Opening Hours

Open Staffed
Weekday 09:30–16:30 09:00–17:00
Weekend Closed Closed

Staff

Photo of Rohit Ramesh Thanmpy
Rohit Ramesh Thampy
he/him

Lab Rules

Lab Layout

robotics_lab_layout_updated.jpg

Lab Rules

  1. The lab is open from 9:30 - 12:30 and 13:30 - 16:30, Monday to Friday.

  2. If you are looking to use any robotics equipment, it must be booked at least a day in advance. Bookings can be made via ORB.

  3. The robots and equipment in the lab are for indoor use only, therefore do not use them outdoors.

  4. The only robot that students or staff can borrow and take home is the Adeept Robot Arm Kit. The rest of the robots or robotic components can only be booked and used within the campus.

  5. The UR5e and the Go1 requires an induction before you use it for the first time. If you are looking to use any of them and it is your first time, then you can book an induciton for them through ORB.

  6. The tools from the lab tool box should only be used within the lab and then returned. If you need to use some tools outside the lab, then a basic toolbox set is present within the consumables storage shelve in the lab.

  7. No food or drinks are allowed while working with the UR5e or the electronics work bench however, you can have bottled water.

  8. If you are unsure about conducting your work in the lab or have any questions, please contact Rohit Ramesh Thampy on Slack or Outlook.

  9. Please remeber to tidy up the equipment and your work area once you are finished or by the end of the day. Keeping the lab clean ensures a safe and plesant environment for everyone.

Robots and components we have

Robots

Item Quantity Image
Universal Robot UR5e 1
Dobot Magician V2 2
Adeept Robot Arm Kit 6
QTrobot 1
NAO V6 1
Go1 Edu 1
Turtlebot4 1
Pololu 3pi+ 32U4 OLED Robot 4
mBot2 1

Components

Item Quantity Image
Dynamixel Starter Kit 7
Dynamixel AX-12A servos 14
Dynamixel AX-12W servos 2

Soft Robotics

Soft robotics is a branch of robotics that makes use of compliant (e.g. soft, stretchy, flexible) rather than rigid materials. These kinds of robots are particularly useful in applications involving people and other fragile objects, and they are of particular interest in medical robotics (including surgery, drug delivery and assistive robotics).

Often soft robots are based on biological organisms (which are themselves compliant), and make use of features such as artificial tendons, muscles and blood vessels.

Making Soft Robots at the CCI

Inflatables

The classic image of the soft robotic 'tentacle' is made from cast stretchy rubber, with a chamber that guides airflow through a shaped internal structure. As air flows through the chamber, the shape causes the robot to bend in different directions.

We have Ecoflex 00-30 and 00-50 Silicon Cure Rubber (00-50 is harder, 00-30 is softer and stretchier). This is a skin-safe silicon rubber that can be cast into 3D-printed moulds. We also have air syringes (for manual testing), and 5V air pumps, tubing and valves.

If you're interested in using the silicon, come and chat to the technicians to borrow it. We have some example moulds and tentacles in the hack space.

Textiles

It's also possible to fabricate robotic limbs using the knitting machine, using threads/wires woven into knitted fabric as tendons. CMU's Morphing Matter lab has a project on creating knitted actuators. We've not done much research into this here but want to develop it further, if you're interested come and chat to us.

FormLabs 3d Printer

Coming soon!

Resources

The website Soft Robotics Toolkit was developed as part of an educational initiative by the Harvard Biodesign Lab, and has a huge amount of resources, design guides and learning materials for working with soft robotics. In particular, their OpenSCAD-based design tool

Research

If you're looking for inspiration in developing soft robotics, the following groups are all producing interesting research:

How To Guides

How To Guides

Using Dobot Magician V2

Dobot Magician V2

Dobot_magician_v2_resized.jpg

Dobot_magician_v2_label.jpg

What is it?

The Dobot magician is a 4 Degree of Freedom robotic arm.

What can it do?

Some use cases of the Dobot Magician consist of:

Dobot magician basic setup

What you will need

dobot_basic_setup.jpg

The setup

Note: Ensure that there are no obstruction around the robot.

  1. Connect the Dobot Magician to your computer with the supplied USB cable.
  2. Connect the DObot Magician to a power source with the supplied power adapter.

connecting_dobot_magician.jpg

Powering on/off Dobot Magician

Power on

Before powering on the Dobot Magician, align it into its neutral position as seen in the image below and then press down on the power button that is located on the base of the robot.

gesture_of_dobot_magician_before_power.jpg

Once the robot is powered on, the LED indicator turns yellow, and all stepper motors lock. After about 7 seconds, the robot will play a short "beep" sound and the LED indicator will turn green. Now the Dobot Magician have completed its power on sequence.

Note: If the LED indicator is red after the robot is powered on, this means that the robot arm has reached one or many of its axis limits. To get it back working,just press and hold the unlock button unlock_button.jpg located on the forearm of the robot and move it to a desired position.

Power off

When the LED indicator is green, press down the power button to turn off the robotic arm. In this case, the forearm moves slowly to the rear arm and stops. Then it has completed the power off sequence.

How to control Dobot Magician?

There are two ways of controlling the Dobot magician.

  1. Using DobotLab
  2. Using python

Note: Any software or documentation for the Dobot magician can be found within the download center of Dobot's website but in order to download anything from there, you will need to create an account with them.

DobotLab

DoboLab is a web based interface that is used to teach, learn and work with the Dobot magician and some other Dobot products.

To use it , you can click here or just search for "DobotLab" on your favorite browser. It should look something like the image below.

DobotLab.jpg

You can register with DobotLab if you would like to save any progress but this is completely optional.

On the DobotLab page, choose any of the application tiles to work with. But once you have chosen an application tile, you will get a pop up stating "DobotLink is not started" and you will also have the option to download and install DobotLink.

DobotLink.jpg

If you have previously downloaded DobotLink, click on "Start" if not download and install it and then click "Start".

If everything goes well, the pop will say "DobotLink started successfully" as shown below.

DobotLink_success.jpg

Click "Ok" and it will continue to the chosen application.

On the application page, on the top right of the screen you should see the following.

DobotLab_start_label.jpg

Here, if you click on "connect", it should connect you to the robot and if you then click on the "arm control panel", a control panel such as the one given below should appear which will allow you to control the Dobot Magician.

DobotLab_control_panel.jpg

Feel free to play around with the other application as well and if you need any more details, have a look at the user manual which can be found within Dobot's download center . The document you will need to search for is Dobot Magician V2 User Guide (DobotLab-based).

Using python to control Dobot Magician

There are two options for controlling the Dobot magician using python.

None of these options have undergone extensive testing, use it at your own risk.

  1. dobot-python by Alex Gustafsson (Recommended as it uses the newer communication protocol v1.1.5)- click here

  2. pydobot, a python library for Dobot Magician by Luis Mesas - click here

Troubleshooting

  1. Serial not found error - You might get the serial not found error, it means that you don't have pyserial installed, to install it use the command pip install pyserial or python3 -m pip install pyserial.

Frequently asked questions

  1. The LED on the robot has turned amber instead of green, what should I do?

    If the LED on the robot has turned amber during start up, that means the robot is in a restricted area. You will need to manually move it back to its safe operating space.

    To do this, simply press the circular button which has a logo of an unlocked lock that is located on the forearm of the robot. While holding the button, move the arm of the robot out of the restricted area.

How To Guides

Using UR5e with 2F-85 adaptive gripper

Safety guidelines

This robot requires an induction before you use it for the first time. If you have not completed this induction, please contact Rohit Ramesh Thampy on slack

  1. Please remove any loose jewelry or clothing before working with this robot.
  2. If you have long hair, please secure it using a hair tie.
  3. Do not place your hands or fingers on the joints of the robot or in between the robotiq gripper.
  4. When testing your program, switch the robot into reduced mode and decrease your speed to 50% and run it. If the robot is running without any collisions, increase the speed by 10%. Repeat this process till you reach 80% speed without any collisions. Once you have reached 80% you can switch the robot back to Normal mode and run it at 90% and 100% speed.
  5. If you make any significant changes to your robot program such as adding a new waypoint, move command, velocity or acceleration change, follow 4..
  6. When a robot program is running, ensure that you are outside region marked with red tape.

What is it?

UR5e

UR5e_setup.jpg

The UR5e by Universal Robots is a 6 Degree of freedom robotic arm. It is the gold standard for collaborative robots in the industry as it is designed to work alongside humans.

Robotiq 2F-85 adaptive gripper

Robotiq_2F-85_gripper.jpg

The 2F-85 adaptive gripper by Robotiq is an end-effector that is commonly used with robotic arms such as the UR5e. But the 2F-85 that we have at the robotics lab is rather special as it comes with a camera module as well.

What can it do?

The UR5e on its own is not of much use as it is a robotics platform and we as the user need to define an application to make it useful.

For example, since we have the 2F-85 gripper attached and setup on the robot arm we can now program it to carry on applications such moving objects around the workspace of the robot or carry out a repetitive process such as pick and place.

If you'd like, you can also design and attach your own end-effector to the robot which could give it a new capability!

The bottom line is, if you need to do something which requires repeatability, precision and accuracy, this robot might be able to to help you out.

Getting started

Core components of the UR5e

  1. The robotic arm
  2. The control box
  3. The teach pendant
  4. The gripper

ur5e_core_components_labelled.jpg

Power on/off

Power on

  1. To power on the robot press down on the power button located at the top of the teach pendant. You will notice that the LED within the power button turns green and after a couple of seconds you will see the Universal Robots logo as shown below.

power_on_logo.jpg

  1. The screen will then change to a loading screen as shown below and it will take a couple of minutes to load completely.

power_on_loading_screen.jpg

  1. Once the loading in complete you will see a getting started screen as shown below. At this stage only the control box has booted up but robot arm itself is not powered on.

getting_started_screen.jpg

  1. To power on the robot arm, click on the red button that is located at the bottom left corner of the screen.

red_button_power_on.jpg

  1. You will get a pop up screen as shown below and within the pop up screen, click on the "ON" button. You will notice that the circles with the status will change to green and the status will change as well.

pop_up_menu.jpg

click_on_button.jpg

on_button_clicked.jpg

  1. After a couple of seconds, you should see that the "ON" button would have been replaced with the "START" button. Now, click on the "START" button, you will hear some clicking noises coming from the robot arm, which indicates the breaks of the robot arm are being released.

start_button.jpg

start_button_clicked.jpg

  1. If everything goes well, you will see that all the circles will be green and if you look over to the bottom left corner of the teach pendant, the red button we initially clicked is now green and it will also say "Normal" next to it.

robot_arm_power_on_complete.jpg

  1. Now you can exit this screen by clicking on the "EXIT" button located at the bottom left of the screen.

exit_pop_up.jpg

Power off

To power off the robot, press down on the power button that is located at the top of the teach pendant and then select "Power off" on the pop up. If you were working on a program and want to save it click on "save program" otherwise click "Discard".

Controlling the UR5e

There are 2 ways to control the UR5e robotic arm.

  1. Using the teach pendant.
  2. External control using RTDE, URscript or ROS2.

This page only contains the basics and will not be covering external control.

Moving the UR5e

You can move the robot using different methods but to do that, you must first be in the move menu or setting a way point in a program. To navigate to the move button, click on the button that says "Move" which is located at the top left of the screen. It looks like the image below.

move_menu_label.jpg

The move menu should look something like the image below.

move_menu.jpg

Once you are in the move menu, make sure to change the option in Feature to "Base" instead of "View", so that your reference point is from the base of the robot arm instead of the virtual camera. To do that click on the drop down that is below feature and select "Base". You should see that the arrow keys on the left have changed in colour.

feature_select.jpg

base_view.jpg

The move menu is simply for moving the robot around, you will not be able to program a path or set waypoints when you are in this menu.

  1. Jogging the robot - To jog the robot, press and hold one of the arrow keys on the left hand side of the screen as shown below.

move_robot_label.jpg

  1. Move each joint - To move each joint of the robot individually press and hold the arrows on the right hand side of the screen as shown above.

  2. Freedrive mode

    • To move the robot using Freedrive, with one hand press and hold the black button that is on top of the teach pendant. You will see a pop on the teach pendant that says "Freedrive Active".

freedrive_button.jpg

freedrive_active.jpg

Basic motion programming for UR5e with 2F-85 gripper

The main concepts behind programming the UR5e are move commands and waypoints.

Move command

Move commands define how you would like the robot to move in order to reach a certain waypoint.

There are 3 move commands you can choose from:

  1. MoveJ - Stands for Move Joint. This means, given two distant waypoints A & B, the robot will take the fastest and easiest route from A to B and vice versa.
  2. MoveL - Stand for Move Linear. This means, given two distant waypoints A & B, the robot will move in a straight line from A to B or vice versa.
  3. MoveP - Stands for Move Process. With this move command, the robot will move through multiple waypoints with a constant speed. You can also make circles using this move command.
Waypoints

Waypoints are 3D coordinates within the robot's workspace set by the user.

Creating a simple program

In order to create a program, ensure that you are in the programming menu.

  1. To navigate to the programming menu, click on the program button located on the top left of the screen.

program_button_label.jpg

Now, your screen should look something like the one below.

ur5e_programming_menu.jpg

  1. To add a move command, select "move" which is within the "Basic" dropdown list. You should see that a move command with Waypoint_1has been inserted beneath Robot Program as shown below.

move_button_select.jpg

The default move command is MoveJ but if you want to change it, click on the drop down to the left for the screen which says MoveJ and select another move command from the dropdown list.

  1. Click on Waypoint_1 and you should see the right side of the screen change to the image below.

waypoint_select.jpg

  1. Click on the "Set Waypoint" button. This will change the screen to a similar screen from the move menu as shown below. But the main difference is that you now have an "OK" and "Cancel" button to set or cancel a waypoint.

set_waypoint.jpg

  1. If you want to set the current location of the robot as a waypoint then click on "OK". If you want to set a new location as a waypoint, then jog, drive or Freedrive the robot to a desired location within the workspace and click "OK". You will see that Waypoint_1 is no longer highlighted in yellow, meaning the waypoint has been set successfully.

set_waypoint_complete.jpg

  1. If you would like to add another waypoint, click on "Waypoint" which is within Basic drop down list. Another waypoint called Waypoint_2 will be added into your move command.

add_another_waypoint.jpg

  1. To set your newly added waypoint, repeat steps 4 and 5.
Good practices
Controlling the Robotiq 2F-85 adaptive gripper

To control the robotiq gripper using the teach pendant, click on the "UR+" button located on the top right of the screen as shown below.

ur_plus_button_label.jpg

This will show a pop up screen as shown below.

ur_plus_select.jpg

Select "Adaptive Gripper" as that is the gripper we have and then click on "Activate". You will see the robotiq gripper will close and open.

Once the gripper is active you will see that the pop up will change and give you some options to control the gripper as shown below.

after_activate_gripper.jpg

Now, you can open or close the gripper, control the speed at which it opens or closes and the force / grip strength of the gripper.

Adding gripper command to your program

To program the gripper so that it opens or closes when the robot has reached a point, navigate to the program menu and ensure you have set your waypoints by following the instructions in the previous section.

  1. Select "URCaps" drop down which is on the left side of the screen within the program menu. It is also shown in the image below with a green box.

ur_caps_label.jpg

  1. Select "Gripper Activate" and make sure this is placed at the beginning of your program.

gripper_activate_label.jpg

  1. Select the waypoint where you want to add the gripper command.

If you place a gripper command after a waypoint, then it will be executed once the waypoint is reached, if the gripper command is placed before a waypoint, it will be executed before the robot starts moving to the waypoint.

  1. To add a gripper command, select "Gripper" from the URCaps dropdown.

gripper_command_label.jpg

  1. One the right side of the screen, you should now see some options related to the gripper.

  2. Click on "Edit action" and then choose whether you would like to open or close the gripper.

Do not choose a percentage for opening or closing the gripper as this could cause issues. The gripper should either be open (0%) or close (100%).

gripper_action.jpg

  1. Adjust the speed and force of the gripper according to your need. Click on "Save action" when you are happy with your settings.

  2. If all goes well, you should see the gripper command "Gripper Open" or "Gripper Close" based on which action you have chosen.

gripper_command_complete.jpg

Specification

ur5e-rgb-fact-sheet-landscape-a4.png

Additional resources

  1. UR5e website
  2. UR5e user manual
  3. Robotiq 2F-85 user manual
  4. Universal Robots e-learning
  5. Universal Robots academy
  6. Ur5e general risk assessment
How To Guides

Using QTrobot

What is it?

QTrobot is described an expressive humanoid social robot.

QTrobot.jpg

What can it do?

Using its inbuilt functions and APIs you can get it do some interesting things. Have a look at its competences page to get a full understanding of its capabalities.

Powering on/off

Power on

To power on QTrobot, press down on the power button that is located behind the robot. You will see QT's head raise up and a face will be displayed on the screen that's on its head.

qt_power_label_1.jpg

Power off

To power off QTrobot, simply press down on the power button. You should see the motors of the robot disengage and after a couple of minutes, the screeen on QT's face will flash blue. After this, switch off the powersupply to the robot. This concludes the power off procedure.

How can I program it?

There are two ways of programming QTRobot.

  1. QTrobot Visual Scripting
  2. QTrobot Software Development

Everything you need to get started with programming the QTrobot can be found here

Additional Resources

  1. LuxAI S.A. githubpage - click here
  2. QTrobot questions and answers - click here
How To Guides

Using Turtlebot4

What is it?

The Turtlebot 4 is the latest addition to the Turtlebot series, which is a popular robotics research and education platform. The Turtlebot 4 shares the same base as the iRobot Create 3 and it is powered by ROS2 (Robot Operating System 2). For reference, iRobot are the creators of the famous Roomba Robot Vaccums.

Turtlebot4.jpg

What can it do?

With the onboard OAK-D pro camera and RPLIDAR A1M8 laser range scanner, the Turtlebot 4 is capable of operations such as:

Since this is a robotics platoform, you can intergrate your own sensor payloards or even a small robotic arm on it and conduct even more interesting applications with it.

Getting ready to use Turtlebot 4

As of writing this documentation (02/02/2024), the Turtlebot primarily supports ROS2 Humble, therefore please ensure that you have it installed within your system.

User PC setup

To get your PC/Laptop setup to work with the Turtlebot, please follow the instructions found here

Demos/Tutorials

  1. Driving your Turtlebot 4
  2. Generating a map
  3. Navigation

Additional Resources

How To Guides

Using Pololu 3pi+ 32U4 OLED Robot

What is it?

The 3pi+ 32U4 (standard edition) by Pololu is an ATmega32U4 micrcontroller based programmable modile robot. The micrcontroller powering this robot is the same one that is present in an Arduino Leonardo and Arduino Micro. To find out more about this robot, click here

Pololu_3pi_32U4_OLED_robot.jpg

What can it do?

With an assortment of sensors onboard it is capable of applications such as:

Based on how you program it, it can do so much more! Also, check out the preloaded demo programs within the robot.

Programming the 3pi+ 32U4 using the Arduino IDE

To start programming this robot, please refer to the documentation that is given here

Additional Resources

  1. Pololu 3pi+ 32U4 User's Guide
  2. Reviving and unresponsive 3pi+ 32U4 using Arduino IDE
How To Guides

Using Go1 Edu robot dog by Unitree

Safety guidelines

This robot requires an induciton before you use it for the first time. If you have not completed this induction, please contact Rohit Ramesh Thampy on slack

What is it?

The Go1 Edu robot dog (otherwise known as a quadruped) is an agile, 4 legged robotic platform.

Go1_cover_photo.jpg

What can it do?

Since it is a legged robot, the Go1 comes with some sophesticated control algorithms built-in, that allows it to balance itself and walk around.

Without any modifications, the Go1 robot dog is capable of doing basic collision avoidance using its onboard stereo cameras. This version also comes with a 2D Lidar, and when that is attached to the robot, it is cabable of doing autonomous navigation.

Since this is a robotic platform, other sensor payloads or hardware can be interfaced with it to extend its capability.

Getting started

The startup and shutdown procedures for the Go1 are covered in more detail in the induction, therefore please ensure to book and attend the induction before using this robot.

Starting up

Ensure that the Go1 is placed on a flat and levelled surface. The robot's abdominal support pad should be flat on the ground and the body should not be tilted. The robot's startup position should look like the images below.

Go1_start_up_position.jpg

Go1_start_up_top_view.jpg

Power on

Shutting down

Ensure that the robot is standing still. If it is in motion, bring it to a stop. Once the robot is standing still press and hold the L2 button. While holding the L2 button, press down on the A button twice and then press down on the B button. Now you can let go of the L2 button.

The short version of this instruciton is HOLD L2 + A + A + B RELEASE L2. The robot dog should now be laying on the floor similar to the starting position.

Power off

Controlling Go1

The Go1 can be controlled using the remote control that comes with it, through its SDK and using ROS. However, this document will only cover the remote control aspect.

Basic controls using the remote control

Controlling the Go1 using its remote control is covered in more detail in the induciton, therefore please ensure to book and attend the induction before using this robot.

  1. Left stick - Controls the position of the robot, as in you can move it forward, backward, left and right.
  2. Right stick - Controls the orientaiton of the robot, as in yaw, pitch and roll.

All other controls and combination of controls can be found on the remote controller.

Additional Resources

  1. Go1 User Manual
  2. Go1 general risk assessment
How To Guides

Using Adeept robot arm kit

What is it?

The robot arm kit from Adeept is an eduational robotics kit that is mainly aimed towards begineers. This robotics kit consists of a 5 degree of freedom robot and the Adeept Arm Drive Board which is based off an arduino uno. This means users can programme this robot arm using the Arduino IDE and the most of the libraries that arduino provides.

To learn more about this robot, please click here

Adeept_robot_arm_kit.jpg

robot_arm_servo_config.jpg

Getting started

Setting up

  1. Connect the Adeept Arm Drive Board to your laptop/PC using the correct USB cable.

  2. To power on the robot, connect an appropriate 5V 3Amp or 5V 5Amp power supply to the barallel jack of the robot.

  3. Ensure to switch on the Arm Drive Board, otherwise the servo motors will not receive any power.

adeept_arm_driver_board.jpg

Setting up Arduino IDE to use with the robot

If you already have Arduino IDE installed and worked with igt in the past, then all you need to do is to change the board to Arduino Uno.

To do this:

  1. Go to the Tools -> Board.

choosing_arduino_uno_board.jpg

  1. From the drop down list, choose Arduino Uno.
  2. Make sure to choose the correct COM port as well.

choosing_correct_port.jpg

Setting up from scratch

If you are setting it up from scratch, as in you do not have Arduino IDE installed and setup, then click here

Required Libraries

These extra libraries will be required if you plan to utlise the OLED screen within the Arm Driver Board.

The instructions for configuring the libraries can be found here on page 21 under the heading 8. Configuring the "libraries" folder of the Arduino IDE.

You can find the libraries here, please download all of them.

Verification

Try uploading the blink example sketch to verify comminication between the Arm Driver Board and your machine.

Additional Resources

How To Guides

Using NAO V6

Usage Guidelines

What is it?

NAO (V6) is the latest iteration of the NAO robot series. It is a humanoid robot that provides a blend of interactive features, mobility, and programmability that makes it a versatile tool for education, research, and entertainment. It is equipped with a variety of sensors, motors, and a sophisticated software platform that supports a wide array of functionalities and applications.

nao_cover_photo.jpg

What can it do?

Getting started

Unpacking and Reboxing

To learn how to unpack and rebox Nao, click here

Software requirements

You will need to download the following software to configure and programe NAO.

Try downlaoding and installing the setup version these software, if that doesn't work, try the binaries.

You can find these software here

Power on/off

Power on

To power on the robot, press the Chest button once. The chest button is the big circular button located on the chest of the robot with the text NAO on it. You will see the chest button will start pulsing with a white LED. The boot process is completed once the robot says "OGNAK GNOUK".

Power off

To power off the robot, make sure it is in a safe position, or it may fall. The safe positions are mentioned in the pocket guide. You could also place a hand on its back to keep it in position.

Press and hold the chest button until it says "GNUK GNUK". The shutdown process is complete when all the LEDS are off.

Disengage NAO's motors

Disengage NAO's motors to:

To do this, double click the chest button. You will notice, the robot goes to its crouching position. To engage the motors again, simply double click the chest button again.

Connecting to NAO

At the time of writing this documentaiton (27/02/2024), NAO is temporarily configured with Rohit Ramesh Thampy's wifi Hotpot. Therefore, please contact him on Slack or outlook if you'd like to use it.

To connect to NAO through the currently configured wifi hotspot:

  1. Connect your laptop/PC to the wifi hotspot.

  2. Power on NAO and wait till it is fully booted up.

  3. Open Robot Settings, the icon for the app should look like the image below.

    Robot_settings.jpg

  4. The Robot Settings app looks like the image below.

    Robto_settings_app.jpg

  5. Click on the button that says open robot list, it is located on the top right.

  6. This will show you the NAO robots that are available on this network. Click on the one that is available. robot_list.jpg

  7. If everything goes well, you should be connected to NAO and your screen should look like the image below. nao_connected_via_robot_settings.jpg

  8. You should now be able to use this interface to mute, adjust sound and edit other configurations of the robot.

Connect using your own wifi hotspot

Ensure you have atleast 5GB of mobile data on your phone.

To connect NAO to your own wifi hotspot, you will need the following:

To establish a connection between NAO and your hotspot, read the following:

  1. Turn on your wifi hotspot. Instructions for Android devices can be found here. Instruction for Iphone devices can be found here

  2. Connect your laptop/PC to your wifi hotspot.

  3. Power on NAO.

  4. Once NAO is powered on and booted up, disengage the motors by double clicking the chest button.

  5. Remove the hatch on the back of the robot's head. nao_hatch.jpg

    nao_hatch_open.jpg

  6. Connect one end of the ethernet cable to the ethernet port within NAO's head and connect the other end to your laptop.

  7. Wait for about 10 seconds and press the chest button once, this will make NAO say its IP address. Make sure to note it down.

  8. If NAO says "cannot connect to a network", wait a bit loger and try the previous step again.

  9. Open Robot Settings and enter the IP address next to the text that says Host/IP and press Enter or Return on your keyboard.

  10. If everything goes well, you should be connected to NAO via ethernet and your screen should look like the image below. nao_connected_via_robot_settings.jpg

  11. Click on the network icon within Robot Settings, an image of it is shown below.

    network_icon.jpg

  12. You should now be able to see a list of wireless networks that you can connect to.

  13. From this list, select your wifi hotspot and enter its password. Then press enter on your keyboard.

    nao_network_settings.jpg

  14. Close Robot Settings and remove the ethernet cable from NAO and your machine. Ensure to close NAO's hatch.

  15. Reopen Robot Settings and press on NAO's chest button once to get its IP.

  16. Enter this IP next to the Host/IP text within Robot Settings and press Enter or Return on your keyboard.

  17. You should now be connected to NAO via your hotspot.

Using Choregraphe to program NAO

Ensure you have connected to NAO through robot settings before attemmpting this.

Make sure to download and install the Choreographer software, which can be found here

  1. Open Choregraphe, the app's icon will look like the image below.

    choregraphe_app.jpg

  2. Given below is an image of how it looks like when it is open. Make sure to click Okon the Getting Started pop up box if that appears.

    choregraphe_app_started.jpg

  3. The robot that is shown in Choregraphe is a virtual robot or a simulation. You can change the virtual robot to a NAO by clicking Edit -> Preferences -> Virtual Robot. Click on the drop down list that is next to Robot Model and select NAo H25 (V6). Then click OK, this will change your virtual robot to NAO.

  4. Connect to NAO using Choregraphe. To do this click on the connect to button that is located at the top left of the screen. An image of this is given below. You can aslo do connection -> connect to or the keyboard shortcut ctrl + shift + c or command + shift + c

    connect_to_button.jpg

  5. You will notice the following pop up will apprear.

    connect_to_pop_up.jpg

  6. On this pop up, click on nao and then click on select. This should establish a connection between Choregraphe and NAO.

  7. Try out this "Hello World" tutorial to verify your connection with NAO and to get a feel for programming NAO with Choregraphe.

More Choregraphe with NAO

To learn more about controlling NAO through Choregraphe, click here

Additional Resources

How To Guides

Using mBot2 by makeblock education

What is it?

The mBot2 is an education robot designed to teach students about coding and robotics in an engaging and hands-on way.

mBot2_cover_photo.jpg

Getting started

To learn more about mbot2, such as connecting to it and programming it, please refer to the Operation Guide.

Software requirements

mBlock5

The software that is used to control and communicate with mBot2 is called mBlock5. There are two versions of this software.

  1. PC version - This version runs locally on your machine.
  2. Web version - This version runs on a web browser cab be found here. However, you will need to download a software called mLink for this method to work.

All the necessary software you need to download can be found here.

mblock-Python Editor

The mBot2 can also be programmed using python. This can be achieved through the python editor present within the mBlock5 software. If you have the mBlock5 software running locally on your machine, then you can access the python editor by clicking on the python button that is at the top left of your screen.

There's also a web version of the python editor and can be found here. Make sure you also download the mLink software, otherwise, this will not work.

To learn more about using mBlock5 or the python-editor, please refer to the Programming Guide.

Additional Resources

If you need any help with mblock5 or mBot2, please refer to the Help Hub.

Robotics Kit List

Given below are the items within the robotics kit.

Item Quantity
Arduino Uno R4 WIFI 1
SG90 Mini Servo 8
Feetech FS90R Servo and Wheel 4
TruMotion DC Motor 2
L298N Dual H-Bridge Motor Driver 1
PCA9685 16-Channel Servo Driver 1
R-Tech Solderless Breadboard 165mm x 55mm 1
Adafruit BNO055 9-DOF Absoloute Orientation IMU 1
Seeed Gear Stepper Motor and Driver Pack 2
5VDC 6A Power Supply 1
Adafruit APDS9960 Proximity, Light, RGB and Gesture Sensor 1
HC-SR04 ultrasonic distance sensor 1
DFROBOT DFR0034 Analog Sound Sensor 1
DFROBOT SEN0203 Heart Rate Monitor Sensor 1
Air Pump and Vacuum DC motor - 4.5V and 2.5LPM ZR370-02PM 1
Pimoroni COM2700 Mini Push-Pull Solenoid 5V 0.42A 1