《基于pic单片机智能遥控避障安全小车报告》由会员分享,可在线阅读,更多相关《基于pic单片机智能遥控避障安全小车报告(23页珍藏版)》请在金锄头文库上搜索。
1、 200921116班12号赵仕荣单片机设计实验报告2011年小学期单片机设计实验报告题目:基于单片机的智能安全遥控小车班 级: 2009211116班 班内序号: 12号 实验组号: 25 学生姓名: 赵仕荣 指导教师: 张老师 周老师 期中检查教师评语指导教师签字: 年 月 日基于单片机的智能安全遥控小车2009211116班 赵仕荣实验摘要 本次我们制作的基于pic单片机的智能安全遥控小车是一辆能够用焊制的遥控器遥控小车进行无极加减速,并且能工作于自由模式(小车的运行路线完全由操作者遥控决定)和安全模式(遥控小车如果遇到障碍,则将智能躲避障碍)的智能小车。小车使用编解码芯片(pt2262
2、-ir/pt2272)焊制的红外遥控系统控制小车,并在车体前后各安装一个红外探测传感器实现校车的智能避障。整个系统中,微控制器采用了Microchip公司的PIC16F877,软件设计中涉及PORTB用作普通数字I/O脚和PORTC端口的CCP模块的PWM脉宽调制输出功能。本实验用单片机PORTB(0-3)接收来遥控解码芯片解码的数字电位信号,遥控小车的走向,通过RB4,RB5接收传感器感应到的路障信息,在pic单片机的处理下在自由和安全两个不同的模式下做出不同的反应,单片机通过PORTC输出pwm信号,控制小车车速,通过RD0-RD3控制小车前进后退。概括来说,本实验就是用遥控器和红外传感器
3、接收控制信号和路障信息,用单片机控制直流电机输出相应的电平控制车辆的前行或者后退,用PWM输出端口控制小车的转向,进而实现小车的智能遥控功能。AbstractIn this experiment, we made a vehicle base on infrared detectable technology. You can remote control it under you will.And if you chose the safe mode it can automatically avoid obstacles it may come across even if you are
4、 controlling it towards an obstacle. The system uses the production of the Microchip cord-PIC16F877 as the microcontroller. The design includes the drive of PORTA and PORTD as general digital ports , the drive of PORTC as PWM(pulse width modulation) function.In conclusion, this experiment uses PIC16
5、F877 cord to control volts d.c. and accomplish controllings condition of the vehile, and PWM function to control its turn. And this is so called safe car. 关键字单片机microcontroller 芯片CMOS chip 红外探测infrared detector 脉宽调制pulse width modulation 安全小车safe car一.系统设计 1.设计预期功能 设计一个双直流电机的智能小车。采用pic16f877单片机为控制核心
6、,在最小系统的基础上,通过对红外避障信号和遥控控制按键的检测,控制步进电机的启动、加速、减速、前进后退等,使智能小车可以在遥控信号的控制下,智能的躲避可能遇到的障碍,从而使智能小车实现合理、安全的行走。(1) 智能小车可实现正、反转控制;(2) 智能小车行走速度、位置可控制;(3) 智能小车可实现红外遥控、红外避障、并在遥控情况下智能避障的功能;2.总体设计方案2.1 系统总体设计方案单片机最小系统红外传感器检测L298电机驱动电路直流电机解码信号电源电路遥控按键信号图1 系统设计总框图2.2基本模块设计(1)车体设计这次实验采用的车体为双电机基础车(如下图)图2 基础车此车是能购买到的常见的
7、且价廉的基础车,采用双电机驱动,比另外一种直流电机加舵机的驱动更加简单方便,因此选用以上车型。(2)电机驱动模块利用LM298及其外部辅助电路和电机构成驱动电路。单片机控制口接两个LM298的八个输入控制端。两个L298的八个输出端接步进电机。(3)遥控模块使用普诚公司的pt2262ir/pt2272-m4芯片完成控制信号的编解码,pt2262芯片完成信号的编码并调制到38khz的载波上通过红外发射管发射出去,接收端用irm38b接收信号后通过pt2272的解码,生成相应的控制信号。二.单元硬件电路设计1.电源模块电路 电源电路采用学校提供的LM7805芯片产生5v的稳压输出,电路采用6节电池
8、供电。9V电源图3 电源电路2.电机驱动模块 电机驱动采用L298驱动芯片,该芯片能驱动两个电机,驱动能力强完全能满足要求。图4 电机驱动电路3.遥控模块发射使用pt2262-ir红外发射专用芯片,发射模块只有在按键按下的时候才供电,因此耗电量极低,适合用电池。接收使用的是pt2272(sc2272为功能相同的替代品)用irm38b(只要是中心频率为38kHZ的就行)接收信号。在通常使用中,我们一般采用8位地址码和4位数据码,这时编码电路PT2262和解码PT2272的第18脚为地址设定脚,有三种状态可供选择:悬空、接正电源、接地三种状态,3的8次方为6561,所以地址编码不重复度为6561组
9、,只有发射端PT2262和接收端PT2272的地址编码完全相同,才能配对使用,遥控模块的生产厂家为了便于生产管理,出厂时遥控模块的PT2262和PT2272的八位地址编码端全部悬空,这样用户可以很方便选择各种编码状态,用户如果想改变地址编码,只要将PT2262和PT2272的18脚设置相同即可,例如将发射机的PT2262的第1脚接地第5脚接正电源,其它引脚悬空,那么接收机的PT2272只要也第1脚接地第5脚接正电源,其它引脚悬空就能实现配对接收。当两者地址编码完全一致时,接收机对应的D1D4端输出约4V互锁高电平控制信号,同时VT端也输出解码有效高电平信号。图5 发射模块图6 接收模块4.单片
10、机最小系统 单片机的晶振为4M有源晶振,复位电路使用按键产生低电位从而使系统复位。图7 单片机最小系统三.系统软件设计1.主程序流程图本设计的主设计流程图如图所示,当接通电源时,判断小车选择的控制模式然后在不同的控制逻辑下进行小车的遥控和避障,使小车合理行进。 控制信号遥控系统单片机红外传感器采集左电机路况信息右电机模式选择系统软件主框图开始初始化安全模式?YN自由模式子模块安全模式子模块循环循环图8 系统主流程图1.2 自由模式子模块控制按键按下?N前后左右减速前进加速后退右轮不动左轮前进左轮不动右轮前进加速前进减速后退图9 自由模式子模块1.3安全模式子模块遇障?YN障碍检测控制按键?前遇
11、障后遇障前后左右右轮不动左轮前进左轮不动右轮前进减速前进加速后退加速前进减速后退向左转加速向左转无限循环图10 安全模式子模块2.PWM脉宽调制模块当单片机接受到来自遥控模块和红外避障传感器的信号之后要控制电机进行加速减速等一系列的动作。PWM脉宽调制模块实现了小车转向的车轮调速功能。模块应用PIC16F877的输入捕捉输出比较脉宽调制CCP功能,将CCP1和CCP2设置为PWM模式,用于小车转弯过程中的调速功能。本实验中,应用CCP1调节左轮转速,用CCP2调节右轮转速。脉宽调制模式的工作原理:当CCP工作于PWM模式时,相应的RC引脚可以输出分辨率高达10位的PWM信号波形。由于CCP引脚
12、与RC端口引脚是复用的,因此必须事先将TRISC清0寄存器的bit1和bit2以设置CCP引脚为输出状态。CCP模块连续产生的PWM信号模型,产生PWM波形得需要确定两个基本参数:一个是周期(高电平和低电平持续时间之和);另一个是脉宽(高电平持续时间)。对于CCP模块,为了得需要一个自由运行的时基定时器和两个可以由用户程序随意改写的参数寄存器(即周期寄存器和脉宽寄存器)。周期 周期脉宽TMR2周期值时TMR2周期值时 TMR2脉宽值时图11 pwm示意图在PIC16系列单片机中,当CCP模块工作于PWM模式时,确定PWM信号周期所用的定时器就是8位宽的时基定时器TMR2,而确定PWM信号脉宽所
13、用到的定时器则是10位宽的时基定时器(由定时器TMR2的8位和其低端扩展的两位共同组成)。四.硬件连接红外传感器模块连接红外传感器靠发射和接收红外线来工作,根据接受到红外线的强弱来判断前面一定距离是否遇到障碍,从而对车模的行驶状况给出反应。红外传感器检测到障碍,输出低电平,否则输出高电平。前后两个传感器分别与单片机的RB4,RB5连接。PWM模块和单片机连接本实验中应用CCP1和CCP2的脉宽调制功能实现小车左轮和右轮的调速问题,用CCP1输出RC2控制左轮转速,CCP2输出RC1控制右轮转速。3.遥控模块与单片机连接实验中pt2272的D3,D2,D1,D0分别对应前后左右,分别与单片机的R
14、B0-RB3连接,用于遥控小车的走向。五.调试过程程序开始进入main,执行初始化设置后,单片机就开始检测小车行进模式,并采集路障信息,根据采集到的路障信息,在相应的模式下做出分析,控制小车行走。对tmr2的理解一开始的时候由于书上对tmr2的电路描述似乎与给出的框图不对应,于是请教老师后理解了tmr2的工作的原理,这给pwm模块的应用奠定了基础。后来在小车能跑起来的时候发现小车进行无极加速减速的加速度太小,于是根据其工作原理想到pwm模式下,虽然后分频比的设置并不影响pwm输出信号的周期和占空比,但是却会影响到占空比的更新频率,所以我通过减小后分频比的方法在不改动其他参数的情况下,很好地解决了加减速时加速度不够大的问题。2.安全模