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