6ES7902-3AB00-0AA0重慶西門子S7-300代理商
工作原理
當PLC投入運行后,其工作過程一般分為三個階段,即輸入采樣、用戶程序執行和輸出刷新三個階段。完成上述三個階段稱作一個掃描周期。在整個運行期間,PLC的CPU以一定的掃描速度重復執行上述三個階段。
輸入采樣
在輸入采樣階段,PLC以掃描方式依次地讀入所有輸入狀態和數據,并將它們存入I/O映象區中的相應得單元內。輸入采樣結束后,轉入用戶程序執行和輸出刷新階段。在這兩個階段中,即使輸入狀態和數據發生變化,I/O映象區中的相應單元的狀態和數據也不會改變。因此,如果輸入是脈沖信號,則該脈沖信號的寬度必須大于一個掃描周期,才能保證在任何情況下,該輸入均能被讀入。
用戶程序執行
在用戶程序執行階段,PLC總是按由上而下的順序依次地掃描用戶程序(梯形圖)。在掃描每一條梯形圖時,又總是先掃描梯形圖左邊的由各觸點構成的控制線路,并按先左后右、先上后下的順序對由觸點構成的控制線路進行邏輯運算,然后根據邏輯運算的結果,刷新該邏輯線圈在系統RAM存儲區中對應位的狀態;或者刷新該輸出線圈在I/O映象區中對應位的狀態;或者確定是否要執行該梯形圖所規定的特殊功能指令。
即,在用戶程序執行過程中,只有輸入點在I/O映象區內的狀態和數據不會發生變化,而其他輸出點和軟設備在I/O映象區或系統RAM存儲區內的狀態和數據都有可能發生變化,而且排在上面的梯形圖,其程序執行結果會對排在下面的凡是用到這些線圈或數據的梯形圖起作用;相反,排在下面的梯形圖,其被刷新的邏輯線圈的狀態或數據只能到下一個掃描周期才能對排在其上面的程序起作用。
輸出刷新
當掃描用戶程序結束后,PLC就進入輸出刷新階段。在此期間,CPU按照I/O映象區內對應的狀態和數據刷新所有的輸出鎖存電路,再經輸出電路驅動相應的外設。這時,才是PLC的真正輸出
如何在WinCC中獲取與S7-300/400 CPU的通訊狀態
WinCC項目中通訊連接至關重要,獲取連接通訊狀態能有效的判斷當前系統的運行情況,及時處理問題。
1 畫面中添加控件來獲取通訊狀態
WinCC 提供工具“Channel Diagonsis”來判斷項目中連接的通訊狀態,此工具在操作系統 “開始”—>“Simatic”—>“WinCC”—>“Tools”目錄下可以找到。此工具也可以添加到WinCC畫面中使用。
圖1
打開WinCC“圖形編輯器”,在右邊“對象選項板”中選擇“控件”列表,如果是V6.2的系統在列表空白區域點擊鼠標右鍵選擇“添加/刪除”(圖1),如果是V7.0的系統需要先選中“ActiveX 控件”,再點擊鼠標右鍵選擇“添加/刪除”(圖2)。
圖2
打開“選擇OCX控件”對話框,在OCX控件列表中找到并且選中“WinCC Channel Diagonsis Control”控件(圖3),點擊確定。然后在選項板控件列表中就能找到此控件,把此控件添加到畫面中,激活WinCC項目。
SM338超聲波傳感器檢測位置,無磨損、保護等級高、精度穩定不變。解:0~10MPa(0~10 000kPa)對應于轉換后的數字0~27 648,轉換公式為P=10000XN/27648(kPa)注意:在運算時一定要先乘后除,否則可能會損失原始數據的精度。雙極性 BIPOLAR :即輸入的整形數為– 27648到27648 ,此時K1 = – 27648.0,K2 =+27648.0單極性UNIPOLAR :即輸入的整形數為0到27648,此時 K1 = 0.0 ,K2 = +27648.0如果輸入的整形數大于K2 ,輸出 (OUT) 限位到HI_LIM, 并返回錯誤代碼。
圖3
項目激活運行后,通道診斷控件會顯示項目中通訊連接的通訊狀態,綠勾表示通訊正常,紅叉表示通訊故障。選中故障鏈接,在右邊列表中能顯示出此故障的錯誤代碼(圖4)。
圖4
錯誤代碼的說明可以在幫助文檔“S7CHNERRORchs.HLP”中查到,此幫助文檔在 WinCC 的安裝路徑下(如:C:ProgramsSiemensWinCCbin )找到。
? 雙極性BIPOLAR :即輸出的整形數為– 27648到27648,此時K1= – 27648.0, K2 =+27648.0單極性UNIPOLAR :即輸出的整形數為0到27648 ,此時K1 = 0.0 , K2 = +27648.0如果輸入值在下限LO_LIM 和上限HI_LIM 的范圍以外,輸出 (OUT) 限位到與其相近的上限或下限值(視其單極性UNIPOLAR 或雙極性BIPOLAR 而定),并返回錯誤代碼。詳細介紹西門子PLC S7-300的模擬量的處理方法實際的工程量,如壓力、溫度、流量、物位等要采用各種類型傳感器進行測量。
2 根據通訊狀態改變對象屬性
在連接中所建的變量,在通訊時都會帶有變量狀態信息,變量狀態包含WinCC 和自動化設備之間的連接狀態。通過獲取這個變量狀態,我們就能得知變量所在連接的通訊狀態。
首先在需要監控的通訊連接下新建一個變量“status”,地址取位存儲區首地址(圖5)。
在此文檔中我們以靜態文本來舉例。在畫面中添加一個靜態文本,選擇對象屬性“字體”à “文本”,在動態列表中選擇“動態對話框”(圖6)。
圖6
在動態對話框中,表達式/公式選擇變量“status”,把表達式/公式的結果列表中“其他”范圍對應的文本修改成“通訊已連接”。選擇“變量狀態”,在彈出的狀態列表中,把“沒有連接”范圍對應的文本修改成“通訊干擾”(圖7),應用此設置。
圖7
項目激活運行后,如果通訊正常,靜態文本會顯示“通訊已連接”,如果通訊故障會顯示“通訊干擾”。(具體故障原因可檢查通道診斷)
兩線式接近開關的漏電流小于輸入模塊允許的靜態電流,匯點輸入的電流流進輸入模塊,反之為源輸入電路。FM350-1是單通道計數器模塊,可以檢測達500kHz的脈沖,有連續計數、單向計數、循環計數3種工作模式。 如果輸入的整形數小于K1,輸出限位到LO_LIM ,并返回錯誤代碼。
此組態方法也可應用到其他對象,例如修改對象的背景顏色等。
3 使用腳本獲取通訊狀態
上一章節是把變量的“變量狀態”直接與對象屬性關聯,這個“變量狀態”也可以直接使用腳本來讀取,在腳本中判斷通訊狀態,繼而執行比較復雜的邏輯操作。
首先在需要監控的通訊鏈接下新建一個變量“status”,地址取位存儲區首地址(圖5)。
打開“全局腳本”—>“C-Editor”,新建一個“動作”,編寫如下代碼(圖8)。腳本中“GetTagDWordState”函數獲取了變量的變量狀態,然后使用If語句執行判斷。
圖8
在工具欄上點擊“信息/觸發”,(“信息/觸發”按鈕在V6.2系統中圖標參考圖8,如果是V7.0系統中圖標參考圖9)在屬性選項板上選擇“觸發器”à“定時器”à“周期”,然后點擊“添加”按鈕,在彈出對話框中填寫觸發器名稱“Action1”,然后定義“周期”5秒。這種組態(圖10)會讓此腳本在WinCC運行期間以5秒的時間間隔,循環執行。
圖9
圖10
注意事項:
1.項目運行前必須把計算機屬性“啟動”列表中“全局腳本行系統”給勾選上(圖11)。
2.腳本的執行周期用戶可根據項目自行修改,但是不建議執行周期過密。因為在WinCC系統中腳本是單進程的,如果腳本中有很耗時的執行過程,過密的執行周期會造成系統負擔過大,導致腳本不執行或者系統運行緩慢等現象。
圖11
4 CPU停機監控
這里需要注意一點,WinCC系統的默認設置是會監控CPU的STOP狀態的,如果CPU打到STOP狀態,也會顯示通訊故障,通道診斷的錯誤代碼“ 7001” 。這個默認設置可修改(圖12),打開變量管理器,選擇所用通訊協議,例如“TCP/IP”,點擊鼠標右鍵選擇“系統參數”,在對話框中選擇 “CPU 停機監控”取消“激活”,則不對CPU的STOP狀態進行監控。
免責聲明
- 凡本網注明“來源:化工儀器網”的所有作品,均為浙江興旺寶明通網絡有限公司-化工儀器網合法擁有版權或有權使用的作品,未經本網授權不得轉載、摘編或利用其它方式使用上述作品。已經本網授權使用作品的,應在授權范圍內使用,并注明“來源:化工儀器網”。違反上述聲明者,本網將追究其相關法律責任。
- 本網轉載并注明自其他來源(非化工儀器網)的作品,目的在于傳遞更多信息,并不代表本網贊同其觀點和對其真實性負責,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網站或個人從本網轉載時,必須保留本網注明的作品第一來源,并自負版權等法律責任。
- 如涉及作品內容、版權等問題,請在作品發表之日起一周內與本網聯系,否則視為放棄相關權利。