摘 要:本文主要介紹在PLC(200SMART)的應用中,如何編寫高效、易讀、穩(wěn)定的程序。通過遵循一定的設計流程,科學的程序結構,模塊化的編程思路;給予初學者明確的參考,并幫助其養(yǎng)成好的編程習慣,從而能盡快投入到實際工程項目的制作中。
關鍵詞:設計流程;程序結構;數據結構;功能塊
為了保證編寫的PLC程序高效、易讀、穩(wěn)定,并養(yǎng)成良好的編程習慣,本人總結出了一套流程,結合項目(水質檢測站控制系統以下簡稱水站系統)舉例與大家分享。
一、 分析設計任務
(一)建立輸入輸出表,包括以下內容
統計輸入信號,包括立今開關(如啟停按鈕、調速電阻、復位開關等)及設備傳感器(如溫度傳感器、壓力開關、液位開關、旋轉編碼器等)的數量及信號類型(如干結點、4~20mA模擬量、pt100熱電阻、高速計數脈沖或是RS485通信等)。
整理出系統中有哪些執(zhí)行機構(如電機、閥門、氣缸等);其控制方式是什么(如開關,啟停,正反轉,模擬量調速,脈沖定位等);還有其信號類型(如DC開關量,4~20mA模擬量,高速脈沖等)及所用點數(如電機正反轉就需要兩個輸出點,而步進電機控制則至少需要啟停、脈沖、方向、保持,共4個輸出點,且脈沖端必須用晶體管高速端口。)
表1列出了水站項目中有代表性的主要輸入輸出。
(二)分析系統的工藝要求
輸入輸出之間哪些有邏輯關系(如直接控制、互鎖、復位、信號判斷、開環(huán)或閉環(huán)回路等)。完全理解系統的工藝步驟,將其分解為一個個相對獨立的功能塊,明確并簡化其塊與塊之間的對接關系或是觸發(fā)條件(這一步非常重要,是成敗的關建,這一步反復推敲)。
理清楚上述內容后可著手電氣原理圖的設計,這個過程中會仔細考慮通過外部電路、軟件編程各自實現那些功能,進一步理清設計思路完善輸入輸出規(guī)格表。電氣原理圖的設計此處不做詳細描述。
下面以水站項目為例說明:
水站工藝條件:
以水質分析儀可以穩(wěn)定準確測量現場水樣為中心。按照客戶要求及行業(yè)標準控制采樣水泵及相關閥門,實現定時或連續(xù)的給水質分析儀器供樣。
水質分析儀的測量方式分為兩類。其一,不間斷連續(xù)測量,例如水質五參數(水溫、濁度、電導率、pH、溶解氧)傳感器;其二,間斷定時觸發(fā)測量,例如CODMn、TOC、氨氮、總磷、總氮等。
水站控制主要功能:
1. 傳感器信號檢測判斷:如機房、機柜溫濕度、煙霧檢測判斷及箱體液位、管道壓力檢測判斷。
2. 電源保護:系統上電時檢測市電正常則允許分析儀表電源開啟。當市電缺失時,禁止觸發(fā)分析儀器測量動作。
3. 系統維護模式下對設備的操作控制:包括執(zhí)行機構單獨啟停動作,及具有完整功能的連貫流程(例如:清洗流程、一鍵測量)
4. 自動測量:此為設備默認工作模式,可選擇定時循環(huán)、整點工作、外部觸發(fā)(本地接點、遠程通信)等多種方式。
二、 編程準備
(一)設計程序結構
規(guī)劃好程序結構可以有效節(jié)約系統資源,方便后期維護。
如圖1所示,OB1為主程序為必需循環(huán)執(zhí)行的單元,其中有條件的調用四個子程序。SBR100中嵌入的子程序為必需循環(huán)執(zhí)行的功能,以功能分類進一步建立子程序。SBR101中的每個子程序(SBR40、SBR41等)對應一組完整功能的自動流程,該功能用于設備維護、調試時相當實用,重要的是此處的子程序可作為功能包再自動流程SBR102中不斷地調用。實際上SBR102做的就是把SBR40、SBR41等按照工藝要求進行組合。這里的注意點有以下幾個方面。
1. 每個子程序的起始與結束必須用寄存器做明確的標識。
2. 如若多個功能程序涉及公共的寄存器,則要確保每次只有唯一的在執(zhí)行;需要多個同時工作時可考慮使用局部變量或不同的數據寄存器作為數據背景。
(二)規(guī)劃數據分布區(qū)
輸入輸出地址是固定的,而其他可能用到的寄存器格式多樣,數據量大;特別是在邏輯復雜的應用中可能出現地址重疊、檢查困難的現象。因而對寄存器的地址池做分區(qū)規(guī)劃非常必要的。
下面是我常用的幾個表格,主要對寄存器的分布進行規(guī)劃,明確用于HMI顯示編輯的參數,對重要的、信息復雜的寄存器詳細標注,并確定其對應的功能等級。
(三)建立符號表
將用到的所有寄存器都用易讀的名稱為其定義,對與重復功能的單元可以采用xx1、xx2、yy1、yy2的定義方法,如此可大大地提高編寫效率。
(四)編寫主要控制功能的流程圖
在具體編寫程序前對每個主要功能先繪制邏輯流程圖,這有利于與客戶及同事之間實現高效溝通,可避免后續(xù)的重復工作。流程圖有通用的格式,此處做不列舉
三、 結語
PLC編程是靈活性極大的工作,特別是用西門子系列的產品。雖然SMART是小型機,但是不同的人在不同行業(yè)中應用時都會呈現不同的風格。本文給初學者提供一些參考,建議根據個人習慣總結行業(yè)規(guī)律,使用子程序創(chuàng)建功能塊,并將其一部分轉換為標準庫隨時調用。
參考文獻:
[1]向曉漢.S7-200 SMART PLC完全精通教程[M].北京:機械工業(yè)出版社,2013.
[2]廖常初.“S7-200 SMART PLC”講座 第1講:S7-200 SMART的編程軟件[J].電世界,2015(6):40-42.
作者簡介:
何銀棟,南京杰思爾工程設備有限公司。