μCLinux下的變頻調(diào)速控制系統(tǒng)的設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:變頻調(diào)速系統(tǒng)以其節(jié)能顯著、過載能力強(qiáng)等自身的優(yōu)點(diǎn)在交流傳動(dòng)領(lǐng)域應(yīng)用非常廣泛。本文采用以智能功率模塊構(gòu)成變頻調(diào)速控制系統(tǒng)主電路中的逆變電路和以處理器為控制核心組成變頻調(diào)速控制系統(tǒng)。首先,對(duì)μC操作系統(tǒng)和處理器進(jìn)行簡(jiǎn)單的介紹;其次闡述了PWM脈寬調(diào)制的變頻調(diào)速控制系統(tǒng)的硬件設(shè)計(jì)和工作原理;最后給出變頻調(diào)速控制系統(tǒng)的軟件設(shè)計(jì)過程:介紹引導(dǎo)程序Bootloader的啟動(dòng)過程、建立μC操作系統(tǒng)的開發(fā)環(huán)境和實(shí)現(xiàn)PWM脈寬調(diào)制模塊驅(qū)動(dòng)程序。
1 引言
20 世紀(jì)后半葉,變頻調(diào)速技術(shù)[1]的出現(xiàn)和日益完善,成為電力拖動(dòng)領(lǐng)域的一個(gè)重大事件。由于變頻調(diào)速技術(shù)的發(fā)展,使結(jié)構(gòu)簡(jiǎn)單牢固、價(jià)格低廉、應(yīng)用普及的交流異步有了性能良好的調(diào)速手段。
近 10 年來,隨著電力電子技術(shù)、計(jì)算機(jī)技術(shù)、技術(shù)的迅速發(fā)展,電氣傳動(dòng)技術(shù)面臨著一場(chǎng)歷史革命,即交流調(diào)速取代直流調(diào)速和計(jì)算機(jī)數(shù)字控制技術(shù)取代模擬控制技術(shù)已成為發(fā)展趨勢(shì)。交流異步電機(jī)變頻調(diào)速技術(shù)是當(dāng)今節(jié)電、改善工藝流程以提高產(chǎn)品質(zhì)量和改善環(huán)境、推動(dòng)技術(shù)進(jìn)步的一種主要手段。變頻調(diào)速以其優(yōu)異的調(diào)速和起制動(dòng)性能,高效率、高功率因數(shù)和節(jié)間效果,廣泛的適用范圍及其它許多優(yōu)點(diǎn)而被國(guó)內(nèi)外公認(rèn)為最有發(fā)展前途的調(diào)速方式。
ARM 技術(shù)是嵌入式系統(tǒng)方面的主流技術(shù)。目前市場(chǎng)上ARM 芯片速度可達(dá)幾百兆,以它為主控芯片可在硬件上實(shí)現(xiàn)高速、高精度且具有一定處理能力的變頻調(diào)速控制系統(tǒng)。本系1統(tǒng)采用 公司的 處理器,結(jié)合嵌入式μClinux 操作系統(tǒng)來實(shí)現(xiàn)其功能。嵌入式μClinux 操作系統(tǒng)提供了豐富的驅(qū)動(dòng)資源。 處理器具有豐富的接口資源,能夠滿足變頻調(diào)速控制系統(tǒng)的設(shè)計(jì)要求。
2 系統(tǒng)硬件的工作原理
圖 1 為變頻調(diào)速控制系統(tǒng)的硬件設(shè)計(jì)和工作原理圖。系統(tǒng)的硬件設(shè)計(jì)主要有ARM 處理器模塊、以太網(wǎng)模塊、鍵盤輸入模塊、 模塊、數(shù)據(jù)采集模塊、A/D 模數(shù)轉(zhuǎn)換模塊和PWM 脈寬調(diào)制模塊7 部分。ARM 處理器模塊主要包括2292 處理器、、、、實(shí)時(shí)時(shí)鐘模塊和其它輔助電路構(gòu)成。ARM 處理器模塊是變頻調(diào)速控制系統(tǒng)的核心處理單元,以LPC2292 為控制核心;以太網(wǎng)口接口模塊[2]主要負(fù)責(zé)變頻調(diào)速控制系統(tǒng)進(jìn)行遠(yuǎn)程控制和監(jiān)視;鍵盤模塊負(fù)責(zé)工作參數(shù)的設(shè)置輸入,以及工作狀態(tài)的切換; 模塊負(fù)責(zé)當(dāng)前設(shè)置和工作狀態(tài)的顯示,同時(shí)顯示時(shí)鐘日歷等,實(shí)時(shí)時(shí)鐘通過I2C總線與LPC2292 連接;數(shù)據(jù)采集模塊主要負(fù)責(zé)從外部采集信息;A/D 模數(shù)轉(zhuǎn)換模塊主要是負(fù)責(zé)將數(shù)據(jù)采集模塊采集來的模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào);PWM 脈寬調(diào)制模塊主要負(fù)責(zé)通過IPM 職能功率模塊對(duì)交流異步電機(jī)進(jìn)行變頻調(diào)速。
圖 1 變頻調(diào)速控制系統(tǒng)的硬件設(shè)計(jì)和工作原理圖
LPC2292 處理器是變頻調(diào)速控制系統(tǒng)的核心處理單元。數(shù)據(jù)采集模塊采集的模擬信號(hào)經(jīng)A/D 模塊量化后數(shù)據(jù)參數(shù)傳入ROM 中的嵌入式μClinux 操作系統(tǒng)的應(yīng)用程序中,應(yīng)用程序根據(jù)數(shù)據(jù)在通過PWM 脈寬調(diào)制模塊控制輸出頻率,從而再通過IPM 智能功率模塊對(duì)交流異步電機(jī)進(jìn)行變頻調(diào)速。
3 系統(tǒng)軟件平臺(tái)設(shè)計(jì)
系統(tǒng)軟件平臺(tái)設(shè)計(jì)主要使用C語言和ARM匯編語言。系統(tǒng)軟件平臺(tái)設(shè)計(jì)主要包括3個(gè)方面:?jiǎn)?dòng)引導(dǎo)程序Bootloader;建立μC操作系統(tǒng)的開發(fā)環(huán)境;PWM脈沖寬度調(diào)制模塊驅(qū)動(dòng)程序的實(shí)現(xiàn)。
3.1 啟動(dòng)引導(dǎo)程序Bootloader
引導(dǎo)程序Bootloader 是在操作系統(tǒng)運(yùn)行之前執(zhí)行的一段程序[3]。它主要實(shí)現(xiàn)的功能包括:初始化CPU 運(yùn)行的時(shí)鐘頻率;初始化 和內(nèi)存的數(shù)據(jù)寬度,讀寫訪問周期和刷新周期;初始化中斷系統(tǒng);初始化系統(tǒng)中各種片內(nèi)、片外設(shè)備和I/O 端口;初始化系統(tǒng)各種運(yùn)行模式下的寄存器和堆棧;加載和引導(dǎo)μCLinux 操作系統(tǒng)。
3.2 建立μCLinux 操作系統(tǒng)的開發(fā)環(huán)境
μCLinux 操作系統(tǒng)沿襲了傳統(tǒng)Linux 操作系統(tǒng)的主要特性,包括穩(wěn)定、強(qiáng)大的網(wǎng)絡(luò)和文件系統(tǒng)支持;建立μCLinux 操作系統(tǒng)的開發(fā)環(huán)境主要包括3 個(gè)步驟:建立CLinux 操作系統(tǒng)的交叉編譯環(huán)境、μCLinux 操作系統(tǒng)的編譯和μCLinux 操作系統(tǒng)的加載。
3.3 PWM脈寬調(diào)制驅(qū)動(dòng)程序的開發(fā)
設(shè)備驅(qū)動(dòng)程序是操作系統(tǒng)內(nèi)核和硬件之間的接口,它作為應(yīng)用設(shè)備之間的軟件層, 為應(yīng)用程序屏蔽了硬件的細(xì)節(jié)。在μCLinux操作系統(tǒng)下開發(fā)字符設(shè)備驅(qū)動(dòng)程序,主要有如下幾個(gè)步驟:(1)設(shè)置驅(qū)動(dòng)程序的設(shè)備號(hào)。(2)實(shí)現(xiàn)保存設(shè)備信息的結(jié)構(gòu)體中的部分函數(shù)。(3)實(shí)現(xiàn)驅(qū)動(dòng)程序的初始化函數(shù)和清除函數(shù)。
PWM脈寬調(diào)制驅(qū)動(dòng)程序?qū)儆谧址O(shè)備驅(qū)動(dòng)程序,因此PWM脈寬調(diào)制驅(qū)動(dòng)程序遵循上述的開發(fā)步驟。
3.3.1設(shè)置PWM驅(qū)動(dòng)程序的設(shè)備號(hào)
PWM脈寬調(diào)制驅(qū)動(dòng)程序要先建立文件設(shè)備的主設(shè)備號(hào)和從設(shè)備號(hào)。PWM驅(qū)動(dòng)程序默認(rèn)的主設(shè)備號(hào)為125,沒有使用從設(shè)備號(hào)。因此,需要建立1個(gè)設(shè)備文件,起主設(shè)備號(hào)為125,從設(shè)備號(hào)可任意選擇,文件名可定為PWM。建立設(shè)備文件的程序清單如下:
程序清單3.2 建立設(shè)備文件程序
mknod /dev/PWM c 125 0
3.3.2實(shí)現(xiàn)保存設(shè)備信息的結(jié)構(gòu)體中的部分函數(shù)
PWM驅(qū)動(dòng)程序?qū)儆谧址O(shè)備的驅(qū)動(dòng)程序。PWM驅(qū)動(dòng)程序要建立保存設(shè)備信息的結(jié)構(gòu)體。PWM驅(qū)動(dòng)程序的結(jié)構(gòu)體如下:因?yàn)镻WM驅(qū)動(dòng)程序僅需要實(shí)現(xiàn)( )、( )和( )函數(shù),所以PWM驅(qū)動(dòng)不能使用標(biāo)準(zhǔn)C的庫函數(shù)來訪問,只能使用內(nèi)核提供給應(yīng)用程序的接口函數(shù)來訪問。
從此函數(shù)接口看, 我們實(shí)現(xiàn)PWM設(shè)備的打開、釋放和控制。函數(shù)( *pathname , int flags)主要實(shí)現(xiàn)對(duì)PWM設(shè)備的打開;函數(shù)(int fd )主要實(shí)現(xiàn)對(duì)PWM設(shè)備的關(guān)閉;函數(shù)(int fd , unsigned int cmd , … )主要實(shí)現(xiàn)對(duì)PWM脈寬調(diào)制設(shè)備輸出頻率和占空比的控制。
PWM脈寬調(diào)制驅(qū)動(dòng)程序最重要的功能是控制PWM輸出的頻率和占空比。PWM脈寬調(diào)制驅(qū)動(dòng)程序輸出的頻率可以通過命令PWM_SET_CYC設(shè)置PWM脈寬調(diào)制頻率。實(shí)際上是以VPB總線周期為單位設(shè)置PWM脈寬調(diào)制的周期。頻率是周期的倒數(shù),所以也就設(shè)置了頻率。PWM脈寬調(diào)制驅(qū)動(dòng)程序知道PWM脈寬調(diào)制的輸出頻率和高電平時(shí)間,就可以計(jì)算占空比。因此,設(shè)置再設(shè)置高電平時(shí)間就可以計(jì)算占空比。PWM脈寬調(diào)制驅(qū)動(dòng)程序可以用PWM_1_SET_DUYY、PWM_1_SET_DUYY等命令設(shè)置高電平時(shí)間。
3.3.3實(shí)現(xiàn)驅(qū)動(dòng)程序的初始化函數(shù)和清除函數(shù)
μCLinux操作系統(tǒng)在加載內(nèi)核模塊時(shí)會(huì)調(diào)用驅(qū)動(dòng)程序的初始化函數(shù),在卸載內(nèi)核模塊時(shí)調(diào)用驅(qū)動(dòng)程序的清除函數(shù)。PWM驅(qū)動(dòng)程序的初始化函數(shù)和清除函數(shù)程序代碼如下:
程序清單3.3 PWM驅(qū)動(dòng)程序初始化函數(shù)代碼
int pwm_(void){
3.3.4為PWM脈寬調(diào)制驅(qū)動(dòng)程序添加中斷服務(wù)程序
μCLinux操作系統(tǒng)內(nèi)核具有中斷管理功能,因此中斷服務(wù)程序必須按照其規(guī)范使用。μCLinux操作系統(tǒng)在使用中斷服務(wù)程序之前,需要向內(nèi)核注冊(cè)中斷服務(wù)程序;不再使用中斷服務(wù)程序時(shí),需要注銷中斷服務(wù)程序。注冊(cè)中斷服務(wù)程序通過調(diào)用函數(shù)request_irq( )實(shí)現(xiàn)。通常申請(qǐng)中斷返回值為0表示成功,或者返回一個(gè)負(fù)的錯(cuò)誤碼。函數(shù)返回-EBUSY,表示另一個(gè)設(shè)備程序已使用了要申請(qǐng)信號(hào)線。注銷中斷服務(wù)程序通過調(diào)用_irq( )實(shí)現(xiàn)。
3.3.5編譯和測(cè)試驅(qū)動(dòng)程序
PWM驅(qū)動(dòng)程序源代碼編寫成功后,需要把它編譯進(jìn)內(nèi)核。當(dāng)用戶需要打開設(shè)備時(shí),還需要一個(gè)在/dev目錄的設(shè)備文件名稱,這樣驅(qū)動(dòng)程序才能工作。最后經(jīng)過編譯得到zImage 內(nèi)核壓縮文件。用引導(dǎo)程序Bootloader通過串口或者以太網(wǎng)接口將zImage文件引導(dǎo)到LPC2292處理器上片外上進(jìn)行調(diào)試。
4 結(jié)束語
嵌入式系統(tǒng)具有低功耗、可靠性高等突出優(yōu)點(diǎn)。采用嵌入式系統(tǒng)來設(shè)計(jì)和實(shí)現(xiàn)變頻調(diào)速控制系統(tǒng),使得變頻調(diào)速控制系統(tǒng)可靠性高、性能強(qiáng)、實(shí)時(shí)性好,將以太網(wǎng)接口集成與變頻調(diào)速系統(tǒng)中,使得對(duì)變頻調(diào)速系統(tǒng)的遠(yuǎn)程控制和監(jiān)視變得簡(jiǎn)單易行。因此,研制一個(gè)帶以太網(wǎng)接口的嵌入式變頻調(diào)速控制系統(tǒng)具有重要的科學(xué)意義和價(jià)值。