程和俠
(安慶師范大學計算機與信息學院安徽省智能感知與計算重點實驗室,安徽安慶246133)
μC/OS-II在智能電梯控制系統(tǒng)中的應用
程和俠
(安慶師范大學計算機與信息學院安徽省智能感知與計算重點實驗室,安徽安慶246133)
采用PIC18單片機作為智能電梯控制系統(tǒng)的微控制器、多任務可剪切的嵌入式μC/OS-II作為操作系統(tǒng),使得智能電梯可以使用高級語言編制控制系統(tǒng)的控制程序,在應用更新和功能擴展時,可以不用重新設計代碼,從而比較方便地在原有系統(tǒng)上增加新的功能和需求。另外利用軟件代替了部分硬件的功能,大幅度降低了產品的成本。
智能電梯;PIC18;μC/OS-II;電梯控制系統(tǒng)
傳統(tǒng)的電梯控制系統(tǒng)采用繼電器進行控制,但是繼電器控制只能實現一些簡單的邏輯功能。PLC是以微處理器為核心、集成自動控制技術、計算機技術和通信技術的自動控制裝置[1]。在智能電梯系統(tǒng)中,將PLC用于通訊連接觸摸屏、控制變頻器?;赑LC設計的智能電梯系統(tǒng)具有功能多、體積小、故障率低等優(yōu)點,便于安裝調試和維修。
本文采用PIC18微處理器作為智能電梯的控制系統(tǒng),實現電梯系統(tǒng)的智能化控制。PIC18微處理器具有良好的穩(wěn)定性和移植性,內部集成了眾多的外圍器件,可以選用多任務嵌入式操作系統(tǒng)μC/OS-II,甚至可以使用高級語言編制控制程序,應用更新和功能擴展時,可以不用重新設計代碼,降低更新成本,在強驅動智能電梯系統(tǒng)中具有很好的擴展性和可靠性[2]。
為了實現智能電梯系統(tǒng)的控制要求,并且保證系統(tǒng)的安全可靠性,方便系統(tǒng)完善和改進[3],在進行系統(tǒng)設計時,系統(tǒng)需遵循以下基本原則:
(1)第一要務是滿足控制要求;
(2)設計系統(tǒng)時,操作簡單,方便人機交互;
(3)保證控制系統(tǒng)安全、可靠;
(4)提供一定的擴展機制,方便系統(tǒng)增加功能和改進。
在智能電梯系統(tǒng)設計中,業(yè)界一般都遵循控制系統(tǒng)設計的一般步驟,整體分為6大步[4]。
(1)分析智能電梯系統(tǒng)的生產流程,明確智能電梯控制系統(tǒng)的控制要求。
(2)確定控制方案。計算控制系統(tǒng)對控制器的配置要求和輸入輸出接點數,確定控制方案。
(3)選擇可編程控制器機型。根據系統(tǒng)配置要求,選擇PLC類型。
(4)硬軟件設計。智能電梯的控制系統(tǒng)的硬件設計包括控制器的輸入輸出原理圖、控制器的供電系統(tǒng)圖、選擇輸入輸出元器件等[5]。軟件選擇多任務嵌入式操作系統(tǒng)μC/OS-II。
(5)總裝調試。把編制好的程序寫入控制器,并進行在線調試。
(6)編制技術說明書。
智能電梯控制系統(tǒng)的硬件同計算機的組成很相似,都是由微處理器單元、存儲器、輸入/輸出單元、電源單元及外圍設備等組成,不過同一般計算機的區(qū)別在于需要自行規(guī)劃和設計硬件系統(tǒng)[6]。硬件設計主要包括:
(1)設計外圍電路和主電路。硬件電路可分為主電路和輔助電路,分工驅動外部設備工作。主電路采用常規(guī)低電壓電機,輔助電路利用開關和PLC器件控制主電路中各接觸器、繼電器,同主電路一起提供整個系統(tǒng)電力。本系統(tǒng)主要由單片機PIC18控制外圍器件。外圍器件的控制電壓采用標準的24 V電壓,而PIC單片機工作的電壓一般是不超過5V,設計中采用了輸入和輸出電路中添加放大器OP,實現24V與5V電壓的轉換,可以有效解決實際問題。
(2)確定安排PLC的輸入、輸出點。PLC的輸入輸出點數量一般根據樓層來計算。
(3)選購PLC并進行現場安裝、接線等。
本文采用PIC18微處理器作為智能電梯的控制系統(tǒng),軟件使用實時操作系統(tǒng)μC/OS-II,這樣可以方便程序人員利用高級語言編制智能電梯控制程序??刂葡到y(tǒng)的開發(fā)工具采用MAPLAB,MAPLAB集成了C語言編譯器PICC,PICC不僅支持函數重入,還支持匯編語言與C/C++語言混合編程。在項目代碼中,直接使用匯編程序操作和控制PIC18微處理器的底層寄存器,比如開啟和關閉中斷以及入棧和出棧等操作。PIC18微處理器支持軟件中斷、定時中斷和外部硬件中斷,程序存儲區(qū)在10 K以上,RAM也在1 K以上,滿足了μC/OS-II的要求[7-8]。因此μC/OS-II也比較適合移植到PIC18系列的微控制器上。
3.1 μC/OS-II移植
μC/OS-II是一種免費的實時操作系統(tǒng),可以方便地利用它控制微控制器進行嵌入式應用開發(fā),但是μC/OS-II不像其他實時操作系統(tǒng),不是簡單地提供API函數接口,還需程序員修改和配置系統(tǒng)及其參數。
要使μC/OS-II正常運行,要滿足下面的要求:
(1)微處理器支持可重入函數;
(2)使用高級語言就可實現開、關中斷或嵌入匯編實現開、關中斷;
(3)支持中斷,能定時中斷;
(4)支持硬件堆棧進行數據存儲;
(5)讀取堆?;騼却嬷械闹噶?。
μC/OS-II功能比較復雜,為了滿足控制系統(tǒng)的要求,還必須進行相應的移植。系統(tǒng)移植包括以下幾個部分。
(1)設置與編譯器有關的代碼
此部分需要修改OS_CPU.H文件中的代碼。不同的平臺和編譯器有不同的長度類型定義,為了確保移植的準確性,需要在OS_CPU.H中修改字長。在μC/OS-II中,不使用平臺或編譯器有關的數據類型。下面給在PIC18F移植所要求的數據:
(2)對臨界代碼處理,采用軟件中斷的方式來實現。系統(tǒng)提供3種方式,本系統(tǒng)采用寄存器INTCON來控制。
(3)任務堆棧的增長方向,統(tǒng)一采用從低地址向高地址方向進行擴展。
(4)任務切換函數OS_TASK_SW()。μC/OS-II是一個可剝奪的任務管理,當某一個任務的優(yōu)先級較高,而占據微處理器控制權的任務優(yōu)先級較低,當前任務對微處理器的控制權就會被剝奪,高優(yōu)先級的任務就可以獲取當前的微處理器的使用權,具體是通過函數OS_TASK_SW()來實現。
(5)C18編譯器的啟動文件c018i.c。啟動文件放置在復位向量處,是初始化軟件棧以及一些具有初始化值的變量,啟動用戶自定義的main函數,并且循環(huán)執(zhí)行main函數。
系統(tǒng)的移植重點集中在與處理器相關的任務切換的實現上。這部分代碼與具體的硬件聯(lián)系,大部分是匯編實現。本系統(tǒng)采用μC/OS-II V2.86版本進行移植。
3.2 系統(tǒng)控制功能設計
根據智能電梯的工作原理、功能要求以及輸入/輸出點的地址分配表,來設計智能電梯的程序流程。主要流程及功能包括初始化、指層控制、開關門控制、停召喚指示與標記控制、電梯上下行選擇與指示控制、電梯的運行控制與調試、組合調試。
μC/OS-II很容易實現串行通信、智能化管理、變頻調速等技術,本文采用軟件代替部分硬件功能,就是為了降低系統(tǒng)成本。通過高級語言的精確控制還提高了系統(tǒng)的可靠性和安全性,實現智能化控制電梯。
[1]萬健如,鄧旋,林志強,等.PLC在電梯位移控制中的應用[J].電梯工業(yè),2006,31(1):33-35.
[2]張計科.基于PLC電梯模型控制策略設計與實現[J].工業(yè)控制計算機,2007,20(2):64-65.
[3]陸焱琦.基于三菱PLC的四層電梯控制系統(tǒng)的設計[J].電子技術與軟件工程,2016(1):155-155.
[4]LIU Bingguo.Research on the drunk driving intelligent test system based onμC/OS-II[J].App lied Mechanics&Materials,2014,539: 538-54.
[5]MARWALIM N,JUNG JW,KEYHANIA.Stability analysis of load sharing control for distributed generation systems[J].IEEE Transactionson Energy Conversion,2007,22(3):737-745.
[6]GUO L,HAIAOWU.Design and implementation ofautomobileair conditioning system based on atmega16[J].Journalof Changchun Universityof Science&Technology,2007,30(3):77-80.
[7]LIN X.A study on control system design based on ARM sea target search system[C].MATEC Web of Conferences,EDP Sciences,2015,22:01008.DOI:10.1051/matecconf/20152201008.
[8]李玉剛.嵌入式操作系統(tǒng)uC/OS-II在ARM上的移植研究[J].微計算機信息,2010,26(23):97-98.
μC/OS-II in the Intelligent Elevator Control System Application
CHENGHe-xia
(Anhui Key Laboratory of Intelligent Sensing and Computing,Department of Computers,Anqing Normal University,Anqing,Anhui246133,China)
In this paper,we use the PIC18microcontroller as the intelligentelevator control system and usemulti-tasking embedded operating systemμCOS-II.The high-level language can prepare the elevator control system.When the application updates or extends,you can’t re-design the code,so that the original system is more convenient to add new features and requirements.In addition,using software instead of hardware,the costare greatly reduced.
intelligentelevator;PIC18;μC/OS-II;elevator control system
TP27
A
1007-4260(2016)04-0066-03
時間:2017-1-3 17:19
http://www.cnki.net/kcms/detail/34.1150.N.20170103.1719.018.html
2016-04-12
安徽省教育廳自然科學研究項目(KJ2007A124ZC)。
程和俠,男,安徽懷寧人,碩士,安慶師范大學計算機與信息學院副教授,研究方向為物聯(lián)網嵌入式系統(tǒng)。
E-mail:gchxcn@126.com
10.13757/j.cnki.cn34-1150/n.2016.04.018