基于智能机器人平台的远程温湿度测量系统_第1页
基于智能机器人平台的远程温湿度测量系统_第2页
基于智能机器人平台的远程温湿度测量系统_第3页
基于智能机器人平台的远程温湿度测量系统_第4页
基于智能机器人平台的远程温湿度测量系统_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于智能机器人平台的远程温湿度测量系统设计与总结报告学院:孙越崎学院姓名:杨久龙葛垚张嘉睿二零一一年六月目录TOC o 1-5 h z HYPERLINK l bookmark8 摘要1 HYPERLINK l bookmark10 1.设计任务1. HYPERLINK l bookmark12 1.1命题设计要求1 HYPERLINK l bookmark14 1.2自主创新要求2 HYPERLINK l bookmark16 1.3系统功能3 HYPERLINK l bookmark18 2.系统硬件设计4 HYPERLINK l bookmark20 2.1总体设计4 HYPERLINK

2、 l bookmark22 上位机人机交互控制面板4 HYPERLINK l bookmark30 下位机智能机器人平台5 HYPERLINK l bookmark52 3.系统软件设计11 HYPERLINK l bookmark54 3.1软件总体功能11 HYPERLINK l bookmark56 3.2软件流程图11 HYPERLINK l bookmark60 4.系统调试155.总结167.附录17附录I系统原理图17附录II程序清单18 基于智能机器人平台的远程温湿度测量系统摘要在本次的电子设计训练中,我们采用智能机器人系统,搭载温湿度检测系统,以完成远程温湿度测量的需求。可实

3、现自主导航与自助避障的机器人系统为温湿度测量装置提供了多点测量的能力,同时智能机器人系统对用户控制操作模式的支持,也为该检测系统的运行提供了更大的灵活度。设计任务:制作一个远程温湿度测量仪,该测试仪具有温湿度测量和远程显示等功能。其结构框图如下:1.1命题设计要求a.基本要求I、通过可编程控制器或单片机、变换器和温湿度传感器采集温湿度数据并用LED上显示;II、温度误差1C,湿度误差1%,温度测量范围0C120C,湿度测量范围1%99%;III、可用电池供电;b.发挥部分I、设计红外二极管发射电路和红外接收电路,实现温湿度数据的准确可靠发送和接收;II、设计射频发射电路和接收电路,实现温湿度数

4、据的准确可靠发送和接收;III、最好采用微型化的温湿度传感器,无线传输距离5米;W、采用外构发射电路和接收电路,实现温湿度数据的准确可靠发送和接收;自主创新要求I、机器人平台可实现自主引导功能,即能够快速准确地跟随引导线运动;II、机器人平台可实现自主避障功能;III、机器人平台可实现对周围空间距离的探测,要求有效探测区为车体前方的半球面;W、提供一个友好的操作环境,使操作者可通过上位机完成机器人自主检测与人工操作双模式的切换,同时有效显示现场温湿度的采集信息。系统功能本系统目前设计有以下功能:1)智能机器人车载的温湿度检测系统能有效完成温湿度的采集;2)智能机器人能完成自主导航,自主避障,同

5、时可对现场障碍环境进行有效的检测,提高机器人对复杂环境的适应能力;3)上下位机之前可通过射频模块实现信息的有效传输。上位机在显示温湿度信息的同时,亦支持用户的自由操作,包括机器人系统人工操作与自主巡航模式的切换,以及机器人运行状态信息的实时检测。系统硬件设计2.1总体设计系统的硬件构成总体上包括两大部分:上位机人机交互控制面板与下位机智能机器人平台,两模块通过无线通信,完成下位机检测信号的传输与上位机控制命令的接收。示意框图如下:下位机智能机器人平台上位机人机交互控制面板图1系统总体框图人机交互控制面板可提供键盘输入与控制信息的实时显示,同时拥有与下位机交互的通信接口;智能机器人平台由采用直流

6、电机为驱动单元,使用经过扩展的双89S52为控制核心,携带多种传感器以完成现场参数检测与自保护功能,同时装备无线通信模块以完成与上位机的交互。上位机人机交互控制面板总图参见后附系统原理图部分。键盘模块键盘模块的原理图如下:图2键盘模块原理图考虑到上位机MCU需同时驱动液晶单元与无线通信单元,故键盘扫描采用专用ICCH452。采用4线串行接口的通信方式,完成5X5按键扫描。信息显示模块信息显示模块的原理图如下:U19VSEVDDVORSCS)RW(STD)ESCLK)12KX64图3信息显示模块原理图我们采用带有汉字字库的128X64液晶显示器为我们的信息显示单元。BLA引脚上串接可调电阻器以完

7、成显示亮度的调节。2.2.3无线通信模块无线通信模块的原理图如下图4无线通信模块原理图我们选用最大有效距离1000m,低功耗的APC-220集成无线传输模块,为我们的数据通信单元。该模块集成了专用的MCU单元,以完成信息编解码与纠错,其采用UART完成数据的输入与输出,可直接与51单片机的串行通信接口相连接,从而方便地实现上、下位机的透明通信连接。下位机智能机器人平台总图参见后附系统原理图部分。控制核心板模块控制核心板模块的原理图如下:S3PROIFFE11斗PEI口PM口PE斗PEWPEE0PB了ParallelBusPO.O(ADO)PO.1(AD1)P0.2(AD2)P0.3(AD3)P

8、0.4(AI4)PO.5(AD5)PO.6(AD6)PX7(AD7)EAVOTALEPROGPSEHP2.7(A15)P2.fi(A14)P2.5(A13)P2.4A12)P2.3(A11)K.KA10)居”P2.g,奔.P2.0CAS)1331211105VCCP1.0PO.O(ADO)Pl.lPO.1(AD1)Pl.2P0.2(AD2)P13PO.3(AD3)P0.4(AD4)Pl.5PO.5(AD5)Pl.5P0.6(AD6)Pl.7P0.(AD7)RSTEAVPPPj.CKRXD)ALEPROGP3.1(TXD)PSENP3.20NTOP2.7(A15)P3.3(INT1)P2.6(A

9、14)Pj.4to)P2.5(A13)Pj.5(T1)P2.4P3.O(RXD)P3.1(TXD)P3.2INT0)P3J0NT1)P3.4T0)P3.5CT1)P3.6(WR)P3.7(RXTAL1图5控制核心板模块原理图考虑到下位机可能的控制复杂度,我们采用双89S52为我们的控制单元。1)为了完成两片MCU之间高速有效的通信,同时兼顾硬件调试与模块未来的应用扩展,我们选择没有复用能力的P1口为两片MCU的内部并行总线,双向I/O口P1通过拨码开关实现物理连接,开关打开时,两片MCU之间可以通过并行端口,建立数据的联系,完成协同工作,开关断开时,两片MCU恢复相对独立性,以便于组装测试时的

10、分别调试。2)在硬件实现时,我们将两片MCU的P0P3引脚全部引出,同时在核心板上加入了8位的LED指示单元,以便于其他模块控制信号的分立测试。动力模块动力模块的原理图如下图6动力模块原理图由于车体的有效载荷较大,我们选择带有减速箱的直流电机为我们的动力单元。1)我们采用两节3.6V,500mAh的镍氢充电电池串联供电的方式,为电机提供约为6.0V的驱动电压,从而在允许的空间约束范围内为电机提供足够的动力。2)为了简化机械结构与控制方式,我们采用2WD+万向轮的机械布局,采用差速的控制的方式实现机器人的灵活转向。3)我们采用可支持高电压,大电流,内部集成双H桥的专用驱动芯片L298N完成电机的

11、驱动。考虑到电机工作对电源供电质量的影响,我们在动力电源的进线侧并联330uF+104的电容组,以减小电池供电电压的波动,同时采用3A的快速恢复二极管FR307为H桥提供续流通路,以保证电机拥有良好的四象限运行能力。4)为了使电机具有较高的动态性能,我们才用转速闭环控制的方式,使用霍尔传感器完成转速的检测。我们在电机轮缘上均匀布置4片磁钢,从而为转速检测提供足够的分辨率。传感器接口电路参见后述“传感器模块”。无线通信模块参见上位机设计中,关于无线通信模块的介绍。传感器模块下位机智能机器人平台拥有的传感器可划分为以下几个部分:距离检测与避障单元、循迹单元、温度检测单元、速度检测单元。距离检测与避

12、障单元我们采用超声波测距与红外接触开关避障的组合检测方案,实现在中等距离(1080cm)上的精确距离检测与检测盲区内的智能避障。1)超声波测距单元超声波测距单元的原理图如下:我们使用压电式超声波换能器完成超声波的发射与接收。超声波换能器内部有两个压电晶片和一个换能板。作为超声波发生换能器,当它的两极外加频率等于压电晶片的固有振荡频率的脉冲信号时,压电晶片会发生共振,并带动共振板振动产生超声波;作为超声波接收换能器,当共振板接收到超声波时,将压迫压电晶片作振动,在换能器两端产生固有振荡频率的方波信号。超声波发射电路主要由反相器驱动电路和超声波发射换能器构成。单片机输出的40kHz的方波信号一路经

13、两级反向器后送到超声波换能器的一个电极,另一路经三级反向器后送到超声波换能器的另一个电极,从而实现超声波的推挽式发射。为了提高驱动能力,增大超声波的发射强度,驱动信号输出采用两个反相器并联的方式。上拉电阻用以提高反相器的驱动能力,同时增加超声波换能器的阻尼,缩减超声波换能器的自由振荡时间。超声波接收电路由红外线检波接收ICCX20106A组成。考虑到红外调频信号的载波频率38kHz与测距用超声波频率相近,故我们选择该红外线检波接收IC制作接收电路。超声波在空气中的传播速度与环境温度有着如下的关系:v=331.45+0.61xT,v:m/s;T:oC由以上关系可知,当环境温度发生变化时,若按照超

14、声波传播速度恒定对传感器进行标定,在需要精确测距时,一定会产生很大的测量误差。因此,我们加入了温度传感器DS18B20,实时检测环境温度,在采集现场温度的同时,对超声波传感器的测量值进行补偿。2)红外避障单元红外避障单元的原理图如下图8红外避障单元原理图由于超声波换能器自由振荡现象的存在,因此该传感器对于较近的距离存在检测盲区。因此我们选用红外接触开关E18-D80NK来弥补在该长度上,距离检测的空白。该传感器可实现红外调频发射与接收,通过调节外部可调电位器,可以实现检测阈值的改变。我们总共为车体布置了三个接触开关,三个开关以车体正前方为中心轴对称布置,间隔75度,可以实现对前方150度扇区内

15、障碍物的有效避障。循迹单元循迹单元的原理图如下:图9循迹单元原理图OUT10UT41-4-1+4+VCCVEE2+3+OUT20UT3OUT1OUT44-1+4+VCCVEE2+3+OUT2OUT3红外发射/接收单元采用一体化的红外发射/接收管TCRT5000,为了保证足够的发射强度,同时减小整体功耗,故采用分时点亮,逐个扫描的驱动方式驱动红外发射管。1)红外发射管的限流电阻取100Ohm,以保证较大的发射功率。2)接收红外线的光敏三极管的集电极接运算放大器的反相输入端。运算放大器采用开环运行方式,作为电压比较器使用。运算放大器的同相输入端接10K可调电位器的抽头,变化电位器抽头处的分压值,可

16、以改变循迹模块的探测距离。3)传感器的输出端接入LED,方面可以稳定输出电平,保证数据读取的可靠性;另一方面便于传感器标定时工作状态的测试。循到黑线时,LED点亮,反之熄灭。温度检测单元温度检测单元的原理图如下:PC6DS18B2CQQQ图10温度检测单元原理图此单元完成现场温度检测的同时,亦为超声波测距模块所使用的超声波传播速度提供温度补偿。信号线接上拉电阻,以稳定输出电平,保证数据读取的可靠性。湿度检测单元湿度检测单元的原理图如下:vccDATA考虑到下位机监测机器人系统有限的硬件资源,我们选择了支扌3器DHT11作为我们的环境湿度变送器。该传感器的量程为10-达到微型化的要求。/测精度的

17、前提下,有效地减小传感器的体积,痒总线数据格式的集成温湿度传感90RHIZ测量精度为1%。能够在保证检2.3.4.5速度检测单元速度检测单元的原理图如下:图11速度检测单元原理图采用霍尔元件44E完成速度的检测。由于车体的有效负荷较大,因此转速相对较低,为了提高转速检测的分辨率,故在轮缘上均布4片磁钢,以提高每个转动周期内有效计数脉冲的个数。由于轮毂承重处为轮缘,并且轮胎是中空的,为了有效利用车体空间,故采用两片磁钢,分别贴于轮胎内外表面的方法,将磁钢固定于轮胎中央。实测证明,这样的固定方式,可以保证霍尔元件处于有效检测范围内,同时也不会影响轮胎的正常转动,保证了良好的检测效果。系统软件设计3

18、.1软件总体功能整个系统分为三个模块:上位通信模块,下位通信模块和下位执行模块。上位通信模块通过无线和下位通信模块交互,下位通信模块起到中间连接作用,和上位通信模块通过无线收到指令和发送数据其再和下位执行模块进行交互,起到指令的转接和信息的采集回送。其中,上位通信模块包括有键盘检测、12864显示和无线收发部分。下位通信模块包括有无线收发红外测距驱动、超声波测距驱动和dsl8b20测温部分。下位执行模块包括4路PWM驱动电机、循线红外头驱动和霍尔传感器测速部分。软件流程图在软件编写过程中,我们分为以下三个模块,思路流程图如下:3.2.1上位通信模块:3.2.2下位通信模块:1)下位通信模块的定

19、时中断部分:3.2.3下位执行模块:1)下位执行模块的定时中断:具体代码部分见附录。4系统调试系统调试的主要工作在于三个模块两两之间的通信以及操作指令的传递和解释执行的调试。在系统组装与调试的过程中,我们遇到了如下的几个主要问题:4.1RF模块选择高波特率进行通信时,通信不稳定:我们最初始终使用9600的波特率进行上位机与下位机之间的通讯。但是此时上位机与下位机之间的通讯极不稳定:表现为仅在极少数情况下,下位机在上电复位之后能够与上位机之间建立有效的通讯联系。我们考虑了可能的故障原因,最后注意到,我们在焊接下位机的控制板时,多处使用了用焊锡直接走线的锡桥接法。这样的接法,在较高的频率时,会为系

20、统引入很多的分布参数与寄生参数,从而导致高频通信的不稳定。解决方案:重新设置波特率,将波特率降低为1200,此时上下位机之间可以可靠通讯。4.2单片机端口内阻问题的研究:在最初设计红外端口脉冲点亮的电路时,考虑到这样一个事实:单片机的端口无法直接驱动诸如LED的负载,因此我们并未在需要饱和导通的三极管基极处设置限流电阻。第一次测试时,我们将三只光电探头的控制端接于有上拉电阻的P0口,另外三只接于P2端口,之后输出高电平使能光电探头,发现由P0口控制的三只光电探头完全烧毁,1只表现为三极管烧穿,2只表现为发射红外光的二极管烧毁,P2口控制的三只探头中有一只烧毁。查阅数据手册可知,若要使发射红外光

21、的三极管烧毁,至少需要使用100mA以上的电流驱动它,因此我们怀疑,单片机内部的上拉电阻可能并没有预想的那么大,因为只有在基极上出现极大的过电流,有lb近似等于Ic时,才会出现这样的情况。为了验证我们的假设,我们之后使用分立元件与万用表的电流档搭接了一个简单的测试电路实测结果表明,并接了上拉电阻的P0端口,其每个引脚等效的戴维宁电阻仅有50Ohm左右。这一结果,证实了我们的猜想。解决方案:在保证三极管能够饱和导通的前提下,为基极接入限流电阻。考虑到8050的电流放大系数约为100,故选择4.7K的限流电阻,为基极提供约为700uA的注入电流。之后的测试表明,此时传感器已经能够按照我们既定的目标

22、,正常可靠地工作。使用另一款电池时,电机无法正常动作:在整机测试时,刚好遇到了充电电池电压不足的情况。于是我们换用了两节单节电压为3.6V的电子称用电池,为下位机供电。实际测试时,发现两只带有减速箱的电机在刚启动的一刹那动作之后,便完全停止。最初我们怀疑是驱动模块出现故障。但是在控制板为之提供有效驱动信号,并且不带负载的前提下,实测发现两对输出引脚上的电平信号完全正常。我们因此推断,故障的原因可能是因为新的电池所能提供的驱动电流不足。之后我们减轻负载进行测试,将工作电机的数目由两只减少为一只,此时发现电机可以正常动作。由此亦知,我们之前的推断完全正确。解决方案:换用更大容量的电池,以为两只电机

23、提供可靠的驱动电流。换用了之前的模型用电池后,电机的工作完全正常。5总结无线遥控现场检测机器人主要针对一些特殊场合,如煤矿井下狭窄空间、浓烟多雾现场以及其他不方便人类进入的场地。作为检测机器人一类,应用领域更为广泛。无线遥控现场检测机器人通过无线通信方式对机器人进行控制,利用其配有的各类传感器进行信息采集,反馈有用信号给控制器,从而方便人们使用。本系统在遥控方面做到启停、加减速和方向等控制,能够循迹和避障,通过传感器对温度、速度和距离进行检测并反馈,上下位机间实现无线通信。无线遥控现场检测机器人除了广泛应用外,还有许多自身的优点。它可以面对比较恶劣的环境,如气体浓度较大、真空等。另外,它对信号

24、的采集较为方便和准确,便于分析和进一步处理。在必要情况下可以采集图像。附录I系统原理图附录II程序清单 上位机主程序代码:#include#include12864.h#includeCH452.h#includeAPC220.h#includedelay.h#defineucharunsignedchar#defineuintunsignedcharucharcodestrl=无线多功能;ucharcodestr2=任务小车;ucharcodestr_zhizuo=制作人;ucharcodestr_namel二葛垚;ucharcodestr_name2二杨久龙;ucharcodestr_na

25、me3二张嘉睿;ucharcodestr_space=;ucharcodestr_temperature二当前温度:00.0度;externuchartemperature2;/两个数据分别存储整数部分和小数部分ucharcodestr_distance二当前距障:0000mm;externuchardistance2;ucharcodestr_state二当前操作状态:;ucharkey_val;/按键值externunsignedcharAPC220_count;/测试externunsignedcharAPC220_Rx_Buffer;ucharspeed_l,speed_r;uchar

26、temp_bcd2;uchardis_bcd2;voidinitial(void)Init_12864();/初始化CH452中断接受键盘值Write_CH452(SYSTEM_SET_CH452);EX0=1;IT0=1;EA=0;/适当时候再开放Init_APC220();voidmain(void)uchari;initial();delayms(10);DispChinese(1,0,str1);DispChinese(2,1,str2);DispChinese(0,3,str_zhizuo);for(i=1;i=2;i+)delayms(200);delayms(200);DispS

27、tring(10,3,str_space);DispChinese(5,3,str_name1);delayms(200);delayms(200);DispString(10,3,str_space);DispChinese(5,3,str_name2);delayms(200);delayms(200);DispString(10,3,str_space);DispChinese(5,3,str_name3);delayms(200);delayms(200);delayms(200);ClearAS();/EA=1;/完成了基本的初始化显示信息开放总中断/APC220初始化要开串口中断/

28、进入控制界面DispString(0,0,str_temperature);DispString(0,1,str_distance);DispString(0,2,str_state);while(1)DispChar(2,3,key_val%16+0 x30);DispChar(1,3,key_val/16+0 x30);DispChar(9,0,temp_bcd1/10+0 x30);/温度值DispChar(10,0,temp_bcd1%10+0 x30);DispChar(12,0,temp_bcd0%10+0 x30);DispChar(9,1,dis_bcd1/10+0 x30);

29、/距离值DispChar(10,1,dis_bcd1%10+0 x30);DispChar(11,1,dis_bcd0/10+0 x30);DispChar(11,1,dis_bcd0%10+0 x30);DispChar(9,3,speed_l/10+0 x30);/转速值DispChar(10,3,speed_l%10+0 x30);DispChar(13,3,speed_r/10+0 x30);DispChar(14,3,speed_r%10+0 x30);DispChar(7,3,APC220_Rx_Buffer);voidINT_0(void)interrupt0key_val=Re

30、ad_CH452();SBUF=key_val; 下位机通信主程序代码:#include#includedistance_measure.h#includeAPC220.h#includedelay.h#includeds18b20.h#defineDIS_AND_TEM0 x01#defineSPEED_DATA0 x02#defineBIZHANG0 x4a#defineBIZHANG_STOP0 x42externbitflag;externfloatdistance;externuchardis_bcd2;externuchartimer2_count;externuchartemp_

31、data_bcd2;externunsignedchardataAPC220_Rx_Buffer;externbitAPC220_TI;voidInit(void)Init_APC220();Init_Dis_Temp();voidmain(void)unsignedchartemp,temp_bzh;Init();P0=0 xf0;delayms(10);while(1)P0=APC220_Rx_Buffer;P1=APC220_Rx_Buffer;if(flag=1)TR2=0;XiuZheng();distance=Distance_count();dis_bcd1=(ulong)dis

32、tance/100;dis_bcd0=(ulong)distance%100;flag=0;SBUF=DIS_AND_TEM;APC220_TI=0;while(!APC220_TI);SBUF=dis_bcd0;/整数部分和小数部分/发送完成标志/接受命令的LED显示/Pl为下位的通信口/标志测距可以开始APC220_TI=0;while(!APC220_TI);SBUF=dis_bcd1;APC220_TI=0;while(!APC220_TI);SBUF=temp_data_bcd0;APC220_TI=0;while(!APC220_TI);SBUF=temp_data_bcd1;ti

33、mer2_count=0;TR2=1;/避障控制if(APC220_Rx_Buffer=BIZHANG)while(APC220_Rx_Buffer!=BIZHANG_STOP)temp_bzh=P2;temp_bzh&=0 x07;P1=temp_bzh;/读P1口接受转速信息P1=0 xff;temp=P1;if(temp=0 x80)P1=0 x8f;while(0 x8f=P1);SBUF=SPEED_DATA;APC220_TI=0;while(!APC220_TI);SBUF=P1;P1=0 x8f;APC220_TI=0;while(0 x8f=P1);while(!APC220

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论