基于VB的PLC與計算機間串行通信實現(xiàn)
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
?。囗憫?yīng)幀校驗
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返回的響應(yīng)幀要進行fcs校驗,并利用異常碼排除返回的異常數(shù)據(jù),這樣不但可以提高計算機獲取信息的正確性,而且提高了計算機監(jiān)控的實時性。
四、結(jié)束語
本文介紹的通信方法在我校cims研究中心自行研制的一套機電一體化設(shè)備中得到實施運用,經(jīng)試驗運行,證明這種通信方法穩(wěn)定、可靠,確實是一種非常有效的方法。將PLC與計算機通信網(wǎng)絡(luò)連接起來,PLC作為下位機,計算機作為上位機,形成一個優(yōu)勢互補的自動控制系統(tǒng),實現(xiàn)了“集中管理,分散控制”。其中各個PLC子系統(tǒng)或遠程工作站在生產(chǎn)現(xiàn)場對各個被控對象進行控制,利用網(wǎng)絡(luò)連接構(gòu)成一個PLC綜合控制,滿足了現(xiàn)代自動化系統(tǒng)向信息化、網(wǎng)絡(luò)化、智能化的過渡。
評論