Sure!
Sounds good. We can swap ideas. Iām on the two lists below, if youāre interested.
What all are you planning in the way of sensors?
Alan KM6VV
Sure!
Sounds good. We can swap ideas. Iām on the two lists below, if youāre interested.
What all are you planning in the way of sensors?
Alan KM6VV
PIR, Ping, current sensors(shunts) on servos for collision detection, ldrās, sound (will listen for hand claps). I plan on using at least 3 PIR sensors so it can harass the cats. Two would be for wide view, one would have narrow view and be attached with Ping sensor on micro servo. So it will have sonic and IR radar for better tracking. I plan on making a head that will house the āradarā.
Where are you getting your IK formulas? I did find some arctangent routines for the PICs, but it could only calculate up to 45 degrees.
Thatās quite a load of sensors! Iām planning on adding an additional controller board for sensors. But IR and Ultrasonic are about it for now.
Too bad they donāt make a 360 servo. Although there is a pair of gears on a plate that gear up for 360 degrees. I should probably buy a gear cutter, and make a large ring gear to rotate a platform of sensors.
Per one of my previous posts, see the code generated by the PowerPod program. It implements the IK calcs needed!
acos() should work OK:
/* C_TmpCos = (a^2 + b^2 - c^2) / 2ab */
/* *** Tibia is "c" side, Femur is "a" side, "b" is previous Cside side of triangle */
C_TmpCos = (((double)FEMUR_LENGTH * (double)FEMUR_LENGTH) + CCside - ((double)TIBIA_LENGTH * (double)TIBIA_LENGTH) );
C_TmpAngle += RadToDeg(acos(C_TmpCos / (2.0 * (double)FEMUR_LENGTH * Cside)));
HipV_Angle = (signed int)(C_TmpAngle * (256.0 / 360.0)); /* (Atom BASIC Scale) */
Alan KM6VV
I found the picture in that sticky, so I am assuming that is what the code is referring to. I am looking that over now. I will have to find some sin, cos, etc code for the PIC. When you wrote āacosā do you mean arc cosine?
A 360 degree sensor base would be nice, but since I want the head to simulate actual head tracking it wonāt be needed. I can always get a rear PIR sensor, and the Ping sensor does not need to look anywhere but forward.
Jim mentioned in one of the other threads that he plans for the SSC-32 to support *H3-Rs. Iām hoping that this 18DOF hexapod support will extend out to the Atmega8-based SSC-32s.
Iām also hoping that the release of this new support will beat me to the punch on my understanding of the IK calculationsā¦
Yes, thatās the drawing. My code snippet relates to that pix. You ARE writing in C, arenāt you? From your recent posts, I thought you were. as to the trig functions, theyāre already in all but the most tiny C compilers! What you get from Microchip or Hitec should be fine.
Yes, acos() IS the C function for arc cosine.
Thatās true, with multiple sensors, a full 360 rotate probably isnāt needed. But I still like the idea.
Alan KM6VV
That would be very helpful. I did not realize how big a project this was going to turn into. I have been trying to locate the full IK code everyone is talking about. But maybe I should just make my own basic (no stance adjusting like roll, pitch, etcā¦) form of movement, since I only need it for autonomous, simple movement. And I am poor at trying to decipher someone elseās code.
OK, I didnāt think microchip would provide math functions in their compiler, but I have not looked yet either. I donāt want the 30 day trial to run out prematurely lol.
EDIT: just checked, it does have those libraries in the C18 compiler.
Hi Tom,
SSC-32 to support H3-R? I hadnāt read that. The new SSC32 doesnāt support 18DOF, as far as I know. I think Iād asked about that possibility at one time.
The older ATmega8 chip is full, and over tasked from what I understand. The new chip has some āheadroomā, and greater possibilities. Just think if a full 18 servo IK engine could be ādroppedā into the SSC32!
New support would be great, A white paper written on the subject would certainly be of interest me. When is it coming?
Alan KM6VV
If you need more rotation out of a servo, you might try a sail winch servo like below.
Thatās an interesting servo! It could be āstrungā with dial cord to a larger pulley to rotate a sensor deck.
Thanks for the URL!
Alan KM6VV
I have one of them, here. They are no good for robotics. It just vibrates when close to the commanded position. I canāt see how they would be good for anything. There must be tension in the rigging to prevent the hunting.
If one needed 360 deg. rotation, one could use sprockets like below to get the 1:2 servo rotation increase. One could also do somewhat the same using plastic jar lids and string (but would look extreamly DIY).
Nice little link chain and sprockets, but the big sprocket would have to be on the servo, and the small one connected to the servo table. Or Iāve missed something.
Nah, jar lids are too tacky! But thanks for the additional URL.
I did dig up a drive train that I removed from a CD ROM drive. I have two, and the one with the worm screw is slower, and would work. I think they use it to open/close the drive door, and the disk tray. Itās just a small DC motor, and a cam operated switch. Some sort of encoder would be needed. More thought needed.
Alan KM6VV
You could use a stepper motor to only go so far. At least that is my impression on how one works.
Yes,
A stepper motor would probably work fine. And Iām quite familiar with them. I looked around this afternoon for some very small steppers that I have. Probably one of the better solutions.
Of course, itāll need an index sensor to orientate it to āforwardā on the 'bot.
Alan KM6VV
Iāve never used stepper motors, but I think they may not work well with loads unless geared down, and can be some what power hungry unless provisions are made for reduced holding voltages. Just donāt see them used much in bots.
That is why I would look into using a geared assembly like what is in a printer or cd tray assembly. It can be geared down quite a bit.
Depends on the load. I run steppers on my CNCād Sherline mill and lathe. Normally, (real) servos are geared down, but not steppers.
This application wouldnāt need much torque. One can reduce the holding torque when idle.
Stepper motor weight/torque ratio is poor when used for robots. My first robot (a LONG time ago) used a pair of 85 oz/in NEMA #32 steppers. I threw the 'bot together with some very heavy steel pulleys I had on hand. A Small 8085 uP board ran some L/R driver boards. A pair of 12V GelCell batteries powered it.
But steppers are very easy to run! Great for positioning! Iāve always liked them, and collect them from the surplus outlets when I can find them.
Oh! I just remembered where a possible candidate for the sensor deck rotate might be! Airpax M82102, 5v 20 ohms, 7.5 deg/step. Has an attached opto-switch for position.
Alan KM6VV
I took apart a printer just the other day, got 3 or 4 opto sensors, some good connectors, and lots of smt parts
Yeah, Iāve taken quite a few printers apart! Nice steppers!
I worked right next (next parking lot) to Weird Stuff surplus, I found a lot of stuff!
Alan KM6VV