Our application uses a differential drive mobile robot base with 2 24volt wheelchair motors that must:
usually be controlled by R/C,
sometimes by an analog joystick mounted on it,
sometimes by an onboard microcontroller(Arduino),
sometimes via a computer or network.
Ideally, control can be quickly initiated through any mode without requiring the operator to use a different mode to make the switch.
We need help choosing an appropriate motor controller and figuring out how to do the mode switching.
We are currently using a Dimension Engineering Sabertooth 2x25, but it has BAD issues with our AM R/C receiver.
Our replacement choice was going to be the RoboClaw 2x30 https://www.pololu.com/catalog/product/1497 because it is so similar. For either of these, I think we can accomplish the mode switching on the fly by connecting the dip switch pads to microcontroller pins.
Then we found the Pololu Simple High-Power Motor Controller 24v23 https://www.pololu.com/catalog/product/1383
which is nearly ideal because it can pass the R/C and Analog inputs to the serial and USB ports even when R/C and Analog are not the currently selected modes. However, it appears from documentation that it is only possible to change input modes via USB. Is this true? Or is there a workaround that will let us use serial or something other than USB to select the input mode. The computer will not always be present or booted up to facilitate the switch.
Can anyone confirm that these motor controllers will function correctly with an older AM R/C receiver? Any idea why the Sabertooth doesn’t work with AM?
Reason mode switching is required:
The first time the robot is used at a new location, it will be driven via R/C from a fixed ‘garage crate’, to the fixed location where it will be used. The movements will be recorded, and subsequently copied to autonomously move the bot into position via Arduino. Fine adjustments to the position will be performed manually at the robot with an onboard joystick. The joystick will also serve to move the heavy bot back to the garage in case of a R/C, computer or Arduino failure.
On occasion, no one will be on site, but the robot will still need to be moved into position and operated, or its status will need to be monitored. In that case, an onboard laptop will be booted via LAN. The laptop must remain powered down as much as possible due to the lack of AC and limited battery power available at these remote locations.