
浙江工商職業技術學院 李方園
配方是一組參數值,它用來提供生產產品和控制生產過程所需的信息。例如餅干的配方包括黃油、白糖、雞蛋、面粉和烹調時間等參數的數據類型和參數值等。在餅干生產線中,當黃油等混合成分進入混合槽、緩沖槽,然后經過灌氣、結晶固化等程序,最后變成成品。
由于餅干生產線可以生產不同類型的餅干,且配料和工序等基本相同,因此可以組合成若干個配方的集合,即配方集。這些配方有相同的參數集合,但是參數的數值各不相同。例如餅干配方集包含夾心餅干和蘇打餅干的配方。生成配方集后,在更換產品時,只需要輸入配方的符號名或配方的編號,就可以使用配方中預設的參數集合,避免了在生產過程中經常輸入重復的大量的參數。
過去只有在計算機上運行的組態軟件等上位機軟件才有配方功能,小型PLC因為存儲容量小,不可能設置配方功能。西門子的新一代S7-200小型PLC新增了配方功能,配方集的數據和實時采集的數據保存在64K或256K的EEPROM存儲卡中,存儲卡插在CPU模塊的插槽中。存儲卡的寫操作次數的典型值為100萬次。S7-200的編程軟件STEP 7-M icro/W IN(V4.0及以上)支持配方功能,它的配方向導用于在存儲卡中創建、修改配方和配方集。
圖1所示為某餅干生產線的電氣接線示意,其中內存盒的選型如表1所示。

圖1 餅干生產線配方使用的電氣接線

表1 內存盒的選型
通常采用“配方向導”來創建項目代碼,并使用64千字節或256千字節永久性內存(EEPROM)盒中存儲和獲取配方數據,需要注意的是:對配方向導和存儲卡的支持只有S7-200 CPU 222、CPU 224、CPU 226第2.0版以上。
“配方”的編程步驟如下:
(1)在編程軟件中執行菜單命令“工具→配方向導”,打開如圖2所示的配方向導,可以定義和生成配方,如圖3所示。

圖3 配方向導簡介
(2)定義配方
在圖4所示的配方定義表中,用鼠標點擊“域名”(Field Name)列中的一個單元,然后編輯該域名,每個域名都將成為名為RCPx_SYM(x是配方集的編號)的符號表中的符號名。用下拉式列表選擇變量的數據類型,輸入變量的默認值和注釋。所有的新配方將用這些默認值作為初值。最多可以定義4個配方,即最多可以有4個配方集,每個配方集內配方的個數只受存儲卡容量的限制。

圖4 配方定義
(3)創建和編輯配方
在創建和編輯配方對話框中,按“新”按鈕后,在圖5所示的配方表中,將會出現一個白色背景的可編輯的新配方列。該列中同時出現定義配方時設置的默認值,應根據產品的實際情況來修改默認值,以創建新的配方。可以修改列標題中配方的名稱,例如 “蘇打餅干”。選中某一列的配方后,可以刪除它,或將它的參數設置為默認值。

圖5 餅干生產線的配方定義
(4)分配V存儲區
如圖6所示,用戶可以選擇V存儲區中的起始地址,也可以使用配方向導推薦的地址,單擊“建議地址”按鈕,推薦的地址將會根據配方的字節長度遞增。

圖6 分配V存儲區
(5)項目組件
配方向導將會為新的配方生成項目組件,包括符號表、數據塊、讀/寫配方的子程序和存儲卡數據,用戶程序可以使用這些組件,用配方的符號名讀取配方數據。必須將帶有配方向導配置的項目下載至PLC才能使用它們。下載時必須在下載對話框中選中“配方”選項,將配方數據載入存儲卡。
(6)在用戶程序中讀出和修改配方
在用戶程序中可以調用配方向導創建的子程序,RCPx_Read(x=0~3)將配方從存儲卡傳送到V存儲區,如圖7所示,RCPx_W rite用指定的V存儲區中的配方數據替代存儲卡中的配方,如圖8所示。配方向導創建的子程序在指令樹的“指令調用子例行程序”文件夾中。

圖7 讀配方指令

圖8 寫配方指令
(7)餅干生產線主程序
如圖9所示為餅干生產線主程序示意。

圖9 主程序
從主程序中可以看出,指令框中的Rcp輸入端是配方的編號,數據類型為Wo rd,可以使用配方的符號名,例如“甜餅干”。字節Error是輸出端返回的執行結果,無錯誤時為0,訪問存儲卡失敗為132。
將主程序寫入主程序OB1,將程序塊、數據塊和配方下載到CPU,切換到RUN模式。
對于食品廠餅干生產線來說,當用戶程序處理一條配方時,該條配方被讀入PLC的存儲區。例如:如果生產餅干的話,會有很多種餅干的配方,巧克力夾心餅干、甜餅干和麥片餅干。但在同一時間只能生產一種餅干,因而必須選擇合適的配方讀入PLC的存儲區。
[1] 李方園. 自動化綜合實訓教程[M]. 北京: 科學出版社, 2011.
[2] 李方園. 零起點學西門子S7-200 PLC[M]. 北京: 機械工業出版社, 2012.