by encrust » Sun Apr 15, 2012 8:17 am
by encrust
Sun Apr 15, 2012 8:17 am
Thanks for the prod guys - it has spurred me to get round to videoing the robot. I've posted a fairly poor quality one:
http://www.youtube.com/watch?v=fdam3BhB-dk&feature=youtu.be
but it gives some idea of the pretty fast walking speed and proportional style R/C control it provides. The autonomous mode (where it moves, stings etc. automatically) isn't done yet, although the pincers will squeeze automatically if you put a finger in.
I'll post some stuff the IK engine on the blog
http://pointless-robot.blogspot.co.uk/
when I get a chance. In short though I am:
- Using a workstation to work out all the possible X,Y,Z points reachable by a leg by blind searching through all servo positions.
- Building a low resolution 3D array which provides the servo positions needed for a given leg X,Y,Z position. This is stored as a program code table in the CM-510 Atmega.
- Ccomputing some other tables on a workstation like a way of picking up the leg which avoids unnecessary acceleration.
- At run time on the CM-510 computing where I'd like the legs to be and then using the tables with interpolation to get the servo positions.
I have done this all from scratch at it may well not be a sensible way of doing things!
Thanks for the prod guys - it has spurred me to get round to videoing the robot. I've posted a fairly poor quality one:
http://www.youtube.com/watch?v=fdam3BhB-dk&feature=youtu.be
but it gives some idea of the pretty fast walking speed and proportional style R/C control it provides. The autonomous mode (where it moves, stings etc. automatically) isn't done yet, although the pincers will squeeze automatically if you put a finger in.
I'll post some stuff the IK engine on the blog
http://pointless-robot.blogspot.co.uk/
when I get a chance. In short though I am:
- Using a workstation to work out all the possible X,Y,Z points reachable by a leg by blind searching through all servo positions.
- Building a low resolution 3D array which provides the servo positions needed for a given leg X,Y,Z position. This is stored as a program code table in the CM-510 Atmega.
- Ccomputing some other tables on a workstation like a way of picking up the leg which avoids unnecessary acceleration.
- At run time on the CM-510 computing where I'd like the legs to be and then using the tables with interpolation to get the servo positions.
I have done this all from scratch at it may well not be a sensible way of doing things!