Legacy Forum: Preserving Nearly 20 Years of Community History - A Time Capsule of Discussions, Memories, and Shared Experiences.

Bioloid C++ Project

Bioloid robot kit from Korean company Robotis; CM5 controller block, AX12 servos..
1 postPage 1 of 1
1 postPage 1 of 1

Bioloid C++ Project

Post by acy.stapp » Sat Sep 22, 2007 7:14 pm

Post by acy.stapp
Sat Sep 22, 2007 7:14 pm

I've just zipped up the current state of my bioloid project. As a project it's probably useless to you, and in all likelihood won't compile without some changes, but there are several features of interest:

1. A makefile that builds C and C++ files.
2. A fixed point class 'Fixed' that makes using fixed point numbers much easier. It still needs a number of features implemented but that basics for calculation are there.
3. A class 'Dynamixel' that encapsulates the protocol handling for the dynamixel protocol. It provides services to read and write byte and short registers on the AX-12+ and AX-S1. It uses a read-modify-write cycle for EEPROM registers to minimize rewrite cycles and inserts a necessary EEPROM delay. Device status is cached and functions retry as needed to insure reliable operation. No support for SYNC_WRITE at the moment.
4. A class 'Servo' that drives AX-12+ specifically. It converts between the sign-mantissa format the servos require and the fixed point format which is fast to calculate. It also provides a reversing function that is useful for dealing with mirrored construction or when you change the orientation of a servo for mechanical or wiring regions.

It's in my uploads at http://robosavvy.com/Builders/acy.stapp/Example2.zip

Enjoy
I've just zipped up the current state of my bioloid project. As a project it's probably useless to you, and in all likelihood won't compile without some changes, but there are several features of interest:

1. A makefile that builds C and C++ files.
2. A fixed point class 'Fixed' that makes using fixed point numbers much easier. It still needs a number of features implemented but that basics for calculation are there.
3. A class 'Dynamixel' that encapsulates the protocol handling for the dynamixel protocol. It provides services to read and write byte and short registers on the AX-12+ and AX-S1. It uses a read-modify-write cycle for EEPROM registers to minimize rewrite cycles and inserts a necessary EEPROM delay. Device status is cached and functions retry as needed to insure reliable operation. No support for SYNC_WRITE at the moment.
4. A class 'Servo' that drives AX-12+ specifically. It converts between the sign-mantissa format the servos require and the fixed point format which is fast to calculate. It also provides a reversing function that is useful for dealing with mirrored construction or when you change the orientation of a servo for mechanical or wiring regions.

It's in my uploads at http://robosavvy.com/Builders/acy.stapp/Example2.zip

Enjoy
acy.stapp
Robot Builder
Robot Builder
Posts: 14
Joined: Sat Aug 25, 2007 5:25 pm

1 postPage 1 of 1
1 postPage 1 of 1