# remote_control **Repository Path**: dalang007/remote_control ## Basic Information - **Project Name**: remote_control - **Description**: 高危场景下的机械臂远程遥控 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-12 - **Last Updated**: 2026-06-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 工业高危场景远程操作机械臂控制系统 - 接收端 ## 项目简介 本项目是基于STM32F103RBT6的工业远程遥操作机械臂执行端,与配套发送端(遥控器)通过NRF24L01 2.4G无线模块通信,接收体感姿态指令并驱动双轴舵机和夹爪执行相应动作。系统具备完善的工业级安全保护机制,通信中断时自动锁死所有执行机构,防止工件掉落和设备失控。 ## 技术栈 - 主控芯片:STM32F103RBT6 - 开发环境:Keil MDK 5 - 编程语言:C语言 - 通信协议:NRF24L01 2.4G无线、软件SPI、软件IIC - 外设驱动:MG995舵机×3、NRF24L01、OLED 0.96寸 - 核心机制:50Hz PWM舵机驱动、500ms通信超时检测、断连锁死安全保护 ## 硬件连接 | 外设 | STM32引脚 | 功能说明 | |------------|-----------|-------------------------| | NRF24L01 | PA5 | 软件SPI时钟(SCK) | | | PA6 | 软件SPI输入(MISO) | | | PA7 | 软件SPI输出(MOSI) | | | PC4 | 片选信号(CSN) | | | PC5 | 使能信号(CE) | | OLED显示 | PB6 | 软件IIC数据(SDA) | | | PB7 | 软件IIC时钟(SCL) | | 俯仰舵机 | PB0 | TIM3_CH3 PWM输出 | | 横滚舵机 | PB1 | TIM3_CH4 PWM输出 | | 夹爪舵机 | PB9 | TIM4_CH4 PWM输出 | | 电源 | 5V/2A | 整机供电,满足舵机堵转需求 | ## 功能特性 1. **双轴姿态跟随**:实时接收发送端的俯仰/横滚角度指令,驱动机械臂同步动作 2. **夹爪精准控制**:支持30°~90°夹爪开合角度控制(适配实际机械结构有效行程) 3. **工业级安全机制**:500ms通信超时检测,断连时保持最后一次舵机姿态和夹爪状态 4. **硬件保护**:所有舵机双重软件限幅,防止超行程堵转烧毁 5. **状态实时显示**:OLED屏显示当前姿态角度、夹爪状态和通信状态 6. **低延迟响应**:控制链路延迟30~40ms,人眼无感知,操控流畅跟手 ## 快速开始 1. 安装Keil MDK 5及STM32F103芯片支持包 2. 克隆本仓库到本地 3. 打开`recv.uvprojx`工程文件 4. 点击编译按钮生成hex文件 5. 使用ST-Link烧录器将hex文件烧录到STM32F103芯片 6. 先给接收端上电,再给发送端上电,OLED显示"连接成功"即可开始控制 ## 模块划分 ### 1. 无线通信接收模块 - 配置NRF24L01为接收模式,与发送端参数完全匹配 - 开启硬件8位CRC校验和自动重发机制 - 轮询接收数据包并解析,提取姿态和夹爪控制指令 - 实现500ms通信超时检测,连续丢25包判定断连 ### 2. 执行机构驱动模块 - 基于TIM3/TIM4通用定时器输出50Hz标准PWM波形 - 完成±30°体感角度到0°~180°机械角度的线性映射 - 完成夹爪30°~90°有效行程的角度映射和限幅 - 开启定时器预装载功能,防止PWM跳变导致舵机抖动 ### 3. 系统安全与状态显示模块 - 断连锁死机制:通信中断时不回中位、不松爪,保持最后状态 - 舵机双重软件限幅:输入限幅+脉宽限幅,杜绝超行程风险 - IIC驱动OLED屏,实时显示系统运行状态 - 通信异常时显示红色断连告警,直观提示故障信息 ## 安全注意事项 1. 上电前请确保机械臂周围无障碍物,避免碰撞 2. 首次测试请空载运行,确认动作方向和范围正常后再夹持工件 3. 通信中断时机械臂会自动锁死,请勿强行掰动舵机 4. 长时间不使用时请断开电源,避免舵机长时间堵转发热 5. 建议使用5V/2A以上的电源供电,防止舵机启动时电压拉低