加入收藏 在线留言 联系我们
关注微信
手机扫一扫 立刻联系商家
全国服务热线18717946324
公司新闻
西门子工业授权合肥代理商
发布时间: 2023-03-11 12:56 更新时间: 2024-05-03 08:00
观看西门子工业授权合肥代理商视频:

西门子工业授权合肥代理商

我公司主营西门子各系列PLC (S7-200  SMART S7-300  S7-400)  触摸屏  变频器 (MM系列 G120  G120C G110)  伺服 (V80 V60)   数控备件 (PCU50  NCU CCU  轴卡) 等 价格优势  产品为西门子原装正版产品  我公司售出的产品 按西门子标准质保  产品本身有质量问题 质保一年  公司秉承:以信待人 以诚待人  质量如生命 客户至上的经营理念  竭诚为您服务 您的肯定是我们大的动力    我们将期待与您长期持久的合作

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.bbbbbMode = combbbbbModeBinary

打开串口并定时发送数据命令: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.bbbbbLen = 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 bbbbbb
If MSComm1.CommEvent = comEvReceive Then
tempdata = MSComm1.bbbbb
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输出接口的智能数字流量积算仪之间的串口通信功能,使其能够实时的采集瞬时流量,并成功的应用于底吹氩流量闭环控制系统。这种通信方式灵活方便,结构简单,可靠性高,达到了预期的要求,具有较好的实际价值和使用性。

PLC通信简单说明 (上位机 下危机 接口技术 传输协议必须明了)
随着计算机网络技术的发展,现代企业的自动化程度越来越高。在大型控制系统中,由于控制任务复杂,点数过多,各任务间的数字量、模拟量相互交叉,因而出现了紧靠增强单机的控制功能及点数已难以胜任的现象。所以PLC生产厂家为了适应复杂生产的需要,也为了便于对PLC进行监控,均开发了各自的PLC通信技术及PLC通信网络。
联网目的
    PLC的通信就是指PLC与计算机之间、PLC与PLC之间、PLC与其它智能设备之间的数据通信。 
PLC的联网就是为了提高系统的控制功能和范围,将分布在不同位置的PLC之间、PLC与计算机、PLC与智能设备通过传送介质连接起来,实现通信,以构成功能更强大的控制系统。


联系方式

  • 电  话:18717946324
  • 联系人:占雪芬
  • 手  机:18717946324
  • 微  信:18717946324