|
眾所周知,PLC自從問世以來就在自動控製各個行業發揮著難以取代的核心控製作用。PLC運行可靠,適用於各種惡劣的工業環境,PLC和工控機(IPC)相比,其運行可靠、可擴展性好、便於電氣連接、控製更專業,但是工控機良好的人機界麵,方便高級語言都是PLC所不能比擬的。
組態軟件在很多場合應用於控製,可整個控製的中心往往還是PLC,組態軟件(上位機)所(suo)起(qi)的(de)控(kong)製(zhi)作(zuo)用(yong)很(hen)小(xiao)。人(ren)機(ji)界(jie)麵(mian)一(yi)般(ban)用(yong)於(yu)簡(jian)單(dan)的(de)動(dong)作(zuo)控(kong)製(zhi),工(gong)藝(yi)參(can)數(shu)的(de)編(bian)製(zhi),配(pei)方(fang)的(de)設(she)定(ding)等(deng)等(deng),雖(sui)然(ran)在(zai)概(gai)念(nian)上(shang)屬(shu)於(yu)控(kong)製(zhi)範(fan)疇(chou),但(dan)它(ta)並(bing)未(wei)真(zhen)正(zheng)起(qi)到(dao)核(he)心(xin)控(kong)製(zhi)作(zuo)用(yong),因(yin)為(wei)真(zhen)正(zheng)長(chang)期(qi)的(de)自(zi)動(dong)運(yun)行(xing)控(kong)製(zhi)是(shi)由(you)PLC完成。我們不經常使用工控機作為核心控製部分的原因有兩點:第一,工控機不適於在很惡略的環境下運行;第二,工控機經常采用的Windows係統並不能夠讓人放心,其長期運行效果並不好。
盡管PLC、IPC在自動化控製中扮演不同角色,在許多運行連續時間較短,環境相對比較好的地方,人們還是希望使用IPC進行核心控製。使用IPC進行核心控製有很多種實現方式,當然其中最為簡單的辦法就是使用組態軟件。
本ben文wen針zhen對dui使shi用yong組zu態tai軟ruan件jian做zuo控kong製zhi中zhong用yong戶hu經jing常chang遇yu到dao的de問wen題ti進jin行xing討tao論lun。在zai許xu多duo用yong戶hu使shi用yong組zu態tai軟ruan件jian進jin行xing控kong製zhi,尤you其qi是shi使shi用yong串chuan口kou連lian接jie方fang式shi進jin行xing控kong製zhi時shi,發fa現xian組zu態tai軟ruan件jian自zi動dong控kong製zhi會hui影ying響xiang的de數shu據ju的de采cai集ji速su度du,本ben文wen著zhe重zhong介jie紹shao如ru何he解jie決jue此ci問wen題ti,解jie決jue此ci辦ban法fa就jiu是shi――將PLC的控製方式模仿的應用到上位機串口控製中。
2 用戶使用組態軟件控製後,導致數據采集慢的原因
這是許多組態軟件用戶在編寫上位機自動控製程序中所遇到的問題,到底是什麼原因?能否有好的辦法來解決?
womenxianjiandanmiaoshuzutairuanjianshujucaijikongzhideyuanli。zaizhengchangqingkuangxia,zutairuanjiandingshixiangxiaweijifachuduminglinglaidengdaixiaweijihuiyingyijiequxiangyaozhaxundeshuju,zhouerfushidexunhuan,shujubiandongtaidexianshizaishangweijishang,shixianshuju“實時采集”。那麼當我們需要對下位機進行控製時,組態軟件就會相應寫命令,實現上位機對下位機的“實時控製”。
表麵上看去合情合理,可為什麼會出現數據采集慢這種情況?原來一切“歸咎於”組態軟件的讀寫機製。組態軟件為實現快速的控製,所以給寫命令最高的優先執行權,也就是說,當有寫(控製)命令時,組態軟件首先執行寫命令,直到沒有寫(控製)命令時組態軟件才恢複正常的讀(采集)循環。
由(you)此(ci),我(wo)們(men)不(bu)難(nan)發(fa)現(xian)用(yong)戶(hu)經(jing)常(chang)出(chu)現(xian)數(shu)據(ju)采(cai)集(ji)慢(man)的(de)原(yuan)因(yin)。如(ru)果(guo)用(yong)戶(hu)頻(pin)繁(fan)將(jiang)控(kong)製(zhi)指(zhi)令(ling)發(fa)出(chu),係(xi)統(tong)將(jiang)分(fen)配(pei)很(hen)少(shao)的(de)時(shi)間(jian)給(gei)數(shu)據(ju)采(cai)集(ji),從(cong)而(er)導(dao)致(zhi)數(shu)據(ju)采(cai)集(ji)變(bian)慢(man)或(huo)者(zhe)中(zhong)斷(duan)。用(yong)戶(hu)在(zai)循(xun)環(huan)指(zhi)令(ling)中(zhong)重(zhong)複(fu)給(gei)一(yi)個(ge)變(bian)量(liang)賦(fu)值(zhi)(如y0=1),就會導致以上問題,所以我們的解決辦法就是需要控製時控製,不需要控製時放手。為了實現這種控製方式,我們可以參考PLC的運行模式。
|