《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計(jì) > 設(shè)計(jì)應(yīng)用 > 基于S3C2440A的直流電機(jī)轉(zhuǎn)速控制系統(tǒng)設(shè)計(jì)
基于S3C2440A的直流電機(jī)轉(zhuǎn)速控制系統(tǒng)設(shè)計(jì)
趙 健 孫耀杰
摘要: 闡述了基于S3C2440A的直流電機(jī)調(diào)速系統(tǒng)設(shè)計(jì)。為了方便快速地實(shí)現(xiàn)對(duì)直流電機(jī)轉(zhuǎn)速及轉(zhuǎn)向的控制,設(shè)計(jì)了以三星公司的S3C2440A處理器和L298N電機(jī)驅(qū)動(dòng)芯片構(gòu)成的控制系統(tǒng)。系統(tǒng)通過設(shè)置處理器的相關(guān)寄存器控制PWM輸出的占空比,從而實(shí)現(xiàn)對(duì)直流電機(jī)轉(zhuǎn)速的調(diào)整。詳細(xì)介紹了S3C2440A處理器中PWM的工作原理及相關(guān)寄存器的設(shè)置,并給出控制系統(tǒng)的硬件及軟件設(shè)計(jì),然后通過數(shù)字示波器對(duì)輸出的PWM信號(hào)進(jìn)行觀察。通過實(shí)驗(yàn)證明,系統(tǒng)能成功地實(shí)現(xiàn)要求的功能。
Abstract:
Key words :

直流電機(jī)作為一種動(dòng)力產(chǎn)生裝置,在工業(yè)及日常生活中得到了廣泛應(yīng)用。對(duì)直流電機(jī)的控制有兩方面:轉(zhuǎn)速與轉(zhuǎn)向。ARM是近年來發(fā)展非常迅速的處理器,有著很好的應(yīng)用前景。將ARM處理器應(yīng)用于直流電機(jī)的轉(zhuǎn)速控制,有極大的使用價(jià)值。本文將S3C2440A處理器應(yīng)用于直流電機(jī)的控制,對(duì)系統(tǒng)的工作原理及工作流程進(jìn)行了研究與設(shè)計(jì)。

1 PWM功能簡(jiǎn)介
    PWM(Pulse Width Modulation,脈寬調(diào)制器)功能是由處理器提供的一種定時(shí)器。通過對(duì)PWM功能寄存器的設(shè)置,就可以設(shè)定占空比的大小、定時(shí)頻率的高低,這樣就可以通過控制電路來實(shí)現(xiàn)PWM輸出。
    PWM的一個(gè)優(yōu)點(diǎn)是從處理器到被控制系統(tǒng)的信號(hào)都是數(shù)字形式的,無需進(jìn)行數(shù)/模轉(zhuǎn)換。讓信號(hào)保持為數(shù)字形式可以將噪聲影響降到最小,噪聲只有在強(qiáng)到足以將邏輯1改變?yōu)檫壿?或者將邏輯0改變?yōu)檫壿?時(shí),才能對(duì)數(shù)字信號(hào)產(chǎn)生影響。
    對(duì)噪聲抵抗能力的增強(qiáng)是PWM相對(duì)于模擬控制的另外一個(gè)優(yōu)點(diǎn),而且這也是在某些時(shí)候?qū)WM用于通信的主要原因。從模擬信號(hào)轉(zhuǎn)向PWM可以極大地延長(zhǎng)通信距離。在接收端,通過適當(dāng)?shù)腞C或LC網(wǎng)絡(luò)可以濾除用于調(diào)制的高頻方波并將信號(hào)還原為模擬形式。
    PWM廣泛應(yīng)用在多種系統(tǒng)中。這里將其應(yīng)用于直流電機(jī)的轉(zhuǎn)速控制。

2 硬件設(shè)計(jì)
   
由ARM公司設(shè)計(jì)的采用RISC架構(gòu)的ARM處理器性能強(qiáng),功耗低,體積小,支持Thumb(16位)/ARM(32位)雙指令集,指令執(zhí)行速度快。目前ARM系列微處理器在32位RISC嵌入式產(chǎn)品中已經(jīng)占據(jù)75%以上的市場(chǎng)份額?,F(xiàn)在ARM已經(jīng)發(fā)展到了ARM11系列,不過市場(chǎng)上應(yīng)用最多的還是ARM9系列,其性價(jià)比也占有優(yōu)勢(shì)。
2.1 S3C2440A簡(jiǎn)介
   
S3C2440A是由Samsung公司推出的基于ARM920T內(nèi)核的16/32位RISC處理器。此款處理器提供了豐富通用的片上外設(shè),大大減少了系統(tǒng)電路中除處理器以外的元器件配置。S3C2440A有4路PWM定時(shí)器,1路內(nèi)部定時(shí)器,8路ADC和觸摸屏接口,130個(gè)通用I/O,24個(gè)外部中斷源。最高工作頻率可以達(dá)到400 MHz,完全能夠完成設(shè)計(jì)要求。
2.2 硬件實(shí)現(xiàn)
   
為提高系統(tǒng)效率,降低功耗,功放驅(qū)動(dòng)電路采用基于雙極型H橋型脈寬調(diào)制方式(PWM)的集成電路L298N。L298N是SGS公司的產(chǎn)品,內(nèi)部包含兩個(gè)H橋高電壓大電流橋式驅(qū)動(dòng)器,接收標(biāo)準(zhǔn)TTL邏輯電平信號(hào),可以驅(qū)動(dòng)46 V,2 A以下的電機(jī),工作溫度范圍-25~+130℃。L298N的內(nèi)部結(jié)構(gòu)如圖1所示。


    L298N可以同時(shí)驅(qū)動(dòng)2個(gè)直流電機(jī),在這里只需要用到1個(gè),將電機(jī)放在OUT1與OUT2之間即可。其中EnA是控制使能端,控制OUT1和OUT2之間電機(jī)的停轉(zhuǎn)。IN1,IN2腳接入控制電平,控制OUT1和OUT2之間直流電機(jī)的轉(zhuǎn)動(dòng)方向。當(dāng)使能端EnA有效,IN1為低電平IN2為高電平時(shí),三極管T2,T3導(dǎo)通,T1,T4截止,電機(jī)反轉(zhuǎn);相反當(dāng)IN1為高電平IN2為低電平時(shí),三極管T1,T4導(dǎo)通,T2,T3截止,電機(jī)正轉(zhuǎn)。當(dāng)IN1,IN2電平相同時(shí),電機(jī)停轉(zhuǎn)。
    由于S3C2440A本身就帶有4個(gè)PWM輸出口,直接輸出控制信號(hào)到L298N即可,無須另加電路。系統(tǒng)原理框圖如圖2所示。系統(tǒng)中選用了工作在中斷模式下的定時(shí)器1作為產(chǎn)生PWM的定時(shí)器。通過編程設(shè)定I/O口GPB0作為定時(shí)器1輸出PWM的端口,接入L298N的EnA端口,根據(jù)定時(shí)器1輸出的PWM頻率分別控制2個(gè)直流電機(jī)的轉(zhuǎn)速。端口IN1連接GPB5,IN2連接GPB6。通過改變GPB5與GPB6電平的高低實(shí)現(xiàn)電機(jī)的正轉(zhuǎn)與反轉(zhuǎn)。電機(jī)的停止操作可以通過調(diào)制脈沖寬度為0即占空比為0或者關(guān)閉定時(shí)器的使能位實(shí)現(xiàn)。為保證L298N驅(qū)動(dòng)芯片正常工作,還要在其與直流電機(jī)之間加入兩對(duì)續(xù)流二極管用以將電機(jī)中反向電動(dòng)勢(shì)產(chǎn)生的電流分流到地或電源正極,以免反向電動(dòng)勢(shì)對(duì)L298N產(chǎn)生損害。



3 系統(tǒng)的軟件設(shè)計(jì)
   
S3C2440A有5個(gè)16位的定時(shí)器。定時(shí)器0,1,2,3有脈寬調(diào)制功能。定時(shí)器4有一個(gè)沒有輸出引腳的內(nèi)部定時(shí)器,定時(shí)器0有一個(gè)用于大電流設(shè)備的死區(qū)生成器。
    定時(shí)器0和1共用一個(gè)8位預(yù)分頻器,定時(shí)器2,3,4共用另一個(gè)8位預(yù)分頻器。每個(gè)定時(shí)器有1個(gè)時(shí)鐘分頻器,可以生成5種不同的分頻信號(hào):1/2,1/4,1/8,1/16和TCLK。每個(gè)定時(shí)器模塊從時(shí)鐘分頻器接收自己的時(shí)鐘信號(hào),其分頻器從相應(yīng)的8位預(yù)分頻器接收時(shí)鐘。8位預(yù)分頻器是可編程的并且根據(jù)裝載的值來分頻PCLK,它的值存儲(chǔ)在TCFG0和TCFG1寄存器。
3.1 定時(shí)器工作方式
   
在S3C2440A中,每個(gè)定時(shí)器都有自己的16位減法計(jì)數(shù)器,由定時(shí)器時(shí)鐘驅(qū)動(dòng)。當(dāng)定時(shí)器使能,定時(shí)器計(jì)數(shù)緩存寄存器(TCNTBn)得到一個(gè)被裝載到遞減計(jì)數(shù)器中的初始值。定時(shí)器比較緩存寄存器(TCMPBn)有一個(gè)被裝載到比較寄存器中用來和遞減計(jì)數(shù)器的值作比較的初始值。TC-NTBn和TCMPBn的雙緩存特點(diǎn)使得當(dāng)頻率與負(fù)荷比發(fā)生改變時(shí),定時(shí)器可以有1個(gè)穩(wěn)定的輸出。
    定時(shí)器的啟動(dòng)步驟如下:
    (1)寫初始值到TCNTBn和TCMPBn。
    (2)設(shè)置對(duì)應(yīng)定時(shí)器的手動(dòng)更新位,反相器設(shè)置為off狀態(tài)。
    (3)設(shè)置對(duì)應(yīng)定時(shí)器的啟動(dòng)位開啟定時(shí)器,同時(shí)清除手動(dòng)更新位。
    此時(shí)定時(shí)器開始倒數(shù),當(dāng)定時(shí)器計(jì)數(shù)器為0時(shí),定時(shí)器發(fā)出中斷請(qǐng)求,通知處理器定時(shí)結(jié)束。此時(shí),對(duì)應(yīng)TCNTBn的值將自動(dòng)載入計(jì)數(shù)器,從而可以進(jìn)入下一個(gè)操作。如果定時(shí)器已經(jīng)停止,清除TCONn中的定時(shí)器使能位,則TCNTBn中的值將不會(huì)被載入到計(jì)數(shù)器中。
3.2 PWM脈寬調(diào)制
   
對(duì)于定時(shí)器來說,其時(shí)鐘源輸入頻率一般不變。電動(dòng)機(jī)的轉(zhuǎn)速與電機(jī)兩端的電壓成正比,而電機(jī)兩端的電壓與控制波形的占空比成正比,因此電機(jī)的速度與占空比成正比,占空比越大,電機(jī)轉(zhuǎn)速越快。而S3C2440A系統(tǒng)中PWM頻率由TCNTBn決定,PWM脈沖寬度由TCMPBn決定,占空比即為TCMPBn/TCNTBn。
    如果使電機(jī)轉(zhuǎn)速下降,可以減少TCMPBn的值;相反可以增加TCMPBn的值。由于雙緩沖的特性,為了獲得下一個(gè)正確的PWM周期,可以在當(dāng)前PWM周期的任意點(diǎn)通過ISR或其他程序來寫TCMPBn。
    S3C2440A設(shè)置PWM的流程圖如圖3所示。


    具體實(shí)現(xiàn)方法與步驟:
    (1)I/O口設(shè)置是對(duì)PE口的工作方式進(jìn)行設(shè)置,使之工作在定時(shí)器輸出狀態(tài)。
    (2)對(duì)定時(shí)器時(shí)鐘源頻率進(jìn)行設(shè)定。
    (3)設(shè)置輸出波形頻率。
    (4)設(shè)置占空比。
    (5)設(shè)置定時(shí)器控制寄存器并啟動(dòng)定時(shí)器,定時(shí)器啟動(dòng)后可以采用示波器觀察輸出波形是否滿足要求。
3.3 實(shí)驗(yàn)結(jié)果
    在實(shí)驗(yàn)中設(shè)置PWM輸出頻率為1 000 Hz時(shí),電機(jī)能平穩(wěn)轉(zhuǎn)動(dòng)。此時(shí)改變占空比,電機(jī)的轉(zhuǎn)速能隨之改變。用數(shù)字示波器觀察,頻率為1000 Hz占空比為80%的PWM輸出調(diào)制波形如圖4所示,修改占空比為40%時(shí)的輸出波形如圖5所示。在圖4與圖5中,橫坐標(biāo)表示時(shí)間,單位:μs;縱坐標(biāo)表示電壓,單位:V。同樣,也可以用數(shù)字示波器觀察其他占空比時(shí)的調(diào)制波形。



4 結(jié)論
   
從整體上看,本文設(shè)計(jì)的直流調(diào)速系統(tǒng)可以很方便地實(shí)現(xiàn)對(duì)電機(jī)轉(zhuǎn)速以及轉(zhuǎn)向的控制。但為了實(shí)現(xiàn)更精確的控制,可以采用轉(zhuǎn)速與電流雙閉環(huán)結(jié)構(gòu)。通過實(shí)驗(yàn)表明,利用S3C2440A的PWM控制部分完全可以實(shí)現(xiàn)對(duì)直流電機(jī)轉(zhuǎn)速的控制,采用在ARM嵌入式系統(tǒng)上的C語言編程實(shí)現(xiàn),充分利用了現(xiàn)有的集成芯片的強(qiáng)大功能,省去了許多硬件電路,使整個(gè)控制系統(tǒng)得到了大大的簡(jiǎn)化。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。