利用VB实现PLC与PC机的通讯

合集下载

利用VB6.0实现PC与三菱 PLC 的通信

利用VB6.0实现PC与三菱 PLC 的通信

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

电缆的 9 芯 D 形插头连接在计算机串口上,另一端连接PLC 的 RS-422 编程口。

编写 PC 的通信程序可采用汇编语言、各种高级语言,也可以采用工控组态软件或直接采用 PLC 厂家的通信软件。

本文采用 VB6 . 0 软件,它必须依据所连接 PLC 的通信规程来编写通信协议,所以先简单介绍 FX 系列 PLC 的通信协议。

一、 FX 系列 PLC 的通讯协议1 .数据传输格式FX 系列 PLC 采用异步格式,由 1 位起始位、 7 位数据位、 l 位偶校验位及 l 位停止位组成,波特率为 9600bps ,字符为ASCi Ⅱ码。

2 .通信命令FX 系列 PLC 有 4 条通信命令,即读命令、写命令、强制通命令、强制断命令。

表 1 中, X 为输入继电器; Y 为输出继电器; M 为辅助继电器; S 为状态元件; T 为定时器; C 为计数器; D 为数据寄存器。

3 .通信控制字符FZ 系列 PLC 采用面向字符的传输规程,用到 5 个通信控制字符,如表 2 所示。

4 .报文格式PC 机向 PLC 发送的报文格式如表 3 所示。

其中, STX 为开始标志; ETS 为结束标志; CMD 为命令的ASC Ⅱ码: SUMH 、 SUML 为从 CMD 到 ETX 按字节求累加和,溢出不计。

由于每字节十六进制数变为两字节ASC Ⅱ代码,故校验和为 SUMH 与 SUMI 。

PLC 向 PC 机发送的应答报文格式如表 4 所示。

二、 PC 通信程序的编写1 .通信口初始化, MSComm 控件简介: VB 带有专门管理串行通讯的 MSComm 控件。

只需设置几个主要参数就可以实现 PLC 与 PC 间的串行通讯。

基于VB的PC与LG+PLC的通信方法

基于VB的PC与LG+PLC的通信方法
图1 PC通过RS一232通信读取PLC数据的帧
万方数据
帧,PLC接收到读请求帧后,会将PC要读取的数据返回。 PC向PLC写数据的帧结构与读的数据帧类似,但是不论
读数据还是写数据,数据地址必须为绝对地址,不同系列的PLC 可以查阅相应的手册来获取要读写数据的绝对地址。 1.2 RS一485通信方式
MSCOmml OulDul=T11 Timerl.EnabIed=True End Sub
数据接收、处理部分采用了事件驱动的方法,接收的程序: Privale Sub MSComml—OnComm()
If MSCOmml.COmmEvent=comEvReceive Then Dim ReI()As Byte Djm As LOng,J As Integer,t As Integer Dim Buff As St ring Sum=O ReI=MSComml.InDut
Dim丁t1(12)As Byte T11(O)=&H5 T11(1)=&H30 T11(2)=&H31 Ttl(3)=&H48 T11(4)=&H50 T11(5)=&H30 T11(6)=&H30 Tfl(7)=&H30 T11(8)=&H30 T11(9)=&H30 T11(10)=&H31 Ttl(111=&H31 Ttl(12)=&H4
MSCOmml.OutOut=T11 End Sub
读取D设备D0000内数据的程序: Private Sub Timerl.-Timer()
Dim T11(11)As Byte 丁t1(O)=&H5 T11(1)=&H30 Ttl(2)=&H31 Ttl(3)=&H52 Ttl(4)=&H44 T11(5)=&H30 Ttl(6)=&H30 T11(7)=&H30 Ttl(8)=&H30 T11(9)=&H30 T11(10)=&H31 Ttl(11)=&H4

用VB6.0实现PC机与三菱FX2n系列PLC编程口的通信

用VB6.0实现PC机与三菱FX2n系列PLC编程口的通信

用VB6.0实现PC机与三菱FX2n系列PLC编程口的通信华 健 王国强(上海海洋大学 现教中心 上海 200316)摘 要: 介绍三菱FX2n系列PLC编程口串口通信的连接、通信协议、读/写命令和格式,用VB6.0实现读/写PLC数据寄存器的方法。

关键词: PC机;PLC;串口通信;Visual Basic 6.0中图分类号:TP391 文献标识码:A 文章编号:1671-7597(2012)1110175-013)控制字符。

0 引言PC机与三菱FX2n系列PLC的串行通信时,数据是以帧为单三菱公司的FX2n系列PLC(可编程控制器)具有可靠性位发送和接受的,控制字符ENQ(05H)、ACK(06H)、NAK 高、抗干扰能力强、使用方便等特点,广泛应用于工业控制和(15H)可以单独构成字符帧,其余的字符帧在发送或接受时数据采集等场合,由于PLC本身不具有显示和直接操作的功必须用控制字STX(02H)和ETX(03H)分别作为该帧的起始标能,在使用过程中,要监视PLC内部的运行状况和数据,可选志和结束标志,各控制字符的含义如表2所示。

用人机界面或组态软件,虽然它们使用方便、直观,但价格昂贵;PC机的数据处理、数据保存,报表打印等功能是FX2nPLC所不具有的,在PC机上我们用微软公司Visual Basic6.0的通信控件MSCOMM.OCX实现读取和修改PLC内部数据的功能,再利用Access 2003关系数据库系统保存采集的数据和PLC的运行参数。

要实现PC机与FX2n PLC的串口通信,有专用的FX2n-232-BD通讯模块,而三菱FX2n系列PLC自身所带的编程口在完成下4)报文格式。

载程序后就处于闲置状态,因此我们用编程口来实现PC机与FX2nPLC的串口通信。

1 通信的硬件连接三菱FX2n系列PLC的编程口是RS-422接口,PC机的串口通信口是RS-232接口,两者不能直接连接,要用三菱公司的SC-09适配电缆才能实现串口通信。

用VB实现PC机与永宏PLC的通讯_蔡锦达

用VB实现PC机与永宏PLC的通讯_蔡锦达

收稿日期:2002-01-29 作者简介:蔡锦达(1963-),男,上海人,副教授,硕士生导师,硕士,主要研究方向:机械电子工程; 张文国(1979-),男,辽宁人,硕士,主要研究方向:机械电子工程; 刘菁冉(1978-),女,山东人,硕士,主要研究方向:机械电子工程; 吴柏英(1977-),女,江西人,硕士,主要研究方向:机械电子工程.文章编号:1001-9081(2002)07-0057-03用VB 实现PC 机与永宏PLC 的通讯蔡锦达,张文国,刘菁冉,吴柏英(上海理工大学数控数显实验室,上海200093)摘 要:在Windows 98下利用VB 串行通讯控件可实现PC 机与永宏PLC 的通讯,文中详细介绍了基于通讯协议实现PC 机与永宏PLC 的串行通讯、数据的发送和接收的方法。

关键词:握手通讯;属性;事件中图分类号:TN919 文献标识码:A1 Mscomm 控件的介绍串行通讯编程的基本思路是:设置初始化并打开串口———配置串口———双向传输数据———校验———释放串口,供其它程序使用。

VB 本身提供了串行端口控件Mscomm 来为应用程序提供串行通讯。

该控件屏蔽了通讯过程中的底层操作,程序员应用时只需设置、监视Mscomm 控件的属性和事件即可完成对串行口的初始化和数据的输入输出工作。

Mscomm 控件的主要属性如下:Commport 设置并返回通讯端口号。

设计时端口号可设置成从1到16的任何数,例如:Mscomm .Commport =2,即设置当前通讯端口为COM2。

Setting 设置并返回波特率、奇偶校验、数据位长度、停止位长度。

格式为:Mscomm .Setting =string 。

string 是一个包含四部分的字符串:第一部分为波特率;第二部分为奇偶校验,N 表示不校验,E 表示偶校验,O 表示奇校验,S 表示空格校验,M 表示符号校验;第三部分为数据位长度,其可选值为4,5,6,7,8;第四部分为停止位长度,其可选值为1,1.5,2。

如何通过VB实现PC机与PLC的以太网通信plc

如何通过VB实现PC机与PLC的以太网通信plc

如何通过VB实现PC机与PLC的以太网通信- plc此控件对于用户在运行时不行见,供应了一个简洁的途径访问TCP 及UDP网络服务而无需了解底层细节,使用时你只需设置属性、在恰当的时候调用它供应的方法即可。

主要属性有:BytesReceived:返回当前缓冲区中的字节数量,我们可以使用GetData 方法以接收数据。

只读且设计时不行用。

LocalHostName:返回本机名字符串,设计时不行用。

LocalIP:返回以(xxx.xxx.xxx.xxx)格式表达的IP地址串。

设计时不行用,运行时只读。

LocalPort :本机使用接收端口可读写,设计时可用,Long型。

对于客户,假如无需指定端口,则用端口0发送数据。

在此状况下,控件将随机选择一个端口。

在一个连接确定后,为TCP的端口。

对于服务器,指用于监听的端口。

如设置为0,则用随机数。

在调用Listen 方法后,该属性自动包含用到的端口。

端口0总是用于在两计算机间建立动态连接。

客户期望通过端口0获得一个随机端口以”回调”连接服务器。

Protocol :套接字类型,为TCP或UDP二者之一,缺省为TCP类型。

设置为sckTCPProtocol表示TCP协议sckUDPProtocol表示UDP协议。

在此属性被重置之前需用Close方法关闭之。

RemoteHost:发送或接收数据的主机,你可供应主机名如:FTP://,或一IP地址串,例如“100.0.1.1”。

RemoteHostIP:远程主机的IP地址。

对于客户程序,在连接确定后使用Connect方法,此属性包含远程主机的IP名串。

对于服务器程序,在引入连接需求后(Connection Request 大事),此属性包含IP串。

当使用UDP套接字,在Data Arrival大事发生后,此属性为发送UDP数据的机器IP地址串。

RemotePort:连接套接字端口值。

例如通常HTTP应用使用80端口,FTP则使用21。

基于VB的FPOPLC与计算机的通信

基于VB的FPOPLC与计算机的通信

R S ONS ME S E P E S AGENOR — Mቤተ መጻሕፍቲ ባይዱL
出错响
22 3 通信口, 此通信 口采用半双工异步方 式 ,通信波特率最大可设为 12 0 / , 0bs 9 采用A CI SI 形式传送通信命令。并具有 奇校验和求和检查。尽管 F0 P 可编程序 控制器上 ,用户不用编制通信程序。但
在使用其网络之前 ,必须用编程终端与 编程软件N S —R FWI—R 或者手持 P TG (P N G ) 编程器对 F0 P 的系统寄存器进行初始化
松下电工 F P系列 P C9 i R -3 C端 口 L p S22 n
应消息 R S O S S A EE R R E P N E ME S G —R O 3
未使用 信号地 S G 载波检测 CD R 数据终端就绪 E
__— — __— —
编程语言来简单实现选一小型系统的通
信功能。( ) 3 利用 PC厂商所提供的标 L 准通信端 E和由用户 自定义的自由口通 l
lA I VoJ10 o。 。 N 6
图 1 P L F OP C与上位机链接通信协议
—1
维普资讯
基于V 的F 0 L B P C与计算机的 P 通信
P C P C 运动控镧 L ,A 和
为响应代码一般返回接收到的命令消息 中的命令代码 。E R R H E R R L RO 和 RO 为
出错代码 . 是两位 1 进制数 , 6 可根据其 值在 协 议 中查 出错 误 的 描述 。TX ET
I 符号 fP 。 IN n
PC和计算机的通信 。对于小型的控制 L
系统 .如果为实现控制过程的可视化而 购买专用组态软件很不经济。如果监控 信息与管理层信息联系不紧 ,可以利用

VB实现电脑与三菱Q00PLC的串行通信

在Windows平台下利用VB实现电脑与三菱Q00PLC的串行通信发布: 2011-9-8 | 作者: —— | 来源:liujiada| 查看: 445次| 用户关注:摘要:本文分析了Windows环境下串行通信的编程技术,介绍了在Windows环境下用VB6.0语言编写串行通信程序,实现了PC机与三菱Q00PLC之间的串行通信,并提出了在实际应用中提高串行通信性能的方法。

关键词:VB;Win32API函数;串行通信;Q00PLC一概述在工业控制中,串口是常用的计算机与外部串行设备之间的数据传输通道。

由于串行通信结构简单、可靠性强、实现及使用成本低、通讯标准统一,因此在测控系统和工程中应用十分广泛。

目前Wi摘要:本文分析了Windows环境下串行通信的编程技术,介绍了在Windows环境下用VB6.0语言编写串行通信程序,实现了PC机与三菱 Q00PLC之间的串行通信,并提出了在实际应用中提高串行通信性能的方法。

关键词:VB;Win32API函数;串行通信;Q00PLC一概述在工业控制中,串口是常用的计算机与外部串行设备之间的数据传输通道。

由于串行通信结构简单、可靠性强、实现及使用成本低、通讯标准统一,因此在测控系统和工程中应用十分广泛。

目前Windows在工业生产监控管理系统中已成为主流平台,Windows环境下的上、下位机之间的串行通信是设计与开发监控管理系统和集散控制系统的重要组成部分。

Microsoft公司的VB++6.0是一种高级编程语言,它提供的串列通信控件封装了封装了Win32API中的标准通信函数,可以让开发者方便开发串列通信上位机程序。

PLC是现在控制领域不可缺少的部分,已经非常普及,如何简便的与PLC交互已经成为众多厂商新的竞争战场。

由此产生了人机界面、组态软件等产品。

这些产品的产生大大简化了对PLC的控制,操作,使用更方便。

但也有共同的缺点:价格过高和开放性较差。

VB作为“原始"的编程语言在这两方面无疑有着明显的优势。

PC与西门子PLC 通讯实例+源代码

PC与西门子PLC 通讯实例+源代码此实例为PC调用西门子第三方驱动libnodave.dll,通过VB6.0编写而成,可成功从SIEMENS SL系统PLC中读取其DB数据块,input输入/output输出映像区,Marker位存储区数据.【libnodave.dll 可百度下载,或者Mail我】Private Sub Command1_Click()Dim peer As Stringpeer = Form1.Text1.Textph = openSocket(102, peer)If ph = 0 ThenMsgBox "Connected Falied", vbInformation, "Siemens-Hugl" ElseIf ph > 0 Then '需要更换新的端口di = daveNewInterface(ph, ph, "IFI", 0, daveProtoISOTCP, daveSpeed187k)'建立新的连接res = daveInitAdapter(di) '初始化适配器If res = daveResOK Thendc = daveNewConnection(di, 2, Rack, Slot)'建立新的PLC连接res = daveConnectPLC(dc) '连接PLCIf res = daveResOK ThenMsgBox "Connected Seccussfully!", vbInformation, "Siemens-Hugl"End IfEnd IfEnd IfEnd IfEnd SubPrivate Sub Command2_Click()If dc <> 0 Thenres = daveDisconnectPLC(dc) '断开连接Call daveFree(dc) '释放内存dc = 0End IfIf di <> 0 Thenres = daveDisconnectAdapter(di) '断开适配器Call daveFree(di) '释放内存di = 0End IfIf ph <> 0 Thenres = closePort(ph) '关闭端口ph = 0End IfMsgBox "Disconnected Successfully!", vbInformation, "Siemens-Hugl"End SubPrivate Sub Command3_Click()Dim RetCode As LongDim PLCTime As T_S7_PLCTimeRetCode = S7_ReadPLCTime(dc, PLCTime)If RetCode <> daveResOK ThenMsgBox " Read PLC Time failed!", vbInformation, "Siemens-Hugl"Exit SubEnd Ifbel1.Caption = "PLC Date is " & Format(PLCTime.Jahr, "0000") & "-" & Format(PLCTime.Monat, "00") & "-" & Format(PLCTime.Tag, "00")bel2.Caption = "PLC Time is " & Format(PLCTime.Stunden, "00") & "h" & Format(PLCTime.Minuten, "00") & "m" & Format(PLCTime.Sekunden, "00") & "s" & Format(lisekunden, "0") & "ms"End SubPrivate Sub Command4_Click()res = daveReadBytes(dc, daveFlags, 0, 0, 16, 0)If res = daveResOK Thenv1 = daveGetS32(dc)MsgBox "MD0 is " & v1v2 = daveGetS32(dc)MsgBox "MD4 is " & v2v3 = daveGetS32(dc)MsgBox "MD8 is " & v3v4 = daveGetFloat(dc)MsgBox "MD12 is " & v4v5 = daveGetFloatAt(dc, 12)MsgBox "MD12 Float is " & v5ElseMsgBox "Error", vbCritical, "SIEMENS-Hugl"End IfEnd SubPrivate Sub Command5_Click()res = daveReadBytes(dc, daveDB, 21, 3, 1, 0)If res = daveResOK ThenMsgBox daveGetS32(dc)ElseMsgBox "Fuck"End IfEnd Sub2015-12-29。

VB实现PC与欧姆龙PLC通讯的串口编程

VB实现PC与欧姆龙PLC通讯的串口编程第一篇:VB实现PC与欧姆龙PLC通讯的串口编程Private Sub Form_Load()Dim i As Integer'OPEN COM1If ComTrue(1)= 0 ThenIf ComOpen(1, 38400, 7, 1, 1, “sjh”)= 1 Then 'MsgBox(“已注册”)'sjh为你的注册账号Call SetDelayNum(64)End IfEnd Ifjisujisu1jisu2End Sub第二篇:VB中串口通讯的实现VB中串口通讯的实现.txt VB中串口通讯的实现------------------一、概述串口通讯作为一种古老而又灵活的通讯方式,被广泛地应用于PC 间的通讯以及PC和单片机之间的通讯之中。

提到串口通讯的编程,人们往往立刻想到C、汇编等对系统底层操作支持较好的编程语言以及大串繁琐的代码。

实际上,只要我们借助相关ActiveX控件的帮助,即使是在底层操作一向不被人看好的VB中,一样能够实现串口通讯,甚至其实现方法和C、汇编相比,要更加快捷方便。

下面,笔者就介绍一下在VB 中实现串口通讯的方法。

在Visual Basic中有一个名为Microsoft Communication Control(简称MSComm)的通讯控件。

我们只要通过对此控件的属性和事件进行相应编程操作,就可以轻松地实现串口通讯。

下面,笔者就简要地介绍一下MSComm控件的使用方法。

二、MSComm控件的主要属性、事件1、MSComm的属性由于MSComm控件属性很多,在此笔者仅介绍与实现串口通讯密切相关的核心属性。

Commport:设置通讯所占用的串口号。

如设成1(默认值),表示对Com1进行操作。

Setting:对串口通讯的相关参数。

包括串口通讯的比特率,奇偶校验,数据位长度、停止位等。

其默认值是“9600,N,8,1”,表示串口比特率是9600bit/s,不作奇偶校验,8位数据位,1个停止位。

用VB6_0实现西门子PLC与PC机的串行通讯

收稿日期:2003-01-15作者简介:敬 伟(1977—),女,重庆人,西安工业学院硕士研究生,研究方向为自动化控制、智能仪表。

用VB6.0实现西门子PLC 与PC 机的串行通讯敬 伟1,樊文侠1,涂 劲2(1.西安工业学院电子信息科学与工程系,陕西西安710032;2.重庆大学,重庆400044)摘 要:对西门子系列PLC 的通讯协议进行了详细的介绍,并以VB6.0开发系统在WINDOWS 环境下实现了PC 机与西门子系列PLC 之间的串行通讯。

文章给出了PLC 和VB6.0相关的主要程序,通过该通讯程序实现了PC 机对西门子系列PLC 的监控和控制。

同时本程序对PC 机与其他型号PLC 之间的通讯也有一定的借鉴意义。

关键词:可编程控制器;串行通讯;协议中图分类号:TP393104 文献标识码:A 文章编号:1005-3751(2003)0025-02Achieve Serial Communication betw een PC and SIEMENS Series PLC by VB6.0J IN G Wei 1,FAN Wen 2xia 1,TU Jin 2(1.Xi ’an Inst.of Tech.,Xi ’an 710032,China ;2.Chongqing University ,Chongqing 400044,China )Abstract :The communication protocol of SIEMENS series PLC is introduced and serial communication between PC and SIEMENS series PLC is achieved by VB6.0development system in windows environment.The mostly program about PLC and VB6.0is introduced and can monitor SIEMENS series PLC through PC.What ’s more ,the method of disposal can be applied with other type of PLC or sin 2glechip.K ey w ords :programmable controller (PLC );serial communication ;protocol PLC 以卓越的可靠性和方便的可编程性广泛应用于工业控制领域。

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

利用VB实现PLC与PC机的通讯
作者:黄伟
来源:《科技视界》2012年第32期
【摘要】本文详细介绍了FX-2N系列PLC的通信协议,并以VB为开发工具设计界面以及接收数据从而实现了PC机与FX-2N系列的PLC的串行通讯。

在生产中可利用VB的可视化特性,采用串行通讯的方式,对整个装置的运行情况进行实时监控,达到随时掌握现场情况的目的。

【关键词】PLC;自动控制;串行通讯;VB
0 引言
目前,PLC在国内外已广泛应用于钢铁、石油、华工、电力、建材、机械制造、汽车、轻纺、交通运输、环保及文化娱乐各个行业。

在工业用途中,液体混和装置常常会用于会用于各种场合。

PLC以卓越的可靠性和方便的可编程性广泛应用于工业控制领域。

实现PC机与PLC 通信的目的是为了向用户提供诸如工艺流程图显示、动态数据画面显示、报表显示、窗口技术等多种功能,为PLC提供良好的人机界面。

PLC与计算机通信是PLC通信中最简单、最直接的一种通信方式。

与PLC通信的计算机称之为上位计算机,PLC与计算机之间的通信又叫上位通信。

PLC与计算机通信主要是通过RS-232C或RS-422接口进行的。

计算机上的通信接口是标准的RS-232接口;若PLC上的通信接口也是RS-232C接口时,PLC与计算机连接是可以直接使用适配电缆进行连接,实现通信。

本课题便也是采用这种方法进行连接的。

1 硬件连接
PC机与FX系列的PLC可经过FX2N-232-BD 通讯模块连接,下图表示它们之间的连接关系:
图1 硬件连接
2 FX系列PLC的通讯协议
(1)数据格式
FX系列的PLC采用异步格式,由1位起始位、7位数据位、1位偶检验位及1位停止位组成,波特率为9600bps,字符为ASCII码。

格式如下:
(2)通讯命令
FX 系列PLC有4个通讯命令,它们是读命令、写命令、强制通命令、强制断命令,如表所示。

表中X-输入继电器;Y-输入继电器;M-辅助继电器;S-状态元件;T-定时器;C-计数器;D-数据寄存器。

(3)通讯控制字符
FX 系列PLC采用面向字符的传输规程,用到5个通讯控制字符,如表所示:
(4)报文格式
PC机向PLC发送的报文格式如下:
报文格式
其中STX为开始标志:02H;ETX为结束标志:03H;CMD为命令的ASCII码:SUMH,SUML为从CMD到ETX按字节求累加和,溢出不计。

由于每字节十六进制数变量变为两字节的ASCII码,故检验和为SUMH与SUML。

数据段格式与定义如下:
数据格式
写命令的数据段有数据,读命令的数据段则无数据。

读/写字节数为01H-04H(1-64)个。

PLC向PC几发送的应答报文格式如下:
应答报文
对读命令的应答报文数据段为要读取的数据,一个数据占两个字节,分上下位。

对写命令的数据报文无数据段,而用ACK及NAK作为应答内容。

(5)传输过程
PC机与FX系列PLC之间采用应答方式通讯,传输出错则组织从发。

其传输过程如下:
PLC根据PC机命令,在每个循环扫描结束处的END语句后组织自动应答,无需用户在PLC一方编写。

3 PLC内部通用寄存器的地址
PLC中通用数据寄存器共有200个,分别是D0~D200。

因为通讯程序中需要传送PLC中的寄存器数据,因此需要知道通用寄存器的物理地址。

PLC中通用寄存器的物理地址是这样分布的:D0的物理地址为1000,以后每个寄存器占用2个地址的单元,直至D200的物理地址1190为止。

本程序中用到的寄存器有两个,分别是D123(10F6)和D200(1190)。

4 VB控件的使用
在计算机的右下角的[开始] [程序][Microsoft Visual Basic 6.0中文版]中选择Microsoft Visual Basic 6.0命令。

VB中有许多选项,在不同的目的下必须选择不同的开发工程,通常我们选择[标准EXE]作为开发的工程,这类工程被开发出来后可以编译成窗口环境下的执行文件,并且可以做成安装程序,安装到其他计算机上执行。

打开Visual Basic后发现在工具箱中只有一些默认的控件,在VB通讯事件中我们必需用到MSComm控件,这就需要用到部件的引用。

打开[工程][部件]后,在控件选项中选择“Microsoft Comm Control 6.0”工具栏中就会出现我们需要的控件了。

如图2所示。

5 结束语
以上就是程序的初始过程,针对不同的数据量情况还要进行更多的设置改变,在这里就不一一说明了。

这种通讯方式非常简便易行,并且在可视化的框架内可对各种设备进行远程操控,十分有利于工控设备的运行。

附上控件初始化所需程序代码:
MSComm1.Portopen=False
mport=2 MSComm1.InBufferSize = 1024
MSComm1.OutBufferSize = 1024
MSComm1.InputLen = 0
MSComm1.Settings = "9600,E,7,1"
MSComm1.InputMode = comInputModeText
MSComm1.Handshaking = comNone
MSComm1.PortOpen = True
MSComm1.InBufferCount = 0
MSComm1.OutBufferCount = 0
outstr = Chr(&H2) + "0" + "10F601" +
Chr(&H3) + "71"
MSComm1.Output = outstr
Do
DoEvents
Loop Until MSComm1.InBufferCount=6
str=MSComm1.Input
n=Mid(str, 3, 1)
y=Mid(str, 2, 1)
【参考文献】
[1]刘炳文,许蔓舒.Visual Basic程序设计教程[M].北京:清华大学出版社,2000.
[2]邱公伟. 可编程控制网络通信及应用[M].北京:清华大学出版社,2000.
[3]龚沛曾,杨志强.Visual Basic程序设计教程[M].北京:高等教育出版社,2000.
[4]赵文忠.PLC通讯技术及控制系统[M].西安:西安电子出版社,2002.
[5]Barry、B.Brey.Programming the Basic Visual and Pentium-Based Personal Computer[Z]. Upper SaddleRiver,NJ:Prentice Hall,Inc,1997.
[责任编辑:王静]。

相关文档
最新文档