Foot sensor setup ideas?

Hexapod Robots

Foot sensor setup ideas?

Postby surfdabbler » Tue Apr 27, 2010 8:04 am

I'm building a hexapod, and I'm wondering if anyone has any photos or recommendations for how to setup foot switches. I'm planning to use microswitches (force sensors would be nice, but from what I've seen, they are super expensive, and also reasonably low in accuracy anyway). Microswitches should be cheap and easy, and should allow a reasonable level of terrain adaption in the walk cycle. So, anyone got photos of how you've set yours up?
surfdabbler
 
Posts: 18
Joined: Thu Jun 18, 2009 12:05 pm

Re: Foot sensor setup ideas?

Postby john-harper » Wed Apr 28, 2010 5:47 am

I put a lot of thought into this and in the end decided on a different approach. I plan to use Openservos (HS645MGs with Openservo boards) for the femur and tibia servos, and use load feedback from them. I've done enough experiments to be pretty confident that this will work. It seemed very difficult to me to come up with a foot that would provide enough agility on uneven surfaces, stability, and room to mount any kind of sensor.

John
john-harper
 
Posts: 20
Joined: Tue Feb 23, 2010 8:46 pm

Re: Foot sensor setup ideas?

Postby surfdabbler » Thu Apr 29, 2010 5:28 am

Sounds like a fabulous idea. :) I've thought of this, but at the moment, I'm working with standard servos, and don't want to go ahead yet with the added complexity and cost of building and using smart servos on my first robot.

One thing to be aware of the is servo gear friction - it's probably OK when the servo is moving, and detecting surface collision should be no problem, but when the servo is not moving, my servos have a reasonable amount of force required before they start moving out of position. In position, the servo motors can totally switch off, and pretty much hold position, so if the robot is picked up, or if the floor is moving under one foot, the gear friction might be enough to hold the foot in place, so the servo motor won't detect any change. But if your gear friction is low enough that the servos have to keep driving to stop the bot from sinking, then the motor could certainly be used for force feedback.

I've just found this thread on the V5 Hexapod foot setup...http://www.hexapodrobot.com/forum/viewtopic.php?f=13&t=44. I'm looking for something more compact, as I want to stay with the little pointy foot with a rubber sole. I have an idea, but it requires a nifty little micro-piston arrangement in the ankle to let the foot move up and down slightly and a microswitch to detect this movement. I'll have to test it out sometime on a scrap 'leg' and see if I can get it working smoothly.
surfdabbler
 
Posts: 18
Joined: Thu Jun 18, 2009 12:05 pm

Re: Foot sensor setup ideas?

Postby john-harper » Thu Apr 29, 2010 4:32 pm

I did some experiments with an Openservo'd HS645 and a test rig. There is certainly a significant difference between the load (current) when supporting a weight, i.e. torque, and with no load. That's fine for doing the equivalent of a microswitch to detect ground contact. However I think the Openservo PID algorithm needs some tweaking if you want to be able to make a direct correlation between current and load, e.g. to dynamically measure the weight distribution.

John
john-harper
 
Posts: 20
Joined: Tue Feb 23, 2010 8:46 pm

Re: Foot sensor setup ideas?

Postby surfdabbler » Thu Apr 29, 2010 11:44 pm

You should be able to do a calibration curve of force vs current for a non-moving servo. I guess the values might be different for a moving servo, because you'd have to take the motor speed/acceleration into account, and this is going to be much more difficult to calibrate. But for no movement, once you are past the gear friction, which seems to be true based on what you've already tested, you should be able to calibrate force vs current fairly easily.

How far along are you on your bot build?
surfdabbler
 
Posts: 18
Joined: Thu Jun 18, 2009 12:05 pm

Re: Foot sensor setup ideas?

Postby john-harper » Sat May 01, 2010 2:16 am

I have a working MSH01 with HexEngine. I'm currently working on my own IK etc code, but am on an enforced break because I got pulled into writing a fairly complex thing for my day job and I can't do both at once. Once I get that working via an SSC32, I'll have to decide what to do next, which could be...

-- port the code into the pBrain I have
-- not bother and get a Roboard or similar up and running instead
-- migrate the servos to Openservo
-- something else

John
john-harper
 
Posts: 20
Joined: Tue Feb 23, 2010 8:46 pm


Return to Hexapods

Who is online

Users browsing this forum: No registered users and 1 guest

cron