聚丰项目 > 基于RT-Thread的自校准模拟电磁炮
本系统基于RT-Thread嵌入式实时操作系统,与磁阻式电磁炮、云台、TOF激光测距、LCD液晶显示屏等组成的寻靶测距控制系统。 根据激光测距检测的位置参数通过PID算法控制云台舵机自动锁定发射目标,同时通过输出可控的PWM信号给云台舵机,来控制自动巡迹目标的定位和发射装置的水平、垂直角度。主控制器根据发射参数计算出电磁炮发射装置的水平、垂直角度及对充放电电路的时间常数,控制云台转动及实现电磁炮的发射。
莫离哈哈哈
分享莫离哈哈哈
团队成员
姚文龙 学生
1. LCD接口电路
2.LED接口电路
3.激光测距串口接收电路
4.PWM信号输出电路(舵机控制)
RT-Thread使用情况概述:
使用了信号量,线程创建,FinSH控制台,中断管理
一、main函数
1.创建一个信号量用于中断和任务之间的同步
2.创建两个任务,任务1用于液晶屏显示,任务2用于调整PWM信号占空比(舵机角度)
3.任务1入口函数,首先获取串口接收中断的信号量,如果信号量已经释放,说明激光测距模块的距离值已经更新,执行后面的显示程序
4.任务2入口函数,用于改变PWM信号的占空比
二、中断服务函数
1. 串口接收中断,用于接收激光测距模块返回的距离值,一帧数据分为九个字节,前两个字节是帧头,第三四个字节为距离值的高八位和低八位,第五六个字节分别为信号强度的高八位与低八位,最后一个字节为校验和。当成功接收到一帧数据之后,释放信号量,任务1可以更新显示的距离值,避免了LCD屏幕的无效刷新,节省了CPU资源的利用率。
2.定时器中断TIM3
首先将定时器3的引脚重映射到PC6、PC7
通过改变TIM3->CCR1寄存器的值来修改占空比,达到对舵机的控制
该系统能够自动识别目标(以水杯为例),并控制舵机转向该目标,同时将相关信息显示在LCD上
(0.00 MB)下载
dianzi_0101: 666
回复
dianzi_0101: 演示只看到目标追踪,没看到电磁炮呀
回复
jf_25703341: 19电赛?
回复