其他品牌

  • 39acm28aenmoore
39acm28aenmoore

39acm28aenmoore

数据读取子程序:
PublicFunctionGetData(ByValStartAddressAsString,ByValGetBytesAsInteger,ByValHex_BytesAsString)AsString
MSComm1.InputLen=GetBytes*2+4
MSComm1.Output=STX+CMD_Read+StartAddress+Hex_Bytes+ETX+GetSumChk(CMD_Read+StartAddress+Hex_Bytes+ETX)
‘传送数据组成:起始符+命令+首地址+数据位+结束符+和检验码
GetData=MSComm1.Input
MSComm1.InBufferCount=0
MSComm1.InputLen=0
EndFunction
如需读取数据,通过调用GetData子程序。
参数设置程序可参考读取子程序,只是改变命令而已。
Access97数据库中包含三个表单,包括参数表、记录表、报警记录表。
通过如下子程序是将实际称量值(记录表)更新到数据库:
PrivateSubSaveData()
DimiAsInteger
DimvalidAsBoolean
OnErrorResumeNext
valid=True
Data1.Recordset.AddNew
Data1.Recordset.Fields("dtime")=TimeSerial(OnHour,OnMinute,OnSecond)

Data1.Recordset.Fields("systime")=Time‘系统时间
Data1.Recordset.Fields("get_xl")=LF(1)‘小料当前称量值
Data1.Recordset.Fields("get_fjs")=LF(2)‘方解石当前称量值
Data1.Recordset.Fields("get_cs")=LF(3)‘长石当前称量值
Data1.Recordset.Fields("get_sys")=LF(4)‘石英砂当前称量值
Data1.Recordset.Fields("get_cj")=LF(5)‘纯碱当前称量值
OnErrorResumeNext
Data1.Recordset.Update‘更新数据库记录
Data1.Recordset.MovePrevious
EndSub
moore 39acm28aen程序中,LF(i)变量对应为图二系统参数表单中实称值。
保存参数子程序只是对数据库操作,程序结构可参考以上子程序。
上位机与PLC通信质量的好坏,对系统的安全可靠运行影响极大,因此,编写程序时,除了在两者之间的通信协议上保持绝对一致和采取相应的容错技术外,还要考虑系统的整体容错技术,防止系统的不正常。

关闭
微信扫码关闭
微信扫码