VB上位机与PLC通信

合集下载

vb与plc通讯(以西门子S7-200为例)

vb与plc通讯(以西门子S7-200为例)

vb与plc通讯(以西门子S7-200为例)S7-200 PLC之PPI协议通过硬件和软件侦听的方法,分析PLC内部固有的PPI通讯协议,然后上位机采用VB编程,遵循PPI通讯协议,读写PLC数据,实现人机操作任务。

这种通讯方法,与一般的自由通讯协议相比,省略了PLC的通讯程序编写,只需编写上位机的通讯程序资源S7-226的编程口物理层为RS-485结构,SIEMENS提供MicroWin软件,采用的是PPI(Point to Point)协议,可以用来传输、调试PLC程序。

在现场应用中,当需要PLC与上位机通讯时,较多的使用自定义协议与上位机通讯。

在这种通讯方式中,需要编程者首先定义自己的自由通讯格式,在PLC中编写代码,利用中断方式控制通讯端口的数据收发。

采用这种方式,PLC 编程调试较为烦琐,占用PLC的软件中断和代码资源,而且当PLC的通讯口定义为自由通讯口时,PLC的编程软件无法对PLC进行监控,给PLC程序调试带来不便。

SIEMENSS7-200PLC的编程通讯接口,内部固化的通讯协议为PPI协议,如果上位机遵循PPI协议来读写PLC,就可以省略编写PLC的通讯代码。

如何获得PPI协议?可以在PLC的编程软件读写PLC数据时,利用第三个串口侦听PLC的通讯数据,或者利用软件方法,截取已经打开且正在通讯的端口的数据,然后归纳总结,解析出PPI协议的数据读写报文。

这样,上位机遵循PPI协议,就可以便利的读写PLC内部的数据,实现上位机的人机操作功能。

软件设计系统中测控任务由SIEMENSS7-226PLC完成,PLC采用循环扫描方式工作,当定时时间到时,执行数据采集或PID控制任务,完成现场的信号控制。

计算机的监控软件采用VB编制,利用MSComm控件完成串口数据通讯,通讯遵循的协议为PPI协议。

PPI协议西门子的PPI(Point to Point)通讯协议采用主从式的通讯方式,一次读写操作的步骤包括:首先上位机发出读写命令,PLC作出接收正确的响应,上位机接到此响应则发出确认申请命令,PLC则完成正确的读写响应,回应给上位机数据。

上位机VB实现与三菱PLC的串行通讯

上位机VB实现与三菱PLC的串行通讯

上位机VB实现与三菱PLC的串行通讯上位机VB实现与三菱PLC的串行通讯1. 通行原理与方法上位机要能够通过PLC监控下层设备的状态,就要实现上位机与PLC间的通信,一般工业控制中都是采用RS232C实现。

上位机首先向PLC发送查询数据的指令(实际上是查询PLC中端子的状态和DM 区的值等),PLC接收了上位的指令后,进行校验(FCS校验码),看其是否正确,如果正确,则向上位机传送数据(包含首尾校验字节)。

否则,PLC拒绝向上位机传送数据。

上位接收到PLC传送的数据,也要判断正确与否,如果正确,则接收,否则,拒绝接收。

由于CPM1A没有提供串行通信口,我们利用其提供的外设端口实现通信。

PLC与计算机之间的连接是通过OMRON提供的专用电缆CQM1-CIF01来实现的,其硬件连接图如图1所示。

(见附图)2. PLC与计算机间的通信规约计算机与PLC间的通信是以“帧”为单位进行的,并且在通信的过程中,计算机具有更高的优先级。

首先,计算机向PLC发出命令帧,然后,PLC作出响应,向计算机发送回响应帧。

其中命令帧和响应帧的格式如下:(1) 命令帧格式。

为了方便计算机和PLC的通讯,CPM1A对在计算机连接通信中交换的命令和响应规定了相应的格式。

当计算机发送一个命令时,命令数据主准备格式如图2所示。

(见附图)其中@放在首位,表示以@开始,设备号为上位机识别所连接的PLC的设备号。

识别码为命令代码,用来设置用户希望上位机完成的操作,FCS为帧检验代码,一旦通信出错,通过计算FCS可以及时发现。

结束符为“*”和CR回车符,表示命令结束。

(2) 响应帧格式。

由PLC发出的对应于命令格式的响应帧格式如图3所示。

(见附图)其中,异常码可以确定计算机发送的命令是否正确执行。

其它的与正文中的含义相同。

正文仅在有读出数据时有返回。

3. 通信程序的设计为了充分利用计算机数据处理的强大功能,我们可以采用计算机有优先权的方式,在计算机上编写程序来实现计算机与PLC的通信,计算机向PLC发出命令发起通信,PLC自动返回响应。

基于VB6.0的上位机与PLC实时通信技术

基于VB6.0的上位机与PLC实时通信技术

基于VB6.0的上位机与PLC实时通信技术基于VB6.0的上位机与PLC实时通信技术主要是通过VB6.0编程语言与PLC进行通信,实现实时数据的传输和控制操作。

要实现VB6.0与PLC的通信,首先需要通过串口连接VB6.0和PLC。

VB6.0中提供了MSComm控件,可用于实现与PLC的串口通信。

该控件可以配置串口的波特率、数据位、校验位等参数,并可以通过编程实现串口的打开和关闭操作。

在VB6.0中需要编写相应的程序代码,通过串口与PLC进行数据的发送和接收。

VB6.0提供了相应的函数和方法,可以用于读取和写入串口的数据。

通过与PLC进行数据交互,可以实现对PLC的监控和控制操作。

在进行通信时,需要定义好数据的格式和协议,以确保VB6.0与PLC之间能够正确地进行数据的传输和解析。

对于不同的PLC型号和厂商,通信协议可能会有所不同,因此需要按照PLC的通信协议进行编程开发。

在实时通信过程中,需要注意以下几个关键点。

要确保VB6.0与PLC的通信速度要足够快,以实现实时数据的传输和控制操作。

要确保数据的准确性和可靠性,可以通过校验位等方式进行数据的校验和验证。

还需要进行错误处理和异常处理,以避免通信故障和数据丢失等问题的发生。

通过使用VB6.0编程语言,结合PLC的串口通信功能,可以实现上位机与PLC的实时通信。

这样,就能够方便地进行工业控制和监测等操作,提高了生产效率和设备的运行稳定性。

基于VB6.0的上位机与PLC实时通信技术也为后续的数据分析和处理提供了基础。

这对于工业自动化领域的发展和应用具有重要意义。

基于VB6.0的上位机与PLC实时通信技术

基于VB6.0的上位机与PLC实时通信技术

基于VB6.0的上位机与PLC实时通信技术VB6.0是一种编程语言,可用于开发上位机与PLC之间的实时通信技术。

PLC是一种可编程逻辑控制器,用于控制和监控自动化设备。

通过实时通信,上位机可以与PLC进行数据交换和控制操作。

1. 通信协议选择:PLC与上位机之间的通信需要选择适当的通信协议。

常见的通信协议包括Modbus、OPC、Profibus等。

根据实际需求和设备的支持情况选择合适的通信协议。

2. 串口通信:VB6.0通过串口通信与PLC进行连接。

通常采用RS232、RS485等串口通信方式。

在编程中,需要设置串口的波特率、数据位、停止位、校验位等参数。

通过VB6.0的串口通信类库,可以实现数据的读取和写入。

3. 数据采集和监控:通过VB6.0实现对PLC数据的采集和监控。

可以使用定时器触发方式,周期性的读取PLC设备的数据。

通过VB6.0的数据处理和显示功能,可以实时显示PLC设备的状态和数据信息,如温度、压力、流量等。

4. 控制指令的发送:通过VB6.0向PLC发送控制指令,实现对设备的控制。

根据PLC 的控制逻辑,编写相应的控制程序,将控制指令发送给PLC设备。

通过串口通信,将控制指令发送出去,实现设备的开关、调节等操作。

5. 异常处理:在实时通信中,可能会出现通信故障、数据错误等异常情况。

需要在编程中添加异常处理的代码,对异常情况进行处理,保证通信的稳定性和可靠性。

基于VB6.0的上位机与PLC实时通信技术可以广泛应用于自动化控制、工业监控、智能家居等领域。

通过实时通信,可以实现对设备的远程监控和控制,提高设备的自动化程度和工作效率。

在编程过程中,需要注意通信协议的选择和参数的设置,以确保通信的正确和可靠。

需要添加适当的异常处理机制,提升系统的稳定性和可靠性。

基于VB6.0的上位机与PLC实时通信技术

基于VB6.0的上位机与PLC实时通信技术

基于VB6.0的上位机与PLC实时通信技术一、引言随着自动化技术的不断发展,PLC(可编程逻辑控制器)已经成为自动化领域中不可或缺的设备。

PLC通常用于控制工业生产线上的设备和机器,而上位机则是用来监控和管理PLC系统的设备。

众所周知,实时通信是保证PLC系统正常运行的重要因素之一。

在这篇文章中,我们将重点介绍基于VB6.0的上位机与PLC实时通信技术。

二、VB6.0简介VB6.0是微软公司于1998年发布的一款集成开发环境(IDE),它是一种编程语言,被广泛用于开发Windows平台下的应用程序。

VB6.0具有简单易学、功能丰富、开发效率高等特点,因此在工业领域得到了广泛应用。

考虑到VB6.0的这些优势,我们可以利用它来开发上位机程序,并实现与PLC的实时通信。

三、PLC实时通信技术1. 串口通信PLC通常通过串口与上位机进行通信。

在VB6.0中,我们可以利用MSCOMM控件来实现串口通信。

通过在VB6.0的界面中添加MSCOMM控件,并设置相应的串口参数(如波特率、数据位、校验位、停止位等),就可以实现与PLC的串口通信。

2. Modbus通信Modbus是一种通信协议,被广泛用于工业控制领域。

通过Modbus协议,我们可以实现上位机与PLC之间的实时通信。

在VB6.0中,我们可以使用第三方的Modbus通信库来实现Modbus通信,例如Modbus ActiveX控件等。

通过这些控件,我们可以轻松地实现Modbus通信,从而实现上位机与PLC的实时数据交换。

3. Socket通信1. 配置MSCOMM控件接下来,我们需要编写VB6.0代码,实现与PLC的串口通信。

您可以编写相应的串口通信代码,例如打开串口、发送数据、接收数据等。

示例代码如下:Private Sub Form_Load()mPort = 1 ' 串口号MSComm1.Settings = "9600,n,8,1" ' 波特率、校验位、数据位、停止位MSComm1.PortOpen = True ' 打开串口End SubPrivate Sub Command1_Click()MSComm1.Output = "010*********FF01" ' 发送数据End Sub3. 运行程序并测试您可以运行程序,并测试与PLC的串口通信是否正常。

基于VB6.0的上位机与PLC实时通信技术

基于VB6.0的上位机与PLC实时通信技术

基于VB6.0的上位机与PLC实时通信技术【摘要】本文围绕基于VB6.0的上位机与PLC实时通信技术展开讨论。

在介绍了该技术的背景和意义。

在分别讨论了VB6.0在工业控制系统中的应用,PLC的应用与特点,上位机与PLC之间的通信方式,以及基于VB6.0的实时通信技术实现方法和在工业控制中的应用。

在预测了该技术的发展趋势和未来应用前景,并对全文进行了总结。

通过本文的研究,读者将了解到基于VB6.0的上位机与PLC实时通信技术在工业控制中的重要性和应用价值,以及未来发展的潜力和前景。

【关键词】关键词:VB6.0、上位机、PLC、实时通信技术、工业控制系统、通信方式、发展趋势、未来应用、应用前景、研究背景、研究意义、实现方法、应用、总结1. 引言1.1 介绍基于VB6.0的上位机与PLC实时通信技术基于VB6.0的上位机与PLC实时通信技术指的是利用Visual Basic 6.0作为编程语言,实现与可编程逻辑控制器(PLC)之间的即时通信。

在工业控制系统中,上位机扮演着监控和控制的角色,而PLC则负责执行实际的控制任务。

通过实时通信技术,上位机可以实时监控和控制PLC的运行状态,实现对生产过程的实时调控。

基于VB6.0的上位机与PLC实时通信技术的实现主要包括建立通信连接、数据传输和接收处理三个步骤。

需要建立通信连接,确定上位机与PLC之间的通信协议和通信方式,例如使用串口通信或以太网通信。

然后通过编程实现数据的传输和接收处理,将上位机发送的指令和数据传输给PLC,并接收并处理PLC返回的状态和数据。

这种基于VB6.0的上位机与PLC实时通信技术在工业自动化控制中具有重要意义。

它可以实现生产过程的实时监控和控制,提高生产效率,减少人力成本,降低故障率,提升生产质量。

同时也为工业控制系统的智能化和网络化发展提供了重要技术支持。

1.2 研究背景由于工业现场环境复杂多变,传统的PLC与上位机通信方式往往存在诸多不足,如实时性差、稳定性差、数据传输速度慢等问题。

基于VB的上位机与PLC的串行通信

基于VB的上位机与PLC的串行通信

基于VB的上位机与PLC的串行通信1 引言在现代控制系统中,pc机作为上位机负责系统管理、状态监控、信息处理和打印报表等工作,plc作为下位机进行面向现场的实时控制已成为一种典型的系统结构。

因此,pc机与plc之间的通信问题便成了系统能否实现的关键。

串行通信以其接线简单、容易实现的特点得到了广泛的应用。

visual basic编程软件简单易学、功能强大,利用它可以很方便的实现pc机与plc间的串行通讯。

本文以omron公司的cpm2a plc为例,介绍了利用vb6.0实现pc机与plc串行通讯的具体方法。

omron公司的cpm2a plc支持host-link通信协议,可以与上位计算机进行通信。

使用host-link通信协议构成的通信网络,可以很方便的实现上位pc对下位plc的实时监控。

2 原理设计2.1 系统结构系统结构如图1所示,计算机作为上位机,plc作为下位机,因omron cpm2a本身带有rs-232串口,因此,利用rs-232电缆将其与pc机的串口(com1或com2)相连,便构成了一个1:1的简单的通讯系统[1]。

图1 系统结构2.2 host-link通信协议[2]omron公司的host-link通信系统是由上位计算机(ibm pc或兼容机)通过安装在各台p lc上的host-link单元连接多台plc构成的网络。

上位机对系统中的plc进行集中管理与监控,通过与host link单元的通信,可以编辑或修改各台plc的程序,实时监控其运行过程,实现自动化系统的集散控制。

对于小型plc,也可以通过其rs 232c通信端口进行链接。

系统使用host-link通信协议进行通信,上位机具有传送优先权,总是首先发出命令并启动通信,host link单元收到命令交由plc执行,然后将执行结果返回上位机,二者以通信帧为单位,轮流交换数据。

通信时一组传送的数据称为“块”,它是命令或响应的单位,从上位机发送到host -link单元的数据块称为命令块,反过来,从host- link单元发送到上位机的数据块称为响应块。

基于VB6.0的上位机与PLC实时通信技术

基于VB6.0的上位机与PLC实时通信技术

基于VB6.0的上位机与PLC实时通信技术一、实时通信技术在工业控制系统中的重要性实时通信技术在工业控制系统中扮演着十分重要的角色。

在现代工业控制系统中,各种设备之间需要进行及时、准确的信息交换,以保证整个系统的正常运行。

在许多工业控制系统中,PLC往往承担着实时数据采集、逻辑控制、设备状态监测等任务,而上位机则需要通过实时通信技术与PLC进行数据交换和控制命令的下发。

实时通信技术的稳定性和可靠性对整个工业控制系统的运行至关重要。

基于此,基于VB6.0的上位机与PLC实时通信技术成为了工程师们需要深入研究和掌握的技术。

二、VB6.0在上位机开发中的应用VB6.0是一种非常成熟、功能强大的软件开发工具,拥有良好的可视化设计界面和强大的编程功能。

在工业自动化领域,基于VB6.0的上位机开发具有以下几个优势:1. 易于学习和使用。

VB6.0的编程语言结构清晰、简单易懂,对于工程师来说比较容易上手。

2. 丰富的控件库。

VB6.0提供了丰富的控件库,可以方便地实现各种窗体界面的设计和功能的实现。

3. 良好的可视化设计界面。

VB6.0提供了良好的可视化设计界面,可以直观地设计界面布局和控件功能。

4. 广泛的应用领域。

VB6.0已在工业控制系统中得到了广泛的应用,积累了大量的经验和案例,为工程师们提供了丰富的技术支持和解决方案。

基于VB6.0的上位机开发在工业控制系统中得到了广泛的应用。

在后文中,我们将结合VB6.0的优势,介绍基于VB6.0的上位机与PLC实时通信的具体实现方法。

基于VB6.0的上位机与PLC实时通信的具体实现方法通常包括以下几个步骤:1. 建立通信连接。

通常情况下,PLC与上位机之间的通信连接可以通过串口、以太网等方式实现。

在VB6.0中,我们可以利用其提供的串口通信、Socket通信等控件来建立与PLC的通信连接。

2. 设计数据交换协议。

在进行实时通信时,上位机与PLC之间需要进行数据的交换。

VB与PLC的通信

VB与PLC的通信

利用VB6.0 实现PC 与三菱PLC 的通信本文介绍的 PC 与三菱 FX 系列 PLC 通信,是通过 PLC 的编程口与 PC 机的串口进行的,采用编程电缆作为计算机与 PLC 通信的连线。

FX2系列PLC的编程接口采用RS-422标准,而计算机的串行口采用的是RS-232标准,因此作为实现PLC与计算机通信的接口模块FX-232AW,必须将RS-422标准转换成RS-232标准,同时在实现上述过程中采用光电隔离技术。

图1一、串口的相关知识1)串行通信的概念图2所谓“串行通信”是指外设和计算机间使用一根数据信号线(另外需要地线,可能还需要控制线),数据在一根数据信号线上一位一位地进行传输,每一位数据都占据一个固定的时间长度。

如图2所示。

这种通信方式使用的数据线少,在远距离通信中可以节约通信成本,当然,其传输速度比并行传输慢2)常见的串口通信规约:目前较为常用的串口有9针串口(DB9)和25针串口(DB25),通信距离较近时(<12m),可以用电缆线直接连接标准RS232端口(RS422,RS485较远),若距离较远,需附加调制解调器(MODEM)。

最为简单且常用的是三线制接法,即地、接收数据和发送数据三脚相连,且直接用RS232相连。

RS-232C: “1”=-3~-15;“0”=+3~+15速率:0~20000bps;一般传输距离:15m。

RS-422:采用平衡传输,平衡发送器、差动接收器,速率:10Mbps/15m;90Kbps/1200m抗干扰能力强。

DB9和DB25的常用信号脚说明由于FX 2-232AW 价格过贵所以我们选用选用MAXIM 公司的MAX202实现RS-232与TTL 之间的电平转换。

MAX202内部有电压倍增电路和转换电路,仅需+5V 电源就可工作,使用十分方便;选用MAX490实现RS-485与TTL 之间的转换。

每片MAX490有一对发送器/接收器,由于通信采用全双工方式,故需两片MAX490,另外只需外接4只电容即可。

基于VB6.0的上位机与PLC实时通信技术

基于VB6.0的上位机与PLC实时通信技术

基于VB6.0的上位机与PLC实时通信技术摘要:本文对上位机与PLC之间的通信方式、原理进行分析,并从数据格式、通信协议、数据传输几个方面,对二者之间的实时通信技术加以阐述,旨在使通讯程序在工业现场中的应用更加科学高效。

[关键词]上位机PLC串口通信技术PLC具有较强的可靠性,属于现代控制系统中不可缺少的重要内容,特别是在机床控制中得到广泛应用。

一般采用小型PLC与上位机相结合的方式,上位机的主要作用在于软件编程与调试、提供人机界面,便于各项参数调整。

在本文的研究中,主要在VB6.0的基础上对,上位机与PLC的通信技术進行分析。

1上位机与PLC的通信方式与原理现阶段,上位机与PLC之间的通信方式主要有三种,一是购买通用上位机组态软件,如WinCC、组态王等,使计算机与可编程控制器连接起来,实现通信;二是借助可编程控制器开发商系统与网络适配器,形成企业内部网络,利用开发商提供的上位机组态软件,实现通信;三是利用可编程控制器厂商提供的通信端口,与用户个人端口相连接,这种方式具有较强的灵活性,且无需投资便可适应,适用于小规模控制系统。

在本文的研究中,主要针对S7-200系列PLC通信方式进行分析,其具有四种通信方式,具体如下:(1)点对点。

基于西门子VB6.0的PLC编程器以及其他接口产品通信;(2)多点接口。

与西门子企业可编程控制器相结合,在编程器中集成通信接口,构建小规模通信网络;(3)自由端口通信。

由用户自定义,可与众多智能设备相互连接;(4)DP方式。

借助Profibus中的DP接口与现场总线网络相连接,进而使PLC的应用面积进一步扩大。

在本文所研究的系统中采用的是第三种通信方式,即自由端口通信。

上位机串口为RS232,在本文所研究的S7系列中提供的串口为RS-485,二者在通信过程中需要对信号电平进行转换,在西门子企业所提供的电缆带为RS485电平转换器。

对此,应在不改变硬件环境的条件下,十分快捷的实现上位机与PLC之间的互联。

基于VB6.0的上位机与PLC实时通信技术

基于VB6.0的上位机与PLC实时通信技术

基于VB6.0的上位机与PLC实时通信技术一、通信原理上位机与PLC之间的通信是通过通信协议来实现的。

通信协议是一种规定了通信双方之间通信方式和通信内容的标准化协议。

常见的通信协议有MODBUS、OPC、PROFIBUS等。

在实际应用中,根据不同的PLC型号和通信需求,选择适合的通信协议进行通信。

二、通信协议MODBUS协议是一种基于主从结构的通信协议,包括MODBUS RTU和MODBUS TCP两种通信方式。

MODBUS RTU是基于串行通信的通信方式,通信速度较快,适合于工业现场环境。

MODBUS TCP是基于以太网通信的通信方式,通信速度更快,可实现远程通信。

基于VB6.0的上位机与PLC通信通常采用MODBUS RTU协议。

在VB6.0中,可以通过串口通信控件MSComm控件实现MODBUS RTU通信。

通过设置通信端口、波特率、数据位、停止位等参数,编写相应的通信程序,实现与PLC的通信。

三、软件设计基于VB6.0的上位机软件设计需要考虑可视化界面和通信功能的实现。

在软件设计中,需要设计用户界面,包括监控界面、控制界面、报警界面等。

需要设计通信功能,包括与PLC的连接、数据读写、通信异常处理等。

在VB6.0中,可以通过控件的方式实现软件的界面设计。

通过使用标签、文本框、按钮等控件,设计出符合用户需求的可视化界面。

在通信功能的实现中,可以通过MSComm控件实现与PLC的连接和数据读写功能。

通过编写相应的通信程序,实现与PLC之间的实时通信。

四、实现方法基于VB6.0的上位机与PLC通信的实现方法主要包括以下几个步骤:1. 确定通信协议:根据PLC型号和通信需求,选择适合的通信协议,如MODBUS协议。

2. 设计界面:设计符合用户需求的可视化界面,包括监控界面、控制界面、报警界面等。

3. 编写通信程序:通过VB6.0编写通信程序,实现与PLC的连接、数据读写等功能。

在编写通信程序时,需要考虑通信协议的格式要求,保证通信数据的准确传输。

三菱PLC与PC上位机VB通讯

三菱PLC与PC上位机VB通讯

三菱PLC 与PC 上位机VB 通讯三菱 PLC : FX1N + FX1N-232-BDFX2N + FX2N-232-BD计算机: Windows XP 中文企业版 + Visual Basic 6.0中文企业版Windows 98中文版 + Visual Basic 6.0中文企业版两者之间连接使用的是 FX-232CAB-1电缆线(2-3,3-2,4-6( 8), 5-5).三菱PLC 的设置 三菱FX PLC 在进行计算机链接(专用协议)和无协议通讯( RS 指令)时均须对通讯格式(D8120)进行设定。

其中包含有波特率、数据长度、奇偶校验、停止位和协议格式等。

在修改了 D8120的设置后,确保关掉 PLC 的电源,然后再打开。

此外,对于采用 RS485形式1:N 计算机链接的还必须对站点号( D8121 )进行设定。

设定的范围从00H 到0FH (即0到15)。

在这里对D8120采用下述设置: b15 0110 1000 1000 1110 6 8 8 E即数据长度为7位,偶校验,2位停止位,波特率为 9600bps ,无标题符和终结符,采用计 算机链接(RS-232C ),自动添加和校验码,采用专用协议格式 同时设定站号为0。

具体设定如下所示:{M07 (MOVEMD二.上位机程序的编制这里采用 Microsoft 公司的 Visual Basic 6.0 Visual Basic 中提供了一个名为 MSCom 的通信控件便于设计串行通信的程序。

MSCom 控件的主要属性有: 1. Com mPort 属性Comm Port 属性用于指定所要使用的串行端口的号码。

虽然 Win dows 操作系统可以容纳最多256个串行通信端口,不过 Visual Basic 的MSCom 控件则仅限于16个端口。

2. Setti ngs 属性Sett in gs 属性用于设置初始化参数。

以字符串的形式设置波特率、奇偶校验、数据位、停 止位等4个参数。

基于VB6.0的上位机与PLC实时通信技术

基于VB6.0的上位机与PLC实时通信技术

基于VB6.0的上位机与PLC实时通信技术一、引言在工业自动化控制领域,上位机与PLC实时通信技术扮演着十分重要的角色。

上位机是指在控制系统中完成对PLC或其他控制设备数据采集和监控的计算机。

PLC (Programmable Logic Controller)是可编程逻辑控制器的缩写,其主要作用是用来控制生产现场的设备以实现自动化操作。

上位机与PLC实时通信技术可以让上位机快速准确地与PLC交换数据,从而实现对生产工艺的实时监控和管理。

本文将重点介绍基于VB6.0的上位机与PLC实时通信技术的实现方法与应用。

二、基于VB6.0的上位机与PLC实时通信技术的实现方法1. VB6.0编程环境的搭建要实现基于VB6.0的上位机与PLC实时通信技术,首先需要在计算机上安装VB6.0开发环境。

然后,创建一个新的VB6.0项目,选择“标准EXE”模板。

2. 使用通讯控件在VB6.0中,实现与PLC的通信可以使用通讯控件。

常用的通讯控件包括MSComm控件和Winsock控件。

MSComm控件用于串口通讯,而Winsock控件用于网络通讯。

根据实际情况选择合适的通讯控件,然后在VB6.0项目中引用相应的控件库。

3. 编写通讯程序在VB6.0中,通过使用通讯控件,可以编写与PLC通讯的程序。

首先需要设置通讯控件的属性,包括端口号、波特率、数据位、停止位等。

然后编写相应的事件处理程序,如接收数据事件、发送数据事件等,以实现与PLC的数据交换。

4. 数据解析与显示通过VB6.0与PLC通讯后,上位机可以接收到PLC发送的数据。

为了实现实时监控,需要对接收到的数据进行解析和处理,然后将其显示在上位机界面上。

可以通过VB6.0提供的界面设计工具,实现数据的动态显示和更新。

5. 错误处理与安全性在实际应用中,基于VB6.0的上位机与PLC实时通信技术需要考虑通讯的稳定性和安全性。

在编写通讯程序时,需要实现错误处理机制,对通讯中可能出现的异常情况进行处理,确保通讯的稳定性。

基于VB6.0的上位机与PLC实时通信技术

基于VB6.0的上位机与PLC实时通信技术

基于VB6.0的上位机与PLC实时通信技术VB6.0是一种广泛使用的编程语言,可以用于开发各种类型的桌面应用程序,包括与PLC实时通信的上位机应用程序。

本文将探讨基于VB6.0的上位机与PLC实时通信技术。

PLC是一种广泛用于控制和监视生产过程的计算机控制系统,可以对工业机器和设备进行自动化控制。

要实现PLC与上位机之间的实时通信,需要使用通信协议和接口。

通信协议与接口通信协议是一种规范,它规定了通信设备之间的数据交换规则和通信过程中所需的控制信息。

通信协议包括传输层协议、网络层协议和应用层协议。

在PLC与上位机之间的通信过程中,常用的通信协议有Modbus、Profibus和Ethernet等。

其中,Modbus是一种最常用的串行通信协议,它支持多种通信接口,如RS-232和RS-485。

Profibus是一种用于工控领域的总线传输协议,常用于PLC与外围设备之间的通信。

Ethernet是一种高速、可靠的局域网通信协议,常用于PLC与上位机之间的通信,它支持TCP/IP协议。

接口是指连接PLC和上位机的物理接口,通常包括串口、并口、以太网口等。

串口是一种最常用的接口,它可以通过RS-232或RS-485接口连接PLC和上位机。

并口通常用于低速、短距离的数据传输,如打印机连接。

以太网口可实现高速数据传输和远程访问。

PLC通信控件VB6.0提供了多种通信控件,用于实现与PLC的通信。

常用的通信控件包括Winsock、MSComm和XPcomm等。

Winsock是VB6.0中的Socket控件,它可以实现TCP/IP协议的管理和通信,支持多线程、异步操作和事件处理。

MSComm控件是VB6.0中的串口控件,可以实现串口通信功能,支持多种波特率、数据位、停止位和校验方式的设置。

实时通信实现方法实现与PLC的通信,最常用的方法是通过VB6.0的通信控件读取并处理PLC发送的数据。

在VB6.0中,可以通过SendMessage、SendMessageTimeout和PostMessage等函数向PLC发送指令和控制信息。

(整理)VB编程软件来开发上位机和PLC之间的通信.

(整理)VB编程软件来开发上位机和PLC之间的通信.

绪论Visual Basic(VB)是一种由微软公司开发的包含协助开发环境的事件驱动编程语言。

从任何标准来说,VB都是丠界上使用人数最多的语言——不仅是盠赞VB的开发者还是抱怨VB的开发者的数颃。

其中微软的办公软件,比如WORD和EXCEL都是用VB来编写的。

它源自BASIC 编程语言。

VB拥有图形用户界面(GUI )和快速应用程序开发(RAD )系统,可以轻易的使用DAO 、RDO 、ADO 连接数据库,或者轻松的创建ActiveX 控件。

Visual Basic是可视化Basic编程语言,有4.0,5.0和6.0,发展到现在有.NET BASIC,其中Visual Basic 6.0是应用最广泛的初学者编程语言,它基本兼容大多数BASIC下的源代码或稍加改动就能应用于Visual Basic 的代码内,Visual Basic是编译型语言,所生成的EXE文件能在具有VB同版本运行库文件的WINDOWS环境下运行.下一个版本的Visual Basic将引入WebClasses,它是经过精心挑选后确定的网络开发的工具。

因为它更具有scalable、更强大、而且是真正的language-agnostic。

它在Visual Studio的所有的工具中起作用。

如果你注意多层开发的一些基本规则,你可以很容易地完成这个转变。

PLC即可编程控制器(Programmable logic Controller,是指以计算机技术为基础的新型工业控制装置。

“PLC是一种专门为在工业环境下应用而设计的数字运算操作的电子装置。

它采用可以编制程序的存储器,用来在其内部存储执行逻辑运算、顺序运算、计时、计数和算术运算等操作的指令,并能通过数字式或模拟式的输入和输出,控制各种类型的机械或生产过程。

PLC及其有关的外围设备都应该按易于与工业控制系统形成一个整体,易于扩展其功能的原则而设计。

”PLC具有1可靠性高,抗干扰能力强,2配套齐全,功能完善,适用性强,3易学易用,深受工程技术人员欢迎,4系统的设计、建造工作量小,维护方便,容易改造,5体积小,重量轻,能耗低。

VB6.0在PLC与上位机通讯中的应用

VB6.0在PLC与上位机通讯中的应用

1、引言可编程控制器以其高可靠性,配置灵活和完善的功能,在工业控制系统中得到越来越广泛的应用。

但对于操作员所需要的报表打印、趋势图形显示、工况查寻、参数在线修改等功能,PLC却不能直接方便地提供。

所以通常采用计算机PC与PLC组成一个完整的监控系统。

本文以台安TP02系列PLC为例,讨论用Visual Basic(VB)实现PLC与上位机的通讯。

2、VB在通讯控件中的使用可编程控制器PLC与上位机PC之间的通信,下位机为PLC,基于其可靠性极高,主要承担控制功能,而上位PC机主要承担监察管理功能,有时兼备部分控制功能,如发出运行,停止命令。

VB语言是基于WINDOWS操作系统的功能强、易学易用、主要是面向学习对象的程序设计语言。

VB带有专门管理串行通讯的MSComm控件,只需设置几个主要参数就可以实现PLC与PC串行通讯。

要完成通信必须设置MSComm的相关属性值:(1)CommPort:设置或传回通信连接端口代号(2)Settings:设置初始化参数。

以字符串的形式设置或传回连接速度、奇偶校验、数据位、停止位等4个参数(3)PortOpen:设置或传回通信连接端口的状态(4)Input:从输入寄存器传回并移除字符(5)Output:将一个字符串写入输出寄存器(6)InputLen:指定由串行端口读入的字符串长度(7)InBu FF erCount:传回在接收寄存器中的字符数3、软硬件之间:台安TP02与上位机PC通信时,为了实现两者的通信需要配备通信线。

4、通信程序的实现4.1 通信初始化程序首先,在窗体开始设计之前,添加MSComm控件。

4.2程序编写:4.2.1 通信控件MSComm1属性设置:mPort = 1 设置端口号MSComm1.Settings = "19200,E,7,2" 设置通信参数MSComm1.InputLen = 0 设置读入字符串长度MSComm1.PortOpen = True 设置通信端口状态4.2.2 PLC运行程序:STX$ = "::"TransmitBuf$ = "01?5RUN"sum$ = CheckSum(transmitBuf$)ETX$ = Chr$(13)SXD$ = STX$ + transmitBuf$ + sum$ + ETX$MSComm1.Output = SXD$DoDoEventsLoop Until MSComm1.InBu FF erCount >= 12In1$ = MSComm1.Input4.2.3 从PLC读取资料,将寄存器内的数据资料在PC上显示以便观察监控(反应时间50ms):STX$ = "::"transmitBuf$ = "01?5MRVD000102"sum$ = CheckSum(transmitBuf$)ETX$ = Chr$(13)SXD$ = STX$ + transmitBuf$ + sum$ + ETX$MSComm1.Output = SXD$DoDoEventsLoop Until MSComm1.InBufferCount >= 20InData$ = MSComm1.InputLabel2.Caption = Mid$(InData$, 10, 4)Label3.Caption = Mid$(InData$, 14, 4)4.2.4从PLC读取资料,将RelayC0001状态通过PC显示进行监控(反应时间50ms):STX$ = "::"transmitBuf$ = "01?5MCRC0001"sum$ = CheckSum(transmitBuf$)ETX$ = Chr$(13)SXD$ = STX$ + transmitBuf$ + sum$ + ETX$MSComm1.Output = SXD$DoDoEventsLoop Until MSComm1.InBufferCount >= 13In4$ = MSComm1.InputCoil$ = Mid$(In4$, 10, 1)C1% = CInt(Coil$)Label6.Caption = C1%4.2.5 设定Relay状态,将Relay设定为ON(反应时间50ms):Dim C1 As IntegerSTX$ = "::"transmitBuf$ = "01?5SCSY00011"sum$ = CheckSum(transmitBuf$)ETX$ = Chr$(13)SXD$ = STX$ + transmitBuf$ + sum$ + ETX$MSComm1.Output = SXD$DoDoEventsLoop Until MSComm1.InBufferCount >= 12In2$ = MSComm1.Input4.2.6 PLC停止运行:STX$ = "::"transmitBuf$ = "01?5STP"sum$ = CheckSum(transmitBuf$)ETX$ = Chr$(13)SXD$ = STX$ + transmitBuf$ + sum$ + ETX$MSComm1.Output = SXD$DoDoEventsLoop Until MSComm1.InBufferCount >= 12In3$ = MSComm1.Input4.2.7 VB6.0下CheckSum函数代码如下:Private Function CheckSum(transmitBuf$)L = Len(transmitBuf$)Add = 0Dim k, sum As IntegerFor k = 1 To LTJ$ = Mid$(transmitBuf$, k, 1)Add = Add + Asc(TJ$)Next kDo While Add >= 256Add = Add - 256LoopAdd = 255 - Add + 1tempBuf$ = Hex$(Add)CheckSum = LTrim(tempBuf$)End Function5、结论PLC与上位机的结合,并通过VB6.0传送数据所构成的计算机监控系统,对于近距离传输数据的现场控制来说是一种性价比很高的解决方案。

vb与plc通讯

vb与plc通讯

vb与plc通讯(以西门子S7-200为例)S7-200 PLC之PPI协议通过硬件和软件侦听的方法,分析PLC内部固有的PPI通讯协议,然后上位机采用VB编程,遵循PPI通讯协议,读写PLC数据,实现人机操作任务。

这种通讯方法,与一般的自由通讯协议相比,省略了PLC的通讯程序编写,只需编写上位机的通讯程序资源S7-226的编程口物理层为RS-485结构,SIEMENS提供MicroWin软件,采用的是PPI(Point to Point)协议,可以用来传输、调试PLC程序。

在现场应用中,当需要PLC与上位机通讯时,较多的使用自定义协议与上位机通讯。

在这种通讯方式中,需要编程者首先定义自己的自由通讯格式,在PLC中编写代码,利用中断方式控制通讯端口的数据收发。

采用这种方式,PLC 编程调试较为烦琐,占用PLC的软件中断和代码资源,而且当PLC的通讯口定义为自由通讯口时,PLC的编程软件无法对PLC进行监控,给PLC程序调试带来不便。

SIEMENSS7-200PLC的编程通讯接口,内部固化的通讯协议为PPI协议,如果上位机遵循PPI协议来读写PLC,就可以省略编写PLC的通讯代码。

如何获得PPI协议?可以在PLC的编程软件读写PLC数据时,利用第三个串口侦听PLC的通讯数据,或者利用软件方法,截取已经打开且正在通讯的端口的数据,然后归纳总结,解析出PPI协议的数据读写报文。

这样,上位机遵循PPI协议,就可以便利的读写PLC内部的数据,实现上位机的人机操作功能。

软件设计系统中测控任务由SIEMENSS7-226PLC完成,PLC采用循环扫描方式工作,当定时时间到时,执行数据采集或PID控制任务,完成现场的信号控制。

计算机的监控软件采用VB编制,利用MSComm控件完成串口数据通讯,通讯遵循的协议为PPI协议。

PPI协议西门子的PPI(Point to Point)通讯协议采用主从式的通讯方式,一次读写操作的步骤包括:首先上位机发出读写命令,PLC作出接收正确的响应,上位机接到此响应则发出确认申请命令,PLC则完成正确的读写响应,回应给上位机数据。

基于VB6.0的上位机与PLC实时通信技术

基于VB6.0的上位机与PLC实时通信技术

基于VB6.0的上位机与PLC实时通信技术一、引言随着工业自动化的深入发展,工业控制系统的实时性和可靠性要求日益提高。

在工业控制系统中,上位机与PLC之间的通信是非常重要的一环。

而基于VB6.0的上位机与PLC实时通信技术则成为了工业控制领域的一大热点。

本文将从上位机与PLC通信的基本原理、通信协议的选择以及基于VB6.0的通信实现方法等方面展开阐述。

二、上位机与PLC通信的基本原理在工业控制系统中,上位机作为控制和监控的中心,而PLC则作为现场设备的控制器。

上位机与PLC之间的通信,主要是为了实现数据的实时交换和控制指令的下发。

通常情况下,上位机与PLC之间的通信采用的是串口通信或者以太网通信。

串口通信是指通过串行端口来实现上位机与PLC之间的通信。

在实际应用中,常用的是RS-232或者RS-485接口。

而以太网通信则是通过以太网协议来实现通信,实现数据的传输和交换。

无论是串口通信还是以太网通信,其基本原理都是通过特定的通信协议来实现数据的传输和交换。

不同的PLC厂家采用的通信协议可能有所不同。

因此在实际应用中,需要根据具体的PLC型号以及通信协议来进行相应的通信设置。

三、通信协议的选择在实际的上位机与PLC通信过程中,选择合适的通信协议是非常重要的。

常用的PLC通信协议包括Modbus、Profibus、MPI等。

这些通信协议都有其各自的特点和适用范围。

Modbus通信协议是一种较为常用的通信协议,它简单易懂,易于实现。

Modbus协议支持串口通信和以太网通信,可广泛应用于各种PLC和上位机之间的通信。

Profibus通信协议则是一种高速传输的通信协议,适用于对通信速度有较高要求的场合。

而MPI通信协议则主要应用于西门子PLC之间的通信。

在选择通信协议时,需要考虑PLC的型号、通信速度、通信距离等因素。

同时也需要考虑上位机的通信接口及通信协议的支持情况。

在实际应用中,需根据具体的要求和条件选择适合的通信协议。

基于VB6.0的上位机与PLC实时通信技术

基于VB6.0的上位机与PLC实时通信技术

基于VB6.0的上位机与PLC实时通信技术1. 引言1.1 背景介绍随着工业自动化程度的不断提高,计算机在工业控制系统中的应用越来越广泛。

而上位机作为工业控制系统中的一个重要组成部分,承担着监控控制、数据处理、人机交互等功能。

而PLC作为工业控制系统中最常用的控制设备之一,其实时通信技术对于实现工业过程的自动化和智能化起着至关重要的作用。

本文将围绕基于VB6.0的上位机与PLC实时通信技术展开探讨,通过对VB6.0的上位机概述、PLC实时通信技术概述、通信协议选择、通信实现方式、数据处理与显示等方面的分析,深入探讨实时通信技术在工业控制领域的应用前景,同时也探讨技术的局限性及未来发展方向。

1.2 研究目的研究目的是通过探讨基于VB6.0的上位机与PLC实时通信技术,实现对工业生产过程中数据的实时监控和控制。

具体目的包括:1. 分析上位机与PLC实时通信技术的基本原理和应用范围,探讨其在工业自动化控制系统中的重要性和必要性;2. 研究不同通信协议的特点和适用场景,选择适合特定工业环境的通信协议,确保通信稳定可靠;3. 探讨通信实现方式,包括串口通信、以太网通信等,分析其优劣势和适用情况,为工业生产中选择合适的通信实现方式提供参考;4. 研究数据处理与显示方法,包括数据采集、处理和展示,提高数据的实时性和准确性,为工业生产的监控和控制提供有效支持。

通过本研究的目的,旨在提高工业生产过程中数据的实时性和精准性,实现对生产过程的及时监控和控制,提高生产效率,降低生产成本,实现工业生产的智能化和自动化。

2. 正文2.1 VB6.0的上位机概述VB6.0上位机程序通常包括界面设计和逻辑控制两部分。

界面设计是通过VB6.0的可视化界面编辑器进行操作,可以设计出各种样式的人机交互界面,包括按钮、输入框、图表等元素。

逻辑控制部分则是通过VB6.0的编程语言实现,可以编写各种逻辑算法、数据处理程序等,实现与PLC的通信和数据处理。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

随着现代信息技术的发展以及计算机网络的广泛应用,计算机通信技术已经日趋成熟。

作为传统的计算机通信方式的串行通信,由于具有线路简单、应用灵活、可靠性高等一系列优点长期以来获得了广泛的应用。

计算机串行通信在数据财经、数据通信、故障检测、计算机远程监控等方面有广泛的实用价值,特别在Windows下的串口通信可以充分利用Windows下的软件资源优势,实现多任务条件下对外部的数据传输、信息收集和处理。

在本系统中,我们采用了性能/价格比较高的计算机构成厂级的监控工作站。

在PLC与上位计算机之间采用RS-485和RS-232C标准通信接口进行通信。

在两级计算机控制系统中,最不稳定的环节就是上位机。

为了保证系统的稳定性,避免因上位机的故障导致系统控制失灵,所有采集到的信号都反馈到PLC当中。

上位机需要通过串行通信取得所需的数据信息,并通过串行通信将必要的控制信息和参数设置信息写入PLC 的数据存储区。

因此,串行通信作为上位机和下位机联系的唯一方式,在整个系统中具有非常重要的作用。

1.1上位机与PLC间的串行通信计算机与计算机或计算机与外部设备之间的数据传输和交换的方式主要有串行通信和并行通信两种方式,其中串行通信指的是数据逐位传输的方式。

由于串行通信方式具有使用线路少、成本低,特别是在远程传输时,避免了多条线路特性的不一致而被广泛采用。

1.1.1串行通信串行通信方式又可分为两种:同步串行通信方式和异步串行通信方式。

1.同步串行通信方式:同步串行通信是以数据块(字符块)为信息单位传送,每帧信息可以包含很多字符。

同步通信要求通信双方以相同的速率进行,而且要准证确协调,通常通过共享一个时钟或定时脉冲源保发送方和接收方准确同步。

这种通信方式的效率较高,但是对时钟同步要求非常严格,成本较高。

2.异步串行通信方式:异步串行通信以字符为信息单位传送。

双方需要遵守异步通信协议,以字符为数据单位,发送方传送字符的时间间隔不确定。

每个字符传输都以起始位开始,以停止位结束。

通信双方所指定的字符的数据位数,奇偶校验方法和停止位数必须相同。

其传输效率比同步通信方式低,但是成本较低。

异步通信是在以起始位开始、停止位结束的一个字符内按约定的频率进行同步接收。

各个字符之间允许有间隙,而且两个字符之间的间隔是不固定的。

在同步通信方式中,不仅同一字符中的相邻两位间的时间间隔要相等,而且相邻字符间的时间间隔也要求相等,这也是同步通信和异步通信方式的主要差别所在。

因此,异步串行通信一般用在数据传送时间不能确知,发送数据不连续,数据量较少和数据传输速率较低的场合;而同步串行通信则用在要求快速、连续传输大批量数据的场合。

1.1.2串行通信接口标准在串行通信时,要求通信双方都采用一个标准接口,使不同的设备可以方便地连接起来进行通信。

在设计通信接口时,一般都采用标准接口以提高其通用性。

本系统中,上、下位机进行通信首先面临的问题就是通信标准的选择问题。

1、RS-232C接口标准RS-232C接口标准(全称EIA-RS-232C标准)是在1969年由美国电子工业联合会(EIA,Electronic Industrial Associate-Recommended Standard-232C)与Bell公司、调制解调器厂家及计算机终端生产厂家共同开发的用于串行接口的通信协议。

它最初是为远程通信连接数据终端设备DTE(Data Terminal Equipment)和数据通信设备DCE(Data Communication Equipment)而制定的[46]。

虽然这个标准的制定没有考虑计算机系统的应用要求,但是广泛的用于计算机与终端或外设之间的连接。

RS-232C标准规定了在串行通信时,数据终端设备和数据通信设备之间的接口信号。

其中常用信号的名称、引脚号以及功能如表4-1所示。

表4-1 RS-232C常用信号定义引脚号信号名称简称信号功能说明2 发送数据TxD DTE向DCE发送串行数据3 接收数据RxD DTE从DCE接收串行数据4 请求发送RTS 请求通信设备切换到发送方向5 清除发送CTS 响应DTE请求,提示DCE开始发送6 数据设备就绪DSR DCE通信设备就绪7 信号地SG 整个电路的公共信号地8 数据载波检测DCD DCE收到载波20 数据终端就绪DTR DTE终端设备就绪22 振铃RI 通信线路上有振铃RS-232C的电气特性:RS-232C采用的是负逻辑工作,即逻辑“1”用负电压(-3~-15V)表示,逻辑“0”用正电压(+3~+15V)表示。

介于-3V和+3V之间以及低于-15V或高于+15V的电压没有意义。

实际工作时,应保证电平在±(5~15)V之间。

由于RS232C是用正负电压来表示逻辑状态,与以高低电平表示逻辑状态的TTL不同。

为了能够同计算机接口或终端的TTL器件连接,必须进行电平和逻辑关系的转换。

目前使用较为广泛的是集成电路转换器件,如M C1488和MC1489。

RS-232C的机械特性:虽然RS-232标准定义了25个信号,但进行异步通信时实际只用到了9个信号:2个数据信号、6个控制信号和1个信号地线。

因此RS-232的连接器主要有DB25和DB9两种类型。

现在微型计算机上均采用DB9型连接器作为主板上COM1和CO M2两个串行口的连接器,其引脚及信号分配如图4-2所示。

3、RS-485接口标准RS-485标准也是一种平衡传输方式的串行接口标准,它和RS-422A兼容并且扩展了RS-422A的功能。

RS-485的电气特性:逻辑“1”以两线间的电压差为+(2-6)V表示;逻辑“0”以两线间的电压差为-(2-6)V表示。

接口信号电平比RS-232C降低了,就不易损坏接口电路的芯片,且该电平与TTL电平兼容,可方便与TTL电路连接。

数据最高传输速率为10Mbps。

RS-485接口是采用平衡驱动器和差分接收器的组合,抗共模干扰能力增强,即抗干扰性好。

RS-485接口的最大传输距离标准值为4000英尺,实际上可达3000米。

RS-485接口在总线上是允许连接多达128个收发器,具有多站能力,用户可以利用它建立起设备网络。

RS-485接口由于具有良好的抗干扰性、传输距离长和多站能力等优点使其成为首选的串行接口。

本系统中,上位机和下位机的通信运用了以上标准中的RS485和RS232C两种通信标准。

计算机具有标准RS232C接口,而PLC具有标准RS485接口,两者通过电缆和RS485/R S232C转换模块连接(如图所示4-3)。

1.2通讯参数设置和通讯测试界面在供水自动化监控系统中,信息管理及监控软件作为处理、显示和存储数据的核心,主要负责对各个电动机的转速和各处管道压力的查询、监控以及报警的处理。

运行信息管理及监控软件的计算机与PLC之间的通讯主要是通过RS-232C串行接口(PC机一般提供了COM1和COM2两个串行口)进行通讯,实现系统的监测控制和信息管理功能。

本系统中上位机的信息管理及监控软件运行在Windows2000/NT操作系统下,串行通讯程序运用Inprise公司推出的快速开发工具Delphi 6.0开发。

PPI通信协议是西门子专为S 7-200系列PLC开发的一个通信协议,物理上采用RS485信号电平,PLC默认处于该方式。

使用PPI方式对PLC编程及调试监控,其硬件连接只需通过编程(PC/PPI)电缆即可实现。

软件编程采用中文环境、内部系统协议,设计人员只需通过软件设置一下参数,数据如交换不需要考虑,用NETR和NETW 两条语句即可进行数据的传递。

1.2.1通讯参数设置为了进行串口通信, 实现系统的监测控制和信息管理功能,必须对通讯参数加以设置。

通信设置:串口:COM1、COM2波特率:300、600、1200...校验方法:N、E、M、O、S数据位数停止位数:Setting:缓冲区设置接收缓冲区:字节发送缓冲区:字节数据传送方式文本形式和二进制形式流控制不握手(默认)、XON/XOFF方式、RTS/CTS方式、XON/XOFF AND RTS/CTS方式1.2.2通讯测试界面通信测试界面如图4-5所示。

通讯设置Setting属性值commport属性值通讯状态串口状态发送字节数接收字节数数据显示接收数据显示发送数据显示1.3 PLC通信程序设计1.3.1 PLC网络通信协议[19]本系统采用的PLC是德国SIEMENS公司生产的S7-200系列,主模块采用CPU226,扩展模块采用数字量扩展模块EM222和模拟量扩展模块EM235。

S7-200系列CPU具有强大的通信能力。

主要支持以下几种协议:1.PI(Point-to-Point)协议,即点到点接口协议。

PPI是一个主/从协议,主站(其它CPU或SI MATIC编程器)给从站发送申请,从站进行响应。

从站不初始化信息,只响应主站的申请或查询。

如果在用户程序中允许PPI主站模式,S7-200 CPU在RUN模式下可以作为主站,还可以利用网络读(NETR)和网络写(NETW)指令读写其他CPU,同时也能够作为从站响应来自其它主站的申请。

采用PPI协议的网络中最多只能有32个主站。

该协议主要是用来编程、PPI组网等2.MPI(Multi-Point)协议,即多点接口协议。

MPI可以是主/主协议或主/从协议,协议如何操作依赖于设备类型(设备是S7-200系列CPU时建立主/从连接)。

MPI总在两个相互通信的设备之间建立连接,其它主站不能干涉两个设备之间已建立的连接。

由于S7-200的连接是非公用的,并且需要CPU中的资源,每个S7-200 CPU只能支持4个连接,每个EM2 77模块支持6个连接。

在使用时,每个S7-200 CPU和EM277模块保留两个连接,分别用于连接SIMATIC编程器(或计算机)以及操作面板。

这些保留连接不能被其它类型的主站使用。

3.ROFIBUS协议。

PROFIBUS协议设计用于分布式I/O设备(远程I/O)的高速通信。

PRO FIBUS网络通常有一个主站和几个I/O从站,主站配置成知道所连接的I/O从站的型号和地址。

主站初始化网络并核对网络上的从站设备和配置中的是否匹配。

主站连续的把输出数据写到从站并从它们读取输入数据。

4.户自定义协议(自由口协议)。

自由口协议可以由用户定义通讯协议,通过用户程序控制S 7-200通信口的操作模式,将CPU与任意通讯协议公开的设备联网,如上位计算机、打印机、变频器等。

用户程序通过使用接收中断、发送中断、发送指令(XMT)和接收指令(RCV)来控制通信口的操作。

在自由口模式下,通信协议完全由用户程序控制。

用户程序通过设置SMB30(0口)允许自由口模式,而且只有在CPU处于RUN模式时才能允许。

相关文档
最新文档