基于LabVIEW的机床无线测温系统设计
2017-03-30钱雨晴付曾磊
钱雨晴,付曾磊,张 胤,梁 森
成都理工大学
基于LabVIEW的机床无线测温系统设计
钱雨晴,付曾磊,张 胤,梁 森
成都理工大学
采用LabVIEW的VISA串口通信技术,设计了一种基于LabVIEW的无线机床测温系统。系统硬件部分选用C8051F530单片机、DS18B20数字温度传感器、nRF无线数据传输模块以及HB240128显示模块等进行实时温度采集处理;软件部分采用Lab⁃VIEW设计个人电脑(PC)上位机系统界面,实现了温度数据的实时处理、波形显示以及阈值报警等功能。经测试该系统具有操作简单、易于维护、性能稳定、精度较高等特点。
LabVIEWC8051F530;nRF无线数据传输串口通信
前言
温度监测与控制在工业生产中有大量的应用,一套可靠的测温系统是机床持续稳定工作的前提。基于LabVIEW的机床无线测温系统以单片机作为硬件电路的核心,采用图形化编程软件LabVIEW,根据实际需求构建实时温度分析处理软件,能大大降低系统的开发成本,实现通过硬件电路自身或上位机界面两种方式对温度的控制。
1 系统总体方案设计
该系统采用基于单片机C8051F530最小系统的低功耗高效控制方案,主要由单片机控制模块、温度采集模块、无线数据收发模块、阈值报警模块、显示模块、电源管理模块等组成。其系统总体设计框图如图1所示。
图1 系统总体设计框图
单片机上电后,系统首先通过温度传感器采集当前温度,将采集到的数据传至C8051F单片机进行存储,经由nRF无线数据收发模块将温度信息显示在HB240128模块,实现温度的实时获取与阈值报警操作。与此同时,另一无线数据接收控制模块通过USBTTL模块实现与LabVIEW上位机的信息交互。多点显示无线测温系统通过主从两种方式实现温度采集与控制,可适用于不同工作场合,为用户提供更可靠的操作环境[1]。
2 数据采集
2.1 单片机控制模块
系统采用TI公司的SOC-C8051F530做主控芯片。除MCU最小系统配置外,该单片机通过I/O口与DS18B20连接,采用低电平驱动,从而防止单片机上电复位瞬间高电平引起的误驱动,增强了电路的稳定性和可靠性,完成温度信息的采集。通过UART接口将上述采集到的信息传送至WLK02F95无线数据传输模块,经433MHz高频调制载波后发射出去,并等待信息接收后解调得到对应温度值,完成信息的传输。单片机和无线传输模块的3.3V电源由AMS1117-3.3V芯片实现。
2.2 nRF发送模块
nRF发送模块采用最新的433MHz WLK02F95模块,数据传输稳定、快速,传输距离更大,穿透传输效应得到加强,同时芯片的小封装让整体电路设计更加精简,在同等传输要求下功耗进一步降低[2]。WLK02F95模块初始化后,模块处于休眠等待状态,当接收到单片机传输到的数据后,模块即会在1秒时间内唤醒,并将数据按接收到的先后顺序依次打包发送出去。无线数据传输模块与主控MCU之间采用串口传输数据方式,并置SETA,SETB引脚为低电平,其引脚与MCU连接方式如图2所示。
图2 nRF接收模块与MCU连接方式
3 数据传输
温度数据通过无线方式进行传输与控制。设计中采用两个接收控制模块以实现多点显示的功能,其中每个接收控制模块包括一个nRF接收模块和一个主控MCU。nRF接收模块同样使用433MHZ WLK02F95模块,UART数据接口与MCU进行无缝互联。模块平时处于休眠等待状态,一旦收到数据,就把收到的数据通过UART输出,这时用单片机的中断接收函数把数据读取存储。
主控MCU使用低功耗的工业级SOC-C8051F530,接收控制模块1的主控MCU控制nRF模块完成数据接收,并实现HB240128的显示、阈值报警、监测控制等功能。它的一个串口控制nRF接收模块,另外一个串口控制HB240128显示模块。当单片机接收串口收到nRF模块的数据时,先进行数据解码、存储及再编码,最后发送串口控制HB240128数据的显示。接收控制模块2的主控MCU同接收控制模块1完成数据的接收并实现与LabVIEW之间的通信。
4 数据显示
4.1 HB240128显示
HB240128模块为16*16点阵显示,采用标准RS232接口,缺省速率为9600bps。使用时,只需用到TXD和RXD两条数据线和VDD,GND两条电源线。测试中,HB240128模块RXD端与接收模块1主控MCU的TXD连接,实现串口的发送命令,完成温度信息的显示。
4.2 机床LabVIEW显示
无线数据接收模块将接收到的数据通过UART串口传至接收模块主控MCU,主控MCU使用I/O口模拟串口的方式通过电平转换电路实现与PC机的通信。
4.2.1 I/O口扩用
接收控制模块2的主控MCU以串口方式接收WLK02F95无线数据传输模块的数据,并通过串口通信的方式实现与PC机的通信。然而C8051F530单片机内部只有一个UART接口,但芯片总共有16个I/O口,在这种情况下可选择串口扩展芯片来解决,但是利用这种扩展方法增大了硬件成本和电路的复杂程度。为简化电路和降低成本,设计中采用计数法将通用I/O口模拟成串口进行数据通信[3],根据单片机晶振和波特率计算计数器初值,计数器每指令周期加1,直至溢出,以此决定串口接收/发送的时序。
4.2.2 电平转换电路
电平转换电路由控制芯片PL2303HX实现单片机串口TTL电平与PC串口电平间的转换。PL2303HX工作频率为12MHZ,在工作模式和休眠模式时都具有很低的功耗。硬件电路如图3所示。
图3 电平转换电路
4.2.3 LabVIEW实现
接收控制模块2的主控MCU与PC机之间的通信采用图形化编程语言LabVIEW完成。界面设计主要包括温度采集模块、温度显示模块(温度控件数值显示以及波形图表显示)、历史温度数据存储模块、阈值报警模块、串口通信设置模块等5个模块。其程序框图如图4所示。
图4 上位机系统程序框图
系统采用VISA串口实现LabVIEW和硬件电路之间的通信[4]。LabVIEW中所有VISA节点都位于程序框图中。在串口设置的实现上选用枚举下拉列表作为条件结构的判断语句以完成波特率,数据位等的选择,实现与硬件电路的匹配。使用字符串连接函数将当前时间,当前温度值存储在历史温度数据中,方便直观的对比和查询每个时刻的实时温度,其中历史温度数据的存储和显示采用移位寄存器来实现。设计中使用属性节点“Bytes at Port”函数,这个属性节点能读取当前串口缓冲区的字节数,将它的输出连接到VISA READ的“读取字节数”输入端上,就能实时读取缓冲区字节,不会有任何等待。
5 测试结果
根据设计的温度采集系统,首先给下位机系统上电,并将写好的程序下载至单片机内连续运行,待各部分电路开始工作,打开LabVIEW操作界面,如图5所示。首先选择正确的串口号和串口参数,设置温度上下限为40℃和20℃,开始数据的采集和处理,数据接收窗口不停刷新,实时显示当前时间及温度值。同时采用温度计显示当前时刻温度值,并通过波形图表对实时温度数据进行趋势图的绘制。当实时温度超出设定上下线温度范围,系统就会有红灯提示并发出报警声。通过测试结果可以看出,系统较好地实现了温度显示与控制功能。
图5 上位机测试结果
6 结论
基于单片机和LabVIEW软件平台设计了多点显示无线温度测量系统,该系统可通过硬件电路自身或上位机界面两种方式实现温度控制和处理,实现了与计算机的高度融合,增强了整个系统的灵敏度和灵活性,有利于解决故障干扰等问题,为用户的使用提供了多重选择。所设计的温度采集软件系统使用方便,成本低,为很多复杂的工程环境提供了简便有效的测量途径,经多次实验测试,系统运行良好。
[1]Fan Yang,Guoping Li,Huipeng Li.Design&development of a remote temperature monitor system of web using virtual instrument[J]. advances in computer,information,and systems sciences and engi⁃neering.2006:449-452.
[2]徐治根.基于NRF2401的无线温度传感器的设计[J].科技资讯,2012,09:12-13.
[3]王新,周良民.利用单片机I/O端口线模拟串行口通讯[J].安徽建筑工业学院学报,2005,13(3):67-68.
[4]刘其和,李云明.LabVIEW虚拟仪器程序设计与应用[M].化学工业出版社,2011:253-260.
钱雨晴(1996-),女,汉族,四川眉山人;
付曾磊(1996-),男,汉族,四川成都人;
张胤(1995-),男,汉族,四川眉山人;
梁森(1994-),男,汉族,河北石家庄人。