基于虚拟仪器的远程实验台的改进与实现
2017-09-03涂国强张科比
汪 鑫, 雷 勇, 涂国强, 张科比, 焦 洋
(四川大学 电气信息学院,成都 610065)
基于虚拟仪器的远程实验台的改进与实现
汪 鑫, 雷 勇, 涂国强, 张科比, 焦 洋
(四川大学 电气信息学院,成都 610065)
远程实验台实现了实验室的资源共享,成为目前高校实验室建设中的热点。针对远程实验台应用需求量大而成本较高,结构复杂的特点,提出了一种新型构建方案。该方案主要利用单片机C8051F020代替数据采集卡作为系统的测控核心,通过单机和多机通信相结合的通信方式,可以实现客户端远程实时操作多个实验项目的目标。利用Internet以及LabVIEW实现互联网通信和平台交互。最后结合滤波电路、步进电机驱动电路、电平转换电路等,使用户可以通过网络终端远程采集实验数据,搭建实验电路,观测实验过程。实验表明:新的方案不仅大大的降低了成本,也提升了系统性能和稳定性,满足了目前教学实验改革的需求。
虚拟仪器; 单片机; 远程实验台; 多机通信
0 引 言
近年来,国内外的高校针对实验教学资源的匮乏而学生需求不断增长的现状,提出了网络虚拟实验室的概念,开展了远程实验室方面的研究并取得了一定的进展。在国内,已有部分高校初步建立了用于教学和科研的虚拟实验室。而针对虚拟仪器的远程控制实验台的大多数设计方案是基于数据采集卡来实现数据采集,但由于LabVIEW对数据采集卡的兼容性和稳定性的要求较高,大多数都会采用NI数据采集卡[1-3]。而此类数据采集卡不仅价格昂贵,功能单一,数据采集通道有限,因此必须结合单片机或其他设备进行操作。考虑到本文所涉及的实验项目较多,实验操作复杂,测量数据范围较宽,如果采用数据采集卡进行数据采集,对于批量生产而言对成本的要求非常高。单片机是目前应用非常成熟的高度集成化的芯片,能实现数据采集,串口通信,电路驱动等多种功能。因此使用单片机代替数据采集卡,作为系统控制核心并完成数据采集等功能,再结合自动控制技术,网络通信技术,视频监控技术,虚拟仪器技术等,不仅可以降低成本节约经费,也可以完善实验台功能简化结构。
1 远程实验台系统整体结构
本文所设计的远程实验台利用虚拟仪器、单片机、互联网等平台,使用户可通过互联网终端访问远程实验室,并可自主选择实验操作,提交参数设定以及观察实时反馈的实验结果。远程实验台整体结构如图1所示,主要分成客户端层,服务器层,主机层,从机层。利用Internet网络用户可以在客户层访问到服务器的数据,服务层作为客户层与主机层之间通信的桥梁,根据客户层的要求收集数据并反馈结果。主机层采用多机通信方式控制着从机层中各个从机,实施实验操作从而获得测量结果[4-6]。具体实施方案是利用单片机的ADC模块进行数据采集,通过单片机I/O控制继电器动作,从而搭建出不同的实验电路。LabVIEW与单片机通过串口连接,通过可视化的图形界面进行虚拟操作,而不同操作对应不同指令,由此实现远程实验操作。且此系统正在专利申请中。
图1 远程实验台整体结构
实验项目包括元件伏安特性实验、戴维宁定理、叠加定理、日光灯及功率因数提高、三相交流电路、三相异步电动机及继电接触器控制等基本电路实验。 针对不同的实验项目,电路设计有所不同,但基本都由五大模块组成,分别是数据检测模块,通信模块,控制模块,监视模块,交互模块。模块化的设计使实验台具有可扩展性强,操作方便的特点[7]。
2 系统硬件结构
系统的硬件结构框图如图2所示。主控芯片选择的是来自Silicon Laboratories公司的C8051F020,是一款完全集成的混合信号系统级MCU芯片。具有高速CIP-51内核,多通道带PGA的12位ADC,多类型串行接口等主要特性,完全符合实验项目的功能和精度要求。单片机C8051F020作为控制核心主要应用于通信、数据采集、控制等模块。通过主机的双串口将服务器与从机中的各个实验项目相连,服务器又通过互联网与远程客户端相连,这样的结构实现了远程控制,并保证了实验过程的实时性和实验数据的有效性。
图2 系统硬件结构框图
2.1 通信模块
UART串行总线通信是一种广泛应用于远距离,低频率,低成本的串行传输接口。常用的接口标准包括RS232、RS485、RS422等。采用RS232接口标准在实际应用过程中受到的干扰较大,不利于数据传输,而RS485采用差分方式可以使传输更为稳定有效。由于实验台通信结构复杂,控制项目众多,故主要采用RS485接口标准并结合多机通信方式进行通信[8]。实验台通信过程包括服务器与主机通信,主机与从机通信。服务器与主机采用串行通信方式,并利用芯片MAX3232进行电平转换,主机与从机以及从机之间的通信主要利用MAX485将单片机的RS232接口转换成RS485接口。如此,一个主机可以同时访问多个从机,使通信更加灵活[9-10]。C8051F020共有两个UART(UART0和UART1),它们的功能用法完全相同,因此以UART0为例,UART0是一个具有帧错误检测和地址识别硬件的增强型串行口,并支持多处理器通信。由于MAX485工作在半双工方式,而UART工作在全双工形式,故与单片机的UART相连的时候需用单片机的一个引脚P71来控制数据传送方向[11]。
2.2 控制模块
远程控制实验台涉及到的控制电路较多,主要有继电器控制电路切换,步进电动机带动滑动变阻器。
2.2.1 继电器控制电路切换
继电器是具有隔离功能的自动开关元件,可以实现控制电路和实验电路的电气隔离,从而降低干扰。同时C8051F020的P0~P3端口(共32个I/O引脚)都可以按位寻址,那么利用单片机的I/O引脚以及相应的驱动电路最多可以控制32个继电器开关。 继电器驱动电路由两个电平转换器ULN2803和一个锁存器74HC573组成,主要为了增强I/O接口驱动能力并提高输出电压以便于控制继电器的开关。
2.2.2 步进电动机带动滑动变阻器
实验项目需要远程改变负载的阻值。要实现此功能可以采用数字电位器,但由于数字电位器的工作电流最多只能达到几mA,而实际电路的工作电流可能达到几百mA,所以决定采用传统的机械电位器,即将步进电动机和滑动变阻器的转轴连接在一起,通过单片机的I/O发出指定数量的方波信号以及输出电平高低来控制步进电动机转动角度和方向从而改变电阻值。
2.3 数据采集模块
数据采集模块主要由数据预处理部分以及单片机内部ADC组成。C8051F020内置的ADC0子系统包括一个12位分辨率、10万次/s、8通道的逐次逼近寄存器型ADC,一个可编程增益放大器(PGA0)和一个9通道的可编程模拟多路选择器(AMUX0)。PGA对信号的放大倍数由软件编程决定,根据不同实验项目的需求可以将增益设定为0.5、1、2、4、8或16。ADC0的基准电压采用外部电压源,从而达到可测的电压范围0~3.0 V。数据预处理部分主要由高精度的运算放大器,变压器,电流互感器等器件组成。直流实验主要采用差动比例放大电路和滤波电路采集数据,而在测量交流实验数据时(如日光灯实验,三相电动机)需要利用变压器和互感器起到降压变流和电气隔离的作用,使之达到ADC有效测量范围。在实际操作中,数据采集精度可以达到1 mV,完全符合实验项目要求。
3 系统软件设计
3.1 单片机程序编写
单片机程序主要分成主机程序和从机程序。主机主要实现的功能是搭建服务器与从机之间数据交换的桥梁。而从机程序不仅仅需要识别主机发出的指令,更要将数据采集的结果反馈给主机,同时根据需要实现电路切换,数码管显示等功能。单片机程序主要由三大模块构成,初始化模块包括时钟设置,端口设置,以及外设的初始化设置等。功能性模块包括串口通信,AD及DA转换,步进电动机驱动,数码管显示,指示灯显示等。附加模块包括延时模块,数制转换模块等。以串口通信和AD转换程序为例介绍。
3.1.1 基于UART的多机通信
远程控制实验台的数据交换主要分为4层结构,分别为远程客户端,服务器,一个主机,多个从机。远程客户端通过网络发出控制指令,服务器接收命令之后,呼叫从机响应,从机判断是否被呼叫,一旦呼叫成功指定从机返回确认收到,从而由多机通信转变成单机通信。
C8051F020的UART提供4种工作方式,在多机通信中,通常选择方式3,通过第9位数据位和单片机串口地址识别硬件支持一个主机与多个从机之间的多机通信。通过串口远程控制多个实验项目,并完成多项实验操作步骤,因此需要对每一个实验从机进行地址编码,也要对操作步骤编码,便于主机识别。同时,不同的实验项目采集的数据长度不一致,那么在数据两端需要设定开始标志和结束标志[12]。最终形成的通信协议以及通信过程如图3所示。
图3 通信过程
3.1.2 12位数据采集模块ADC
ADC0的最高转换速度为10万次/s,启动转换方式共4种,为了实现定时的连续转换选择方式4,即定时器的溢出启动转换。AD数据处理程序采用中断方式可以减少CPU的负担,在中断程序中将转换的数据进行滤波处理并存储在指定数组中。只要中断开启,数组中的数据就可以不断刷新,从而实现实时数据采集。
3.2 LabVIEW程序编写
LabVIEW的主要有两方面的功能。①利用串口通信实现服务器与主机之间的数据交换,并对采集的数据进行截取、转换、判断、显示、存储,生成报告等。②利用LabVIEW的Web发布工具实现远程网页访问,并使用基于TCP/IP的数据传输协议DSTP的DataSocket技术实现网络通信[13-15]。由此,用户不仅仅可以在远程客户端的网页浏览器实现与主机的通信,也可以实时控制电路获得数据,给用户呈现实际操作电路的的真实感。
为了避免控制命令的发送和使用错误,将控制参数的指令和数据捆绑在一起,即在服务器收到数据时通过预先设定的规则对数据进行截取,避免通信过程中出现不可预知的错误[16]。
4 实验效果
远程实验台一共设计了6个电路实验项目,改进之后的实验台外观更加简洁直观。图4为部分电路实验操作界面,包括一阶RC电路、叠加原理、三相异步电动机及继电接触控制、三相交流电路。
本文以实验1为例展示项目改进之后的效果。实验1包括电阻伏安特性曲线测量、二极管正反向特性曲线测量、电压源伏安特性曲线测量3个实验内容。首先使用账号登录系统,进入实验界面如图5所示,选择元件伏安特性实验。用户可以自主选择界面上的按钮操作。首先点击‘开始实验’,在‘程控电源输出调节’输入电压值,然后点击‘改变参数’,即可在LabVIEW界面上就可以看到实际测得的电流和电压值。图6为实验的实物界面图,同时从实际电路中可以看到开启实验后对应电路的指示灯亮起,实际测量实验台数据与界面显示数据完全一致,用户完成实验数据的测量之后即可点击生成excel表格并保存。完成实验之后点击结束实验即可进行下一步操作。可以观察到改进之后的系统在用户体验上不会受到任何影响,实验数据测量的精度也满足基本要求,并且保证了实验能够稳定有效地进行。
图5 元件伏安特性实验labview界面
5 结 语
以虚拟仪器和因特网为基础建立的远程虚拟实验台实现了校内仪器设备及实验教学的共享,开放式课程和开放式实验相结合为用户提供更好的学习平台。为了改善虚拟实验台目前发展现状,提出了一种成本低,可扩展性强的改进方案,即在LabVIEW和Internet的物理基础上,利用高度集成的单片机代替昂贵的数据采集卡,将数据采集、继电器控制、多机通信等功能结合成一体,有效节省了成本,也提高了系统稳定性。用户仅用联网终端即可访问远程虚拟实验室,并可自主选择实验操作,提交参数设定及实时观察反馈实验结果。通过实验证明改进之后的系统在通信和测控等方面都能达到实验要求。同时可通过此平台采集实验教学过程中的各项数据指标,依据对数据处理分析从而改进和完善实验教学考核方法、内容及标准。
[1] 高艳玲,王振玉,徐 红. 基于LabVIEW的开放型实验室建设[J]. 实验室研究与探索, 2013, 32(3): 211-213.
[2] 李海芳,张 民,陈俊杰,等. LabVIEW下远程虚拟实验室的研究与实现[J]. 太原理工大学学报, 2010(2): 147-149.
[3] 顿爱波. 远程教学用虚拟电子实验室系统研究[D]. 大连:大连理工大学, 2005.
[4] 李世红. 基于LabVIEW和单片机的温度监测系统设计[J]. 湖北农业科学, 2015(19): 4836-4839.
[5] 艾建生. 基于Web自控远程实验室的研究[D]. 重庆:重庆大学, 2008.
[6] 米西峰. 基于Web和Labview的虚拟仪器实验平台设计[J]. 微计算机信息, 2008(4): 155-157.
[7] 唐立军,宾 峰,邓 敏,等. 远程实验操作平台设计与实现[J]. 实验室研究与探索, 2015(12): 49-52.
[8] 江贤志,刘华章,张教育,等. 基于C8051F020单片机的RS485串行通信设计[J]. 电子测量技术, 2014(3): 121-124.
[9] 李 楠. 基于单片机技术的多机通信系统设计[J]. 现代电子技术, 2016(12): 164-166.
[10] 金 彧,王彩莲,卢军平,等. 一种自由进出JTAG菊花链的硬件设计方法[J]. 电脑开发与应用, 2012(8): 47-49.
[11] 刘文怡,李进武. 基于RS485总线多机通信系统可靠性的研究[J]. 弹箭与制导学报, 2005(3): 102-104.
[12] 刘俊伏,刘金娥. PC机与单片机的多机通信技术及抗干扰措施[J]. 河北师范大学学报(自然科学版), 2009(1): 28-32.
[13] 张 茜,雷 勇. 基于虚拟仪器技术的网络化远程实验室系统[J]. 实验室研究与探索, 2013(9): 90-93.
[14] 孙道让,刘蕴红. 基于LabVIEW和IAP的单片机远程实验系统[J]. 电子设计工程, 2011(20): 177-180.
[15] 陶方华,张艳荣. 基于DataSocket技术的远程实验系统设计[J]. 四川兵工学报, 2011(5): 83-84.
[16] 罗 建,雷 勇,黄 昊,等. 基于LabVIEW的远程电机实验台的构建[J]. 实验技术与管理, 2014(3): 122-125.
The Improvement and Implementation of Remote Experimental Platform Based on LabVIEW
WANG Xin, LEI Yong, TU Guoqiang, ZHANG Kebi, JIAO Yang
(School of Electrical Engineering and Information, Sichuan University, Chengdu 610065, China)
Remote experimental platform implements the resource sharing of laboratory, and becomes the focus of research in the laboratory construction of colleges and universities. The remote experimental platform has great application demands, but high cost and complex structure. A new system construction program is proposed in the paper, it is highly scalable, easy to operate. Single chip microcontroller (SCM) C8051F020 (DAQ) is used to substitute the data acquisition card, and served as detection and control core of the system. Based on SCM communication of single-computer communication and multi-computer is realized, and various experimental projects of client goals are completed by remote real-time operation. It can achieve communications and interaction online by the Internet and LabVIEW. Then combining with the filter circuit, stepper motor drive circuit, level conversion circuit, etc., users can collect remotely experiment data through any network terminal, set up the circuit, and observe the experiment process. Finally, experiments show that the new scheme not only greatly reduces the cost, but also improves the system performance and stability, it can meet the demands of the reform in experiment teaching at present.
virtual instrument; single chip microcomputer; remote experimental platform; multi-computer communication;
2016-11-15
四川大学新世纪教改工程项目(五期)(2011010811)
汪 鑫(1993-),女,重庆人,硕士生,主要从事虚拟仪器实验、信号检测等方面的研究。
Tel.:18200280053;E-mail: 458657109@qq.com
雷 勇(1966-),男,四川内江人,教授,主要从事电工理论与新技术、智能测试及控制、机器人等方面的教学与研究。
E-mail: yong.lei@163.com
TP 391.9
A
1006-7167(2017)08-0125-04