Who's OnlineWe have 6 guests and 8 members online - srobot
- billyzelsnack
- jorge ochoa
- Gort
- mic
- Freeze
- Enderwiggins
- Chrisbie
|
|
Bioloid Robot Kit
|
|
|
|
|
|
|
|
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.
|
|
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
|
|
|
|
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 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.
|
|
 The 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
|
|
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.
|
|
|
|
|
|
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
|
|
The 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:
- Motion Editor - a GUI that allows you to create motion sequences for your robot, &
-
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
|
|
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
|
|
A 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.
|
|
Programming in C
|
|
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.
|
|
|
|