15618722057
運城SIEMENS西門子S7-300模塊代理商
SIEMENS潯之漫智控技術(上海)有限公司
本公司西門子自動化產品,質量保證,價格優勢
西門子PLC,西門子觸摸屏,西門子數控系統,西門子軟啟動,西門子以太網
西門子電機,西門子變頻器,西門子直流調速器,西門子電線電纜
我公司大量現貨供應,價格優勢,*
西門子PLC程序的設計無規定的方法,只要動作可靠、程序簡捷、明了便是好程序。至于采用的是什么樣的方法、何種語言,這并不重要。
通過典型應用程序的組合和靈活應用,以完成大多數常規程序的設計,是一般設計人員使用的基本方法之一,可以供初學者參考。
假設某車間排風系統,采用S7-200 PLC控制,并利用工作狀態指示燈的不同狀態進行監控,指示燈狀態輸出的控制要求如下:
①排風系統共由3臺風機組成,利用指示進行報警顯示:
②當系統中有2臺以上風機工作時,指示燈保持連續發光;
③當系統中沒有風機工作時,指示燈以2Hz頻率閃爍報警:
④當系統中只有l臺風機工作時,指示燈以0.5Hz頻率閃爍報警。
根據以上要求,PLC的程序設計可以按照如下步驟進行。
1.確定I/O地址
為了實現本控制要求,系統至少應有3個輸入與1個輸出,假設所確定對應的輸入/輸出地址與狀態如表9-5.1所示。
在以上PLC地址確定以后,即可以進行PLC程序的設計。PLC程序的設計可以根據系統的基本動作要求,分步進行編制,并充分應用前述的典型程序。
CPU寄存器狀態字的各位給出了有關指令狀態或結果的信息以及所出現的錯誤,我們可以將二進制邏輯操作狀態位信號狀態直接集成到程序中,以控制程序執行的流程。
2.狀態字寄存器
先簡單介紹一下CPU中狀態字。
位,如果/FC位的信號狀態為“0",則表示伴隨著下一條邏輯指令,程序中將開始一個新的邏輯串。FC前面的斜杠表示對FC取反。
邏輯運算結果:狀態字的第1位為RLO位(RLO=“邏輯運算結果"),在二進制邏輯運算中用作暫時存儲位。比如,一串邏輯指令中的某個指令檢查觸點的信號狀態,并根據布爾邏輯運算規則將檢查的結果(狀態位)與RLO位進行邏輯門運算,然后邏輯運算結果又存在RLO位中。
狀態位:狀態位(第2位)用以保存被尋址位的值。狀態位總是向掃描指令(A,AN,O,…)或寫指令(=,S,R,)顯示尋址位的狀態(對于寫指令,保存的尋址位狀態是本條寫指令執行后的該尋址位的狀態)。
OR位:在用指令OR執行或邏輯操作之前,執行與邏輯操作的時候,就需要用到OR這一狀態位。OR位表示先前執行的與邏輯操作產生的值為“1",于是,邏輯操作或的執行結果就已被確定為“1"。
OV位:溢出表示算術或比較指令執行時出現了錯誤。根據所執行的算術或邏輯指令結果對該位進行設置。
OS位:溢出存儲位是與OV位一起被置位的,而且在更新算術指令之后,它能夠保持這種狀態,也就是說,它的狀態不會由于下一個算術指令的結果而改變。這樣,即使是在程序的后面部分,也還有機會判斷數字區域是否溢出或者指令是否含有無效實數。OS位只有通過如下這些命令進行復位:JOS(若OS=1,則跳轉)命令,塊調用和塊結束命令。
1.什么是全局變量和局部變量?
以西門子的S7-200為例,輸入I、輸出Q、變量存儲器V、內部存儲器位M、定時器T、計數器C等屬于全局變量,可以在符號表中為全局變量定義符號名。
程序組織單元(ProgramOrganizationalUnit)簡稱為POU,包括主程序、子程序和中斷程序。每個POU均有自己的64字節局部變量,局部變量用L(Local)來表示,局部變量只能在它所在的POU中使用。與此相反,全局變量可以在各POU中使用。
2.局部變量有哪些類型?
子程序可以使用下列局部變量:
1)TEMP(臨時變量)是暫時保存在局部數據區中的變量。只有在執行該POU時,定義的臨時變量才被使用,POU執行完后,不再保存臨時變量的數值。主程序和中斷程序的局部變量表中只有TEMP變量。
2)IN(輸入參數)由調用它的POU提供的傳入子程序的輸入參數。
3)OUT(輸出參數)是子程序的執行結果,它被返回給調用它的POU。
4)IN_OUT(輸入_輸出參數)的初始值由調用它的POU傳送給子程序,并用同一變量將子程序的執行結果返回給調用它的POU。
主程序和中斷程序的局部變量表中只有臨時變量TEMP。
3.子程序的輸入、輸出參數有什么作用?
具有輸入、輸出參數和局部變量的子程序易于實現結構化編程,對于長期生產同類設備或生產線的廠家尤為有用。編程人員為設備的各部件或工藝功能編寫了大量的通用的子程序。即使不知道子程序的內部代碼,只要知道子程序的功能和輸入、輸出參數的意義,就可以用它們快速“組裝"出滿足不同的用戶要求的控制程序。就好像可以用數字集成電路芯片組成復雜的數字電路一樣。
如果子程序沒有輸入、輸出參數,這種子程序沒有明確的軟件接口,使用起來很不方便。
4.局部變量有什么優點?
1)子程序如果沒有局部變量,它和調用它的程序之間只能通過全局變量來交換數據,子程序內部也只能使用全局變量。將它移植到別的項目時,需要對各POU使用的全局變量作統一安排,以保證不會出現地址沖突。當程序很復雜,子程序很多時,這種地址分配是很花時間的。
如果子程序有局部變量,并且在子程序中只使用局部變量,不使用全局變量,因為與其他POU沒有地址沖突,不作任何改動,就可以將子程序移植到別的項目中去。
為了減少移植子程序的工作量,在子程序中應盡量避免使用全局變量和全局符號。
2)如果使用局部變量表中的臨時變量(TEMP),同一片物理存儲器可以在不同的程序中重復使用。
請輸入賬號
請輸入密碼
請輸驗證碼
以上信息由企業自行提供,信息內容的真實性、準確性和合法性由相關企業負責,化工儀器網對此不承擔任何保證責任。
溫馨提示:為規避購買風險,建議您在購買產品前務必確認供應商資質及產品質量。