在LabVIEW中编写PLC串口调试程序-PLC技术网(www.plcjs.com)-可编程控制器技术门户


在LabVIEW中编写PLC串口调试程序

(点击题目可以在互联网中搜索该题目的相关内容)
日期:2007-9-6 23:53:29     来源:中国自动化网   作者: 点击:
点击【】,可以选择字体的大小,以便你阅读.
1. 概述

  虚拟仪器代表了今后测试仪器的发展方向,而LabVIEW作为虚拟仪器的一种较为优秀的开发平台,因其编程简单、功能图表丰富及开发环境开发,而得到日益广泛的应用。

  在生产型企业中的典型应用是由PLC网络和工控机组成的以LabVIEW为开发平台的生产监控系统。该系统通过PLC、LabVIEW的控制程序和网络通讯功能,实现生产网络各功能的控制和监控。因此实现工控机与PLC网络的通讯和数据的解析是实现整个监控系统的基础。

  此文中,介绍了如何通过LabVIEW的串口节点和仪器I/O助手实现读写松下FP2 系列的PLC。 图1-1为PLC和工控机组成的生产网络的典型架构图,其中各PLC以PC Link网络的形式通讯。

图1-1
图1-1 PC机与PLC组成的典型网络架构图



  图中PLC模块组的各模块单元分别为:

  a) PW:电源模块
  b) CPU:松下FP2系列PLC控制模块
  c) MW:网络通讯单元MEWNET (Multi-wire link unit)
  d) SDU:串口通讯单元Serial data unit
  e) I/O:输入输出模块


  2. 串口读写程序的编写

  2.1. LabVIEW中VISA节点简介

  在LABVIEW中用于串行通信的节点实际上是VISA(Virtual instrument software architecture)节点。为了方便用户使用,LabVIEW将这些VISA节点单独组成一个子模块,共包含6个节点,分别实现初始化串口、串口写、串口读、中断以及关闭串口等功能,这些节点位于Functions模板/All Functions子模板/Instrument I/O子模板、Serial子模板中,如下图2-1所示。

图2-1
图2-1 VISA节点选择路径



  在LabVIEW中,VISA串行通信节点的使用方法比较简单,且易于理解。以下试验结合各节点的参数定义、用法及功能,详细说明了一个完整的串口读写过程。


  2.2. LabVIEW编写串口读写程序

  图2-2所示的是LabVIEW 中串口读写程序的前面板设计,在此面板中可选择串口资源,设置串口参数,包括波特率、数据位、校验、停止位与握手控制(流控制)等。按如图1-2上的参数设置好,在发送区输入符合松下PLC通讯协议格式的读命令字符串:“%01#RDD0000000026**\r”,按下运行按钮后,在返回区会收到正确返回字串:
“%01RD6F694F496F704F5051576F696F696F696F696F696F
696F696F696F696F696F696F696F696F696F696F696F696F696F696F696F696F6910”。

  依照《松下MEWTOCOL通讯协议》的解释,此字串已正确的返回数据寄存器DT0到DT26的数据信息。这样就轻易地实现了LabVIEW的一个读取PLC数值的动作。

图2-2
图2-2 LabVIEW串口程序前面板


  在LabVIEW 中,前面板节点与后面板节点成对应前后关系,程序在后面板执行,其结果在前面板中显示。打开LABVIEW的后面板,程序显示如下图2-3,其执行顺序为:第一步,初始化串口,设置串口的通讯参数,使其与PLC的串行通讯参数一致,此动作由“VISA Configuration Serial Port.vi”节点点完成。如下图:

图2-3
图2-3 LabVIEW串口设置节点后面板



  该节点的主要功能是初始化、配置串口。用该节点设置串口的波特率为:115200bps、数据位为:8位;停止位为:1位;奇偶校验为:奇校验;流量控制为:不使用。其中波特率可设为115200 bps、19200 bps、9600 bps等;数据位一般可设为:7或8位;而校验位可设为:无校验、奇校验与偶校验等。根据此节点的特征:输入数字“0”代表为无校验,输入数字“1”为奇校验,输入数字“2”为偶校验。对于停止位则输入数字“10”代表选择的停止位为1位,输入数字“15”代表选择停止位为1.5位,输入数字“20”代表选择停止位为2位。握手控制(流控制)一般设为不使用,即输入数字“0”(握手控制只在串口缓存不足时才使用)。

本新闻共3页,当前在第11 2  3  

上一篇: 解析工业编程语言国际标准IEC61131-3-王蔚庭(1)(转)
下一: 嵌入式应用软件任务划分原则