首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

上位机VB与200PLC走PPI协议通讯时VD寄存器数据写不进解决办法

2012-04-05 
上位机VB与200PLC走PPI协议通讯时VD寄存器数据写不进请教各位:上位机采用VB编程,PLC走PPI协议,现想往PLC的

上位机VB与200PLC走PPI协议通讯时VD寄存器数据写不进
请教各位:上位机采用VB编程,PLC走PPI协议,现想往PLC的VD100中写入十六进制FFFFFFFF数值,上位机VB通过字节格式发送十六进制68 23 23 68 02 00 7C 32 01 00 00 00 00 00 0E 00 00 04 01 12 0A 10 06 00 01 00 01 84 00 03 20 00 04 00 20 FF FF FF FF AF 16 后PLC成功返回E5,接着发送确认指令十六进制10 02 00 5C 5E 16后,PLC返回68 F F 68 00 02 08 32 02 00 00 00 00 00 00 00 00 85 00 C3 16 ,此时查看PLC寄存器VD100的值没被写入,不知何原因,还请高手帮忙分析,先谢谢了。

[解决办法]
你这个样子写没人懂的,写的详细点.最好有点源代码来分析.
[解决办法]
LZ:你的SendSurePublicByte过程代码有BUG,多发送了1字节,所以导致出错,代码修改如下:

VB code
Sub SendSurePublicByte() '向PLC发送确认指令的公共字节    Dim StrSendSure As String    Dim LenSureByte As Integer    Dim i As Long    Dim SendSureByte() As Byte    StrSendSure = "10 02 00 5C 5E 16"    StrSendSure = Replace(StrSendSure, " ", "")    Print StrSendSure    ReDim SendSureByte(0 To -1 + Len(StrSendSure) / 2)    For i = 1 To Len(StrSendSure) Step 2    SendSureByte((i - 1) / 2) = Val("&H" + Mid(StrSendSure, i, 2))    Next i    MSComm1.Output = SendSureByteEnd Sub 

热点排行