VB6.0在臺安PLC與上位機通訊中的應(yīng)用
#36;) Label6.Caption = C1% 4.2.5 設(shè)定Relay狀態(tài),將Relay設(shè)定為ON(反應(yīng)時間50ms): Dim C1 As Integer STX$ = :: transmitBuf$ = 01?5SCSY00011 sum$ = CheckSum(transmitBuf$) ETX$ = Chr$(13) SXD$ = STX$ + transmitBuf$ + sum$ + ETX$ MSComm1.Output = SXD$ Do DoEvents Loop Until MSComm1.InBufferCount >= 12 In2$ = MSComm1.Input 4.2.6 PLC停止運行: STX$ = :: transmitBuf$ = 01?5STP sum$ = CheckSum(transmitBuf$) ETX$ = Chr$(13) SXD$ = STX$ + transmitBuf$ + sum$ + ETX$ MSComm1.Output = SXD$ Do DoEvents Loop Until MSComm1.InBufferCount >= 12 In3$ = MSComm1.Input 4.2.7 VB6.0下CheckSum函數(shù)代碼如下: Private Function CheckSum(transmitBuf$) L = Len(transmitBuf$) Add = 0 Dim k, sum As Integer For k = 1 To L TJ$ = Mid$(transmitBuf$, k, 1) Add = Add + Asc(TJ$) Next k Do While Add >= 256 Add = Add - 256 Loop Add = 255 - Add + 1 tempBuf$ = Hex$(Add) CheckSum = LTrim(tempBuf$) End Function 5、結(jié)論 PLC與上位機的結(jié)合,并通過VB6.0傳送數(shù)據(jù)所構(gòu)成的計算機監(jiān)控系統(tǒng),對于近距離傳輸數(shù)據(jù)的現(xiàn)場控制來說是一種性價比很高的解決方案。充分的利用的PLC的抗干擾性能和PC強大的圖形顯示,浮點運算的特點,與之有效地結(jié)合,******限度,合理的利用資源。 |