ob体育竞彩 _欧宝体育在线链接 學習網站
當前位置: ob体育竞彩 > plc> 西門子plc> 正文

西門子PLC程序設計常用的結構

時間:2020-01-19 19:46 來源:ob体育竞彩

PLC程序設計,常用的結構有三種:線性化編程、模塊化編程、結構化編程。下麵我們就以西門子PLC為例,對這三種程序結構展開敘述。
線性化編程是將整個用戶程序放在組織塊OB1(主程序)中,在CPU循環掃描時執行OB1中的全部指令。其特點是結構簡單,但效率低下。另一方麵,某些相同或相近的操作需多次執行,這樣會造成不必要的編程工作。再者,由於程序結構不清晰,會造成管理和調試的不方便。所以在編寫大型程序時,避免線性化編程。

模塊化編程是將程序根據功能分為不同的邏輯塊,且每一邏輯塊完成的功能不同。在OB1(主程序)中可以根據條件調用不同的功能或功能塊。其特點是易於分工合作,調試方便。由於邏輯塊是有條件的調用,所以可以提高CPU的利用率(圖中FC類似子程序)。

結構化編程是將過程中要求類似或相關的任務歸類,在功能或功能塊中編程,形成通用解決方案。通過不同的參數調用相同的功能或通過不同的背景數據塊調用相同的功能塊。其特點是結構化編程必須對係統功能進行合理分析、分解和綜合,所以對設計人員的要求較高,另外,當使用結構化編程方法時,需要對數據進行管理[1]。

第一種線性化編程,即不采用分支的形式,在一個頁麵中從頭寫到尾;
第二種模塊化編程,即把程序分為例如手動、自動、初始化、數據換算等子程序;
第三種結構化編程,即把控製過程中分為獨立的部分,再來調用,比如可以做成多個獨立的單步流程動作。
說完程序結構的三種方式後,再來說說程序設計中的一些技巧。
1.簡單性
使PLC程序盡可能簡單。簡單的含義就是盡可能的使用標準化的程序框架,盡可能使用簡單的指令。
要想程序簡單,從大的方麵講,要優化程序結構,用流程控製指令簡化程序,從小的方麵講還要用功能強的指令取代功能單一的指令,以及注意指令的安排順序等。
2.可讀性
要求設計的程序可讀性要好,以便於調試、維護,利己利人。
要使程序可讀性好,所設計的程序就要盡可能清晰。要注意層次,實現模塊化。
如遇特殊情況下采用語言編程,多數情況下請使用梯形圖編程,方便閱讀。
再就是I/O分配和內部寄存器要有規律性,以及做好注釋,便於記憶與理解。
3.可靠性
有的PLC程序,在正常的工作條件下或合法操作時能正確工作,而出現非正常工作條件(如臨時停電,又很快再通電)或進行非法操作(如一些按鈕不按順序按,或同時按若幹按鈕)後,程序就不能正常工作了。這種程序,就不大可靠,或說不穩定,就是不好的程序。

    看過《西門子PLC程序設計常用的結構》的人還看了以下文章
    在西門子PLC中讀取或搜索Tag的過程 在西門子PLC中讀取或搜索Tag的過程
    1:打開Siemens Simatic Manager 2:搜索所需的PLC程序,然後按OK。 3:點擊S7程序,然後點擊符號如下圖所示。 4:將打開一個新窗口並按ok。 5:打開菜單Find and Replace 輸入所需查詢的tag。假設我們需要一個溫度變送器,所以輸入temp文本。 然後點擊Find...
    西門子plc程序暫停功能怎麼實現 西門子plc程序暫停功能怎麼實現
    這個沒有做過數控係統開發的,根本不知道這裏麵的門道。注意,對於運動控製特別是有位置控製的話,暫停並不是將當前脈衝停止即可,大多數情況下必須有個減速暫停功能,否則會造成伺服報警或步進丟步。當然大多數PLC能實現此功能,點動情況實際上就是這樣操作...
    西門子PLC用少數IO接口連接更多按鈕的方法 西門子PLC用少數IO接口連接更多按鈕的方法
    西門子PLC為例說明用少數IO接口連接更多按鈕的方法。 接線如圖一所示: 梯形圖如圖二所示: 在這個例子中使用了SB0到SB5共6個按鈕,占用6個輸入口。操作時,按下按鈕SB0,再分別按其它按鈕,可以得到5個按鈕信號;不按按鈕SB0,操作其它按鈕,又可以得到5個按鈕...
    學西門子PLC的方法 學西門子PLC的方法
    學PLC不單單是要看書就能學會的,至少要從兩方麵入手,基礎+軟件 首先,學習PLC編程首先需要從理論基礎開始。學習PLC的基本原理,硬件:搞清楚輸入和輸出端的基本結構,熟悉端口的基本電氣要求。 第二,軟件方麵:對於PLC係統,必須搞清楚什麼是I/O刷新,這...
    西門子plc1500用什麼指令怎麼二進製轉換成十進製 西門子plc1500用什麼指令怎麼二進製轉換成
    沒有專門的指令,你可以自己寫一個二進製轉十進製的功能: 以字節例如:二進製存儲在MB10,十進製存儲在MB11, MB11=M10.7*2^7+M10.6*2^6+M10.5*2^5+M10.4*2^4+M10.3*2^3+M10.2*2^2+M10.1*2^1+M10.0*2^0 功能中的加減乘除用相應的功能塊去轉換。...
    Baidu
    map