王康欣 李健祥 郑丹
(北方民族大学宁夏银川750021)
基于ARM的智能探测机器人
王康欣李健祥郑丹
(北方民族大学宁夏银川750021)
本文实现了一款基于ARM(Cortex-M3)处理器的智能防火灾寻路机器人及相关的硬件软件为一体的设计方案,通过在小车上集成各种传感器,利用ARM高性能,可兼容性的特点。
ARM智能机器人传感器
生活中经常会有意外事故发生,这些现场人们往往无法进入,或者在不了解内部的情况下进入会有危险,这些事故现场就成了最危险的救援现场,很多救援工作人员为此受伤甚至丧生,而且救援行动缓慢致使很多平民受害,鉴于救援的实时性和特殊性,我们研发了这款基于ARM的智能探测机器人。主要功能是:在事故救援现场参与救援,具体而言是由专业人员无线遥控控制,通过其上安装的摄像头拍摄现场画面传回实时画面供救灾人员进行分析,通过各种传感器能够检测事故现场的温度,湿度,气体质量以确认是否符合救援人员生存环境,以避免由于不清楚状况,贸然进入而造成的不必要伤亡,以此帮助救灾人员进行救灾,它与让人来完成这件任务而言的好处在于能减少人员伤亡,成本低,行动不容易受限,能提供更精确的实时的数据,更精确化等等。[1]
本文实现了一款基于ARM(Cortex-M3)处理器的智能防火灾寻路机器人及相关的硬件软件为一体的设计方案。通过在小车上集成各种传感器,利用ARM高性能,可兼容性的特点。可以实现在特定的黑白轨道上自动循迹,并且集成了各种传感器,可实现实时将环境中的各种数据,如温度,湿度,视频等信息通过蓝牙模块及无线wifi模块传输回电脑进行分析处理。[2]
首先我们自己组装一辆符合要求的小车,由于事故现场的特殊性,我们对材质,大小都有很高的要求,然后根据我们需要实现的功能去拓展外围设备,包括电子摄像头,温度检测器,湿度检测器,气体质量检测器等等,外加遥控装置,在模拟事故现场条件下实施各种作业,不断调试以完成预期设计。做成一款能够拍摄事故现场画面,能够检测事故现场各种参数的智能小车,通过不断地模拟,能够参与到实际的事故现场帮助完成救援任务的智能机器人。[3]
小车整个系统由传感器模块,无线通讯模块,电源/电机模块,红外避障模块,摄像头模块/Wifi模块,USB Hub模块组成。[4]
1.1传感器模块设计
红外传感器是小车循迹过程中的一个重要部分,通过与光敏电阻的配合使用。由于不同颜色对于光的反射程度不同,所以可以通过光敏电阻来进行循迹。由于是光线传感器,再安装时注意高度变化,使其保持在合适的位置。红外传感器的测距是80CM,也可通过调节继电器来改变测距。
此外,小车前部还安装了两个红外避障模块,使机器人小车在循迹是可以躲避障碍物,增强在现实中的可用性。
1.2无线通讯模块
无线通讯模块主要通过蓝牙模块以及无线wifi模块来实现。使用的蓝牙模块是BlueTooth,这一模块的蓝牙为HC-05。
BlueTooth蓝牙模块上的5V,3.3V任意接到一个相应的电压就可以接高电平,然后通过USB模块连接到电脑。这样就可以实现小车和上位机之间的通信。
蓝牙模块烧录部分源码如下:
无线wifi模块通过在ARM上编写的相关程序与上位机程序连接,同样可以将温度,湿度等信息传回到上位机上的软件。最后进行分析,从而得到相应监测地点的数据。
1.3摄像头模块
通过摄像头模块来采集视频信息,通过蓝牙模块实时传输回视频到上位机。操作者可实时看到小车传回的信息,从而了解火灾发生地点内部的结构以及人员伤亡状况。图像采集主要基于MC9812DG128单片机实现,总线速度20MHz,8KBRAM,256KBflash。
视频监控系统控制部分源码
智能机器人的整体软件系统都是通过C语言及少量的内嵌汇编语言来实现。编译过程主要通过上位机以及ARM GCC编译器来进行,也可通过makefile实现整个项目相关文件的编译。程序的烧写过程也极为简单,可通过专用串口线进行烧写,将程序下载到开发板中,启动集成的各个模块,就可进行开发和调试。
通过传感器发回的信号和返回值,控制系统可通过输出不同的占空比的pwm来控制转速,从而实现各种复杂动作的行为。
本文论及的基于ARM的智能机器人设计充分利用了Cortex-M3的优点,通过改善和利用处理速度,使机器人的性能变得更加稳定,同时利用红外避障模块以及循迹模块,可以实现自动循迹以及避障的功能,自动识别路径。通过在小车上集成各种湿度,温度传感器,摄像头模块,使得机器人在实际火灾救援过程中具有实用性,功能也变得更加丰富和稳定。
[1]弓雷等.ARM嵌入式Linux系统开发详解清华大学出版社
[2]弓雷等.Linux环境C语言程序设计清华大学出版社
[3]杜春雷等.ARM体系结构与编程清华大学出版社
[4]孙增圻.系统分析与控制清华大学出版社