Controlling elbow servo from Pi Zero

21 views
Skip to first unread message

Stewart Hutton

unread,
May 10, 2024, 12:04:47 PMMay 10
to InMoov
First time poster, super slow builder :)

Looking for help as I have a hole in my understanding that I have not been able to fill myself!

I'm building my 'bot very slowly from the fingers up :) and now adding the bicep to a (working) forearm and hand assembly.

I'm using a Pi Zero and a 16 channel PCA9685-based servo control board.

Having extracted and extended the servo potentiometer, everything still works - in that on the bench the servo turns and with the adafruit servokit library I can change it's direction. And I can adjust the pot by hand to get the servo to stop (though this is very sensitive - maybe with the weight of the forearm hanging off it there will be more tolerance).
I can imagine how by matching that up with a specific bicep:forearm orientation that will stop the servo turning. But that only takes care of one end of the travel, let's say arm closed - how do I get it to stop at the other end of its travel, when fully open? Without reading the pot directly, I can't see how to stop the servo when arm is fully extended.

Is this a Pi issue? I've read the Arduino has analog pins not on the Pi, are they being used in the default instructions?
Should I connect the pot to the Pi via an ADC so I can read it and use that to set both limits?

I should add that I haven't looked past controlling all this via my own Python code, so haven't looked at MRL etc.

Thanks in advance :)

Stewart
Reply all
Reply to author
Forward
0 new messages