毕业论文-智能移动探测设置-软件设计31862.docx
《毕业论文-智能移动探测设置-软件设计31862.docx》由会员分享,可在线阅读,更多相关《毕业论文-智能移动探测设置-软件设计31862.docx(64页珍藏版)》请在三一文库上搜索。
1、智能移动探测装置软件设计摘 要本系统由信号检测、信号控制以及通信部分组成。系统选用STC12C5A60S2单片机为核心控制器,主要由电源模块、电机驱动模块、超声波测距模块、红外避障模块、无线通信模块(XL2401-D03)、一氧化碳探测模块、温度检测模块构成智能移动探测装置。其中小车驱动由L298N驱动电路完成,速度由单片机输出的PWM波控制。避障通过红外传感器模块和超声波测距模块配合,来控制小车的移动方向。将小车摄像头采集的现场图片,通过无线传输模块将图片传送至前方电脑,并传送现场的一氧化碳浓度及温度以达到探测的目的。关键词:STC12C5A60S2单片机;L298N;无线通信(XL2401
2、-D03);超声波测距;红外避障Intelligent mobile detection deviceSoftware designAbstractThis system consists of signal detection, signal control and communication. Choose STC12C5A60S2 single-chip microcomputer as the core controller system, mainly by the power supply module, motor drive module, ultrasonic distanc
3、e measuring module, Infrared obstacle avoidance module ,wireless communication module (XL2401 - D03), carbon monoxide detection module, temperature detection modules intelligent mobile device. Which car drivers completed by L298N drive circuit, the speed is controlled by single chip microcomputer ou
4、tput PWM wave, obstacle avoidance by ultrasonic ranging module, through the mobile car, the car camera figure collection of pictures, through the wireless transmission module to transfer images to the front of the computer, and sends the scene of the carbon monoxide concentration and temperature in
5、order to achieve the purpose of detection.Keywords: STC12C5A60S2 microcontroller;L298N;wireless communication (XL2401 - D03); ultrasonic ranging;Infrared obstacle avoidance目 录1绪论11.1 智能移动探测装置的意义及作用11.2 智能移动探测装置的前景11.3 本文工作12系统的软件设计32.1 软件总体设计方案32.2 软件设计主程序流程图42.2.1 车载系统主流程图42.2.2 车载系统中断流程图52.2.3 手柄显
6、示系统主流程图及中断流程图62.3 开发环境简介72.4 软件设计子程序模块及流程图82.4.1 小车驱动模块82.4.2 超声波测距模块102.4.3 一氧化碳检测模块122.4.4 显示模块152.4.5 温度检测模块182.4.6 无线传输模块213软件系统调试234硬件设计思路及原理图245系统功能测试255.1 车载系统前方超声波模块测试255.2 车载系统左方超声波模块测试255.3 车载系统右方超声波模块测试265.4 车载系统避障测试266结论28附录1:车载系统源程序清单29附录2:手柄系统源程序清单49参考文献57致谢58III1绪论1.1智能移动探测装置的意义及作用自从第
7、一个机器人的诞生,便标志着人类在智能方面的探索将是一个新的开始,是人类探索智能方面的伟大突破,也是人类新思想的呈现之作。人类将会不断探索,研究,以制造出更为理想的,并能为人类提供更多服务、帮助的智能机器。这个目标也是人类的一个长期的目标。随着机器人在智能方面的迅速发展,机器人所实现的功能也越发的强大,这些功能的实现离不开其自身的传感器。现如今,较为先进的机器人会携带各种类型的传感器,其中视觉传感器更为突出,它的携带让机器人如同有了人类的眼睛。促使智能机器人的表现更为灵活,能为人类提供更多的现场的信息。而这些信息的传递将会为人类探索机器人所在环境提供方便。当然这样的传感器的出现也是比较难的,它是
8、需要许多复杂的电路和程序运作才能实现的,它的核心是摄像管具有自动聚焦功能的,是仿照人类眼睛的,所以在市场上这样的传感器价格是比较贵的。机器人要代替人类就必须完成最基本的两个功能自动行走和避障的功能,这两个功能的实现将会是机器人完成其他功能的前提。避障控制方面可以以小车为载体,让小车实现避障功能以完成它的顺利行走进而去探测更多的现场环境的数据。1.2 智能移动探测装置的前景随着现代科技和工业以及各行业发展的需求,智能探测装置的发展迫在眉睫,尤其在石油,煤炭开采,海洋探索,太空探索等高压危险环境这种智能探测装置更是尤为重要的。至此产生了许多的探测装置,比如鱼群声纳探测装置,红外成像探测装置,地下管
9、道涂层破损点及与金属体接触点的探测装置,脉冲编码体制的探测装置,电气化铁道故障点探测装置等等。智能探测移动装置可以运用于事故现场,有毒有害现场等,人短时间无法进入或无法判断现场是否存在对人体有害的物质。使用智能小车进入现场对现场环境进行检测以及搜索现场是否有幸存者。然后将现场环境检测的数据和现场的图像资料传回到安全位置的指挥员手中,方便指挥员评估风险以及实施救援。智能探测移动装置在科学领域探测也有较好的前景。特别在一些恶劣的环境中,如在南北极极地环境。还有一些人类短时间无法涉足的地方,如在地外星体地表上。科学家都不适宜长期冒着高风险工作,就可以使用类似的智能移动探测装置,带着相关探测的传感器工
10、作,将有价值的信息通过无线通信传回便可。1.3 本文工作简介该智能移动探测装置可以作为机器人的典型代表以实现机器人的功能。本智能移动探测装置采用四轮小车为主体,为了控制方便,左方前后两轮用同一PWM波控制,右方前后两轮用另一路PWM波控制。本系统的避障采用三个红外传感器模块完成,分别安装在小车最前方的左中右,中间的红外检测前方障碍物,左右红外检测两边的障碍物。三个超声波测距模块分别配合红外模块更好的实现避障功能。小车的右上方安装一接近开关,防止红外失灵不能避开障碍物时以进行的保护措施。一氧化碳检测,温度检测分别通过一氧化碳模块,DS18B20模块完成。图像采集是由CMOS图像传感器OV7640
11、来完成的,图像控制处理由可编程逻辑器件K60处理。图像的传输部分使用了蓝牙技术,将所测得图像数据传输到上位机上。最后一氧化碳浓度,环境温度及超声波模块测距的显示通过无线通信模块传送至前方的LCD12864液晶显示屏上,当一氧化碳浓度,温度超过设定值时将会出现报警,而图像采集的信息通过蓝牙传送至前方电脑。智能移动探测装置的动力系统,是由直流电机充当,主要控制小车的行驶速度。单片机驱动直流电机一般有两种方案:传统方案是由软件模拟PWM输出调制,此方案难以精确调速并且浪费很多单片机的资源,但可供选择单片机的型号较多。本设计选择直接拥有PWM功能的STC12C5A60S2单片机,不但不需占用单片机资源
12、,而且可以实现精确调速。 2系统的软件设计2.1 软件总体设计方案由图2-1系统框图可见本系统使用两块STC12C5A60S2单片机,并通过无线模块NRF24L01实现单方向通讯。其中单片机A(车载系统)负责检测车身周围的环境。首先在系统初始化打开STC12C5A60S2单片机自带的8通道,10位精度的AD和内置的两项独立可调的PWM。将AD用于采集MQ-7一氧化碳检测模块输出的电压。之后,驱动DS18B20元件检测小车所处环境的温度。然后,驱动超声波检测小车到周围障碍物的距离,将数据处理后,通过驱动L298芯片和调制PWM控制小车的动作和车速。最后将以上测得数据存储到无线模块的发送数组中,将
13、数据传送给单片机B(手柄显示系统)。基于系统的可靠性设计,我们将红外避障模块和接近开关添加到单片机的外部扩展中断中。当中断触发后,通过检测触发的引脚,判断小车的状态,从而决定小车下一步动作。单片机B(手柄显示系统)主要负责处理无线模块NRF24L01接收到数据。将接收到的数据整理后,驱动人机交互设备LCD12864液晶显示屏,显示小车所处环境的温度,一氧化碳的浓度和小车到周围障碍的距离。并对温度值和CO浓度值与设定值进行比较,如果超过预定值,驱动蜂鸣器进行声音报警。LCD12864 显示DS18B20模块MQ-7模块超声波测距模块报警模块红外避障模块STC12C5260S2 单片机ASTC12
14、C5A60S2 单片机BL298驱动模块NRF24L01-D3发送模块NRF24L01-D3接收模块单片机内部PWM调速 模块图2-1 系统框图2.2 软件设计主程序流程图2.2.1 车载系统主流程图图2-2车载系统主流程图图2-2车载系统主流程图:单片机上电后,先进行系统初始化。其中包括AD功能寄存器配置,温度采集元件DS18B20复位,PWM寄存器配置,无线通信模块初始化,最后打开外部中断0和外部中断1及总中断。进入主循环后,开始读取AD的采样值,DS18b20采集的温度值以及超声波传感器测得的温度值。将前方超声波模块测得值,与设定值进行比较,看属于哪个区间范围,从而控制小车的速度,以及下
15、一步是否前进。将左方和右方超声波模块测得值进行比较,决定小车转向。最后将测得的所有数据装在无线传输模块数组中,进行发送。2.2.2 车载系统中断流程图图2-3车载系统中断流程图 图2-3车载系中断流程图:扩展外部中断1的流程图,其中左中右三个红外避障模块以及接近开关触发后都为低电平,他们任意一个为低电平都会触发外部中断1。当外部中断触发后,单片机会检测与之引脚相连的的电平。如果是接近开关触发,说明已经撞车,直接开始倒车。如果是红外避障模块触发的中断,判断其三个的组合。与预设的7种情况相匹配,执行其预定的动作。2.2.3 手柄显示系统主流程图及中断流程图图2-4手柄显示系统主流程图 图2-5手柄
16、显示系统中断流程图图2-4手柄系统显示系统主流程图:单片机上电后,先进行系统初始化,其中包括LCD12864初始化设置,和无线通讯模块的初始化。进入主循环后,首先判断无线模块标志位是否为“1”,当标志位为“1”说明无线模块成功接收到数据。将接收到的数据处理,接收到的数组是一个8位的字符型,而我们要显示的数据都是16位的无符号的短整型。我们每次取出两个字符型的数据,将第一个(原数据高8位)进行移位处理与第二个数据(原数据低8位)进行或运算,将原始数据还原出来。最终将原始数据通过驱动LCD12864显示出来。当无线模块的标志位为“0”,说明无线模块没有成功接收到数据,继续检测,直到标志位为“1”为
17、止。图2-5手柄显示系统的中断流程图:当无线模块接收到数据后,无线模块IRQ引脚拉低,触发单片机外部中断0。通过读取无线模块STATUS寄存器的值,判断是否成功接收到数据,如果成功将成功接收的标志位置1。2.3 开发环境简介在本设计中,由于采用是C语言编程,所以本设计软件开发环境选择了美国Keil SOFTWARE公司出品的兼容51系列单片机的Keil4。KEIL VISION可以方便的使用并且利用其强大的仿真功能进行软硬件的调试工作。目前最新版的KEIL系统提供了包括于C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的一整套完善的开发方案,并可以通过一个集成开发环境(UVIS
18、ION)将这些部分严密的组合在一起共同工作。WIN98、NT、WIN2000、WINXP等操作系统都可以有效的运行KEIL软件进行编程。 实际使用KEIL 51时,该集成环境既可用于C语言开发也可用于汇编语言开发。它内部集成了文件编辑、项目管理、编译链接和仿真调试等多种功能。用户可以在这里用文件编辑器编写自己的程序,用多种方法来调试和修改程序。编译程序也能帮助用户检查错误,提示用户修改错误,直至程序无误。 Keil操作页面如下图2-6开发环境页面所示:菜单栏输出信息窗口工程管理窗口编辑窗口图2- 6开发环境页面2.4 软件设计子程序模块及流程图2.4.1 小车驱动模块小车动力装置直流电机的驱动
19、,使用了ST公司生产的L298芯片。L298驱动芯片是一种可以承受高电压和大电流电机的驱动芯片。此驱动芯片主要有以下几个特点:a该芯片使用标准TTL逻辑电平信号作为控制信号;b该芯片拥有两个使能端,使其可以在不受输入信号变化的情况下就允许或禁止器件工作;c该芯片有一个逻辑电源输入端,容许其内部部分逻辑电路可以在低电压环境下工作。L298芯片的引脚功能见表2-1。表2-1 L298引脚功能表引脚符号功能115SENSING ASENSING B此两端与地连接电流检测电阻,并向驱动芯片反馈检测到的信号23OUT1OUT2此两脚是连接负载的全桥式驱动器A的两个输出端4Vs电机驱动电源输入端57IN
20、1IN 2全桥式驱动器A开关的输入控制端,采用标准的TTL逻辑电平信号。611ENABLE AENABLE B使能控制端.输入标准TTL逻辑电平信号;低电平时全桥式驱动器禁止工作。8GND接地端,芯片本身的散热片与8脚相通9Vss逻辑控制部分的电源输人端口1012IN 3IN 4全桥式驱动器B开关的输入控制端,采用标准的TTL逻辑电平信号。1314OUT 3OUT 4此两脚是连接负载的全桥式驱动器B的两个输出端见表2-2电机转动状态编码我们将单片机P2口接在L298输入口,由于驱动四个直流电机,我们使用两个L298芯片,刚好用完一组I/O(P2)口。通过控制P2口的输出值与编码值相匹配,控制四
21、个电机的运动状态,从而控制小车的运动状态。表2-2 电机转动状态编码右A电机右B电机左C电机左D电机右A电机右B电机左C电机左D电机小车运行状态INA1INA2INB1INB2INC1INC2IND1IND210101010正转正转正转正转直行01001010反转停正转正转右急转00001010停停正转正转右转10100100正转正转反转停左急转续表2-2电机转动状态编码INA1INA2INB1INB2INC1INC2IND1IND2右A电机右B电机左C电机左D电机小车运行状态10100000正转正转停停左转01010101反转反转反转反转倒车01010000反转反转停停左后倒00000101
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业论文 智能 移动 探测 设置 软件设计 31862
链接地址:https://www.31doc.com/p-3940697.html