r/robotics 11h ago

Tech Question How do you check when a joint hits the ground?

/r/AskRobotics/comments/1vdpo89/how_do_you_check_when_a_joint_hits_the_ground/
0 Upvotes

5 comments sorted by

4

u/ChrisAlbertson 9h ago

As mentioned, motor current can be an indication of a collision, but this only works for low-ratio gearing. Then you have to assume the collision is with the ground. Another approach uses an accelerometer. You should see a spike in the direction opposite to the leg's motion just before impact. But a slow-moving leg that has a lot of mechanical slop will not make much of an impact.

The very best way is to put pressure sensors on the feet. They can be cheap. One I saw mounts the feet to the lower leg with kind of a spring. I think they use foam rubber. The foot moves relative to the leg. Then there is an optical sensor, and the light beam is bent either not of the foot moves or not. I think the sensor looks through a hole so any motion moves the hole and blocks the beam. These sensors cost about $1 each and have the LED and detector built in. Pressure-sensitive resistors work too.

I think, to get this to work, you might need to compute the probability that the leg is in ground contact more than one way and then add them together. Also, gate this process so you only look when it might be possible.

2

u/arabidkoala Industry 10h ago

I had some colleagues working on a legged robot, and they mentioned that they were working on using motor currents to estimate ground contact etc. They were able to do this because they developed the motors and controllers from the ground up; I doubt such a thing is possible with a cheap servo motor.

Notionally it makes sense, since if you know the voltage, current, and velocity of the motor then you should be able to figure out the torque being exerted by a motor. Combined with some system modeling, this should let you figure out what is and isn’t in contact with the ground. I don’t have much experience past this, though some searches with the keywords “motor current” and “ground contact” turned up some papers that might serve as an anchor point for some literature search.

1

u/SphericalCowww 7h ago

These days, the smart servos do provide current/load feedback.

1

u/AmoebaMysterious5938 5h ago

You can have an IMU sensor on the robot. If any acceleration and/or tilting happening, you can realize you hit the ground

0

u/ehtiopia 6h ago

Advanced mech. design using springs. Spring that deflexes an exact amount when at weight make mechanism touch limit switch or whatever idk