Design and Implementation of a Bionic Robot Control System Based on High-Performance IO Modules

In recent years, the field of robotics has increasingly shifted from structured environments to unstructured ones, such as aerospace exploration, military reconnaissance, underwater pipelines, medical procedures, and disaster relief. This transition has spurred interest in bionics, where principles from living organisms are applied to enhance robot mobility and control. Bionic robots, which mimic biological locomotion, offer superior adaptability and flexibility in complex terrains. Among these, multi-legged bionic robots, like hexapods, are particularly promising due to their stability and versatility. However, controlling such bionic robots requires precise and simultaneous management of multiple actuators, which poses significant challenges in system design. This article presents a comprehensive approach to designing and implementing a control system for a bionic robot using high-performance IO modules. The system leverages RS-485 serial communication and the Modbus protocol to achieve robust, scalable, and reliable control. Through detailed theoretical analysis, hardware and software design, and experimental validation, we demonstrate a system that can be widely adapted for various bionic robot applications, ensuring high performance and stability.

The core of our work focuses on a spider-like hexapod bionic robot, chosen for its representative multi-legged locomotion. This bionic robot employs alternating movements of odd and even legs to simulate crawling, enabling forward and backward motion. To control these movements, we utilize high-performance IO modules that provide multiple input and output channels, allowing synchronized control of leg actuators. The system is designed with modularity in mind, facilitating easy transplantation to other bionic robot types, such as snake-like or fish-like robots. In this article, we delve into the methodologies and theories underpinning the system, including the bionic robot’s locomotion principles, RS-485 communication, and the Modbus protocol. We then detail the hardware selection and implementation, software development with CRC checks and motion control logic, and finally, experimental tests to verify functionality and stability. By incorporating tables and mathematical formulas, we summarize key aspects, ensuring clarity and depth. Throughout, the term “bionic robot” is emphasized to highlight its centrality in this research.

Bionic robots are inspired by biological systems, aiming to replicate the efficiency and adaptability of animals in movement. For our bionic robot, we consider a hexapod design where legs are grouped into odd and even sets. The locomotion cycle involves four phases: lift, forward swing, lower, and backward swing for forward motion, and corresponding phases for reverse motion. Each leg is controlled by two low-speed motors—one for vertical movement (lift/lower) and one for horizontal movement (forward/backward swing). This mimics the crawling motion of insects, providing stability on uneven surfaces. The control logic ensures that when odd legs move, even legs support the body, and vice versa, preventing tipping and enabling smooth progression. This bionic robot’s design is summarized in Table 1, which outlines the motion phases and actuator roles.

Table 1: Motion Phases for the Hexapod Bionic Robot
Phase Odd Legs Action Even Legs Action Motor Control
Lift Vertical motor ON Supporting Motor A active
Forward Swing Horizontal motor ON Supporting Motor B active
Lower Vertical motor OFF Supporting Motor A inactive
Backward Swing Horizontal motor OFF Supporting Motor B inactive

To achieve precise control, we employ RS-485 serial communication, chosen for its robustness in industrial environments. Unlike RS-232, RS-485 supports multi-point communication, allowing multiple devices on a single bus. Its differential signaling enhances noise immunity, and it can transmit data over distances up to 3000 meters at speeds up to 10 Mbps. This makes it ideal for controlling a bionic robot where actuators may be distributed across the body. The key characteristics of RS-485 are summarized in Table 2, comparing it with other serial standards.

Table 2: Comparison of Serial Communication Standards
Standard Max Devices Max Distance Noise Immunity Data Rate
RS-232 1 15 m Low 20 kbps
RS-485 128 3000 m High 10 Mbps

The Modbus protocol is used for data exchange between the上位机 (host computer) and the IO modules. Modbus is a master-slave protocol that defines a message structure for controllers to communicate via serial lines. We adopt the RTU (Remote Terminal Unit) mode for its efficiency in binary data transmission, suitable for machine-level programming. In RTU mode, each message is framed with a silent interval and includes a device address, function code, data field, and CRC (Cyclic Redundancy Check) for error detection. The message format is as follows, where each field is represented in hexadecimal:

$$ \text{[Device Address][Function Code][Starting Address High][Starting Address Low][Number of Registers High][Number of Registers Low][CRC Low][CRC High]} $$

For example, to read digital inputs from a bionic robot’s IO module, the function code 01 is used. The starting address specifies which register to begin reading, and the number of registers indicates how many to read. The CRC ensures data integrity by computing a checksum over the message. The CRC calculation involves a 16-bit register initialized to all ones (0xFFFF). For each byte in the message, the register is XORed with the byte, and then shifted right eight times, with a polynomial factor applied if the least significant bit is 1. The polynomial used in Modbus RTU is 0xA001. This process can be expressed mathematically:

Let $R$ be the 16-bit CRC register, initialized to $R = 0xFFFF$. For each byte $B$ in the message, perform:

$$ R = R \oplus B $$
$$ \text{For } i = 1 \text{ to } 8: $$
$$ \quad \text{If } LSB(R) = 1, \text{ then } R = (R \gg 1) \oplus 0xA001 $$
$$ \quad \text{Else } R = R \gg 1 $$

After processing all bytes, the final $R$ is the CRC value, appended to the message in low-byte, high-byte order. This ensures reliable communication for the bionic robot control system, minimizing errors in actuator commands.

For hardware, we select STC series high-performance IO modules from TENGCON Technology. These modules offer up to 16 input and output channels each, suitable for controlling multiple legs of the bionic robot. The STC-101 handles input signals, while STC-102 manages output signals to actuators. They operate on a 24V driving voltage and support Modbus protocol over RS-485 interfaces. Each module has a unique address, allowing up to 256 modules on a single bus in theory. The specifications are summarized in Table 3.

Table 3: Specifications of High-Performance IO Modules for Bionic Robot Control
Module Channels Voltage Protocol Interface
STC-101 16 Input 24V DC Modbus RTU RS-485
STC-102 16 Output 24V DC Modbus RTU RS-485

The hardware connection involves linking the host computer’s RS-485 port to the IO modules via a twisted-pair cable. The modules are daisy-chained, with termination resistors at both ends to prevent signal reflections. Each leg actuator of the bionic robot is connected to an output channel, while limit switches are connected to input channels. The limit switches, implemented as metal contacts, detect leg positions and provide feedback to stop motors at desired points, ensuring precise movement. For instance, when a leg reaches the “lifted” position, a contact closes, triggering an input signal that halts the vertical motor. This design enhances the bionic robot’s autonomy and safety.

Software implementation centers on generating Modbus commands and managing motion control. The host computer runs a custom application that sends instructions to the IO modules based on user input (e.g., forward, backward, pause). The command formation follows the Modbus RTU format, with CRC校验 computed in real-time. Upon receiving a command, the IO module validates the CRC and executes the action, such as turning on outputs to activate motors. A response message is sent back to confirm execution. This bidirectional communication ensures synchronized control of the bionic robot’s legs.

Motion control logic is implemented via a state machine. Each leg of the bionic robot has states corresponding to the phases in Table 1. The system alternates between odd and even leg groups, with timing controlled by the host software. The state transitions can be modeled using equations. Let $S_o$ represent the state of odd legs and $S_e$ for even legs, where $S = 0$ for support, $1$ for lift, $2$ for forward swing, $3$ for lower, and $4$ for backward swing. The transition function for forward motion is:

$$ S_o(t+1) = f(S_o(t), S_e(t)) $$
$$ S_e(t+1) = g(S_o(t), S_e(t)) $$

For simplicity, we define a cycle where odd legs progress through states 1, 2, 3, 4 while even legs remain in state 0, and then switch. This ensures continuous movement of the bionic robot. The control algorithm polls limit switch inputs to determine when to transition states, providing closed-loop feedback. For example, when $S_o = 1$ (lift), the system monitors the limit switch for the lifted position; once triggered, it moves to $S_o = 2$ (forward swing).

To validate the system, we conducted extensive experiments with the hexapod bionic robot on various terrains, including flat surfaces and obstacles. The host software features a graphical interface displaying leg statuses in real-time: green for moving odd legs, red for moving even legs, and black for paused states. Tests involved commanding forward, backward, and pause actions, with data logged on response times and error rates. The results, summarized in Table 4, show high accuracy and reliability.

Table 4: Experimental Results for Bionic Robot Control System
Test Scenario Commands Executed Success Rate Average Response Time
Forward Motion 1000 99.2% 50 ms
Backward Motion 1000 99.1% 52 ms
Pause/Resume 500 99.5% 30 ms

The system demonstrated stability over prolonged operation, with no failures in IO module communication or actuator control. The use of CRC checks and limit switches minimized errors, ensuring the bionic robot moved as intended. We also tested scalability by connecting multiple IO modules to simulate control for more complex bionic robots, such as those with additional legs or sensors. All tests confirmed the system’s adaptability, with success rates consistently above 99%. This highlights the robustness of our design for diverse bionic robot applications.

In conclusion, this article has detailed the design and implementation of a control system for bionic robots using high-performance IO modules. By integrating RS-485 communication and the Modbus protocol, we achieved a scalable and reliable solution for managing multi-legged locomotion. The system incorporates theoretical foundations, hardware selection, software development with CRC algorithms, and motion control logic, all validated through rigorous experiments. The results affirm that our approach can effectively control bionic robots, with high accuracy and stability, making it suitable for real-world scenarios like exploration or disaster response. Future work could extend this system to other bionic robot types, such as snake-like crawlers or flying insects, and incorporate advanced features like wireless communication or AI-based path planning. Ultimately, this research contributes to the growing field of bionics, paving the way for more adaptive and intelligent bionic robots that can thrive in unstructured environments.

Scroll to Top