Main MenuSite Menu
Login Form |
Table of Contents
Bioloid Info3D, CAD model and inertial propertiesWhile the standard software MotionEditor that comes with the Bioloid provides a visual model of the robot in its common forms, many want to visualize and simulate the robot using other tools. The inertial parameters of the Bioloid kit parts allow precise physics simulation. Links Physics simulationPhysical simulation of the Bioloid robot of allows for testing, developing and optimize new controlling architectures for the robot platform. Simloid allows to apply automatic unsupervised machine learning algorithms, for solving control problems, such as biped walking. Actually the Teaching and Research Group Artificial Intelligence proceeds an experimental laboratory, where students research on control problems, using machine learning algorithms. Another approach of this project is to use artificial evolution for exploring and optimizing new walking patterns. Samples of those evolved walking motions are collected on the project page: Evolution of Biped Walking. bioloidcontrol includes an easily extensible physics simulation, and is actively maintained on sourceforge (GPL2 license). Links CM5 SchematicsFull Schematic (found here) DRAFT Schematic of Power Supply / Battery Charging part of CM-5 Communications protocolThe Dynamixel communications protocol is based on master-slave concept. Master sends a request packet and slave answers with a packet. Each packet is at least 7 bytes long. It is possible to send multicast packets. Links AX12 Current sensingThe AX12 currently measures the current load only approximately 7 times/sec. This feature has been used to perform some level of improved balancing. btw: Currently reading the “current speed” results with same value as the current load. Several people have used current sensing feature to create stabilizing effects for the robot for example by measuring the current used by the foot servo and modifying the body to compensate for perceived instability. Links AX12 InfoAX12 Firmware updateclusher: I’m using the USB2Dynamixel and I decided to update the firmware of the AX-12 servos. So I used the Dynamixel Manager, asked to update the software and from here everything went wrong. Links Motion Editor - Speed, Accel and S-CurvesBullit: In the bioloid firmware max velocity achieved between poses is the product of page speed and pose speed. The bioloid firmware does updates to the servos at about 8ms so in the motion editor a pose delay of 1 = 8ms, 2 = 16ms, accel time of 1 = 8ms etc... So if you have a very small move from one pose to the next having a long accel time may limit the actual velocity achieved betwen poses. A delay setting of 0 implies that there will be a 0 deceleration time to allow continuous motion from one pose to another. Links
Interfacing with BioloidWindows vista8-Aug-2007: formally Robotis doesn’t support Vista but users have been able to run the software on Vista 32 bit version. Links Linux and OSXSome discussions on the forum regarding flashing the CM5 from a non-windows system can be found in the links below. Both using standard commands and via programs and scripts. Links Matlab / SimulinkSome work has been done to allow for real-time communications between a PC and the CM5 over the serial port. The interface is based on Simulink Real-Time-Windows-Target. This environment allows to define a control loop in Simulink, that is executed on the PC and communicates with the CM5 at 115kbps using a custom device driver (since the Simulink RTWT doesn’t have access to standard Windows device drivers. Links Programming the BioloidCM5 CodingProgramming the CM5 to get the most of of the robot is the “next step” for every Bioloid owner. Here are some tips and code snippets to help you get going. Links Programming in C++ rather than CIt is possible to program the Atmega128 in C++ but there are some general restrictions regarding GCC and C++ for AVR processors. Links Utilizing Current SenseBetter balancing can be achieved by tapping into the current consumption of the servos. Current consumption is normally proportional to the external torque applied on the servo shaft. However, the AX12 firmware currently only presents the current sense value 7 times/sec and these values are quite noisy. This didn’t stop people from getting the Bioloid humanoid to do some interesting balancing acts. Links de-Compiling the Behavior Control Languagekym: I managed to decode most of this a few weeks back and wrote a simple compiler & decompiler UNIX tools... Both tools come in gziped tar files. They include sourcecode for the tool, some examples, a GNU-style license, but presently no manual or other “install” doc. Links Printing the BGP file contentsidoc49fr: I wrote a little program that allows to print the BGP files. I think it is easier to debug a program on a hardcopy rather than on the screen. Links Alternative programming Language - URBIURBI gives an interactive programming environment to the Bioloid. It replaces the default firmware (that executes scripts based on the Motion-Editor/Behavior-Control code) with a firmware that serves as a slave to a PC program that runs the URBI interpreter. The URBI language is neat and allows parallel processing and multiple threads that deal with different events. Links BioloidControl - Alternative control softwareCreated as part of a three months work at University of Karlsruhe (Germany). I
C library for playing MotionEditor motionsjoerg.wolf from Plymouth University developed an API that allows a PC or on-board computer to give simple text commands via the serial link to the CM5 that will trigger the motions and pages from Bioloid’s default MotionEditor program (that are stored on the CM5 EEPROM). “You can make it play pages from the Motion editor when you send a command from the PC or PDA to the CM5.” The commands are described in “BLC-Protocol.h” Links LibBioloid - excelent Atmega library for Dynamixel communicationsA very refined implementation of the Bioloid Dynamixel protocol was developed by forum members StuartL and RandomMatt making the task of replacing the default firmware for CM5 a much more elegant and fun task. Pic C Code for interfacing with Dynamixel AX-12Replacing the Bootloader (dangerous)StuartL : The exercise was all about whether we could write a bootloader and unbrick the device if the bootloader had bugs. The process uses a PC parallel port (also known as a TTL level latch) as a general purpose IO interface and (in our case, due to built in protection in the parallel port) directly connected it to the five-pin programming header on the CM-5 PCB. Links Connecting to the Bioloid BusPepper's Sensor Board
Links: SunSpot Controler BoardUSB2DynamixelDirect USB to Dynamixel bus solution by Robotis. uses the popular FTDI USB/Serial chip. Links Linux FTDI driver has issues of latency but there’s a patch that addresses this: Mandor published Linux source code that implements the Dynamixel protocol using low level FTDI functions. This is supposed to bypass the latency implied by using the FTDI serial emulation driver. albertosatan found an easier way to achieve minimum latency on Linux and reported increase from 60 to 480 packet reads/sec. DynaCommander - opensource utility to control AX12 servosThe Dynamixel Commander is a program for exploring and manipulating AX-12 Dynamixels on a Dynamixel Network using a simple property-based user interface. It is used in conjunction with the USB2Dynamixel interface from the PC to the AX12 bus (or similar home-made interfaces). Executable for Windows and source code in .NET can be found at the link below. Links Custom serial to USB board
JonHylands: Warning: you need a tristate buffer and an inverter in addition to the FT232RL. Those parts are less than a dollar each, so you can put together something pretty easily using it, and if anyone wants, I can post part numbers and a wiring schematic... Note that in addition to Rx and Tx you also need access to the CBUS2 pin, which is pin 13 on the 28-pin SSOP package chip. The ATmega series micro-controllers can talk directly to the bus without requiring the buffering hardware, because you can enable/disable Tx and Rx individually under program control. Don’t try shorting the Tx and Rx pins on the FT232 - it will probably fry the chip... Links Interfacing AX12 and DiosPro Workboard
..It shows how simple it is to connect an AX-12 to a DiosPro chip or board. You simply need to connect ports 8 and 9 of the DiosPro together. These are then connected to the data leads on the AX-12. Links Wireless CommunicationsSparkFun BlueSmirf
02/07/07/limor : pictures detailing of how to conceal the BlueSmirf inside the CM5 box 27/02/08 linux23dragon1 : details posted on the same thread about using the bluesmirf in context with Linux host rather than windows. also details of an alternative and a bit more aesthetic way of installing the bluesmirf into the CM5 Links: Sena ESD200Links: Gamepad remote controlHooking up a gamepad to the Bioloid can be done in several ways. Links: CustomizationsTorsoPlotter
Links: Lithium Polymer BatteriesCustom GrippersLinks Custom Hip RotationBioloid Comprehensive kit came with 19DOF during part of 2006 which had a hip servo that allowed the humanoid to bend forward. However, the 19DOF kit was replaced by an 18DOF kit that didn’t include the hip servo but supposedly had upgraded servos AX12+ instead of the AX12 (most likely this was a minor cost-cutting exercise on behalf of Robotis). Nevertheless, forum users have tried to modify their humanoids and add hip-rotation capabilities. Links Hamid's Module Vision 1
Links Puppy Bioloid with Nokia N770/N800 head
Links Custom Camera with tilt/pan inside AX-S1mic2: It took me quite a while to finish this project, I’ve added 2 more DOF for the pan/tilt robot head, which has got all the ability of the AX-S1. At the moment I fitted with a wireless CCD camera.. Links Foot pressure sensor
Links AVR Boards with good potentialAny Atmega microcontroller running at 16mhz can communicated directly with the Bioloid bus. It is enough to short the RX and TX lines to the bus and run the UART at 1mhz, switching the RX/TX on/off as the synchronous communications occur.
TroubleshootingCommunication problems with CM5Can’t communicate with CM5? It could be the USB-serial adapter, the Serial port on the PC, the serial cable, bad connections, bad flashed firmware etc. Links AX12 Calibration |
In Our StoreSparkFun - WiFly Shield £87.32 £102.60 inc. VATFind us on Facebook
Latest Forum PostsGoogleSearch
|