Dimension Engineering - Kangaroo
The Kangaroo motion control board allows you to interface RoboRealm to the Sabertooth Motor Controller using closed loop commands.
Closed loop commands will utilize the connected wheel encoders to better regulate and control speed commands aswell as provide
basic position information. You connect
to the Kangaroo using a USB to TTL
connection which then attaches directly to the Sabertooth. The Kangaroo provides for Pin connections for encoder A&B signals
along with power. The Kangaroo is fully documented at Dimension Engineering Kangaroo
and is available from retailers like SuperDroids.
Setup of the encoders requires the use of the DEScribe software which can be downloaded from Dimension Engineering. Once tuned, the
board retains its values and can then be used with this module. Please note that you cannot connect both this module and the
DEScribe application to the Kangaroo board at the same time.
1. COM port - Select the appropriate COM port that the USB or Serial cable is attached to.
2. Baud Rate - Select the highest possible baud rate (typically 115200). This ensures minimal delay from motor command to actual motor actuation.
3. Address - If your board is using a different address than the default 128 change that accordingly.
4. Motors (Speed) - You should now be able to move the sliders to see the motors move if everything is working correctly. If
the Motors (Position) is not selected the Speed will indicate how quickly the motors continiously rotate. If the Motors (Position)
is enabled, the Speed selections indicate how quickly the motors will move to the specified position.
5. Variables - Once ready for autonomous control you can select or type in a variable that will contain the speed value
that should be sent to the motor controller. These variables can be populated from other parts of the pipeline or even
externally via the API.
6. Motors (Position) - As the Kangaroo can be used for other devices other than rovers, one can command the controller to
move the motors to a specific position (such as used in an Arm). By enabling the Motors (Position) area you can move the
sliders to indicate to the controller at what position to move the motors and then hold that position.
7. Open Loop - If you are having issues controlling the motors via the Kangaroo, you can also select the Open Loop checkbox which
will issue commands that the Kangaroo will ignore and direct to the connected Sabertooth. This can be helpful to ensure that
a connection to the Sabertooth is working and that everything is wired correctly.
8. Position Variables - The module also populates DE_MOTOR_1_POSITION and DE_MOTOR_2_POSITION variables with the current
position information as reported by the Kangaroo board. These variables are then available to be used in your own calculations
or dead reckoning positioning systems.
To connect the Kangaroo to a PC you will need a level converter circuit to reduce the serial COM/USB power
levels that ranges from +12V to -12V to the 5V TTL levels that the Kangaroo requires. You can construct your own
circuit using a MAX232 chip or use prebuilt solutions such as USB to TTL Cable.
To setup the USB connection you need to connect the black wire (ground or Blk-) from the USB cable to
the 0V connector on the Kangaroo and the green wire (ttl in or TX) to the S1 connector. Note: do NOT connect the
red wire to the 5V connector as that is used to power external circuits as apposed to receiving power
from the USB cable. Also note that the serial cable may use different colors so check the cable documentation before attaching.
For more instructions please see Controlling a Kangaroo with RoboRealm.
Phidgets Motor Controller
For more information
Kangaroo Motion Controller
|DE_Kangaroo Related Forum Posts||Last post||Posts||Views|