灭火小车设计报告.docx

上传人:scccc 文档编号:12788993 上传时间:2021-12-06 格式:DOCX 页数:23 大小:259.73KB
返回 下载 相关 举报
灭火小车设计报告.docx_第1页
第1页 / 共23页
灭火小车设计报告.docx_第2页
第2页 / 共23页
灭火小车设计报告.docx_第3页
第3页 / 共23页
灭火小车设计报告.docx_第4页
第4页 / 共23页
灭火小车设计报告.docx_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《灭火小车设计报告.docx》由会员分享,可在线阅读,更多相关《灭火小车设计报告.docx(23页珍藏版)》请在三一文库上搜索。

1、综合课程设计报告实践课题:灭火小车目录一、 实验内容 -2 -二、 基本原理-2 -1、单片机最小系统: -2 -2、电源模块:-2 -(1)可调稳压:-2 -(2)5V 稳压:-2 -3、电源-3 -4、电机: -3 -5、电机驱动:-3 -6、传感器: -3 -(1)指南针模块: -3 -(2)火焰传感器:-3 -三、设计思路-4 -四、硬件电路-5 -1、指南针部分:-5 -2、L298N电机驱动模块-12 -3、电源电路:-14 -4、火焰传感器: -15 -五、实验程序流程框图 -16 -六、调试与结果分析 -17 -亠、实验内容在直径为3米的圆形区域内,放上火源。将小车放置在圆心,

2、寻 找火源并将其扑灭。二、基本原理各模块简介1、单片机最小系统:采用stc12c5a60s2单片机,它比普通的51单片机多拥有2个ccp模块,在小车的制作中,可以输出 pwm波,对小车的速度进行调整 和控制。晶振采用11.0592 M晶振,不能使用12M的晶振,这样才 能和GY-26指南针模块进行通信。2、电源模块:(1)可调稳压:采用LM2576-adj稳压芯片,输入为16.8V,输出为7-16.8V可调。主要用于提供电机电压。(2)5V稳压:采用7805稳压芯片,输入9V电压(通过可调稳压模块),输出 5V。主要用于最小系统、各传感器供电、3、电源使用16.8V航模电池,功率高,波动小,耐

3、久性好。4、电机:采用TT减速电机。便宜实惠。不过在稳定性、精度和轮胎抓地 力上效果不好。如果没有配合光电编码器形成内反馈会经常出现双杆 电机有转数差,轮胎打滑等情况使得调试更加麻烦。5、电机驱动:采用L298n驱动芯片。双H桥驱动电路,同时驱动两个直流电机 或一个4相步进电机。输入电压为7V-24V,驱动电流为2A,可以很 有效的驱动两个小型点击。6、传感器:(1)指南针模块:采用简单的GY-26指南针模块。主要在小车中用于定位。详细使 用方法在后面程序部分会提到。(2)火焰传感器:可以检测火焰或者波长在 760纳米1100纳米范围内的光源, 打火机测试火焰距离为80cm,对火焰越大,测试距

4、离越远。采用LM339电压比较器,输出为数字量。三、设计思路1火源寻找定位:这部分最为重要。如果没法寻找到火源,就无法对火源进行处理。 寻找思想如下:先将小车放置在圆心处,原地旋转360度对火源进行寻找。若没 有找到前进80cm寻找前方的火源。若没有找到则依次进入后、左、 右等地方寻找火源,在此期间若找到火源进入灭火部分, 若没有找到 则继续寻找。若在中心、前、后、左、右都没有找到火源,则蜂鸣器响9声,提示寻找失败或没有火源。图中较大圈为所需寻找半径,较小圈为传感器探测范围。可以发现,此方案还是有存在一些探寻盲区。有待改进。2、灭火部分:若火焰传感器探测到火源,进入灭火部分。小车由3个火焰 传

5、感器组成,分别面向前方、左前方、右前方(前方传感器最不灵敏, 为离火焰为20cm左右可以探测到火焰。左前方和右前方传感器可以 探测80cm左右的火焰)。当左前方和右前方的传感器看到火源时,小车左右摇摆前进, 指导中间传感器看到火源时,小车停下,进行灭火。这是,灭火风扇启动,进行灭火,直到三个火焰传感器都检测不到火源时,灭火结束。四、硬件电路1指南针部分:采用GY-26指南针模块。GY-26是一款低成本平面数字罗盘模块。输入电压低,功耗小,体积小。其工作原理是通过磁传感器中两个相 互垂直轴同时感应地球磁场的磁分量, 从而得出方位角度,此罗盘以 RS232协议,及IIC协议与其他设备通信。该产品精

6、度高,稳定性高。 并切具有重新标定的功能,能够在任意位置得到准确的方位角, 其输 出的波特率是9600bps,数据以询问方式输出,具有硬铁校准功能磁 偏角补偿功能,适应不同的工作环境。模块及引脚定义如下图:25. 6mm20» 3inni 25. 6iran12 11 10 9 6 ?1 2 3 4 5 5 _2. 54mm1. vcc2. TX3. RX4.SCL5.SDA6. GND引脚接线定义7. GND & GND9. CAL10. NC11. NC12. VCC该模块在使用前需要进行矫正。矫正方法如下:在模块的第9 (CAL引脚,接一按键至电源负极(GND),当第

7、一次按下按键时,进入校准状态,LED常亮起。保持模块水平,缓慢 旋转1周(旋转1周时间大约1分钟)。再次按下按键LED灭,校 准结束。模块输出格式,每帧包含8个字节: .ByteO: OxOD (ASCII 码回车) .Bytel: OxOA (ASCII 码换行) .Byte2: 0x300x33 角度百位(ASCII 03 .Byte3: 0x300x39 角度十位(ASCII 09 .Byte4: 0x300x39 角度个位(ASCII 09 .Byte5: 0x2E(ASCII 码小数点) .Byte6: 0x300x39 角度小数位(ASCII 09 .Byte7: 0x000xFF

8、校验和(仅低 8bit)注:校验和 Byte7 = (ByteO+ Byte1 + .Byte6)结果仅取低 8bit例:一帧数据 <0x0D-0x0A-0x33-0x35-0x39-0x2E-0x36-0x1C> 359.6该模块与单片机的连线图如下:Hi PS 4 TITS? 啊臥 RD PIT XTM.2 XTALISit!p Ur p p.?e 2D TVrJ 星 菖>pHa 丄 nJ月5 序.TAfH 比刊丹計珂刊珂BaE陰VQCJVJ J J UJKF2轮施F2P2F2P2在模块的使用过程中,要与单片机进行串口通信。其部分程序如下:*/串口中断void seria

9、l_serve(void) in terrupt 4if(RI=1)RI=0;BUFcnt=SBUF;cn t+;*/串口初始化/9600 bps 11.059 MHzvoid ini t_uart()TMOD=0x20;TH1=0xfd;TL仁 Oxfd;SCON=0x50;PS=1;/串口中断设为高优先级别TR1=1;/启动定时器EA=1;ES=1;*串口数据发送 *void SeriPushSe nd(uchar sen d_data) SBUF=se nd_data;while(!TI);TI=0;由于在使用中,指南针模块返回的数值是ASCII码,所以还要对其进行计算。其部分程序如下:

10、(0X30-0X39对应数字0-9)void turn()/将目标角度调整 180°compass();if(thu n=0x31)if(tte n>0x37)ehun=0x30;ete n=tte n-8;else if(tte n>0x31 &&tte * 0x38) ehun=0x33;ete n=tte n-2;else if(tte * 0x32)ehun=0x32;ete n=tte n+8;if(thu n=0x30)if(tte n>0x31)ehun=0x32;ete n=tte n-2;else if(tte * 0x32) eh

11、un=0x31; ete n=tte n+8;if(thu n=0x32)if(tte n>0x37)ehun=0x31;ete n=tte n-8;else if(tte * 0x38)ehun=0x30;ete n=tte n+2;if(thu n=0x33)ehun=0x31; ete n=tte n+2;write_com(0X80+0X40);/只为显示参数方便调试delay(60);write_data(thu n+'0');write_data(eh un+'0');write_data(tte n+'0');write_da

12、ta(ete n+'0');void turn90()/将目标角度调整 90度compass();if(thu n=0x31)if(tte n>0x30)ehun=0x32;ete n=tte n-1;else if(tte * 0x31)ehun=0x31;ete n=tte n+9;if(thu n=0x30)if(tte n>0x30)ehun=0x31;ete n=tte n-1;else if(tte * 0x31)ehun=0x30;ete n=tte n+9;if(thu n=0x32)if(tte n>0x36)ehun=0x30;ete n=

13、tte n-7;else if(tte n>0x3 0&&tte * 0x37)ehun=0x33;ete n=tte n-1;else if(tte * 0x31)ehun=0x32;ete n=tte n+9;if(thu n=0x33)ehun=0x30;ete n=tte n+4;write_com(0X80+0X40); /只为显示参数方便调试 delay(60);write_data(thu n+'0');write_data(eh un+'0');write_data(tte n+'0');write_data

14、(ete n+'0');2、L298N电机驱动模块L298N是ST公司生产的一种高电压、大电流电机驱动芯片。该 芯片采用15脚封装。主要特点是:工作电压高,最高工作电压可达 46V;输出电流大,瞬间峰值电流可达 3A,持续工作电流为2A;额 定功率25W。内含两个H桥的高电压大电流全桥式驱动器,可以用 来驱动直流电动机和步进电动机、 继电器线圈等感性负载;采用标准 逻辑电平信号控制;具有两个使能控制端,在不受输入信号影响的情 况下允许或禁止器件工作有一个逻辑电源输入端,使内部逻辑电路部分在低电压下工作;可以外接检测电阻,将变化量反馈给控制电路。 使用L298N芯片驱动电机,该芯

15、片可以驱动一台两相步进电机或四相 步进电机,也可以驱动两台直流电机。使用直流/步进两用驱动器可以驱动两台直流电机。分别为M1和M2。引脚A,B可用于输入PWM脉宽调制信号对电机进行调速控制。(如果无须调速可将两引脚接 5V,使电机工作在最高速状态,既将短接帽短接)实现电机正反转就更容易了,输入信号端IN1接高电 平输入端IN2接低电平,电机M1正转。(如果信号端IN1接低电平, IN2接高电平,电机M1反转。)控制另一台电机是同样的方式,输入 信号端IN3接高电平,输入端IN4接低电平,电机M2正转。(反之 则反转),PWM信号端A控制M1调速,PWM信号端B控制M2调 速。可参考下图表:电机

16、旋转方式控制端IN1控制端IN2控制端IN3控制端IN4输入PWM信号改变脉宽可调速调速端A调速端BM1正转高低/高/反转低高/高/停止低低/高/M2正转/高低/高反转/低高/高停止低低/高使用L298N驱动小车的电机,电路图如下:IHH VCC MS 跑0UT1IN3IFMOUTZENAENIBDIJT3&EHSB DNDZS D7D6IHSB17ZX D51N50I7ZS D61IWBI73、电源电路:5V稳压:米用LM7805稳压芯片,稳压电路如下:ViVoOC10.33|jX78XX2Ioco1pF可调稳压: 采用LM2596-ADJ芯片,具体电路如下:选乱为阻值是曲,精婆为1

17、%的电咀.此吋綸岀用奪定Cik 470nF/50¥Cotff I 220/J5V即:SA/4UY 1H582S LI : 68138KI : IktlH*C/r :饗孤寄关的戍用時建4、火焰传感器:火焰传感器由火焰探测管(波长探测管)和电压比较器电路组成,输出量为数字量。电路图如下:五、实验程序流程框图六、调试与结果分析这次的实践,由于用到了新的传感器指南针,以前都没有使用过, 只是对其原理有一定的了解。所以在编写程序的时候遇到了不少的困 难。例如说不知道其输出的是 ASCI码、不知道其校准的重要性等等, 耽误了很多的时间。同时,由于硬件比较简陋,TT电机精度不够,也对pwm的设置有了很大的影响。不过经过两个人几天的调试,在 最后的测试中,还是可以挺成功的完成任务,只不过由于一些场地、 硬件等方面的原因,使得灭火失败。不过总的来说这次实践还是很成 功的。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1