基于以太网的多通道时序控制系统设计与实现*
2017-11-23温美思赵军发李现国
白 华, 温美思, 张 诚, 赵军发, 李现国
(天津工业大学 电子与信息工程学院 天津市光电检测技术与系统重点实验室,天津 300387)
基于以太网的多通道时序控制系统设计与实现*
白 华, 温美思, 张 诚, 赵军发, 李现国
(天津工业大学电子与信息工程学院天津市光电检测技术与系统重点实验室,天津300387)
针对光电检测系统对时序控制的多样化需求,设计了基于以太网的多通道时序控制器。采用ARM+FPGA架构设计系统控制核心,提高时序信号精度的同时保证了系统的灵活性。利用可编程控制液晶显示器设计用户界面,使人机交互更加方便快捷。基于LabVIEW开发系统上位机软件,上位机通过串口转以太网模块与下位机通信。实验结果表明:控制器时间精度达到1 μs,时序信号运行周期可达24 h,并具有外部触发功能和以太网远程控制功能,可应用于有毒有害等危险环境,具有很高的实用价值。
多通道时序控制器; 以太网; 液晶显示器; 上位机
0 引 言
光电检测技术在军事设备、航空航天、生物医药和环境保护等方面都有广泛的应用。光电检测系统[1]由光电传感器、信号调理器、时序控制器和输出环节四部分组成,其中时序控制是整个系统能够协调工作的关键。在电路设计上,通常针对不同的实验要求设计不同的时序控制电路[2~4],通用性差,设计和调试工作量大。目前,市场上开发了一些通用型的时序控制器,但是通道数量少、时间精度低(大多在毫秒级),并且缺少针对有毒有害危险环境的远程控制功能。
针对以上问题,本文开发了基于以太网的多通道时序控制器,共有8个时序输出通道,可以并行输出8路时序控制信号,时间精度达到1 μs,时序周期可达24 h。可通过触摸屏输入各通道时间参数,操作更加方便快捷,且带有外部触发功能和上位机远程控制功能[5]。该控制器自成系统,可作为器件应用,能提供光电检测系统所需的各种时序信号,为搭建光电检测系统以及相关实验带来方便。
1 系统硬件总体设计
1.1 硬件系统的组成
多通道时序控制器由电源、液晶显示器、上位机和多通道时序输出终端4部分组成。其中多通道时序输出终端硬件设计主要包括ARM+FPGA电路、复位电路、时钟电路、串口电路、以太网电路、配置电路和时序输出电路等。硬件系统组成如图1所示。
1.2 电源电路设计
电源电路提供工作电压为1.2,2.5,3.3,5 V。因此,设计将电源适配器输入的12 V电压通过MP2359电源芯片转化为5 V,再分别通过AMS1117—3.3,AMS1117—2.5和AMS1117—1.2稳压器将5 V电压转换为3.3,2.5,1.2 V。并通过瞬态抑制二极管为电源电路提供保护。
图1 硬件系统组成
1.3 ARM+FPGA电路设计
多通道时序输出终端设计主要采用ARM+FPGA架构[6~8]。ARM负责分析、处理用户通过触摸屏或者上位机输入的时间参数,FPGA负责并行输出多路时序信号和检测外部触发信号。ARM与FPGA之间通过数据总线相连,实现信息的传递功能。电路如图2所示。
图2 ARM与FPGA连接电路
ARM+FPGA电路设计选用了STM32F103ZET6型ARM芯片和EP3C16Q240C8N型FPGA芯片。STM32F103ZET6为基于ARM Cortex—M3核心的32 位微控制器,工作频率高达72 MHz,满足系统实时性要求。EP3C16Q240C8N芯片具有丰富的逻辑资源,系统频率高达50 MHz,且稳定性高,符合多通道时序控制器的设计要求。
本文,由于用户设置时间参数最大值为24 h,最小时间单位为1 s,故ARM最多需要将8个通道的时序参数转换为17组40位二进制数据发送至FPGA。基于芯片引脚个数限制,采用分址输入的方法。ARM通过8位数据线(PC0~PC7)将40位二进制数分成5组8位二进制数并行发送给 FPGA,FPGA通过识别7位地址线(PB8~PB14)上的数据将5组8位二进制数排序组成一个40位二进制数。为实现ARM与FPGA同步通信,通过使能线EN控制FPGA对ARM数据的读取,仅当使能信号EN为高电平时,FPGA读取数据线与地址线上收到的数据。ARM通过启停控制线START,STOP和RST控制输出信号的启动和停止,通过触发选择线TRIC1和TRIC2控制两个触发信号的选通。
1.4 液晶显示器
液晶显示器选用一种包含LCD显示屏、LCD控制器、触摸屏、人机界面处理系统和通信接口于一体的智能显示模组。可以通过串口与外部控制单元连接,实现系统的人机交互界面。触摸屏搭载了专用图形操作系统GoUI,通过PC的可视化组态编辑软件,无需专业图形编程知识即可设计显示界面,降低了开发难度。同时,在没有硬件的情况下,通过PS—LCD软件模拟器在PC上可以模拟实际界面运行效果,有效缩短了开发周期。
2 系统软件设计
2.1 ARM软件设计
ARM程序在Keil软件平台下采用C语言编程设计。可以自动配置以太网连接上位机,分析触摸屏和上位机输入的时间参数,将时间参数转换为8位二进制数据分址发送至FPGA。程序流程如图3所示。
图3 ARM软件流程
设计中多通道时序控制器有2种工作模式:触摸屏单独操作模式;基于以太网的上位机远距离操作模式。系统上电后默认进入触摸屏单独操作模式,用户进入开机界面后可以通过触摸屏选择是否开启上位机远程控制功能。当用户开启上位机远程控制功能后, ARM接收到触摸屏发送的“开启以太网传输”命令,并调用以太网配置程序对以太网电路进行数据配置。配置成功后ARM会自动尝试与上位机的连接,并检测与上位机连接是否成功。若连接成功,ARM进入等待以太网数据输入状态,否则,ARM自动将失败信息反馈到触摸屏进行显示,并再次进行连接。
2.2 FPGA[9]软件设计
时钟模块将FPGA内部的50 MHz系统时钟分频为1 MHz的单位时钟,使时间单位变为1 s,作为多通道时序控制器脉冲输出的最小时间单位。当FPGA接收到“开始”信号后,开始接收ARM发送的时间参数。数据处理模块将分址输入的8位二进制数据转换为17组40位二进制数据并存储。同时,分析处理ARM指令中的启动、停止信号、触发模式选择信号和外部触发信号,使能比较输出模块。比较输出模块将17组40位二进制数据分配为8个通道时序信号的上升沿时间、下降沿时间、循环周期和循环次数,并开始循环计时。计时同时,比较输出模块将计时时间与上升沿和下降沿时间进行比较,准确无误地按照时间参数并行输出时序信号。程序流程如图4所示。
图4 FPGA程序流程
2.3 触摸屏软件设计
在Designer软件平台下采用JavaScript语言编程设计实现。可以自动显示、分析用户数据并通过串口与下位机通信。触摸屏工作流程如下:系统上电后默认8个通道全部禁止输出,选择禁止的通道会禁止数据输入功能,参数输入框变为灰色。用户选择启用后,恢复参数输入功能。用户点击“运行”按钮,触摸屏自动将所有数据处理成字符串的形式由串口发送至多通道时序输出终端。
2.4 上位机软件设计
上位机软件在LabVIEW软件平台下采用G语言编程设计。上位机与多通道时序输出终端之间通过以太网线连接,采用TCP/IP通信协议通信。
上位机软件的以太网通信流程如下:上位机开始运行后,调用“打开TCP连接”节点打开TCP服务,建立与下位机的连接。无限循环使用“读取TCP数据”节点,实时检测由下位机发送的有效TCP数据,用于后期处理。当用户通过上位机点击发送按钮后,调用“写入TCP数据”节点,向下位机发送用户指令。用户选择暂停使用上位机时,使用“关闭TCP连接”节点,断开TCP连接。
3 实验及结果
3.1 以太网通信测试
在LabVIEW软件平台下编写的上位机程序可以实时显示上位机发送和接收的数据。为了使测试结果更加直观,本文使用串口助手代替触摸屏作为多通道时序输出终端的数据输入端口进行通信测试。
首先采用交叉网线连接多通道时序控制器与上位机。在上位机设置相应参数,使用Ping指令测试网络连接。确认网络连接无误后,使用串口助手发送任意字符串,上位机接收到相同的字符串,反之亦然。测试结果如图5所示,可以看出,上位机和多通道时序输出终端均可以准确接收彼此发送的数据。说明多通道时序输出终端与上位机之间的以太网通信有效。
图5 上位机通信有效性测试
3.2 时序输出测试
为了检验多通道时序控制器的实际输出精度和输出稳定性,本文将实验分为三组进行测试,每组设置不同的时间参数、循环次数以及触发方式等。测试输出波形如图6所示。图5实验结果显示:多通道时序控制器输出时序的精度可达到1 s,8个通道可以并行输出,且时序波形输出准确无误,可实现无限循环和1~100次可选循环,具有外部触发功能,触发响应延迟时间小于1 s。
图6 不同时间参数设置及输出波形
4 结 论
研制了一种基于以太网的多通道时序控制器。采用ARM+FPGA架构设计系统控制核心,实现多通道时序控制器的数据处理和时序输出功能。采用PS—LCD设计控制界面,实现系统人机交互功能。基于LabVIEW开发上位机软件,利用TCP/IP通信协议实现上位机与下位机的以太网通信,具有远程控制功能。与传统时序控制器相比,该控制器具有输出信号时序灵活可调、时间精度高、时间范围广、通道数量多、触发响应速度快、能够远程控制等优点,能够提供光电检测系统所需的各种时序信号,从而给光电检测相关的实验工作带来方便。控制器可应用于有毒有害等危险环境中,具有很高实用价值。
[1] 孙晓捷.一种生物超弱发光探测系统的设计与应用[J].天津师范大学学报:自然科学版,2010,30(3):41-44.
[2] 林晓刚,郭永彩,王文志,等.生物细胞与组织超弱发光探测系统研制[J].传感器与微系统,2009,28(3):83-85.
[3] 樊琳琳,张建民,刘 锴,等.生物超弱发光采集系统及控制电路设计[J].现代电子技术,2010,33(21):108-111.
[4] 孔德鸿,程明霄,张 亮,等.基于工业以太网的多组分智能测控平台的设计[J].仪表技术与传感器,2015(3):60-65.
[5] 苗长云,罗统荣,白 华.基于以太网的多路超声波自动检测系统[J].天津工业大学学报,2016(2):43-49.
[6] 孙鑫明,苗长云,白 华.基于ARM和FPGA的高扩展性超声检测模块设计与实现[J].电子技术应用,2012,38(10):26-29.
[7] 王 鹏,吕志刚,杜卫东.基于FPGA和ARM的多路时序控制系统设计与实现[J].计算机测量与控制,2012(6):1540-1543.
[8] 王 飞.基于FPGA的多通道高分辨率时间转换系统设计[J].电子测量与仪器学报,2014,28(6):664-669.
[9] 何素梅,博锦良,吴海彬.LED隧道照明自动调光系统的设计[J].电子测量与仪器学报,2015,29(4):622-628.
Designandimplementationofmulti-channeltimingcontrolsystembasedonEthernet*
BAI Hua, WEN Mei-si, ZHANG Cheng, ZHAO Jun-fa, LI Xian-guo
(TianjinKeyLaboratoryofOptoelectronicDetectionTechnologyandSystem,SchoolofElectronicsandInformationEngineering,TianjinPolytechnicUniversity,Tianjin300387,China)
A multi-channel timing controller is designed to meet diverse needs of photoelectric detection systems for timing control.ARM and FPGA frame are used to design control core,which is beneficial to improve timing precision and at the same time assure flexibility of the system.A programmable smart LCD is used to design the user interface,making the human-system interactions more convenient and efficient.In addition,upper PC software can be used to communicate with the controller through a serial to Ethernet module,and the PC software is developed based on LabVIEW.Experimental results show that the controller has a good performance in timing precision of 1 μs,long operating cycle of 24 h,response to external triggers,and remote control based on Ethernet.Thus,the controller has a high application value,especially in the poisonous and harmful environments.
multi-channel timing controller; Ethernet; LCD; upper PC
10.13873/J.1000—9787(2017)11—0083—03
TP 786
A
1000—9787(2017)11—0083—03
2016—10—08
国家自然科学基金资助项目(61201106,61307094); 天津市应用基础与前沿技术研究计划项目(14JCQNJC01800)
白 华(1980-),男,通讯作者,博士,副教授,从事光电检测技术与信息系统的研究工作,E—mail:baihua2000@hotmail.com。
温美思(1992-),女,蒙族,硕士研究生,主要研究方向为光电检测技术与信息系统,E—mail:806227787@qq.com。