摘要:本系统在以C8051F020单片机为主控制核心的监控下实现小车自动运水各项功能。在给水模块中,采用C8051F330单片控制水泵来实现定时定量给水功能。利用红外收发传感器检测黑色引导线,来引导小车前进、后退、停止;利用超声模块波实现小车蔽障;采用主控单片机的PWM波输出控制左右直流电动机转速,从而改变小车的运动状态及转向;利用两个舵机来实现小车自动卸水功能;NRF24L01无线发射接收模块实现小车平台和给水站台间的数据传输;采用车载液晶mzlh12864实现小车运水量和运水时间的显示。本系统硬件配置合理,控制方案优化,实现了小车在不同外部环境下的准确控制。 关键字:C8051F020;红外传感器;无线收发模块;舵机;蔽障
Water robot
Abstract: C8051F020 SCM in this system as the core to control the monitoring mainly realize C8051F020 SCM in this system as the core to control the monitoring mainly realize precise control of car. In the water supply module, using C8051F330 single-chip control to realize the function of water pump, Using the infrared emission test for pipe receives black guide line to guide the car to stop, forward, backward, Ultrasonic wave condition declivitous car; realizing modules, Direct MCU control PWM output port dc speed and turn around, thus changing the Angle motion and steering car,Using two steering gear to realize the function of water discharge car, NRF24L01 wireless transmitting receiving modules realize car platforms and water of data transmission between platform, Mzlh12864 achieve car transport vehicle crystal water and water time display. The hardware configuration and control scheme optimization, reasonable realized the car in different external environment accurately under control.
Key words: C8051F020;Infrared sensor;Wireless module;steering;keep away from obstacles
1
一、总体方案论证与选择
基于题目要求实现的各项功能及难易程度,在车辆选择上,对坦克模型车进行简单改装,车辆性能良好,易于控制,运行稳定。在处理器方面,运水机器人采用C8051F020单片机作为核心的控制系统,结合C8051F330单片机实现小车沿黑线正常运水、无线数据收发、自动贮水、运水量、运水时间实时显示、贮水溢出自动报警、蔽障等功能。模块电路主要包括:引导线检测电路、报警电路、电机驱动电路、无线收发电路、键盘和液晶显示电路、蔽障电路等。给水装置与小车之间采用两块C8051F330单片机及外围电路实现无线数据收发。系统总体框架图如图1.1所示。
液晶显示报警电路按键设置引导线检测障碍物检测核心单片机C8051F020无线收发模块无线收发模块C8051F330给水模块驱动电路卸水舵机液位传感器左右电机
图1.1系统总体框图
二、单元模块方案论证
1. 小车主控芯片选择
方案一:采用MCS-51单片机。优点是学习型单片机,价格低廉、控制简单。缺点是运行速度低,功能单一,RAM、ROM空间小。
方案二:C8051F020。C8051F020是完全集成的混合信号片上系统MCU,其控制器内核与MCS-51指令完全兼容。C8051F020采用流水线结构,特别适合用于对实时性要求极高的控制系统。多个I/O,满足本系统设计。
综合考虑,我们采用了方案二。 2. 循迹模块选择
方案一:采用红外反射式探测。用已调试的红外对管发射红外线垂直射到板面,白色会反射大部分红外线,黑色吸收大部分红外线。红外对管在黑白交界处产生跳变信号,信号经过电压比较器处理后送入单片机可以在程序里实现相应的功能。
方案二:采用多路阵列式光敏电阻组成的光电探测器。光敏电阻探测到黑线时,黑线上方的电阻值发生变化,经过电压比较器比较,将信号送入单片机处理,从而控制小车做出相应的动作,考虑到室内、室外、白天和黑夜光线强度不同,光敏电阻阻值变化不同,因此运水小车的设计对环境的要求较高,增加了问题复杂性。
2
经过测试,方案一对环境的适应性较强。因此,我们采用了方案一。 3. 电机选择
方案一:步进电机。步进电机的特点就是具有快速启动和停止功能。输出力矩大、控制精度高,并且能实现正、反控制;但它的缺点是转速低、控制复杂、步进距离不够精细。
方案二:直流电机。具有速度高,调速平滑方便,调整范围广性价比高等优点。 综合考虑,我们选择方案二,采用直流电机。 4. 液晶模块选择
方案一:采用LED数码管显示,数码管颜色鲜亮,易于观察,时实时动态显示,但它只能显示有限的数字和符号,显示能力有限,电路复杂,不能满足题目复杂的输出要求。
方案二:采用带字库的液晶mzlh12864显示。显示内容丰富,清晰度高,编程简单易学易用,易于人机交互,并能很好的满足题目要求。
综合考虑,采用方案二。 5. 蔽障模块选择
方案一:采用红外传感器蔽障。红外传感器检测距离近,调节范围小,灵活度低,不易控制。而且题目要求障碍物为黑色,会吸收大部分红外线,无法满足检测的要求。
方案二:采用超声波传感器蔽障。超声波传感器检测障碍物距离远,灵敏度高,而且不受环境及障碍物颜色的一样,稳定性好,满足本设计的要求。
综合考虑,采用方案二。 6. 卸水模块选择
方案一:采用水泵将小车上的水直接抽到储水装置中。水泵控制简单,而且速度较快,效率较高,但是采用水泵时,由于水泵安装位置的限制,必定不可能将小车上的水完全抽干,从而造成小车上都会滞留一定量的水,会对运水总量引起误差。
方案二:采用舵机转向倒水。利用舵机控制水杯转向,使水注入储水装置中。该方案的卸水速度更加迅速,电路也比较简单。
经过比较,由于选择的单片机有直接的PWM输出通道,所以方案二的控制更加简单,而且卸水的速度更加快,所以我们选择方案二。 7. 无线收发模块选择
选用NRF24L01无线收发模块实现小车与给水区之间的数据传输。用一块单独的C8051F330控制此收发模块,C8051F330再与作为主控制器的MC9S12D128进行串行通信。利用NRF24L01与单片机的巧妙结合既可以减轻小车的负重,又可对小车实现远程控制。
三、主要硬件电路设计
1. 循迹模块电路设计
循迹:车身前后各安装四对红外传感器,对黑线进行检测。电路如右图3.1所示。
图3.1 黑线检测电路
3
2. 电机驱动模块电路设计
本方案采用L298芯片作为控制器件外围加上必要的光耦隔离保护电路构成电机驱动模块,电路原理图如图3.2
+6V+6VJ2R3VCC5.6KR45.6KR55.6KR65.6K21VCCJ321CON2FR107FR107FR107CE345710126VCCR7330P521U411115U3L298Int1Int2Int3Int4EnAEnBSeASeBVsGndVssOut1Out2Out3Out4231314489VCCC2104FR107FR107FR107R91R/2WP521U5R101R/2WC1104FR107CON41234+6VD5D6D7D8FR107J4+6VD1D2D3D4CON2R1J14321CON4D0D1D2D3R2330330U112AKP521U2R8330P521 图3.2电机驱动电路
3. 超声波蔽障电路设计
车身两侧各水平倾斜安装一对超声波传感器,进行障碍物检测,实现蔽障功能。采用74LS04构成的超声波发射原理图如图3.3所示。控制系统产生40KHz方波经74LS04放大,74LS04放大在电路中不但有驱动作用同时增加了超声波传感器的阻尼效果缩短了其自由振荡时间以便其迅速起振。超声波接收电路采用专用解码芯片CX20106A实现超声波接收,电路如图3.4所示。
PWM12341K74ALS0456INT0VCCCX2010674ALS041234567874ALS044.7220K4733.3UF330P22K10K983.3UF74ALS041110VCC1051K图3.3超声波发射原理图 图3.4超声波接收原理图
74ALS04
四、软件模块设计
系统软件是整个系统的灵魂,协调各个模块正常工作。本次设计中系统软件主要有主机系统软件和从机系统软件两部分。主机软件主要负责运水、蔽障、卸水同时实时显示状态信息。从机软件主要功能是根据主机命令给不同容量的水,并发出结束信号,并可实现给水装置液位检测及超限报警。流程图如图4.1所示。
4
开始开始 NN 是否收到是否收到启动命令给水命令传感器检测开始给水NN 是否检测给水是到横线否完成第几次检测到横线发送启动命令 END第一次第二次第三次停车卸水停车、发送命令N卸水是否完成图4.1系统总体软件流程图
五、系统调试
1. 测试仪器
DS1012示波器、直尺、直流稳压电源、秒表、万用表等 2. 测试数据
2.1 基本部分实现情况:
(1) 小车能完成运水和自动贮水功能。
5
(2) 小车可以显示运水量和运水时间。
(3) 小车的贮水器水溢出时有自动声光报警功能。
(4) 测量小车在1分钟内最多运送水量,记录数据如表1所示。
表1 一分钟内运送水量测试表 次数 运水量(ml) 1 1100 2 1150 3 1070 4 1080 5 1000 平均值 1080 (5) 小车所载的水卸到C容器采用自动贮水。 2.2 发挥部分实现情况 (1) 可以完成A区自动给水。
(2) 在一分钟内完成100ml定量自动取水、送水、和贮水。设定给水量为100ml,测量实际给水量,记录数据如表2所示。
表2 一分钟内100ml定量自动取水、送水、和贮水测试表 次数 实际给水量(ml) 误差 数据如表3所示。
表3 实际给水量测试表 次数 实际给水量(ml) 误差 完成时间(s) 1 1020 2% 65 2 980 2% 68 3 1050 5% 66 4 950 5% 67 5 1010 1% 64 平均值 1002 3% 66 1 104 4% 2 100 0 3 102 2% 4 98 2% 5 101 1% 平均值 101 1.8% (3)完成1000ml自动取水、送水和贮水。设定给水量为1000ml,测量实际给水量,记录
(4) 小车在一分钟内运送100ml水时可以顺利绕过障碍物到达C区停车。 (5) 特色与创新:
① 具有给水装置高低液位超限自动声音报警功能; ② 蔽障声光报警提示功能; ③ 具有运水方式语音提示功能。 3. 测试结果分析
通过分析测试结果可以发现本系统的各项指标均达到或超过了相应要求,达到了预期效果。在调试无线数据收发过程中,如果给水模块与水泵共用一个电源,水泵启动会干扰单片机正常工作。改进措施为水泵和给水模块分开供电。感觉整个系统设计制作难度较高,时间紧张。好在经过团队协作努力,克服重重困难,最终达到了预期效果。
6
附件:小车主控制系统主电路图
DVccDGND01CCAA012345670123456701234DD444444445555555566666PPPPPPPPPPPPPPPPPPPPP009876543210987654321098761999999999988888888887777U20101253034CC.647......D1.2345602....444445D.......71..44N555555656666AAPPPPP//PP/P/PDP/P/PDDDR8VG/P/P/P/P/P//PP/PP//E01234051234LRWAD9A11111AAAAA1AAA///mAAAA//mmmm89012AA111TMS1AAATCK2TMSTDI3TCKA13m/A5/P6.575P65TDO4TDIA14m/A6/P6.674P66RST5TDOA15m/A7/P6.773P67CP1N6RSTAD0/D0/P7.072P70CP1P7CP1-AD1/D1/P7.171P71CP0N8CP1+AD2/D2/P7.270P72CP0P9CP0-AD3/D3/P7.369P73AD4/D4/P7.468P74AGND10CP0+11AGNDAD5/D5/P7.567P75P76VREF12AV+VREFC8051F020AD6/D6/P7.666P77AGND13C8051F022AD7/D7/P7.76514AGNDVDD64DVccVREFD15AV+DGND63VREF016VREFDP0.062P00DGNDVREF117VREF0P0.161P01AIN018VREF1P0.260P02AIN119AIN0.0P0.359P03AIN220AIN0.1P0.458P04AIN321AIN0.2ALE/P0.557P05AIN422AIN0.3RD/P0.656P06AIN523AIN0.4WR/P0.755P07AIN624AIN0.5AD0/D0/P3.054P30AIN725AIN0.6AD1/D1/P3.153P31AIN0.7AD2/D2/P3.252P32P33765432AD3/D3/P3.351......11111110../P/P/P/P/P/P11765432543210PP......222222107654......//11111198223333/P/P/P/P/P/PAAAAAAAA765432/P/P/P/P/P/P////////76541322N07654......E10AAAAAA1..//////ADDDD1111L1L1NNNNANANN11/////NNmmmmDA5432DmNm/m7654IIIITITIO1111D11G0m198DDDDAAAAXAXAMIIAAAAAAVADAAAAAAAC8051F02067890123456789012345678902222333333333344444444445NEC53NO7654321076543210765430pY1M11111111222222223333PPPPPPPPPPPPPPPPPPPP11.0592MC54DGND30pDVccR10Vcc+3.3VJTAG下载接口25D3J3UP_DOWN109Vcc+5V87TDI复位电路6TDOS25TMSR13R144TCKT1C71K3100476219012R12C51104RSTJTAGVcc+3.3V100 7
因篇幅问题不能全部显示,请点此查看更多更全内容