基于Modbus RTU实现的LabVIEW与S7-200系列PLC的串口通信

I T 技
科技创新导报 Science and Technology Innovation Herald
42
L a bV IE W是美国国家仪器有限公司提供的一套软件开发平台,广泛应用于数据采集、监控、自动化测试测量领域[1]
西门子S7-200系列PL C 具有紧凑的设计、丰富的扩展能力、极高的可靠性、便捷的操作性和强大的指令系统,广泛的应用于各种工业领域中。
M o d b u s 是一种串行通信协议,它已经成为工业领域的通信协议标准,并且是现在工业电子设备之间常用的连接方式。M o d b u s 传输协议定义了控制器可以识别和使用的信息结构,而无须考虑通信网络的拓扑结构[2]
M o d b u s 具有两种串行传输模式:A S CII和R T U。它们定义了数据如何打包、解码的不同方式。本文阐述的主要内容是以M o d b u s  R T U 为基础实现的L a b V I E W 与S7-200系列PLC之间的串口数据通信。
1 系统架构
该文以某企业数据采集与监控系统项目为背景。该项目中,上位机为工控机运行L a bV IE W 软件,完成各个分系统的数据汇总和人机界面等功能;下位机PLC作为客户端,负责向上位机提供采集的数据,同时接收上位机控制指令。
S 7-200P L C 的通信口是R S -485串行接口,工控机是R S -232串行接口,之间通过RS485/RS232转换模块连接。
2 软件实现
本方案,P L C 作为M o d b u s  R T U 的从站,通过自由口通信模式实现。2.1 配置RTU从站
M o d b u s  R T U从站功能是通过指令库中预先编好的程序功能实现的。从站指令库只支持CPU上的通信端口0(Port0)。
从站指令库包括初始化程序M B U S _
污水监测
I N I T 和响应主站请求子程序M B U S _SLAVE。
窗前的气球教学设计M B U S _I N I T 子程序可以用S M 0.1调用,本方案配置如图1所示,M o d e 置1,A d d r取2,B a u d 设为9600,P a r it y置2,D e l a y 取默认值0,M a x I Q 取默认值128,M a x A I 为32,M a x H o
l d 为1000, HoldSta rt设为“&VB0”,使用库存储器命令为M o d b u s从站协议指令所要求的V 存储器分配一个起始地址。D o n e成功初始化后置1,Error在Done位为1时有效。
M B U S _S L A V E 指令用于响应主站的请求,必须在每个循环周期都执行,用SM0.0调用,如图2所示。
科技创新导报
本方案,工控机端软件采用L a bV IE W 编写,实现通信设置、数据处理等功能。2.2 Modbus RTU从站指令
上位机用到的M o d b u s 从站协议功能:
3—读单个/多个保持寄存器。功能3返回V 存储器的内容。保持寄存器在M o d b u s 下是字类型,在一个请求中最多可读120个字。佳能650d召回
6—写单个保持寄存器。功能6写一个单个保持寄存器的值到S 7—200的V 存储区。
16—写多个保持寄存器。功能16写多个保持寄存器到S7—200的V区。在一个请求中最多可写120字。
基于Modbus RTU实现的LabVIEW与
S7-200系列PLC的串口通信
联想td800王洪强
(核工业理化工程研究院  天津  300180)
摘 要:在大规模、复杂的工业应用中,常常会用到不同的软、硬件平台,如何实现不同平台的数据通信,是经常需要解决的问题。该文针对LabVIEW和西门子S7-200系列PLC这两种被广泛使用的软、硬件平台之间的数据通信问题,提出了一种基于Modbus RTU协议的解决方案,并阐述了具体的实现步骤。
关键词:Modbus RTU  LabVIEW  PLC  串口通信
中图分类号:TP336    文献标识码:A
文章编号:
1674-098X(2015)07(c)-0042-02
图1  MBUS_INIT子程序
图2  MBUS_SLAVE子程序图3  串口参数配置
Copyright©博看网 www.bookan. All Rights Reserved.
I T 技术
科技创新导报 Science and Technology Innovation Herald 43
2.3 创建VISA串口通信
首先需要调用V I S A  C o n f i g u r e Serial Port完成串口参数的设置,包括串口资源分配、波特率、数据位、停止位、校验位等。串口参数根据PLC设置的串口参数配置。串口号选择与实际硬件连接的串口号。如图3所示。
初始化后,就可使用该串口进行数据收发。发送数据使用VISA Write,接收数据使用VISA Read。
在接收数据之前需要使用V I S A Bytes at Serial Port查询当前串口接收缓冲区中的数据字节数,使VISA  Re a d 要读取的字节数等于缓冲区中的数据字节数。
数据收发格式:(1)写PLC数据格式。
发送:串口号+P L C 地址+功能码+寄存器起始地址+寄存器数量+字节计数+设置内容+CRC校验
响应:串口号+P L C 地址+功能码+寄存器起始地址+寄存器数量+CRC校验
(2)读PLC数据格式。
发送:串口号+P L C 地址+功能码+寄存器起始地址+读取数量+CRC校验
响应:串口号+PLC 地址+功能码+字节计数+输入状态+ CRC校验
如图4所示,为上位机读取PL C的地址为2,数据地址为V B 100至V B 109数据的LabVIEW程序。2.4 数据通信
该文主要阐述的是上位机L a b V I E W 软件如何读写S7-200 PLC中V区的数据。P L C 把上位机需要的所有数据先存
储到V
区,在上位机需要时发送给上位机。上位机通过写P L C 的V 区,待P L C 响应V 区数据时进而控制PLC。
3 结语
在大规模、复杂的工业应用中,常常会用到不同的软、硬件平台,如何实现不同平台的数据通信,是经常需要解决的问题。该文针对L a b V I E W 和西门子S 7-200系列P L C 这两种被广泛使用的软、硬件件平台之间的数据通信问题,阐述了基于M o d b u s
R T U 协议的串口通信解决方案和具体的实现步骤。
参考文献矶沙蚕
[1] E l l i o t t  C ,e t  a l .N a t i o n a l
i n s t r u m e n t s  L a b V I E W :a p r o g r a m m i n g  e n v i r o n m e n t  fo r l a b o r a t o r y  a u t o m a t i o n  a n d m e a su re m e nt[J].Jo u r n al  of  th e A s s o c i a t i o n  f o r  L a b o r a t o r y Automation,2007,12(1):17-24.[2] 韩战涛.西门子S7-200PLC 编程与工程
实例详解[M].北京:电子工业出版社,2013.
图4  读PLC程序
稿件要求
1.稿件应具有科学性、先进性和实用性,论点明确、论据可靠、数据准确、逻辑严谨、文字通顺。
2.计量单位以国家法定计量单位为准;统计学符号须按国家标准《统计学名词及符号》的规定书写。
3.所有文章标题字符数在20字以内。
4.参考文献按引用的先后顺序列于文末。
5.正确使用标点符号,表格设计要合理,推荐使用三线表。
6.图片要清晰,注明图号。投稿说明
1.来稿一律使用Word排版且具有一定的学术水平,以2700字左右为宜,并保证文章版权的独立性,严禁抄袭,文责自负,请勿一稿多投,欢迎投稿。
2.本刊已加入《中国学术期刊(光盘版)》《中文科技期刊数据库》《万方数据数字化期刊》等网络媒体,本刊发表的文章将在网络媒体上全文发布。
3.本刊编辑部对来稿有修改权,不愿改动者请事先说明。自收稿之日起1个月内未收到刊用通知,作者可自行处理。
4.来稿请注明作者姓名、单位、通讯地址、邮编、及。
5.本刊发表周期为10天,出刊后5天内邮寄样刊。
6.如有一稿多投、剽窃或抄袭行为者,一切后果由作者本人负责。
《科技创新导报》稿件要求及投稿说明
Copyright©博看网 www.bookan. All Rights Reserved.

本文发布于:2024-09-20 15:22:04,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/726023.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:数据   使用   串口   功能   寄存器   上位   实现
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议