《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 解決方案 > 單片機(jī)在直流變頻洗衣機(jī)中的應(yīng)用

單片機(jī)在直流變頻洗衣機(jī)中的應(yīng)用

2012-01-16

       1    引言

       洗衣機(jī)是一種在家庭中不可缺少的家用電器,發(fā)展非???,全自動(dòng)式洗衣機(jī)因使用方便得到大家的青睞,全自動(dòng)即進(jìn)水、洗滌、漂洗、摔干等一系列過(guò)程自動(dòng)完成,控制器通常設(shè)有幾種洗滌程序,對(duì)不同的衣物可供用戶選擇。變頻控制依其高性能、節(jié)能等優(yōu)點(diǎn)在洗衣機(jī)的控制中得到廣泛應(yīng)用,下面介紹采用凌陽(yáng)科技公司的SPMC75F2413ASPCE061A單片機(jī)來(lái)設(shè)計(jì)的直流變頻洗衣機(jī)的控制系統(tǒng)。

       2    系統(tǒng)總體方案介紹

       整個(gè)系統(tǒng)主要由兩部分組成:由SPMC75F2413A控制的DMC控制板和由SPCE061A控制的PANEL板,兩者之間的連接系統(tǒng)方塊圖如圖2.1所示。

變頻洗衣機(jī)系統(tǒng)組成框圖

點(diǎn)擊看原圖

 

 

     &n

 

bsp;                                                     圖2.1   變頻洗衣機(jī)系統(tǒng)組成框圖

       PANEL控制器采用16 位SPCE061A控制器,主要完成的功能有:按鍵掃瞄、狀態(tài)顯示與通訊。洗衣機(jī)的控制通過(guò)按鍵輸入來(lái)選擇操作模式,并可設(shè)定選擇水量、預(yù)約時(shí)間,詳細(xì)設(shè)定洗衣、洗凈及脫水的參數(shù);電源按鍵鈕為起始與驅(qū)動(dòng)控制電路板的連接,起動(dòng)或暫停鍵為運(yùn)轉(zhuǎn)洗衣機(jī)或暫停。運(yùn)轉(zhuǎn)過(guò)程中的剩余時(shí)間透過(guò)7 段顯示器來(lái)顯示。

       DMC 控制器采用16 位SPMC75F2413A 單芯片控制器,主要完成的功能有:偵測(cè)馬達(dá)轉(zhuǎn)子的位置訊號(hào),以120 度方波驅(qū)動(dòng)PWM 方式驅(qū)動(dòng)直流無(wú)刷馬達(dá)。

       3   系統(tǒng)硬件設(shè)計(jì)

       系統(tǒng)控制包括DMC控制板和PANEL控制板兩部分,下面主要介紹DMC控制板硬件設(shè)計(jì)。

       3.1   電源電路

       圖3.1為EMI 電源濾波器與單相全橋整流器電路,AC 電源輸入接頭為CON1,電壓為220VAC,電源輸入端通過(guò)突波吸收器ZNR3以避免過(guò)大的電壓突波損壞器件,C8 與C12 的Y2 電容串聯(lián)后連接至接地點(diǎn),通常也可以連接至機(jī)殼。透過(guò)全橋整流器DB1整流、C13 濾波后可得到輸出直流電壓。

EMI 電源濾波器

點(diǎn)擊看原圖

 

 

                                                                 圖3.1  EMI 電源濾波器

       圖3.2為DC/DC電源供應(yīng)電路,電源供應(yīng)器的輸出側(cè)電源為P+18V 與+12V。P+18V 電源輸出后分別透過(guò)IC21與IC22 產(chǎn)生P+15V 與P+5V,以供給IPM 功率模塊的工作電壓。而+12V 經(jīng)線性穩(wěn)壓器IC20產(chǎn)生+5V 電源供給SPMC75F2413A 等數(shù)字電路的工作電壓。
單片機(jī)在直流變頻洗衣機(jī)中的應(yīng)用圖示

點(diǎn)擊看原圖

 

 

單片機(jī)在直流變頻洗衣機(jī)中的應(yīng)用圖示

點(diǎn)擊看原圖

 

 

                                                           

 

;            圖3.2   DC/DC電源供應(yīng)電路

       3.2    MCU控制電路

       圖3.3為MCU控制電路,此部分的電路主要是以u(píng)’nSP  SPMC75F2413A 微控制器為主,CON5連接在線調(diào)試、仿真器ICE。

 

 


MCU控制電路

 

 

                                                                                圖3.3  MCU控制電路

       3.3   IPM馬達(dá)驅(qū)動(dòng)電路

       圖3.4為IPM馬達(dá)驅(qū)動(dòng)電路,因?yàn)轵?qū)動(dòng)的馬達(dá)為三相變頻,因此一般來(lái)說(shuō)微控制器需具備能夠輸出6 個(gè)PWM 訊號(hào)的能力,SPMC75F2413A 在芯片硬件上可由MCP 與PDC 定時(shí)器模塊完成此功能。IPM 模塊內(nèi)集成了動(dòng)回路與過(guò)電流檢測(cè)電路,MCU 的PWM 輸出訊號(hào)通過(guò)光耦送到IPM 模塊,但在實(shí)際應(yīng)用上需考慮到對(duì)MCU 的保護(hù)與快速地對(duì)IPM 模塊產(chǎn)生高阻抗訊號(hào),因此在電路中加入了IC12 的緩沖電路;過(guò)電流回饋訊號(hào)經(jīng)光耦合器后連接到FTINx 的輸入腳,以求能夠?qū)PM 模塊快速地保護(hù)。D5、D6、D7、C37、C40 與C43 產(chǎn)生組成自舉電路提供IPM上臂開(kāi)關(guān)的驅(qū)動(dòng)信號(hào)。

 

IPM馬達(dá)驅(qū)動(dòng)電路

 

                                                               圖3.4  IPM馬達(dá)驅(qū)動(dòng)電路


       3.4 水位檢測(cè)電路

       圖3.5為洗衣機(jī)的水位檢測(cè)電路,CON4連接水位傳感器,水壓大小產(chǎn)生LC 震蕩,壓力越小則頻率越大,反之亦然。當(dāng)接近零水位時(shí),輸出頻率約在27.8KHz。此頻率通過(guò)F/V 轉(zhuǎn)換電路,轉(zhuǎn)換為模擬電壓輸入至芯片內(nèi)ADC 模塊來(lái)計(jì)算水位高低。

       F/V 轉(zhuǎn)換電路由IC7所產(chǎn)生,電路組件R33 與C36 形成輸入端高通濾波器以濾除直流電壓,輸出電壓大小由R30、C33 與輸入頻率決定,電壓計(jì)算式為: Vo = R30 x C33 x Vcc x Fin;其中Vcc 為+5V、Fin 為輸入頻率。

水位檢測(cè)電路

                     圖3.5  水位檢測(cè)電路


       4   系統(tǒng)軟件設(shè)計(jì)

       變頻洗衣機(jī)控制器主要以雙MCU 設(shè)計(jì),兩控制器通過(guò)串行通訊交換訊息與系統(tǒng)控制,設(shè)定SPCE061A 面板控制器為主機(jī),SPMC75F2413A 馬達(dá)驅(qū)動(dòng)控制器為從機(jī)。主機(jī)負(fù)責(zé)整個(gè)傳輸?shù)倪^(guò)程;從機(jī)端負(fù)責(zé)接收主機(jī)端傳送的命令并執(zhí)行,且需響應(yīng)相對(duì)應(yīng)的ACK 訊號(hào)給主機(jī),相對(duì)地。當(dāng)使用者在面板控制器上下達(dá)對(duì)應(yīng)的運(yùn)轉(zhuǎn)命令后,從機(jī)負(fù)責(zé)執(zhí)行,當(dāng)有異常狀況發(fā)生時(shí),從機(jī)實(shí)時(shí)回報(bào)或直接能夠由主機(jī)檢知,利用顯示電路通知使用者。

       因此本系統(tǒng)的軟件開(kāi)發(fā)包括針對(duì)馬達(dá)驅(qū)動(dòng)、通訊格式與通訊狀態(tài)機(jī)切換、洗衣機(jī)狀態(tài)機(jī)切換、按鍵掃瞄與狀態(tài)顯示等程序?yàn)橹鳎灰韵聦⑨槍?duì)DMC 控制器與PANEL 控制器重要的程序給予說(shuō)明。

       4.1   直流無(wú)刷馬達(dá)驅(qū)動(dòng)程序

       在DMC 控制器主要負(fù)責(zé)直流變頻馬達(dá)驅(qū)動(dòng),可區(qū)分為兩大部分:內(nèi)回路的電壓控制與外回路的速度控制。內(nèi)回路電壓控制系針對(duì)偵測(cè)到的馬達(dá)轉(zhuǎn)子位置(由霍爾組件讀取得到),由于馬達(dá)轉(zhuǎn)子為永久磁石結(jié)構(gòu),因此由微控制器所輸出的電壓訊號(hào)需對(duì)應(yīng)于所讀取到的霍爾組件訊號(hào),在實(shí)際的設(shè)計(jì)例中是以定時(shí)器Timer3 產(chǎn)生4000Hz 的固定周期的中斷時(shí)間,在每次中斷程序中會(huì)對(duì)霍爾組件輸入接口作讀取的動(dòng)作,并輸出相應(yīng)的電壓H/L與PWM 訊號(hào),此程序以有限狀態(tài)機(jī)實(shí)現(xiàn),共區(qū)分3 個(gè)狀態(tài)為PHSIDLE、PHSHOLD 與PHSRUN,在PHSIDLE 主要工作在禁能DMC 驅(qū)動(dòng)器并對(duì)調(diào)控參數(shù)進(jìn)行初始化,PHSHOLD 狀態(tài)在保證產(chǎn)生自舉電壓,而PHSRUN 則是真正產(chǎn)生120 度方波訊號(hào),詳細(xì)程序流程可參考如圖4.1 所示。
狀態(tài)切換流程

 

                                                    圖4.1   狀態(tài)切換流程

       4.2 馬達(dá)轉(zhuǎn)速計(jì)算與控制程序

       洗衣機(jī)的直流無(wú)刷馬達(dá)為同步馬達(dá),亦即馬達(dá)的機(jī)械轉(zhuǎn)速與磁場(chǎng)旋轉(zhuǎn)頻率為同步的。因此可根據(jù)馬達(dá)的霍爾位置訊號(hào)計(jì)算脈波寬度的時(shí)間即可計(jì)算出馬達(dá)的實(shí)際轉(zhuǎn)速,達(dá)到閉回路的速度控制。利用SPMC75F2413A的PDC0中斷做相位檢測(cè),TPM2定時(shí)器中斷計(jì)時(shí)來(lái)完成位置檢測(cè)和速度計(jì)算。圖4.2為PDC0和TPM2中斷流程。

PDC0和TPM2中斷流程

 

                                                   圖4.2  PDC0和TPM2中斷流程


       其中PDC0_PDCINT_ISR()負(fù)責(zé)檢測(cè)霍爾組件的脈波寬度,TMR2_TPRINT_ISR()負(fù)責(zé)當(dāng)馬達(dá)轉(zhuǎn)速變化時(shí)更新實(shí)際轉(zhuǎn)速值并作控制。

       4.3    串行通訊程序

       DMC控制器和PANEL 控制器通過(guò)UART交換訊息,采用CRC校驗(yàn)方式,所有的通訊動(dòng)作的起始、中止與異常檢出皆由PANEL 控制器所主導(dǎo)。

       DMC 控制器以環(huán)形隊(duì)列(circular queue)存儲(chǔ)數(shù)據(jù),串行字符是以中斷接收并儲(chǔ)存在的緩沖區(qū)中。DMC 控制器檢查所收到的串行字符命令,若所收到的字符組正確無(wú)誤,則對(duì)相應(yīng)的命令回應(yīng)給PANEL 控制器,若是接收為有效的命令,則執(zhí)行Decode_RxStream()程序以譯碼出控制命令與數(shù)據(jù),并對(duì)PANEL 控制器發(fā)出ACK訊號(hào);反之,若接收為無(wú)效的命令,則對(duì)PANEL 控制器發(fā)出NACK 的訊息,以利PANEL 控制器作訊息的控制與再傳送的動(dòng)作。程序流程圖如圖4.3 所示。

串行通訊程序流程

 

                                                                   圖4.3  串行通訊程序流程

       4.4   PANEL控制器韌體說(shuō)明

       當(dāng)按下『電源』按鍵時(shí),PANEL 控制器將會(huì)開(kāi)始通訊動(dòng)作,嘗試與DMC 控制器握手特定的訊息內(nèi)容,當(dāng)從回傳的字符組被PANEL 控制器認(rèn)可后,才可接受使用者對(duì)洗衣機(jī)的操作;否則,將判定為通訊異常情況發(fā)生。當(dāng)使用者已經(jīng)選擇將洗衣模式與參數(shù)內(nèi)容后,按下『?jiǎn)?dòng)/暫停』按鍵會(huì)使馬達(dá)開(kāi)始運(yùn)轉(zhuǎn)。系統(tǒng)預(yù)設(shè)有4 種運(yùn)轉(zhuǎn)程序,對(duì)應(yīng)的洗衣參數(shù)見(jiàn)表4-1:
                                                                       

 

               表4-1 洗衣程序內(nèi)容

洗衣程序內(nèi)容

點(diǎn)擊看原圖

 

 

上表在P1 程序可單獨(dú)調(diào)整個(gè)別參數(shù),但P0、P2 與P3 程序則無(wú)法更改系統(tǒng)默認(rèn)值。舉例說(shuō)明,當(dāng)使用者只需要對(duì)作衣物脫水的動(dòng)作,只需要將洗衣時(shí)間、洗衣次數(shù)對(duì)應(yīng)的7 段顯示器調(diào)整至不顯示,再調(diào)整所需的脫水時(shí)間,按下啟動(dòng)按鍵,即進(jìn)入脫水模式。

       『預(yù)約時(shí)間』的設(shè)定則由3 小時(shí)至9 小時(shí),每次調(diào)整間隔1 小時(shí)。上述功能在軟件設(shè)計(jì)上是以定時(shí)器中斷執(zhí)行,時(shí)間的設(shè)定利用Timer B 定時(shí)器(IRQ2 中斷),設(shè)定為8000Hz 頻率中斷,在此程序中分為2 個(gè)time slice,分別為T(mén)ick1Func 與Tick2Func,程序如圖4.4 所示,因此Tick1Func 與Tick2Func 程序的執(zhí)行頻率為4000Hz。

IRQ2 中斷流程

                                                   圖4.4  IRQ2 中斷流程

       在Tick1Func程序中,除了對(duì)按鍵輸入作掃瞄的動(dòng)作,另外依據(jù)按下的按鍵內(nèi)容更改SystemT 與SystemF 結(jié)構(gòu)的內(nèi)容,其中SystemT 主要儲(chǔ)存設(shè)定洗衣參數(shù)內(nèi)容并更新SA7Wash 的結(jié)構(gòu)(用于狀態(tài)機(jī)切換), ystemF 為紀(jì)錄運(yùn)轉(zhuǎn)的狀態(tài)標(biāo)志。當(dāng)洗衣參數(shù)被更改后,將會(huì)改變預(yù)估洗衣完成時(shí)間,并于7 段顯示器中顯示。Tick2Func 程序負(fù)責(zé)掃瞄電路上的顯示電路,采用高速的循序顯示,以節(jié)省IO 接口的資源,此程序并包含依據(jù)水量的預(yù)估來(lái)提示使用者所需加入的洗劑量。

       5    結(jié)語(yǔ)

       該系統(tǒng)采用凌陽(yáng)科技公司的SPMC75F2413A和SPCE061A單片機(jī)來(lái)完成直流變頻洗衣機(jī)的控系統(tǒng)制,SPMC75F2413A為專(zhuān)用于變頻馬達(dá)控制的IC,其強(qiáng)大的PWM輸出功能使得程序開(kāi)發(fā)非常方便。SPCE061A除了具有普通單片機(jī)的功能以外,還具有語(yǔ)音識(shí)別、語(yǔ)音錄放等功能,可以將洗衣機(jī)的一些使用狀態(tài)、常識(shí)播報(bào)出來(lái)。

參考文獻(xiàn)
[1] 雷思孝、李伯成、雷向莉等,單片機(jī)原理及實(shí)用技術(shù)—凌陽(yáng)16位單片機(jī)原理及應(yīng)用[M] 西安:西安電子科技大學(xué)出版社
[2] SPMC75F2413A編程指南 V1.2    凌陽(yáng)科技股份有限公司

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。