基于STM32F103C8T6的智能搜救红外小车设计

2020-04-07 10:47卜繁增马超王萌张东志
科学大众 2020年1期

卜繁增 马超 王萌 张东志

摘   要:随着科技的快速发展,人们能够更好地预测到地震的发生,这可以给人们更多的反应时间,大大提高了人们的生存机会。但是地震后的救援也至关重要。因此,文章设计了一款智能搜救探测机器小车,车上配有一个机械臂,机械臂的末端配有红外传感器。本次设计将STM32F103C8T6作为主控制器,采用NRF24L01无线模块来实现无线传输,显示模块用OLED液晶显示,而车上装有的机械臂可以更方便地伸入废墟,红外传感器模块检测生命特征以便搜救队员搜救,具有较高的使用价值。

关键词:嵌入式控制;红外探测技术;BMI160惯性模块;无线控制

1    系统方案及整体构架

本次设计的主控制器采用ST公司的ARM控制器STM32F103C8T6,体感检测模块则采用ST公司的BIM160惯性传感器来实现功能,电机驱动模块则采用L298N电机驱动,无线通信功能的实现采用了NRF24L01无线模块,生命探测模块则采用了BISS0001热释电红外传感器,液晶显示模块为有机发光半导体(Organic Light-Emitting Diode,OLED)液晶显示,可显示当前状态与剩余电量。而系统软件方面逻辑严谨,考虑到了系统可能出现的每种状态,对出现的每一种状态都进行闭环处理,大大提高了系统工作的效率与稳定性。

2    硬件电路设计

2.1  主控制模块

智能搜救探测小车的核心元件是其主控模块。主控模块需要处理机械臂模块,生命探测模块与BMI160惯性传感器等模块送来的信息,最重要的是对外界的抗干扰能力要强,因此本次设计采用ST公司的ARM控制器STM32F103C8T6作为主控制器。STM32F103C8T6是32位微控制器,速度为72 MHz,程序存储器容量为64 kB,工作温度为-40~85 ℃,足以应对抗震救灾的恶劣环境。外围设备可连接直接内存存取(Direct Memory Access,DMA),电机控制脉冲宽度调制(Pulse Width Modulation,PWM)与温度传感器等。电源电压为2.0~3.6 V,功耗低,可以延长搜救小车的工作时间。

2.2  传感器处理模块

博世BMI160惯性测量单元传感器模块可以实现体感遥控的功能。BMI160集成了16位的加速度数字传感器与16位的陀螺仪传感器,可与Android系统进行兼容,功耗低,电压支持范围大,為1.71~3.6 V,可分配1 024字节的先入先出(First Input First Output,FIFO)缓冲区,具有高达1 MHz的可扩展I2C模式。其数据同步可以通过控制时间戳的高精度来实现,也可以等待中断或通过FIFO的数据来实现数据同步。

2.3  无线通信模块

NRF24L01是NORDIC公司生产的一款无线通信信息芯片,采用FSK调制,可以实现对点或是1对6的无线通信。用NRF24L01通信信息芯片来实现无线通信模块的发送与接收指令功能。首先将通过体感检测采集到的数据转化为单片机能够识别的数据命令,从而通过单片机发出指令来控制机械臂相应运动从而实现全方位多角度无线通信控制。传输过程中对体感指令的发送与机械臂控制器发送回状态控制包的时间要求非常严格,必须等待状态返回包返回后,主控制器才能给机械臂发送下一条指令。

2.4  显示模块

通过对比,最终采用了OLED液晶显示模块来显示当前状态与机械臂的剩余电量。OLED-128x64是具有UEXT连接器的低功耗OLED液晶显示模块,是低成本,低功耗,高对比度的LED显示屏。可以通过I2C进行控制。所需的电源睡眠模式范围为1 uA,工作模式为200 uA,显示ON模式为7 mA。该SSD1306控制器OLED液晶显示模块视图面积为21×11 mm。提供4针头,可以使用MOD-OLED-128x64与面包板进行焊接。

2.5  机械臂控制模块

对小车与机械臂的信号控制是通过16路PWM驱动模块与L298N电机来实现的。控制PWM的方式是对逆变电路开关器件的通断进行控制,使输出端得到一系列幅值相等的脉冲,用这些脉冲来代替正弦波或所需要的波形。也就是在输出波形的半个周期中产生多个脉冲,使各脉冲的等值电压为正弦波形,所获得的输出平滑且低次谐波少。按一定的规则对各脉冲的宽度进行调制,既可改变逆变电路输出电压的大小,也可改变输出频率。在一定周期内,通过控制给高电平的时间来实现电机的调速。

2.6  红外传感器控制模块

BISS0001是一款高性能的传感信号处理集成电路,静态电流极小,配以热释电红外传感器和少量外围元器件即可构成被动式的热释电红外传感器。

BISS0001是CMOS数模混合专用集成电路,具有独立的高输入阻抗运算放大器,可与多种传感器匹配,进行信号与处理,双向鉴幅器可有效抑制干扰,内设延迟时间定时器和封锁时间定时器,结构新颖,稳定可靠,调解范围宽,其工作电压范围为2~6 V。

3    软件系统设计

首先需要系统的初始化,在系统初始化完成后,系统会先检测各个模块的功能是否正常,如是否可以正常通信,是否可以发送数据与接收数据,电源电压是否正常并将结果显示在OLED屏幕上,一切正常之后系统会进入工作状态,会时刻接收来自各个模块的通信数据,经过系统的处理后会传输到终端来实施相应的功能,电量会实时显示在OLED屏幕上。

4    结语

本次设计大体讨论了基于STM32F103C8T6的智能搜救红外小车的设计论证与实现。同时大体介绍了硬件电路的组成与软件系统的工作原理。经实践操作试验可以得出,该智能搜救红外小车的机械臂运行较为流畅,红外探测较为敏感,在实际生活中具有较高的使用价值。

[参考文献]

[1]刘军.例说STM32[M].北京:北京航空航天大学出版社,2011.

[2]周立功.ARM 7嵌入式系统基础教程[M].北京:北京航空航天大学出版社,2008.

[3]杜春雷.ARM体系结构与编程[M].北京:清华大学出版社,2003.

[4]刘火良,杨森.STM32库开发实战指南[M].北京:机械工业出版社,2013.

[5]谭秋林.红外光学气体传感器及检测系统[M].北京:机械工业出版社,2014.