Difference between revisions of "Reddy Update"
From IntRoLab
(→CAN command format for RS-232 communication) |
(→CAN command format for RS-232 communication) |
||
Line 89: | Line 89: | ||
== CAN command format for RS-232 communication == | == CAN command format for RS-232 communication == | ||
− | |||
− | |||
{| class="wikitable" width="100%" align="center" border="1" | {| class="wikitable" width="100%" align="center" border="1" | ||
|+ RS-232 Data Format (16 bytes total) | |+ RS-232 Data Format (16 bytes total) | ||
Line 144: | Line 142: | ||
* 0x02 = Second controller | * 0x02 = Second controller | ||
| | | | ||
− | + | * Wll depend on commands | |
− | |||
− | |||
|} | |} | ||
Revision as of 14:57, 28 July 2009
Contents
Schedule
Week 31, July 27 - August 1 |
|
Week 32, August 3 - August 9 |
|
Week 33, August 10 - August 15 |
|
Arm Improvements
To have better control of the arm (and neck) motors, we did the following :
- Change the Motor PCB to support
- Temperature detector. A signal will be sent to the motor controller if the motor temperature is higher than 60 degrees celcius. Analog temperature value is also available.
- Potentiometer feedback.
- Motor power connection.
- Design a new PCB with support to 4 motors
- Communicate with the CAN bus already available on Reddy
- Allow position feedback from the RS-232 interface
- Create a tuning GUI for easier setup of the robot controllers
Motor PCB
Motor Controllers
- A new motor drive that can connect up to 4 motors have been designed.
- A new adjustable bracket for fixing the drive to the side of the robot have been designed.
- We installed two motor controllers (one on each side) to allow the modification of 8 motors. Motors modified are :
- Arm-elbow (x2)
- Arm-shoulder (x2)
- Arm-updown (x2)
- Neck-YES (x1)
- Neck-NO (x1)
Cabling Improvements
- Cables are now better organized
- Added connectors inside the arm to disconnect motors easily for repairs
- Signals are color coded as follow (TODO ADD DOCUMENTATION)
- Red
- Green
- Black
- Yellow
- Purple
- Gray
- White
- Blue
Head Improvements
File:ReddyGravityCompensation.jpg
Motor controllers for head movement (YES-NO)
- Same motor controllers were used for the neck to add overheating protection and better feedback / control
- Internal servo potentiometers were used for position control.
Tuning the motor controller
A GUI was created to facilitate motor tuning.
RS-232 protocol enhancements
- We added a CAN command to the RS-232 robot interface to allow direct communication with the motor controllers. The RS-232 robot interface now acts as a RS-232 to CAN bridge and bidirectional communication is now possible. This will allow feedback from the motor controllers (current, position, speed, etc.)
(RS-232 CAN COMMAND) <------------------------> (MOTOR DRIVE CAN INTERFACE)
CAN command format for RS-232 communication
HEADER | CAN_MSG_PRI_MSB_CMD | CAN_MSG_TYPE | CAN_MSG_BOOT_RTR_LENGTH | CAN_MSG_CMD | CAN_MSG_DEST | CAN_MSG_DATA |
(3 bytes) | (1 byte) | (1 byte) | (1 byte) | (1 byte) | (1 byte) | (8 bytes) |
|
|
|
|
if (MSG_TYPE == REQUEST)
endif if (MSG_TYPE == SENSOR_HIGH_PRIORITY)
endif |
|
|
Future Improvements
- Single 12V power supply could be useful for direct connection to Pioneer robots. A 12V-->8.5V DC-DC (100W) converter is required for this operation. This item can be ordered at Vicor. 8.5V batteries would then be useless.