基于Arduino控制板的可扩展多功能小车(16页).docx
-基于Arduino控制板的可扩展多功能小车-第 16 页基于Arduino控制板的可扩展多功能小车Extensible multifunction car based on the Arduino panel基于Arduino控制板的可扩展多功能小车Extensible multifunction car based on the Arduino panel作者:指导老师2017年5月目录目录·················································4中英文摘要················································5正文··················································7引言·············································7重要电子器件说明··········································· 8工作原理·····································13整机调试及数据实测·········································17 注意事项·········································19 存在问题·········································19 思维拓展·········································19 总耗材清单··········································21 参考文献··········································23 致谢··················································24摘要: 1 本文主要研究基于arduino单片机设计的自动循迹小车,通过实现简单的功能来模拟现实,方便人们的生活。 2 自动寻迹小车以arduino单片机为核心处理器,通过搭载各种传感器并接收传感器收集的信号,并把这些信号加工处理,再把处理过的信号返回到各个执行器,来实现可扩展多功能小车的行驶及其它功能。 3 其中的核心技术就是单片机对信号的处理过程,所使用的编程语言是以C语言为基础的,所以需要通过编写高效的C代码来实现对问题的处理。4推广应用范围:家庭扫地机器人、餐厅服务机器人、抢险救灾、科学考察、环境检测、娱乐玩具,城市全自动无人驾驶列车,全自动近距离载重车,军事领域的自动牵引系统。关键字:Arduino C语言可拓展Abstract:1.This paper mainly studies the automatic tracking car based on the arduino single-chip microcomputer, and makes it easy for people to live by simple functions.2. automatic tracing the car with the arduino microcontroller as the core processor, using a variety of sensors and the reception of the sensors to collect signal, and the signal processing, then the processed signal is returned to the various actuators, to realize the extensible multi-function car driving, and other functions.3. one of the core technology is the single chip microcomputer for signal processing, the use of programming language is based on C language, so I need to write efficient C code to implement handling of the problem.4. scope of application: home of the robot, restaurant service robot, disaster relief, scientific research, environmental testing, entertainment, toys, automatic driverless trains in cities, automatic close truck, automatic traction system in the field of military.Keywords: Arduino; C; Can be expanded;1引 言自第一台工业机器人诞生以来,机器人的发展已经遍及机械、电子、冶金、交通、航空、国防等领域。近年来机器人的智能水平不断提高,并且迅速地改变着人们的生活方式。人们在不断探讨、改造、认识自然的过程中,制造能替代人工作的机器一直是人类的目标。单片机是一种可通过编程控制的微处理器,虽其自身不能单独用在某项工程或产品上,但当其与外围数字器件和模拟器件结合时便可发挥强大的功能,现在单片机已广泛应用于众多领域。例如:工业自动化,智能仪器仪表,消费类电子产品,通信方面,武器装备等。 作为与计算机程序设计密切相关的理工科学生,掌握单片机的代码编写是基础的要求。为进一步丰富和巩固单片机知识,也为能更好的联系实际应用,本次挑战杯比赛设计选择了基于单片机Arduino制作的可拓展多功能小车,并已经做出了可以使用充电宝供电运行的实物。鉴于电子技术、计算机技术以及各种更先进的仿真软件的出现,使用高级语言如C代替汇编语言进行编程和控制已成为现实,单片机C语言编程相对于MC51汇编语言编程有如下优点: 对单片机的指令系统不需要有很深的理解就可以编程操作单片机。寄存器分配、不同存储器的寻址及数据类型等细节完全由编辑器自动处理。程序有规范的结构,可分为不同的函数,可使程序结构化。具有较强的处理能力,使用方便。具有方便的模块化编程技术,使已编好的程序便于移植,可极大缩短开发时间,增加程序的可读性和可维护性。用C语言进行工业控制也已成为一种趋势,为了更好的适应当今社会形势,为了更好的面对挑战、把握机遇,此次大学生挑战杯设计作品我们决定使用C语言完成程序编写部分。也希望能在进一步熟悉单片机控制的同时,对数字电子技术、模拟电子技术、计算控制技术以及常用外围芯片有更深层次的了解,得以提高自己的综合能力。2重要电子器件说明2.1 TCRT5000红外反射传感器TCRT5000传感器的红外发射二极管不断发射红外线,当发射出的红外线没有被反射回来或被反射回来但强度不够大时,光敏三极管一直处于关断状态,此时模块的输出端为低电平0,指示二极管一直处于熄灭状态;被检测物体出现在检测范围内时,红外线被反射回来且强度足够大,光敏三极管饱和,此时模块的输出端为高电平1,指示二极管被点亮。 监测距离1mm8mm比较器输出信号超过15mA灵敏度可调节工作电压3.3V-5V输出形式数字开关量输出(0和1)外围尺寸32mm x 14mm2.2 L298N电机驱动使用ST公司的L298N电机驱动作为主驱芯片,具有驱动能力强,发热量低,抗干扰能力强的特点。工作模式H桥驱动(双路)主控芯片L298N逻辑电压5V驱动电压5V35V逻辑电流0mA36mA驱动电流2A(MAX单桥)存储温度-20到+135最大功率25W外围尺寸43*43*27mm2.3 HY-SRF05超声波模块探测方式为非接触式测距,可精确至0.5cm电气参数HY-SRF05工作电压DC 5V工作电流15mA工作频率40Hz最远射程4.5m最近射程0.02m测量角度15°输入触发信号10uS的TTL脉冲输出回响信号输出TTL电平信号、与射程成正比规格尺寸45*20*15mm2.4 HC-05 主从机一体蓝牙模块2.4.1核心模块使用HC-05从模块,引出接口包括VCC,GND,TXD,RXD,KEY引脚、蓝牙连接状态引出脚(STATE),未连接输出低,连接后输出高。 2.4.2 led指示蓝牙连接状态,快闪表示没有蓝牙连接,慢闪表示进入AT模式,双闪表示蓝牙已连接并打开了端口。 2.4.3 底板设置防反接二极管,带3.3V LDO,输入电压3.66V,未配对时电流约30mA,配对后约10mA,输入电压禁止超过7V。 2.4.4 接口电平3.3V,可以直接连接各种单片机(51,AVR,PIC,ARM,MSP430等),5V单片机也可直接连接,无需MAX232也不能经过MAX232。 2.4.5 空旷地有效距离10米(功率等级为CLASS 2)。2.4.6 配对以后当全双工串口使用,无需了解任何蓝牙协议,支持8位数据位、1位停止位、可设置奇偶校验的通信格式,这也是最常用的通信格式,不支持其他格式。 2.4.7 可以通过拉高34脚进入AT命令模式设置参数和查询信息。 2.4.8 体积小巧(3.57cm*1.52cm)。 2.4.9 可通过AT命令切换为主机或者从机模式,可通过AT命令连接指定设备。 2.4.10 支持从4800bps1382400bps间的标准波特率。3整车及各子系统工作原理3.1控制器系统及驱动单元的选择 Arduino开发板是整个小车的大脑,是整个小车运行的核心部件,起着控制小车所有运行状态的作用。小车驱动电机利用现成的玩具小车配套直流电机,由开发板输出小电流的0、1电信号给电机驱动,再通过L298N电机驱动模块输出大电流驱动电机,使电机转动,从而可以改变电机的转动方式,达到转弯的目的。3.2传感器系统和执行器系统的选择小车实现的不同功能由车上搭载的不同传感器系统,执行器系统和控制器系统所烧录的不同代码共同实现。可以有选择性的组合安装实现不同功能的传感器和执行器以合理安排小车负重以节约电量。3.3小车循迹的原理 这里的循迹是指小车在白色地板上循黑线行走,通常采取的方法是红外探测法。红外探测法,即利用红外线在不同颜色的物体表面具有不同的反射性质的特点,由红外传感器模块不断向外发射红外光信号,当照到白色地面的时候,红外光被反射并接收,传感器向开发板输出逻辑1;当照到黑色地面的时候,红外光被黑色吸收接收不到返回值,传感器向开发板输出逻辑0。单片机以返回的三路0、1信号为依据来确定黑线的位置和小车的行走路线。 当循迹传感器照到黑线时输出点平0,照到白线时输出1。如上图所示,A,B,C三路。三路巡线小车控制逻辑:a、 A B C 状态为 1 0 1 ,B路正照到黑线上,小车前进b、 A B C 状态为 0 0 1 , A,B 照到黑线上, 小车左转弯c、 A B C 状态为 0 1 1 , A 在黑线上, , 小车左转弯d、 A B C 状态为 1 0 0, B,C在黑线上, 小车右转弯e、 A B C 状态为 1 10, C 在黑线上 , 小车右转弯f、 A B C 状态为 1 1 1, A B C 都不在黑线上,小车保持上一次状态不变。g、 A B C 状态为 0 0 0 , A B C 都在黑线上, 小车停止。3.4自动避障实现原理超声波发射器向前方发射超声波,在发射的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。声波在空气中的传播速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离s,即:s=340m/s×t/2。3.5人体红外感应功能原理人是温血动物时时向外环境辐射着红外线,利用这一特点在小车上搭载人体红外传感器并经测试设定阈值由开发板计算判断可以监测有无人体接近小车,并得到0、1逻辑信号。3.6跑马彩灯和声光报警原理使用多个LED灯组成发光方阵实现装饰功能,使用蜂鸣器实现声信号的发出。(双击上图可查看效果) 3.7与移动设备建立信息通信当今的智能手机和电脑已经非常普及,各种智能设备端均具有蓝牙功能,所以在此次大学生挑战杯中我们选用通用性和普遍性极高的蓝牙作为信息通信的电子器件。在手机(电脑)上安装匹配的APP(程序),可以实现所有传感器的数据时时回传,远程遥控,小车功能手动切换等。4整机调试及数据实测命令执行时间对应的位移值测量方式:测量多组长时间运动数据求平均值,再除以单位组的时间求单位时间内的位移量。小车各种运动状态执行时间精确至0.1秒。电机数据实测:4.1.1直线前进速度:行驶3.2m平均用时34s;由公式v(速度)=s(位移)/t(时间).计算得小车实际行驶速度约为:9.4cm/s.4.1.2直线后退速度:行驶3.2m平均用时33.1s;由公式v(速度)=s(位移)/t(时间).计算得小车实际行驶速度约为:9.7cm/s.4.1.3右转:右侧履带不转,左侧正转,小车旋转2264°平均用时60s;由公式(角速度)=(角度)/t(时间).计算得小车实际右转速度约为:37.7°/s.4.1.4右自转:右侧履带反转,左侧履带正转,小车旋转3233.8°平均用时60s;由公式(角速度)=(角度)/t(时间).计算得小车实际右自转速度约为:53.9°/s.4.1.5左转:左侧履带不转,右侧正转,小车旋转2205°平均用时60s;由公式(角速度)=(角度)/t(时间).计算得小车实际右转速度约为:36.7°/s.4.1.6左自转:右侧履带正转,左侧履带反转,小车旋转3273°平均用时60s;由公式(角速度)=(角度)/t(时间).计算得小车实际右自转速度约为:54.5°/s.4.2麦克风模块数据:鼓掌、跺脚或打响指都可使麦克风模块感测到声音信号,估计分贝值约为50至80分贝可使麦克风模块工作。4.3超声波模块数据:信号发送由代码控制,两次声波发送的时间间隔为2*10-6s,由接收两次超声波反射信号得到的时间间隔计算出的距离值精确至0.5CM。计算公式d=t2-t1*v/2.注:空气中的音速在1个标准大气压和15的条件下的速度值340m/s,t2-t1为超声波传播的总时间名词:d(距离); t1(前一次声波发射至反射所用时间); t2(后一次声波发射至反射所用的时间);5注意事项5.1小车各系统和系统的各子单元与开发板间连接由杜邦线完成,杜邦线接头若未接触紧密则会造成断路。 5.2在焊接时注意各个焊点不能有漏焊,否则会造成电路不通。6存在问题6.1履带小车底板所使用的电机是玩具车所配备的电机,功率过小的问题在测试中暴露出来。6.2受制于缺乏仪器设备,麦克风传感器无法经由精确测量分贝值设定阈值。7思维拓展在遥控方面,操作简单,功能全面,而且在智能控制方面,可扩展性高,arduino单片机可以用C语言来编写高效的程序以实现各种功能。通过连接各种传感器来收集和处理现实生活中需要处理的各种模拟信号。在智能循迹小车方面,从以前简单的遥控到现在全智能的人工玩具,历史性的发展在于编程语言模拟人的思维逻辑,可以让玩具更聪明。在抗震救灾方面,人的生命高于一切,所以,用机器代替人力永远是一个值得探讨的问题,由于以前的技术限制,所以实现困难,随着人工智能的发展,使得这一话题有了实现的可能,arduino小车可以装载人体红外传感器,进入废墟内探寻生命迹象。经济的发展,使得人们的关注重心从温饱问题转移到娱乐享受和保护环境等方面。继而实用性强又实惠的小车,将可能成为家用必备电器之一。建议应用范围:家庭扫地机器人、餐厅服务机器人、抢险救灾、科学考察、环境检测、娱乐玩具,城市全自动无人驾驶列车,全自动近距离载重车,军事领域的自动牵引系统。8可扩展多功能小车项目总耗材清单系统器件名称器件单价(元)数量(个)总计(元)1. 控制器系统Arduino UNO R3141142.传感器系统红外传感器模块2816麦克风传感器模块212超声波传感器模块414光敏电阻模块1333.执行器系统小车底板(含电机履带)22122激光发射模块111有源蜂鸣器模块111RGB全彩灯3.513.5L298N电机驱动模块5.515.5其它杜邦线、铜柱、导线、面包板等10总计82参考文献 【1】 王宜怀,刘晓升。嵌入式应用技术基础教程【M】。北京清华大学出版社,2005. 【2】 邵贝贝,单片机嵌入式应用的在线开发方法【M】。北京:清华大学出版社,2004。 【3】吕广明,孙立宁。自动引导车轨迹偏差的智能控制【J】。哈尔滨工业大学学报。2002年35(12):1466-1467.【4】无线电合订本2016年。人民邮电出版社。2017年5月19日