Sunday, 22 May 2016

arduino - XY table using motorized potentiometers


I'm trying to implement a XY table using 4 units of these motorized potentiometer, controlled by an Arduino. Since I have other uses in mind, I'd like to use as few pins as possible, wich would imply multiplexing both motor control and potentiometer reading.


I assume I could use a 4:1 multiplexer to use the potentiometer in a feedback loop, but how exactly could I multiplex the motors? I am planning to use 4 H-bridges to drive each motor, but even assuming I don't want to control movement speed I would need 8 pins (enable + direction). Can I achieve that with a shift register?


On the other hand, what gain could a XY table possibly have by controlling the speed of the motors (either all of them or individually)? Would I get more precision/resolution/speed?



Answer



For the H bridges, if the motor voltage is low i.e. less than 10V, please consider the implications of some types of H bridge listed in this answer. For the multiplexing of the potentiometers you can use a serial/SPI controlled analogue switch such as the ADG714 - it has 8 normally open switches but is restricted to logic level voltages.


Providing PWM control isn't needed (difficult to multiplex) the ADG714 can probably also help out - use the analogue switches to control enable and direction pins. Note that 2 ADG414s can be cascaded from one serial SPI bus so no extra pins are required.



If you are happy with constant speed I'd stick with it but you could implement a slow/fast speed regime by gating a 50:50 square wave oscillator to the FETs. You could take this further by using the LTC6992 PWM control chip - it needs an analogue input that could be provided from a serial DAC.


No comments:

Post a Comment

arduino - Can I use TI's cc2541 BLE as micro controller to perform operations/ processing instead of ATmega328P AU to save cost?

I am using arduino pro mini (which contains Atmega328p AU ) along with cc2541(HM-10) to process and transfer data over BLE to smartphone. I...