陈威铭,苗长云,高 瑞
(天津工业大学电子与信息工程学院,天津 300387)
基于以太网多功能控制器的研究
陈威铭,苗长云,高 瑞
(天津工业大学电子与信息工程学院,天津 300387)
为了满足工业生产中输送带监控系统功能一体化的需要,提出了一种以太网控制器的设计方案,研制了以太网控制器。以S3C2440为主控芯片设计了硬件电路;移植了Linux操作系统,在Linux系统下开发相应的驱动和应用程序;采用LabVIEW设计了上位机软件,并进行实验。结果表明该控制器实现了输送带开关检测、速度控制;探测器开关控制,数据的采集、存储和传输;传感器数据的采集和传输等功能。利用该控制器、监控设备和上位机组成的监控系统,具有功能强大、通用性好、组网方便、传输速率高等优点,在监控系统中具有重要的应用价值。
输送带;以太网;控制器; S3C2440;Linux操作系统
在工业生产中,为了输送带安全、可靠的运行,需要监控系统对输送带进行控制、检测以及对环境进行实时监测。目前,典型监控系统主要是由传感器、监控终端、分站和上位机组成。监控终端和分站功能单一,不同的监控终端一般只完成一种功能并且一个监控终端通常只能连接一种类型传感器,通用性差,不能实现功能一体化。这些系统通信方式为CAN总线、串行通信和无线通信等,存在组网不方便、传输效率低和传输距离短等问题。因此研究一款基于以太网通信的多功能通用控制器,在输送带监控系统中有着重要的实际意义。
该系统框图如图1所示,由传感器、探测器、输送带、以太网控制器和上位机组成,其工作过程:通过上位机查看输送带是否开启,若开启则启动探测器,以太网控制器采集传感器数据并通过UDP协议传到上位机,而探测器的检测数据可以采用3种传输方式:(1) 探测器通过交换机和上位机直接连接,将数据通过UDP协议发送至上位机;(2)探测器通过UDP协议将数据定时传输给控制器并存储到控制器U盘中,等待上位机发送读取数据指令后将数据通过TCP协议发送至上位机[1];(3)探测器和上位机通过控制器直连,将数据通过UDP协议定时传输给上位机(此方法适用于交换机接口有限的情况)。如果检测数据有问题立即关闭输送带,如果发现外部环境参数超标则关闭输送带或减慢其运行速度。
图1 系统组成框图
以太网控制器是由主控制器(S3C2440)、开关量检测电路、开关量控制电路、模拟量检测电路、频率检测电路、模拟量控制电路、以太网接口电路(DM9000A)、开关控制电路、电光转换电路、USB接口电路、串行接口电路、JTAG电路、复位电路和电源电路等组成,其组成框图如图2所示。
图2 以太网控制器组成框图
2.1 以太网接口电路的设计
以太网控制器的网卡芯片选用的是DM9000A网络接口芯片:集成一个10/100M自适应的PHY,内置3.3 V变2.5 V电源电路[2],I/O端口支持3.3~5.0 V容差。以太网接口电路连接框图如图3所示,其中DM9000A外接2个开关转换芯片TS3L110、2个网口和1个光口。通过主控制器控制TS3L110的E0,S0,E1,S14个端口的高低电平进行不同的排列组合可以实现三方通信,即:E0=0,S0=1,E1=1,S1=1时控制器和探测器通信;E0=0,S0=0,E1=1,S1=1时控制器和上位机通信;E0=1,S0=1,E1=0,S1=1时探测器和上位机通过控制器直连通信。当通信距离较近时选择网线传输,距离较远时选用光纤传输。
图3 以太网接口电路连接框图
2.2 开关量检测和开关量控制电路设计
开关量检测电路用于读取输送带的电平判断其是否处于开启状态,其电路原理为:外部电平通过光耦隔离作用进行电-光-电的转换,然后输入到主控制器的I/O口中,这种电路设计具有很好的抗干扰能力和共模抑制能力。开关量控制电路用于控制探测器开启和关闭,电路原理为:主控制器通过I/O口输出高/低电平,经过光耦隔离后外接继电器,通过小电流控制大电流实现对探测器开关。
2.3 模拟量检测电路设计
模拟量检测电路原理图如图4所示。
图4 模拟量检测电路
以太网控制器模拟量检测电路可以外接的传感器包括电流型两线制传感器、电流/电压型三线制传感器和电流/电压型四线制传感器并且可以给12 V和5 V的传感器供电。其外部接口后方有3排共15个排针,通过每一路外部排针的不同方式短接可实现对不同类型传感器的信号采集,非常适用于工业控制领域。模拟量检测电路对模拟输入信号进行一级跟随,二级差分,三级调零和调量程处理,这种设计优点是避免了外部干扰、设定了静态工作点,同时也可以将0~10 V的模拟信号降到3.3 V量程以内,便于主控制器对数据进行A/D转换。模拟量检测电路外部接口还可以复用为频率检测用于外接脉冲传感器,频率检测电路原理与开关量检测类似在此不再赘述。
2.4 模拟量控制电路设计
模拟量控制电路用于控制电机等模拟量设备,原理图如图5所示。
图5 模拟量输出控制电路原理图
主控制器将数字信号写入SPI用于发送的8位寄存器,通过SPI 的GPOL=0,GPHA=1模式发送给AD5320芯片,AD5320芯片将得到的数字信号通过式(1)D/A转换成0~3.3 V的电压,通过放大电路将电压值有效值的范围扩大到0~10 V,可以有效控制电机速度。
(1)
式中:D表示的是十进制输入代码;VDD=5 V;R1=R2=10 kΩ。
以太网控制器采用开源的Linux嵌入式操作系统,Linux操作系统在嵌入式开发中被广泛应用。具有软件代码占用空间小、自动化程度高和响应速度快等特点,特别适用于要求实时性好和多任务的体系结构[3]。Linux操作系统是通过驱动程序来控制硬件设备的,驱动程序是操作系统和硬件之间的桥梁。驱动功能包括:对设备初始化和释放;硬件和内核以及应用层数据传输;检测和处理设备出现的错误[4]。
应用程序流程图如图6所示,由于Linux系统支持多任务操作,所以整个应用程序流程同时执行了6个进程:开关量检测进程、开关量控制进程、模拟量控制进程、传感器数据采集传输进程、检测数据采集传输进程和通信模式选择进程等。应用程序流程图中检测数据传输需要经过以太网控制器,所以其传输方式为第一节介绍3种方式的后2种。
上位机软件采用LABVIEW设计实现,上位机作为客户端,通过建立套接口和绑定对方端口号,可以和以太网控制器通信,以太网控制器将数据传输至上位机进行处理[5]并接收上位机命令做出相应控制。上一节提到以太网控制器上的Linux系统多任务同时工作,每个进程都占用一个不同的端口号,所以上位机软件在设计的时候针对控制器上的每一个进程设计了相配套的通信模块,这样既可以根据不同情况灵活增加和裁剪模块,同时也提高了工作效率。由于篇幅有限此处只列举传感器数据采集模块,其程序框图如图7所示。
图6 应用程序流程图
图7 传感器数据采集程序框图
如图8所示,实验结果为:开关量检测第一路检测到输送带开启; 控制第一路探测器开启;8路传感器数据实时采集,从图中可以看出环境温度已经超标;模拟量控制对电机输出电压值为7 V;检测数据指示灯亮,说明U盘中的fasong.txt文本数据已经向上位机发送完毕,上位机将数据存储到jieshou.txt文本中,将文本中的数据导入检测专用软件显示结果,图中数据显示框中显示的是刚才上传的数据;从模式选择指灯可以看出通信状态此时是控制器和上位机通信。
选择4路传感器对传感器数据采集功能进行实验,实验结果如表1所示,其中温度传感器是模拟量传感器,其余3路传感器是脉冲传感器。
表1 传感器数据采集实验
图8 上位机软件前面板
由表1可知,在常规温度下温度传感器测量值和环境实际温度值相对误差最大为1%,而3路脉冲传感器测量值和环境实际值的相对误差都在1%以内。实验证明传感器数据采集功能误差较小、可靠性较高并且通用性能较好。
表2是模拟量控制实验数据,由表2可知实际输出电压和目标电压最大偏差为0.1 V,相对误差都在1.5%以内,实验证明模拟量输出电压误差较小、精度较高,达到控制要求。
表2 模拟量控制实验
如图9(a)所示利用长度为3 km光纤对控制器做远距离数据传输可靠性实验,图9(b)为控制器和电脑通信实验结果,图9(c)为电脑和电脑通过控制器直连通信实验结果,实验证明控制器远距离通信时传输速率和可靠性良好,达到预期要求。
本文研制了一种以太网控制器,通过以太网实现了对输送带的控制、检测和监测等功能,构建成一个功能强大、统组网方便和数据远距离可靠传输的监控系统;同时提出了通用传感器接口设计方案和检测数据的3种传输方式,使其具有很好的通用性。实验证明以太网控制器工作状况良好,达到预期结果。
(a) 光纤通信测试实测图
(b) 控制器和电脑通信测试结果
(c)电脑和电脑通信测试结果图9 测试装置及测试结果图
[1] 安彩华,苗长云,张志刚,等.基于X光的钢丝绳芯输送带检测系统传输控制器的研究.天津理工大学学报,2014,30(2):1-4.
[2] 施勇,温阳东.基于DM9000A的嵌入式以太网接口设计与实现.合肥工业大学学报,2011,34(4):519-524.
[3] 刘永毓.基于ARM的嵌入式系统设备驱动及内核开发研究:[学位论文].广州:华南理工大学,2011.
[4] 魏长江,张凌云,张国财.基于uClinux的设备驱动程序设计方法及应用实例.煤矿机械,2005(8):64-66.
[5] 闫兴德,陶晋宜,申红燕,等.基于X射线的钢丝 绳芯输送带检测系统.煤矿机电,2011(1):68-71.
Research on Ethernet Multifunction Controller
CHEN Wei-ming,MIAO Chang-yun,GAO Rui
(School of Electronics and Information Engineering,Tianjin Polytechnic University,Tianjin 300387,China)
In order to meet the function integration needs of the conveyor belt monitoring system of industrial production,the design of an Ethernet controller was presented and the Ethernet controller was developed.The hardware of the controller was designed by using S3C2440 as main control chip.Linux operating system was ported,and the appropriate drivers and application program were developed under Linux system.The PC software is designed by using LABVIEW,and experiments were conducted.The results show that the controller has the functions of detecting conveyer belt switch,speed control,detector switch control,data collection,storage and transmission,data acquisition and transmission of the sensor,and so on.The Ethernet controller,along with the monitoring of equipment and PC,can be used to form a monitoring system with the virtues of powerful,common good,convenient networking and high transmission rate,and has important application value in monitoring systems.
the conveyor belt;Ethernet;controller;S3C2440;Linux operating system
矿用输送带纵向撕裂故障在线监测及系统关键问题的研究(51274150)
2014-08-27 收修改稿日期:2015-02-14
TP332
A
1002-1841(2015)07-0048-04
陈威铭(1989—),硕士研究生,主要从事嵌入式研究。 E-mail:dianke081chen@163.com 苗长云(1962—),教授,主要从事通信技术及系统研究。 E-mail:miaochangyun@tjpu.edu.cn