高空作业车智能预警系统开发及应用

高空作业车智能预警系统开发及应用

(清远供电局511500)

摘要:随着科技的发展,电力系统建设增添了许多高科技产品应对复杂的电力生产场地。在实际生产作业中,高空作业车是许多检修任务必不可少的工具,是工作顺利完成的重要保障,但是由于操作人员水平参差不齐(晚上灯光昏暗、视线不清、距离判断有误)或恶劣天气等不利因素影响,容易造成机械臂与带电设备安全距离不足,或误碰一次电力设备,严重时危及工作人员的生命安全和设备财产安全,加大作业风险,不利于安全生产。

本项目根据生产场地环境复杂、带电设备繁多等情况,在满足工作需要和安全规程的前提下,我们构想在高空作业车的机械臂和车斗必要处装设距离感应器,对带电设备进行距离预警,根据不同电压等级、设备带电与否设置不同预警距离,并综合各感应器信号开发智能预警系统;在后续试验中不断改进该系统,提高对线路等小型设备的感应精度,开发智能区别设备带电功能,并设置越限自动制动系统。

经实验证明,这套系统软硬件设计合理、抗干扰能力强、实时性良好,经过系统扩展和升级,可以有效地解决变电站或输电铁塔电力场所等其他狭小空间施工困难的情况,能产生可观的经济和社会效益。

关键词:高空作业车;距离感应器;智能预警

Abstract:Withthedevelopmentofscienceandtechnology,thepowersystemhasaddedalotofhigh-techproductstodealwithcomplexpowerproductionsite.Inactualproduction,high-altitudeoperationtruckismanymaintenancetasksessentialtool,isanimportantguaranteeforthesuccessfulcompletionofthework,butduetotheimpactoftheleveloftheoperatoruneven(nightlightsdim,blurred,distancejudgmenterror)orbadweathersuchasunsafefactor,easytocausethemechanicalarmandelectricequipmentsafetydistanceisnotenough,ormistakenlyhitapowerequipment,seriouslyendangerthestaff'slifesafetyandequipmentandpropertysafety,increasetheriskofoperation,isnotconducivetosafeproduction.Thisprojectaccordingtotheproductionsiteenvironmentcomplex,chargedequipmentvariety,underthepremiseofsatisfyingtheneedsandsafetyrules,weconceivedinthehighaltitudeworkingvehicleofthemechanicalarmandthebucketnecessaryloadingdistancesensors,onliveequipmentiswarningdistance,accordingtothedifferentvoltagelevels,theequipmentischargedornotsetdifferentwarningdistance,andthesensorsignaltodevelopintelligentearlywarningsystem;inthesubsequenttrialscontinuetoimprovethesystem,improvetheaccuracyofonlineandothersmalldevicesinduction,intelligencedevelopmentdifferenceequipmentchargedfeaturesandsettheautomaticbrakingsystem.

Theexperimentprovesthatthesystemhardwareandsoftwaredesignisreasonable,stronganti-interferenceability,real-timegood,afterthesystemexpansionandupgrade,caneffectivelysolvethesubstationsandtransmissiontowerpowerplacesothernarrowspaceconstructiondifficultsituation,cangenerateconsiderableeconomicandsocialbenefits.

Keywords:aerialvehicle;distancesensor;intelligentwarning.

1.绪论

超声波传感技术可以方便地应用在工业测、控系统,机器人感觉系统、智能预警系统中。人类的耳朵只能分辨频率为20至2万赫兹的声音,频率比人的听频范围高的声波就叫做超声波。不同的动物可听到的声波频率范围不尽相同。超声波对于蝙蝠更为重要,这种动物是靠超声波来“看”世界!蝙蝠先会发出一连串超声的尖叫声,声波遇到障碍物便会反射,就像我们向山谷拍手会听到回声一样。由于超声波的频率高,相对较少出现绕射现象,所以回声十分清晰。蝙蝠分析回声的方向和回传时间,便可以知道环境的精确图像。同样的道理,可以更改频率获得能在空气中传播的超声波,这样的声波遇到障碍物的时候返回,因此,通过分析时间间隔的大小可以获得本体与障碍物间的距离,这样的检测称为无接触测量技术,有广泛的运用场合。

因此利用超声波来预警尤其适用于监测、精确距离测量,或其它类型传感技术不能很好的发挥作用的应用领域,如监测透明或发光物体、充满雾气或尘埃的空气,或是喷射状液体,而且随着性能的提升,可以进一步取代其他的检测方式,以其便捷性和精度高等优势成为一种理想和被推荐的检测,有更广的应用前景。

目前,人们已经制成了许多超声波发生器。超声波发生器可以分为两大类:一类是用电气方式产生超声波,一类是用机械方式产生超声波。电气方式包括压电型、磁致伸缩型和电动型等;机械方式有加尔统笛、液哨和气流旋笛等。它们所产生的超声波的频率、功率和声波特性各不相同,因而用途也各不相同。目前较为常用的是压电式超声波发生器。

随着科学技术的快速发展,超声波将在智能预警系统中的应用越来越广。但就目前技术水平来说,人们可以具体利用的测距技术还十分有限,因此,这是一个正在蓬勃发展而又有无限前景的技术及产业领域。展望未来,高空作业车智能预警系统作为一种新型的非常重要有用的工具在各方面都将有很大的发展空间,它将朝着更加高定位高精度的方向发展,以满足日益发展的社会需求。无庸置疑,未来的高空作业车智能预警系统将与自动化智能化接轨,与其他的预警系统集成和融合,形成全面的智能预警系统。随着超声波技术的进步,高空作业车智能预警系统将从具有单纯判断功能发展到具有学习功能,最终发展到具有创造力。在新的世纪里,面貌一新的高空作业车智能预警系统将发挥更大的作用[1]。

1.1设计的目的及其意义

利用超声波作为定位技术是蝙蝠等一些无目视能力的生物作为防御及捕捉猎物生存的手段,同样,高空车智能预警系统借助超声波定位返回信号系统内部运算,继而发出预警信号提示工作人员,从而保护工作人员的人身安全。

超声波是由机械振动产生,可在不同介质中以不同的速度传播。而且超声波的速度相对于光速要小的多,其传播时间就比较容易检测。并且超声波具有定向性好、能量集中、在传输过程中衰减较小、反射能力较强等优点,超声波传感器可广泛应用于非接触式检测方法,因而高空车智能预警系统利用超声波测距是比较好的解决方案。

由于超声波易于定向发射、方向性好、强度易控制、与被测量物体不需要直接接触的优点,是作为测量带电距离的理想手段。通过分析超声波测距误差产生的原因,提高测量时间差到微秒级,我们设计的高空作业车智能预警系统能达到毫米级的测量精度。

1.2设计任务及要求

利用所学数字电子技术、信号处理、控制等技术,设计、制作并调试完成一个单片机最小化系统。在此基础上,将最小系统与综合实验开发平台上的超声波模块、显示模块进行正确的连接(如图1.1所示),使单片机可接收超声波模块输出的距离信号,并对其进行合理的处理后,在显示模块上实时显示超声波模块与障碍物的距离并报警。

具体要求:

系统设置,开机后显示欢迎界面,然后出现页面一:页面一第一行显示“作业区域电压等级选择”,第二行显示“系统使用说明”按钮。通过上、下、确定按键,选择“系统使用说明”按“确认”按键后进入页面二,页面二显示系统使用说明,通过“返回”按键返回上一页,即页面一;

图1.1系统连接示意图

系统设置:点击“作业区域电压等级选择”进入页面三,页面三上面由上到下排列有“500kV区域,220kV区域,110kV区域,35kV区域”四行可选择,选择其中一行后按“确认”键,进入页面四,系统开始探测,屏幕按1-12号顺序显示12个探头的测量距离;

页面四中选定任一序号探头,并按“确认”按钮,进入页面五,可通过选择“启动”或“停用”行,按“确认”按钮,来启动或停用该探头功能。初始默认为“启动”状态。距离数值最小的那个探头数值变红色,用于提醒使用者;

系统设置,“作业区域电压等级”:500kV,220kV,110kV,35kV——选择500kV档位时,探头探测距离值超过6米时不显示探头测量距离值并且不预警,5.1-6m时显示探头探测距离值,达到5.1米或少于5.1米时警告声音“哔哔...”;选择220kV档位时,超过4米不显示不预警,3.1-4m时显示探头探测距离值,达到3.1米或少于3.1米时警告声音“哔哔...”;110kV档位时,超过2.5米不显示不预警,1.5-2.5m时显示探头探测距离值,达到1.6米或少于1.6米时警告声音“哔哔...”;35kV档位时,超过1.5米不显示不预警,0.8-1.5m时显示探头探测距离值,达到0.8米或少于0.8米时警告声音“哔哔...”。

2.硬件电路的设计

2.1技术原理

在高空作业车的机械臂和车斗等12个必要处装设超声波测距模块,对带电设备进行距离预警,根据不同电压等级、设备带电与否设置不同预警距离,并综合各感应器信号开发智能预警系统,并设置越限自动制动系统。

2.2硬件设计

定做能满足探测要求的高精度超声波测距模块,各电压等级安全距离能探测到相应直径的导线为最低要求。探测距离为0.8-1.5米时,能探测到直径为2.0厘米的导线;探测距离为1.5-2.5米时,能探测到直径为2.4厘米的导线;探测距离为3.0-4.0米时,能探测到直径为2.8厘米的导线;探测距离为5.0-6.0米时,能探测到直径为4.6厘米的导线;探测角度达到90度左右。

超声波测距模块与连接线、控制电路与连接线都做成可插拔式,便于安装拆卸,推广到其他设备。预留一个输出端口,正负两个输出信号线,当达到警告“危险”时,能使小灯泡点亮。

3.系统软件的设计

高空作业车智能预警系统的软件设计主要由主程序、超声波发生子程序、超声波接收中断程序及显示报警子程序组成。我们知道C语言程序有利于实现较复杂的算法,汇编语言程序则具有较高的效率且容易精细计算程序运行的时间,而智能预警系统的程序既有较复杂的计算(计算距离时),又要求精细计算程序运行时间(超声波测距时),所以控制程序可采用C语言和汇编语言混合编程。

3.1.软件开发环境

开发环境是指编写程序所需的工具和一些其它的辅助软件工具,这里重点介绍Keil软件以及汇编语言。

在研制单片机应用系统时,汇编语言是一种常用的软件工具,它能直接操作硬件,指令的执行速度快。但其指令系统的固有格式受硬件结构的限制很大,难以编写与调试,可移植性也差。随着单片机硬件性能的提高,工作速度越来越快,因此在编写单片机应用系统程序时,更着重于程序本身的编写效率。所以,KeilC51已成为目前最流行的开发单片机的软件工具。与汇编语言相比,KeilC51在功能、结构、可读性、可维护性上有明显的优势,因而易学易用。另外,使用KeilC51可以缩短开发周期,降低开发成本,可靠性高,可移植性好。

在软件编写部分主要用了Keil软件对单片机进行编写程序,用的是KeiluVision3软件,该软件是用C语言对单片机进行编写程序,能够自动由高级语言程序转成汇编语言,并通过ISP下载到单片机中。KeilC51标准C编译器为8051微控制器的软件开发提供了C语言环境,同时保留了汇编语言代码高效、快速的特点。C51已被完全集成到uVision3的集成开发环境中,这个集成开发环境包括:编译器、汇编器、实时操作系统、项目管理器和调试器。KeiluVision3可为它们提供单一而灵活的开发环境,它的windows集成开发环境KeiluVision3的强大功能和具体使用方法。在KeiluVision3中,可以完成从源程序编写、编译、连接定位到目标文件的仿真调试等全部工作。KeiluVision3是一种基于windows的多窗口软件仿真器,它可以在完全没有单片机硬件的情况下模拟调试各种应用程序,即使是对单片机内部特殊集成功能的编程。

3.2软件程序设计要求

<1>开机后显示欢迎界面,然后出现页面一:页面一第一行显示“作业区域电压等级选择”,第二行显示“系统使用说明”按钮。通过上、下、确定按键,选择“系统使用说明”按“确认”按键后进入页面二,页面二显示系统使用说明,通过“返回”按键返回上一页,即页面一。

<2>点击“作业区域电压等级选择”进入页面三,页面三上面由上到下排列有“500kV区域,220kV区域,110kV区域,35kV区域”四行可选择,选择其中一行后按“确认”键,进入页面四,系统开始探测,屏幕按1-12号顺序显示12个探头的测量距离。

<3>页面四中选定任一序号探头,并按“确认”按钮,进入页面五,可通过选择“启动”或“停用”行,按“确认”按钮,来启动或停用该探头功能。初始默认为“启动”状态。距离数值最小的那个探头数值显示“危险”字符,用于提醒使用者。

图2程序界面视图

4.调试过程

4.1使用仪器设备

整个测距系统由单片机最小系统、实验开发平台(其中用到超声波收发模块、液晶屏显示模块、按键模块)、PC机、跳线若干根组成。

4.2调试中的问题及解决方案

根据实际情况可以修改超声波子程序每次发送的脉冲宽度和两次测量的时间间隔,以适应不同距离的测量需要。根据所设计的电路参数和程序,测距仪能测得范围为1.5~5m,当超过范围时发生LED亮灯报警,同时设置启动自动复位,使其重新测距。

4.3报警功能

由于报警时要使LED灯闪烁,即需高电平与低电平交叉。其中在高低电平转换时需要延时,我们错误的将报警子程序放入主程序,导致液晶屏不能正常的显示所需要的数值。将报警子程序以定时器1的方式放入中断函数或将动态扫描程序放入定时器1,都可解决问题。经过多次尝试,以及大家地讨论终于成功写出了报警系统的亮灯功能。

4.4成果的实施效果与推广

从上表中可以看出:采用高空作业车智能预警系统进行探测后,能准确探测到探头到设备的距离,误差在运行范围之内,当少于逻辑设定范围,系统能自动预警,说明本系统可以精确探测到高压线路,有效提高在不利的环境、人员因素下的作业安全性,降低人身和设备风险;有助于操作人员提升工作效率,保障安全顺利完成任务。

5.总结

高空作业车是许多检修任务必不可少的工具,由于操作水平参差不齐或恶劣天气等不利因素影响,易造成机械臂与带电设备安全距离不足,危及设备人员安全。项目立足于有效提高作业车安全性,以电子电路设计、单片机编程技术为依托,实现以超声波测距技术作测量基础手段的智能预警系统。系统根据不同电压等级设置不同的距离预警逻辑,当任一高精度探测模块反馈测量值低于告警阈值时,系统逻辑立即判断为“危险”并触发越限声光警示模块,后续增加继电器与高空作业车控制系统相连,更能实现越限自止效果。

项目成果在清远市七星岗等站成功应用,对240mm¬¬2等110kV线路小型设备的预警效果可达设计要求,极大提升不利因素下作业安全性,提高电网风险管控能力。项目立足工程实际,填补了高空作业车智能预警的空白领域,在变电站等区域有极大推广前景。

完成单位:广东电网公司清远供电局变电部检修班

图3智能越限制动系统

图4程序界面视图

致谢

2015年的职工创新项目研发即将结束,感谢评审团的专家们和我们班的老师傅们,尤其是温师傅的耐心指导和技术支持。在本次职工创新项目设计过程中,本人遇到了很多困难,全靠我们班的师傅们不厌其烦地教导,帮助我们最终完成了此次设计。

其次,感谢清远供电局提供这么好的机会和资金上的帮助,感谢这篇论文所涉及到的各位学者。本文引用了数位学者的研究文献,如果没有各位学者的研究成果的帮助和启发,我将很难完成本篇论文的写作。

图5预警系统测试图

最后,再次对关心、帮助我的师傅和同事表示衷心地感谢!

参考文献

[1]沙占友.集成化智能传感器原理与应用[M].北京:电子工业出版社,2004年

[2]史谚宾.基于AT89C2051的超声波测距仪设计[J].北京:航空航天出版社,2006年

[3]赖寿宏.微型计算机控制技术[M].北京:机械工业出版社,2002年

[4]陈光东.单片机微型计算机原理与接口技术(第二版).武汉:华中理工大学出版社,1999年4月

[5]张谦琳.超声波检测原理和方法.北京:中国科技大学出版社,1993年10月

[6]路锦正,王建勤.超声波测距仪的设计[M].成都:成都理工大学,1999年

[7]基于单片机智能系统的设计与实现[M].北京:人民邮电出版社,2005年

[8]吴研.超声波倒车雷达系统设计[J].北京:北京理工大学,2005年

附录I高空车智能预警系统电路原理图

超声波测距电路原理图

附录II高空车智能预警系统PCB图

超声波测距电路版图

附录III高空车智能预警系统程序清单

//超声波模块显示程序

#include<reg52.h>//包括一个52标准内核的头文件

#defineucharunsignedchar//定义一下方便使用

#defineuintunsignedint

#defineulongunsignedlong

sbitTx=P3^3;//产生脉冲引脚

sbitRx=P3^2;//回波引脚

sbitWarning_LED=P1^7;

sbitkey=P1^6;

ucharcodeSEG7[10]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};

//数码管0-9

uintdistance[4];//测距接收缓冲区

ucharge,shi,bai,temp,flag,outcomeH,outcomeL,i;//自定义寄存器

bitsucceed_flag;//测量成功标志

//函数声明

voidconversion(uinttemp_data);

voiddelay_20us();

voidpai_xu();

voidmain(void)//主程序

{

uintdistance_data,a,b;

ucharCONT_1;

i=0;

flag=0;

Tx=0;//首先拉低脉冲输入引脚

TMOD=0x11;//定时器0,定时器1,16位工作方式,timer0用显示

TR0=1;//启动定时器0

IT0=0;//由负沿触发外部中断

ET0=1;//打开定时器0中断

EX0=0;//关闭外部中断

EA=1;//打开总中断0

while(1)//程序循环

{

EA=0;

Tx=1;

delay_20us();

Tx=0;//产生一个20us的脉冲,在Tx引脚

while(Rx==0);//等待Rx回波引脚变高电平

succeed_flag=0;//清测量成功标志

EX0=1;//打开外部中断

TH1=0;//定时器1清零

TL1=0;//定时器1清零

F1=0;

TR1=1;//启动定时器1

EA=1;

while(TH1<30);//等待测量的结果,周期65.535毫秒

TR1=0;//关闭定时器1

EX0=0;//关闭外部中断

if(succeed_flag==1)

{

distance_data=outcomeH;//测量结果的高8位

distance_data<<=8;//放入16位的高8位

distance_data=distance_data|outcomeL;

//与低8位合并成为16位结果数据

distance_data*=12;//因为定时器默认为12分频

distance_data/=58;//微秒的单位除以58等于厘米

}//为什么除以58等于厘米,Y米=(X秒*344)/2

//X秒=(2*Y米)/344==》X秒=0.0058*Y米==》厘米=微秒/58

if(succeed_flag==0)

{

distance_data=0;//没有回波则清零

}

distance[i]=distance_data;//将测量结果的数据放入缓冲区

i++;

if(i==3)

{

distance_data=(distance[0]+distance[1]+distance[2]+distance[3])/4;//求平均

pai_xu();//按从小到大的顺序放

distance_data=distance[1];

a=distance_data;

if(b==a)CONT_1=0;

if(b!=a)CONT_1++;

if(CONT_1>=3)

{

CONT_1=0;

b=a;

conversion(b);

}

i=0;

}

}

}

//外部中断0,用做判断回波电平

voidINT0_()interrupt0//外部中断是0号

{

outcomeH=TH1;//取出定时器的值

outcomeL=TL1;//取出定时器的值

succeed_flag=1;//至成功测量的标志

EX0=0;//关闭外部中断

}

//定时器0中断,用做显示

voidtimer0()interrupt1//定时器0中断是1号

{

TH0=0xfd;//写入定时器0初始值

TL0=0x77;

switch(flag)

{

case0x00:P0=ge;P2=0x7f;flag++;break;

case0x01:P0=shi;P2=0xbf;flag++;break;

case0x02:P0=bai;P2=0xdf;flag=0;break;

}

}

//显示数据转换程序

voidconversion(uinttemp_data)

{

ucharge_data,shi_data,bai_data;

bai_data=temp_data/100;

temp_data=temp_data%100;//取余运算

shi_data=temp_data/10;

temp_data=temp_data%10;//取余运算

ge_data=temp_data;

//LED报警程序

if((bai_data==0)&(shi_data<10)&(ge_data>0))

{

Warning_LED=0;

}

elseif(bai_data>4)

{

Warning_LED=0;

}

elseWarning_LED=1;

//按键复位程序

if(key==0)

{

bai_data=0;

shi_data=0;

ge_data=0;

}

bai_data=SEG7[bai_data];

shi_data=SEG7[shi_data]&0x7f;//小数点

ge_data=SEG7[ge_data];

EA=0;

bai=bai_data;

shi=shi_data;

ge=ge_data;

EA=1;

}

voiddelay_20us()

{

ucharbt;

for(bt=0;bt<60;bt++);

}

voidpai_xu()

{

uintt;

if(distance[0]>distance[1])

{t=distance[0];distance[0]=distance[1];distance[1]=t;}

if(distance[0]>distance[2])

{t=distance[2];distance[2]=distance[0];distance[0]=t;}

if(distance[1]>distance[2])

{t=distance[1];distance[1]=distance[2];distance[2]=t;}

}

标签:;  ;  ;  

高空作业车智能预警系统开发及应用
下载Doc文档

猜你喜欢