1.初始化設備參數
在程序的起始部分需要初始化設備參數,如本設備是屬于第幾號設備,位于幾號站點,本設備的定位方式、定位精度要求等,這樣可以對所有設備用同一套程序配置不同的參數。程序模塊標準化有利于堆垛機的快速調試,也適用于其他類程序的編寫。
2.讀取輸入和通訊數據
讀取輸入和通訊數據即處理外部的輸入信號、PI設備信號、操作面板數據和接收通訊數據。在此要對易干擾的輸入信號進行抗干擾處理。對于需處理的PI設備數據、操作面板數據和相關通訊站點數據,需要從與設備通訊的數據字節中提取需要的信息,并規范為程序內部數據的格式。
3.選擇操作模塊
數據處理完畢后,根據外部的操作意圖來選擇相應的操作模塊。基本模塊包括手動/維護、半自動、單機自動、聯機自動模塊。在相關模塊中,根據客戶的不同要求,相應的操作模塊所實現的功能也不盡相同。
各模塊中首先要處理的是初始化中間變量。中間變量是各個操作模塊都需要進行寫操作的變量,在相應的操作模塊第一次被調用時,把這些中間變量初始化,可以有效防止在相應操作模塊正在執行時外部切換操作模塊造成的設備意外動作。各個模塊需要根據已經規范好的外部信息來決定設備要執行的動作,并把設備要執行的動作信息寫到相應的設備執行意圖數據區域。
4.根據操作模塊的意圖調用相關模塊
在執行完相關操作模塊之后,需要把設備執行意圖數據區域里面的數據轉換為對外部設備規范的數據格式,并根據相應的通訊要求判斷設備的狀態,把設備的狀態、將要進行的動作意圖等信息傳送給外部通訊設備(操作觸摸屏、上位管理機等)。
5.根據安全要求規范輸出
接下來要根據外部的設備狀態和設備本身對安全的要求級別對輸出數據進行處理。為設備的安全要求而編寫的程序都在這里,這種設計架構可以確保在所有操作方式下都能執行完全相同的安全處理程序。
6.寫輸出和通訊數據
最后把需要輸出的數據直接輸出,并把需要傳送給外部設備的代碼直接傳送出去。
一個好的程序架構能夠保證在設備調試過程中快速找出問題所在,從而加快設備調試時間,節省工期。