Mechanical arm six-degree-of-freedom remote controller based on rocker and axial ring
By setting an axial sliding ring structure on a two-dimensional joystick and integrating sensors, processors, and communication solutions, the shortcomings of existing robotic arm remote controllers in Z-axis control are solved, realizing intuitive six-degree-of-freedom operation and improving the intuitiveness and reliability of robotic arm remote controller operation.
Patent Information
- Application Number
- CN202511172404.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-08-21
- Publication Date
- 2025-10-24
AI Technical Summary
Existing robotic arm remote controls are inadequate in terms of intuitive operation and response efficiency. In particular, they cannot achieve intuitive pull and push control of the Z-axis from the same operator component. High-end force feedback devices are expensive and have complex structures. Gloves or spatial manipulation devices are prone to drift and have insufficient reliability. Switching between multiple modes can lead to a steep learning curve and the risk of misoperation.
An axial sliding ring structure is set on the basis of a two-dimensional joystick. Combined with a determined sensor, processor and communication scheme, it realizes intuitive six-degree-of-freedom control of the end effector of the robotic arm in translation on the X, Y and Z axes and rotation around the three axes. The actuator switch button and speed gear dial are integrated. The structure is simple and reliable, ergonomically designed and cost controllable.
It achieves intuitive six-degree-of-freedom control of the robotic arm's end effector, with a simple and reliable structure, good ergonomic design, controllable cost, and real-time response, thus improving the intuitiveness and reliability of operation.
Smart Images

Figure CN120828428A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of mechanical arm remote controller, and particularly relates to a mechanical arm six-degree-of-freedom remote controller based on a rocker and an axial ring. BACKGROUND
[0002] In the current industrial automation and remote operation environment, the mechanical arm six-degree-of-freedom remote control has strict requirements on operation intuitiveness and response efficiency. The existing rocker device usually only supports two-dimensional tilt or three-dimensional space tilt, but often cannot realize intuitive pull-push on the Z axis on the same operator component. High-end force feedback devices have high cost and complex structure; gloves or space control devices are prone to drift and have insufficient reliability; multi-mode switching easily leads to steep learning curve and risk of misoperation. Therefore, a mechanical arm remote controller with a determined structure, high sensing accuracy, intuitive and stable operation and controllable cost is needed, which realizes direct control on the Z direction by increasing the axial pull-push structure on the traditional two-dimensional rocker, and integrates the actuator key and the speed gear switch to realize the six-degree-of-freedom control of the end. SUMMARY
[0003] The purpose of the present application is to provide a mechanical arm remote controller. The embodiment sets an axial sliding ring structure on the basis of a two-dimensional rocker, combines a determined sensor, a processor and a communication scheme, realizes intuitive control on the six degrees of freedom of the X, Y and Z three-axis translation and rotation (pitch, roll and yaw) around the three axes of the end of the mechanical arm, integrates the actuator switch button and the speed gear dial, and has simple and reliable structure, good ergonomic design, controllable manufacturing cost and real-time response. Therefore, the present application provides a mechanical arm six-degree-of-freedom remote controller based on a rocker and an axial ring.
[0004] The mechanical arm six-degree-of-freedom remote controller based on a rocker and an axial ring provided by the present application comprises a remote controller main body and left and right two control units, and an STM32F405 main control MCU, a power management module, a communication module, a vibration feedback module and an LED indication module are arranged in the remote controller main body.
[0005] The left control unit comprises:
[0006] The rocker installed through the spherical hinge structure: the tilt range of the rocker is ±15°, two orthogonal placed Hall sensor modules are connected with the MCU through I 2 C, and are used for detecting the X and Y direction tilt angles.
[0007] The screw sliding ring assembly coaxially arranged with the rocker: the screw is a non-rotating threaded rod with a diameter of 6mm and a pitch of 1mm, the ring is engaged with the screw through a nylon nut, the sliding stroke is ±10mm, and a linear Hall sensor module is connected with the MCU through I 2C is connected with MCU, used to detect the displacement of the ring along the screw direction, the compression spring constant 3N / mm is used for the neutral return of the ring, and the stroke limit is detected by the limiting block ring and the limiting micro switch;
[0008] The linear Hall sensor module signals of the rocker and the ring are sampled by the MCU at 1 kHz, normalized after first-order low-pass filtering and neutral dead zone filtering (±5% full scale), and then output control instructions. The tilt ±15° is mapped to normalized ±1.0, and the displacement ±10mm is mapped to normalized ±1.0. The normalized value is multiplied by the speed dial setting ratio 0.3 / 0.6 / 1.0, and then output control instructions, the time constant of the first-order low-pass filter is 5ms, and the neutral dead zone filtering is ±5% full scale.
[0009] The left side control unit output mapping is the X direction velocity range ±200mm / s, the Y direction velocity range ±200mm / s and the Z direction velocity range ±150mm / s of the end of the mechanical arm;
[0010] The right side control unit is configured with the same rocker and ring structure as the left side, and outputs mapping for the pitch / roll angular velocity range ±30° / s and the yaw angular velocity range ±30° / s of the end of the mechanical arm through the same processing procedure;
[0011] The front end of the remote control body is provided with an emergency stop button, which is detected by GPIO; the MCU immediately sends an emergency stop instruction when detecting that the emergency stop button is pressed, ignores the rocker and ring input, and requires that the normalized value of each sensor is within the ±0.1 corresponding area (neutral dead zone) before recovery;
[0012] Two mechanical micro switches are arranged on the top of the remote control body, and the state is read by GPIO, which is used to send the end gripper open / close instruction; three mechanical dials are arranged on the right side, and the gear position is read by GPIO, which is used to set the mapping ratio; the USB-C interface realizes USB HID communication, and the BLE module realizes BLE 5.0 communication; the communication data packet is fixed at 32 bytes, including CRC check, the sending frequency is USB 1000Hz and BLE 500Hz; the MCU performs heartbeat detection and abnormal processing;
[0013] The power supply is provided by a 18650 lithium ion battery and a TP4056 charge management board, the MCU detects the battery voltage by ADC and drives the LED to indicate the power state; the vibration motor is driven by the MCU through PWM, which is used for vibration feedback in the scenes of reaching the stroke limit, emergency stop, communication exception and low power;
[0014] The MCU firmware implements a power-on self-test and calibration process, calibration is completed through PC tool interaction with USB HID, and calibration parameters are stored in Flash; sensor redundancy detection: cross-verification of double-Hall modules for tilt; comparison of linear Hall and limit switch for displacement; MCU stops control output and issues an indication when abnormal;
[0015] The main control board adopts a four-layer PCB design, I 2 The C bus is configured with a 4.7kΩ pull-up resistor;
[0016] The vibration motor drive circuit adopts SI2302 MOSFET and a 1N5819 diode in series;
[0017] The USB interface is configured with a PESD5V0S1BA TVS tube for ESD protection;
[0018] The battery voltage detection divides the resistance R1 = 100kΩ and R2 = 47kΩ.
[0019] Preferably, the tilt detection Hall sensor module has a resolution of 12 bits, and the I 2 The C interface periodically transmits angle data to the STM32F405 MCU; the linear Hall sensor module measures a range of ±15mm, and the I 2 The C interface periodically transmits displacement data to the STM32F405 MCU.
[0020] Preferably, the lead screw is a 6mm diameter, 1mm pitch stainless steel threaded rod, the ring is engaged through a wear-resistant nylon nut, the sliding stroke is ±10mm; a compression spring with a spring constant of 3N / mm is arranged between the top of the lead screw and the ring assembly, used for neutral return; the travel limit is detected and fed back to the MCU through a mechanical limiting ring and a micro switch.
[0021] Preferably, the MCU selects STM32F405, with a main frequency of 168MHz, a sampling period of 1kHz, and the I 2 The C bus reads Hall tilt sensor and linear Hall sensor data, the GPIO reads buttons, dials, and emergency stop buttons, the UART connects a BLE module, the USB-C realizes USB HID communication, the PWM drives a vibration motor, and the ADC reads battery voltage; the MCU firmware performs low-pass filtering (time constant 5ms), neutral dead zone filtering (±5% full scale), normalization mapping, and gear scaling after collection, the mapping algorithm is linear proportional mapping, and no nonlinear algorithm is used.
[0022] Preferably, the communication module includes USB HID and BLE 5.0, wherein the USB communication frequency is 1000Hz, the BLE frequency is 500Hz, the BLE communication adopts AES-128 encryption, the pairing code is 123456, the MCU performs heartbeat detection, and if no ACK is received for 10 times in succession, it is considered that the communication is abnormal and the control output is stopped; during the communication abnormality, the vibration motor and the LED prompt state; when the USB is inserted, the USB is used preferentially, and when the USB is disconnected, it is automatically switched to BLE; the USB communication is identified as a HID device on the PC side, and no additional driver is needed.
[0023] Preferably, the main body internally contains a vibration motor and an LED indication module, and the vibration scene is fixed as: short vibration of 100ms when reaching the tilt or sliding limit; vibration of 500ms for emergency stop; vibration of 200ms / interval of 200ms x 5 times for communication abnormality; vibration of 300ms for low battery (<20%); LED indication: constant green (normal), slow flashing yellow (low battery or calibration mode), and fast flashing red (fault); the MCU drives the vibration motor and the LED through PWM or GPIO.
[0024] Preferably, the power management module uses TP4056 to manage the charging and discharging of the 18650 lithium battery, the MCU measures the battery voltage through ADC and judges the power according to the voltage value, the power >50% LED constant; 20%-50% LED slow flashing; <20% LED fast flashing and vibration prompt; the battery protection includes over-discharge, over-charge, and over-current protection.
[0025] Preferably, the calibration process interacts with the PC tool through USB HID, and the calibration steps include: calibration of the joystick neutral position, calibration of the joystick positive and negative tilt limit, calibration of the ring neutral position, and calibration of the ring positive and negative sliding limit; the MCU stores the corresponding ADC values as neutral and range upper limit parameters; during self-checking, the real-time ADC is compared with the stored value, and if it exceeds the range of ±2%, the control is stopped and the LED is prompted to flash.
[0026] Preferably, the speed mapping parameters are fixed as: the maximum translation speed of the left end X / Y direction is 200mm / s, and the Z direction is 150mm / s; the maximum rotation speed of the right end pitch / roll / yaw is 30° / s; the mapping algorithm is linear proportional mapping multiplied by three-gear dial proportion (0.3 / 0.6 / 1.0); the neutral dead zone is within the tilt ±1.5° and displacement ±1mm range, which is considered as zero input.
[0027] Preferably, the upper computer adopts the ROS system, generates the ROS message " / joystick_control" through the USB HID analysis data packet, and the fields include linear_velocity (x, y, z), angular_velocity (roll, pitch, yaw) and gripper_command (open / close); the upper computer stops the movement of the robot arm immediately after receiving the emergency stop instruction, and needs to detect that the control input is attributed to neutral before the control is restored; the BLE communication analysis process is the same as the USB.
[0028] The beneficial effects in the application are:
[0029] The application sets the axial sliding ring structure on the basis of the two-dimensional rocker, combines the determined sensor, processor and communication scheme, realizes the six-degree-of-freedom intuitive control of the end of the robot arm in X, Y and Z three-axis translation and rotation (pitch, roll and yaw) around the three axes, integrates the actuator switch button and the speed gear dial, and has the advantages of simple and reliable structure, good ergonomic design, controllable manufacturing cost and real-time response. BRIEF DESCRIPTION OF DRAWINGS
[0030] Figure 1 A structure schematic diagram of a six-degree-of-freedom remote controller of a robot arm based on a rocker and an axial ring is provided for the application;
[0031] Figure 2 A side view structure schematic diagram of a six-degree-of-freedom remote controller of a robot arm based on a rocker and an axial ring is provided for the application;
[0032] Figure 3 A left-hand remote lever ADC occupation circuit schematic diagram of a six-degree-of-freedom remote controller of a robot arm based on a rocker and an axial ring is provided for the application;
[0033] Figure 4 A right-hand remote lever ADC occupation circuit schematic diagram of a six-degree-of-freedom remote controller of a robot arm based on a rocker and an axial ring is provided for the application;
[0034] Figure 5 A left-side up-and-down lifting lever ADC occupation circuit schematic diagram of a six-degree-of-freedom remote controller of a robot arm based on a rocker and an axial ring is provided for the application;
[0035] Figure 6 A right-side up-and-down lifting lever ADC occupation circuit schematic diagram of a six-degree-of-freedom remote controller of a robot arm based on a rocker and an axial ring is provided for the application;
[0036] Figure 7 A Lora module circuit schematic diagram of a six-degree-of-freedom remote controller of a robot arm based on a rocker and an axial ring is provided for the application. DETAILED DESCRIPTION
[0037] The technical solutions in the embodiments of the present application will be clearly and completely described with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only some of the embodiments of the present application, not all the embodiments.
[0038] Referring to Figures 1-7 The structure and elements in the embodiment are designed as follows:
[0039] Overall structure
[0040] 1. The remote control body is composed of an aluminum alloy shell and an ABS plastic panel, and the body size is 200 mm wide x 50 mm high x 120 mm deep; the inside is installed with a main control board, a communication module, a power management module, a vibration feedback driving module and an LED indication module.
[0041] 2. The left control unit is used to control the end translation (X / Y / Z), and the right control unit is used to control the end attitude (pitch / roll / yaw).
[0042] 3. The left and right control units are fixed on the two sides of the body by screws, and no switching scheme is provided, and the embodiment does not provide disassembly and replacement function.
[0043] 4. Two mechanical buttons are arranged at the central position of the top surface of the body, which are respectively used for the "open" command and the "close" command of the end gripper; a speed dial is arranged on the right side of the body, and three dial positions correspond to low speed, medium speed and high speed three preset speed ratios, and the gear position is detected by the mechanical dial switch.
[0044] 5. A single 18650 lithium ion battery and a TP4056 charging management board are installed on the left side of the back of the body, and a USB-C interface is installed on the right side. The body is installed with a built-in vibration motor for vibration feedback prompt; a monochrome LED indicator lamp is installed on the front of the body for indicating the communication state, the power state and the fault warning.
[0045] 6. Circuit design:
[0046] a) The main control board adopts a four-layer PCB design, the top layer is arranged with an MCU and a digital circuit, the bottom layer is arranged with a power module and an analog sensor circuit, and the middle layer is a GND and a power plane.
[0047] b) The Hall sensor module is connected to the main control board through a 2.54 mm pin header, and the interface definition is clear: VCC (3.3V), GND, SCL, SDA.
[0048] c) The vibration motor driving circuit adopts an N-channel MOSFET (model SI2302) controlled by the PWM pin of the MCU, and a 1N5819 diode is connected in series to eliminate the back electromotive force.
[0049] 7. Rocker mechanism (two-dimensional tilt)
[0050] a) Rocker adopts ball hinge structure, tilt range ± 15°. Rocker handle height 30mm, diameter 20mm, outer layer covered with silicone anti-slip sleeve.
[0051] b) Tilt detection uses two orthogonal Hall sensor modules (Model A: 12-bit resolution digital output, angle measurement range ± 20°), each module outputs a digital angle value, which is I 2 C interface to the host MCU. MCU acquires rocker X, Y tilt angle data at a sampling frequency of 1 kHz.
[0052] c) When the rocker is in the neutral position, both Hall sensors output the middle value, corresponding to a tilt angle of 0°. The neutral dead zone is ± 1.5° (corresponding to a Hall sensor output of ± 5%), and the MCU will consider this range as zero input after filtering, avoiding slight jitter.
[0053] d) Circuit design:
[0054] i. Hall sensor module (Model A) supply voltage 3.3V ± 5%, I 2 C bus pull-up resistor 4.7kΩ.
[0055] ii. Sensor layout: two Hall sensor chips (such as MLX90393) are installed orthogonally on the rocker base PCB with a distance of 2mm ± 0.1mm from the permanent magnet.
[0056] 8. Ring sliding mechanism (axial pull-push)
[0057] a) A fixed non-rotating lead screw (threaded rod) is coaxially arranged on the top of the rocker, the lead screw is made of stainless steel with a diameter of 6mm and a pitch of 1mm, and is fixed on the base.
[0058] b) The ring assembly is made of aluminum alloy, with a nut embedded in the screw thread for engagement. The nut is made of wear-resistant nylon. The ring has an outer diameter of 35mm, an inner diameter of 25mm, a height of 10mm, and a surface covered with a silicone anti-slip layer. The ring has a groove for finger gripping and positioning.
[0059] c) The up and down sliding stroke of the ring is fixed at ± 10mm, corresponding to ± 10 turns of the screw thread movement of the lead screw. The ring is symmetrically arranged between the top and bottom spring seats of the lead screw by two compression springs (spring constant 3N / mm), ensuring that the ring has a return force in the neutral position. When pulling or pressing, the user opposes the spring force, which starts to move along the screw thread. After the force is removed, the ring automatically returns to the neutral position.
[0060] d) Ring sliding displacement detection uses a linear Hall sensor module (Model B: measurement range ±15mm, digital output). The sensor is fixed to the base by one end, and detects the position of the small magnet fixed on the nut. The MCU acquires Z-direction displacement data at a sampling frequency of 1 kHz.
[0061] e) Ring sliding stroke limit: Mechanical limit stop rings are set at the top and bottom of the lead screw. When the ring moves to the ±10mm limit, the built-in micro switch is triggered, and the MCU receives the limit signal and truncates the output value in the mapping and triggers the vibration feedback prompt.
[0062] f) Circuit design:
[0063] i. Linear Hall sensor (Model B) is fixed to the lead screw base, and the magnet is installed on the side of the nut with a distance of 1.5mm.
[0064] ii. Limit micro switch (Model D2F-01) normally open contact is connected to MCU GPIO, which is pulled low to GND when triggered.
[0065] 9. Signal processing (MCU and firmware)
[0066] a) The main control MCU selects STM32F405 chip with a main frequency of 168MHz. The MCU reads data from two Hall tilt sensors through I 2 C, reads data from linear Hall displacement sensor through I 2 C or SPI, and reads key and dial gear signals through GPIO.
[0067] b) The MCU firmware collects all sensor data at a frequency of 1 kHz in an interrupt mode or a timer polling mode, and first performs digital filtering: a first-order low-pass filter is applied to the tilt angle and displacement signal with a filter time constant of 5ms; a neutral dead zone ±5% full range filter is applied to the jitter signal; the key is treated with debouncing, and 20ms continuous pressing is required for effective pressing.
[0068] c) The tilt angle is normalized and mapped to the control command range: tilt ±15° corresponds to normalized value ±1.0; displacement ±10mm corresponds to normalized value ±1.0. The MCU internally scales the normalized value according to the dial gear position: low gear multiplied by 0.3, medium gear multiplied by 0.6, and high gear multiplied by 1.0.
[0069] d) Signal mapping:
[0070] i. Left side control unit: X-axis tilt normalized value x Vx_max mapped to end-effector X-direction velocity, Vx_max set to 200 mm / s; Y-axis tilt normalized value x Vy_max mapped to end-effector Y-direction velocity, Vy_max set to 200 mm / s; Ring Z-displacement normalized value x Vz_max mapped to end-effector Z-direction velocity, Vz_max set to 150 mm / s.
[0071] ii. Right side control unit: X-axis tilt normalized value x ω_pitch_max mapped to end-effector pitch angular velocity around horizontal axis, ω_pitch_max set to 30° / s; Y-axis tilt normalized value x ω_roll_max mapped to end-effector roll angular velocity around vertical axis, ω_roll_max set to 30° / s; Ring Z-displacement normalized value x ω_yaw_max mapped to end-effector yaw angular velocity around vertical axis, ω_yaw_max set to 30° / s.
[0072] e) The mapping algorithm uses linear proportional mapping, without using non-linear or S-shaped curves. This embodiment does not provide a non-linear mapping option.
[0073] f) MCU handles emergency stop signal with priority: when detecting the emergency stop button is pressed, immediately send the emergency stop command through the communication interface, and ignore the joystick and ring input until the emergency stop is released; at the same time, drive the vibration motor to vibrate continuously for 500 ms to prompt the operator.
[0074] g) MCU according to the limit micro switch signal, after mapping calculation, if the tilt or slide value exceeds the stroke, directly cut off the mapping value to the normalized value ±1.0 corresponding to the stroke limit, and trigger a one-time short vibration of 100 ms to prompt the operator to reach the stroke limit.
[0075] h) MCU performs self-checking when powered on: detects whether the sensor neutral value is within the preset calibration range, otherwise reports a fault. MCU firmware reads the calibration parameters (tilt neutral ADC value, displacement neutral ADC value, sensor calibration gain / bias, etc.) stored in the on-chip Flash at the first run or each start, if the calibration parameters are missing or abnormal, MCU prompts through LED flashing, need to be recalibrated in the PC end special calibration tool.
[0076] i) MCU supports firmware upgrade: communicate with PC end matching tool through USB-C interface, write new version firmware into on-chip Flash. The firmware contains version number, MCU reads and briefly prompts version information in LED flashing sequence after starting.
[0077] j) Circuit design:
[0078] i. STM32F405 I 2C1 interface (PB6 / PB7) connects the tilt Hall sensor, I 2 C2 interface (PB10 / PB11) connects the linear displacement sensor.
[0079] ii. The key signal is connected to the MCU GPIO after being filtered by the RC filter circuit (R = 10kΩ, C = 0.1μF).
[0080] 10. Communication module
[0081] a) The main communication adopts the USB HID protocol, and sends the control instruction data packet to the upper controller or PC through the USB-C interface. The data packet structure is fixed length 32 bytes, including: start flag (0xAA), left X / Y normalized value (each 2 bytes signed 16 bits), left Z normalized value (2 bytes), right X / Y normalized value (each 2 bytes), right Z normalized value (2 bytes), key state byte (1 byte field), dial gear value (1 byte), checksum (1 byte), reserved byte filled to 32 bytes. The USB communication rate is 1000Hz.
[0082] b) The auxiliary communication adopts BLE 5.0, and the module selects Nordic nRF52832, which is connected to the UART interface of the MCU. When BLE is connected, the BLE channel sends the same data packet format, the rate is 500Hz, and it is used for control in a wireless environment. The MCU preferentially uses USB, and automatically enables BLE when USB is not connected. BLE communication is encrypted by AES-128, and the fixed pairing code 123456 is input during pairing. The USB communication is identified as an HID device on the user's PC through the driver, without additional driver software.
[0083] c) The MCU realizes heartbeat detection in communication: the receiving end needs to return an ACK byte after each transmission of control instructions; if no ACK is received for 10 times in a row, the MCU determines that the communication is abnormal, immediately stops sending instructions, and drives the LED to flash quickly to prompt the communication failure, and the vibration motor to interrupt the operation. After the communication is restored, the MCU re-establishes the connection and continues to transmit.
[0084] d) Circuit design:
[0085] i. The USB-C interface 6 pin definition: VBUS, D-, D+, CC1, CC2, GND, D+ / D- differential line impedance control 90Ω±10%.
[0086] ii. The BLE module is connected to the MCU through UART3 (PC10 / PC11), and the UART baud rate is 115200bps.
[0087] 11. Ergonomic design
[0088] a) The rocker handle and the ring surface are covered with a silicone anti-slip layer to prevent the fingers from slipping during tilting or sliding.
[0089] b) The height from the top of the rocker to the surface of the main body is kept at 40 mm, allowing the operator's palm to naturally fit the main body, and the index finger and middle finger to easily reach the ring; the side of the main body is designed with rounded corners and soft pads to fit the operator's palm.
[0090] c) The weight of the main body is controlled at 450 g (including the battery), allowing the fatigue level to be within an acceptable range when holding the device for a long time. The vibration motor is installed at the center of the main body, providing uniform vibration. The LED indicator light is installed at a natural visible position in the front view. The keys use mechanical microswitches with a stroke of 1.5 mm and a trigger force of 50 gf.
[0091] 12. Power management
[0092] a) The power supply is provided by 1 x 18650 rechargeable lithium-ion battery with a rated voltage of 3.7 V and a capacity of 2500 mAh. The power management board TP4056 implements charge management; the battery voltage is measured by ADC, and the voltage value is used to judge the battery percentage. The MCU updates the battery status every 5 seconds and flashes the LED light to indicate: > 50% constant; 20% ~ 50% slow flash; < 20% fast flash. The battery protection circuit integrates over-discharge, over-charge, and over-current protection. In USB power supply mode, the device can still work through USB power supply when the battery is removed or depleted.
[0093] b) Circuit design:
[0094] i. Typical application design of TP4056 charging circuit: PROG pin connected with 1.2kΩ resistor (charging current 1A), BAT pin connected with 100μF electrolytic capacitor in parallel.
[0095] ii. Battery voltage detection circuit: dividing resistors R1 = 100kΩ / R2 = 47kΩ, ADC reference voltage 3.0V.
[0096] 13. Safety design
[0097] a) Mechanical limit: the tilt of the rocker is mechanically limited to ±15°, achieved by limit blocks in the mechanism; the ring sliding is mechanically limited to ±10 mm, achieved by the top / bottom limit rings of the lead screw.
[0098] b) Electronic limit: the output range of the tilt angle sensor and the linear Hall sensor is mapped to match the physical travel; when the detection value reaches the travel boundary, the MCU truncates the mapping and provides feedback through vibration.
[0099] c) Redundancy detection: Inclination detection uses double Hall sensor modules, MCU reads the angle values of the two modules and compares the error, if it exceeds 2°, it is determined that the sensor is abnormal and the control output is stopped. Displacement detection uses a single linear Hall module; MCU compares displacement with limit switch signals, if not matched, it is determined to be abnormal and output is stopped.
[0100] d) Emergency stop: A red emergency stop button is set at the front end of the main body. After mechanical pressing, an open circuit signal is generated to the MCU, the MCU immediately sends an emergency stop command and ignores all operation inputs unless the emergency stop button is reset. The emergency stop state is prompted by the rapid flashing of the red LED and the intermittent vibration of the motor.
[0101] e) Communication security: USB communication does not require additional encryption at the HID protocol level; BLE communication uses AES-128 encryption, and the pairing code is fixed at 123456. MCU has built-in CRC verification, which calculates 8-bit CRC for all outgoing data packets and verifies CRC when receiving ACK.
[0102] f) Electrical design meets IEC 61000-4-2 electrostatic immunity requirements; PCB wiring and component layout are designed for EMC, meeting the anti-interference requirements of industrial environments.
[0103] g) Circuit design:
[0104] i. ESD protection: USB interface is connected in parallel with TVS diode (model PESD5V0S1BA), and electrostatic immunity meets ±15kV air discharge.
[0105] ii. Redundancy detection circuit: Double Hall sensor output is connected to comparator (model LM393), which triggers MCU interrupt when error exceeds limit.
[0106] 14. Calibration and maintenance
[0107] a) During self-check at startup, MCU reads stored calibration values: inclination neutral ADC value, inclination maximum ADC value, displacement neutral ADC value, displacement maximum ADC value. If the ADC value of a sensor exceeds the calibration interval, the MCU will flash the LED 10 times to indicate "calibration required" and stop normal work until the PC-side calibration tool updates the calibration parameters.
[0108] b) PC-side calibration tool sends commands to MCU via USB HID: instructs user to place joystick at neutral, inclination positive limit, inclination negative limit, ring neutral, ring positive limit, ring negative limit, MCU records corresponding ADC values and stores them. After calibration, the LED is always on to indicate successful calibration.
[0109] c) Regular maintenance: grease every 1000 hours for the ring and the screw rod surface; check the Hall sensor module and MCU interface plug every half year; replace the key when the life exceeds 1 million times; replace the battery after 500 times of charging and discharging. The maintenance information is specified in the user manual.
[0110] 15. Vibration feedback and LED indication
[0111] a) Vibration feedback: MCU triggers the vibration motor in the following cases: short vibration for 100 ms when reaching the tilt or slide stroke limit; vibration for 500 ms when emergency stop; intermittent vibration (vibration for 200 ms + interval for 200 ms x 5 times) when communication is abnormal; vibration for 300 ms and LED flashing when the power is low (<20%). The vibration motor is driven by the MCU through PWM, and the vibration intensity is fixed and not adjusted.
[0112] b) LED indication: single-color LED, always green to represent normal connection and operation; fast flashing red to represent communication failure or sensor abnormality; slow flashing yellow to represent calibration mode or low power reminder; other states are distinguished by flashing frequency, and specific states are listed in the user manual.
[0113] c) Circuit:
[0114] a) LED driving circuit: current limiting resistor 330Ω, constant brightness and no adjustable.
[0115] 16. Software interface and PC interaction
[0116] a) When the PC uses the ROS system, after parsing the USB HID data packet, the ROS message type “ / joystick_control” is generated, including the fields linear_velocity (x, y, z), angular_velocity (roll, pitch, yaw), and gripper_command (open / close). The PC subscribes to this topic to drive the robot control node; when using BLE, the PC or embedded controller also parses the BLE data packet to generate the same ROS message format.
[0117] b) The communication protocol document specifies the data packet format, CRC calculation method, ACK response format, calibration command, and firmware upgrade protocol.
[0118] c) The PC software provides a real-time visualization interface: displays the current tilt angle value, displacement value, speed mapping value, and key state; the interface has a fixed refresh frequency of 10 Hz; the interface is developed using Qt and is not described in detail in this patent specification, but the interface specification is provided in the appendix.
[0119] Example demonstration
[0120] Example 1: The operator holds one manipulation unit part with each hand (overall integrated case design), the left hand pushes the mechanical arm end to move in X / Y direction when the joystick is tilted, and pulls or presses down the ring to push in Z direction; the right hand adjusts the pitch / roll of the end when the joystick is tilted, and adjusts the yaw when the ring is pulled or pressed down; the "on" button is pressed to send the jaw opening instruction, and the "off" button is pressed to send the jaw closing instruction; the dial selects the medium speed gear. At this time, if the left joystick X is tilted by 30° (but the actual mechanical structure is limited to ± 15°, so X tilt 15° represents 1.0 normalization), the MCU outputs 200 mm / s X direction speed after mapping; if the ring is slid up by 10 mm (1.0 normalization), the MCU outputs 150 mm / s upward speed after mapping; the right ring is slid down by 5 mm (0.5 normalization), and the MCU outputs -15° / s yaw angular velocity after mapping.
[0121] Example 2: When the USB connection is disconnected, the MCU automatically enables BLE communication, and continues to send the same data packet to the control terminal after the BLE connection is successful; if the BLE connection is timed out, the MCU stops sending and vibrates to prompt; after the USB is reconnected, it automatically switches back to USB communication.
[0122] Example 3: After the host computer receives the emergency stop instruction, the mechanical arm controller immediately stops all movements, brakes the end and sends an alarm signal; after the operator releases the emergency stop button, the MCU waits for the left joystick, right joystick and ring to be in the neutral state (detecting that all sensor outputs are within the ±1.5° and ±1mm dead zone range) before resuming normal control output.
[0123] Example 4: Each time the MCU is powered on, it automatically calibrates, and if it finds that the sensor neutral deviation exceeds ±2% of the full scale, the MCU prompts that it needs to be recalibrated and prohibits motion control until the calibration is completed.
[0124] Example 5: Vibration feedback works in the scenarios of limit, low power, communication failure and emergency stop, and there is no other vibration scene. The vibration intensity is fixed, and the period is consistent with the above settings.
[0125] The above is only the preferred specific embodiment of the present application, but the protection scope of the present application is not limited thereto, any skilled person in the art can make equivalent replacement or change according to the technical scheme and the inventive concept of the present application within the technical range disclosed by the present application, which should be covered within the protection scope of the present application.
Claims
1. A six degrees of freedom remote controller for a robotic arm based on a rocker and an axial ring, characterized in that, The remote controller comprises a main body and two control units, and an STM32F405 main control MCU, a power management module, a communication module, a vibration feedback module and an LED indication module are arranged in the main body. The left control unit comprises: Rocker mounted by ball hinge structure: Rocker tilt range ± 15°, two orthogonal placed Hall sensor modules through I 2 C is connected with MCU, and is used for detecting X and Y direction tilt angles; The silk rod sliding finger ring assembly coaxial with the rocker: the silk rod is a non-rotating thread rod with a diameter of 6 mm and a pitch of 1 mm, the finger ring is engaged with the silk rod through a nylon nut, the sliding stroke is ±10 mm, the linear Hall sensor module is connected with the MCU through I 2 C is connected with the MCU, used for detecting the displacement of the finger ring along the direction of the silk rod, the compression spring constant 3 N / mm is used for the neutral return of the finger ring, and the stroke limit is detected through the limiting stop ring and the limiting micro switch. The linear Hall sensor module signals of the rocker and the ring are sampled by the MCU at 1 kHz, normalized after first-order low-pass filtering and neutral dead zone filtering (±5% full scale), and then output control instructions; the tilt ±15° is mapped to the normalized ±1.0, and the displacement ±10 mm is mapped to the normalized ±1.0; the normalized value is multiplied by the speed gear dial setting ratio 0.3 / 0.6 / 1.0, and then the output control instructions are output; the time constant of the first-order low-pass filter is 5 ms, and the neutral dead zone filtering is ±5% full scale. The left control unit outputs are mapped to the mechanical arm end X direction velocity range ±200 mm / s, Y direction velocity range ±200 mm / s and Z direction velocity range ±150 mm / s. The right control unit is configured with the same rocker and ring structure as the left side, and outputs are mapped to the mechanical arm end pitch / roll angular velocity range ±30° / s and yaw angular velocity range ±30° / s through the same processing procedure. An emergency stop button is arranged at the front end of the remote controller main body and is detected by GPIO; the MCU immediately sends an emergency stop instruction when detecting that the emergency stop button is pressed, ignores the rocker and ring inputs, and requires that the normalized values of each sensor are within the ±0.1 corresponding area (neutral dead zone) before recovery. Two mechanical micro buttons are arranged on the top of the remote controller main body, and the states are read by GPIO, which are used to send end gripper open / close instructions; three mechanical dials are arranged on the right side, and the gears are read by GPIO, which are used to set the mapping ratio; the USB-C interface realizes USB HID communication, and the BLE module realizes BLE 5.0 communication; the communication data packet is fixed at 32 bytes, including CRC check, and the sending frequency is USB 1000 Hz and BLE 500 Hz; the MCU performs heartbeat detection and abnormality processing; The power supply is provided by a 18650 lithium ion battery and a TP4056 charging management board, the MCU detects the battery voltage by ADC and drives the LED to indicate the power state; the vibration motor is driven by the MCU through PWM, which is used for vibration feedback in the scenarios of reaching the stroke limit, emergency stop, communication exception and low power; The MCU firmware realizes self-checking and calibration process at startup, and the calibration is completed by interacting with the USB HID through the PC terminal tool, and the calibration parameters are stored in the Flash; sensor redundancy detection: tilt cross verification with double Hall modules; displacement comparison with linear Hall and limit switch; the MCU stops control output and issues an indication when abnormal; The main control board adopts four-layer PCB design, I 2 C bus configuration 4.7kΩ pull-up resistor; The vibration motor drive circuit adopts SI2302 MOSFET and 1N5819 diode in series; The USB interface is configured with PESD5V0S1BA TVS tube for ESD protection; The battery voltage detection divides the resistance R1=100kΩ / R2=47kΩ.
2. The six-DOF mechanical arm remote controller based on rocker and axial ring according to claim 1, characterized in that, The tilt detection hall sensor module resolution 12 bits, through I 2 C interface to STM32F405 MCU periodic transmission angle data; the linear hall sensor module measurement range ± 15mm, through I 2 C interface to STM32F405 MCU periodic transmission displacement data.
3. The six-DOF mechanical arm remote controller based on rocker and axial ring according to claim 1, characterized in that, The screw rod is a 6mm diameter, 1mm pitch stainless steel threaded rod, the ring is engaged by a wear-resistant nylon nut, the sliding stroke is ±10mm; a compression spring with a spring constant of 3 N / mm is arranged between the top of the screw rod and the ring assembly for neutral return; the stroke limit is detected by a mechanical limiting ring and a micro switch and fed back to the MCU.
4. The six-DOF mechanical arm remote controller based on rocker and axial ring according to claim 1, characterized in that, The MCU is selected as STM32F405, the main frequency is 168 MHz, a 1 kHz sampling period is adopted, I 2 The C bus reads the Hall tilt sensor and linear Hall sensor data, reads the keys, dials and emergency stop buttons through the GPIO, connects the BLE module through the UART, realizes the USB HID communication through the USB-C, drives the vibration motor through the PWM, and reads the battery voltage through the ADC; the MCU firmware performs low-pass filtering (time constant 5 ms), neutral dead zone filtering (±5% full scale), normalization mapping and gear scaling after collection, the mapping algorithm is linear proportional mapping, and no nonlinear algorithm is adopted.
5. The six-DOF mechanical arm remote controller based on rocker and axial ring according to claim 1, characterized in that, The communication module includes USB HID and BLE 5.0, wherein the USB communication frequency is 1000 Hz, the BLE frequency is 500 Hz, the BLE communication adopts AES-128 encryption, the pairing code is 123456, the MCU performs heartbeat detection, and if no ACK is received for 10 times in a row, it is considered that the communication is abnormal and the control output is stopped; during the communication abnormality, the vibration motor and the LED prompt state; when the USB is inserted, the USB is used preferentially, and the USB is automatically switched to BLE when disconnected; the USB communication is identified as an HID device on the PC side, without the need for additional drivers.
6. The six-DOF mechanical arm remote controller based on rocker and axial ring according to claim 1, characterized in that, The main body contains a vibration motor and an LED indication module inside, and the vibration scene is fixed as: short vibration of 100 ms when reaching the tilt or sliding limit; 500 ms of emergency stop vibration; 200 ms of vibration / 200 ms of interval*5 times during communication abnormality; 300 ms of vibration when the power is low (<20%); the LED indication is always green (normal), slow flashing yellow (low power or calibration mode), and fast flashing red (fault); the MCU drives the vibration motor and the LED through PWM or GPIO.
7. The six-DOF mechanical arm remote controller based on rocker and axial ring according to claim 1, characterized in that, The power management module uses TP4056 to manage the charging and discharging of a 18650 lithium battery, and the MCU measures the battery voltage through ADC and judges the power according to the voltage value; when the power is >50%, the LED is always on; when the power is between 20% and 50%, the LED is slow flashing; when the power is <20%, the LED is fast flashing and the vibration is prompted; the battery protection includes over-discharge, over-charge, and over-current protection.
8. The six-DOF mechanical arm remote controller based on rocker and axial ring according to claim 1, characterized in that, The calibration process interacts with the PC tool through USB HID, and the calibration steps include: rocker neutral position calibration, rocker positive and negative tilt limit calibration, ring neutral position calibration, and ring positive and negative sliding limit calibration; the MCU stores the corresponding ADC values as neutral and range upper limit parameters; during self-checking, the real-time ADC is compared with the stored value, and if it exceeds the ±2% range, the control is stopped and the LED is prompted.
9. The six-DOF mechanical arm remote controller based on rocker and axial ring according to claim 1, characterized in that, The speed mapping parameters are fixed as: the maximum translation speed of the left end is 200 mm / s in X / Y direction and 150 mm / s in Z direction; the maximum rotation speed of the right end is 30° / s for pitch / roll / yaw; the mapping algorithm is linear proportional mapping multiplied by three dial wheel proportions (0.3 / 0.6 / 1.0); the neutral dead zone is within ±1.5° tilt and ±1mm displacement, which is considered as zero input.
10. The six-DOF mechanical arm remote controller based on rocker and axial ring according to claim 1, characterized in that, The host computer adopts a ROS system, and generates a ROS message " / joystick_control" through USB HID analysis of a data packet, and the fields include linear_velocity (x, y, z), angular_velocity (roll, pitch, yaw), and gripper_command (open / close). After receiving an emergency stop instruction, the host computer immediately stops the movement of the robot arm, and needs to detect that the control input is returned to neutral before the control is resumed. The BLE communication analysis process is the same as that of the USB.
Citation Information
Patent Citations
Control method of teleoperation of six-freedom-degree mechanical arm
CN103624790A
Seven-degree-of-freedom force feedback handle of rescuing robot and operating method
CN108340388A
Ring type three-dimensional control handle
CN111530072A
Multi-dimensional control handle
CN111569409A
Six-dimensional operating handle for mechanical arm control
CN112338939A
Cited By
Rail sports car for debugging humanoid robot
CN122034044A
A track vehicle for humanoid robot debugging
CN122034044B