Bioloid Advanced Robot Kit

 

Bioloid Models

 


Press the icons below to watch videos of some robots that can be constructed using this kit

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Introduction


The Bioloid Advanced Kit from Korean company Robotis is an educational robotics development environment. The kit is like an adult version of Lego NXT + Meccano. You are guaranteed to become a robotics expert after spending several weeks with this kit and learning about humanoid robot mechanics, electronics and programming.

Robotis is the premier supplier of servos and other components to participants of the annual RoboCup Humanoid League - the most advanced academic humanoid robotics competition. They were also the first Korean company to develop a commercial running humanoid robot.

Due to the relatively high torque output of this kit's servos, children should not play with this kit unsupervised

Buy this robot and join the humanoid robot crowd at http://robosavvy.com


Content

  • CM-5 Controller board (Atmel ATMega128 @ 16Mhz),
  • 18 AX-12+ Serially controlled servo's (UART @ 1Mbps one-wire RS485),
  • 1 AX-S1 Sensor module,
  • Rechargeable battery pack (9.6V),
  • 2 Programming Utilities (freeware),
  • a Switch mode Power Supply,
  • Serial Cable (9pin D-type),
  • an assortment of frames (over 100),
  • wheels & tires, and
  • spacers, bushings, nuts & bolts.

Bioloid Kit Content

 

 

CM-5 Controller Board

CM-5 controller board is based on popular 16Mhz processor Atmega128 from Atmel. This CPU (a.k.a. MCU) has 128 Kbytes of flash memory. The controller board comes inside an encasing with leds and buttons that allow for some touch-activated operations and status lights that indicate various states of the robot modes.
The Bioloid comes installed with a default firmware and bootloader. The default firmware allows for the PC software (Motion Editor and Behaviour Control) to operate via the serial cable interface.



The firmware on the CM-5 can be replaced by proprietary software that the user can create using standard Atmel compiler tools. The default firmware is available for download and is regularly updated by Robotis.

 

 



The CM-5 also has  the ability to communicate wirelessly using a ZigBee interface which plugs into the CM-5 (This Zig-100 module is not included in the Bioloid Advanced Kit!)


Serial Control Bus

Bioloid Configuration Dinosaur

Bioloid CM5 Bus

This serial network is used to connect motors (AX-12+) and sensors (AX-S1), each of which have different Network ID's programmed in their non-volatile memory. 

Bioloid Bus

Bioloid Serial BusBioloid uses standard UART serial communications (as used in RS232) at 1mbps. However, the wiring of the serial bus is such that only one line is used for both RX and TX. This is also known as RS485. The schematic on the left shows how the 3-wire serial bus is implemented within the CM-5. You can add proprietary sensor boards to the Bioloid control bus. A simple 74HC126 (Quad buffer/line driver; 3-state) is used to multiplex TxD and RxD data onto the DATA signal. (You'll notice an extra control signal is required from the mcu to control the direction of data on the DATA line). This allows a Half-Duplex multi-dropped serial network to be implemented with 3 wires.


Assembly

The Bioloid Advanced Kit comes with several English instruction documents including a 200 page QuickStart guide and 142 page User Guide.







An example page from the Users Guide....

 


The Bioloid robots can be constructed in different ways thanks to its ingenious brackets and various mounting locations with each component.

 

Bioloid AX12+ mountingBioloid AX12+ ServoThe Diagram on the right shows the casing of both the AX-12 and AX-S1. You can see on this diagram that there are a number of mounting locations where M2 nuts can be slotted in and held in position. (There are 4 of these locations on each side, 2 at the bottom and these are repeated on the rear of the module). This clever design allows the many frames included in the Bioloid Kit to connect to the AX-12's and AX-S1's easily. Also, the rotating bush, i.e. the bushing mounted to the shaft, of the AX-12 also has 4 M2 Nuts that are held in place - this provides a 'thread' to make connection of frames easy as well.


AX12+ Servos

Robotis AX12+The AX-12 has all the features of the Dynamixel series, the main features being:

  • Reduction Ratio: 1/254
  • Holding Torque: 16.5kg-cm (@ 10V)
  • Speed: 0.196sec/60� (@ 10V)
  • Serial Network (TTL) ( 7343bps ~ 1Mbps)
  • Feedback of Shaft Position, Temperature, Input & Load Voltage, &
  • Ability to specify the Compliance Driving Settings.

Robotis AX12+ Dimentions

 

max

typ

min

Operating Voltage

10.0V

9.6V

7.0V

Holding Torque

16.5kg.cm

------

12.0kg.cm

No-load Speed

0.196sec/60�

------

0.269sec/60�

 

NB. 360� Rotation Mode - 1024 selectable speeds (i.e. 10bit resolution)

 

Reduction Ratio

1/254

Operating Angle

300�

Current (max)

900mA

Operating Temp.

-5�C ~ 85�C

Size

50 x 32 x 38 mm

Weight

55g

 

Command Signal

Digital Packet

Protocol

Half Duplex Async Serial (8bit, 1stop, No parity)

Link

TTL (Tx & Rx multiplexed on single core)

Number of modules

254 - valid addresses 0 to 253

Comms Speed

7343bps ~ 1Mbps

Position Feedback

Yes

Temperature Feedback

Yes

Load Voltage Feedback

Yes

Input Voltage Feedback

Yes

Compliance Driving Settings

Yes

Material

Engineering Plastic Gears and Body

Motor

Cored Motor

 

Each AX-12+ servo understands 50 commands. Most of them set or read configurable parameters that define the Behaviour of the servo. A typical RC hobby servo motor just understands the command "target angle" (given via a PWM signal), but Robotis servos allow you to use the servo as a professional robotic actuator with sensors. Software running on the controller board can react to the environment by using the information from the servos as sensory data. Values such as the present position, present current consumption, present temperature vary with external torque applied to the servo and hence allow for sophisticated closed loop control.

 


The servo-bus runs at 1mbps therefore it is possible to talk to the servos over 50,000 times per second.

The servo reaction to external stimuli can be fine-tuned. The compliance of the Robotis actuator to its given go-to commands and external stimuli is defined by setting the compliance Margin and Slope. This feature can be utilized for absorbing shocks at the output shaft. The following graph shows how each compliance value (length of A, B, C & D) is defined by the Position Error and applied torque.

 


AX-S1 Sensor

Bioloid AX-S1 Sensor moduleThe AX-S1 is housed inside the same casing as the AX-12 BUT the AX-S1 doesn't contain a motor - it is simply a sensing module that can be placed on the same serial network. The AX-S1 consists of:

  • an IrDA receiver,
  • 3 IR reflection sensors (Left, Right & Front) that can be used to measure distance and luminosity,
  • a microphone, and
  • a piezo-electric sounder that can be used to play musical scales or simple a beeping sound.

 

In AX-S1, there is a transmitter-receiver built-in that allows IR communication. Although IR communication is often used for short distance, as it is strongly influenced by the direction and the location of its devices, users have to keep in mind of above limitation when transmitting. As the images below show, IR can send data in three directions, only one direction is allowed in receiving data.

 


Software

There are two software utilities that come with the Bioloid kit, these are:

  1. Motion Editor - a GUI that allows you to create motion sequences for your robot, &
  2. Behaviour Control Program - a GUI that allows you to program sequences of events/motions.

Motion Editor in conjunction with the Behaviour Control Program allows the programmer to use the Motion Editor to generate the robots motion sequences and then use the Behaviour Control Program to implement the logic (or intelligence) of the robot.

Both of these utilities are Freeware

 


Motion Editor

Bioloid Motion Editor

The motion editor has a graphical user interface that allows the user to edit a multi-jointed robot made up of Robotis servos. A user can create and edit motions by moving the joints by hand and saving each pose using the motion editor. The user can also connect or repeat edited motions.

 

The image to the left shows how motions are built up frame-by-frame - very similar to a story-board in an animation sequence. This allows quite complicated "animations" to be quickly programmed and tested.

Once a motion has been defined it can then be downloaded into the CM-5's FLASH and called from the Behaviour Control Program.

 

Behaviour Control Program

Bioloid Behaviour ControlA robot is a machine that can behave in various ways. However, it can do so only when there is a program that tells how the robot should act for a certain situation. This program is called the “Behaviour control program.” A Behaviour control program is a series of rules that define the action a robot should take for the given state.

A series of commands are entered that allow the programmer to interrogate ALL the functionality of the AX-12, AX-S1 and the CM-5 mcu module. The functionality accessible within the CM-5 includes playing motion sequences, external pushbuttons and the CM-5's timer.

The commands provided with the Behaviour Control Program include:

  • program control commands (START, END),
  • conditional branching commands (IF,ELSE IF,ELSE,CONT IF) with conditional operations (=, >, and > =, <, and < = =),
  • program sequencing commands (JUMP & CALL/RETURN),
  • numeric commands (COMPUTE), and
  • assignment commands (LOAD).

NB. command lines can be given meaningful names of LABELS.

Another feature of the Behaviour Control Program is the debugging function which allows variables to be displayed on the PC's screen whilst the program is executing - making it very easy to calibrate AX-S1 sensors.

Bioloid Behaviour Control

Programming in C

Bioloid WinAVR GCC

The CM-5 controller board is based on the popular Atmel128 MCU. It is also possible to program the CM-5 module using freeware GNU GCC compiler WinAVR available by AVR Freaks. This gcc compiler is a great freeware tool, coupled with the editor Programmers Notepad.

This is an option for experienced programmers only though. You will need to start from the ground up - write all the communication protocol's from scratch. But the power that it gives you over the robot is "unlimited". For example, it is possible to create Closed-Loop control algorithms and distributed control by relaying sensory information to an external computer such as a Gumstix, or a remote PC via BlueTooth or ZigBee. If you are an experienced programmer, this robot kit is stuff for dreams...

 

 

Join the growing community of Robotis fans around the world who share their experience and knowledge at RoboSavvy.com

 

 

 

We accept PayPal, Wire Transfer and Credit Card.