车载钻机CAN总线数据记录仪设计
2015-01-25翁寅生田宏亮
赵 良,翁寅生,田宏亮
(中煤科工集团西安研究院有限公司 陕西 西安 710077)
车载钻机是一种将工作装置高度集成在车辆底盘上的多功能钻机,专用于煤层气抽采及地面施工兼有高空作业。车载钻机采用了机电液一体化技术,配备了电子控制系统,其监测参数主要包括柴油机、钻进系统以及辅助系统的工作参数,参数种类多,系统虽能够实时显示,但不具备后台保存、查询和分析的功能,不利于作业期间故障分析、偶发事故的原因判别以及后期升级优化。目前市场上的相关设备主要存在以下三方面问题:一是产品已经固化,不易扩展,随着容量变大,成本、体积及供货周期都有明显增加;二是数据不能循环覆盖,存满即失去作用;三是基本都为通用产品,不适合车载钻机的工作环境使用要求。
车载钻机电控系统采用了CAN(Controller Area Network,控制器局域网)通信总线,它是一种可以解决众多测量控制部件之间数据交换的串行通信现场总线,具有可靠性、实时性强、成本低、传输距离远、传输速度高的优点,其应用范围非常广[1]。
基于此,设计一种车载钻机专用的CAN总线数据记录仪,能根据用户需要进行配置和记录参数,对车载钻机具有实际使用意义。
1 系统总体构成
如图1中所示,系统总体由车载钻机电控系统、数据记录仪及计算机构成。车载钻机发动机参数、车身各传感器及各控制单元的状态参数都可通过CAN总线网络与电控系统的控制器进行通讯,处理后将数据通过CAN总线发送到显示器,方便工作人员操作;CAN总线数据记录仪由数据记录仪硬件和计算机软件组成,其硬件连接在CAN总线网络中,并由电控系统的电源为其供电,用户根据灵活的配置要求将所需要的通信参数进行配置并由记录仪进行记录,并通过SPI总线保存在SD卡中;用户可以通过计算机的USB接口与数据记录仪进行通信,根据上位机软件设定记录时间间隔及过滤ID参数等,同时计算机可将SD卡中的数据以Excel或记事本打开进行查询和分析,实现对车载钻机的某段时间内作业参数数据进行再现。
图1 系统整体构成Fig.1 Composition of the system as a whole
2 数据记录仪硬件设计
2.1 硬件电路结构
CAN总线数据记录仪的硬件电路由CAN通信模块、USB通信模块及SD卡存储模块组成,其组成框图如图2所示。为了增强数据记录仪的实时性,提高大量数据处理和后期扩展能力,主控制芯片选用NXP公司生产的基于第二代ARM CORTEX-M3内核微控制器的LPC1768,它是一种针对嵌入式系统应用而设计的高性能、低功耗32位微处理器,适用于仪器仪表、工业通讯、电机控制等领域,其工作频率可达100 MHz,内部集成CAN控制器、USB控制器、SPI接口等外设组件[2],可减少各模块外围电路的设计工作量;为了与CAN总线进行通信,在CAN通讯模块中必须有CAN收发器进行数据的发送与接收。收发器是协议单元(控制器)与物理传输介质(总线电缆)之间的链路,除驱动功能(总线和电控单元之间的信号收发)外,收发器还具备广泛的保护和故障诊断功能。CAN收发器选用NXP公司生产的高速PCA82C250与PCA82C251的升级产品TJA1050,它是CAN协议控制器和物理总线之间的接口,可以为CAN控制器提供差动接收性能,具有CANH和CANL的最佳匹配,使电磁辐射更低[3],其工作电压与主控制芯片使用的电压一致,都为3.3 V,分别由电源模块独立供电。
图2 硬件结构框图Fig.2 Diagram of hardware structure
2.2 硬件电路设计
在工业现场的数据采集中,现场情况比较复杂,各节点之间存在很高的共模电压,容易造成总线接口无法通讯,甚至出现损坏仪器等状况,因此有强干扰或者性能需求下,必须对通讯节点实现电气隔离。数据记录仪设计有CAN总线、USB总线及SPI总线3种通信总线接口,同时车载钻机施工技术条件高、作业时间长并伴随有振动、噪音、电磁、雨水等,可能影响到通信质量甚至丢失数据,因此在设计中也必须考虑数据记录仪在使用中对环境的适应性及可靠性,硬件接口电路如图3所示。
图3 硬件接口电路图Fig.3 Circuit diagram of hardware interface
CAN总线是一种可以解决众多测量控制部件之间数据交换的串行数据通讯网络,为了增强通信链路的抗干扰问题,隔离器件选用Toshiba公司生产的6N137光耦合器,最高速率10 Mbps,工作温度一般为0℃到70℃,隔离电压2 500 Vrms,其是使用光束来隔离和保护检测电路以及在高压和低压电气环境之间提供了一个安全接口[4],电路中便加在TJA1050及主芯片LPC1768之间进行隔离,同时在CANH和CANL之间接120Ω电阻,此终端电阻与电缆阻抗紧密匹配,确保信号不会在CAN总线之间反射,提高了CAN节点的稳定性,也避免影响主控芯片的正常运行。
USB是计算机及外设的标准接口,首选串行接口,已经得到各行业的充分认可,虽然在工业通讯标准中还配备有RS232接口,可以简单实现所需要的鲁棒隔离,但其速度低,接口切换复杂、热插拔容易损坏,因此使用USB作为首选串行接口,其传输速度远远大于RS232,速率能提高到1 Mbit/s以上,即插即用,性价比高,通用性强;同时数据记录仪作为一种移动存储设备,USB接口设计可以更好的实现记录仪的实用性与便携性。在此USB接口电路中选用ADI公司生产的USB隔离芯片ADuM4160来提高安全性和可靠性,ADuM4160隔离芯片内部包含两个USB收发器、数据流处理部件、光耦等,电源电路提供3.3 V供电,可在任何位置隔离USB总线,同时具有ESD保护,允许在D+和D-引脚在没有外部保护电路时热插拔,极大简化了USB通信隔离的实现。
SD卡存储模块作为数据记录仪的重要部分,在工作时CAN总线数据传输速度快,数据量大,为确保采集中不丢失数据,同时方便查看读取存储的数据,设计以SD卡作为存储设备,其具备容量大、性价比高等优点。SD卡具备SD总线和SPI总线,SPI总线传输速率比SD总线低,但SPI理论传输最高速度为4 Mb/s,满足使用需求,同时SPI通讯协议传输数据简单通用,采用 CS、CLK、DataIn、DataOut四线进行数据通信,方便与LPC1768的SPI接口通信[5-6]。传统的SPI总线隔离采用光耦合器,一般也使用6N137比较多,但每个芯片仅提供一个隔离通道,若采用SPI接口电路中将需要4个,同时需要大量的电阻及三极管提供辅助,所以电路复杂,这里采用ADI公司的通用型四通道数字隔离器ADuM1411,其采用磁耦隔离技术,性能优良,在SPI总线中使用不仅提高了数据传输速率、时序精度和瞬态共模抑制能力,而且简化了接口路,提高了系统稳定性。
3 数据记录仪软件设计
3.1 底层软件设计
系统软件的设计直接决定了数据记录仪是否能够准确的实现所设计的功能,并发挥硬件的最佳性能。软件以C语言程序编写,采用分层和模块化设计,并采用自顶向下的程序结构,底层驱动层包括USB驱动程序、CAN总线驱动程序、SD存储驱动程序等;上层为应用程序,包括CAN总线数据过滤、数据帧读写、命令参数接收等,只有合理的设计软件才能够实现各个模块的相互协调工作,从而实现对硬件电路的有效控制。
针对车载钻机的作业特点,数据记录仪设计以车载钻机作业启停时间为文件记录方式,开机作业时,建立当前时间文件夹,记录开机时间、数据起始地址,同时以设置的每个文件大小及时间间隔为记录要求,直至作业完毕。软件设计如图4中所示,记录仪上电后首先判断工作模式,在记录数据时如果SD卡内存已满,将自动覆盖最早的文件,保持数据的实时性,同时由于CAN总线接收速率跟SD卡接收速率不同,数据接收将采用中断方式,在LPC1768芯片中设置数据缓存区,暂存CAN数据帧,待缓存区存满时,再转存入SD存储器中,并写有掉电保护,保证掉电前将缓存区的数据及时存入SD卡,以免丢失数据。为了防止数据记录仪被私自拆除,车载钻机控制器将在固定时间内接收到数据记录仪发送的固定数据,若长时间未接收到此数据,控制器将视为记录仪被拆除,电控系统报错后,不及时处理,车载钻机将无法正常作业。
图4 软件流程图Fig.4 Flow chart of software
3.2 上位机软件设计
系统上位机软件使用LabVIEW2012开发,LabVIEW软件以计算机为载体,使用图形化G语言编写程序,程序以框图的形式产生,适合开发多种测试控制软件,函数库丰富、人性化,并建立有虚拟仪器、检测系统等,是开发人员的理想平台[7]。LabVIEW开发软件具有硬件控制及数据处理优势,只要调用动态链接库和接口函数即可完成USB通讯设计,如图5中所示,上位机软件可以对CAN总线数据记录仪进行配置,设置波特率、ID参数过滤、生成文件大小、记录间隔时间、循环保存等功能,同时数据记录仪存储在SD卡中的CAN总线数据可以使用Excel或者记事本打开,如图6中所示,方便查询每个时间段具体参数变化。
图5 上位机参数配置界面Fig.5 Host-computer software interface of parameter configuration
图6 数据记录表Fig.6 Chart of data record
4 结束语
本数据记录仪采用外部SD卡作为存储介质,通过USB接口与计算机通讯,并通过CAN总线实时记录车载钻机电控系统的参数。经72小时不间断测试,数据记录仪能够根据设置条件对CAN总线上的数据进行准确、可靠的实时记录;由于SD卡容量可以根据需求自行更换,可以保证车载钻机在24小时不停机作业的情况下记录一年;上位机软件操作简便,SD卡存储方式更好的实现了便携性、扩展性,达到了设计标准,配套车载钻机即可方便掌握钻机作业状态及参数变化,进行后续数据分析和科学研究,同时此CAN总线数据记录仪为后期升级远程监控功能提供了良好载体。
[1]张妮,毕雪琴,田萍果.CAN总线在汽车行驶记录仪中的应用[J].电子设计工程,2010,18(9)126-129.ZHANG Ni,BI Xue-qin,TIAN Ping-guo.Application of CAN network in vehicletravelingdatarecorder[J].Electronic Design Engineering,2010,18(9)126-129.
[2]钱国明.基于LPC1768智能电力监控终端的设计与实现[D].西安,西安电子科技大学,2012.
[3]刁文.TJA1050在矿用主设备轴温监测系统的应用研究[J].山东煤炭科技,2011(3):107-108.DIAO Wen.The application of TJA1050 in axle temperature monitoring system of the mining main equipment[J].Shandong Coal Science and Technology,2011(3):107-108.
[4]翁寅生.煤矿井下坑道钻机CAN总线通信系统[J].煤矿机械,2013,34(2):224-226.WENG Yin-sheng.CAN bus communication system of tunnel drilling rig in coal mine[J].Coal Mine Machinery,2013,34(2):224-226.
[5]周跃,沈捷,花魁.基于SD卡的数据存储系统设计[J].化工自动化及仪表,2012,39(1):95-98.ZHOU Yue,SHEN Jie,HUA Kui.Data storage system design based on SD card[J].Control and Instruments in Chemical Industry,2012,39(1):95-98.
[6]李小峰,于慧彬.SD卡存储器在嵌入式数据存储系统中的应用[J].机械管理开发,2012(6):97-100.LI Xiao-feng,YU Hui-bin.Application of SD card storage in embedded datastore system[J].Mechanical Management and Development,2012(6):97-100.
[7]谢勇,姚远程,秦明伟.基于USB2.0与LabVIEW的高速数据采集系统设计[J].电子设计工程,2012,20(19):5-10.XIE Yong,YAO Yuan-cheng,QIN Ming-wei.Design of high speed data acquisition system based on USB2.0 and Lab-VIEW[J].Electronic Design Engineering,2012,20(19):5-10.