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

Load Bearing Feedback

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

Load Bearing Feedback

Post by DirtyRoboto » Wed May 02, 2007 8:54 pm

Post by DirtyRoboto
Wed May 02, 2007 8:54 pm

I was messing around trying to make Takeshi walk up some steps. He would only perform A1 if the steps and Takeshi were set up right.

My first inspiration was to do a small shuffle and run a gyro check. The small shuffle was ment to make T go forward and not tip him if he encounters an object. The next issue was to take readings from the ankles vs gyro and compute via an complex RBasic logic gate.

So then I had T shuffle into imovable objects and tweaked the code to get him to jump (goto) once he had found this situation.

Next I worked on the climbing routines and had him climb the steps with a preset move routine.

I then migrated the cimbing moves into the smart shuffle routine so that T would (GOTO) the climbing routine when he found the conditions to be true. In that he had found the start point of the steps task.

I then broke the cimbing routine into feedback calls. Every time T placed his foot onto the next step, he performs load checks on the leg taking the load, and when the difference exceeds the nominated value T performs the setp-up routine. The step-up routine completes the remaining climbing loop before T goes back into shuffle mode.

Marcus.
I was messing around trying to make Takeshi walk up some steps. He would only perform A1 if the steps and Takeshi were set up right.

My first inspiration was to do a small shuffle and run a gyro check. The small shuffle was ment to make T go forward and not tip him if he encounters an object. The next issue was to take readings from the ankles vs gyro and compute via an complex RBasic logic gate.

So then I had T shuffle into imovable objects and tweaked the code to get him to jump (goto) once he had found this situation.

Next I worked on the climbing routines and had him climb the steps with a preset move routine.

I then migrated the cimbing moves into the smart shuffle routine so that T would (GOTO) the climbing routine when he found the conditions to be true. In that he had found the start point of the steps task.

I then broke the cimbing routine into feedback calls. Every time T placed his foot onto the next step, he performs load checks on the leg taking the load, and when the difference exceeds the nominated value T performs the setp-up routine. The step-up routine completes the remaining climbing loop before T goes back into shuffle mode.

Marcus.
In servo's we trust!
DirtyRoboto
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 412
Joined: Tue Sep 19, 2006 1:00 am
Location: London

Post by Humanoido » Thu May 03, 2007 7:36 am

Post by Humanoido
Thu May 03, 2007 7:36 am

That sounds a little complicated, yet amazing. Few of us know how to read the load gain on one servo. Do you think you can put that in one short program and post it, just to show how to read the load gain on one servo?

So is Takeshi walking up stairs now? We would be interested in seeing a video when you have it smoothed over. It sounds like you've taken the first steps (pun intended) towards dynamically balancing Takeshi.

How did you decide on the size of the stair steps - are they some regulation for the games?

humanoido
That sounds a little complicated, yet amazing. Few of us know how to read the load gain on one servo. Do you think you can put that in one short program and post it, just to show how to read the load gain on one servo?

So is Takeshi walking up stairs now? We would be interested in seeing a video when you have it smoothed over. It sounds like you've taken the first steps (pun intended) towards dynamically balancing Takeshi.

How did you decide on the size of the stair steps - are they some regulation for the games?

humanoido
Humanoido
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 574
Joined: Tue Dec 05, 2006 1:00 am
Location: Deep in the Heart of Asia

Post by i-Bot » Thu May 03, 2007 11:15 am

Post by i-Bot
Thu May 03, 2007 11:15 am

The only way I know to read the load in RoboBasic is to read the servo feedback position and compare to the desired position.

Note the servo has a small dead band, and some error of read position, so the two values will not always be the same even under no load.

The characteristic of these servos is to react to the difference between desired and feedback position. There is no reaction within the dead band and then a proportional reaction for small difference until full power. Therefore the difference is proportional to the load, since there must always be some reaction to maintain sufficient rigidity in a significantly loaded joint.

Also since reading the position also turns the servo off until the next move command, then the effect of load on position is even more pronounced

Even under serial HMI control the value of current read from the servo is only the applied PWM value, not the actual motor current. However again this is proportional when not in motion.

DirtyRoboto already posted some good ideas for leading the robot by the arm to demonstrate this.
The only way I know to read the load in RoboBasic is to read the servo feedback position and compare to the desired position.

Note the servo has a small dead band, and some error of read position, so the two values will not always be the same even under no load.

The characteristic of these servos is to react to the difference between desired and feedback position. There is no reaction within the dead band and then a proportional reaction for small difference until full power. Therefore the difference is proportional to the load, since there must always be some reaction to maintain sufficient rigidity in a significantly loaded joint.

Also since reading the position also turns the servo off until the next move command, then the effect of load on position is even more pronounced

Even under serial HMI control the value of current read from the servo is only the applied PWM value, not the actual motor current. However again this is proportional when not in motion.

DirtyRoboto already posted some good ideas for leading the robot by the arm to demonstrate this.
i-Bot
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 1142
Joined: Wed May 17, 2006 1:00 am

Post by DirtyRoboto » Thu May 03, 2007 8:40 pm

Post by DirtyRoboto
Thu May 03, 2007 8:40 pm

ROFL! If you actually saw Takeshi do the stairs you would ROFL too!!!

Due the amount of checks and calculations he is doing it takes him a great deal of time too get too the steps and climb them. About 2 minutes to cover 1/2 metre.
ROFL! If you actually saw Takeshi do the stairs you would ROFL too!!!

Due the amount of checks and calculations he is doing it takes him a great deal of time too get too the steps and climb them. About 2 minutes to cover 1/2 metre.
In servo's we trust!
DirtyRoboto
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 412
Joined: Tue Sep 19, 2006 1:00 am
Location: London

feedback

Post by engineer » Fri May 04, 2007 4:10 am

Post by engineer
Fri May 04, 2007 4:10 am

hey guys, I thought you might want these http://robogames.net/rules/r1-stairs.php, this will take you to competition rules and dimensions for the robogames, thnx. :wink: Dirty I think T. will time out a quarter of the way up at that rate you'll need a new program to speed T. up




Back to all events listing

Note: All rules subject to change without notice.

Name of Event: Robo-One Stair Climbing
Number of Robots per Event: One

Length of Event: 2 minutes

Robot Weight Range: Open

Robot Dimensions: 20cm to 120cm tall

Arena Specifications: 120 cm x 30 cm x 30 cm

Robot Control Specifications: Autonomous or Remote Control.




Start time begins as soon as the robot crosses the starting point.
If at any time the operator touches the robot, the robot must start over. The fastest time by a competitor from starting to crossing the finish line will win.

Size of the stairway is as shown below. Start and finish lines are 10 cm beyond the first and last stair.
<1200mm>overall course length >
<400mm>platform width
<100>step width in mm<100>
<100> <100>
<100> <100>
<100> <100>
<30>step height in mm I've tried to make this look like a stair with 4 risers up and 4 down it wont stack right but if you follow the link and go to rules you'll see what it looks like
hey guys, I thought you might want these http://robogames.net/rules/r1-stairs.php, this will take you to competition rules and dimensions for the robogames, thnx. :wink: Dirty I think T. will time out a quarter of the way up at that rate you'll need a new program to speed T. up




Back to all events listing

Note: All rules subject to change without notice.

Name of Event: Robo-One Stair Climbing
Number of Robots per Event: One

Length of Event: 2 minutes

Robot Weight Range: Open

Robot Dimensions: 20cm to 120cm tall

Arena Specifications: 120 cm x 30 cm x 30 cm

Robot Control Specifications: Autonomous or Remote Control.




Start time begins as soon as the robot crosses the starting point.
If at any time the operator touches the robot, the robot must start over. The fastest time by a competitor from starting to crossing the finish line will win.

Size of the stairway is as shown below. Start and finish lines are 10 cm beyond the first and last stair.
<1200mm>overall course length >
<400mm>platform width
<100>step width in mm<100>
<100> <100>
<100> <100>
<100> <100>
<30>step height in mm I've tried to make this look like a stair with 4 risers up and 4 down it wont stack right but if you follow the link and go to rules you'll see what it looks like
Last edited by engineer on Sat May 05, 2007 9:31 pm, edited 1 time in total.
engineer
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 129
Joined: Wed Aug 09, 2006 1:00 am
Location: northern california

Post by DirtyRoboto » Fri May 04, 2007 5:42 am

Post by DirtyRoboto
Fri May 04, 2007 5:42 am

You miss the point, I am not in competition. I am just tyring too understand a few things for when these things get alot faster.
You miss the point, I am not in competition. I am just tyring too understand a few things for when these things get alot faster.
In servo's we trust!
DirtyRoboto
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 412
Joined: Tue Sep 19, 2006 1:00 am
Location: London

Post by Humanoido » Fri May 04, 2007 7:49 am

Post by Humanoido
Fri May 04, 2007 7:49 am

Engineer: Size of the stairway is as shown below.
Start and finish lines are 10 cm beyond the first and last stair.
<1200mm>
<400mm>platform width
<100><100><100><100>step width in mm
<30>step height in mm

Very good, but what's that in carpenter's lingo? heh heh... :P

A platform 400mm wide.
So you've got 10 cm leading to the first step.
And apparently 4 steps not counting the platform.
And a platform at the top with 10 cm to the finish line.
The step rise is 30mm.
What is the depth or run of the step???
And exactly what is 1200mm???

Is there a picture of this?

humanoido
Engineer: Size of the stairway is as shown below.
Start and finish lines are 10 cm beyond the first and last stair.
<1200mm>
<400mm>platform width
<100><100><100><100>step width in mm
<30>step height in mm

Very good, but what's that in carpenter's lingo? heh heh... :P

A platform 400mm wide.
So you've got 10 cm leading to the first step.
And apparently 4 steps not counting the platform.
And a platform at the top with 10 cm to the finish line.
The step rise is 30mm.
What is the depth or run of the step???
And exactly what is 1200mm???

Is there a picture of this?

humanoido
Humanoido
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 574
Joined: Tue Dec 05, 2006 1:00 am
Location: Deep in the Heart of Asia

Post by Humanoido » Fri May 04, 2007 8:04 am

Post by Humanoido
Fri May 04, 2007 8:04 am

Dirty! TWO MINUTES?!!! Maybe dispense with the calculations, position at the starting point, and do some motion capture based on the exact stair size. OR, can you speed up the routine in any way? I think you have a fantastic idea here, and very workable, and many of us want you to develop it and post the results.

I know, I know.... easier said than done... :lol:

But I must say, that motion capture is really a slick thing!!!

humanoido
Dirty! TWO MINUTES?!!! Maybe dispense with the calculations, position at the starting point, and do some motion capture based on the exact stair size. OR, can you speed up the routine in any way? I think you have a fantastic idea here, and very workable, and many of us want you to develop it and post the results.

I know, I know.... easier said than done... :lol:

But I must say, that motion capture is really a slick thing!!!

humanoido
Humanoido
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 574
Joined: Tue Dec 05, 2006 1:00 am
Location: Deep in the Heart of Asia

Post by DirtyRoboto » Fri May 04, 2007 6:01 pm

Post by DirtyRoboto
Fri May 04, 2007 6:01 pm

Bruv. With all due respect I have made Takeshi walk up and down steps using motion capture many times.
My current thinking was too hand over some of the responsibility too Takeshi. I wanted him too think about what he was doing.

I am not content with just motion capture, otherwise I would just buy a puppet. I want my Takeshi too think no matter how small the thought. I need T to make some decisions for himself.

I have actually had T hop on one leg as an extension of my stair routines. Ok! it is not a true hop as the support foot does not leave the ground, but it looks impressive.

Marcus.
Bruv. With all due respect I have made Takeshi walk up and down steps using motion capture many times.
My current thinking was too hand over some of the responsibility too Takeshi. I wanted him too think about what he was doing.

I am not content with just motion capture, otherwise I would just buy a puppet. I want my Takeshi too think no matter how small the thought. I need T to make some decisions for himself.

I have actually had T hop on one leg as an extension of my stair routines. Ok! it is not a true hop as the support foot does not leave the ground, but it looks impressive.

Marcus.
In servo's we trust!
DirtyRoboto
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 412
Joined: Tue Sep 19, 2006 1:00 am
Location: London

Post by Humanoido » Sat May 05, 2007 3:35 pm

Post by Humanoido
Sat May 05, 2007 3:35 pm

Great accomplishments, indeed! One thing that might speed up things is a coprocessor to help make some of the decisions. Is it possible to do stair walking using just sensors and reading the results? To know toe to stair step distance, lift the foot until the top step is detected, determine step width, and perform the motions. There's a carpenter out here working on a remodel job. Maybe I can get some wood scraps and build some little steps. :-)

humanoido
Great accomplishments, indeed! One thing that might speed up things is a coprocessor to help make some of the decisions. Is it possible to do stair walking using just sensors and reading the results? To know toe to stair step distance, lift the foot until the top step is detected, determine step width, and perform the motions. There's a carpenter out here working on a remodel job. Maybe I can get some wood scraps and build some little steps. :-)

humanoido
Humanoido
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 574
Joined: Tue Dec 05, 2006 1:00 am
Location: Deep in the Heart of Asia

Post by DirtyRoboto » Mon May 14, 2007 7:40 pm

Post by DirtyRoboto
Mon May 14, 2007 7:40 pm

The problem is with access to the open coding used with RN. I would need to run servo checks in an interrupt. similar to how the gyro feedback works.

This brings into my mind a servo that can report torque and adjust power accordingly or take external adjustment based on the torque output.
The problem is with access to the open coding used with RN. I would need to run servo checks in an interrupt. similar to how the gyro feedback works.

This brings into my mind a servo that can report torque and adjust power accordingly or take external adjustment based on the torque output.
In servo's we trust!
DirtyRoboto
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 412
Joined: Tue Sep 19, 2006 1:00 am
Location: London


11 postsPage 1 of 1
11 postsPage 1 of 1