1、3.5 电机驱动电路 103.6 无线遥控电路: 11四 、程序设计 124.1 主程序流程图 134.2 主程序 13五、系统调试 18六、小结 19七、参考文献 19附录 20系统实物图 20 一.【摘 要】: 本文提出一种智能循迹,自动运水小车的设计方法,利用红外技术检测障碍物信息,采用Mage16单片机进行实时控制,实现智能循迹,智能小车采用后轮驱动,两轮各用一个直流电机控制,避障用的传感器采用红外漫反射式传感器。【关键词】: 避障 光电开关 差分控制 LCD二. 功能概述本小车可通过2262无线模块进行模式的切换,在手动模式下,通过遥控器按键的不同实现不同动作;在自动模式下,机器人通
2、过RPR220光电管实现对线路的自动识别,智能小车采用两轮驱动,左右两边各用一个电机驱动,分别控制两个轮子的转动从而达到转向的目的。将三个红外线光电传感器分别装在车体的前方和后方,当红外传感器检测到小车左边出黑线时,主控芯片控制右轮电机停止左轮转动,车向右方转向,当传感器检测到小车右边出黑线时,主控芯片控制左轮电机停止转动,车向左方转向,当运行到终点时,主控芯片控制另一个电机将水箱翻起,降水倒出。同时通过NOKIA5510液晶显示运水时间,运水量。三硬件设计如下图所示,是本次设计智能小车的电路框图。以Mage16为电路的中央处理器,来处理传感器采集来的数据,处理完毕之后以便去控制电机驱动电路来
3、驱动电机。电源部分是为整个电路模块提供电源,以便能正常工作。31. 避障电路(1)障碍物探测方案的选择方案一:脉冲调制的反射式红外线发射接受器。由于采用该有交流分量的调制信号,则可大幅度减少外界干扰;另外红外线接受官的最大工作电流取决于平均电流。如果采用占空比小的调制信号,再品均电流不变的情况下,顺势电流很大(50100mA),则大大提高了信噪比。并且其反应灵敏,外围电路也很简单。它的优点是消除了外界光线的干扰提高了灵敏度。方案二:采用超声波传感器,如果传感器接收到反射的超声波,则通知单片机前方有障碍物,如则通知单片机可以向前行驶。市场上很多红外光电探头也都是基于这个原理。这样不但能准确完成测
4、量,而且能避免电路的复杂性 由以上两种方案比较可知。方案二要比方案一优势大,市场上很多红外观点探头也都基于这个原理。其电路简单,工作可靠,性能比较稳定。从而避免了电路的复杂性,因此我先用方案二作为小车的监测系统。避障电路采用漫反射式光电开关进行避障。光电开关是集发射头和接收头于一体的检测开关,其工作原理是根据发射头发出的光束,被障碍物反射,接收头据此做出判断是否有障碍物。当有光线反射回来时,输出低电平;当没有光线反射回来时,输出高电平。单片机根据接收头电平的高低做出相应控制,避免小车碰到障碍物,由于接收管输出TTL电平,有利于单片机对信号的处理。(2)光电开关工作原理:光电开关是通过把光强度的
5、变化转换成电信号的变化来实现控制的。 光电开关在一般情况下,有三部分构成,它们分为:发送器、接收器和检 测电路。避障电路如下:避障电路功能表:传感器避障电路输出(上升沿动作)待执行命令左中右左转信号(P2.1)右转信号(P2.0)右转1左转前进注解(“0”表示有障碍物; “1”表示无障碍物)3.2 单片机电路本设计的主控芯片选择Mage16,负责检测传感器的状态并向电机驱动电路发出动作命令。复位电路采用手动复位。单片机电路如下:3.3显示电路:显示电路由NOKIA5110组成,它可进行字母,汉字,图片的显示,功能强大,使用方便,所以本系统选用NOKIA5110作为显示模块,其电路如图所示。 N
6、OKIA 51103.4 电源电路 本系统所有芯片都需要+5V的工作电压,而干电池只能提供的电压为15V的倍数的电压,并且随着使用时间的延长,其电压会逐渐下降,则需要LM7805稳压芯片。L7805能提供300至500mA的电流,足以满足芯片供电的要求。虽然微处理器和微控制器不需要支持电路,功耗也很低,但必须要加以考虑。电源电路拟定为:3.5电机驱动电路 市场上用很多种类的小电压直流电动机,很方便的选择到。主要有普通电动机、和步进电动机。采用步进电机,步进电动机的一个显著的特点就是具有快速启动和停止能力,能够达到我们所要求的标准。如果负荷不超过步进电机所能提供的动态转矩值,就能够立即是步进电机
7、启动或反转。其转换灵敏度比较高。正转、反转控制灵活。但是步进电机的价格比较昂贵,对于我们的现状相差太远。采用普通的直流电机。直流电机具有优良的调速特性,调速平滑、方便。调整范围广;过载能力强,能承受频繁的冲击负载,可实现频繁的无极快速启动、制动和反转。能满足各种不容的特殊运行要求。由于普通直流电机价格适宜,更易于购买,并且电路相对简单,因此采用直流电机作为动力源本设计采用L298电机驱动芯片为直流电机驱动,由L298芯片组装直流电机驱动模块,同时利用光耦隔离模块,实现电路保护,构成的电路结构简单,方便,可靠!驱动电路原路框图如下:驱动电路原路框图LM298应用电路图:电机驱动连接电路图3.6无
8、线模块:为了能对小车进行手动控制,我们选用了简易的基于HS2272和HS2262的无线收发模块。利用2272和2262分别实现接收模块和发射模块电路设计。无线收发模块四.程序设计:本系统利用外部中断来接受遥控信号,通过接受信号的不同来改变运水模式,主程序在不断检测模式是否改变,通过不同模式实现不同动作!系统中还利用了定时器来计算运水时间,当小车到达终点时,把水倒出,同时显示运水时间!4.1 主程序流程图:主程序流程图4.2源程序: #include #include #include 5110.hmotor.hwireless.hinit.h/*-宏定义-*/#define uchar uns
9、igned char#define uint unsigned intuchar potemp1=0,potemp2=0,potemp3=0,potemp4=0,potemp5=0,potemp6=0,pox=1,poy=0;uint x_1,x_2;uint ms_conter=0,s_conter=0,m_conter=0,h_conter=0;uint receive=0,key=0,flot=0;uint shuiliang=0;uint x_220=255,y_220=0,z_220=0;void main(void)init_devices();motor_1(2);motor_2
10、(2);motor_3(2);motor_4(2); DDRB = 0x00; PORTB = 0xFF; key=PINB&0xF0; delay_ms(15); /在这继续添加你的代码/LCD_clear();delay(100); while(1) DDRB = 0x0F; /PORTB = 0xFF; if(key=0B00010000)/前进motor_3(0);motor_4(0);else if(key=0B00100000)/后退motor_3(1);motor_4(1);elseif(key=0B01000000)/右转if(key=0B10000000)/左转if(key=
11、0B00110000)motor_1(0);if(key=0B01010000)motor_1(1);if(key=0B01100000)motor_2(0);if(key=0B10100000)motor_2(1);else if(key=0B10010000)/break;else if(key=0B01110000) DDRA=0X00; PORTA=0XFF; x_1=0XF0|PINA; x_2=0X0f|PINA; while(x_1!=0xf0) front_220(); motor_1(2); motor_2(2); motor_3(2); motor_4(2); delay(20); motor_1(0);/转盘转向,水箱在前 delay(280); /motor_1(1); motor_2(1);/倒水 delay(200); motor_2
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1