MODULE M7 · 15.0 HOURS
Firmware Development and Control
LEARNING OBJECTIVES
Module objectives
- Understand DYNAMIXEL smart actuator communication and control framework.
- Implement actuator and FSR sensor signal acquisition using OpenCR control board.
- Design real-time robot control state machine and closed-loop feedback loop.
- Program safe power management and torque release sequences.
Firmware Architecture and DYNAMIXEL Control
The robotic hand firmware acquires sensor data and processes actuator commands within a high-speed loop. The OpenCR 1.0 controller is based on a 216MHz ARM Cortex-M7 processor [S13] and processes DYNAMIXEL protocol 2.0 without a separate bridge [S11], minimizing latency. Each actuator supports current, velocity, and position modes, and the robotic hand uses a current-control-based torque grip strategy.
FSR Force Feedback System
The FSR 402 sensor has a resistance characteristic inversely proportional to the force applied [S12]. A voltage divider circuit is configured with a 10kΩ resistor on the 3.3V sensor rail using OpenCR’s 12-bit ADC [S13]. The divided voltage is normalized via ADC value = (V_in * R_fsr) / (R_fsr + R_ref), and this value is linked with the tendon tension of the fingers and used as grip force feedback.
Safe Control Routine
System stop is divided into two stages for safety. In the software stage, actuator torque is released (Torque Off) to immediately remove physical driving force. Before maintenance, you must physically disconnect the 3 independent power adapters and verify that all branches are less than 1V using multimeter DC mode.
WORKED EXAMPLES
Worked examples
- 1. Setting actuator goal position/current: An example of using DYNAMIXEL SDK to set current limit (Goal Current) for XM430 actuator and updating finger joint final position via a PID loop based on sensor values.
- 2. FSR voltage data filtering: Code implementation for applying a Moving Average Filter to remove noise from raw data collected from ADC and normalizing the range with upper (20N) and lower (0.2N) limits [S12].
LAB PROTOCOL
Robotic Hand Integrated Control and Precision Grip Practice
- 1
Verify that the voltage of each independent branch is less than 1V using multimeter DC mode before starting assembly.
- 2
Solder FSR voltage divider circuit to OpenCR's 3.3V sensor rail and connect to ADC port.
- 3
Scan IDs of 11 actuators using DYNAMIXEL SDK and set initial positions.
- 4
Test finger joint drive commands in no-load state and adjust tendon elongation and tension.
- 5
Visualize FSR sensor data via serial monitor and tune grip force response.
- Never use 5V or 12V actuator power as supply for FSR sensor circuit.
- Never approach the operating range of fingers while system is energized; use fixtures.
- Never connect positive (+) terminals of power branch adapters to each other.
- Before maintenance/assembly access, physically disconnect the 3 power adapters and verify that it is less than 1V in all branches by measurement.
Lab deliverables
- Firmware source code including real-time sensor data feedback
- Data sheet for normalization and calibration of voltage divider data
- Actuator feedback loop normal operation logs
ASSIGNMENT
Grip State Machine Design and Implementation
Deliverables
Rubric
- Is the current limit range (0-2.3A) according to sensor values stably controlled?
- Does the physical tension dissipate immediately upon the torque release command?
- Is a safe hardware disconnection procedure explicitly stated in the code?
KNOWLEDGE CHECK
Knowledge check
FIELD CHECK
Completion criteria
- Multimeter verification completed that independent power supply and fuse protection for each branch are configured according to BOM specifications
- Confirmed precision force signal acquisition and filtering of 5 FSR sensors via OpenCR ADC
- Successfully performed the software torque release routine and post-physical power disconnection measurement procedure
- The grasping state machine processes actuator and sensor data as intended, and the final report is submitted
MODULE SOURCES
Module sources
- OpenCR 1.0emanual.robotis.com · technical_documentation
- XM430-W350 e-Manualemanual.robotis.com · datasheet
- FSR Model 402interlinkelectronics.com · datasheet