医疗仪器设计远程网络虚拟电路实验仪器设计及实现
-摘要设计及实现了基于远程网络的一种电路实验仪器。提出用低成本单片机来控制并运行电路实验,运用网络微控制器及融合开源嵌入式TCP/IP协议
2018/11/19
摘 要设计及实现了基于远程网络的一种电路实验仪器。
提出用低成本单片机来控制并运行电路实验,运用网络微控制器及融合开源嵌入式TCP/IP协议栈uIP实现网络通信功能,同时与远程LabVIEW程序交互,以在线控制试验仪和获取真实实验结果数据,搭建了一种低成本网络虚拟电路实验仪器。
【关键词】虚拟电路实验 嵌入式 网络控制器 uIP协议栈
当前在远程实验室的构建中最常使用的方式是采用虚拟仪器技术,其概念是由美国国家仪器公司(NI)率先提出的,虚拟仪器技术,作为一种集成了硬件实验系统、虚拟现实技术、多媒体技术以及互联网技术等多种先进技术的综合平台,同时兼备了高效和灵活的开发特点,现已成为远程实验室构建中的首选方案。
虚拟仪器技术的软件系统可以采用LabVIEW软件进行程序设计。
基于LabVIEW构建的远程网络虚拟实验室通常采用两种方式:其一是软件共享方式,实现在客户端对服务器的虚拟仿真实验软件的在线共享;其二是硬件共享方式,实现客户端通过网络访问LabVIEW程序远程控制实验室硬件的动作并实时获取仪器测量结果,即实验实时测控的共享。
硬件共享模式更适合于基础电路实验设备的运用,让学生能在远程做实验时能获取到实际真实数据,对电路实验有更直观的认识。
在硬件共享模式中的关键技术即实验设备的网络接入模块的实现和与LabVIEW的接口通信,如果采用NI数据采集设备和带有网络接入功能的测量器等则需很高的成本,接口实现也不灵活,为降低成本减少实验室设备采购经费,本文应用了亚信电子公司的嵌入式网络芯片设计实现了网络接入模块,可以灵活方便地完成远程电路虚拟实验仪器中的网络接入功能,大大减少远程实验电路硬件成本。
1 系统总体方案
系统总体分为两大部分,一部分由单片机搭建基本的电路实验控制系统,同时完成与远端服务器的命令交互;另一部分则完成网络通信,实现远端系统与实验系统的控制命令与网络协议之间的转换和数据传输。
本系统基于RLC串联阶跃响应实验构造,实验电路部分由一片51内核的单片机STC89C52RC作为主控制器,利用内部定时计数器通过IO产生PWM波即输出不同频率的方波,给实验电路提供阶跃信号,并驱动下级的RLC串联实验电路;与此同时利用10位串行AD采集实验电路中电阻两端电压;阶跃电压在2.5伏到5伏之间,AD采集回来可得到完整的RLC串联电路的阶跃信号。
此过程中主控单片机还控制多路继电器的开关来切换电路中不同参数的电阻电感或电容,这样来改变电路的时间常数得到不同的响应。
网络接入模块则采用亚信电子公司的嵌入式网络芯片AX22001完成远端实验系统与本地实验电路间的网络通信,主要功能是与实验电路控制单片机进行串行通信,再把相应数据转换成网络数据包通过有线以太网络或无线WIFI网络传输到远端,同时也实现反向的转换传输。
2 网络接入模块设计与实现
本系统技术难点在于低成本网络接入模块的实现,详细设计为;本设计采用亚信电子的AX22001芯片,AX22001是一款带有TCP/IP和802.11 WLAN MAC/基带的单芯片网络芯片,具有高效双CPU架构,内建TCP/IP加速器,符合802.11a/b/g规范的MAC/基带,高速以太网MAC及丰富的通信外围设备,它基于双CPU架构,利用MCPU运行应用程序及TCP/IP协议,WCPU则用于处理WLAN协议及以太网至WLAN封包格式的转换,内建的WLAN MAC及基带处理器兼容IEEE802.11a/b/g规范,支持802.11i安全特性及802.11e QOS功能同时支持基于AP的网络或Ad-Hoc对等网络。
利用此芯片可以方便灵活的把电路实验设备接入有线或无线局域网及互联网的远程实验应用。
网络接入部分由主芯片AX22001和辅助电路(电源模块、EEPROM配置电路和带网络变压器的RJ45接口)构成等。
若需要无线通信也可以连接射频芯片和天线实现WLAN通信。
其结构如图1所示。
软件模块的主要功能是处理网络数据,包括对网络数据的解析和封包。
AX22001集成了硬件TCP/IP卸载引擎,可以加速对网络数据包的处理速度,再利用精简的网络协议栈uIP简化网络通信,提高网络带宽。
具体实现包括了AX22001初始化、AX22001 TOE数据处理和uIP协议栈数据处理等部分。
AX22001初始化主要完成芯片工作模式的设置、串口初始化、TCP/IP卸载引擎设置、uIP初始化以及外围端口的初始化;TOE数据处理即直接硬件对网络数据包进行处理,包括在数据链路层解包和封装Ethernet层协议、在网络层对IP报头解析、在传输层传送中校验和产生TCP报和UDP报校验和。
通过这样处理了以太网层的协议和各层数据包的校验和,减轻了软件TCP/IP协议栈的工作;uIP协议栈数据处理即利用一个被广泛运用在8位和16位嵌入式系统中的小型TCP/IP协议栈uIP0.9,来实现将底层硬件驱动和顶层应用层之外的所有网络协议集打包在一个库中,协议栈通过接口与底层硬件和顶层应用间通信,通过这种方式完成串口通信数据与网络数据包之间的转换应用,其中GS2E模块任务主要实现网络数据到串口数据的转换以及与远端LabVIEW间进行TCP通信接口,先指定网络端口,并建立TCP侦听器等待远端客户机的连接请求,当建立好连接后获取远端控制命令执行相应参数设置即继电器的切换,并获得实验结果数据按规定格式打包返回到远端LabVIEW。
同时完成通信的点对点方式,并对实验电路满足互斥控制,即当多人远程共同实验时控制分时进行。
3 远端LabVIEW与实验系统的通信
远端LabVIEW前面板及后面板如图2所示,利用LabVIEW-TCP节点进行通信,并与实验电路网络接口指定的网络通信端口号一致就可正确通信。
4 结语
本文基于远程网络设计与实现了RLC阶跃响应实验电路,实现了关键的网络接口功能并与远端LabVIEW进行数据交互与远程控制,获得较好实验效果,为建立低成本电路实验室提供了一种合理有效的解决方案。
参考文献
[1]National Instruments China.基于LabVIEW构建远程实验室技术指导书[G].上海:NI公司官方网站,2012.
[2]Jobn Catsoulis.嵌入式硬件设计(第二版)[M].北京:中国电力出版社,2008.