一種多功能聯網型熱泵控制系統的設計與實現
3.2.1 輪詢法多任務調度
輪詢法多任務調度模仿了實時系統(Real-timeOperating System,RTOS)的原理。實時系統的特點是,如果邏輯和時序出現偏差,將會出現嚴重的后果,這一點與熱泵系統具有繁多任務的特點相符。輪詢法多任務調度的宗旨是使各個任務盡快地執行,不要求限定某一任務在多長時間內完成。輪詢法多任務調度中,各個任務具有同樣的優先級。允許一個任務優先確認一段時間,然后切換給另一個任務。其中,時間段的計時由軟定時器來實現,具體實施方法如下。
在水箱控制器以及熱泵控制器中,包含多項子設備的控制。該系統針對每個獨立子設備的控制設計了專門的軟件控制模塊,工程應用中可根據實際需要裁剪所需的模塊組合,如圖12所示。每個軟件功能模塊,都采用狀態機的方式,每次運行至某一個模塊,如果該模塊的當
前狀態未完成,則切換至另一個模塊,直到下次切換回該模塊,且當前狀態完成,才進入下一狀態繼續運行。每個掛載在主程序中的功能模塊,等于是程序中的任務,對于不同任務之間的管理與調度,關乎程序的執行效率。程序中,考慮到任務切換的問題,所以給每個任務每一狀態分配的代碼執行時間不長,任務內部也并不需要進行占用資源較大的運算等操作。大多數時間任務處于延時等待狀態,因此,當某一任務進入延時進程中,控制程序就可以去查詢執行其他的任務,等延時完成再執行該任務的處理程序即可。由此可以實現在短時間內的任務循環切換。功能模塊內部狀態機結構如圖13所示。本文引用地址:http://www.104case.com/article/162187.htm
3.2.2 軟定時器算法的實現
在該系統中,延時也是系統輸出的一個重要部分。但是在傳統的延時算法里面,大多是讓CPU執行空語句,這樣非常浪費系統資源。這里采用單循環隊列定時器算法。理論上可以把一個定時器擴展成任意多個定時器,以滿足系統需求。
單循環隊列計時原理如下:
可以通過聲明一個具有n個元素的數組來拓展得到n個軟件定時器。同時,定義一個指向數組元素的循環計時隊列指針。每當定時中斷發生時,循環計時隊列指針所指向的定時器元素減1,并且移向下一個元素。當某個元素(軟件定時器)的值減到0時,置位與該元素相應的定時器標志位,以便在程序中查詢定時時間是否已到。當然,也可以在程序中通過查詢該數組元素是否為0來確定。由上可見定時器的定時時間計算如下:
定時時間=中斷時間間隔×定時器元素數量
一個軟件定時器的簡單例子如圖14所示。
該系統所采用的這種單循環隊列定時器算法,實現簡單,而且每個計時周期只需進行一次減法操作,突破了硬件定時器中的數量限制。從系統資源占用的角度來看,是最有效的定時器算法。
4 系統抗干擾措施
在該系統中,壓縮機、水泵、外風機等都是大功率強電設備,而且距離控制器比較近,這就使得控制板工作在一個比較惡劣的電磁環境中;另外,各控制器一般都是安裝在戶外環境,容易受到環境因素的影響,一個突出的影響來自雷電。因此,增強控制板的抗干擾能力是提高系統穩定性的重要途徑。
為此,該系統采用了隔離技術,即CPU通過繼電器隔離控制交流接觸器;而水箱控制板,熱泵控制板分別具有3個電平區域,包括單片機電平區(5 V)、通信電平區(5 V)、繼電器控制電平區(24 V),它們之間均設置了光耦進行隔離。
另外,該系統中采用了多種保護器件,包括自恢復保險絲PPTC、瞬變電壓抑制器TVS和壓敏電阻MOV。
在RS 485通信模塊中,采用TI公司的75LBC184。該芯片與普通的RS 485收發器相比的顯著特點是片內A、B引腳接有高能量順變干擾保護裝置,可以承受峰值為400 W的過壓順變,因此能顯著提高器件的可靠性。其驅動器設計成限斜率方式輸出,使輸出信號邊沿不會過陡,有效的抑制傳輸線上的噪聲高頻分量。而且該芯片能承受高達8 kV的靜電放電沖擊,具有一定的防雷能力。對一些環境比較惡劣的現場,可直接與傳輸線相接而不需要任何外加保護元件。而CAN總線自身抗電磁干擾性高,傳輸距離遠和可靠的錯誤處理和檢測機制,也加強了系統通訊的可靠性。該系統采用自帶CAN總線控制模塊的dspic30F5011,以及PCA82C250作為CAN收發器。
5 結語
基本完成了整個熱泵空調控制系統的硬件和軟件的實現。通過RS 485或CAN通信實現了遠距離的通信控制,做到真正的大規模聯網。對機組外部環境的多種因素進行探測,設計出一套根據實際情況進行模式轉換,關機報警等動作的可靠系統。輪詢法多任務調度以及軟件定時器的引入提高了系統效率,突破了中央處理器的硬件局限。多種抗干擾措施更增強了系統對惡劣外部環境的適應能力。
評論