top of page

Forum Comments

Nybble and Raspberry Pi?
In General Discussions
Gleefully stealing the best ideas
In Software
Gleefully stealing the best ideas
In Software
Alex Young
Mar 24, 2021
@Gero I had a minor brainwave in the shower this morning. I think we can get away without needing to calculate the torque at each motor. There's a function I wrote early on `setLeg(index, length, shoulderAngle)` which does the trig to figure out where to put the foot so that the given leg is at a certain radius and angle from the shoulder joint. It's some fairly trivial trig, but it's made much simpler if you define the length of the fully extended leg to be 1; all the motors care about is the angle, after all. That got me thinking: how about defining everything in terms of Nybble-body-units? They all map linearly to whatever scale system you want, but the advantage is that if you define Nybble's mass as 1.0Nybbles, then the torque in the motors is whatever is necessary to produce a given upwards acceleration against gravity. You can measure that, and as long as it's a reasonably sane function of the change in requested leg length, you don't need to know what's going on behind the scenes. Treat the whole leg as a black box actuator (or rather, all four and divide down, I guess), and it devolves to being a calibration problem using the MPU6050 rather than trying to get a hold of the actual rotational frequency. Rather than giving you the torque at each joint, that would give you a net force at each shoulder, which I *think* might be easier to deal with. It'll fall down if you need to care about the inertia of the leg independently of the body, but I don't think we need to? Does that make sense, or am I barking up a tree that's not a tree?
0
Improve gyro delay and implement ultrasonic sensor with Protothreading
In Software

Alex Young

More actions
bottom of page