基于 MODBUS 總線多功能電力儀表遠程通訊的軟件開發技術
三、軟件的設計和開發

注:從CD194E系列的多功能電力儀表傳過來的電功率數據就存放在Byte1到Byte4內。
3.通信步驟:
⑴加入通信控件。也就是MSComm控件
⑵設置通信端口號碼。即CommPort屬性,在本文使用Com1。
⑶設置通訊參數。即Settings屬性。在本文設置為9600,n,8,1。即通訊速度為9600,數據格式為1個起始位,8個數據位,1個停止位,無校驗位。注意必須與多功能電力儀表的設置一致,不然就會通信失敗。
⑷設置其它參數。必要時再加上其它的屬性設置。
⑸打開通信端口。即PortOpen屬性設成True。
⑹每隔500毫秒送出字符串或讀入字符串。即發送命令4(讀N個字節)來讀取電功率參數,使用Input及Output屬性。
⑺使用完MSComm控件后,將通信端口關閉。
4.人機界面:

5.程序代碼:
'API函數聲名
PrivateDeclareFunctionGetTickCountLib"kernel32"()AsLong
'點擊結束程序按鈕
PrivateSubCmdEnd_Click()
End
EndSub
'點擊讀取電功率按鈕
PrivateSubCmdRead_Click()
Timer1.Enabled=NotTimer1.Enabled
IfTimer1.EnabledThen
CmdRead.Caption="停止讀數"
Else
CmdRead.Caption="讀取電功率"
EndIf
EndSub
'程序初始化
PrivateSubForm_Load()
MSComm1.InputMode=comInputModeBinary
MSComm1.PortOpen=True
Timer1.Enabled=False
EndSub
PrivateSubTimer1_Timer()
DimC4%,C5%,C6%,C7%
DimTick
DimDataAsDouble
DimBuf()AsByte
DimByteOut(7)AsByte
MSComm1.InputLen=0
Buf=MSComm1.Input
'重新定義數據輸入緩沖區,發送命令4
MSComm1.InputLen=1
ByteOut(0)=H1
ByteOut(1)=H4
ByteOut(2)=H0
ByteOut(3)=H5C
ByteOut(4)=H0
ByteOut(5)=H4
ByteOut(6)=H31
ByteOut(7)=HDB
MSComm1.Output=ByteOut(0)ByteOut(1)ByteOut(2)ByteOut(3)ByteOut(4)ByteOut(5)
ByteOut(6)ByteOut(7)
評論