
#第九届立创电赛#简易版蓝牙遥控器接收机
简介
蓝牙遥控器接收机,可通过蓝牙实现近距离的数据传输,最多支持十通道。
简介:蓝牙遥控器接收机,可通过蓝牙实现近距离的数据传输,最多支持十通道。开源协议
:CC BY-NC-SA 3.0
(未经作者授权,禁止转载)描述
项目开发进度
2024.6.23 测试遥控器端和接收机端之间的蓝牙模块通信功能,能够实现来回数据透传
2024.6.25 检测遥控器的电位器电压值,通过蓝牙模块传输至接收机进一步处理并输出PWM驱动舵机
2024.6.26 通过蓝牙模块调试辅助通道,验证成功
2024.6.27 实现遥控器与接收机在上电后配对成功,能够一对一通信
2024.7.4 设计遥控器外壳
2024.7.12 遥控器外壳装配完成
1、项目功能介绍
遥控器端使用STM32F103CBT6作为主控,接收机端使用CW32F030C8T6作为主控。
采用蓝牙模块来实现遥控器端和接收机端的双向无线通信。
该枪式遥控器接收机可应用在低速遥控模型车、模型船等领域中,用来实现对这些模型的无线控制。
支持十个通道的数据传输,带有配对功能,如果配对不成功则遥控器和接收机都不会进行后续的数据传输。
可通过遥控器上的OLED屏幕实时显示每一个通道传输的数据。
2、项目属性
该项目为本人原创作品,首次公开,未在其他比赛中获奖,未参加过学校答辩。
3、开源协议
CC BY-NC-SA 3.0
4、硬件部分

5、软件部分
遥控器端
![]()
在主函数的while循环里,使用Serial_Printf函数不断向串口发送上述字符串。从A到J一共十个通道的数据按顺序排列,每个字母后面跟着的%04d代表实际要填进去的数据,最多四位十进制数,位数不够则在前面补零。

以旋转角度为0-180度的普通舵机为例,这里定义了常用的角度所对应的要传输的值,一共分为五段,段与段之间间隔45度。
接收机端

控制普通的模型车的电调只要给周期为20ms,高电平为1至2ms的信号即可,同样舵机的高电平为0.5至2.5ms。
已知从遥控器端传输过来的参数是0-4095,因此油门通道需要乘以acce_coeff这个系数再加上1000才能换算成1-2ms;
同样其他使用舵机的通道需要乘以steer_eng_coeff这个系数再加上500才能换算成0.5-2.5ms。


定义output_pwm_value函数用来输入定时器重载值以驱动相应通道的舵机,该函数需要传入两个参数,第一个参数是通道的序号(CHANNEL1至CHANNEL10),第二个参数是重载值。

在主函数的while循环里,不断判断从串口接收到的并存放在TxRxBuffer数组里的数据,通过下标来查找里面的内容是否跟遥控器端发出的标号一致,如果一致则调用output_pwm_value函数驱动电调或舵机运动。
6、操作步骤

采用HC-08和HC-04两个蓝牙模块实现遥控器接收机之间的数据传输,这两个模块默认都是从模式,其中需要设置一个模块为主模式,才能与另一个默认为从模式的模块之间建立连接并通信。将HC-08插入遥控器端作为主机,将HC-04插入接收机端作为从机。

使用串口对HC-08发送AT指令(AT+ROLE=M)即可设置为主模式。之后就能与从机连接并实现数据传输。
7、大赛LOGO验证

8、外壳3d打印




9、演示您的项目并录制成视频上传
设计图
未生成预览图,请在编辑器重新保存一次BOM
暂无BOM
克隆工程


评论