基于VB的PLC與計算機間串行通信實現
if endstring = 13 then
readdata = error
exit function
elseif endstring = 14 then
readdata = error
exit function
elseif endstring = 15 then
readdata = error
exit function
elseif endstring = 18 then
readdata = error
exit function
elseif endstring = a3 then
readdata = error
exit function
elseif endstring = a8 then
readdata = error
exit function
end if
`響應幀校驗
endstring = mid$(instring, 1, len(instring) - 4)
returnfcsstring = mid$(instring,len(instring) - 3, 2)
fcsstring = fcs(endstring)
if fcsstring > returnfcsstring then
readdata = error
exit function
end if
returnstr = mid$(instring,
len(instring) - num - 3, num)
readdata = returnstr
end function
從上面程序可以看到,計算機對PLC返回的響應幀要進行fcs校驗,并利用異常碼排除返回的異常數據,這樣不但可以提高計算機獲取信息的正確性,而且提高了計算機監控的實時性。
四、結束語
本文介紹的通信方法在我校cims研究中心自行研制的一套機電一體化設備中得到實施運用,經試驗運行,證明這種通信方法穩定、可靠,確實是一種非常有效的方法。將PLC與計算機通信網絡連接起來,PLC作為下位機,計算機作為上位機,形成一個優勢互補的自動控制系統,實現了“集中管理,分散控制”。其中各個PLC子系統或遠程工作站在生產現場對各個被控對象進行控制,利用網絡連接構成一個PLC綜合控制,滿足了現代自動化系統向信息化、網絡化、智能化的過渡。
評論