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

HSR-8498HB and serial connection: Help please!

Hitec robotics including ROBONOVA humanoid, HSR-8498HB servos, MR C-3024 Controllers and RoboBasic
8 postsPage 1 of 1
8 postsPage 1 of 1

HSR-8498HB and serial connection: Help please!

Post by carloti » Tue Apr 09, 2013 12:06 pm

Post by carloti
Tue Apr 09, 2013 12:06 pm

Hi everyone!

I try to connect this servo to a Ubuntu PC with serial connection, using a RS232-ttl conversor.

I supply 6V (1000mA) to the servo and 3.3V to the conversor.

I am programming in C, to send package bytes I use this:
unsigned char instruct[][7] = {
{ 0x080, 0xE7, 0x00, 0x00, (256 - (0x080 + 0xE7 + 0x00 + 0x00)), 0x00, 0x00 }, /* 1){7} .getID+Version*/
{ 0x080, 0x00, 0x08, 0x34, 0xCC, 0x00, 0x00 } /* 1){7} .setPosition*/
};
I configure the channel speed at 19200.

It is curious but I achieve to move the servo one time. I dont know if the servo receive the package. I observe that the servo lock when I connect and I dont know why?

If the checksum ok? Anyone see what can be failing?

Thanks :)

Is the
Hi everyone!

I try to connect this servo to a Ubuntu PC with serial connection, using a RS232-ttl conversor.

I supply 6V (1000mA) to the servo and 3.3V to the conversor.

I am programming in C, to send package bytes I use this:
unsigned char instruct[][7] = {
{ 0x080, 0xE7, 0x00, 0x00, (256 - (0x080 + 0xE7 + 0x00 + 0x00)), 0x00, 0x00 }, /* 1){7} .getID+Version*/
{ 0x080, 0x00, 0x08, 0x34, 0xCC, 0x00, 0x00 } /* 1){7} .setPosition*/
};
I configure the channel speed at 19200.

It is curious but I achieve to move the servo one time. I dont know if the servo receive the package. I observe that the servo lock when I connect and I dont know why?

If the checksum ok? Anyone see what can be failing?

Thanks :)

Is the
carloti
Newbie
Newbie
Posts: 5
Joined: Tue Apr 09, 2013 11:32 am

Post by i-Bot » Wed Apr 10, 2013 10:23 am

Post by i-Bot
Wed Apr 10, 2013 10:23 am

The servo protocol does not work with a standard RS232 to serial converter. Did you use the Hitec circuit ?

http://www.robonova.de/store/support/in ... =126&nav=0
The servo protocol does not work with a standard RS232 to serial converter. Did you use the Hitec circuit ?

http://www.robonova.de/store/support/in ... =126&nav=0
i-Bot
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1142
Joined: Wed May 17, 2006 1:00 am

Post by carloti » Wed Apr 10, 2013 6:59 pm

Post by carloti
Wed Apr 10, 2013 6:59 pm

Thank you very much for your answear!

That could be the problem. I´m using a standard RS232 converter. The weird thing is that in some prubes, it works and the servo moves, but when you try again, it fails.

What can I do to send command through the COM port and It works??
Where can I get than serial converter??
Im trying with other servo Dinamixel ax-12 an I don´t have problems.

Thanks a lot. :)
Thank you very much for your answear!

That could be the problem. I´m using a standard RS232 converter. The weird thing is that in some prubes, it works and the servo moves, but when you try again, it fails.

What can I do to send command through the COM port and It works??
Where can I get than serial converter??
Im trying with other servo Dinamixel ax-12 an I don´t have problems.

Thanks a lot. :)
carloti
Newbie
Newbie
Posts: 5
Joined: Tue Apr 09, 2013 11:32 am

Post by i-Bot » Thu Apr 11, 2013 12:38 am

Post by i-Bot
Thu Apr 11, 2013 12:38 am

A standard RS232 to TTL inverts the signal and this is not right for HMI. The occasional servo movement is probably due to there being pulses in the serial data which trigger PPM movement of the servo.

The programmer file I gave has the Hitec cable schematic under the help menu.

or it is in my file area:
http://robosavvy.com/Builders/i-Bot/HMI%20cable.PNG

There are some other HMI related docs in my file area too:
http://robosavvy.com/Builders/i-Bot/
A standard RS232 to TTL inverts the signal and this is not right for HMI. The occasional servo movement is probably due to there being pulses in the serial data which trigger PPM movement of the servo.

The programmer file I gave has the Hitec cable schematic under the help menu.

or it is in my file area:
http://robosavvy.com/Builders/i-Bot/HMI%20cable.PNG

There are some other HMI related docs in my file area too:
http://robosavvy.com/Builders/i-Bot/
i-Bot
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1142
Joined: Wed May 17, 2006 1:00 am

Post by carloti » Thu Apr 11, 2013 9:10 am

Post by carloti
Thu Apr 11, 2013 9:10 am

The program you gave me is for Windows and I,m and doing this in Linux.

My question now is, can I invert the signal in the source code? or what I need to adapt the standard rs232 to hitec servo?

I don't know much about electric circuits.

All I have to do is with Ubuntu, and RS-232 ttl converter and hictec servo, send commands through the serial port in order to the servo response (give us ID + version, change positoin, speed, etc...)

Im out of time and for that reason I need help.
Thanks again.
The program you gave me is for Windows and I,m and doing this in Linux.

My question now is, can I invert the signal in the source code? or what I need to adapt the standard rs232 to hitec servo?

I don't know much about electric circuits.

All I have to do is with Ubuntu, and RS-232 ttl converter and hictec servo, send commands through the serial port in order to the servo response (give us ID + version, change positoin, speed, etc...)

Im out of time and for that reason I need help.
Thanks again.
carloti
Newbie
Newbie
Posts: 5
Joined: Tue Apr 09, 2013 11:32 am

Post by i-Bot » Thu Apr 11, 2013 11:07 am

Post by i-Bot
Thu Apr 11, 2013 11:07 am

No, you cannot invert the signal in source code.

Make the simple cable in the PNG file above and use that instead of the RS232 to TTL converter. Works in linux as well as Windows.
No, you cannot invert the signal in source code.

Make the simple cable in the PNG file above and use that instead of the RS232 to TTL converter. Works in linux as well as Windows.
i-Bot
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1142
Joined: Wed May 17, 2006 1:00 am

Post by carloti » Mon Apr 29, 2013 12:21 pm

Post by carloti
Mon Apr 29, 2013 12:21 pm

Finally! Success!

But now I have to connect 2 o more servos simultaneously.
I connect the servo to a breadboard. How can I plug 2 servos and send packages to move the two at the same time??

Anybody knows how?
Finally! Success!

But now I have to connect 2 o more servos simultaneously.
I connect the servo to a breadboard. How can I plug 2 servos and send packages to move the two at the same time??

Anybody knows how?
carloti
Newbie
Newbie
Posts: 5
Joined: Tue Apr 09, 2013 11:32 am

Post by i-Bot » Tue Apr 30, 2013 6:04 pm

Post by i-Bot
Tue Apr 30, 2013 6:04 pm

The HMI protocol is supposed to support multiple ID's of servos on the same bus. All pins wired together. I never tried this because my humanoids had 18 servos and the slow data rate made it too slow to go around all the servos.

This gives some idea of how to set ID ( Only have one on bus a this time), then subsequently move them by ID.
http://robosavvy.com/Builders/i-Bot/HSR8498_serial.pdf
The HMI protocol is supposed to support multiple ID's of servos on the same bus. All pins wired together. I never tried this because my humanoids had 18 servos and the slow data rate made it too slow to go around all the servos.

This gives some idea of how to set ID ( Only have one on bus a this time), then subsequently move them by ID.
http://robosavvy.com/Builders/i-Bot/HSR8498_serial.pdf
i-Bot
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1142
Joined: Wed May 17, 2006 1:00 am


8 postsPage 1 of 1
8 postsPage 1 of 1