Share this

ARM Core Processor-Based Robotic Arm Control System

2026-04-06 08:00:41 · · #1
Introduction In recent years, with the development of MEMS and related technologies, the field of micro-robots has attracted increasing attention. However, due to the small size of the parts, the assembly of micro-robot components requires high precision, which cannot be met by general assembly methods. This paper introduces a control method for a robot arm control system capable of assembling micro-parts. 1 System Structure Considering the use of multiple robot arms, the entire robot control system consists of a host computer and multiple slave computers. The slave computers are the arm controllers, each controlling the extension and retraction of one robotic arm. The host computer is the control terminal, generating position data for each arm through different component assembly methods and transmitting it to each slave computer via data lines. The slave computers then control the arm to reach the target position and perform the target operation. The structural block diagram of the entire system is shown in Figure 1. 1.1 Mechanical Structure The mechanical structure of the arm controller consists of a DC geared motor, an arm, a screw, a reduction gear, and an angle sensor. The robot arm is connected to the mechanical screw, and the screw is coupled to the DC geared motor through the reduction gear. Each arm controller controls the rotation of the motor to control the position of the arm. Meanwhile, the arm controller has a manually adjustable handle connected to the screw, allowing for manual adjustment of the arm position as needed. 1.2 Circuit Structure The arm controller is controlled by a PHLIPS LPC2138 series microprocessor using an ARM core. The circuit structure mainly consists of a main control module, a measurement feedback module, and a communication module. The main control module controls the motor state, while the measurement feedback module obtains the screw's movement distance and position, stopping the motor after reaching the specified position. The communication module handles data exchange with the host computer. 2 Motor Control Motor control is jointly performed by the main control module and the measurement feedback module. 2.1 Main Control Module The main controller uses a PHLIPS LPC2138 microprocessor, which has 64 pins, 31 bidirectional I/O ports, and two 8-channel 10-port A/D converters, enabling voltage measurement, meeting the design requirements. The motor used is a RA-20GM-SD3 DC geared motor with a reduction ratio of 1/1000. After reduction, the motor speed is 4.5 ± 0.9 rpm. After further coupling with the 1/2 reduction gear set, the screw speed is 2.25 rpm. With a screw tooth pitch of 1mm, the arm movement is 3.75 × 10⁻² mm/s. Since the motor needs to rotate in both directions in this design, the TA8409 bridge driver chip was selected. It has two input ports and two output ports. The microprocessor controls different motor states, including forward rotation, reverse rotation, braking deceleration, and stop, by controlling the input level combinations. Its output voltage matches the motor's operating voltage, allowing direct motor drive without the need for additional amplifier circuitry. 2.2 Measurement Feedback Module The angle sensor used is Midori's CP-2FC, with a mechanical angle range of 360 degrees. The sensor converts the angle change into a voltage value and feeds it back to the microprocessor's A/D converter via a voltage measurement circuit. The screw's movement distance can be calculated from the voltage change, thus determining the arm's position and using this as a standard to send commands to the motor driver. The voltage measurement circuit includes a voltage follower circuit composed of an operational amplifier, which can both isolate the circuit and perform voltage following. 3 Communication Module 3.1 RS-422 Communication Standard The RS-422 standard uses differential transmission, also known as balanced transmission, or "Electrical Characteristics of Balanced Voltage Digital Interface Circuit." Its receiver uses high input impedance, and the transmitter driver has a stronger driving capability than RS232, allowing multiple receiving nodes to be connected on the same transmission line, up to a maximum of 10 nodes. That is, one master device and the rest are slave devices. Slaves and transmitters cannot communicate with each other, so RS-422 supports point-to-many bidirectional communication. The maximum transmission distance of RS-422 is 4000 feet (approximately 1219m), and the maximum transmission rate is 10 Mbit/s. 3.2 Data Exchange Function Implementation The communication module of this system adopts the RS-422 standard, with a line length of approximately 200m, thus ensuring communication reliability. The differential line driver uses the AM26LS31 chip, and the differential receiver uses the AM26LS32 chip. The serial output and input ports of the microprocessor are connected to the driver input and receiver output, respectively, and are configured using a differential open-circuit automatic fault-tolerant terminal block. This ensures that the receiver input has at least 200mV voltage signal when the transmitter output is in a high-impedance state, preventing unknown output states, improving reliability, and completing data exchange with the host computer. Furthermore, considering the application of multiple robot arms, a DIP switch is provided in the arm controller to set a number. Data exchange with the host computer must include this number, which is used to determine the specific location of the target controller during communication. 4 Software Design After the controller is powered on, it first reads the controller number from the DIP switch and then enters a wait mode. The program is configured with a UART interrupt, which occurs when data is transmitted from the host computer. At this time, the controller number in the data packet is checked. If the transmission number matches the small controller number, the data is read in, and the motor's running direction and arm movement distance are calculated. While the motor is running, the sensor feedback voltage is continuously read and calculated to determine if the arm is close to the target position and whether a braking operation is needed. After the motor stops, i.e., the arm reaches the target position, the controller replies to the host computer that the work is complete (always including the controller number during communication) and enters a waiting state again. In this system, two algorithms can be used to determine the timing of sending the motor deceleration and stop command. The first is to send the deceleration and stop command exactly when the arm reaches the target position. This algorithm is simpler to execute, but inevitably, there is a possibility that the screw position may deviate from the target position when the motor stops. However, the arm's movement speed is very low during operation, which is sufficient to ensure control accuracy. The second algorithm, which predicts the target position as the arm approaches it, sends a braking and deceleration command before the arm reaches the target position, minimizing the difference between the screw's stopping position and the target position. While more complex, this algorithm offers higher accuracy than the first. In this design, we use the second algorithm to ensure higher control precision. The arm controller program obtains the arm position by continuously reading sensor feedback values. Although the predictive algorithm improves accuracy, the sensors themselves have inherent errors, inevitably leading to some deviation in the arm's stopping position. However, due to the high-precision hardware design, this error will not affect most of the robotic arm's operation. 5. Conclusion This chapter designed a robotic arm control system based on an ARM core microprocessor. The hardware design of the controller is described in detail, and a system structure diagram is provided. The design of the control software is also introduced. Due to the use of a high-reduction-ratio gearbox to adjust the motor speed and the improved algorithm, the positioning accuracy of this arm controller is relatively high. Adding a controllable gripper on this basis allows for simple and reliable assembly.
Read next

CATDOLL 146CM Sasha TPE

Height: 146cm A-cup Weight: 26kg Shoulder Width: 32cm Bust/Waist/Hip: 64/54/74cm Oral Depth: 3-5cm Vaginal Depth: 3-15c...

Articles 2026-02-22