《通信企业管理》杂志社
首页 > 期刊导读
 
/ / /
 

基于LabVIEW下PC机与PC机虚拟串口通信的设计与

 
来源:通信企业管理 栏目:期刊导读 时间:2021-03-22
 
LabVIEW(Laboratory Virtual instrument Engineering)是一种图形化的编程语言,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。LabVIEW集成了与满足GPIB、VXI、RS-232和RS-485协议的硬件及数据采集卡通信的全部功能。 在工业自动化控制系统中,经常需要进行远程控制或数据采集,这些控制与数据采集可以通过哪些接口实现呢?我们常常会想到用PCI控制板卡或PCI数据采集板卡等,但要增加这些PCI卡,势必会增加成本,基于LabVIEW下,利用虚拟串口也可以轻松实现上述功能,轻松实现串口之间的数据通信和采集。串口通信通常有两种方式,一种是RS232通信方式,一种是RS485通信方式,前者适用于近距离通信,通常在15m范围内,后者适用于远距离通信,通信距离通常是在1200米范围内。 1 系统功能 设计一个PC机串口通信程序,并完成其控制系统的程序设计、画面制作、系统接线和运行调试。 在程序的前面板上分别选择这两个虚拟串口com3和com4,两个串口通信程序分别命名为A机与B机。建立好后,两个程序运行,A机发送字符或十六进数值,B机应该收到并显示;B机发送字符或十六进制数值,A机应该收到并显示,A机和B机串口通信界面如图1所示。 A机串口通信界面 B机串口通信界面图1 串口通信程序界面 2 系统设计流程框图 先配置端口、波特率、停止位、数据位、校验位;然后在A机写入缓冲区写入要发送的字符,点击A机发送按钮;观察B机,是否收到A机所发送过来的字符;在B机写入缓冲区写入要发送的字符,点击B机发送按钮;观察A机,是否收到B机所发送过来的字符,根据系统控制要求,绘制系统流程如图2所示[2]: 图2 A机、B机串口通信系统流程框图 3 VISA配置串口 首先需要调用VISA Configure Serial Port完成串口参数的设置,包括串口资源分配、波特率、数据位、停止位、校验位和流控等等。 如果初始化没有问题,就可以使用这个串口进行数据收发。发送数据使用VISA Write,接收数据使用VISA Read。在接收数据之前需要使用VISA Bytes at Serial Port查询当前串口接收缓冲区中的数据字节数,如果VISA Read要读取的字节数大于缓冲区中的数据字节数,VISA Read操作将一直等待,直至Timeout或者缓冲区中的数据字节数达到要求的字节数。当然也可以分批读取接收缓冲区或者只从中读取一定字节的数据。 在某些特殊情况下,需要设置串口接收/发送缓冲区的大小,此时可以使用VISA Set I/O Buffer Size;而使用VISA Flush I/O Buffer则可以清空接收与发送缓冲区。在串口使用结束后,使用VISA Close结束与VISA resource name指定的串口之间的会话。 4 根据控制要求进行LabVIEW程序设计 根据控制要求进行程序设计,首先在桌面双击National Instruments LabVIEW 2011,进入项目浏览器,在项目浏览器窗口,建立新项目,然后在我的电脑——右键新建——VI,新建VI后,我们会看到两个新的窗口,分别是前面板和程序框图,保存VI→并左右两栏显示。在程序框图里添加VISA配置。 然后创建While循环与条件结构: a.程序框图——编程——结构——While循环 b.程序框图——编程——结构——条件结构 再然后创建串口配置输入控件: a.端口:在连线端口上右键——创建——输入控件; b.波特率:在连线波特率端口上右键——创建——输入控件; c.数据位:在连线数据位端口上右键——创建——输入控件; d.校验位:在连线校验位端口上右键——创建——输入控件; e.停止位:在连线停止位端口上右键——创建——输入控件; f.错误输入:在连线错误输入端口上右键——创建——输入控件; g.条件输入框:在连线条件输入框上右键——创建——输入控件; h.While循环停止:在连线While循环停止上右键——创建——输入控件; 最后完善和优化LabVIEW程序,最终形成如图3所示程序[1]。 条件为“真”值的控制程序 条件为“假”值的控制程序图3 LabVIEW控制程序 5 系统调试 在A机的写入缓冲区中,写入要发送的字符,点击发送,观察B机读取缓冲区中显示是否与A机发送的字符一致,如是一致,则说明PC机与PC机虚拟串口通信正常,同理在B机的写入缓冲区中,写入要发送的字符,点击发送,观察A机读取缓冲区中显示是否与B机发送的字符一致。这样基于LabVIEW下PC机与PC机虚拟串口通信程序的设计就完成了。点击退出按钮,系统即可退出运行。 [1]黄荻.基于LabVIEW与STC单片机的温度监测系统设计[J].电子测试,2017(4):20-21. [2]汤佳明,安伟.基于LABVIEW的上位机串口通信程序设计[J].电子设计工程,2018(11):86-90. LabVIEW(Laboratory Virtual instrument Engineering)是一种图形化的编程语言,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。LabVIEW集成了与满足GPIB、VXI、RS-232和RS-485协议的硬件及数据采集卡通信的全部功能。在工业自动化控制系统中,经常需要进行远程控制或数据采集,这些控制与数据采集可以通过哪些接口实现呢?我们常常会想到用PCI控制板卡或PCI数据采集板卡等,但要增加这些PCI卡,势必会增加成本,基于LabVIEW下,利用虚拟串口也可以轻松实现上述功能,轻松实现串口之间的数据通信和采集。串口通信通常有两种方式,一种是RS232通信方式,一种是RS485通信方式,前者适用于近距离通信,通常在15m范围内,后者适用于远距离通信,通信距离通常是在1200米范围内。1 系统功能设计一个PC机串口通信程序,并完成其控制系统的程序设计、画面制作、系统接线和运行调试。在程序的前面板上分别选择这两个虚拟串口com3和com4,两个串口通信程序分别命名为A机与B机。建立好后,两个程序运行,A机发送字符或十六进数值,B机应该收到并显示;B机发送字符或十六进制数值,A机应该收到并显示,A机和B机串口通信界面如图1所示。A机串口通信界面B机串口通信界面图1 串口通信程序界面2 系统设计流程框图先配置端口、波特率、停止位、数据位、校验位;然后在A机写入缓冲区写入要发送的字符,点击A机发送按钮;观察B机,是否收到A机所发送过来的字符;在B机写入缓冲区写入要发送的字符,点击B机发送按钮;观察A机,是否收到B机所发送过来的字符,根据系统控制要求,绘制系统流程如图2所示[2]:图2 A机、B机串口通信系统流程框图3 VISA配置串口首先需要调用VISA Configure Serial Port完成串口参数的设置,包括串口资源分配、波特率、数据位、停止位、校验位和流控等等。如果初始化没有问题,就可以使用这个串口进行数据收发。发送数据使用VISA Write,接收数据使用VISA Read。在接收数据之前需要使用VISA Bytes at Serial Port查询当前串口接收缓冲区中的数据字节数,如果VISA Read要读取的字节数大于缓冲区中的数据字节数,VISA Read操作将一直等待,直至Timeout或者缓冲区中的数据字节数达到要求的字节数。当然也可以分批读取接收缓冲区或者只从中读取一定字节的数据。在某些特殊情况下,需要设置串口接收/发送缓冲区的大小,此时可以使用VISA Set I/O Buffer Size;而使用VISA Flush I/O Buffer则可以清空接收与发送缓冲区。在串口使用结束后,使用VISA Close结束与VISA resource name指定的串口之间的会话。4 根据控制要求进行LabVIEW程序设计根据控制要求进行程序设计,首先在桌面双击National Instruments LabVIEW 2011,进入项目浏览器,在项目浏览器窗口,建立新项目,然后在我的电脑——右键新建——VI,新建VI后,我们会看到两个新的窗口,分别是前面板和程序框图,保存VI→并左右两栏显示。在程序框图里添加VISA配置。然后创建While循环与条件结构:a.程序框图——编程——结构——While循环b.程序框图——编程——结构——条件结构再然后创建串口配置输入控件:a.端口:在连线端口上右键——创建——输入控件;b.波特率:在连线波特率端口上右键——创建——输入控件;c.数据位:在连线数据位端口上右键——创建——输入控件;d.校验位:在连线校验位端口上右键——创建——输入控件;e.停止位:在连线停止位端口上右键——创建——输入控件;f.错误输入:在连线错误输入端口上右键——创建——输入控件;g.条件输入框:在连线条件输入框上右键——创建——输入控件;h.While循环停止:在连线While循环停止上右键——创建——输入控件;最后完善和优化LabVIEW程序,最终形成如图3所示程序[1]。条件为“真”值的控制程序 条件为“假”值的控制程序图3 LabVIEW控制程序5 系统调试在A机的写入缓冲区中,写入要发送的字符,点击发送,观察B机读取缓冲区中显示是否与A机发送的字符一致,如是一致,则说明PC机与PC机虚拟串口通信正常,同理在B机的写入缓冲区中,写入要发送的字符,点击发送,观察A机读取缓冲区中显示是否与B机发送的字符一致。这样基于LabVIEW下PC机与PC机虚拟串口通信程序的设计就完成了。点击退出按钮,系统即可退出运行。参考文献:[1]黄荻.基于LabVIEW与STC单片机的温度监测系统设计[J].电子测试,2017(4):20-21.[2]汤佳明,安伟.基于LABVIEW的上位机串口通信程序设计[J].电子设计工程,2018(11):86-90.

文章来源:通信企业管理 网址: http://txqygl.400nongye.com/lunwen/itemid-6542.shtml


上一篇: 北斗数传通信模块在智能电网中的应用
下一篇: 工业经济论文_隐形冠军精一创业能力生成机理及路径研究



点击在线投稿

 
/ / /
 
 
 
 

Copyright 2001-2021 400农业期刊网版权所有 做最专业学术期刊论文发表网站
本站不是《通信企业管理杂志社》官网,如果需要联系官方杂志社,请联系客服索取网站或者电话。