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

new controller coming together, update...

Bioloid robot kit from Korean company Robotis; CM5 controller block, AX12 servos..
19 postsPage 1 of 21, 2
19 postsPage 1 of 21, 2

new controller coming together, update...

Post by Juha » Mon Nov 06, 2006 2:10 pm

Post by Juha
Mon Nov 06, 2006 2:10 pm

Hi guys,

I though I'd give you a brief update on what I've been doing.

I've always had the plan on replacing the cm-5 with a solution that fits my needs better. I mean, I think Bioloid is an excellent structure to build your robot on, the ax-12 has awesome features (like chaining, feedback, they're powerful etc), and the plastic structures with the kit are very good quality (light, but very strong).

However, cm-5 provides almost no expandability.

So, yesterday I was finally able to control the ax-12 actuators with my new prototype controller. Not really much there yet, just bunch of wires on a prototyping board.

What I'm using is SNAP module from Imsys http://www.imsys.se/products/modules/snapmodule.htm.

SNAP is based on the TINI java processor, which is packed on a 72 pin SIMM. It has 2MB of flash and 8MB of DRAM and it supports J2ME-CLDC with floats. The fact that it runs java code (with "real" thread support) fits my need really well, since I've been working with java for as long as java has existed. Right now I'm powering the module from the Bioloid bus.

The module has excellent networking capabilities, like 3x serial, i2c, 10/100base Ethernet, CAN etc. There are also generic I/O pins which you can use.

Right now I just have one java class which can handle the communication over the half-duplex serial bus, and construct/send and receive messages over the bus. On top of this I have a command-line tool I can use over terminal to type in the messages.

What I'm planning on doing the next:

Software:

1) Right now I'm designing a java framework that handles the movement sequences. Idea is, that you can design "static" sequences like you can with the movement editor (just number data) or extend a java base class to create more dynamic movements. There are more issues here; I'll get back to that later...

Hardware (*):

1) Bluetooth: this is one of the top priorities. There are some nice & cheap serial-over-Bluetooth modules; I'll just have to figure out which one to order.

2) Camera (**). I've also run into some nice miniature cameras which take pictures in JPG and send then over serial, like this one:
http://www.tdc.co.uk/camera/index.htm#itmc328

3) Gyros/Accelerometers. This is probably the best one I've run into:
http://www.sparkfun.com/commerce/produc ... ts_id=741#
Of course, with this one I'd need a/d converters. Something that communicates over I2C might be nicer.

4) Compass module. This seems quite ok
http://www.sparkfun.com/commerce/produc ... ts_id=7915

5) General I/O and A/D: These are needed for different buttons/LEDs etc, and also possibly for the section 3. The plan is to use I2C for these kinds of things; I don't what to waste the few general I/O pins that on SNAP for something like turning a LED on/off or reading a status of some button. Perhaps use this one:
http://www.sparkfun.com/commerce/produc ... ts_id=8130
However, it's digital only. So another choice might to make a similar solution with some AVR which typically have A/D on them, and communicate with it over I2C.

6) New battery, like I wrote in the general section of this forum. I'll probably go with Li-Po battery. I found this Finnish store recently:
http://www.verticalhobby.com/indexen.html


Robot structure:

1) At some point I'll design an actual board. I'll just first have to figure out all the components I want on it.

2) I'll have to expand the torso of the robot to fit SNAP in there. It will most likely reside in sort of a "back bag". The torso will be few cm taller then now.

3) More actuators for moving head + proper arms. I might first take the ax-12 from the arms when I update the torso with moving head. But at some point I'll have to order more ax-12s. Does robosavvy sell single ax-12? (Half a dozen or so)


* = Ideas on where to get these are really appreciated! One of the problems is, that I've found nice components, but they're all from different stores :) It would be a lot easier to order them from one store... please, if you have ideas on the components I need, let me know :)

** = My plan is to have on board image processing. Not just a solution where you have wireless camera on the robot, and image is send to your computer / some monitor. Of course, the ultimate goal is stereovision ;) I've worked with machine vision a little bit in my past.

Hmm... What else... :) I'm taking it easy with this project; let's see when I'll actually have the robot walking with the new controller.

So, the update wasn't so "brief" in the end :) Thoughts / ideas appreciated!


Br,
Juha
Hi guys,

I though I'd give you a brief update on what I've been doing.

I've always had the plan on replacing the cm-5 with a solution that fits my needs better. I mean, I think Bioloid is an excellent structure to build your robot on, the ax-12 has awesome features (like chaining, feedback, they're powerful etc), and the plastic structures with the kit are very good quality (light, but very strong).

However, cm-5 provides almost no expandability.

So, yesterday I was finally able to control the ax-12 actuators with my new prototype controller. Not really much there yet, just bunch of wires on a prototyping board.

What I'm using is SNAP module from Imsys http://www.imsys.se/products/modules/snapmodule.htm.

SNAP is based on the TINI java processor, which is packed on a 72 pin SIMM. It has 2MB of flash and 8MB of DRAM and it supports J2ME-CLDC with floats. The fact that it runs java code (with "real" thread support) fits my need really well, since I've been working with java for as long as java has existed. Right now I'm powering the module from the Bioloid bus.

The module has excellent networking capabilities, like 3x serial, i2c, 10/100base Ethernet, CAN etc. There are also generic I/O pins which you can use.

Right now I just have one java class which can handle the communication over the half-duplex serial bus, and construct/send and receive messages over the bus. On top of this I have a command-line tool I can use over terminal to type in the messages.

What I'm planning on doing the next:

Software:

1) Right now I'm designing a java framework that handles the movement sequences. Idea is, that you can design "static" sequences like you can with the movement editor (just number data) or extend a java base class to create more dynamic movements. There are more issues here; I'll get back to that later...

Hardware (*):

1) Bluetooth: this is one of the top priorities. There are some nice & cheap serial-over-Bluetooth modules; I'll just have to figure out which one to order.

2) Camera (**). I've also run into some nice miniature cameras which take pictures in JPG and send then over serial, like this one:
http://www.tdc.co.uk/camera/index.htm#itmc328

3) Gyros/Accelerometers. This is probably the best one I've run into:
http://www.sparkfun.com/commerce/produc ... ts_id=741#
Of course, with this one I'd need a/d converters. Something that communicates over I2C might be nicer.

4) Compass module. This seems quite ok
http://www.sparkfun.com/commerce/produc ... ts_id=7915

5) General I/O and A/D: These are needed for different buttons/LEDs etc, and also possibly for the section 3. The plan is to use I2C for these kinds of things; I don't what to waste the few general I/O pins that on SNAP for something like turning a LED on/off or reading a status of some button. Perhaps use this one:
http://www.sparkfun.com/commerce/produc ... ts_id=8130
However, it's digital only. So another choice might to make a similar solution with some AVR which typically have A/D on them, and communicate with it over I2C.

6) New battery, like I wrote in the general section of this forum. I'll probably go with Li-Po battery. I found this Finnish store recently:
http://www.verticalhobby.com/indexen.html


Robot structure:

1) At some point I'll design an actual board. I'll just first have to figure out all the components I want on it.

2) I'll have to expand the torso of the robot to fit SNAP in there. It will most likely reside in sort of a "back bag". The torso will be few cm taller then now.

3) More actuators for moving head + proper arms. I might first take the ax-12 from the arms when I update the torso with moving head. But at some point I'll have to order more ax-12s. Does robosavvy sell single ax-12? (Half a dozen or so)


* = Ideas on where to get these are really appreciated! One of the problems is, that I've found nice components, but they're all from different stores :) It would be a lot easier to order them from one store... please, if you have ideas on the components I need, let me know :)

** = My plan is to have on board image processing. Not just a solution where you have wireless camera on the robot, and image is send to your computer / some monitor. Of course, the ultimate goal is stereovision ;) I've worked with machine vision a little bit in my past.

Hmm... What else... :) I'm taking it easy with this project; let's see when I'll actually have the robot walking with the new controller.

So, the update wasn't so "brief" in the end :) Thoughts / ideas appreciated!


Br,
Juha
Juha
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 30
Joined: Fri Aug 25, 2006 1:00 am
Location: Helsinki, Finland

Post by jonkster » Wed Nov 08, 2006 6:00 am

Post by jonkster
Wed Nov 08, 2006 6:00 am

sounds pretty cool.

FWIW I have been working at interfacing a BD Micro Mavric II board
http://www.bdmicro.com/
in place of CM5 (for same reasons - the CM5 doesn't present much option for extending and interfacing). The Mavric II board uses a atmega128 (same as CM5) and allows all atmega128 ports to be accessed. I wired up a simple board to control the data in/out stuff (as per diagram in AX12 manual). Setup works roughly - can move servos and read from them although having issues when sending multiple control packets - have something wrong with usart/interface code as after a while I start missing response packets or I get framing errors. Still working on this but showing promise. Next step is to write control system using FreeRTOS environment

Obviously not quite as ambitious as your system !

> 3) More actuators for moving head + proper arms. I might first take the ax-12 from
> the arms when I update the torso with moving head. But at some point I'll have to order > more ax-12s. Does robosavvy sell single ax-12? (Half a dozen or so)

I got mine (I am in Australia) from Tribotix - they supply individual AX12's
http://www.tribotix.com/Products/Roboti ... alogue.htm
sounds pretty cool.

FWIW I have been working at interfacing a BD Micro Mavric II board
http://www.bdmicro.com/
in place of CM5 (for same reasons - the CM5 doesn't present much option for extending and interfacing). The Mavric II board uses a atmega128 (same as CM5) and allows all atmega128 ports to be accessed. I wired up a simple board to control the data in/out stuff (as per diagram in AX12 manual). Setup works roughly - can move servos and read from them although having issues when sending multiple control packets - have something wrong with usart/interface code as after a while I start missing response packets or I get framing errors. Still working on this but showing promise. Next step is to write control system using FreeRTOS environment

Obviously not quite as ambitious as your system !

> 3) More actuators for moving head + proper arms. I might first take the ax-12 from
> the arms when I update the torso with moving head. But at some point I'll have to order > more ax-12s. Does robosavvy sell single ax-12? (Half a dozen or so)

I got mine (I am in Australia) from Tribotix - they supply individual AX12's
http://www.tribotix.com/Products/Roboti ... alogue.htm
jonkster
Newbie
Newbie
User avatar
Posts: 5
Joined: Tue Nov 07, 2006 1:00 am
Location: Australia

Post by Juha » Wed Nov 08, 2006 11:10 am

Post by Juha
Wed Nov 08, 2006 11:10 am

Hi jonkster,

Nice to hear about you project. I think there are number of people who've atleast planned on making their own board for their bioloid.. That's why I started this topic. Come on guys, tell us what you're doing/planning! :)

AVR is good choice too, especially since they have such a wide range of i/o + a/d converters.

jonkster wrote:Setup works roughly - can move servos and read from them although having issues when sending multiple control packets - have something wrong with usart/interface code as after a while I start missing response packets or I get framing errors. Still working on this but showing promise.


I actually still also getting some errors... but mine typically happen with the first packages. Still working on the solution, could be that (perhaps because of java) the uart just starts slow.
I haven't really yet tried sending lots of packages to the bus, have to see if that causes more errors.

jonkster wrote:Obviously not quite as ambitious as your system !


Ha! :) Well, lets see what I actually get done.... ;)

jonkster wrote:> Does robosavvy sell single ax-12? (Half a dozen or so)

I got mine (I am in Australia) from Tribotix - they supply individual AX12's
http://www.tribotix.com/Products/Roboti ... alogue.htm


Yeah, I noticed that they're selling them. It's just that ordering from Europe would be easier for me, don't have to worry about possible extra charges.

cheers,
Juha
Hi jonkster,

Nice to hear about you project. I think there are number of people who've atleast planned on making their own board for their bioloid.. That's why I started this topic. Come on guys, tell us what you're doing/planning! :)

AVR is good choice too, especially since they have such a wide range of i/o + a/d converters.

jonkster wrote:Setup works roughly - can move servos and read from them although having issues when sending multiple control packets - have something wrong with usart/interface code as after a while I start missing response packets or I get framing errors. Still working on this but showing promise.


I actually still also getting some errors... but mine typically happen with the first packages. Still working on the solution, could be that (perhaps because of java) the uart just starts slow.
I haven't really yet tried sending lots of packages to the bus, have to see if that causes more errors.

jonkster wrote:Obviously not quite as ambitious as your system !


Ha! :) Well, lets see what I actually get done.... ;)

jonkster wrote:> Does robosavvy sell single ax-12? (Half a dozen or so)

I got mine (I am in Australia) from Tribotix - they supply individual AX12's
http://www.tribotix.com/Products/Roboti ... alogue.htm


Yeah, I noticed that they're selling them. It's just that ordering from Europe would be easier for me, don't have to worry about possible extra charges.

cheers,
Juha
Juha
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 30
Joined: Fri Aug 25, 2006 1:00 am
Location: Helsinki, Finland

Post by JonHylands » Thu Nov 09, 2006 8:33 pm

Post by JonHylands
Thu Nov 09, 2006 8:33 pm

I'm planning (once I buy a kit in the spring) to toss the CM-5, and interface the servos & sensor(s) to a gumstix.

Do you guys have any advice - things to watch for?

Does the schematic as posted in the AX-12 manual work for using a standard Tx/Rx interface on a micro-controller?

What speed do you use to talk on the bus?

Thanks,
Jon
I'm planning (once I buy a kit in the spring) to toss the CM-5, and interface the servos & sensor(s) to a gumstix.

Do you guys have any advice - things to watch for?

Does the schematic as posted in the AX-12 manual work for using a standard Tx/Rx interface on a micro-controller?

What speed do you use to talk on the bus?

Thanks,
Jon
JonHylands
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 512
Joined: Thu Nov 09, 2006 1:00 am
Location: Ontario, Canada

Post by limor » Fri Nov 10, 2006 12:38 am

Post by limor
Fri Nov 10, 2006 12:38 am

Great topic for discussion!

Thank you Juha for all the links to these amazing embedded products.
Especially the embedded video camera with serial output.. and Java embedded o/s 8)

CM5's only shortcoming is it's lack of analog input pinouts. Please check out the thread about Pepperm's Bioloid Sensor Board as it is a simple solution to address this particular problem.

CM5 also has "only" 16mhz of processing power hence adding some CPU power can allow to do some on-board image processing and -- my favourite -- dynamic control.


I've been working with students in University of Lisbon to attach a Gumstix to the Bioloid bus in order to dynamicly control of the robot utilizing loads of sensory data (sort of like what PWM gyro modules do to stabilize the KHR and Robonova but utilizing 100 sensors instead of 1).

Turns out that the Gumstix is indeed very powerful but there's a lot of learning and discovery to be done like running a virtual linux in Windows, linux bluetooth magic, cross compiling and installing the operating system into its flash memory etc. It does not come with a 300-page document but is rather supported by a community wiki and a very 90's mailing-list with an unsearcheable archive. but this little 400mhz Xscale stix is so fast that it will certainly be able to run some neural addaptive controller and digest 10000 sensor events per second while updating the AX-12's at 100hz. so it is worth all the trouble.

We may be using it in conjunction with the Robostix into which the Gumstix snuggly fits in and which has an Atmega128 like the CM5 and the MavricII. Robostix can probably electrically interface with the Bioloid bus and it has many exposed analog and digital inputs for extra sensors and it can power the Robostix (which has no power interface).

A RoboSavvy blog is in the making and the project will be documented there.

BTW: Both AX-12 servos and AX-S1 sensors are sold on this site!
Great topic for discussion!

Thank you Juha for all the links to these amazing embedded products.
Especially the embedded video camera with serial output.. and Java embedded o/s 8)

CM5's only shortcoming is it's lack of analog input pinouts. Please check out the thread about Pepperm's Bioloid Sensor Board as it is a simple solution to address this particular problem.

CM5 also has "only" 16mhz of processing power hence adding some CPU power can allow to do some on-board image processing and -- my favourite -- dynamic control.


I've been working with students in University of Lisbon to attach a Gumstix to the Bioloid bus in order to dynamicly control of the robot utilizing loads of sensory data (sort of like what PWM gyro modules do to stabilize the KHR and Robonova but utilizing 100 sensors instead of 1).

Turns out that the Gumstix is indeed very powerful but there's a lot of learning and discovery to be done like running a virtual linux in Windows, linux bluetooth magic, cross compiling and installing the operating system into its flash memory etc. It does not come with a 300-page document but is rather supported by a community wiki and a very 90's mailing-list with an unsearcheable archive. but this little 400mhz Xscale stix is so fast that it will certainly be able to run some neural addaptive controller and digest 10000 sensor events per second while updating the AX-12's at 100hz. so it is worth all the trouble.

We may be using it in conjunction with the Robostix into which the Gumstix snuggly fits in and which has an Atmega128 like the CM5 and the MavricII. Robostix can probably electrically interface with the Bioloid bus and it has many exposed analog and digital inputs for extra sensors and it can power the Robostix (which has no power interface).

A RoboSavvy blog is in the making and the project will be documented there.

BTW: Both AX-12 servos and AX-S1 sensors are sold on this site!
limor
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1845
Joined: Mon Oct 11, 2004 1:00 am
Location: London, UK

Post by jonkster » Fri Nov 10, 2006 1:48 am

Post by jonkster
Fri Nov 10, 2006 1:48 am

JonHylands wrote:I'm planning (once I buy a kit in the spring) to toss the CM-5, and interface the servos & sensor(s) to a gumstix.

Do you guys have any advice - things to watch for?

Does the schematic as posted in the AX-12 manual work for using a standard Tx/Rx interface on a micro-controller?


works for me - have interfaced dynamixels to a PIC16F86 and to Atmega128 using this circuit

What speed do you use to talk on the bus?


with the PIC I could get 115200 (just) - 57600 was more suitable ( no UART so I was bit banging and it was using all it's horespower just keeping the communication going with 4MHz xtal. I was trying to make a device like the AX-S1 but with ability for me to add sensors as desired and thus enable me to use the CM5 as the main control but in the end I gave this up - the PIC was just not up to it - and decided to replace the CM5 with something easier to hack)

with the ATMega128 running with 16MHz xtal I am using 1MBaud (same as default CM5)

hope this of use
JonHylands wrote:I'm planning (once I buy a kit in the spring) to toss the CM-5, and interface the servos & sensor(s) to a gumstix.

Do you guys have any advice - things to watch for?

Does the schematic as posted in the AX-12 manual work for using a standard Tx/Rx interface on a micro-controller?


works for me - have interfaced dynamixels to a PIC16F86 and to Atmega128 using this circuit

What speed do you use to talk on the bus?


with the PIC I could get 115200 (just) - 57600 was more suitable ( no UART so I was bit banging and it was using all it's horespower just keeping the communication going with 4MHz xtal. I was trying to make a device like the AX-S1 but with ability for me to add sensors as desired and thus enable me to use the CM5 as the main control but in the end I gave this up - the PIC was just not up to it - and decided to replace the CM5 with something easier to hack)

with the ATMega128 running with 16MHz xtal I am using 1MBaud (same as default CM5)

hope this of use
jonkster
Newbie
Newbie
User avatar
Posts: 5
Joined: Tue Nov 07, 2006 1:00 am
Location: Australia

Post by inaki » Fri Nov 10, 2006 11:08 am

Post by inaki
Fri Nov 10, 2006 11:08 am

I am using a PX832A (AKA Propeller) processor and it runs fine at 1Mbps.
Although the robot can be programed in Spin/ASM using this board I am currently working in a interpreter for BCP programs. I support every CM5 internal register. Now I need to interpret BCP commands. Fortunately once tokenized the commands are easy to interpret. What I want to have is a backwards compatible CM5 replacer.

I plan to support the remote commands too.

It is interesting how many projects people have started for replacing the CM5!
I am using a PX832A (AKA Propeller) processor and it runs fine at 1Mbps.
Although the robot can be programed in Spin/ASM using this board I am currently working in a interpreter for BCP programs. I support every CM5 internal register. Now I need to interpret BCP commands. Fortunately once tokenized the commands are easy to interpret. What I want to have is a backwards compatible CM5 replacer.

I plan to support the remote commands too.

It is interesting how many projects people have started for replacing the CM5!
inaki
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 233
Joined: Sun Mar 06, 2005 1:00 am
Location: EH

Post by Juha » Thu Nov 30, 2006 10:07 am

Post by Juha
Thu Nov 30, 2006 10:07 am

Hi guys,

My project is slowly advancing; I've been mainly searching for right components, working on the application architecture / API and so on.

I had one thing I was hoping someone could answer: in the Bioloid ax12/cm-5 system, on which level are the actuator offsets stored/applied?

The ax-12 manual shows that the control table shows:

20(0X14) Down Calibration(L) RD ?
21(0X15) Down Calibration(H) RD ?
22(0X16) Up Calibration(L) RD ?
23(0X17) Up Calibration(H) RD ?

But these ones are (at least in the manual) marked as read only access?

I'm just wondering at which level I should handle the offset, since I'll probably need them.

So if anyone knows, if it's for example the cm-5 which stores them, and processes all the move request adding the offset or something...

Cheers,
Juha
Hi guys,

My project is slowly advancing; I've been mainly searching for right components, working on the application architecture / API and so on.

I had one thing I was hoping someone could answer: in the Bioloid ax12/cm-5 system, on which level are the actuator offsets stored/applied?

The ax-12 manual shows that the control table shows:

20(0X14) Down Calibration(L) RD ?
21(0X15) Down Calibration(H) RD ?
22(0X16) Up Calibration(L) RD ?
23(0X17) Up Calibration(H) RD ?

But these ones are (at least in the manual) marked as read only access?

I'm just wondering at which level I should handle the offset, since I'll probably need them.

So if anyone knows, if it's for example the cm-5 which stores them, and processes all the move request adding the offset or something...

Cheers,
Juha
Juha
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 30
Joined: Fri Aug 25, 2006 1:00 am
Location: Helsinki, Finland

Post by JonHylands » Thu Nov 30, 2006 1:48 pm

Post by JonHylands
Thu Nov 30, 2006 1:48 pm

According to the manual:

Address 0x14~0x17 Calibration. Data used for compensating for the differences between the potentiometers used in the Dynamixel units. The user cannot change this data.

It would pretty much have to be in the AX-12 itself. The offset you're talking about is almost certainly in the CM-5, and is something completely different.

- Jon
According to the manual:

Address 0x14~0x17 Calibration. Data used for compensating for the differences between the potentiometers used in the Dynamixel units. The user cannot change this data.

It would pretty much have to be in the AX-12 itself. The offset you're talking about is almost certainly in the CM-5, and is something completely different.

- Jon
JonHylands
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 512
Joined: Thu Nov 09, 2006 1:00 am
Location: Ontario, Canada

Post by JonHylands » Thu Nov 30, 2006 5:01 pm

Post by JonHylands
Thu Nov 30, 2006 5:01 pm

limor wrote:Thank you Juha for all the links to these amazing embedded products.
Especially the embedded video camera with serial output..


Turns out you can also buy this camera from a place in the US:

http://www.electronics123.com/s.nl/it.A ... tegory=241

limor wrote:We may be using it in conjunction with the Robostix into which the Gumstix snuggly fits in and which has an Atmega128 like the CM5 and the MavricII. Robostix can probably electrically interface with the Bioloid bus and it has many exposed analog and digital inputs for extra sensors and it can power the Robostix (which has no power interface).
[/url] are sold on this site!


My brother is writing a bus interface for me for the Robostix - basically, it uses the two hardware UARTs, one to talk to the gumstix at 115K, and the other to talk to the Bioloid bus at 1 Mbps, with 128-byte buffers in both directions. I should be getting a couple AX-12 servos in the next few days, so I will let you know how it works once I hook mine up to the gumstix/robostix combo.

- Jon
limor wrote:Thank you Juha for all the links to these amazing embedded products.
Especially the embedded video camera with serial output..


Turns out you can also buy this camera from a place in the US:

http://www.electronics123.com/s.nl/it.A ... tegory=241

limor wrote:We may be using it in conjunction with the Robostix into which the Gumstix snuggly fits in and which has an Atmega128 like the CM5 and the MavricII. Robostix can probably electrically interface with the Bioloid bus and it has many exposed analog and digital inputs for extra sensors and it can power the Robostix (which has no power interface).
[/url] are sold on this site!


My brother is writing a bus interface for me for the Robostix - basically, it uses the two hardware UARTs, one to talk to the gumstix at 115K, and the other to talk to the Bioloid bus at 1 Mbps, with 128-byte buffers in both directions. I should be getting a couple AX-12 servos in the next few days, so I will let you know how it works once I hook mine up to the gumstix/robostix combo.

- Jon
JonHylands
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 512
Joined: Thu Nov 09, 2006 1:00 am
Location: Ontario, Canada

Post by Joe » Thu Nov 30, 2006 7:12 pm

Post by Joe
Thu Nov 30, 2006 7:12 pm

Sounds great — everyone please keep up the great work. In the LEGO Mindstorms community, there are a couple of garage businesses that seem to be making a decent living (or at least supporting their habit) by developing and selling custom Mindstorms-compatible components. See Mindsensors for example.

I can easily imagine the same thing happening in the Bioloid world, though in this case, there's clearly pent-up demand for a replacement controller as well. But the Bioloid wiring and serial protocol would be the underlying glue that makes it all work together.

Has anyone yet tried controlling an AX-12 from a PC? Seems like it should just require adapting the RS-232 voltage to the right levels, and then a small bit of programming.

Best,
— Joe
Sounds great — everyone please keep up the great work. In the LEGO Mindstorms community, there are a couple of garage businesses that seem to be making a decent living (or at least supporting their habit) by developing and selling custom Mindstorms-compatible components. See Mindsensors for example.

I can easily imagine the same thing happening in the Bioloid world, though in this case, there's clearly pent-up demand for a replacement controller as well. But the Bioloid wiring and serial protocol would be the underlying glue that makes it all work together.

Has anyone yet tried controlling an AX-12 from a PC? Seems like it should just require adapting the RS-232 voltage to the right levels, and then a small bit of programming.

Best,
— Joe
Joe
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 204
Joined: Tue Sep 05, 2006 1:00 am

Post by JonHylands » Thu Nov 30, 2006 8:06 pm

Post by JonHylands
Thu Nov 30, 2006 8:06 pm

Well, what I'm writing for the gumstix will also work for talking to it from the PC, since the robostix is just acting as a go-between. In fact, the code I'm writing for the gumstix is in Squeak Smalltalk, and that code will run on my Windows XP laptop with no changes.

- Jon
Well, what I'm writing for the gumstix will also work for talking to it from the PC, since the robostix is just acting as a go-between. In fact, the code I'm writing for the gumstix is in Squeak Smalltalk, and that code will run on my Windows XP laptop with no changes.

- Jon
JonHylands
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 512
Joined: Thu Nov 09, 2006 1:00 am
Location: Ontario, Canada

Post by limor » Fri Dec 01, 2006 1:25 am

Post by limor
Fri Dec 01, 2006 1:25 am

JonHylands, I'd be interested to see how your brother is planning to connect the Robostix to the Bioloid bus and how he powers the Robostix, Gumstix and Bioloid bus.

thanks! :lol:
JonHylands, I'd be interested to see how your brother is planning to connect the Robostix to the Bioloid bus and how he powers the Robostix, Gumstix and Bioloid bus.

thanks! :lol:
limor
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1845
Joined: Mon Oct 11, 2004 1:00 am
Location: London, UK

Post by JonHylands » Fri Dec 01, 2006 1:58 am

Post by JonHylands
Fri Dec 01, 2006 1:58 am

My brother isn't doing anything other than writing a simple C program that runs on the Mega128 on the robostix. I'm the one who will be interfacing the gumstix/robostix with the Bioloid bus.

The way he set it up is to just connect the Tx and Rx on the Bioloid side of the robostix. The Rx pin gets the stuff that the robostix transmits down the bus, but he just discards that.

As far as power, I will be using a 9.6 volt NiMh battery to power both the bus and the robostix. The robostix provides power to the gumstix throught its voltage regulator, so its taken care of.

- Jon
My brother isn't doing anything other than writing a simple C program that runs on the Mega128 on the robostix. I'm the one who will be interfacing the gumstix/robostix with the Bioloid bus.

The way he set it up is to just connect the Tx and Rx on the Bioloid side of the robostix. The Rx pin gets the stuff that the robostix transmits down the bus, but he just discards that.

As far as power, I will be using a 9.6 volt NiMh battery to power both the bus and the robostix. The robostix provides power to the gumstix throught its voltage regulator, so its taken care of.

- Jon
JonHylands
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 512
Joined: Thu Nov 09, 2006 1:00 am
Location: Ontario, Canada

Post by Juha » Fri Dec 01, 2006 10:11 am

Post by Juha
Fri Dec 01, 2006 10:11 am

JonHylands wrote:It would pretty much have to be in the AX-12 itself. The offset you're talking about is almost certainly in the CM-5, and is something completely different.


Yes, it's probably cm-5 which is taking care of the offsets.

JonHylands wrote:
limor wrote:Thank you Juha for all the links to these amazing embedded products.
Especially the embedded video camera with serial output..


Turns out you can also buy this camera from a place in the US:

http://www.electronics123.com/s.nl/it.A ... tegory=241


This is actually where I ended up ordering them from.

I got the cameras (I ordered 2) last week , they seem very, very cool :) I think it took about a week to get them all the way over here (to Finland).

I did the wirering for my controller yesterday, I'll probably try to code the protocol this weekend.

Joe wrote:Has anyone yet tried controlling an AX-12 from a PC? Seems like it should just require adapting the RS-232 voltage to the right levels, and then a small bit of programming.


Not directly, I have my controller in between.

Yes, signal levels is one thing (can be done with a single chip) and another thing is that you need a control signal to choose the direction of the bus. But I think yo might be able to use one of the "extra" signals in your rs232 port for these (CTS, RTS what ever I can never remember these :)). So this should only take 3 components.
JonHylands wrote:It would pretty much have to be in the AX-12 itself. The offset you're talking about is almost certainly in the CM-5, and is something completely different.


Yes, it's probably cm-5 which is taking care of the offsets.

JonHylands wrote:
limor wrote:Thank you Juha for all the links to these amazing embedded products.
Especially the embedded video camera with serial output..


Turns out you can also buy this camera from a place in the US:

http://www.electronics123.com/s.nl/it.A ... tegory=241


This is actually where I ended up ordering them from.

I got the cameras (I ordered 2) last week , they seem very, very cool :) I think it took about a week to get them all the way over here (to Finland).

I did the wirering for my controller yesterday, I'll probably try to code the protocol this weekend.

Joe wrote:Has anyone yet tried controlling an AX-12 from a PC? Seems like it should just require adapting the RS-232 voltage to the right levels, and then a small bit of programming.


Not directly, I have my controller in between.

Yes, signal levels is one thing (can be done with a single chip) and another thing is that you need a control signal to choose the direction of the bus. But I think yo might be able to use one of the "extra" signals in your rs232 port for these (CTS, RTS what ever I can never remember these :)). So this should only take 3 components.
Juha
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 30
Joined: Fri Aug 25, 2006 1:00 am
Location: Helsinki, Finland

Next
19 postsPage 1 of 21, 2
19 postsPage 1 of 21, 2