液压抓斗控制器在环仿真系统设计与测试

2018-11-28 09:05,,,,
计算机测量与控制 2018年11期
关键词:上位总线液压

,,,,

(上海工程技术大学 汽车工程学院,上海 201620)

0 引言

随着社会的日益发展,液压抓斗被广泛的使用在工程应用中。液压系统是一个典型的高度非线性系统,系统各回路之间相互干涉,使其失效形式、故障机理复杂多样[1]。为了更好的检测液压抓斗的工作状态,目前市场上已经研制出了液压抓斗智能管理系统,在液压抓斗智能管理系统中涉及到单片机数据采集电路、开关按钮以及各类传感器。由于在现场安装设备时,时常出现由于设备本身的各种问题导致现场安装失败,浪费大量的时间、人力和物力。目前对液压设备故障的诊断主要依靠维修人员的经验和相关仪器对设备的检测。这种诊断方式太过于依赖维修人员的主观经验,并且诊断过程具有一定的随机性,既费时又费力。因此设计一套液压抓斗控制器在环仿真与检测系统就显得非常重要。该系统采用有线通信、无线通信和串口通信相结合的方式进行模拟数据的发送、模拟数据的传输和模拟数据的接收及验证。通过上位机对收发数据的对比看是否相同或相近来判断所检测的液压抓斗控制器是否存在故障。

1 液压抓斗控制器的主要组成

液压抓斗控制器主要由安装在液压抓斗上的现场工作参数检测与处理模块,控制室参数显示模块和PC机远程监控等三大部分组成。具体组成原理如图1所示。

图1 液压抓斗控制器主要组成原理图

2 液压抓斗控制器及在环仿真与测试系统工作原理

2.1 液压抓斗控制器工作原理

在抓斗工作时,现场工作参数检测与处理模块采集液压系统、电机系统、环境与抓斗姿态等相关数据,通过无线或有线通讯方式,将采集的数据传输至控制室参数显示模块。通过控制室参数显示模块传输给指定的PC机远程监控终端,以便于对抓斗的工作状况进行及时监控;在抓斗部分系统处于故障或者不正当操作时,及时向控制室工作人员报警。

2.2 在环仿真与测试系统工作原理

在环仿真与测试系统主要由模拟量发送模块、CAN通信模块、ICAN-4404模拟量输出模块、ZigBee发送模块、ZigBee接收模块、单片机数据处理模块和数据校验等模块组成,其中模拟量发送模块、模拟量接收模块和数据验收模块都在上位机中通过Microsoft Visual Studio 2013编译环境中的MFC模块编译完成。液压抓斗在环仿真与测试系统主要用来模拟的物理量有:压力、回油温度、称重质量、油箱液位、电机温度。

在PC端上位机和ICAN-4404模拟量输出模块之间使用CAN总线进行模拟数据的传输,将模拟数据以高位和低位的形式发送给ICAN-4404模拟量输出模块,ICAN-4404模拟量输出模块将接收到的数据转化为电压或者电流等模拟物理量,通过单片机电路中的数据采集模块处理以后再通过单片机上的ZigBee模块进行转发。在PC端上位机中编写有数据接收模块,利用串口通信对单片上ZigBee模块转发的数据进行接收,此时PC端需要连接一个ZigBee模块来实现该过程。在PC端上位机中也编写有数据验证模块,将通过CAN总线发送出去的模拟数据和通过PC端ZigBee接收到的模拟数据进行对比比较,当收发数据相同或是相近时,判断所检测的设备合格,在上位机界面上显示检测成功,当收发数据不同或是相差较大,判断所检测的设备不合格,在上位机界面上显示检测失败。液压抓斗控制器在环仿真与检测系统工作原理如图2所示。

图2 系统工作原理图

3 CAN总线通信技术

CAN总线技术是当今自动化领域技术发展的热点,液压系统工作参数的实时监测依靠稳定和可靠的数据传输[2]。CAN总线是一种高性能、高可靠性、易开发且成本低的串行通信现场总线,由于其优越的性能被广泛用于各个领域[3]。液压抓斗控制器在环仿真与检测系统依靠CAN总线技术实现数据可靠且稳定的传输。CAN总线是一种有效支持分布式控制或实时控制的串行通信网络,CAN总线通信速率可达到1 Mb/s,最大通信距离可达10 km[4]。液压抓斗控制器在环仿真与检测系统中,上位机就是通过USB-CAN模块将模拟数据发送给ICAN-4404模拟量输出模块,最终实现模拟数据的发送。

4 ZigBee通信技术

ZigBee是一种短距离低速传输的无线网络协议[5]。ZigBee技术是近年来新兴的一种无线传感网络技术,主要用于距离短、功耗低且传输速率不高的各种电子设备之间进行数据传输以及典型的有周期性数据、间歇性数据和低反应时间数据传输的应用。ZigBee网络节点按功能分为三大类:协调器节点、路由器节点、终端节点[6]。本次设计中所用的模块为ZigBee集成模块。

5 系统硬件设计

本次设计中用到的数据采集电路,有线通信模块是以英飞凌公司生产的XC2234微控制器为基础进行设计的。XC2234微控制器是一种16/32位微控制器, 含有通用串行接口、MultiCAN接口和两个可以实现同步的A/D转换器,提供多达16个通道,可以满足本次设计要求。

5.1 电源模块

图3为电源电路图,为了使电源正负极接反时电路不导通,从而达到保护后级电路的目的,将一个PMOS管加在了电源输入端。由于硬件系统传感器的驱动电压最低为9 V,所以选用了LM2576开关型降压稳压器,它的电压可调节。系统设计时加入了两个电阻进行配合,使得LM2576输出电压为9 V。由公式:

VOUT=VREF(1+R9/R8)VREF=1.23V

R8取值在1~5 K之间,取1 K,R9的值经计算得6.8 K。通信模块供电电压为5 V,利用LM117-5低压差线性调压器使得电压降低到5 V为通信模块供电;

图3 电源电路

5.2 CAN通信电路

Infineon XC2234微控制器上集成有MultiCAN模块,具有6个全功能CAN节点,各个节点均可以通过网关功能进行数据、远程帧的交换或独立工作。为了增强CAN总线通信的抗干扰性和可靠性,在CANH和CANL之间接入一只120 Ω的保护电阻。CAN通信电路如图4所示。

图4 CAN外围收发器电路

5.3 ZigBee通信电路

系统设计时使用的ZigBee模块为上海顺舟电子科技有限公司的SZ05-ADV-TTL无线串口通信模块。该模块抗干扰能力强且通信距离较远。微控制处理器与ZigBee模块以异步URTA模式进行通信,所以仅仅将模块的发送(TXD)及接收(RXD)引脚和控制器两端进行连接,即可以实现通信。ZigBee外部电路如图5所示。

图5 ZigBee外围电路

5.4 油箱液位检测电路

系统设计时,油箱液位信号发送的是开关信号,处理电路如图6所示。由于MCU的I/O输入端口电压输入范围在0~5 V之间,所以接入BAT54S肖特基二极管达到钳位处理的目的,输入电压高于+5 V时,电压被钳位在+5 V,电压低于0 V的时候,电压被钳位在0 V。

图6 液位开关电路

5.5 回油温度与压力检测电路

系统对温度和压力信号进行采集时,选用的是3 200系列高压OEM压力变送器,由美国Gems公司提供。此款传感器测温范围-40~125 ℃,测压范围0~250 bar,满足系统设计要求。回油温度和压力采集电路中原理图如图7所示。传感器与电压信号输出,所以在AD转换前再使用一个电压跟随器用来提高带负载的能力,使温度和压力信号稳定输出。

图7 回油温度与压力采集电路

6 系统软件设计

6.1 通信协议设计

数据有线传输时,主控制器等待CAN进入中断。程序进入中断以后,通过CAN收发器的CANH和CANL进行数据的发送和接收。上位机中的模拟数据以CAN报文的形式发送给ICAN-4404模拟量输出模块,报文格式见表1,数据帧类型采用标准帧,帧ID根据ICAN-4404模拟量输出模块上的标准ID手动设置旋钮来定义为0x201和0x202。不同的ID代表发送不同的参数。

表1 CAN通信中的帧格式定义

表1帧格式定义中的标准帧指的是所发送的数据均用标准帧,不用扩展帧。标准帧的ID长度是11位,也即是帧ID的范围是000-7FF。在本次设计中,发送的格式为“0X201 XX XX XX XX XX XX XX XX”共11位。在标准帧的11位长度中,帧ID长度占3位,模拟数据位占8位。由于每项数据占据两位,分别为一个低位和一个高位。因此发送一帧数据最多发送4项模拟数据。

模拟数据发送模块发送的模拟数据类别分为A点压力、B点压力、G点压力、回油温度、液压抓斗左臂抓取质量、液压抓斗右臂抓取质量、油箱液位和电机温度等八项。系统中用到了两个ICAN-4404模块,每个模块传输4路数据。一个模块传输A点压力、B点压力、G点压力和回油温度信号。另一个模块传输左臂抓取质量、液压抓斗右臂抓取质量、油箱液位和电机温度信号。按照顺序将发送的每项模拟数据经过计算转换化为十六进制按照高字节在前,低字节在后的模式通过USB-CAN发送给ICAN-4404模拟量输出模块。

数据进行无线传输时,ZigBee模块首先把数据写入到TXD中,再从RXD中被读出。系统设计时设定节点每隔1 000 ms将液压抓斗在环仿真与测试系统发送的模拟数据打包发送给上位机ZigBee节点,其中由于温度变化较慢,所以回油温度的模拟数据设定每隔3 000 ms发送一次。发送的帧格式见表2。上位机端的ZigBee节点地址必须为(0x000),而采集端地址可为0x0001-0xFFFF范围中的任意数值,此处节点地址占两个字节;设备号的发送是为了帮助接收端区分所接收数据是哪台设备发送的,设备号占一个字节。为了区分不同类型的检测参数,还使用了标识码,标识码占用一个字节;发送的每一项模拟数据均采用低字节在后、高字节在前的模式,每项数据共占两个字节。数据在进行无线传输过程中,可能会受到外界环境影响,造成数据包丢失。上位机接收到数据后,首先对帧头帧尾进行判断,检测接收的数据是否是完整的,如果不完整,则舍弃接收的该帧数据,否则再根据数据的标识符和位数来判断所接收数据的类型并进行相应的解析和显示。

表2 ZigBee的帧格式定义

根据表2中的定义,实际接收的一帧数据为“AA CC 00 08 F2 09 05 F1 05 F0 02 0D 05 AA 55”,其中AA CC为帧头,00为节点地址,08为设别编号,F2为标识码,09 05 F1 05 F0 02 0D 05为采样数据,AA 55为帧尾。

6.2 软件中数据采集部分的设计

1)要实现对传感器采集到的信号或接收到的模拟信号进行处理需要设计驱动底层电路。

2)对采集到的数据或接收到的模拟数据进行滤波处理,然后通过ZigBee无线通信模块将数据转发给上位机。

数据采集系统上电后,首先对硬件电路进行初始化,进而对串口和CAN收发器进行初始化。数据进行无线发送时,中继路由节点ZigBee发出申请信号,请求加入网组,ZigBee中心节点对接收到的申请信号进行认证,信息认证成功后,中继路由节点才被允许回复请求发送数据的命令。路由节点收到该命令后,MCU将保存在缓冲区中的数据通过U2C0_SSC_vSendData()串口数据发送函数发送至中继路由节点接收端,再由路由节点通过无线传感网络发送至中心节点。数据有线发送时,CAN接收中断收到PC端数据发送请求后,通过CAN_vTransmit()发送函数将数据缓冲区中的数据以设计好的CAN报文形式发送至PC端CAN节点。通信流程如图8所示。

图8 ZigBee、CAN通信流程图

6.3 液压抓斗控制器在环仿真与检测系统软件设计

液压抓斗控制器在环仿真与检测系统共模拟发送8项参数数据,分别为A点压力PA、B点压力PB、G点压力PG、回油温度、左臂抓取质量、右臂抓取质量、油箱液位和电机温度八项。液压抓斗控制器在环仿真与检测系统中的软件程序设计主要用于通过CAN总线对模拟数据的发送和通过ZigBee网络对数据的接收,在对数据的接收时使用了具有实时性的串行通信。Visual Studio中串行通信方法的实时性体现在两个方面:通信响应的实时性即对到达串口的数据的响应快慢,以及从从串口缓冲区接收数据的快慢[7]。上位机界面如图9所示。

图9 上位机界面

7 系统调试与运行

系统上位机发送信息界面如图10所示。

图10 上位机发送数据界面

系统上位机数据发送数据界面如图11所示。

图11 系统上位机数据发送界面

CAN总线对经过MCU处理过的ZigBee基站解析的数据发送到上位机[8]。系统上位机数据验证模块界面如图12所示。

图12 上位机数据验证模块界面

在系统调试时,设定A、B、G三点的压力值最小为0 Bar,最大值为250 Bar,发送的步长(此处步长即为每一次数据变化的增量)为1,回油温度最小值设定为-40 ℃,最大值设定为125 ℃,发送步长也为1,四类数据发送的时间间隔设定为每50 ms发送一次。A、B两臂的称重质量范围最小值设为0 kg,最大值设定为20 000 kg,发送步长为10,发送时间间隔设定为1 000 ms发送一次。油液液位和电机温度两者都是开关量,设定发送低电平(数字0),发送时间间隔设定为50 ms发送一次。由图12上位机数据验证模块界面可知,对于各类发送数据的发送,偏差很小,由于利用了无线和有线的发送模式,所有在时间上稍有延迟,设计时设定压力信号数据偏差在5 Bar以内,回油温度

偏差在3 ℃以内,抓取净重和抓取毛重在100 kg以内,系统判定检测结果为检测成功。经过系统的调试与运行,测试得到所设计的液压抓斗控制器在环仿真与测试系统运行状态良好,工作状态稳定。

8 结束语

本文利用XC2234芯片设计开发了基于ZigBee网络和CAN总线的液压抓斗控制器在环仿真与检测系统。系统上位机数据验证模块界面。采用上位机发送模拟数据,利用CAN总线发送给ICAN-4404模拟量输出模块,之后再传输给单片机数据处理模块,处理后的数据经过ZigBee无线网络打包转发出去,通过上位机上的ZigBee接收,经过上位机接收处理并显示到上位机界面。通过接收数据和发送数据的对比来检测液压抓斗智能管理系统中的设备是否合格。经过系统平台的搭建和测试,收发数据近似相等,相对误差在很小的范围内,证明了液压抓斗控制器在环仿真与检测系统能很好的工作。

猜你喜欢
上位总线液压
基于仿真的液压传动课程教学改革
《机床与液压》投稿要求
基于Stateflow的民机液压控制逻辑仿真与验证
一种基于CAN总线的误码测试方法
特斯拉 风云之老阿姨上位
DCOM在混合总线自动测试系统的应用
基于AVR单片机的RS485工业总线开发设计
基于ZigBee和VC上位机的教室智能监测管理系统
小型车用液压混合动力系统的开发
宝马F02车总线系统