久久久久极品_黄色短视频在线播放_91精品久久久久久久久_黄色免费成人_91av网站在线观看_综合二区

 官方博客  中文版 | ENGLISH

客服热线:0517-86930968;
               13951262528

当前位置:首页 > 技术文章 
VB6.0的工控机与智能流量积算仪的串口通信
更新时间:2019-7-9 9:26:15 浏览:1765 关闭窗口 打印此页
 1、引言
 
本文主要从应用的角度利用VB6.0的MSComm 控件和MODBUS协议,成功实现了某流量控制系统中工控机与带RS-232输出接口的智能数字流量积算仪之间的串口通信功能。D08-8CZM数字显示表应用于底吹氩流量控制系统中流量的显示,工控机通过读取其显示值作为反馈信号,从而实现流量的闭环控制。
 
2、D08-8CZM型智能数字流量显示积算仪与串口通信
 
2.1 硬件构成
 
D07-12A型质量流量传感器采用毛细管传热温差量热法原理测量气体的质量流量(无需温度压力补偿)。将传感器加热电桥测得的流量信号送入放大器放大,放大后的流量检测电压与设定电压进行比较,再将差值信号放大后去控制调节阀门,闭环控制流过通道的流量使之与设定的流量相等。当本流量积算仪与MFC(质量流量计)配套使用时,只需用电缆通过D型插头将流量积算仪与MFC连接起来即可。然后采用一台上位机与一台D08-8CZM流量积算仪进行通信的方式,使用RS232通讯方式:将2引脚(TXD)与上位机串口的RXD(工控机串口的2引脚)相连;3引脚(RXD)与上位机串口的TXD(工控机串口的3引脚)相连;5引脚(SG)与上位机串口的SG(工控机串口的5引脚)相连。
 
2.2 通讯原理
 
工控机作为上位机与从机(数字流量积算仪)采用主从应答方式进行通信,一个网络中只有一个主机(上位机,节点地址为0),主机通过站号(数字流量积算仪的唯一地址)区分不同的从机。上位机始终处于主动状态,根据程序运行的需要向(通信端口)数字流量积算仪发出读写等命令;从机处于被动状态,接收并响应上位机的命令。需要读采样数据时,上位机通过通信口向指定地址的数字流量积算仪发出读数据命令,数字流量积算仪响应并将数据准备好,按统一的数据通信帧格式编成响应字符串,主机再次读通信口接收缓冲区即可读到所需的数据。向数字流量积算仪写数据时,上位机向指定数字流量积算仪发出写命令及参数数据,积算仪即可接受并返回响应情况。上位机通过RS-232通信进行运行状态监控、参数设置、诊断等远程测控功能,实现这些功能采用了不同的通信格式。其中MODBUS协议通讯原理图如下:
 
 
图1 MODBUS协议的询问应答环路
 
2.3 通讯协议
 
本通信协议应用于D08-8CZM型流量积算仪与上位机的通信,数据以16进制格式传输,波特率:9600;数据位8位;停止位:1位;效验位:无。本协议与MODBUS协议兼容,可以通过上位机显示流量积算仪的瞬时流量、累积流量、满量程、单位和阀状态(包括阀控、关闭和清洗),而且可以通过上位机设定流量积算仪的瞬时流量、使流量积算仪的累积流量清零。因此在本协议用到了MODBUS协议的命令$03(Reading 1~9words)、命令$05(Force single coil)和命令$06(Writing 1 word)。
 
使用命令$03可以通过上位机读流量积算仪的当前状态,其通信协议的具体格式为:
 
上位机 积算仪:01 03 00 02 00 08 E5 CC
 
各字节含义:
 
01: MODBUS地址;
03: 功能码03(Reading 1~9words);
00 02:起始地址,00为高8位,02为低8位;
00 08:读取的字数;
E5 CC:CRC效验值,E5为CRC的低8位,CC为高8位。
 
上位机 积算仪:01 03 10 (1)~(16) CRCL CRCH
 
各字节含义:
 
01:MODBUS地址;
03:MODBUS命令号;
10:上传的字节数;
 
(1)~(4):瞬时流量值;“00~09”表示数字“0~9”,“10~19”表示“0.~9.”;
(5)~(10):流量累积值;同上;
(11)~(14):满量程;同上;
(15):流量单位;00表示SCCM和SCC,01表示SCCM和SL,11表示SLM和SL;
(16):阀状态;00表示关闭,80表示阀控,FF表示清洗;
CRCL:CRC的低八位;CRCH:CRC的高8位。
 
3、用VB实现串行通讯
 
3.1 MSComm控件
 
VB的通信控件MSComm能够提供串行通信的全部功能,程序编写、调试简单方便,开发速度快,该控件封装了通信过程中的底层操作程序,用户只需设置和监控控件的属性和事件,就可以方便地实现异步串行通信。
 
采用MSComm控件接收数据,按照接收方式分两种形式:事件驱动方式,定时查询方式。本例为适应流量的实时控制采用定时驱动方式,若定时器计时到,通过串行通信口向指定地址流量积算仪发出读写等操作命令,等待时间到则检查InBufferCount属性值来判断输入缓冲区中是否接受到了相应数目的字符,从而进行读取、判断数据合法性和数据存储、处理等操作。
 
3.2 通信功能的编程实现
 
程序框图如下:
 
 
图2 串口通信程序框图
 
串口初始化:MSComm1.CommPort = 1
MSComm1.SThreshold = 1
MSComm1.Settings = 9600,N,8,1
MSComm1.InBufferSize = 1024
MSComm1.OutBufferSize = 1024
MSComm1.InputMode = comInputModeBinary
 
打开串口并定时发送数据命令:Private Sub Timer1_Timer()
Dim bytearray(0 To 7) As Byte
bytearray(0) = &H1
bytearray(1) = &H3
bytearray(2) = &H0
bytearray(3) = &H2
bytearray(4) = &H0
bytearray(5) = &H8
bytearray(6) = &HE5
bytearray(7) = &HCC
MSComm1.InputLen = 21
MSComm1.InBufferCount = 0
MSComm1.OutBufferCount = 0
MSComm1.RThreshold = 1
MSComm1.PortOpen = True
If MSComm1.PortOpen = True Then
MSComm1.Output = bytearray
End If
End Sub
接受数据:Private Sub MSComm1_OnComm()
Do
DoEvents
Loop Until MSComm1.InBufferCount = 21
Dim dataread() As Byte
Dim tempdata As Variant
Dim str As String
If MSComm1.CommEvent = comEvReceive Then
tempdata = MSComm1.Input
ReDim dataread(UBound(tempdata)) As Byte
For i = 0 To UBound(tempdata)
dataread(i) = tempdata(i)
End Sub
 
同理利用以上程序框图和通信协议可以完成下图的所有功能:
 
 
 
图3 基于VB的D08-8CZM型流量积算仪
 
4、结束语
 
利用VB6.0的MSComm 控件和MODBUS协议,实现了工控机与带RS-232输出接口的智能数字流量积算仪之间的串口通信功能,使其能够实时的采集瞬时流量,并成功的应用于底吹氩流量闭环控制系统。这种通信方式灵活方便,结构简单,可靠性高,完全达到了预期的要求,具有较好的实际价值和使用性。
上一篇文章: LabVIEW实现多功能...
下一篇文章: 流量积算仪测量结...
在线客服系统
主站蜘蛛池模板: 亚洲白嫩在线观看 | 四虎影视免费观看高清视频 | 四虎影院在线播放 | 成人奭片免费观看 | 成人做爰高潮片免费视频 | 在线观看毛片网站 | 婷婷射精av这里只有精品 | 免费一级特黄欧美大片久久网 | 又黄又粗又爽免费观看 | 欧美激情视频一区二区三区 | 亚洲国产成人九九综合 | 在线综合亚洲欧美自拍 | 人人妻人人澡人人爽人人精品av | 国产一区二区三区四 | 小蜜被两老头吸奶头在线观看 | 国产成人麻豆亚洲综合无码精品 | 久草热在线 | 日日碰狠狠添天天爽超碰97久久 | a级毛片在线视频免费观看 a级免费 | 四虎影视成人永久免费观看视频 | 精精国产xxxx视频在线 | 一级片播放 | 自拍亚洲午夜伦li片影院 | 双乳被老汉揉搓a毛片免费观看 | 欧美成年黄网站色视频 | 成人免费播放 | 免费网站看v片在线18禁无码 | 亚洲国产精品尤物yw在线观看 | 四虎影院网址大全 | 精品人妻av一区二区三区 | 亚洲欧美综合图区官网 | 校园激情综合网 | 久久久国产99久久国产一 | 成年片色大黄全免费网站久久 | 欧美性做爰片免费视频看 | 在线观看欧洲成人免费视频 | 欧美超级乱婬视频播放 | 亚洲av无码一区二区三区牲色 | 欧美综合网 | 美女网站免费观看 | 99国产精品久久久久久久成人热 |