He Flaps like a Bird: Destructive Resonation in Robot's Arms

KHR-1, KHR-2HV, KHR-3HV, ICS servos, RCB controllers and other Kondo products
53 postsPage 2 of 41, 2, 3, 4
53 postsPage 2 of 41, 2, 3, 4

Post by noDNA » Wed Apr 26, 2006 1:16 pm

Post by noDNA
Wed Apr 26, 2006 1:16 pm

The servo programmer software can be downloaded for free, but you need the Servo Programmer cable which is special and not the same as your ICS PC cable coming with the KHR-1
regards
noDNA
The servo programmer software can be downloaded for free, but you need the Servo Programmer cable which is special and not the same as your ICS PC cable coming with the KHR-1
regards
noDNA
noDNA offline
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 44
Joined: Wed Jan 25, 2006 1:00 am

Post by Ray » Wed Apr 26, 2006 3:48 pm

Post by Ray
Wed Apr 26, 2006 3:48 pm

noDNA

you had said had you has some chep electronics and has images of the internal PCB, can i have the information?

My analysis is that the PC send out command (digital steams)
in the level +-12V, in which, we need a MAX232 (or equivalent) to
convert it into 5V or 0V TTL signal.
This TTL level signal cannot directly communicate with the Servo.
As I know, the signal in the Servo is only the PWM signal,
that means, squarewave signal with variable pulsewidth,
I think there may be a microcontroller that read command from PC,
then, it send out some patterns of width, (of course, that are not the normal width for servo operation) to the servo, the servo, recongized,
then, resend a serious of TTL level pulse back to the MAX232 in the same
wire (Bi-directional signal wire).

This is my guess, I need more information yet :?
noDNA

you had said had you has some chep electronics and has images of the internal PCB, can i have the information?

My analysis is that the PC send out command (digital steams)
in the level +-12V, in which, we need a MAX232 (or equivalent) to
convert it into 5V or 0V TTL signal.
This TTL level signal cannot directly communicate with the Servo.
As I know, the signal in the Servo is only the PWM signal,
that means, squarewave signal with variable pulsewidth,
I think there may be a microcontroller that read command from PC,
then, it send out some patterns of width, (of course, that are not the normal width for servo operation) to the servo, the servo, recongized,
then, resend a serious of TTL level pulse back to the MAX232 in the same
wire (Bi-directional signal wire).

This is my guess, I need more information yet :?
Ray offline
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 230
Joined: Sun Apr 23, 2006 1:00 am
Location: HK

Post by noDNA » Thu Apr 27, 2006 1:56 pm

Post by noDNA
Thu Apr 27, 2006 1:56 pm

Yes, I tried to understand the procedure too but got stuck with other things when it became not so easy to imitate with something I have here in my drawers.

The Servo Cable is a three wire cable. It has an Y split into two cable ends, with identical 3 Futaba cables and female connectors at the end, white,red,black color coded as usual.

One of the Y split cables goes into a servo port. I did cut the white wire of this cable because I did not want any servo signal to reach or come from the RCB-1 board and interfere with my servo programming. Just to make sure.

The other Y-split connects to the servo. As it gets now GND and +6V through the Y split from the RCB-1 board the only cable left to communicate with the PC is the white one (and maybe some triggered GND, but this is only a wild guess)

I know about serial and USB but I did not dig my head into one wire protocols. That is why I better did other things and am still purchasing the ICS Servo cable for me and my customers here in Germany.
regards and here are some photos
noDNA
Image
Image
Image
Yes, I tried to understand the procedure too but got stuck with other things when it became not so easy to imitate with something I have here in my drawers.

The Servo Cable is a three wire cable. It has an Y split into two cable ends, with identical 3 Futaba cables and female connectors at the end, white,red,black color coded as usual.

One of the Y split cables goes into a servo port. I did cut the white wire of this cable because I did not want any servo signal to reach or come from the RCB-1 board and interfere with my servo programming. Just to make sure.

The other Y-split connects to the servo. As it gets now GND and +6V through the Y split from the RCB-1 board the only cable left to communicate with the PC is the white one (and maybe some triggered GND, but this is only a wild guess)

I know about serial and USB but I did not dig my head into one wire protocols. That is why I better did other things and am still purchasing the ICS Servo cable for me and my customers here in Germany.
regards and here are some photos
noDNA
Image
Image
Image
noDNA offline
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 44
Joined: Wed Jan 25, 2006 1:00 am

Post by Ray » Thu Apr 27, 2006 5:30 pm

Post by Ray
Thu Apr 27, 2006 5:30 pm

noDNA,

Thank you for your photos,

I can see 2 transistors are used for converting signal between PWM signal
level and the RS232C(+-12V, or less) of the PC

two transistors are used because they are cheaper than a MAX232,
moreover, it also involve other signal such as DTR and a diode which
help to give correct waveform. This 2 transistors also make the PWM signal line Bi-directional.

If I need to copy the circuit, I must have a multimeter to find output the correct pin assignment of the transistors

:lol: Anyway, you are right, using the supplier's ICS cable is more safe
unless I need to make a business :roll:
noDNA,

Thank you for your photos,

I can see 2 transistors are used for converting signal between PWM signal
level and the RS232C(+-12V, or less) of the PC

two transistors are used because they are cheaper than a MAX232,
moreover, it also involve other signal such as DTR and a diode which
help to give correct waveform. This 2 transistors also make the PWM signal line Bi-directional.

If I need to copy the circuit, I must have a multimeter to find output the correct pin assignment of the transistors

:lol: Anyway, you are right, using the supplier's ICS cable is more safe
unless I need to make a business :roll:
Ray offline
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 230
Joined: Sun Apr 23, 2006 1:00 am
Location: HK

Post by noDNA » Thu Apr 27, 2006 6:12 pm

Post by noDNA
Thu Apr 27, 2006 6:12 pm

Ray, shall I measure it for you? I have a Multimeter.

In which country are you living, is it in the EU? Because I have 2 cables and could send you one if you return it in a week or two.

By the way, the RS232 cables are not available anymore. There is a new version which has USB,
regards
noDNA
Ray, shall I measure it for you? I have a Multimeter.

In which country are you living, is it in the EU? Because I have 2 cables and could send you one if you return it in a week or two.

By the way, the RS232 cables are not available anymore. There is a new version which has USB,
regards
noDNA
noDNA offline
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 44
Joined: Wed Jan 25, 2006 1:00 am

Post by Ray » Fri Apr 28, 2006 3:42 am

Post by Ray
Fri Apr 28, 2006 3:42 am

noDNA,

I am not living in UK, i live in Hong Kong. To measure the tranistor is a bit complicated. First you must know it is roughly consists of two diode inside a transistor, there are three pins, and several combination.

to measure the direction of a simple diode (2 pin device), you must use a ANALOG multmeter with "x100" measuring band, use the RED and BLACK pen of the multmeter across the pins, and reverse the direction and measure again.
current will flow from BLACK pen to RED pen (defection occurs) indicating direction of the diode. In reverse direction,, no defection occurs.

using this concept, you can guess the configuration of diodes inside the transistor, and replace with, say, common pnp or npn transistors (such as 2N3906 and 2N3904)


Note: I can see one of the transistor, with "SG" label has 3 small letters under it, if the letter is B,E,C then it is more easy to guess.

the big black block with a letter "V" may be a diode, you can check with the above procedure, you can replace it with a common diode such as 1N4606

Good luck! :wink:
noDNA,

I am not living in UK, i live in Hong Kong. To measure the tranistor is a bit complicated. First you must know it is roughly consists of two diode inside a transistor, there are three pins, and several combination.

to measure the direction of a simple diode (2 pin device), you must use a ANALOG multmeter with "x100" measuring band, use the RED and BLACK pen of the multmeter across the pins, and reverse the direction and measure again.
current will flow from BLACK pen to RED pen (defection occurs) indicating direction of the diode. In reverse direction,, no defection occurs.

using this concept, you can guess the configuration of diodes inside the transistor, and replace with, say, common pnp or npn transistors (such as 2N3906 and 2N3904)


Note: I can see one of the transistor, with "SG" label has 3 small letters under it, if the letter is B,E,C then it is more easy to guess.

the big black block with a letter "V" may be a diode, you can check with the above procedure, you can replace it with a common diode such as 1N4606

Good luck! :wink:
Ray offline
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 230
Joined: Sun Apr 23, 2006 1:00 am
Location: HK

Post by biz » Wed Dec 13, 2006 3:54 am

Post by biz
Wed Dec 13, 2006 3:54 am

hi guys, I'm new here. After going thru all the threads, i got some questions to ask.

1. The flapping problem for Kondo is due to the gain settings of the servo or the gyros?

2. The problem can be solved by reducing the gain rite?
For KHR-1, it can only be done by an extra ICS cable rite? Is there any schematic and software available? If not where can i get it thru online store?

For KHR-2, the gain can be adjusted using the cable and software from its own package rite? CAn it be done using the ICS cable?

Currently these are my questions as my KHR-1 is on the way....( i bought it from my fren, 2nd hand robot)
Later might need help from all the experts here, thanks in advance.... :D
hi guys, I'm new here. After going thru all the threads, i got some questions to ask.

1. The flapping problem for Kondo is due to the gain settings of the servo or the gyros?

2. The problem can be solved by reducing the gain rite?
For KHR-1, it can only be done by an extra ICS cable rite? Is there any schematic and software available? If not where can i get it thru online store?

For KHR-2, the gain can be adjusted using the cable and software from its own package rite? CAn it be done using the ICS cable?

Currently these are my questions as my KHR-1 is on the way....( i bought it from my fren, 2nd hand robot)
Later might need help from all the experts here, thanks in advance.... :D
Last edited by biz on Wed Dec 13, 2006 6:59 am, edited 1 time in total.
biz offline
Robot Builder
Robot Builder
User avatar
Posts: 8
Joined: Tue Dec 12, 2006 1:00 am

Post by limor » Wed Dec 13, 2006 4:21 am

Post by limor
Wed Dec 13, 2006 4:21 am

biz wrote:hi guys, I'm new here. After going thru all the threads, i got some questions to ask.

1. The flapping problem for Kondo is due to the gain settings of the servo or the gyros?

yes, it seems so.

biz wrote:2. The problem can be solved by reducing the gain rite?
For KHR-1, it can only be done by an extra ICS cable rite? Is there any schematic and software available? If not where can i get it thru online store?

I dont recall anyone publishing schematics but you can get the ics cable here.

biz wrote:For KHR-2, the gain can be adjusted using the cable and software from its own package rite? CAn it be done using the ICS cable?
it can be done through the RCB-3 controler and you should also be able to do the same using the cable since the servos are ICS although they are high-voltage so not sure.

congratulations on your 2nd robot :o
biz wrote:hi guys, I'm new here. After going thru all the threads, i got some questions to ask.

1. The flapping problem for Kondo is due to the gain settings of the servo or the gyros?

yes, it seems so.

biz wrote:2. The problem can be solved by reducing the gain rite?
For KHR-1, it can only be done by an extra ICS cable rite? Is there any schematic and software available? If not where can i get it thru online store?

I dont recall anyone publishing schematics but you can get the ics cable here.

biz wrote:For KHR-2, the gain can be adjusted using the cable and software from its own package rite? CAn it be done using the ICS cable?
it can be done through the RCB-3 controler and you should also be able to do the same using the cable since the servos are ICS although they are high-voltage so not sure.

congratulations on your 2nd robot :o
limor offline
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1845
Joined: Mon Oct 11, 2004 1:00 am
Location: London, UK

Post by heke » Wed Dec 13, 2006 9:17 am

Post by heke
Wed Dec 13, 2006 9:17 am

Flapping problem is not due to gain settings. Different gain setting fixes the problem.

The cause for the problem is that servo (or an arm) starts to resonate on a frequency which natural to the mechanics of the robot and it's arms. Mechanics means certain angle, certain payload on a servo or on arm, certain speed etc. Plastic (and also aluminium) parts are flexible and that helps an arm to start to resonate (plastic's natural frequency is lower than aluminiums). But plastic is durable and light, so it is not that bad material.

Servo motor has several gears inside. Gaps between the gears also causes the resonation. There is a small mechanical delay from the servo motor to the potentiometer which gives the feed-back of position.

This kind of phenomenom is natural to any servo or any robot.

To fix it (partially, of course), we have to use different gain settings on different movements and on different payloads. In H2H it is done by selection of one of the preset gain-settings by POS-command. Before the next pose POS-command should set new gain-setting for all or some of the servos. SP2 for soccer uses different gain-settings for different movements.

So what is a good gain-setting ? In case of KHR only way to find it out is trial and error :)

Other possibility would be to calculate the natural frequency in different conditions. But that needs a master degree, I think :)

My quess is that "real" robots like Asimo, HRP and industrial robots has a detection logic to detect resonation in real-time and then prevent it also in real-time. If an existing resonation is not stopped, it will destruct the robot sooner or later.
----------------------------
EDIT: Maybe widening the dead-band of the servo helps with flapping (but wide dead-band makes the servo more inaccurate -> not good).

Other possibility is to make more positions (poses): in the beginning of the movement servo (or an arm) moves slowly and then in the middle of the movement the speed is higher. When the arm is aproaching its destination, then speed should be reduced.

When we see robots like Asimo and co. doing their movements, their moves are always very neat and beautiful. One reason is that the programmer wants to prevent flapping and resonation: servo slows down before the destination. With KHR this needs more poses.
---------------------------------
EDIT2: Using a gyro can increase the sensitivity for flapping, but my quess is that it can also reduce it. Gyro can be turned on and off between the poses using SET-command in H2H. Also gyro mixing amplification (=gain) can be changed using SET-command. Again: trial and error and more programming and testing.
----------------------------------
EDIT3: This post has 15k views. I believe many roboteers have had flapping problem or are afraid of it. And many people have been wondering why it happens. If possible, this post should be sticky to avoid any more misunderstandings.
Flapping problem is not due to gain settings. Different gain setting fixes the problem.

The cause for the problem is that servo (or an arm) starts to resonate on a frequency which natural to the mechanics of the robot and it's arms. Mechanics means certain angle, certain payload on a servo or on arm, certain speed etc. Plastic (and also aluminium) parts are flexible and that helps an arm to start to resonate (plastic's natural frequency is lower than aluminiums). But plastic is durable and light, so it is not that bad material.

Servo motor has several gears inside. Gaps between the gears also causes the resonation. There is a small mechanical delay from the servo motor to the potentiometer which gives the feed-back of position.

This kind of phenomenom is natural to any servo or any robot.

To fix it (partially, of course), we have to use different gain settings on different movements and on different payloads. In H2H it is done by selection of one of the preset gain-settings by POS-command. Before the next pose POS-command should set new gain-setting for all or some of the servos. SP2 for soccer uses different gain-settings for different movements.

So what is a good gain-setting ? In case of KHR only way to find it out is trial and error :)

Other possibility would be to calculate the natural frequency in different conditions. But that needs a master degree, I think :)

My quess is that "real" robots like Asimo, HRP and industrial robots has a detection logic to detect resonation in real-time and then prevent it also in real-time. If an existing resonation is not stopped, it will destruct the robot sooner or later.
----------------------------
EDIT: Maybe widening the dead-band of the servo helps with flapping (but wide dead-band makes the servo more inaccurate -> not good).

Other possibility is to make more positions (poses): in the beginning of the movement servo (or an arm) moves slowly and then in the middle of the movement the speed is higher. When the arm is aproaching its destination, then speed should be reduced.

When we see robots like Asimo and co. doing their movements, their moves are always very neat and beautiful. One reason is that the programmer wants to prevent flapping and resonation: servo slows down before the destination. With KHR this needs more poses.
---------------------------------
EDIT2: Using a gyro can increase the sensitivity for flapping, but my quess is that it can also reduce it. Gyro can be turned on and off between the poses using SET-command in H2H. Also gyro mixing amplification (=gain) can be changed using SET-command. Again: trial and error and more programming and testing.
----------------------------------
EDIT3: This post has 15k views. I believe many roboteers have had flapping problem or are afraid of it. And many people have been wondering why it happens. If possible, this post should be sticky to avoid any more misunderstandings.
heke offline
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 26
Joined: Sun Aug 06, 2006 1:00 am
Location: Finland

Post by biz » Wed Dec 13, 2006 1:38 pm

Post by biz
Wed Dec 13, 2006 1:38 pm

oh, its the resonance that causes the vibration. For KHR-2, the gain can be programmed using the cable and software along with its own package. THese values can be set and save....

But for KHR-1, the gain can only be adjusted using an external ICS cable and software, which can be done once before downloading the movement program of the robot to the controller board. (correct me if I'm wrong). So how can the gain to be set for different movement of the robot?
Although I haven receive my robot yet, i just wan to gain more knowledge b4 starting to deal with it.
oh, its the resonance that causes the vibration. For KHR-2, the gain can be programmed using the cable and software along with its own package. THese values can be set and save....

But for KHR-1, the gain can only be adjusted using an external ICS cable and software, which can be done once before downloading the movement program of the robot to the controller board. (correct me if I'm wrong). So how can the gain to be set for different movement of the robot?
Although I haven receive my robot yet, i just wan to gain more knowledge b4 starting to deal with it.
biz offline
Robot Builder
Robot Builder
User avatar
Posts: 8
Joined: Tue Dec 12, 2006 1:00 am

Post by heke » Wed Dec 13, 2006 1:47 pm

Post by heke
Wed Dec 13, 2006 1:47 pm

biz wrote:oh, its the resonance that causes the vibration. For KHR-2, the gain can be programmed using the cable and software along with its own package. THese values can be set and save....

But for KHR-1, the gain can only be adjusted using an external ICS cable and software, which can be done once before downloading the movement program of the robot to the controller board. (correct me if I'm wrong). So how can the gain to be set for different movement of the robot?
Although I haven receive my robot yet, i just wan to gain more knowledge b4 starting to deal with it.


I have understood that KHR-1 has no way to adjust the settings of the servos during or between the movements. In KHR2-HV (and in KHR1-HV) this can be done. In KHR-1 it is maybe better to set a compromise gain and then limit the load on servos by position programming (more poses and fine tuning of the speeds).
biz wrote:oh, its the resonance that causes the vibration. For KHR-2, the gain can be programmed using the cable and software along with its own package. THese values can be set and save....

But for KHR-1, the gain can only be adjusted using an external ICS cable and software, which can be done once before downloading the movement program of the robot to the controller board. (correct me if I'm wrong). So how can the gain to be set for different movement of the robot?
Although I haven receive my robot yet, i just wan to gain more knowledge b4 starting to deal with it.


I have understood that KHR-1 has no way to adjust the settings of the servos during or between the movements. In KHR2-HV (and in KHR1-HV) this can be done. In KHR-1 it is maybe better to set a compromise gain and then limit the load on servos by position programming (more poses and fine tuning of the speeds).
heke offline
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 26
Joined: Sun Aug 06, 2006 1:00 am
Location: Finland

Post by biz » Mon Dec 18, 2006 10:00 am

Post by biz
Mon Dec 18, 2006 10:00 am

is it possible for someone to post the schematic for this ICS servo serial cable? and the connections to the servo plz?

thanks
is it possible for someone to post the schematic for this ICS servo serial cable? and the connections to the servo plz?

thanks
biz offline
Robot Builder
Robot Builder
User avatar
Posts: 8
Joined: Tue Dec 12, 2006 1:00 am

Post by voodoo » Fri Feb 02, 2007 3:40 pm

Post by voodoo
Fri Feb 02, 2007 3:40 pm

i am concidering buying a khr1 does this flapping happen to all of them or is it a problem with just a few ?? as im also new to building and programming robots i think solving this problem would be beyond me maybe i should get a robonova instead??
i am concidering buying a khr1 does this flapping happen to all of them or is it a problem with just a few ?? as im also new to building and programming robots i think solving this problem would be beyond me maybe i should get a robonova instead??
voodoo offline
Robot Builder
Robot Builder
User avatar
Posts: 14
Joined: Wed Jan 31, 2007 1:00 am

Cable

Post by ryann2k1 » Wed Feb 28, 2007 10:24 am

Post by ryann2k1
Wed Feb 28, 2007 10:24 am

noDNA wrote:The servo programmer software can be downloaded for free, but you need the Servo Programmer cable which is special and not the same as your ICS PC cable coming with the KHR-1
regards
noDNA


Hi noDNA,
is the servo programmer cable the same as ICS PC Interface cable for configuring the Gyro2 (KRG-2)?

cheers

ryann2k1
noDNA wrote:The servo programmer software can be downloaded for free, but you need the Servo Programmer cable which is special and not the same as your ICS PC cable coming with the KHR-1
regards
noDNA


Hi noDNA,
is the servo programmer cable the same as ICS PC Interface cable for configuring the Gyro2 (KRG-2)?

cheers

ryann2k1
ryann2k1 offline
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 154
Joined: Thu Nov 16, 2006 1:00 am

ICS Cable for Gyro

Post by noDNA » Wed Feb 28, 2007 1:38 pm

Post by noDNA
Wed Feb 28, 2007 1:38 pm

Yes, ryann2k1, it is.

Here some remarks:
attach ICS Cable to COM port
ICS Cable has two ends, do not use the one with 2 leads, use the one with 3 leads.

WARNING:
In some manuals there is a WRONG Pin Layout of the Gyro.
Connect Gyro:
Look at Gyro board Pins, they are named HP1, HP2, HP3, HP4
Correct cable setup is:
(seen from left to right, Pins towards you)
HP1 : Input from RCB board x
HP2: Output to Servo_x
HP3: Input from RCB board y
HP4: Output to Servo_y

It is a good idea not to mount the gyro to the KHR as long as you set it up and test it because it is easier to move it by hand.

Unconnect HP1 or HP3 (INPUT of Gyro) and plug in the 3wire cable from the ICS cable. Black shows towards you. Connect the Gyro output with the RCB board channel you like. Switch on the KHR to power the Gyro.

Then the software Gyro Manager should connect.

kind regards
noDNA
Yes, ryann2k1, it is.

Here some remarks:
attach ICS Cable to COM port
ICS Cable has two ends, do not use the one with 2 leads, use the one with 3 leads.

WARNING:
In some manuals there is a WRONG Pin Layout of the Gyro.
Connect Gyro:
Look at Gyro board Pins, they are named HP1, HP2, HP3, HP4
Correct cable setup is:
(seen from left to right, Pins towards you)
HP1 : Input from RCB board x
HP2: Output to Servo_x
HP3: Input from RCB board y
HP4: Output to Servo_y

It is a good idea not to mount the gyro to the KHR as long as you set it up and test it because it is easier to move it by hand.

Unconnect HP1 or HP3 (INPUT of Gyro) and plug in the 3wire cable from the ICS cable. Black shows towards you. Connect the Gyro output with the RCB board channel you like. Switch on the KHR to power the Gyro.

Then the software Gyro Manager should connect.

kind regards
noDNA
noDNA offline
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 44
Joined: Wed Jan 25, 2006 1:00 am

PreviousNext
PreviousNext
53 postsPage 2 of 41, 2, 3, 4
53 postsPage 2 of 41, 2, 3, 4
cron