基于LPC2119的自主式移动机器人设计
1051控制每60ms发送一路超声波,检测回波时间,并完成距离的计算。这样16路超声波循环检测一次约为1s,在常温时超声波的速度约为344m/s,可以计算出障碍物的距离,最后将超声波传感器编号及距离信息传送给LPC2119。
超声波发射及接收子系统如图2所示。1051利用P1.0引脚向外发送40kHz的脉冲信号,此信号作为4-16译码器74HC154的使能信号,引脚P1.1~P1.4作为译码信号,分别对应编号0~差模电感器15的超声波传感器。此信号经过9013放大后推动换能器产生40kHz的超声波信号。
LM567是一片锁相环电路,其5、6脚外接的电阻和电容决定了内部环型电感压控振荡器的中心频率f2,f2≈1/绕行电感1.1RC。其1、2脚分别通过电容器接地,形成输出滤波网络和环路单级低通滤波网络。2脚所接电容决定锁相环路的捕捉带宽:电容值越大,环路带宽越窄。LM567的工作电压为4.75~9V,工作频率从直流到500kHz,静态工作电流约8mA。
超声子系统基本功能为:当接收器接收到超声波回波时,产生交流小信号,此信号经过LM358组成2级放大电路后,幅值达25mV以上。当LM567的3脚输入幅度≥25mV、频率为40kHz的信号时,8脚由高电平变成低电平,此低电平信号被连接到1051的INT0引脚产生中断信号。1051在超声波发送时启动定时器,在INT0中断时关闭定时器,由此可以得到超声波的传播时间,并计算出障碍物距离。
应用本系统对测量范围为30~400cm的平面物体做了多次测量发现,其最大误差为0.5cm,且重复性好。如果加大超声波发射的驱动电流,接收部分的放大电路再加一级,可以使检测距离增大到600cm。
1.3 无线通信子系统
此系统选用微小型、低功耗、19.2kbps的无线收发MODEM芯片PTR2000实现机器人与计算机的无线通信。该芯片的工作频率为国际通用的工字电感器数传频段433MHz,采用FSK调制,可连接到计算机的RS232接口。系统采用的通信协议如下:
[开始字符] [数据1] [数据2]……[校验和] [结束字符]
将PTR2000的DO、DIN引脚分别与LPC2119的TXD0(13引脚)和RXD0(14引脚)相连,作为串行通信的通道。CS为PTR2000模块的频率选择信号;PWR为模块节能引脚,正常工作为高电平。TXEN是模块发射接收控制,由LPC2119的I/O口控制。PTR2000是收发一体的集成芯片,采用3.3V供电,可以与LPC2119无缝连接。PTR2000作为发射端与PC机相连时,需要通过一个电平转换器(本文为MAX3232)转换成RS-232电平。PLC2119可以通过把输出口置1或清0将无线收发模块PTR2000设置为发送或接收状态;可通过VB的MSComm控件的RTSEnable属性实现对计算机串口的控制。
1.4 光敏传感器子系统
机器人使用的光敏传感器为硫化镉光电管(CDS)。硫化镉光电管的电阻值随着照射的表面光的多少而变化,光线越强,电阻值越小。硫化镉光电管通常也称为光敏电阻。CDS的电阻值对较少的光线就能产生较大的变化,是机器人系统较为常用的一种光敏传感器。在机器人车体上平均分布8个同样的光敏传感器,感知机器人周围的光强变化。通过采集各传感器的输出电压,由软件算法确定机器人的路径,使机器人总是朝光线更强的方向行走,实现对光源的寻找。
将一个精密电阻与CDS器件串联,该电阻起分压作用,将CDS器件的电阻值转换成应对模/数转换器件(ADC)适当的电压值。CDS器件的分压输出给ADC,随后电压值转换为数字值。当更多的光线照在CDS器件上时,其电阻和ADC上输出的电压值都会减小。一般取这个精密电阻的阻值与CDS器件的最大电阻值相等。
2 软件编程
因任务不同,系统的软件设计有所不同。本移动机器人系统的任务是在已知大小且光线较暗的封闭环境中自主寻找光源。
系统软件在启动后先进行系统的自检和初始化,然后进行路径的规划。先横向遍历整个环境,如果发现光源,机器人停止运动,等待命令;如果没有找到光源,再纵向遍历整个环境,如果发现光源,机器人停止运动;如果还是没有找到,就显示出错信息。当超声波子系统发现前方有障碍物或机器人与障碍物发生碰撞时,将产生外部中断,终止程序的运行,控制器LPC2119将收到障碍物距离或碰撞信息,并由此重新规划路径,由此实现机器人的自主运行。
本设计是一个基于ARM7微处理器的车载嵌入式系统,不仅满足了移动机器人控制系统的要求而且为机器人的转型应用提供了良好的技术支持。在此基础上可以加入各种先进的控制算法,实现移动机器人的智能化。
平面变压器厂家 | 平面电感厂家
MSCl21OY5的便携式高分辨率电子温度计1 总体结构 以MSC1210Y5为核心,利用其内部集成的温度传感器和高精度模/数转换器,基于过采样和求均值的技术,外加液晶显示器和电源等部件,设计了一款简单实用的便携式高精度电子温度计,其结构框图如
电源离奇出现故障,请大家帮忙分析一下原因电源是12V10A的,3842反激,上次做了几百个到客户那里,有几个电源坏了,症状是空载一闪一闪的,不能带载,辅助绕组给IC供电跟不上,拆开看看,是1206的贴片电阻坏了,IC供电是这样的,就是变压器辅助绕组串联一个UF4007,再串联一个1206封装10欧姆的电阻给IC供电,现在就是这个电阻坏了,我算了又算,这没理由啊,IC工作电流是15mA,先算一下功耗,压降是0.01
VISA配置串口输出错误(读取纳伏表2182A的数据)之前编了一个简单的串口助手demo,想试试看能不能用这个接收一下仪器的数据,然后高亮执行过程看到VISA配置串口的输出错误了,请问哪位大神可以帮忙看看这个是什么问题呀?