標(biāo)題: STM8單片機(jī)變頻器設(shè)計(jì)精彩論文(控制有感 無感 無刷電機(jī)) [打印本頁]
作者: janes71 時(shí)間: 2018-5-31 16:57
標(biāo)題: STM8單片機(jī)變頻器設(shè)計(jì)精彩論文(控制有感 無感 無刷電機(jī))
基于單片機(jī)的變頻器設(shè)計(jì)
摘要
變頻器是從上世紀(jì)中葉發(fā)展起來的一種交流調(diào)速設(shè)備。它是為了解決傳統(tǒng)的交流電機(jī)調(diào)速困難、傳統(tǒng)的交變速設(shè)備不但結(jié)構(gòu)復(fù)雜且效率和可靠性均不盡人意的缺點(diǎn)而出現(xiàn)的,變頻器的出現(xiàn)使交流電機(jī)的調(diào)速范圍和調(diào)速性能均大為提升。而無刷直流電機(jī)因?yàn)榫哂兄绷饔兴㈦姍C(jī)的特性,同時(shí)也是頻率變化的裝置,所以又名直流變頻,國(guó)際通用名詞為 BLDC。無刷直流電機(jī)具有體積小、重量輕、維護(hù)方便、高效節(jié)能、易于控制等一系列優(yōu)點(diǎn),如今被大量應(yīng)用。如電動(dòng)自行車的主驅(qū)動(dòng)電機(jī),變頻家電,如空調(diào)、冰箱等主機(jī)�?刂葡到y(tǒng)是電動(dòng)自行車的核心,與其控制對(duì)象——無刷直流電動(dòng)機(jī)共同構(gòu)成電動(dòng)自行車的動(dòng)力驅(qū)動(dòng)系統(tǒng)。本文以24V,3相6極無刷直流電動(dòng)機(jī)作為研究對(duì)象,建立了基于單片機(jī)的全數(shù)字化無位置傳感器無刷直流電機(jī)控制系統(tǒng)。1概述變頻調(diào)速技術(shù)是現(xiàn)代電力傳動(dòng)技術(shù)的重要發(fā)展方向,而作為變頻調(diào)速系統(tǒng)的核心—變頻器的性能也越來越成為調(diào)速性能優(yōu)劣的決定因素,除了變頻器本身制造工藝的“先天”條件外,對(duì)變頻器采用什么樣的控制方式也是非常重要的。隨著電力電子技術(shù)、微電子技術(shù)、計(jì)算機(jī)網(wǎng)絡(luò)等高新技術(shù)的發(fā)展,變頻器的控制方式今后將向數(shù)字控制變頻器等方向發(fā)展。現(xiàn)在,變頻器的控制方式用數(shù)字處理器可以實(shí)現(xiàn)比較復(fù)雜的運(yùn)算,變頻器數(shù)字化將是一個(gè)重要的發(fā)展方向。
電動(dòng)自行車的驅(qū)動(dòng)電機(jī)即為BLDC電機(jī),本文以STM8S903K3單片機(jī)為核心,完成了電動(dòng)自行車控制器的軟硬件設(shè)計(jì),尤其對(duì)BLDC電機(jī)的直流變頻控制部分進(jìn)行了重點(diǎn)闡述。硬件部分包括電源、MOSFET驅(qū)動(dòng)、電流檢測(cè)等電路的設(shè)計(jì),畫出了各電路具體工作原理圖,解釋了其工作原理并介紹了硬件設(shè)計(jì)注意事項(xiàng)。軟件設(shè)計(jì)采用分模塊結(jié)構(gòu),詳細(xì)介紹了電子換相、欠壓保護(hù)和速度控制等編程要點(diǎn),畫出了各模塊的程序設(shè)計(jì)流程圖并介紹了軟件設(shè)計(jì)注意事項(xiàng)。
文中,著重介紹了電動(dòng)自行車控制系統(tǒng)的基本組成和工作原理。包括無刷直流電動(dòng)機(jī)的基本結(jié)構(gòu)和工作原理并推導(dǎo)了其數(shù)學(xué)模型、電動(dòng)自行車控制器的各項(xiàng)功能及工作原理、調(diào)速轉(zhuǎn)把和制動(dòng)轉(zhuǎn)把的工作原理以及信號(hào)系統(tǒng)和照明系統(tǒng)的工作原理。整體上對(duì)電動(dòng)自行車控制系統(tǒng)進(jìn)行概括,為以后控制系統(tǒng)的軟硬件設(shè)計(jì)奠定理論基礎(chǔ)。
最后,詳細(xì)闡述了以STM8S903K3單片機(jī)為核心的電動(dòng)自行車控制器的軟硬件設(shè)計(jì)。硬件部分包括電源、MOSFET驅(qū)動(dòng)、電流檢測(cè)等電路的設(shè)計(jì),畫出了各電路具體工作原理圖,解釋了其工作原理并介紹了硬件設(shè)計(jì)注意事項(xiàng)。軟件設(shè)計(jì)采用分模塊結(jié)構(gòu),詳細(xì)介紹了電子換相、欠壓保護(hù)和速度控制等編程要點(diǎn),畫出了各模塊的程序設(shè)計(jì)流程圖并介紹了軟件設(shè)計(jì)注意事項(xiàng)。
1.2電動(dòng)自行車控制系統(tǒng)的研究現(xiàn)狀電動(dòng)自行車控制系統(tǒng)可以視為以控制器為核心,包括轉(zhuǎn)把、剎把、儀表以及相關(guān)的傳感器、開關(guān)按鈕等器件的集成。其中,控制器決定了電動(dòng)車的操控性能,因此控制器功能的提高、完善及合理發(fā)揮對(duì)于電動(dòng)自行車控制系統(tǒng)來說尤為重要[10]。
電動(dòng)自行車控制器的主要形式有:分立元件加少量集成電路構(gòu)成的模擬控制、基于專用集成電路的控制系統(tǒng)、以微型計(jì)算機(jī)技術(shù)為核心的數(shù)�;旌峡刂葡到y(tǒng)和全數(shù)字控制系統(tǒng)[11~12]。
模擬控制系統(tǒng)由于模擬電路中不可避免的存在參數(shù)漂移和參數(shù)不一致等問題,加上線路復(fù)雜、調(diào)試不便等因素,使電機(jī)的可靠性和性能受到影響,在電動(dòng)自行車控制器中己經(jīng)不采用了。
基于專用集成電路的控制系統(tǒng)采用無刷直流電動(dòng)機(jī)專用集成電路如MC33033、MC33035、ML4428為控制核心,克服了分立元件帶來的弊端,使控制電路體積小、可靠性高,但功能難以擴(kuò)展,在早期的電動(dòng)車控制器中應(yīng)用較多。
數(shù)模混合控制系統(tǒng)和全數(shù)字控制系統(tǒng)采用數(shù)字電路、單片機(jī)以及數(shù)字信號(hào)處理器(DSP)構(gòu)成硬件系統(tǒng),控制規(guī)律由硬件實(shí)現(xiàn)轉(zhuǎn)向軟件實(shí)現(xiàn)�?刂旗`活、功能擴(kuò)展方便且易實(shí)現(xiàn)較復(fù)雜的控制算法。目前的電動(dòng)自行車控制器普遍采用這種控制系統(tǒng)[13]。
電動(dòng)自行車控制器發(fā)展趨勢(shì)及研究難點(diǎn)1)研究難點(diǎn)
a.電機(jī)轉(zhuǎn)矩脈動(dòng)優(yōu)化控制。120°六步換相控制時(shí)容易出現(xiàn)轉(zhuǎn)矩脈動(dòng),影響無刷直流電機(jī)的平穩(wěn)運(yùn)行,增加噪聲并降低效率。通常可通過調(diào)整PWM載波方式和重疊換相來抑制電流換相引起的轉(zhuǎn)矩脈動(dòng)。目前,為了減少轉(zhuǎn)矩脈動(dòng),BLDC電機(jī)的控制方法的研究正在從傳統(tǒng)的120°控制方法到180°的控制方法轉(zhuǎn)換。
b.增加電機(jī)力矩。自行車在起動(dòng)和爬坡時(shí),要求電機(jī)及控制器有充分的過載能力,以提供足夠的起動(dòng)和爬坡力矩。通常,通過增加電流閉環(huán)控制可獲得更大的起動(dòng)力矩和響應(yīng)速度�,F(xiàn)狀正在研究通過對(duì)電機(jī)的弱磁控制來增加電機(jī)的力矩。
c.能量再生控制及輔助電子剎車。續(xù)程性能一直是制約電動(dòng)車發(fā)展的關(guān)鍵因素之一,提高續(xù)程的方法除了改進(jìn)蓄電技術(shù)以及驅(qū)動(dòng)策略外,還有就是剎車時(shí)采用先進(jìn)的能量回收控制。目前已有的電動(dòng)自行車能量回收方案基本上是基于電動(dòng)汽車的能量回收控制理論,但大多數(shù)控制器并沒有充分進(jìn)行能量回收控制,只是作為ABS輔助剎車時(shí)的一個(gè)附加功能。
d.無位置傳感器的BLDC控制。位置傳感器的存在增加了電機(jī)的體積和成本,同時(shí)給電動(dòng)自行車增加了一個(gè)故障源。統(tǒng)計(jì)表明,多數(shù)電動(dòng)自行車的電機(jī)損壞實(shí)際上是由于位置傳感器失效造成的。針對(duì)位置傳感器的不利因素,人們對(duì)無位置傳感器的BLDC控制技術(shù)進(jìn)行了很多的研究,并在空調(diào)系統(tǒng)、風(fēng)機(jī)等不同設(shè)計(jì)中得到廣泛的應(yīng)用。但在電動(dòng)自行車中,由于無位置傳感器控制技術(shù)無法解決平穩(wěn)啟動(dòng)的問題,因此難以得到最終客戶的認(rèn)可,而一直沒有得到廣泛的使用。所以,該技術(shù)目前的瓶頸是如何解決平穩(wěn)啟動(dòng)。
2)發(fā)展趨勢(shì)
廉價(jià)化。對(duì)于現(xiàn)有的成熟設(shè)計(jì),追求更低的成本。通過選用更低價(jià)錢的元器件以及MCU,相應(yīng)地,MCU廠商會(huì)配合推出更新工藝的廉價(jià)兼容型號(hào)來降低控制器的成本。
智能化。智能化越來越成為電動(dòng)自行車控制器的發(fā)展趨勢(shì)。MCU必須具有自檢、自維護(hù)能力,確保動(dòng)作的“萬無一失”。另外,防盜報(bào)警功能,電源自動(dòng)識(shí)別功能,自動(dòng)識(shí)別電機(jī)、智能鎖功能等人性化設(shè)計(jì)都是技術(shù)上的發(fā)展方向。
集成化。集成化可以實(shí)現(xiàn)體積小、效率高、返修率低,因此是品牌廠家的首選。目前市場(chǎng)上普遍使用的控制器方案設(shè)計(jì)陳舊,外部分立元件多,任何一個(gè)元件失效都會(huì)影響到電控器質(zhì)量。因此高度集中化是未來的發(fā)展方向。
定制化。由于電動(dòng)自行車市場(chǎng)的龐大,為了進(jìn)一步降低成本,一些公司開始專門為電動(dòng)自行車業(yè)定制芯片。同時(shí)對(duì)于電動(dòng)自行車控制器的設(shè)計(jì)部門來說,根據(jù)客戶需求開發(fā)相應(yīng)功能的控制器也是未來的發(fā)展方向[14]。
論文研究?jī)?nèi)容和結(jié)構(gòu)本文在前人研究的基礎(chǔ)上,以24V,3相6極無刷直流電動(dòng)機(jī)作為研究對(duì)象,研究的目的是開發(fā)出一款可供電動(dòng)自行車領(lǐng)域的無刷直流電機(jī)無位置傳感控制系統(tǒng)參考的控制器。
本論文首先詳細(xì)介紹了本課題研究背景及意義、電動(dòng)自行車的國(guó)內(nèi)外發(fā)展現(xiàn)狀和電動(dòng)自行車控制器的研究難題及未來發(fā)展趨勢(shì)。接著介紹了無刷直流電動(dòng)機(jī)的基本結(jié)構(gòu)、工作原理以及數(shù)學(xué)模型。然后介紹了電動(dòng)自行車控制系統(tǒng)的各個(gè)組成部分并對(duì)各部分工作原理進(jìn)行分析。介紹了無刷直流電機(jī)的數(shù)學(xué)模型,使用硬件電路的方法去檢測(cè)反電動(dòng)勢(shì)過零點(diǎn)。最后對(duì)電動(dòng)自行車控制系統(tǒng)軟硬件部分進(jìn)行分模塊研究與分析,給出了系統(tǒng)軟硬件設(shè)計(jì)框圖及各模塊的具體電路原理圖和軟件控制程序流程圖。
無刷直流電機(jī)概述
無刷直流電機(jī)是隨著電子技術(shù)的迅速發(fā)展而發(fā)展起來的一種新型直流電機(jī),它是現(xiàn)代工業(yè)設(shè)備中重要的運(yùn)動(dòng)部件。無刷直流電機(jī)以法拉第的電磁感應(yīng)定律為基礎(chǔ),而又以新興的電力電子技術(shù)、數(shù)字電子技術(shù)和各種物理原理為后盾,具有很強(qiáng)的生命力。
無刷直流電機(jī)最大特點(diǎn)是沒有換向器(曾稱整流子)和電刷組成的機(jī)械接觸機(jī)構(gòu)。因此,無刷直流電機(jī)沒有換向火花,壽命長(zhǎng),運(yùn)行可靠,維護(hù)簡(jiǎn)便。此外,其轉(zhuǎn)速不受機(jī)械換向的限制,如采用磁懸浮軸承或空氣軸承等,可實(shí)現(xiàn)每分鐘幾萬到幾十萬轉(zhuǎn)的超高轉(zhuǎn)速運(yùn)行。
由于無刷直流電機(jī)具有上述一系列有點(diǎn),因此,它的用途比有刷直流電機(jī)更加廣泛,尤其適用于航空航天、電子設(shè)備、采礦、化工等特殊工業(yè)部門[47]。
無刷直流電機(jī)控制系統(tǒng)概況一個(gè)多世紀(jì)以來,電動(dòng)機(jī)作為機(jī)電能量轉(zhuǎn)換的裝置,其應(yīng)用范圍已遍及國(guó)民經(jīng)濟(jì)的各個(gè)領(lǐng)域以及人們的日常生活之中。電動(dòng)機(jī)主要類型有同步電動(dòng)機(jī)、異步電動(dòng)機(jī)(感應(yīng)電動(dòng)機(jī))與直流電動(dòng)機(jī)三種,其容量小到幾瓦,大到上萬千瓦。眾所周知,直流電動(dòng)機(jī)具有控制簡(jiǎn)便和調(diào)速性能好等諸多優(yōu)點(diǎn),但傳統(tǒng)的直流電動(dòng)機(jī)均采用電刷,以機(jī)械方法進(jìn)行換向,因而存在機(jī)械摩擦,由此帶來了噪聲、火花、無線電干擾以及壽命短等致命弱點(diǎn),再加上制造成本高及維修困難等缺點(diǎn),從而大大地限制了它的應(yīng)用范圍[15]。
隨著社會(huì)生產(chǎn)力的發(fā)展,人們的生活水平的普遍提高,需要不斷地開發(fā)各種新型電動(dòng)機(jī)�?茖W(xué)技術(shù)的進(jìn)步,新技術(shù)、新材料的不斷涌現(xiàn),更促進(jìn)了電動(dòng)機(jī)產(chǎn)品的不斷推陳出新。針對(duì)上述傳統(tǒng)直流電動(dòng)機(jī)的弊病,早在20世紀(jì)30年代,就有人開始研制以電子換向來代替電刷機(jī)械換向的無刷直流電動(dòng)機(jī),并取得了一定成果[16]。但由于當(dāng)時(shí)大功率電力電子器件僅處于發(fā)展的初級(jí)階段,沒能找到理想的電子換向的元器件,這就使得這種電動(dòng)機(jī)只能停留在實(shí)驗(yàn)室研究階段,無法推廣使用。1955年,美國(guó)人D·哈利森等人首次申請(qǐng)了應(yīng)用晶體管換向代替電動(dòng)機(jī)機(jī)械換向器換向的專利,這就是現(xiàn)代無刷直流電動(dòng)機(jī)的雛形[16]。但由于該電動(dòng)機(jī)尚無啟動(dòng)轉(zhuǎn)矩,因而不能產(chǎn)品化。而后,又經(jīng)過人們多年努力,借助于霍爾元件來實(shí)現(xiàn)幻想的無刷直流電動(dòng)機(jī)終于在1962年問世,從而開創(chuàng)了無刷直流電動(dòng)機(jī)產(chǎn)品化的新紀(jì)元[16]。20世紀(jì)70年代以來,隨著電力電子工業(yè)的飛速發(fā)展,許多新型的高性能大功率電力電子器件,如GTR、MOSFET、IGBT等相繼出現(xiàn),以及高性能永磁材料,如釤鈷、釹鐵硼等的問世,均為無刷直流電動(dòng)機(jī)的廣泛應(yīng)用奠定了堅(jiān)實(shí)的基礎(chǔ)。
典型的無刷直流電動(dòng)機(jī)控制系統(tǒng)主要由電機(jī)本體、轉(zhuǎn)子位置傳感器、主回路逆變器和控制邏輯單元構(gòu)成,其中電機(jī)本體與轉(zhuǎn)子位置傳感器往往做成一體,而在本文中主回路逆變器被稱作驅(qū)動(dòng)電路,而控制邏輯單元?jiǎng)t稱作控制電路。
當(dāng)前無刷直流電機(jī)調(diào)速系統(tǒng)驅(qū)動(dòng)電路采用的功率器件主要是IGBT、MOSFET等全控型器件[15]。
根據(jù)獲取轉(zhuǎn)子位置的不同方式,無刷直流電機(jī)調(diào)速系統(tǒng)分為兩大類:有位置傳感器的無刷直流電機(jī)調(diào)速系統(tǒng)和無位置傳感器的無刷直流電機(jī)調(diào)速系統(tǒng)。前者指電機(jī)上安裝特殊的裝置,直接獲取轉(zhuǎn)子位置信息的調(diào)速系統(tǒng);后者指由系統(tǒng)變量間接確定轉(zhuǎn)子位置的調(diào)速系統(tǒng)。無位置傳感器的無刷直流電機(jī)調(diào)速系統(tǒng)具有體積小、結(jié)構(gòu)簡(jiǎn)單、易于維護(hù)等優(yōu)點(diǎn),是無刷直流電機(jī)控制領(lǐng)域的一大研究方向[15]。
無刷直流電機(jī)本體有多種分類方式。根據(jù)定子相數(shù)的不同,可分為三相或多相無刷直流電機(jī),其中以三相電機(jī)應(yīng)用最為普遍;根據(jù)轉(zhuǎn)子位置的不同,可分為內(nèi)轉(zhuǎn)子或外轉(zhuǎn)子無刷直流電機(jī);根據(jù)電機(jī)磁場(chǎng)方向的不同,可分為徑向磁場(chǎng)或軸向磁場(chǎng)(盤式)無刷直流電機(jī)等[1]。
由于無刷直流電動(dòng)機(jī)既具備交流電動(dòng)機(jī)的結(jié)構(gòu)特點(diǎn)、運(yùn)行可靠、維護(hù)方便等一系列優(yōu)點(diǎn),又具備直流電動(dòng)機(jī)調(diào)速性能好等諸多優(yōu)點(diǎn),故而在當(dāng)今國(guó)民經(jīng)濟(jì)的各個(gè)領(lǐng)域,如醫(yī)療器械、儀器儀表、化工、輕紡以及家用電器等方面的應(yīng)用日益普及。如計(jì)算機(jī)硬盤驅(qū)動(dòng)器和軟盤驅(qū)動(dòng)器里的主軸電動(dòng)機(jī)、DVD機(jī)中的伺服電動(dòng)機(jī),均數(shù)以百萬計(jì)地運(yùn)用無刷直流電動(dòng)機(jī)[16]。
無刷直流電機(jī)的結(jié)構(gòu)與工作原理無刷直流電機(jī)的結(jié)構(gòu)無刷直流電動(dòng)機(jī)的主要組成部分有電動(dòng)機(jī)本體、位置傳感器與電子開關(guān)等3部分,如圖2.1所示。電動(dòng)機(jī)本體在結(jié)構(gòu)上與永磁同步電動(dòng)機(jī)相似,但沒有籠形繞組和其他起動(dòng)裝置。定子繞組一般制成多相(三、四、五相不等),轉(zhuǎn)子由永久磁鐵按一定的極對(duì)數(shù)(2p = 2,4,…)組成,電子開關(guān)一般是由功率電子器件和它的控制電路以及轉(zhuǎn)子位置傳感器等組成。圖1所示的電動(dòng)機(jī)本體為2極三相。定子A、B、C相繞組分別與電力開關(guān)元件V1、V2、V3相接。位置傳感器的跟蹤轉(zhuǎn)子與電動(dòng)機(jī)轉(zhuǎn)軸相鏈接。
圖2.1 無刷直流電動(dòng)機(jī)的組成原理圖
定子繞組的某一相通電時(shí),該電流與轉(zhuǎn)子永久磁鐵的磁極產(chǎn)生的磁場(chǎng)相互作用,從而產(chǎn)生轉(zhuǎn)矩,驅(qū)動(dòng)轉(zhuǎn)子旋轉(zhuǎn);再由位置傳感器將轉(zhuǎn)子磁極位置信號(hào)變換成電信號(hào),去控制電子開關(guān)線路,從而使定子各相繞組按一定順序?qū)�,定子相電流隨轉(zhuǎn)子位置的變化而按一定的順序換相。由于電子開關(guān)線路的導(dǎo)通次序是與轉(zhuǎn)子轉(zhuǎn)角同步的,因而起到了機(jī)械換向器的換向作用。
因此,所謂的無刷直流電動(dòng)機(jī),就其基本結(jié)構(gòu)而言,可以認(rèn)為是一臺(tái)由電子開關(guān)線路、永磁同步電動(dòng)機(jī)本體以及轉(zhuǎn)子磁極位置傳感器三者共同組成的“電子電動(dòng)機(jī)系統(tǒng)”。其原理框圖如圖2.2所示。
圖2.2 無刷直流電動(dòng)機(jī)的原理框圖
無刷直流電動(dòng)機(jī)中的電子開關(guān)線路是用來控制電動(dòng)機(jī)定子各相繞組的通電順序和時(shí)間的,主要由功率邏輯開關(guān)單元和位置傳感器信號(hào)處理單元兩部分組成。功率邏輯開關(guān)單元是控制電路的核心,其功能是將電源的功率以一定的邏輯關(guān)系分配給電動(dòng)機(jī)定子的各相繞組,以使電動(dòng)機(jī)產(chǎn)生持續(xù)不斷的轉(zhuǎn)矩。而各相繞組的導(dǎo)通順序和時(shí)間主要取決于來自轉(zhuǎn)子位置傳感器的信號(hào)。但位置傳感器產(chǎn)生的信號(hào)要經(jīng)過一定的邏輯處理后去控制功率開關(guān)。綜上所述,組成無刷直流電動(dòng)機(jī)的主要部件如圖2.3所示[17]。
圖2.3 無刷直流電動(dòng)機(jī)的組成框圖
基本工作原理直流電動(dòng)機(jī)的結(jié)構(gòu)歷來都是電樞為轉(zhuǎn)子,磁鐵為定子,在氣隙中產(chǎn)生勵(lì)磁磁場(chǎng),其電樞通電后產(chǎn)生感應(yīng)磁場(chǎng)。由于電刷的換向作用,在直流電動(dòng)機(jī)的運(yùn)行過程中,這兩個(gè)磁場(chǎng)的方向始終保持垂直,從而產(chǎn)生最大電磁轉(zhuǎn)矩,驅(qū)動(dòng)電動(dòng)機(jī)不停運(yùn)轉(zhuǎn)。同時(shí),由于這兩個(gè)磁場(chǎng)間互為正交,理論上沒有耦合作用,可以獨(dú)立對(duì)電樞電流進(jìn)行控制來調(diào)節(jié)電動(dòng)機(jī)的運(yùn)動(dòng)速度,這是十分方便的。
在無刷直流電動(dòng)機(jī)的情況下,為了實(shí)現(xiàn)無刷換向,首先要做的是把一般直流電動(dòng)機(jī)的電樞繞組安放在定子上,把永久磁鐵安放在轉(zhuǎn)子上,這恰好與傳統(tǒng)的直流電動(dòng)機(jī)機(jī)構(gòu)相反。但是僅僅這樣做還是不行的,因?yàn)橛靡话愕闹绷麟娫唇o定子上的各相繞組供電,只能產(chǎn)生固定磁場(chǎng),它不能與運(yùn)動(dòng)中的轉(zhuǎn)子磁鐵產(chǎn)生的永久磁場(chǎng)相互作用,以產(chǎn)生單一方向的轉(zhuǎn)矩驅(qū)動(dòng)轉(zhuǎn)子轉(zhuǎn)動(dòng)。所以,無刷直流電動(dòng)機(jī)除了由定子和轉(zhuǎn)子組成的電機(jī)本體之外,還要有位置傳感器、控制電路以及功率邏輯開關(guān)共同組成的換相裝置,使得無刷直流電動(dòng)機(jī)在運(yùn)行過程中,定子繞組所產(chǎn)生的磁場(chǎng)和在轉(zhuǎn)動(dòng)中轉(zhuǎn)子磁鐵所產(chǎn)生的永久磁場(chǎng),在空間始終保持在90°左右的電角度[17]。
一般的永磁式直流電動(dòng)機(jī)的定子由永久磁鋼組成,其主要作用是在電動(dòng)機(jī)氣隙中建立磁場(chǎng),其電樞繞組通電后產(chǎn)生電樞反應(yīng)磁場(chǎng),由于電力電子逆變器供給電樞繞組的電流并不是正弦波,而是120°的方波,因而三相合成磁動(dòng)勢(shì)不是恒速旋轉(zhuǎn)的,而是跳躍式的步進(jìn)磁動(dòng)勢(shì),它和恒速旋轉(zhuǎn)的轉(zhuǎn)子磁動(dòng)勢(shì)產(chǎn)生的轉(zhuǎn)矩除了平均轉(zhuǎn)矩之外,還有脈動(dòng)分量[18]。由于電力電子逆變器的換向作用,使得這兩個(gè)磁場(chǎng)的方向在電動(dòng)機(jī)運(yùn)動(dòng)的過程中始終保持一定的角度,從而產(chǎn)生最大平均轉(zhuǎn)矩而驅(qū)動(dòng)電動(dòng)機(jī)不停地運(yùn)轉(zhuǎn),與直流有刷電動(dòng)機(jī)不同,無刷直流電動(dòng)機(jī)的電樞轉(zhuǎn)一圈,定子繞組只換相6次,每個(gè)極換相三次,相當(dāng)于只有三個(gè)換向片的直流電動(dòng)機(jī)。
電子換向逆變器主電路如圖2.4所示,從AA’,BB’,CC’代表無刷直流電動(dòng)機(jī)的三相定子繞組,采用Y型連結(jié),逆變器為兩兩通電方式,120°導(dǎo)電型。首先假設(shè)轉(zhuǎn)子處于圖2.5(a)的位置,若此時(shí)使V3,V4導(dǎo)通,則電流從B端流入,A端流出,定子磁動(dòng)勢(shì)為Fa,如圖2.5所示,在Fa的作用下,轉(zhuǎn)子將順時(shí)針旋轉(zhuǎn),轉(zhuǎn)到圖2.5(b)的位置時(shí),如果使V4,V5導(dǎo)通,則電流由C端流入,A端流出,定子磁動(dòng)勢(shì)為Fb,在Fb的作用下,轉(zhuǎn)子將繼續(xù)順時(shí)針旋轉(zhuǎn),依次類推,如果每隔60個(gè)電角度順序使V5和V6,V1和V6,V1和V2,V3和V2兩兩導(dǎo)通,即可使定子磁動(dòng)勢(shì)分別如圖2.5(c)、圖2.5(d)、圖2.5(e)圖2.5(f)所示,從而形成旋轉(zhuǎn)磁動(dòng)勢(shì),在這個(gè)磁動(dòng)勢(shì)的作用下,轉(zhuǎn)子也會(huì)隨之旋轉(zhuǎn),如果讓開關(guān)管反復(fù)按上述規(guī)律導(dǎo)通,即可使轉(zhuǎn)子持續(xù)旋轉(zhuǎn)下去,且定子磁動(dòng)勢(shì)總是超前于轉(zhuǎn)子磁極軸線角度60°-120°之間。其各相繞組導(dǎo)通示意圖如圖2.6所示。
圖2.4 逆變器主電路
圖2.5 無刷直流電動(dòng)機(jī)的運(yùn)行原理圖
圖2.6 各相繞組導(dǎo)通示意圖
由上述的分析可見,要使無刷直流電動(dòng)機(jī)正確的換相運(yùn)行,必須知道圖2.5所示的六個(gè)轉(zhuǎn)子關(guān)鍵位置,六個(gè)轉(zhuǎn)子關(guān)鍵位置即對(duì)應(yīng)著無刷直流電動(dòng)機(jī)的反電動(dòng)勢(shì)的過零點(diǎn)后的30個(gè)電角度處。如果是有位置傳感器無刷直流電動(dòng)機(jī),則可以通過傳感器來直接獲得轉(zhuǎn)子的六個(gè)轉(zhuǎn)子關(guān)鍵位置的信息。目前在無刷直流電動(dòng)機(jī)中常用的位置傳感器主要有以下幾種:①霍爾效應(yīng)的磁敏式開關(guān)元件;②發(fā)光二極管和光敏晶體管的光電變換開關(guān)元件;③電磁感應(yīng)式位置傳感元件。[17]如果是無位置傳感器無刷直流電動(dòng)機(jī),則需要通過其他方法,例如利用無刷直流電動(dòng)機(jī)的三相定子繞組的反電勢(shì),直接或間接的獲得轉(zhuǎn)子位置信息[19]。
無刷直流電機(jī)的控制原理有位置傳感器BLDCM控制原理有位置傳感器的無刷直流電機(jī)的電流換向主要是通過位置傳感器測(cè)得轉(zhuǎn)子位置,確定功率開關(guān)器件的導(dǎo)通或關(guān)閉,其結(jié)構(gòu)原理圖如圖2.7所示,位置傳感器是由六只光電器件P1,P1’,P2,P2’,P3,P3’組成,位置各相差60°,均勻分布在電機(jī)的一端,借助安裝在電機(jī)軸上的旋轉(zhuǎn)遮光板或稱截光器的作用,使得從光源依次照射在各個(gè)光電器上,并依照某光電器是否被照射到光線來判斷轉(zhuǎn)子的位置。當(dāng)某光電器被光照射到時(shí),它所連接的功率開關(guān)器件就導(dǎo)通,當(dāng)某光電器沒有被光照射到時(shí),它所連接的功率開關(guān)器件就關(guān)閉。
如圖2.7中旋轉(zhuǎn)遮光板所在位置,光電器P2,P1被光照射到,它所連接的V3,V4導(dǎo)通,其所對(duì)應(yīng)的轉(zhuǎn)子位置和繞組產(chǎn)生的磁動(dòng)勢(shì)Fa如圖2.5(a)所示;當(dāng)電機(jī)按順時(shí)針方向運(yùn)轉(zhuǎn),光電器依次是P1’,P3,P3,P2’,P2’,P1,P1,P3’,P2被光照射到使得它們所對(duì)應(yīng)連接的功率開關(guān)器件V4,V5,V5,V6,V6,V1,V1,V2,V2,V3依次導(dǎo)通,其所對(duì)應(yīng)的轉(zhuǎn)子位置和繞組產(chǎn)生的磁動(dòng)勢(shì)Fa分別如圖2.5(b),圖2.5(c),圖2.5(d),圖2.5(e),圖2.5(f),所示,從而實(shí)現(xiàn)無刷直流電機(jī)的換向。
圖2.7 有位置傳感器無刷電機(jī)的原理圖
無位置傳感器BLDCM控制原理有位置傳感器的無刷直流電機(jī)的換向主要靠位置傳感器檢測(cè)轉(zhuǎn)子的位置,確定功率開關(guān)器件的導(dǎo)通順序來實(shí)現(xiàn)的,由于安裝位置傳感器增大了電機(jī)的體積,同時(shí)安裝位置傳感器的位置精度要求比較高,帶來安裝的難度因此人們?cè)谘芯窟^程中發(fā)現(xiàn),可利用電子線路替代位置傳感器檢測(cè)電機(jī)在運(yùn)行過程中產(chǎn)生的反電勢(shì)來確定電機(jī)轉(zhuǎn)子的位置,實(shí)現(xiàn)換向。從而出現(xiàn)了無位置傳感器的無刷直流電機(jī),其原理框圖如圖2.8所示。
由圖2.5無刷直流電動(dòng)機(jī)的運(yùn)行原理圖可知,當(dāng)電機(jī)在運(yùn)行過程中,總有一相繞組沒有導(dǎo)通,此時(shí)可以在該相繞組的端口檢測(cè)到該繞組產(chǎn)生的反電勢(shì),該反電勢(shì)在60°的電角度是連續(xù)的,由于電機(jī)的規(guī)格、制造工藝的差異,導(dǎo)致相同電角度的反電勢(shì)值是不同,若要通過檢測(cè)反電勢(shì)的數(shù)值來確定轉(zhuǎn)子的位置,難度極大,因此必須找到該反電勢(shì)與轉(zhuǎn)子位置的關(guān)系,就能確定轉(zhuǎn)子的位置。從圖2.9中可以看出,反電勢(shì)在的電角度過程中總有一次經(jīng)過坐標(biāo)軸(過零點(diǎn)),而此點(diǎn)的電角度和下一次換向點(diǎn)的電角度正好相差30°,故可以通過檢測(cè)反電勢(shì)過零點(diǎn),再延時(shí)30個(gè)電角度換向。
以圖2.5為例,假設(shè)轉(zhuǎn)子在圖2.5(a)所示的位置為0°電角度,V3,V4導(dǎo)通,A-A’相、B-B’相有外加電壓,C-C’相的產(chǎn)生的反電勢(shì)如圖2.9所示;轉(zhuǎn)子旋轉(zhuǎn)30個(gè)電角度后和磁動(dòng)勢(shì)Fa相垂直,C-C’相產(chǎn)生的反電勢(shì)正好過零點(diǎn);當(dāng)轉(zhuǎn)子再旋轉(zhuǎn)30個(gè)電角度時(shí)(即檢測(cè)到反電勢(shì)過零點(diǎn)再延時(shí)30個(gè)電角度),到圖2.5(b)所示的位置,此時(shí)使V4,V5導(dǎo)通,V3關(guān)閉,讓A-A’相、C-C’相有外加電壓,B-B’相沒有外加電壓,可以檢測(cè)B-B’相產(chǎn)生的反電勢(shì)過過零點(diǎn)再延時(shí)30個(gè)電角度,讓V5,V6導(dǎo)通,V4關(guān)閉,依此類推,可以實(shí)現(xiàn)無位置傳感器無刷直流電機(jī)的換向。
圖2.8 無位置傳感器的無刷直流電機(jī)原理框圖
圖2.9 電機(jī)運(yùn)行時(shí)各相產(chǎn)生的反電勢(shì)示意圖
無刷直流電機(jī)控制技術(shù)研究現(xiàn)狀近年來,國(guó)內(nèi)外學(xué)者對(duì)無位置傳感器無刷直流電機(jī)控制技術(shù)的研究主要集中在以下幾個(gè)方面:
無位置傳感器無刷直流電機(jī)的起動(dòng)無刷直流電機(jī)在靜止或低速時(shí)反電動(dòng)勢(shì)為零或很小,很難用來判斷電機(jī)轉(zhuǎn)子磁極的位置,因此必須利用其它方法對(duì)電機(jī)轉(zhuǎn)子進(jìn)行定位和起動(dòng)控制。
1) 三段式起動(dòng)方法 最常用的起動(dòng)方法是“三段式”起動(dòng)方法 [20~23],它分為“轉(zhuǎn)子定位”、“他控同步加速運(yùn)行”、“自控同步運(yùn)行”三個(gè)階段。這種方法的關(guān)鍵在于“他控同步”階段到“自控同步”階段的切換,這關(guān)系到無刷直流電機(jī)起動(dòng)的成敗。針對(duì)這一問題,文獻(xiàn)[24~25]提出了“自尋最佳點(diǎn)切換法”。三段式起動(dòng)過程的成功實(shí)現(xiàn),受電機(jī)負(fù)載轉(zhuǎn)矩、外施電壓、加速曲線及轉(zhuǎn)動(dòng)慣量等諸多因素影響,具體表現(xiàn)為:在輕載、小慣量負(fù)載條件下,三段式起動(dòng)過程一般能成功實(shí)現(xiàn),但在切換階段往往運(yùn)行不平穩(wěn);當(dāng)電機(jī)重載運(yùn)行時(shí),切換階段往往會(huì)發(fā)生失步而導(dǎo)致起動(dòng)失敗;當(dāng)“反電動(dòng)勢(shì)信號(hào)”與外同步信號(hào)相位差過大時(shí),三段式起動(dòng)可導(dǎo)致電機(jī)失步,即使能避免失步,也必然導(dǎo)致切換時(shí)電機(jī)轉(zhuǎn)矩較小,易受干擾;通過優(yōu)化加速曲線,三段式起動(dòng)能保證電機(jī)順利起動(dòng),但是對(duì)不同電機(jī)、不同負(fù)載,所對(duì)應(yīng)的優(yōu)化加速曲線不一樣,這樣導(dǎo)致通用性不強(qiáng),控制過程也比較繁瑣,涉及到的數(shù)據(jù)多,實(shí)現(xiàn)起來很不方便。
2) 預(yù)定位起動(dòng)法 預(yù)定位起動(dòng)方法也分為“轉(zhuǎn)子定位”、“他控同步加速運(yùn)行”、“自控同步運(yùn)行”三個(gè)階段。在起動(dòng)階段,按照所需的轉(zhuǎn)向依次改變逆變器功率器件的觸發(fā)組合狀態(tài),同時(shí)用“端電壓法”檢測(cè)各觸發(fā)組合狀態(tài)所對(duì)應(yīng)的開路相的反電勢(shì)過零點(diǎn),并通過提高PWM占空比逐漸提高電機(jī)的外施電壓。各觸發(fā)組合狀態(tài)的持續(xù)時(shí)間最大值保持不變,設(shè)為T0,與自控式狀態(tài)一樣,用計(jì)數(shù)器進(jìn)行計(jì)時(shí),換流時(shí)刻固定在T0/ 2 處。換流后對(duì)開路相的反電動(dòng)勢(shì)過零點(diǎn)進(jìn)行檢測(cè),只要檢測(cè)到開路相的反電動(dòng)勢(shì)過零點(diǎn),計(jì)數(shù)器就重新復(fù)位,到T0/ 2 后再換流,這樣依次進(jìn)行,最后,如果連續(xù)N次檢測(cè)到開路相的反電動(dòng)勢(shì)過零點(diǎn),就切換到自控式狀態(tài)。這種方法的優(yōu)點(diǎn)是:繞組中具有時(shí)序固定不變的反電動(dòng)勢(shì)信號(hào),從而可以保證電機(jī)有一個(gè)確定的轉(zhuǎn)向,實(shí)現(xiàn)電機(jī)的正確起動(dòng),并且起動(dòng)可靠,實(shí)現(xiàn)簡(jiǎn)單、方便,對(duì)于任意轉(zhuǎn)子初始位置角,電機(jī)都能可靠實(shí)現(xiàn)預(yù)定位,保證電機(jī)從零速度起動(dòng)并快速切換到無傳感器閉環(huán)方式運(yùn)行。缺點(diǎn)是:調(diào)試中T0和PWM的占空比的選擇,以及對(duì)加速過程中占空比的變化速度的控制比較復(fù)雜,另外對(duì)切換時(shí)間要求較嚴(yán),當(dāng)電機(jī)慣量不同或帶一定負(fù)載起動(dòng)時(shí)切換時(shí)間需要調(diào)整,否則可能造成起動(dòng)失敗或電機(jī)反轉(zhuǎn)現(xiàn)象,因此一般適用于電機(jī)空載起動(dòng)[23]。
3) 脈沖檢測(cè)起動(dòng)法 這是一種采用檢測(cè)脈沖進(jìn)行轉(zhuǎn)子定位的起動(dòng)方法。盡管它也分為轉(zhuǎn)子定位、加速與切換三個(gè)過程,但定位與加速階段與三段式起動(dòng)的方法是不同。轉(zhuǎn)子定位時(shí)給電機(jī)的定子繞組按一定的規(guī)則施加6個(gè)短時(shí)檢測(cè)脈沖,然后成對(duì)比較相應(yīng)的脈沖電流峰值,通過檢查預(yù)先定義的轉(zhuǎn)子位置代碼表,得出轉(zhuǎn)子位置及隨后加速時(shí)將要通電的相序。加速過程中,每次當(dāng)加速脈沖結(jié)束后,再一次發(fā)出6個(gè)檢測(cè)脈沖確定轉(zhuǎn)子的位置,然后再確定將要通電的相序,不斷重復(fù)檢測(cè)—加速—檢測(cè)—加速的過程,直到電機(jī)轉(zhuǎn)速高到可以用反電動(dòng)勢(shì)法確定轉(zhuǎn)子的位置時(shí)為止。這種起動(dòng)方式的優(yōu)點(diǎn)是轉(zhuǎn)子定位時(shí)能保證在起動(dòng)時(shí)不會(huì)產(chǎn)生振蕩,加速時(shí)控制簡(jiǎn)單、易于實(shí)現(xiàn)。缺點(diǎn)是這種起動(dòng)方法是建立在鐵心電感磁飽和基礎(chǔ)之上的,如果無刷直流電機(jī)的定子繞組不是鐵心線圈,比如是空心線圈或電機(jī)轉(zhuǎn)子本身是一個(gè)標(biāo)準(zhǔn)的圓柱狀永磁體,則該方法的可靠性將降低。因?yàn)槭褂眠@種方法很難準(zhǔn)確地區(qū)分出6個(gè)電流脈沖峰值的大小,從而無法實(shí)現(xiàn)轉(zhuǎn)子的定位,也無從實(shí)現(xiàn)電機(jī)的可靠起動(dòng)[23~26]。
4) 外部硬件電路起動(dòng)方法 文獻(xiàn)[27]提出了一種硬件電路起動(dòng)的方法,這是一種升頻升壓的起動(dòng)方式。起動(dòng)時(shí)也能獲得預(yù)定的起動(dòng)效果,但附加的外部起動(dòng)電路加大了電機(jī)的尺寸,對(duì)于較多應(yīng)用于微型電機(jī)中的無刷直流電機(jī)是個(gè)不小的障礙。
無位置傳感器無刷直流電機(jī)轉(zhuǎn)子位置的檢測(cè)無位置傳感器的無刷直流電機(jī)的位置估計(jì)方法可以從5個(gè)方面來論述:反電動(dòng)勢(shì)法、電流法、狀態(tài)觀測(cè)器法、人工智能法和磁鏈法。前3種方法的研究相對(duì)比較成熟,且都已得到一定程度的應(yīng)用,而用人工智能方法和磁鏈函數(shù)法獲得轉(zhuǎn)子位置的研究則剛剛處于起步階段[28]。
1) 反電動(dòng)勢(shì)法 檢測(cè)反電動(dòng)勢(shì)過零點(diǎn)或利用反電動(dòng)勢(shì)直接檢測(cè)換相點(diǎn)的方法是最常用的位置檢測(cè)方法。其實(shí)現(xiàn)拓?fù)潆娐范嗖捎谩岸穗妷悍ā焙汀跋嚯妷悍ā�,即在一定的調(diào)制方式下利用無刷直流電機(jī)的端電壓或相電壓檢測(cè)反電動(dòng)勢(shì)過零點(diǎn)或換相點(diǎn)來實(shí)施換相控制。反電動(dòng)勢(shì)過零點(diǎn)方法又分為直接反電動(dòng)勢(shì)法、反電動(dòng)勢(shì)積分法和定子三次諧波法等幾種。直接反電動(dòng)勢(shì)法是通過測(cè)量三相繞組的端點(diǎn)電位及與中性點(diǎn)間的電壓來實(shí)現(xiàn)的,當(dāng)某端點(diǎn)電位與中性點(diǎn)電位相等時(shí),則認(rèn)為此刻該相反電動(dòng)勢(shì)過零,再延時(shí)30個(gè)電角度去觸發(fā)功率開關(guān)管進(jìn)行換向。反電動(dòng)勢(shì)積分法是根據(jù)不導(dǎo)通相反電動(dòng)勢(shì)的積分信號(hào)來獲取轉(zhuǎn)子位置信息的。它是從不導(dǎo)通相反電動(dòng)勢(shì)過零時(shí)開始積分,對(duì)應(yīng)于換向瞬時(shí)設(shè)置一個(gè)門限,用來截止積分信號(hào)。反電動(dòng)勢(shì)和轉(zhuǎn)速之間存在線性關(guān)系,反電動(dòng)勢(shì)沿斜線變化的斜率和轉(zhuǎn)子速度密切相關(guān),在整個(gè)速度運(yùn)行范圍內(nèi),積分器的門限值應(yīng)保持不變,一旦達(dá)到積分門限,復(fù)位信號(hào)立即將積分器置零,為了避免積分器由電機(jī)啟動(dòng)開始積分,復(fù)位信號(hào)應(yīng)保持足夠長(zhǎng)的時(shí)間來保證在電流降為零之后起動(dòng)積分器。這種方法對(duì)于開關(guān)噪聲不敏感,積分門限可以根據(jù)轉(zhuǎn)速信號(hào)自動(dòng)調(diào)節(jié)。無刷直流電機(jī)的反電動(dòng)勢(shì)波形為梯形波,它包含了3次諧波分量。對(duì)此分量進(jìn)行積分便得到轉(zhuǎn)子磁通的3次諧波信號(hào),而轉(zhuǎn)子磁鏈的3次諧波分量的過零點(diǎn)就對(duì)應(yīng)著無刷直流電機(jī)的換向時(shí)刻,因此可以根據(jù)這個(gè)過零點(diǎn)信號(hào)進(jìn)行換向控制[29~30]。
2) 電流法 由于端電壓檢測(cè)受速度變化、電機(jī)換向、低通濾波以及定子電阻電感存在的干擾,使得依賴端電壓的測(cè)量來估算轉(zhuǎn)子位置信號(hào)的準(zhǔn)確性和精確性都受到不同程度的影響。而這些因素對(duì)電流的影響相對(duì)較小,與之對(duì)應(yīng)出現(xiàn)了根據(jù)電機(jī)相電流信號(hào)來估計(jì)轉(zhuǎn)子位置信息,進(jìn)而控制無刷直流電機(jī)的換向方法,如直接電流檢測(cè)法、電流變化率檢測(cè)法和續(xù)流二級(jí)管法等。這種控制方法的精確性受處理器速度和功率管開關(guān)頻率的限制,容易造成電流和反電動(dòng)勢(shì)不同相位運(yùn)行,導(dǎo)致電機(jī)故障[31]。
3) 狀態(tài)觀測(cè)器法 用卡爾曼濾波器估計(jì)轉(zhuǎn)子位置和轉(zhuǎn)子速度的方法最早是由 M.Schroedl于1988年提出的。根據(jù)卡爾曼狀態(tài)方程,應(yīng)用電機(jī)測(cè)量電壓和測(cè)量電流就可得到轉(zhuǎn)子位置的初步估測(cè)。根據(jù)這種方法來預(yù)測(cè)轉(zhuǎn)子位置和轉(zhuǎn)子速度時(shí),其運(yùn)行范圍主要受電壓、電流傳感器的測(cè)量精度來確定。
4) 人工智能方法 人工智能技術(shù)具備一定的智能行為,能夠產(chǎn)生合適的求解問題的響應(yīng)。隨著人工智能技術(shù)的蓬勃發(fā)展和研究的深入,很多學(xué)者已經(jīng)嘗試著將人工智能的方法應(yīng)用于電機(jī)控制中,神經(jīng)網(wǎng)絡(luò)是人工智能控制的一個(gè)方向,它具有很強(qiáng)的自適應(yīng)性和自學(xué)習(xí)能力,因此將神經(jīng)網(wǎng)絡(luò)技術(shù)引入到無刷直流電機(jī)控制中進(jìn)行轉(zhuǎn)速估算和位置估算是很自然的一步。用這種方法預(yù)測(cè)轉(zhuǎn)子位置時(shí),運(yùn)行范圍主要受電壓和電流的檢測(cè)精度影響。
5) 磁鏈法 文獻(xiàn)[32]提出建立不依賴于轉(zhuǎn)子速度但是和轉(zhuǎn)子磁鏈直接相關(guān)的磁鏈函數(shù)來獲得轉(zhuǎn)子位置的信號(hào)。該函數(shù)在每個(gè)周期內(nèi)對(duì)應(yīng)6個(gè)峰值,通過檢測(cè)峰值來獲得轉(zhuǎn)子的換相信號(hào),可保證電機(jī)在 470~35000r/min范圍內(nèi)有效運(yùn)行。文獻(xiàn)[33]又介紹了一種新的檢測(cè)轉(zhuǎn)子位置的方法,它是在永磁轉(zhuǎn)子的表面粘貼一些非磁性材料,利用定子繞組高頻開關(guān)工作時(shí)非磁性材料的渦流效應(yīng),使開路相電壓的大小隨轉(zhuǎn)子位置角發(fā)生變化,從而可通過檢測(cè)開路相電壓來判斷轉(zhuǎn)子位置。這種方法完全排除了使用反電勢(shì),因而能保證起動(dòng)和低速運(yùn)行時(shí)可靠地工作。
無刷直流電機(jī)轉(zhuǎn)矩脈動(dòng)抑制對(duì)方波型無刷直流電動(dòng)機(jī)換相轉(zhuǎn)矩脈動(dòng)的研究,主要集中在控制換相期間三相電流的變化規(guī)律。針對(duì)無刷直流電機(jī)轉(zhuǎn)矩脈動(dòng)的問題,國(guó)內(nèi)外學(xué)者也都紛紛提出了不同的抑制措施。文獻(xiàn)[34]介紹的重疊換相法和PWM斬波控制法是通過改變換相時(shí)刻繞組的導(dǎo)通規(guī)律來調(diào)整電流的上升和下降斜率,從而達(dá)到轉(zhuǎn)矩脈動(dòng)抑制的目的。文獻(xiàn)[35~38]研究了4倍的反電動(dòng)勢(shì)電壓和母線電壓的比值與轉(zhuǎn)矩脈動(dòng)的規(guī)律,研究結(jié)果顯示,在換相時(shí)采用的占空比為反電動(dòng)勢(shì)電壓和母線電壓比值的4倍時(shí)就可以保證非換相的電流保持不變,從而減少轉(zhuǎn)矩脈動(dòng),但是這種方法對(duì)占空比的要求比較嚴(yán)格,難以保證在整個(gè)調(diào)速范圍內(nèi)維持這種關(guān)系。為此,文獻(xiàn)[39]提出了一種新的換相電流預(yù)測(cè)控制方法,該方法是通過使用前一次的電流值和占空比來預(yù)測(cè)下一時(shí)刻的電流值,再采用合適的方法調(diào)節(jié)電流達(dá)到減少轉(zhuǎn)矩紋波的目的,但是這種方法計(jì)算繁瑣,給軟件設(shè)計(jì)工作帶來不便。對(duì)于換相后不導(dǎo)通相的電流波動(dòng)規(guī)律,文獻(xiàn)[40]則做了詳細(xì)地分析并給出了仿真波形加以驗(yàn)證,但并沒有給出實(shí)測(cè)波形,也提出電流波動(dòng)抑制的措施。
無刷直流電機(jī)的控制策略問題永磁無刷直流電動(dòng)機(jī)是典型的機(jī)電一體化產(chǎn)品。傳統(tǒng)的控制策略是采用經(jīng)典的 PID 控制,而采用先進(jìn)的控制策略則可以進(jìn)一步提高系統(tǒng)的整體性能。對(duì)此,國(guó)內(nèi)外文獻(xiàn)中也提出了一系列新的控制策略,如模糊 PID 控制策略[41],自適應(yīng)的模糊神經(jīng)控制策略[42],模型參考自適應(yīng)控制策略[43~44],單神經(jīng)元控制策略[45~46]�?傊�,先進(jìn)的控制策略主要集中在非線性建模、自學(xué)習(xí)方法的選擇及局部控制等方面,其實(shí)現(xiàn)必然要通過微機(jī)或高性能的浮點(diǎn)處理器,成本比較高。
無刷直流電機(jī)的運(yùn)行特性無刷直流電機(jī)的運(yùn)行特性是指電機(jī)在起動(dòng)、正常工作和調(diào)速等情況下,電機(jī)外部各可測(cè)物理量之間的關(guān)系。
電機(jī)是一種輸入電功率、輸出機(jī)械功率的原動(dòng)機(jī)械。因此,我們最關(guān)心的是它的轉(zhuǎn)矩、轉(zhuǎn)速,以及轉(zhuǎn)矩和轉(zhuǎn)速隨輸入電壓、電流、負(fù)載變化而變化的規(guī)律。據(jù)此,電機(jī)的運(yùn)行特性可分為起動(dòng)特性、工作特性、機(jī)械特性和調(diào)速特性。
討論各種電機(jī)的運(yùn)行特性時(shí),一般都從轉(zhuǎn)速公式、電動(dòng)勢(shì)平衡方程式、轉(zhuǎn)矩公式和轉(zhuǎn)矩平衡方程式出發(fā)。
對(duì)于無刷直流電機(jī),其電動(dòng)勢(shì)平衡方程式為

(2.1)
式中,

是電源電壓(V);

是電樞繞組反電動(dòng)勢(shì)(V);

是平均電樞電流(A);

是電樞繞組的平均電阻(Ω);

是功率晶體管飽和管壓降(V);對(duì)于橋式換相線路為

。
對(duì)于不同的電樞繞組形式和換相線路形式,電樞繞組反電動(dòng)勢(shì)有不同的等效表達(dá)式,但不論哪一種繞組和線路結(jié)構(gòu),均可表示為

(2.2)
式中,

是電機(jī)轉(zhuǎn)速(r/min);

是反電動(dòng)勢(shì)系數(shù)(V/r/min)。
由式(2.1)、式(2.2)可知:

(2.3)
在轉(zhuǎn)速不變時(shí),轉(zhuǎn)矩平衡方程式為

(2.4)
式中,

是輸出轉(zhuǎn)矩(N·m),

是摩擦轉(zhuǎn)矩(N·m),

是電磁轉(zhuǎn)矩(N·m)。這里,

(2.5)

為轉(zhuǎn)矩系數(shù)(N·m/A)。
在轉(zhuǎn)速變化的情況下,則

(2.6)
式中,

是轉(zhuǎn)動(dòng)部分(包括電機(jī)本體轉(zhuǎn)子及負(fù)載)的轉(zhuǎn)動(dòng)慣量(kg·m2);

是轉(zhuǎn)子的機(jī)械角速度(rad/s)。
下面從這些基本公式出發(fā),來討論無刷直流電機(jī)的各種運(yùn)行特性。
起動(dòng)特性由式(2.1)~式(2.6)可知,電機(jī)在起動(dòng)時(shí),由于反電動(dòng)勢(shì)為零,因此電樞電流(即起動(dòng)電流)為

(2.7)
其值可為正常工作電樞電流的幾倍到十幾倍,所以起動(dòng)電磁轉(zhuǎn)矩很大,電機(jī)可以很快起動(dòng),并能帶負(fù)載直接起動(dòng)。隨著轉(zhuǎn)子的加速,反電動(dòng)勢(shì)

增加,電磁轉(zhuǎn)矩降低,加速轉(zhuǎn)矩也減小,最后進(jìn)入正常工作狀態(tài)。在空載起動(dòng)時(shí),電樞電流和轉(zhuǎn)速的變化如圖2.10所示。
圖2.10 空載起動(dòng)時(shí)電樞電流和轉(zhuǎn)速的變化
需要指出的是,無刷直流電機(jī)的起動(dòng)轉(zhuǎn)矩,除了與起動(dòng)電流有關(guān)外,還與轉(zhuǎn)子相對(duì)于電樞繞組的位置有關(guān)。轉(zhuǎn)子位置不同時(shí),起動(dòng)轉(zhuǎn)矩是不同的,這是因?yàn)樯厦嫠懻摰年P(guān)系式都是平均值間的關(guān)系。而實(shí)際上,由于電樞繞組產(chǎn)生的磁場(chǎng)是跳躍的,當(dāng)轉(zhuǎn)子所處位置不同時(shí),轉(zhuǎn)子磁場(chǎng)與電樞磁場(chǎng)之間的夾角在變化,因此所產(chǎn)生的電磁轉(zhuǎn)矩也是變化的。這個(gè)變化量要比有刷直流電機(jī)因電刷接觸壓降和電刷所短路元件數(shù)的變化而造成的起動(dòng)轉(zhuǎn)矩的變化大得多。
工作特性在無刷直流電機(jī)中,工作特性主要包括如下幾方面的關(guān)系:電樞電流和電機(jī)效率與輸出轉(zhuǎn)矩之間的關(guān)系。
1)電樞電流和輸出轉(zhuǎn)矩的關(guān)系 由式(2.5)可知,電樞電流隨著輸出轉(zhuǎn)矩的增加而增加,如圖2.11所示。
2)電機(jī)效率和輸出轉(zhuǎn)矩之間的關(guān)系 這里只考察電機(jī)部分的效率與輸出轉(zhuǎn)矩的關(guān)系。電機(jī)效率

(2.8)
式中,

為電機(jī)的總損耗;

為電機(jī)的輸入功率,

;

為輸出功率,

。

,即沒有輸出轉(zhuǎn)矩時(shí),電機(jī)的效率為零。隨著輸出轉(zhuǎn)矩的增加,電機(jī)的效率增加。當(dāng)電機(jī)的可變損耗等于不變損耗時(shí),電機(jī)效率達(dá)到最大值。隨后,效率又開始下降,如圖2.10所示。
圖2.11 負(fù)載和效率特性曲線
機(jī)械特性和調(diào)速特性機(jī)械特性是指外加電源電壓恒定時(shí),電機(jī)轉(zhuǎn)速和電磁轉(zhuǎn)矩之間的關(guān)系。由式(2.1)~式(2.3)可知

(2.9)

(2.10)
當(dāng)不計(jì)

的變化和電樞反應(yīng)的影響時(shí),式(2.9)等號(hào)右邊的第一項(xiàng)是常數(shù),所以電磁轉(zhuǎn)矩隨轉(zhuǎn)速的減小而線性增加,如圖2.12所示。
當(dāng)轉(zhuǎn)速為零時(shí),即為起動(dòng)電磁轉(zhuǎn)矩。當(dāng)式(2.10)等號(hào)右邊兩項(xiàng)相等時(shí),電磁轉(zhuǎn)矩為零,此時(shí)的轉(zhuǎn)速即為理想空載轉(zhuǎn)速。實(shí)際上,由于電機(jī)損耗中可變部分及電樞反應(yīng)的影響,輸出轉(zhuǎn)矩會(huì)偏離直線變化。
由式(2.10)可知,在同一轉(zhuǎn)速下改變電源電壓,可以容易地改變輸出轉(zhuǎn)矩或在同一負(fù)載下改變轉(zhuǎn)速。所以,無刷直流電機(jī)的調(diào)速性能很好,可以通過改變電源電壓實(shí)習(xí)平滑調(diào)速,但此時(shí)電子換相線路及其他控制線路的電源電壓仍應(yīng)保持不變�?傊瑹o刷直流電機(jī)的運(yùn)行特性與有刷直流電機(jī)極為相似,有著良好的伺服控制性能[47]。
圖2.12 機(jī)械特性曲線
無刷直流電動(dòng)機(jī)的數(shù)學(xué)模型永磁無刷直流電動(dòng)機(jī),定子三相交流繞組,轉(zhuǎn)子磁鋼布置采用徑向結(jié)構(gòu),釹鐵硼永磁體安裝在轉(zhuǎn)子表面,這種稀土永磁材料其相對(duì)導(dǎo)磁率近于空氣,在這種表面安裝磁極的轉(zhuǎn)子結(jié)構(gòu)中,永磁體可以看作氣隙的一部分,無凸極效應(yīng)的影響。在電機(jī)模型的建立時(shí),認(rèn)為電機(jī)的氣隙是均勻的[48]。
假設(shè):
1)磁路不飽和。
2)忽略高次空間磁勢(shì)諧波的影響。
3)忽略磁滯、渦流的影響。
記兩種導(dǎo)通模式總的持續(xù)時(shí)間即 1/6周期為1個(gè)導(dǎo)通區(qū)間,取轉(zhuǎn)子磁場(chǎng)在1個(gè)導(dǎo)通區(qū)間內(nèi)的中心位置為

的位置。
切換角

定義為:通電線圈的幾何中心線與

坐標(biāo)軸之間的夾角。
永磁體的磁通鏈在BLDCM的運(yùn)行中可以當(dāng)作常數(shù)

,定子磁鏈方程為:

(2.11)
定子電壓方程式為:

(2.12)
據(jù)假定有:
式中,

、

、

為定子三相磁通鏈,

、

、

為定子電流,

為定子繞組自感,

為定子繞組互感,

為轉(zhuǎn)子永磁體磁通鏈,

為轉(zhuǎn)子位置角,即轉(zhuǎn)子

軸和A相軸線的夾角。注意到任何時(shí)候都有:
把電流對(duì)時(shí)間的導(dǎo)數(shù)轉(zhuǎn)換為電流對(duì)角度的導(dǎo)數(shù),即

可得電壓方程式:

(2.13)
記:

(2.14)
電磁轉(zhuǎn)矩為:

(2.15)
記

為直流電源電壓,

為電源輸出電流,則電機(jī)輸入功率為

;電磁功率

。
利用電機(jī)中電參量的單相半波對(duì)稱性和三相的對(duì)稱性,可以把無刷直流電動(dòng)機(jī)的穩(wěn)態(tài)運(yùn)行求解過程歸結(jié)到一個(gè)導(dǎo)通區(qū)間內(nèi)求解,現(xiàn)只考慮

區(qū)間內(nèi)的情況。假定在

時(shí),電機(jī)C,B兩相導(dǎo)通,換相為A,B兩相導(dǎo)通。
在BLDCM的逆變器線路中,每個(gè)開關(guān)元件實(shí)際上都并有續(xù)流二極管(如圖2.4所示),在換相時(shí),線圈中的磁場(chǎng)能量通過二極管釋放。由于續(xù)流二極管的接入,使得換相并不是在瞬間完成,導(dǎo)致了換流重疊角的存在,這也就是換流重疊角產(chǎn)生的原因。在從C、B兩相通電轉(zhuǎn)換為A、B兩相通電的瞬間,C相內(nèi)尚有一點(diǎn)的電流,它必然要經(jīng)過線圈C、線圈B、T6、VD2釋放,直到流過二極管的電流為零,此時(shí)

。
在第一種導(dǎo)通模式,由于二極管的續(xù)流作用,此時(shí)A、B、C三相繞組都有電流通過(如圖2.13所示),此時(shí)電機(jī)端部約束條件是:
圖2.13 換流模式
又因?yàn)?img id="aimg_Gz7Ke" onclick="zoom(this, this.src, 0, 0, 0)" class="zoom" width="104" height="24" src="http://c.51hei.com/a/huq/a/a/8/163/163.130.jpg" border="0" alt="" />,所以有:
求得數(shù)學(xué)模型一為

:

(2.16)
在第二種導(dǎo)通模式(如圖2.14所示),只是A、B兩相通電時(shí),電機(jī)端部約束條件:
圖2.14 單流模式
求得數(shù)學(xué)模型二為

:

(2.17)
1
西京學(xué)院本科畢業(yè)論文(設(shè)計(jì))
電動(dòng)自行車控制器方案設(shè)計(jì)
電動(dòng)自行車控制系統(tǒng)的核心是電動(dòng)自行車控制器,它不僅要完成外部信號(hào)的處理,無刷直流電動(dòng)機(jī)驅(qū)動(dòng)信號(hào)的給定,更重要的是完成整個(gè)控制系統(tǒng)的控制策略。
一個(gè)完備的電動(dòng)自行車控制系統(tǒng),應(yīng)主要報(bào)告電源系統(tǒng)、轉(zhuǎn)把、剎把、安全系統(tǒng)、照明系統(tǒng)、信號(hào)系統(tǒng)、動(dòng)力系統(tǒng)等。電源系統(tǒng)主要滿足整個(gè)系統(tǒng)對(duì)能量的需求,轉(zhuǎn)把、剎把是用戶與控制器交流的橋梁,安全系統(tǒng)實(shí)現(xiàn)了電動(dòng)自行車的防盜功能,照明系統(tǒng)在可見度較低時(shí)給整個(gè)電動(dòng)自行車照明,信號(hào)系統(tǒng)一方面實(shí)現(xiàn)了用戶與控制器的交流,另一方面也給電動(dòng)自行車的安全提供了保障,動(dòng)力系統(tǒng)為電動(dòng)自行車的能量轉(zhuǎn)換部分,它將電能轉(zhuǎn)換為機(jī)械能,為電動(dòng)自行車提供了動(dòng)力�?刂葡到y(tǒng)的原理框圖如圖3.1所示。

圖3.1 控制系統(tǒng)原理框圖
各功能系統(tǒng)工作原理介紹調(diào)速轉(zhuǎn)把和制動(dòng)剎把工作原理1) 調(diào)速轉(zhuǎn)把工作原理
調(diào)速轉(zhuǎn)把是控制電動(dòng)自行車車速的基本器件,是控制器的調(diào)速指令信號(hào)輸入部件。控制器收到來自調(diào)速轉(zhuǎn)把得輸入信號(hào)后,根據(jù)輸入信號(hào)的參數(shù)控制電機(jī)的輸出功率,從而實(shí)現(xiàn)電動(dòng)自行車的調(diào)速功能。調(diào)速轉(zhuǎn)把實(shí)物圖如下圖圖3.2所示。
霍爾調(diào)速轉(zhuǎn)把輸出電壓的大小取決于霍爾元件周圍的磁場(chǎng)強(qiáng)度和極性�;魻栐潭ò惭b在右把手座中,在可轉(zhuǎn)動(dòng)的轉(zhuǎn)柄中固定安裝永磁鋼,轉(zhuǎn)動(dòng)轉(zhuǎn)把時(shí),手柄上的磁鐵會(huì)跟著轉(zhuǎn)動(dòng),這樣霍爾元件周圍的磁場(chǎng)強(qiáng)度和極性就發(fā)生了改變,霍爾元件輸出的電壓隨著磁場(chǎng)的改變而發(fā)生改變。目前市場(chǎng)上大部分轉(zhuǎn)把輸出的電壓信號(hào)為1.0-4.2V之間。
圖3.2 調(diào)速轉(zhuǎn)把實(shí)物圖
2)制動(dòng)剎把工作原理
制動(dòng)剎把在實(shí)施車輛制動(dòng)時(shí),首先給控制器一個(gè)制動(dòng)信號(hào),停止向電機(jī)提供驅(qū)動(dòng)力。制動(dòng)信號(hào)由機(jī)械觸點(diǎn)開關(guān)或霍爾開關(guān)電路產(chǎn)生。當(dāng)操作剎車制動(dòng)手柄時(shí),手柄動(dòng)作后制動(dòng)信號(hào)送到控制器中,控制器檢測(cè)到剎車信號(hào)后,無論調(diào)速轉(zhuǎn)把處于什么狀態(tài)都會(huì)自動(dòng)斷開電機(jī)電源,使電機(jī)停止動(dòng)力輸出。
電子式轉(zhuǎn)動(dòng)剎把安裝在把座上的位置傳感器是一個(gè)霍爾元件,剎車手柄正對(duì)霍爾元件處有一塊小磁鋼。正常騎行時(shí),磁鋼靠近元件,霍爾元件無輸出。當(dāng)捏剎把手柄時(shí),手柄移位,小磁鋼遠(yuǎn)離霍爾元件,霍爾元件將磁鋼位置變化的轉(zhuǎn)換信號(hào)傳給控制器,切斷電機(jī)電源供給,達(dá)到電機(jī)制動(dòng)目的。
信號(hào)系統(tǒng)工作原理電動(dòng)自行車的信號(hào)系統(tǒng)是電動(dòng)自行車狀態(tài)的指示部件,是反應(yīng)車輛運(yùn)動(dòng)狀態(tài)、保證車輛安全行駛的主要裝置。它使騎行者能正確、有效地對(duì)車輛行駛適時(shí)地進(jìn)行控制,提高了電動(dòng)自行車的安全使用性能,起到提醒、提示騎行者、行人及其他車輛的作用,保證了騎行者及他人的安全。信號(hào)系統(tǒng)主要包括喇叭、閃光器、轉(zhuǎn)向燈、制動(dòng)燈和儀表及控制開關(guān)等。
喇叭的作用是發(fā)出聲音,以引起行人和其他行駛車輛的注意,確保行車安全。它是將電能轉(zhuǎn)化為聲能的裝置。其工作原理是:打開電源開關(guān),按下喇叭按鈕時(shí),電流經(jīng)蓄電池正極流向電源開關(guān),先經(jīng)過喇叭,再經(jīng)過喇叭按鈕到達(dá)蓄電池負(fù)極,構(gòu)成閉合回路,使喇叭發(fā)出聲響;松開喇叭按鈕后,按鈕接觸點(diǎn)在回位彈簧的作用下彈回,電路中斷,喇叭停止工作。喇叭電路原理圖如圖3.3所示。
圖3.3 喇叭控制電路
閃光器也叫閃爍器,串聯(lián)在轉(zhuǎn)向燈電路中,當(dāng)有負(fù)載電流通過時(shí),閃光器內(nèi)部的RC振蕩電路開始控制,使蓄電池供電回路中的電流時(shí)大時(shí)小,而使轉(zhuǎn)向燈發(fā)出醒目的明暗相間的閃光信號(hào),引起周圍的車輛和行人的注意。
圖3.4為電子式閃光器的電路圖。閃光器標(biāo)有字母L的接線端子與轉(zhuǎn)向燈相連、標(biāo)有字母B的接線端子與電源端相連。在線路連接好的情況下,當(dāng)轉(zhuǎn)向開關(guān)接通左轉(zhuǎn)向燈或右轉(zhuǎn)向燈時(shí),電流經(jīng)電阻R1向電容C反方向充電,使a、b兩端電壓逐漸上升。當(dāng)a端具有一定的正向電壓時(shí),三極管VT1導(dǎo)通,VT2也因得到一定的負(fù)壓而開始工作。其電流流向?yàn)樾铍姵卣龢O→電源開關(guān)→閃光器B端→VT2發(fā)射極→VT1集電極→閃光器L端→轉(zhuǎn)向開關(guān)→轉(zhuǎn)向燈→蓄電池負(fù)極。由于電流較大,所以轉(zhuǎn)向燈發(fā)出較亮的光。此時(shí)VT2導(dǎo)通,電容C開始放電,使a端電壓下降,當(dāng)降低到一定電位時(shí),VT1截止,VT2不導(dǎo)通,這時(shí)轉(zhuǎn)向燈熄滅,又回到起始狀態(tài)。如此反復(fù),轉(zhuǎn)向燈的電流時(shí)大時(shí)小,就使轉(zhuǎn)向燈發(fā)出一明一暗的閃光。
圖3.4 電子式閃光器電路圖
轉(zhuǎn)向燈電路由閃光器、轉(zhuǎn)向開關(guān)、轉(zhuǎn)向燈和儀表的轉(zhuǎn)向指示燈等組成,其工作原理如圖3.5所示。
圖3.5轉(zhuǎn)向信號(hào)系統(tǒng)工作原理圖
打開電源開關(guān),當(dāng)轉(zhuǎn)向開關(guān)處于下面位置,閃光器觸點(diǎn)閉合時(shí),電流由蓄電池正極到電源開關(guān),閃光器,再到轉(zhuǎn)向開關(guān),分流到前左轉(zhuǎn)向燈、后左轉(zhuǎn)向燈和儀表左轉(zhuǎn)指示燈后,再經(jīng)負(fù)極連線流回蓄電池構(gòu)成閉合回路,使左側(cè)轉(zhuǎn)向燈閃亮。
當(dāng)轉(zhuǎn)向開關(guān)處于中間位置時(shí),整個(gè)轉(zhuǎn)向燈電路因開關(guān)斷路而停止工作。
當(dāng)轉(zhuǎn)向燈開關(guān)處于上面位置時(shí),工作原理與轉(zhuǎn)向開關(guān)處于下面位置時(shí)相同,使右側(cè)轉(zhuǎn)向燈閃亮。
照明系統(tǒng)工作原理照明系統(tǒng)為電動(dòng)自行車夜間行駛提供路面和儀表照明燈光,保證夜間騎行安全。照明系統(tǒng)主要由前照燈、尾燈和儀表照明燈及控制開關(guān)等組成。
明系統(tǒng)由蓄電池供電、通過電源開關(guān)、照明開關(guān)接通前照燈、后尾燈和儀表燈,有些電動(dòng)自行車還帶有示廓燈等。其電路原理圖如圖3.6所示。
圖3.6 照明電路原理圖
照明系統(tǒng)的工作原理是:打開電源開關(guān)和照明開關(guān),前照燈、儀表燈和后尾燈接通電源被點(diǎn)亮;關(guān)閉電源開關(guān)或照明開關(guān),前照燈、儀表燈和后尾燈熄滅[49~52]。
電動(dòng)自行車控制器的功能要求1)調(diào)速功能�?刂破鞲鶕�(jù)輸入的調(diào)速信號(hào),對(duì)電機(jī)的轉(zhuǎn)速進(jìn)行平穩(wěn)、可靠的調(diào)節(jié),使電動(dòng)自行車實(shí)現(xiàn)無極調(diào)速。
2)零啟動(dòng)。啟動(dòng)時(shí)不用腳踩。
3)堵轉(zhuǎn)保護(hù)。當(dāng)電機(jī)出現(xiàn)堵轉(zhuǎn)超過一定時(shí)間之后,控制器會(huì)自動(dòng)停止工作。
4)制動(dòng)斷電功能。在輸入控制器的剎車信號(hào)電位變化時(shí),開關(guān)電源能迅速反應(yīng),切斷輸入電流,改變電機(jī)的通電工作狀態(tài),實(shí)現(xiàn)整車的順利制動(dòng)。
5)過電壓和欠電壓保護(hù)功能。當(dāng)外界輸入電壓高于或低于控制器的工作電壓時(shí),控制器會(huì)發(fā)出報(bào)警,停上進(jìn)行工作,保護(hù)控制器。
6)過電流保護(hù)功能。當(dāng)工作電流達(dá)到系統(tǒng)設(shè)定的最大值時(shí),控制器將限制系統(tǒng)電流的繼續(xù)增大令其維持不變,以保護(hù)蓄電池、電機(jī)和控制器本身不受到損傷。
7)防飛車保護(hù)功能。當(dāng)調(diào)速轉(zhuǎn)把信號(hào)與電源線路出現(xiàn)短路或調(diào)速轉(zhuǎn)把負(fù)極線斷路時(shí),就會(huì)誤給控制器輸入調(diào)速信號(hào),使控制器給電機(jī)加電造成飛車,控制器防飛車功能可以避免飛車事故的發(fā)生。
8)欠壓回升保護(hù)功能。當(dāng)系統(tǒng)進(jìn)入欠壓保護(hù)、停止工作后,蓄電池的端電壓會(huì)迅速回升到高于欠壓點(diǎn)。此時(shí)控制器并不立即退出欠壓保護(hù)狀態(tài)開始工作,而是電源電壓必須高于欠壓點(diǎn)一定幅度后,控制器才能恢復(fù)正,退出保護(hù)狀態(tài)。
9)巡航定速功能。轉(zhuǎn)動(dòng)轉(zhuǎn)把進(jìn)行調(diào)速時(shí),當(dāng)轉(zhuǎn)把固定在某個(gè)位置超過一定的時(shí)間,電動(dòng)自行車便會(huì)以這個(gè)速度進(jìn)行勻速行駛,直到再次轉(zhuǎn)動(dòng)轉(zhuǎn)把,消除此次巡航。
10)腳踏助力功能。通過測(cè)量人腳踏信號(hào)和電系統(tǒng)信號(hào)的變化,來提供相應(yīng)電助力的一種腳踏助力方案。這樣為用戶提供了一種省電騎行模式。
11)柔性EABS剎車功能。柔性EABS剎車是相對(duì)于機(jī)械剎車來說的,它是通過給控制器電信號(hào)實(shí)現(xiàn)剎車功能。
12)反充電與反充電指示功能。這是一種能量回收功能,在剎車制動(dòng)時(shí)將原由通過制定器消耗的功能,以電機(jī)發(fā)電的形式經(jīng)過控制器構(gòu)成回路給蓄電池充電,以電能的形式最大限度地回收,并對(duì)工作狀態(tài)進(jìn)行顯示。
13)限速功能。根據(jù)國(guó)家對(duì)電動(dòng)自行車最高車速不大于20km/h的要求,限速功能是通過限速電位器的調(diào)節(jié),使電動(dòng)自行車不超過此速度。
電動(dòng)自行車控制器總統(tǒng)方案設(shè)計(jì)電動(dòng)自行車控制器是電動(dòng)自行車四大部件之一的驅(qū)動(dòng)控制部件,它是電動(dòng)自行車的大腦,是神經(jīng)中樞,遇到各種情況會(huì)“作出反應(yīng)”,是電動(dòng)自行車能量管理與各種控制信號(hào)處理的核心部件。它控制著電機(jī)的轉(zhuǎn)速、具有欠壓、限流或過流保護(hù)和制動(dòng)斷電等基本功能,對(duì)整車的電氣系統(tǒng)進(jìn)行有效的保護(hù),是電動(dòng)自行車電氣系統(tǒng)的核心。智能型控制器還具有多種騎行模式和電氣控制部分自檢、故障代碼顯示等功能。
一個(gè)完備的電動(dòng)自行車控制器系統(tǒng),其硬件主要包括:電源電路,MOSFET驅(qū)動(dòng)電路,電流檢測(cè)及保護(hù)電路,調(diào)速轉(zhuǎn)把輸入信號(hào)電路,轉(zhuǎn)子位置判斷信號(hào)采集電路,低、高電平剎車電路以及單片機(jī)和外圍電路等。
電動(dòng)自行車控制器的工作原理是利用電子設(shè)備替代了傳統(tǒng)電刷控制電機(jī)線圈的電流方向,同時(shí)根據(jù)電機(jī)內(nèi)傳感器發(fā)出的信號(hào),確定換向的時(shí)間和順序,來改變點(diǎn)電機(jī)的轉(zhuǎn)速和方向。圖3.7為電動(dòng)自行車控制器的原理框圖。
圖3.7電動(dòng)自行車控制器原理框圖
電動(dòng)自行車控制器的控制電路主要有:1內(nèi)部穩(wěn)壓電路;2位置信號(hào)檢測(cè)電路電路;3剎車電路;4 A、B、C三相預(yù)驅(qū)動(dòng)電路;5三相橋式功率場(chǎng)效應(yīng)晶體開關(guān)電路;6欠壓保護(hù)電路;7限流保護(hù)電路等。
內(nèi)部穩(wěn)壓電源電路提供控制器內(nèi)部電子元器件的工作電壓。
位置信號(hào)檢測(cè)放大電路首先對(duì)無刷直流電機(jī)霍爾位置傳感器產(chǎn)生的位置信號(hào)進(jìn)行放大、整形、形成具有一定時(shí)序的三相邏輯信號(hào)。當(dāng)改變?nèi)嘈盘?hào)時(shí)序時(shí),就可以改變電機(jī)轉(zhuǎn)向。放大、整形后的位置信號(hào)分別送到三相上臂驅(qū)動(dòng)信號(hào)生成電路和三相下臂驅(qū)動(dòng)信號(hào)生成電路中,產(chǎn)生三相橋式上臂驅(qū)動(dòng)信號(hào)和三相橋式下臂驅(qū)動(dòng)信號(hào)。
微處理器根據(jù)位置信號(hào)檢測(cè)放大電路提供的無刷直流電機(jī)霍爾信號(hào),對(duì)上3路和下3路的MOS管驅(qū)動(dòng)電路給出有選擇的打開與關(guān)閉信號(hào),以完成對(duì)電機(jī)的換相。同時(shí),根據(jù)調(diào)速轉(zhuǎn)把輸入電壓的大小,將相應(yīng)脈沖寬度的載波信號(hào)與下3路MOS管導(dǎo)通信號(hào)混合,以達(dá)到控制電機(jī)速度的目的。
MOS管驅(qū)動(dòng)電路將PWM信號(hào)整形放大、電平移動(dòng),達(dá)到上、下臂MOS管輸出所需的驅(qū)動(dòng)電平,并提供給MOS管,同時(shí)也減少M(fèi)OS管輸出電路對(duì)控制電路的影響。另外,對(duì)于上3路的3個(gè)MOS管來說,它們的驅(qū)動(dòng)要求高于蓄電池供電電壓,因此,MOS管驅(qū)動(dòng)電路還要具有升壓功能,將上3路的MOS管導(dǎo)通信號(hào)變成高于蓄電池電壓的超高方波信號(hào)。三相MOS管輸出電路由6只MOS管接成三相橋式全控電子開關(guān),構(gòu)成逆變輸出電路,完成電子換相。
剎車斷電電路是通過將制動(dòng)剎把產(chǎn)生的剎車信號(hào)送到控制器中,加到停止引腳上,通過邏輯電路處理,關(guān)斷上、下臂邏輯信號(hào)輸出,實(shí)現(xiàn)剎車斷電功能。
欠壓保護(hù)電路在蓄電池電壓降低到控制設(shè)定值后,停止PWM信號(hào)輸出,以保護(hù)蓄電池不在低電壓的情況下放電損傷。
限流保護(hù)電路是對(duì)控制器輸出的最大電流進(jìn)行限制,以保護(hù)蓄電池、控制器、電機(jī)等不會(huì)出現(xiàn)超出允許范圍的大電流。
控制器介紹及選擇2009年3月4日,意法半導(dǎo)體發(fā)布了針對(duì)工業(yè)應(yīng)用和消費(fèi)電子開發(fā)的微控制器STM8S系列產(chǎn)品。
STM8S平臺(tái)打造8位微控制器的全新世代,高達(dá)20 MIPS的CPU性能和2.95-5.5V 的電壓范圍,有助于現(xiàn)有的8位系統(tǒng)向電壓更低的電源過渡。新產(chǎn)品嵌入的130nm非易失性存儲(chǔ)器是當(dāng)前8位微控制器中最先進(jìn)的存儲(chǔ)技術(shù)之一,并提供真正的EEPROM數(shù)據(jù)寫入操作,可達(dá)30萬次擦寫極限。在家用電器、加熱通風(fēng)空調(diào)系統(tǒng)、工業(yè)自動(dòng)化、電動(dòng)工具、個(gè)人護(hù)理設(shè)備和電源控制管理系統(tǒng)等各種產(chǎn)品設(shè)備中,新產(chǎn)品配備的豐富外設(shè)可支持精確控制和監(jiān)視功能。功能包括10位模數(shù)轉(zhuǎn)換器,最多有16條通道,轉(zhuǎn)換用時(shí)小于3微秒;先進(jìn)的16位控制定時(shí)器可用于馬達(dá)控制、捕獲/比較和PWM功能。其它外設(shè)包括一個(gè)CAN2.0B接口、兩個(gè)U(S)ART接口、一個(gè)I2C端口、一個(gè)SPI端口。
STM8S平臺(tái)的外設(shè)定義與STM32系列32位微控制器相同。外設(shè)共用性有助于提高不同產(chǎn)品間的兼容性,讓設(shè)計(jì)靈活有彈性。應(yīng)用代碼可移植到STM32平臺(tái)上,獲得更高的性能。除設(shè)計(jì)靈活外,STM8S的組件和封裝在引腳上完全兼容,讓開發(fā)人員得到更大的自由空間,以便優(yōu)化引腳數(shù)量和外設(shè)性能。引腳兼容還有益于平臺(tái)化設(shè)計(jì)決策,產(chǎn)品平臺(tái)化可節(jié)省上市時(shí)間,簡(jiǎn)化產(chǎn)品升級(jí)過程。
①STM8S主要特點(diǎn)
1)速度達(dá)20 MIPS的高性能內(nèi)核
2)抗干擾能力強(qiáng),品質(zhì)安全可靠
3)領(lǐng)先的130納米制造工藝,優(yōu)異的性價(jià)比
4)程序空間從4K到128K, 芯片選擇從20腳到80腳,寬范圍產(chǎn)品系列
- 系統(tǒng)成本低,內(nèi)嵌EEPROM和高精度RC振蕩器
6)開發(fā)容易,擁有本地化工具支持
②STM8S主要應(yīng)用
1)汽車電子:傳感器、致動(dòng)器、安全系統(tǒng)微控制器、DC馬達(dá)、車身控制、汽車收音機(jī)、LIN節(jié)點(diǎn)、加熱/通風(fēng)空調(diào)
2)工業(yè)應(yīng)用:家電、家庭自動(dòng)化、馬達(dá)控制、空調(diào)、感應(yīng)、計(jì)量?jī)x表、不間斷電源、安全
3)消費(fèi)電子:電源、小家電、音響、玩具、銷售點(diǎn)終端機(jī)、前面板、電視、監(jiān)視設(shè)備
4)醫(yī)療設(shè)備:個(gè)人護(hù)理產(chǎn)品、健身器材、便攜護(hù)理設(shè)備、醫(yī)院護(hù)理設(shè)備、血壓測(cè)量、血糖測(cè)量、監(jiān)控、緊急求助
STM8S903K3作為一款功能齊全、接口豐富,性價(jià)比高的處理器,為許多嵌入式控制應(yīng)用提供了靈活而低成本的方案。而且STM8903K3自動(dòng)6路互補(bǔ)PWM輸出端口,在電機(jī)控制中不需要外接PWM波形發(fā)射器,減小了外圍電路的元器件個(gè)數(shù),增加了系統(tǒng)的可靠性,降低了控制器的成本,非常適合電動(dòng)自行車控制器的開發(fā)。
逆變電路功率器件介紹及選擇首先系統(tǒng)中逆變電路的開關(guān)頻率很高,功率開關(guān)元件不宜采用晶閘管,而雙極型大功率晶體管雖然在大電流導(dǎo)通時(shí)其導(dǎo)通電阻很小,但卻要求較大的驅(qū)動(dòng)功率,其開關(guān)速度也要比MOSFET、IGBT低。MOSFET是一種多數(shù)載流子器件,無少數(shù)載流子的存儲(chǔ)效應(yīng),因此開關(guān)速度快,而且MOSFET是一種理想的電壓控制器件,驅(qū)動(dòng)電路較為簡(jiǎn)單。MOSFET沒有二次擊穿現(xiàn)象,工作安全區(qū)大,因此MOSFET特別適于高頻變流裝置,只是在高壓大電流的情況下導(dǎo)通電阻較大,器件發(fā)熱稍大。所以,MOSFET適合在本文涉及的低功率高頻率能量變換裝置中使用。
因?yàn)镸OSFET特別適于高頻變流裝置,而且對(duì)IGBT和IPM而言價(jià)格相對(duì)較低,所以本系統(tǒng)的逆變電路功率器件選擇MOSFET。
但是MOSFET作為功率器件使用時(shí),它的柵極驅(qū)動(dòng)必須滿足:
1)柵極電壓高于漏極電壓10-15V,作為高壓側(cè)開關(guān),柵極電壓高于母線電壓,且為系統(tǒng)最高電壓;
2)柵極電壓具有浮動(dòng)能力,隨源極電位的變化而變化;
3)驅(qū)動(dòng)電路造成的功率損耗在總的功率中所占比重不大。
所以在硬件設(shè)計(jì)的時(shí)候必須考慮到MOSFET電機(jī)轉(zhuǎn)動(dòng)引入的MOSFET源極電位浮動(dòng)的問題,保證MOSFET的準(zhǔn)確動(dòng)作。
無刷直流電機(jī)選擇本系統(tǒng)使用的無刷直流電機(jī)為深圳深圳市鼎拓達(dá)機(jī)電有限公司生產(chǎn)的型號(hào)為42BL65-240的無刷直流電機(jī),產(chǎn)品參數(shù)如下:
表3.1 42BL65-240電機(jī)參數(shù)
控制器策略選擇系統(tǒng)控制策略的選擇影響著整個(gè)系統(tǒng)的運(yùn)行,選擇一個(gè)好的控制策略對(duì)系統(tǒng)的穩(wěn)定性、可靠性等特性至關(guān)重要。下面就從無刷直流電機(jī)無感起動(dòng)策略、調(diào)壓策略、換相策略及調(diào)速算法來介紹本系統(tǒng)的策略選擇。
無感起動(dòng)策略針對(duì)實(shí)現(xiàn)無刷直流電機(jī)無位置傳感器零初始速度起動(dòng)的問題,人們提出了各
種方案,主要有:三段式起動(dòng)法、升頻升壓同步起動(dòng)法和檢測(cè)脈沖轉(zhuǎn)子定位起動(dòng)
法等。因“三段式”起動(dòng)法比較簡(jiǎn)單,所以控制器的無感起動(dòng)策略就選擇“三段式”起動(dòng)法。下面就對(duì)“三段式”起動(dòng)法進(jìn)行簡(jiǎn)單介紹與分析。
“三段式”起動(dòng)法按照“他控變頻”式同步電動(dòng)機(jī)從靜止開始加速旋轉(zhuǎn),直至轉(zhuǎn)速足夠大,再切換至無刷電動(dòng)機(jī)“自控變頻”式運(yùn)行狀態(tài),以實(shí)現(xiàn)電機(jī)起動(dòng)。
這個(gè)過程包括轉(zhuǎn)子預(yù)定位、加速和運(yùn)行狀態(tài)切換三個(gè)階段。在起動(dòng)初始階段,使電機(jī)有一個(gè)確定的通電狀態(tài),轉(zhuǎn)子旋轉(zhuǎn)到一個(gè)確定的初始位置,然后改變電機(jī)的通電狀態(tài),在電磁力矩的作用下轉(zhuǎn)子向下一個(gè)確定位置轉(zhuǎn)動(dòng),在轉(zhuǎn)動(dòng)加速的過程中把電機(jī)切換到無位置傳感器的運(yùn)行狀態(tài),進(jìn)而利用反電勢(shì)法檢測(cè)轉(zhuǎn)子位置,實(shí)現(xiàn)“自控變頻”運(yùn)行。
該方法簡(jiǎn)單可靠,對(duì)于任意轉(zhuǎn)子初始位置角,都能可靠實(shí)現(xiàn)預(yù)定位,保證電機(jī)從“零速度”起動(dòng)并快速切換到無位置傳感器閉環(huán)方式運(yùn)行。但是此法的成功實(shí)現(xiàn),受電機(jī)負(fù)載轉(zhuǎn)矩、外施電壓、加速曲線及轉(zhuǎn)動(dòng)慣量等諸多因素影響。在輕載、小慣量條件下,三段式起動(dòng)過程一般能成功實(shí)現(xiàn);當(dāng)電機(jī)處于重載狀態(tài)時(shí),外同步信號(hào)與產(chǎn)生的反電勢(shì)信號(hào)相位差過大,可能導(dǎo)致電機(jī)失步,起動(dòng)失敗。
通過優(yōu)化加速曲線能保證電機(jī)順利起動(dòng),但是對(duì)不同電機(jī)、不同負(fù)載,所對(duì)應(yīng)的
優(yōu)化加速曲線不一樣,這樣導(dǎo)致該方案通用性不強(qiáng),控制過程比較繁瑣,涉及數(shù)據(jù)多等缺點(diǎn)。尤其是在調(diào)試中 PWM 的占空比的選擇,以及對(duì)加速過程中占空比的變化速度的控制比較復(fù)雜,很難達(dá)到理想效果 [53]。
轉(zhuǎn)子位置檢測(cè)策略本系統(tǒng)所使用無刷直流電機(jī)自帶位置傳感器,所以可以通過位置傳感器直接獲得轉(zhuǎn)子位置信號(hào)。但是考慮到位置傳感器的使用壽命問題,本系統(tǒng)還采用了一種無傳感的方式檢測(cè)策略。
本系統(tǒng)所采用的無刷直流電機(jī)的無傳感轉(zhuǎn)子位置檢測(cè)方法為反電動(dòng)勢(shì)端電壓檢測(cè)法。其實(shí)質(zhì)是通過檢測(cè)定子開路相的感應(yīng)電動(dòng)勢(shì)過零點(diǎn)來間接得到轉(zhuǎn)子位置信號(hào)。然而,由于定子繞組的感應(yīng)電動(dòng)勢(shì)難以直接測(cè)量,所以實(shí)際上一般使用的是該方法的變通形式“端電壓法”。對(duì)于本系統(tǒng)采用的二相導(dǎo)通六狀態(tài)控制方式,通過檢測(cè)端電壓就能檢測(cè)到反電動(dòng)勢(shì)過零點(diǎn)。因?yàn)槟孀兤髅恳粫r(shí)刻都只有兩相導(dǎo)通,另一相處于斷開狀態(tài),此時(shí)該斷開相繞組的相電壓就是反電動(dòng)勢(shì)。在本系統(tǒng)的反電動(dòng)勢(shì)過零點(diǎn)檢測(cè)電路中,重構(gòu)了一個(gè)電機(jī)星點(diǎn),其電壓和電機(jī)星點(diǎn)電壓近似。通過比較器不停地比較星點(diǎn)電壓和繞組端電壓,就可以得到一個(gè)電平的跳變信號(hào),此跳變信號(hào)便是繞組反電動(dòng)勢(shì)的過零信號(hào)。當(dāng)檢測(cè)到繞組反電動(dòng)勢(shì)的過零信號(hào)后,再延遲30個(gè)電角度,便可觸發(fā)電機(jī)換相。
無刷直流電機(jī)的換相控制策略由圖2.9可知,無刷直流電機(jī)反電勢(shì)為正負(fù)半波皆有120個(gè)電角度平臺(tái)的梯形波,三相間相差為120個(gè)電角度;3個(gè)位置傳感器(電角度間距120個(gè)電角度傳感器)相差為120個(gè)電角度,其上升或下降沿位置即對(duì)應(yīng)定子電樞繞組導(dǎo)通時(shí)刻。如此,通過對(duì)傳感器信號(hào)檢測(cè),經(jīng)由功率MOSFET功率開關(guān)器件構(gòu)成的電子換相實(shí)現(xiàn)換相,使電樞繞組依次通電,從而在定子上產(chǎn)生跳躍式的旋轉(zhuǎn)磁場(chǎng),驅(qū)動(dòng)永磁轉(zhuǎn)子旋轉(zhuǎn)。隨著轉(zhuǎn)子的旋轉(zhuǎn),位置傳感器不斷輸出信號(hào),電樞繞組的通電狀態(tài)隨之改變,使得在某一磁極下導(dǎo)體的電流方向始終保持不變,這就是無刷直流電機(jī)的無接觸換相過程。
如使用二二導(dǎo)通方式是每次使2個(gè)開關(guān)管同時(shí)導(dǎo)通。依據(jù)圖2.4所示開關(guān)管命名,其導(dǎo)通順序有:T1、T4→T1、T6→T3、T6→T3、T2→T5、T2→T5、T4,共有6種導(dǎo)通狀態(tài),每隔60個(gè)電角度改變一次導(dǎo)通狀態(tài),每360個(gè)電角度需要換相6次,每次改變僅切換一個(gè)開關(guān)管,每個(gè)開關(guān)管連續(xù)導(dǎo)通120個(gè)電角度。所以,本系統(tǒng)采用6步換相的方式(即兩相六狀態(tài)方式)控制電機(jī)旋轉(zhuǎn)。
無刷直流電機(jī)的調(diào)壓策略對(duì)于無刷電機(jī),其電動(dòng)勢(shì)的平衡方程為:

(3.1)
式中,

為逆變電壓(V);E為電樞繞組的反電勢(shì)(V);

為繞組電阻(Ω);

流過繞組電流(A);

開關(guān)管飽和管壓降。
電樞繞組反電勢(shì)和轉(zhuǎn)速的關(guān)系為:

(3.2)
式中,

為電機(jī)轉(zhuǎn)速(rpm);

為反電動(dòng)勢(shì)系數(shù)(V/rpm)。
由式(3.1)、(3.2)可知:
(3.3)
可見,無刷直流電機(jī)與直流電機(jī)類似的調(diào)速特性,其調(diào)速方法有:a調(diào)壓調(diào)速;b弱磁調(diào)速兩種。
由于調(diào)壓調(diào)速和普通直流電機(jī)調(diào)速方法相似,而且相對(duì)比較容易實(shí)現(xiàn),所以本系統(tǒng)選擇調(diào)壓調(diào)速的策略控制電機(jī)轉(zhuǎn)速。
無刷直流電機(jī)調(diào)壓調(diào)速方案有:
1)采用晶閘管移相或DC-DC變換電路調(diào)節(jié)

實(shí)現(xiàn)調(diào)速;
2)采用PWM技術(shù)通過占空比調(diào)節(jié)三相全控橋輸出電壓實(shí)現(xiàn),PWM方式具有電路簡(jiǎn)單、元件數(shù)量少等優(yōu)點(diǎn),但轉(zhuǎn)矩脈動(dòng)較大,見圖3.8。
在無刷直流電機(jī)PWM調(diào)速中,為形成幅值恒定的旋轉(zhuǎn)磁場(chǎng),要求電樞繞組電流恒定,其調(diào)制波為一直流電平,出于降低開關(guān)損耗的目的,可采取一個(gè)開關(guān)管工作于PWM狀態(tài)進(jìn)行調(diào)壓,而另一個(gè)處于常通狀態(tài),如圖3.9所示。
圖3.8 DC-DC和PWM模式對(duì)比
圖3.9 BLDCM幾種PWM調(diào)壓方法
圖中,a)和b)為上橋臂或下橋臂3個(gè)開關(guān)管進(jìn)行PWM調(diào)制,另一個(gè)配對(duì)導(dǎo)通的開關(guān)管處于導(dǎo)通狀態(tài)。以0~60°區(qū)間T1、T4導(dǎo)通為例,在HPWM-LON中,T1進(jìn)行PWM調(diào)制(即調(diào)壓),T4為常通,而HON-LPWM中T1、T4的工作模式剛好與此相反,T1常通,T4執(zhí)行PWM調(diào)壓。此模式下逆變器輸出電壓MA波形見圖3.10 a)。
PWM-ON-PWM模式中,0~360°區(qū)間,任意時(shí)刻僅一個(gè)開關(guān)管執(zhí)行PWM調(diào)壓;以0~120°區(qū)間為例,T1先進(jìn)入30°的PWM模式,此時(shí)T4導(dǎo)通;其后60°T1則處于導(dǎo)通狀態(tài),期間T4、T6先后進(jìn)入PWM模式;最后30°T1再次進(jìn)入PWM模式,T6處于導(dǎo)通狀態(tài)。PWM-ON-PWM模式6個(gè)開關(guān)管的工作模式一致,功耗相同,系統(tǒng)可靠性提高,同時(shí)轉(zhuǎn)矩波動(dòng)較小。此模式下逆變器輸出電壓MA波形見圖3.10 b)。
圖3.10 逆變器輸出電壓
本系統(tǒng)中采用PWM方式控制電機(jī)轉(zhuǎn)速,其PWM控制方法采用HPWM-LON的方式。
無刷直流電機(jī)的速度計(jì)算策略為了實(shí)現(xiàn)無刷直流電機(jī)的轉(zhuǎn)速閉環(huán)控制,必須對(duì)無刷直流電機(jī)的轉(zhuǎn)速進(jìn)行實(shí)時(shí)測(cè)量,本系統(tǒng)采樣通過計(jì)數(shù)20ms內(nèi)換相步數(shù)的方法,來實(shí)現(xiàn)轉(zhuǎn)速的計(jì)算。
因?yàn)殡姍C(jī)每轉(zhuǎn)過360個(gè)電角度控制器需要產(chǎn)生6步換相信號(hào),又因?yàn)橄到y(tǒng)使用電機(jī)極對(duì)數(shù)為4極,所以每360個(gè)機(jī)械角度為1440個(gè)電角度,即需要24步換相。假設(shè)20ms內(nèi)電機(jī)換相CNT步,那么,電機(jī)轉(zhuǎn)速為:

,單位為RPM。
無刷直流電機(jī)的速度算法 由電機(jī)的運(yùn)動(dòng)方程可知,加速度與電機(jī)的轉(zhuǎn)矩成正比,而轉(zhuǎn)矩又與電機(jī)的電流成正比,因而如果要實(shí)現(xiàn)高精度和高動(dòng)態(tài)性能控制就需要同時(shí)對(duì)電機(jī)的速度和電流進(jìn)行控制。根據(jù)反饋原理,要維持哪一物理量基本不變,就應(yīng)該引入那個(gè)物理量的負(fù)反饋。為了減小或消除靜態(tài)轉(zhuǎn)速降落,就要引入轉(zhuǎn)速負(fù)反饋,組成轉(zhuǎn)速負(fù)反饋閉環(huán)系統(tǒng)。為了兼顧調(diào)速系統(tǒng)的靜態(tài)性能和動(dòng)態(tài)性能,本系統(tǒng)采用速度單閉環(huán)控制,如圖3.11所示。

圖3.11 無刷直流電機(jī)單閉環(huán)調(diào)速結(jié)構(gòu)圖
將偏差的比例(P)、積分(I)和微分(D)通過線形組合構(gòu)成新的控制量,用這一控制量對(duì)被控對(duì)象進(jìn)行控制,這樣的控制器稱為PID控制器。數(shù)字PID是將原來由硬件實(shí)現(xiàn)的PID算法,現(xiàn)在將其移植到計(jì)算機(jī)控制系統(tǒng)中形成的用軟件來實(shí)現(xiàn)的PID算法。PID控制器是控制系統(tǒng)中技術(shù)比較成熟,而且應(yīng)用最廣泛的一種控制器。它的結(jié)構(gòu)比較簡(jiǎn)單,參數(shù)容易調(diào)整,不一定需要系統(tǒng)的確切數(shù)學(xué)模型,因此在工業(yè)的各個(gè)領(lǐng)域中都有應(yīng)用。所以本系統(tǒng)中轉(zhuǎn)速的閉環(huán)控制采用PID控制算法。
1
重慶科技學(xué)院本科生畢業(yè)設(shè)計(jì)
電動(dòng)自行車控制器硬件設(shè)計(jì)
以往的無刷直流電機(jī)多由單片機(jī)附加許多接口設(shè)備構(gòu)成控制系統(tǒng),導(dǎo)致系統(tǒng)復(fù)雜,并且運(yùn)算速度也受到限制,不容易實(shí)現(xiàn)速度環(huán)的全數(shù)字化控制,也不方便擴(kuò)展。而應(yīng)用STM8實(shí)現(xiàn)的無刷直流電機(jī)控制系統(tǒng)可以只用一片STM8S903K3就可以代替普通單片機(jī)和各種接口。再加上STM8芯片具有快速運(yùn)算能力,可以實(shí)現(xiàn)更復(fù)雜、更智能化的算法,實(shí)現(xiàn)速度環(huán)的全數(shù)字化控制。
本系統(tǒng)硬件組成如圖4.1所示,控制核心是ST公司的STM8S903K3單片機(jī),主要外圍電路包括位置傳感器信號(hào)處理電路、驅(qū)動(dòng)控制信號(hào)預(yù)處理電路、功率驅(qū)動(dòng)電路、電機(jī)電流檢測(cè)電路、電源電壓檢測(cè)電路以及剎車、起動(dòng)電路等。

圖4.1 硬件系統(tǒng)框圖
當(dāng)系統(tǒng)處在運(yùn)行狀態(tài)時(shí),通過轉(zhuǎn)把和剎把向控制器發(fā)送運(yùn)行指令(如起動(dòng)、停車、轉(zhuǎn)速等),并且載入運(yùn)行參數(shù)。根據(jù)外部檢測(cè)到的電機(jī)的位置信號(hào)以及電機(jī)所處的運(yùn)行狀態(tài)來改變控制器輸出的控制信號(hào)從而調(diào)整電機(jī)的運(yùn)行狀態(tài)。電平轉(zhuǎn)換電路主要是為逆變電路提供動(dòng)作信息,逆變電路為電機(jī)提供正常運(yùn)行所需的合適的電源。電源電壓檢測(cè)環(huán)節(jié)主要是實(shí)現(xiàn)電機(jī)運(yùn)行時(shí)的保護(hù)(如過壓、欠壓、以及防止電源過度放電等)。電流檢測(cè)環(huán)節(jié)主要是實(shí)現(xiàn)過流保護(hù),從外部檢測(cè)到的電流信號(hào)經(jīng)過采樣后,送到單片機(jī)控制單元,控制單元根據(jù)檢測(cè)電流的大小來決定是否采取保護(hù)措施。
單片機(jī)最小系統(tǒng)圖4.2為本系統(tǒng)中STM8S903K3單片機(jī)的最小系統(tǒng)圖。該單片機(jī)使用片內(nèi)自帶的16M晶振提供時(shí)鐘基準(zhǔn)。PD2、PD3、PD4分別為A、B、C相霍爾信號(hào)采集端口,PB7、PB6、PB5分別為A、B、C相過零點(diǎn)信號(hào)輸入端口,PC2、PC1、PE5分別為A、B、C相下橋臂驅(qū)動(dòng)信號(hào)輸出端口,PC3、PC7、PC6分別為A、B、C相上橋臂驅(qū)動(dòng)信號(hào)輸出端口,PD7為L(zhǎng)ED指示燈控制端口,PD6為比較器保護(hù)端口,PA3、PF4為通訊端口,PD1為單線調(diào)試端口,PB0為相電流檢測(cè)端口,PB1為平均相電流檢測(cè)端口,PB2為電源電源檢測(cè)端口,PB3為轉(zhuǎn)把信號(hào)輸入端口,PC5為剎車信號(hào)輸入端口。由于本系統(tǒng)所使用控制芯片為內(nèi)部自帶16M晶振的STM8S903K3,所以系統(tǒng)可使用芯片自帶晶振提供時(shí)鐘基準(zhǔn),NRST引腳為復(fù)位信號(hào)的輸入端口。
圖4.2單片機(jī)最小系統(tǒng)圖
穩(wěn)壓電源電路 電源電路主要給板子其他工作電壓元器件提供工作電壓。該部分主要穩(wěn)出+15V、+5V電壓。其中+15V主要供比較器和放大器使用,并提供MOSFET的開啟電壓;+5V主要供STM8S903K3及霍爾傳感器工作。其原理圖如圖4.3所示。
圖4.3 穩(wěn)壓電源電路圖
如上圖所示,VK+經(jīng)一個(gè)防反擊二極管D5加在穩(wěn)壓芯片LM317的輸入端,LM317的輸出端輸出一個(gè)+15V的穩(wěn)定電壓;同時(shí)該+15V的電壓加在78L05的輸入端,78L05的輸出端為+5V的穩(wěn)定電壓。其中,D2的作用是防止+5Vout的電壓反擊,R2、R3的作用為提供一個(gè)反饋電壓,電容的作用為減小電源到地的阻抗,抑制電源噪聲的干擾。
電源電壓監(jiān)測(cè)電路 該電路主要是將電源電壓分壓后送到單片機(jī),供單片機(jī)AD采集并處理,達(dá)到監(jiān)測(cè)電源電壓,對(duì)電機(jī)進(jìn)行過壓保護(hù),防止電源過度放電的目的。其原理圖如圖4.4所示。
圖4.4 電源電壓監(jiān)測(cè)電路圖
高、低電平剎車電路 目前市場(chǎng)上的電動(dòng)自行車有低電平剎車和高電平剎車兩種類型,本課題設(shè)計(jì)的電路兼具低電平和高電平兩種剎車電路。
如圖4.5所示,當(dāng)為低電平剎車時(shí),低電平信號(hào)通過隔離二極管將R16端電平拉低后直接送入到單片機(jī)剎車I/O口,實(shí)現(xiàn)剎車;當(dāng)為高電平剎車時(shí),電阻R17、R18和Q1構(gòu)成一個(gè)電平取反電路,把高電平轉(zhuǎn)換為低電平。當(dāng)軟件檢測(cè)到I/O口為低電平時(shí),便認(rèn)為是剎車信號(hào)。
圖4.5高、低電平剎車電路圖
霍爾信號(hào)檢測(cè)電路霍爾式位置傳感器輸出為三路脈寬180°的霍爾信號(hào)H_a、H_b、H_c,三路信號(hào)互差120°相位差,所以在360°電角度內(nèi),H_a、H_b、H_c信號(hào)變化規(guī)律為100—110—010—011—001—101,這六種狀態(tài)分別持續(xù)60個(gè)電角度�;魻柺轿恢脗鞲衅餍盘�(hào)處理電路如圖4.6所示。
圖4.6 霍爾信號(hào)檢測(cè)電路圖
霍爾式位置傳感器安裝在電機(jī)內(nèi)部,有5 根信號(hào)線(電源線、地線、3根霍爾信號(hào)線)。由于采用開路輸出,所以外部必須加上拉電阻,并對(duì)H_a、H_b、H_c進(jìn)行阻容濾波以抗干擾。
霍爾信號(hào)H_a、H_b、H_c送到PD2、PD3、PD4 口,采用外部觸發(fā)的方式讀取H_a、H_b、H_c 狀態(tài)。單片機(jī)根據(jù)H_a、H_b、H_c 的狀態(tài)控制三相星形全橋驅(qū)動(dòng)電路中上下橋功率管的導(dǎo)通和關(guān)斷。
反電動(dòng)勢(shì)過零點(diǎn)檢測(cè)電路 反電動(dòng)勢(shì)過零點(diǎn)檢測(cè)電路主要用于提供電機(jī)繞組的反電動(dòng)勢(shì)的過零信號(hào)。當(dāng)電機(jī)工作在無傳感模式下,要想正確換相,就必須知道當(dāng)前轉(zhuǎn)子的位置。該電路可以準(zhǔn)確地給單片機(jī)提供電機(jī)的反電動(dòng)勢(shì)“過零點(diǎn)”。該設(shè)計(jì)方法在外部電路中重構(gòu)了一個(gè)電機(jī)星點(diǎn),其電位和電機(jī)星點(diǎn)電位相近,然后通過3個(gè)比較器,將A、B、C三相的相電壓與星點(diǎn)電壓比較,找到三相反電動(dòng)勢(shì)的過零點(diǎn)。使用過零信號(hào)觸發(fā)外部中斷,控制換相。當(dāng)過零點(diǎn)到來時(shí),比較器輸出電平翻轉(zhuǎn),觸發(fā)單片機(jī)的外部中斷。其電路原理圖如圖4.7所示。
圖4.7 反電動(dòng)勢(shì)過零點(diǎn)檢測(cè)電路原理圖
如上圖所示,比較器的6、8、10引腳電壓約為電機(jī)星點(diǎn)電壓,當(dāng)繞組端電壓大于星點(diǎn)電壓時(shí),比較器輸出高電平;當(dāng)繞組端電壓低于星點(diǎn)電壓時(shí),比較器輸出一個(gè)低電平。這樣,我們就可以得到一個(gè)和霍爾信號(hào)相近的方波信號(hào)。再通過一定的邏輯,我們可以判斷出當(dāng)前轉(zhuǎn)子的位置,從而控制換相。
電機(jī)電流檢測(cè)電路在電動(dòng)機(jī)轉(zhuǎn)速控制系統(tǒng)中,為了對(duì)主電路電流進(jìn)行監(jiān)控,需要對(duì)主電路電流信號(hào)進(jìn)行采樣反饋,電流檢測(cè)電路就是用來對(duì)電動(dòng)機(jī)三相繞組中的電流進(jìn)行實(shí)時(shí)檢測(cè)以便對(duì)電機(jī)達(dá)到更好地控制。電機(jī)電流檢測(cè)電路如圖4.8所示,CSEN端信號(hào)為采樣電阻上的壓降,通過對(duì)這個(gè)信號(hào)進(jìn)行處理,就可以知道當(dāng)前的母線電流。
圖4.8 電機(jī)電路檢測(cè)電路圖
如上圖所示,電流檢測(cè)是通過單片機(jī)采樣采樣電阻上的壓降實(shí)現(xiàn)的。采樣電阻上的壓降先經(jīng)過一個(gè)低通濾波器,再由放大器輸入單片機(jī)的AD采樣接口,其電壓放大倍數(shù)由R33和R32決定。
功率驅(qū)動(dòng)電路MOSFET驅(qū)動(dòng)電路是控制器與電機(jī)直接相連的部分,具有功率放大、自舉升壓等功能。其根據(jù)控制器發(fā)出的邏輯信號(hào)控制上下橋MOS管的導(dǎo)通與截止實(shí)現(xiàn)無刷直流電機(jī)的開與關(guān)并通過改變PWM占空比大小來調(diào)節(jié)MOS管的開關(guān)頻率進(jìn)而實(shí)現(xiàn)電機(jī)的調(diào)速。本系統(tǒng)中使用的功率驅(qū)動(dòng)電路原理圖如圖4.9所示。
圖4.9 功率驅(qū)動(dòng)電路
如上圖所示,以A 相上下橋的功率管驅(qū)動(dòng)電路為例。功率管采用N 溝道增強(qiáng)型MOSFET。
由于功率管MOSFET用作高壓側(cè)開關(guān)時(shí),柵極電壓要比源極電壓高10~15V,才能保證功率管完全導(dǎo)通。這樣在上橋功率管MOSFET導(dǎo)通時(shí),源極電壓為電源電壓VB+,柵極電壓就必須要大于電源電壓VB+10~15V。為了獲得比電源電壓還高的柵極電壓,采用一種被稱為“高壓浮柵型驅(qū)動(dòng)電路”來驅(qū)動(dòng)上橋。電容C1A在功率管導(dǎo)通之前已充電至+12V(相對(duì)于源極),導(dǎo)通時(shí),便能保證功率管MOSFET的柵極電壓比源極電壓(電源電壓VB+)高出12V。At為高電平時(shí),Q1A導(dǎo)通,Q0A導(dǎo)通,Q2A截止,功率管MOSFET由截止變?yōu)閷?dǎo)通;At為低電平時(shí),Q1A截止,Q0A截止,Q2A導(dǎo)通,功率管MOSFET由導(dǎo)通變?yōu)榻刂埂?/div>下橋功率管的MOSFET的源極通過康銅絲R0(5毫歐)連接到地,無論MOSFET是否導(dǎo)通,源極電壓基本接近為零,所以柵極電壓維持在12V左右就可以保證MOSFET完全導(dǎo)通了。!Ab為高電平時(shí),Q4A截止,Q3A截止,Q5A導(dǎo)通,功率管MOSFET由導(dǎo)通變?yōu)榻刂梗?Ab為低電平時(shí),Q4A導(dǎo)通,Q4A導(dǎo)通,Q5A截止,功率管MOSFET由截止變?yōu)閷?dǎo)通。
轉(zhuǎn)把電壓輸入電路手把電壓輸入電路是將手把輸出的模擬信號(hào)送到單片機(jī)的AD轉(zhuǎn)換口轉(zhuǎn)換為數(shù)字信號(hào)的電路,控制程序根據(jù)此數(shù)字信號(hào)從而來調(diào)節(jié)電機(jī)的轉(zhuǎn)速。其原理圖如圖4.10所示。
圖4.10 轉(zhuǎn)把電壓輸入電路原理圖
如上圖所示,3為轉(zhuǎn)把電源線,與+5V相連,2與轉(zhuǎn)把信號(hào)輸入線相連,其輸入的是0~5V的模擬電壓,1為轉(zhuǎn)把接地線,當(dāng)轉(zhuǎn)把松開或者卸掉時(shí),保證輸入AD口的電壓為0V。C8為濾波電容,濾除轉(zhuǎn)把信號(hào)中的高頻雜波。
硬件的可靠性設(shè)計(jì)控制系統(tǒng)中,各種干擾是客觀存在的主要有來自系統(tǒng)內(nèi)部和外部的各種電氣干擾。如果缺乏對(duì)這些干擾的認(rèn)識(shí)和重視,就會(huì)導(dǎo)致控制系統(tǒng)誤差加大嚴(yán)重時(shí)會(huì)使系統(tǒng)失靈,甚至造成巨大的損失。電機(jī)調(diào)速系統(tǒng)存在比較大的干擾:一方面,電動(dòng)機(jī)本身會(huì)產(chǎn)生電磁千擾;另一方面,逆變器中的電力電子器件是以開關(guān)方式工作的,工作中會(huì)產(chǎn)生大量高頻諧波。這些干擾信號(hào)通過“場(chǎng)”或“路”的方式傳遞到控制電路中,如果不采取有效措施加以避免,就可能使電路或程序工作紊亂。
在本系統(tǒng)的硬件設(shè)計(jì)過程中,主要考慮采用以下方法來防止干擾:
1)電源噪聲干擾的抑制。一般來說,這種干擾是無法完全克服的,只能盡量降低進(jìn)入干擾脈沖的幅度。一般做法在VCC與GND之間跨接10~100uf的電解電容,同時(shí)并一個(gè)濾去高頻的小電容;在低頻信號(hào)的傳輸通路中加入RC低通濾波器,可以大大減弱各類高頻干撫信號(hào)。
2)由于干擾抑制受到設(shè)備的體積、成本等多種因素的影響和限制,是不可能完全抑制的,只能盡量減小。因此,在控制系統(tǒng)電路的內(nèi)部設(shè)計(jì)上必須采取相應(yīng)的措施,保證系統(tǒng)運(yùn)行的可靠性。通常的做法有:
a.盡可能使用單片機(jī)的內(nèi)部程序存儲(chǔ)器和內(nèi)部數(shù)據(jù)存儲(chǔ)器而不使用外部總線;由于STM8S903高性能單片機(jī)具有豐富的內(nèi)部資源,這一點(diǎn)可以輕易得到滿足;
b.在進(jìn)行系統(tǒng)擴(kuò)展時(shí),特別在一些模塊化設(shè)計(jì)多插板系統(tǒng)中,數(shù)據(jù)總線、控制總線形成板與板的連接時(shí),應(yīng)加總線驅(qū)動(dòng)器。如果在總線上加有光電隔離電路時(shí),必須選用高速光耦。
3)控制部分的PCB板整板敷銅,在電路各部分中配置去耦電容。PCB上的器件要合理布局,減輕各級(jí)之間的電磁輻合。將強(qiáng)、弱電嚴(yán)格分開,引線盡可能短;在有互感的線路中間置一根地線,起隔離作用,并要保證相互之間有一定的距離。電源線的走向盡量與數(shù)據(jù)傳輸方向一致,接地線盡量加粗。
4)對(duì)一些器件,如邏輯CPLD器件,未使用到的端口應(yīng)該設(shè)置成輸出狀態(tài),以防止由于外界干擾而產(chǎn)生錯(cuò)誤的邏輯輸出。
5)外部噪聲源干擾的抑制。傳感器及其信號(hào)連線應(yīng)盡量遠(yuǎn)離高電平大功率的導(dǎo)線和元器件,以減少噪聲和電磁場(chǎng)的干擾。為了實(shí)現(xiàn)物理隔離,即使在同一設(shè)備內(nèi)部,也應(yīng)該把這兩類信號(hào)導(dǎo)線分開走線。遠(yuǎn)距離走線時(shí),更應(yīng)該注意把信號(hào)電纜和功率電纜分開,并保持一定的距離。
6)空間的場(chǎng)干擾的抑制。系統(tǒng)采取的措施主要有:
a.選擇較高等級(jí)的電子元器件,提高器件的抗干擾能力;
b.正確的接地方法,將數(shù)字地,模擬地及功率地分開,最后只在一點(diǎn)相連。
1
重慶科技學(xué)院本科生畢業(yè)設(shè)計(jì)
電動(dòng)自行車控制器軟件設(shè)計(jì)
一個(gè)完備的控制系統(tǒng),不僅需要有硬件電路作為支撐,還需要有軟件部分的配合與支持才能正常工作。軟件作為系統(tǒng)的“大腦中樞”,實(shí)時(shí)控制著微處理器執(zhí)行各項(xiàng)任務(wù),對(duì)系統(tǒng)的功能和性能有至關(guān)重要的影響。相對(duì)于硬件設(shè)計(jì)來說,軟件設(shè)計(jì)具有更大的靈活性,這也給系統(tǒng)的設(shè)計(jì)帶來了很大的便利。
STM8集成開發(fā)環(huán)境簡(jiǎn)介本課題以C語言作為系統(tǒng)軟件設(shè)計(jì)語言,在STVD中外掛COSMIC C編譯器,進(jìn)行軟件開發(fā)。
ST TOOLSETST TOOLSET是ST提供的微控制器開發(fā)套件。ST TOOLSET包括兩部分軟件:ST Visual Develop (STVD)和ST Visual Programmer (STVP)。支持STM8全系列的開發(fā)。
ST Visual Develop (STVD)是ST微控制器的集成開發(fā)環(huán)境。主要是面向ST的8位微控制器產(chǎn)品。STVD可以創(chuàng)建,調(diào)試以及燒錄ST微控制器。STVD提供了一個(gè)免費(fèi)的匯編編譯器。用戶可使用匯編語言直接在此環(huán)境中(STVD)編寫匯編程序。
ST Visual Programmer (STVP)是ST提供的用于生產(chǎn)或批量的專用燒錄軟件。
ST TOOLSET在下載后,運(yùn)行其安裝程序,如圖5.1 a)所示;
在軟件安裝完成之后,可從開始菜單來啟動(dòng),“開始>ST Visual Develop”,如圖5.1 b)所示;
ST TOOLSET 啟動(dòng)后,其界面如圖5.1 c)所示。
COSMIC介紹Cosmic 公司(Cosmic Software Inc.)的Cosmic C編譯器(Cosmic C compiler)及全套嵌入開發(fā)工具支持STM8系列產(chǎn)品的開發(fā)。Cosmic產(chǎn)品包括C 交叉編譯器、匯編、連接器、ANSI庫、仿真器、硬件調(diào)試器和易于使用的集成開發(fā)環(huán)境(IDEA)。編譯界面如圖5.1 d)所示。
a)
b)
c)
d)
圖5.1 軟件安裝及調(diào)試界面
系統(tǒng)主程序設(shè)計(jì)系統(tǒng)主程序主要完成STM8單片機(jī)各寄存器以及各變量的初始化和電機(jī)各狀態(tài)的轉(zhuǎn)換及其他信息處理等,流程圖如5.2所示。單片機(jī)寄存器初始化包括I/O口的輸入輸出初始化,定時(shí)器計(jì)數(shù)器的初始化,ADC寄存器的初始化等。電機(jī)具有工作和暫停兩種工作模式。
系統(tǒng)初始化完成后,主函數(shù)會(huì)不停的判斷下面應(yīng)該做的事,而這個(gè)判斷的依據(jù)來自于定時(shí)器以及其他程序模塊。當(dāng)判斷到應(yīng)該做的事情時(shí),主函數(shù)馬上執(zhí)行該動(dòng)作,執(zhí)行完畢后返回,繼續(xù)判斷,以此循環(huán)往復(fù)。當(dāng)系統(tǒng)判定系統(tǒng)出現(xiàn)故障(比如過壓、過流、欠壓)時(shí),系統(tǒng)會(huì)馬上停車,當(dāng)故障排除后,系統(tǒng)檢測(cè)到電機(jī)起動(dòng)信號(hào),系統(tǒng)會(huì)重新起動(dòng)電機(jī)。
圖5.2 系統(tǒng)主程序流程圖
系統(tǒng)主函數(shù)程序代碼如下所示:
void main(void)
{
PID_SP.p = 20;
PID_SP.i = 100;
PID_SP.d = 0;
CK_Init();
IO_Init();
Tim1_Init();
Tim5_Init();
Tim6_Init();
enableInterrupts();
LED_ON;
ADC_Init();
ADC1_StartConversion();
UART_Init();
while(1)
{
if(Mode_Changed)/******MODE_CHANGE*****/
Mode_Changed();
if(Trs_Flag)/****TRANSLATION*****/
{
Trs_Flag = 0;
UART1_ITConfig(UART1_IT_TXE,ENABLE);
}
if(Rec_Com)/***RECEIVE_complete******/
Receive_Com();
if(Contrl_Flag)/****SPEED_CONTROL***/
{
Contrl_Flag = 0;
Speed_Compute();
if(Mot_St)
PWM_Ctl();
}
ADC();/****AD轉(zhuǎn)換及數(shù)據(jù)處理*******/
Protect();/***系統(tǒng)保護(hù)***/
}
}
定時(shí)器程序設(shè)計(jì) TIM6是一個(gè)8位的低級(jí)定時(shí)器,主要用于實(shí)現(xiàn)定時(shí)功能,給系統(tǒng)其它模塊提供執(zhí)行命令。每隔20ms,給速度控制函數(shù)提供一個(gè)啟動(dòng)命令,并切換AD的采樣通道。每隔1s給通訊函數(shù)一個(gè)啟動(dòng)命令。其流程如圖5.3所示。
圖5.3 定時(shí)器程序流程圖
定時(shí)器程序代碼如下:
void TIM6_UPD_OVF_TRG_IRQHandler(void) interrupt 23
{
static u8 i=0,com=0;
i++;
TIM6_ClearITPendingBit(TIM6_IT_UPDATE);
if(i==10) // 20ms
{
i = 0;
Contrl_Flag = 1;
com++;
if(com==50)
{
com = 0;
Trs_Flag = 1;
}
ADC_Switch = com % 3;
ADC_Init();
ADC1_StartConversion();
}
}
無傳感換相信號(hào)檢測(cè)程序設(shè)計(jì)該函數(shù)其實(shí)質(zhì)為一個(gè)外部中斷函數(shù),當(dāng)比較器輸出電平翻轉(zhuǎn)時(shí),觸發(fā)該外部中斷,進(jìn)而進(jìn)行轉(zhuǎn)子位置判斷,匹配換相邏輯,配置TIM5,延時(shí)30個(gè)電角度時(shí)間后由TIM5調(diào)用換相函數(shù)。其流程如圖5.4所示。
無傳感換相信號(hào)檢測(cè)程序代碼如下:
void EXTI_PORTB_IRQHandler(void) interrupt 4
{
u8 State,Trigger;
EXTI_SetExtIntSensitivity(EXTI_PORT_GPIOB, EXTI_SENSITIVITY_RISE_FALL);
State = GPIO_ReadInputData(GPIOB);
Trigger = (u8)(State & 0xE0);//PB7|8|9
if(Trigger != 0)
{
Counter = TIM5_GetCounter();
TIM5_SetCounter(0);
TIM5_OC1Init(TIM5_OCMODE_PWM1,
TIM5_OUTPUTSTATE_DISABLE,(u16)(Counter/2),TIM5_OCPOLARITY_HIGH);
switch(Trigger)
{
case 0xa0:Motor_Step = 1;break;//next->AC
case 0x80:Motor_Step = 2;break;//next->BC
case 0xc0:Motor_Step = 3;break;//next->BA
case 0x40:Motor_Step = 4;break;//next->CA
case 0x60:Motor_Step = 5;break;//next->CB
case 0x20:Motor_Step = 0;break;//next->AB
}
}
}
圖5.4 無傳感換相信號(hào)檢測(cè)程序流程圖
霍爾模式換相信號(hào)檢測(cè)程序設(shè)計(jì)該函數(shù)和無傳感換相信號(hào)檢測(cè)子程序一樣,其實(shí)質(zhì)為一個(gè)外部中斷函數(shù)。但其端口輸入信號(hào)為霍爾信號(hào),當(dāng)霍爾信號(hào)發(fā)生變化時(shí),觸發(fā)該中斷,然后進(jìn)行轉(zhuǎn)子位置判斷,匹配換相邏輯,最后調(diào)用換相函數(shù)。其流程如圖5.5所示。
圖5.5 霍爾模式換相信號(hào)檢測(cè)程序流程圖
霍爾模式換相信號(hào)檢測(cè)程序代碼如下:
void EXTI_PORTD_IRQHandler(void) interrupt 6
{
u8 State,Trigger;
State = GPIO_ReadInputData(GPIOD);
Trigger = (u8)(State & 0x1c);//PD2|3|4
GPIO_Init(GPIOD,GPIO_PIN_2|GPIO_PIN_3|GPIO_PIN_4,GPIO_MODE_IN_FL_IT);
EXTI_SetExtIntSensitivity(EXTI_PORT_GPIOD,EXTI_SENSITIVITY_RISE_FALL);//hall_mode
if(Trigger != 0)
{
Counter = TIM5_GetCounter();
TIM5_SetCounter(0);
switch(Trigger)
{
case 0x04:Motor_Step = 1;break;//next->AC
case 0x0c:Motor_Step = 2;break;//next->BC
case 0x08:Motor_Step = 3;break;//next->BA
case 0x18:Motor_Step = 4;break;//next->CA
case 0x10:Motor_Step = 5;break;//next->CB
case 0x14:Motor_Step = 0;break;//next->AB
case 0x00:
case 0x1c:if(Auto_Flag)
{
Hall_Flag = 0;Sen_Flag = 1;Hall_Fault = 1;Mode_Changed = 1;
}break; }
if(Mot_St)
Commutation(Motor_Step,Duty_Cycle);
}
}
換相函數(shù)設(shè)計(jì)該函數(shù)在轉(zhuǎn)子轉(zhuǎn)到固定位置(換相準(zhǔn)確位置)時(shí)被系統(tǒng)調(diào)用,其主要作用是配置TIM1的寄存器,讓TIM1產(chǎn)生預(yù)期的PWM波形輸出。其流程如圖5.6所示。
換相程序代碼如下:
void Commutation(u8 Step,u16 PWM_Commutation)
{
Step_Count++;
PWM_Commutation*=100;
TIM1_CtrlPWMOutputs(DISABLE);
OUT_Disable();
CD_OFF; //關(guān)閉ABC三相下橋臂
BD_OFF;
AD_OFF;
switch(Step)
{
//step 0: AB;
case 0:
TIM1_OC3Init(TIM1_OCMODE_PWM2, TIM1_OUTPUTSTATE_ENABLE, TIM1_OUTPUTNSTATE_DISABLE, PWM_Commutation, TIM1_OCPOLARITY_LOW, TIM1_OCNPOLARITY_HIGH, TIM1_OCIDLESTATE_RESET, TIM1_OCNIDLESTATE_SET);
BD_ON;//開啟B管下橋臂
break;//step 1:AC;
case 1: TIM1_OC3Init(TIM1_OCMODE_PWM2,TIM1_OUTPUTSTATE_ENABLE,TIM1_OUTPUTNSTATE_DISABLE,PWM_Commutation,TIM1_OCPOLARITY_LOW,TIM1_OCNPOLARITY_HIGH, TIM1_OCIDLESTATE_RESET, TIM1_OCNIDLESTATE_SET);
CD_ON;break;//step 2:BC;
case 2:
TIM1_OC2Init(TIM1_OCMODE_PWM2,TIM1_OUTPUTSTATE_ENABLE,TIM1_OUTPUTNSTATE_DISABLE,PWM_Commutation,TIM1_OCPOLARITY_LOW,TIM1_OCNPOLARITY_HIGH, TIM1_OCIDLESTATE_RESET, TIM1_OCNIDLESTATE_SET);
CD_ON;break;//step 3:BA;
case 3:
TIM1_OC2Init(TIM1_OCMODE_PWM2,TIM1_OUTPUTSTATE_ENABLE,TIM1_OUTPUTNSTATE_DISABLE,PWM_Commutation,TIM1_OCPOLARITY_LOW,TIM1_OCNPOLARITY_HIGH, TIM1_OCIDLESTATE_RESET, TIM1_OCNIDLESTATE_SET);
AD_ON;break;//step 4:CA;
case 4:
TIM1_OC1Init(TIM1_OCMODE_PWM2,TIM1_OUTPUTSTATE_ENABLE,TIM1_OUTPUTNSTATE_DISABLE,PWM_Commutation,TIM1_OCPOLARITY_LOW,TIM1_OCNPOLARITY_HIGH, TIM1_OCIDLESTATE_RESET, TIM1_OCNIDLESTATE_SET);
AD_ON;break;//step 5:CB;
case 5:
TIM1_OC1Init(TIM1_OCMODE_PWM2,TIM1_OUTPUTSTATE_ENABLE,TIM1_OUTPUTNSTATE_DISABLE,PWM_Commutation,TIM1_OCPOLARITY_LOW,TIM1_OCNPOLARITY_HIGH, TIM1_OCIDLESTATE_RESET, TIM1_OCNIDLESTATE_SET);
BD_ON;break;
}
TIM1_CtrlPWMOutputs(ENABLE);
}
圖5.6 換相程序流程圖
工作模式切換程序設(shè)計(jì)當(dāng)系統(tǒng)判定工作模式發(fā)生改變時(shí),該函數(shù)被調(diào)用。該函數(shù)主要負(fù)責(zé)模式切換的具體工作,比如寄存器配置,改寫標(biāo)志等。其流程如圖5.7所示。
工作模式切換程序代碼如下:
void Mode_Changed(void)
{
Mode_Changed = 0;
if(Sen_Flag) //sensorless_mode
{
GPIO_Init(GPIOD,GPIO_PIN_2|GPIO_PIN_3|GPIO_PIN_4,GPIO_MODE_IN_FL_NO_IT);

圖5.7 工作模式切換程序流程圖
//close hall_chanel
//defineEXTI PORTB_PIN5,6,7.PIN_5->PHASE_C;PIN_6->PHASE_B;PIN_7->PHASE_A
GPIO_Init(GPIOB,GPIO_PIN_5|GPIO_PIN_6|GPIO_PIN_7,GPIO_MODE_IN_FL_IT);
EXTI_SetExtIntSensitivity(EXTI_PORT_GPIOB,EXTI_SENSITIVITY_RISE_FALL);
TIM5_ITConfig(TIM5_IT_CC1, ENABLE);
Trs_Data[10] = 0;
Hall_Flag = 0;
}
if(Hall_Flag) //hall_mode
{
GPIO_Init(GPIOB, GPIO_PIN_5|GPIO_PIN_6|GPIO_PIN_7,GPIO_MODE_IN_FL_NO_IT);
GPIO_Init(GPIOD, GPIO_PIN_2|GPIO_PIN_3|GPIO_PIN_4, GPIO_MODE_IN_FL_IT);//PD2->HA,PD3->HB,PD4->HC
EXTI_SetExtIntSensitivity(EXTI_PORT_GPIOD, EXTI_SENSITIVITY_RISE_FALL);//hall_mode
TIM5_ITConfig(TIM5_IT_CC1, DISABLE);
Trs_Data[10] = 1;
Hall_Fault = 0;
}
if(Hall_Fault)
{
Trs_Data[10] = 2;
}
}
速度控制程序設(shè)計(jì) 每隔20ms,該函數(shù)被主函數(shù)調(diào)用,用于根據(jù)電機(jī)當(dāng)前轉(zhuǎn)速與設(shè)定轉(zhuǎn)速之差,改變PWM輸出,來達(dá)到電機(jī)速度基本保持恒定的目的。其流程圖如圖5.8所示。
圖5.8 速度控制程序流程圖
速度控制程序代碼如下:
if(Contrl_Flag)/****SPEED_CONTROL***/
{
Contrl_Flag = 0;
Speed_Compute();
if(Mot_St)
PWM_Ctl();
}
AD采樣程序設(shè)計(jì) AD采樣程序主要負(fù)責(zé)系統(tǒng)的母線電流、母線電壓以及轉(zhuǎn)把電壓的采集與初步處理。系統(tǒng)每次進(jìn)行一路AD轉(zhuǎn)換,每隔20ms切換一個(gè)通道,開始一次AD轉(zhuǎn)換。其流程如圖5.9所示。
圖5.9 AD采樣程序流程圖
AD采樣程序代碼如下:
void ADC(void)
{
EOC_Flag = ADC1_GetFlagStatus(ADC1_FLAG_EOC);
if(EOC_Flag)
{
ADC1_ClearFlag(ADC1_FLAG_EOC);
EOC_Flag = 0;
switch(ADC_Switch)
{
case 0: Conversion_Val = ADC1_GetConversionValue();
bus_cur=((float)Temp-195.05)*(5000/2048);//(Temp-5*1/21*4*1024/5)*5/1024/0.5/4*1000//放大1000倍
Bus_Cur = (u16)bus_cur;
break;
case 1: Conversion_Val = ADC1_GetConversionValue();
bus_vol = (float)Conversion_Val*5/1024*32.2/2.2*1000;
Bus_Vol = (u16)bus_vol;
break;
case 2: Conversion_Val = ADC1_GetConversionValue();
Speed_Set = (u16)(Conversion_Val*3+1000);
if(Speed_Set<1000)Speed_Set = 1000;if(Speed_Set>3800)Speed_Set = 3800;break;
default: break;
}
ADC1_DeInit();
Trs_Data[2] = (u8)(Bus_Vol/256);
Trs_Data[3] = (u8)(Bus_Vol%256);
Trs_Data[4] = (u8)(Bus_Cur/256);
Trs_Data[5] = (u8)(Bus_Cur%256);
Trs_Data[6] = (u8)(Speed_Set/256);
Trs_Data[7] = (u8)(Speed_Set%256);
}
}
系統(tǒng)保護(hù)程序設(shè)計(jì)系統(tǒng)保護(hù)程序?qū)崿F(xiàn)了電機(jī)的過壓、欠壓、過流保護(hù),保護(hù)了電機(jī)和電源。當(dāng)系統(tǒng)檢測(cè)到過壓、欠壓、過流信號(hào)后,馬上停車,并做一些后續(xù)工作后返回。其流程如圖5.10所示。
系統(tǒng)保護(hù)程序代碼如下:
圖5.10 系統(tǒng)保護(hù)程序流程圖
void Protect(void)
{
if((Mot_St==1)&&Speed_Measure>=1000)
{
if(Bus_Cur >= CUR_MAX)
{
TIM1_Cmd(DISABLE);
CD_OFF;
BD_OFF;
AD_OFF;
Mot_St = 0;
OUT_Disable();
}
if(Bus_Vol >= VOL_MAX)
{
TIM1_Cmd(DISABLE);
CD_OFF;
BD_OFF;
AD_OFF;
Mot_St = 0;
OUT_Disable();
}
if(Speed_Measure >= 1000)
if(Bus_Vol <= VOL_MIN)
{
TIM1_Cmd(DISABLE);
CD_OFF;
BD_OFF;
AD_OFF;
Mot_St = 0;
OUT_Disable();
}
}
}
1
西京學(xué)院本科畢業(yè)論文(設(shè)計(jì))
測(cè)試程序設(shè)計(jì)
電動(dòng)自行車控制器設(shè)計(jì)完成后,由于該控制器為一個(gè)針對(duì)電動(dòng)自行車具體應(yīng)用的系控制系統(tǒng),所以相對(duì)于其他控制器來說,人機(jī)界面相對(duì)較差。為彌補(bǔ)這個(gè)不足,給后面的系統(tǒng)調(diào)試及最終成果演示提供一個(gè)良好的信息交互平臺(tái),在本系統(tǒng)設(shè)計(jì)中加入了下位機(jī)與上位機(jī)通訊的功能。
測(cè)試系統(tǒng)功能設(shè)計(jì) 為形成一個(gè)良好的人機(jī)交互平臺(tái),本系統(tǒng)的上位機(jī)使用borland公司的C++ Builder軟件進(jìn)行開發(fā),Borland C++ Builder 具有強(qiáng)大的界面功能。最終要求上位機(jī)能和下位機(jī)保持實(shí)時(shí)通訊,實(shí)時(shí)更新下位機(jī)的母線電流、母線電壓、設(shè)定轉(zhuǎn)速及測(cè)得轉(zhuǎn)速等信息,并有電流及速度趨勢(shì)曲線。上位機(jī)還應(yīng)具有PID參數(shù)整定模塊,用于電機(jī)速度閉環(huán)調(diào)試時(shí)候的參數(shù)整定;電機(jī)起�?刂颇K,用于控制電機(jī)的起動(dòng)、停止;電機(jī)工作模式選擇模塊,可以控制電機(jī)的工作模式選擇;串口選擇、控制模塊,選擇和下位機(jī)通訊的串口號(hào)及控制串口的工作狀態(tài);電機(jī)運(yùn)行狀況顯示模塊,用于顯示電機(jī)當(dāng)前的工作狀況。
通訊協(xié)議 系統(tǒng)中,上位機(jī)和下位機(jī)的通訊功能使用實(shí)現(xiàn)。使用MSComm控件可以輕松地實(shí)現(xiàn)上位機(jī)與下位機(jī)的數(shù)據(jù)交換。但是,本系統(tǒng)中上位機(jī)與下位機(jī)交換的數(shù)據(jù)較多,而且還涉及許多電機(jī)控制命令。所以為了讓上位機(jī)和下位機(jī)準(zhǔn)確地執(zhí)行數(shù)據(jù)操作,在系統(tǒng)設(shè)計(jì)中加入了眾多通訊協(xié)議。上位機(jī)接收到用戶的請(qǐng)求時(shí),便向下位機(jī)傳送數(shù)據(jù)。當(dāng)用戶的請(qǐng)求為改變PID參數(shù)時(shí),上位機(jī)便向下位機(jī)傳送4個(gè)字節(jié)的數(shù)據(jù);當(dāng)用戶的請(qǐng)求為改變電機(jī)運(yùn)行狀態(tài)的命令請(qǐng)求時(shí),上位機(jī)向下位機(jī)傳送3個(gè)字節(jié)的數(shù)據(jù)。具體協(xié)議信息,請(qǐng)參考表6.1、表6.2。
1)當(dāng)用戶改變PID參數(shù)時(shí),上位機(jī)將向下位機(jī)連續(xù)傳送寬度為4個(gè)字節(jié)的數(shù)據(jù)串:數(shù)據(jù)串的第一個(gè)字節(jié)標(biāo)志著PID三個(gè)Edit控件中哪個(gè)控件的值發(fā)生了改變,即用戶修改了PID參數(shù)中的哪一個(gè)。數(shù)據(jù)起值為0xe1,表面用戶改變的是P參數(shù);0xe2,表面用戶改變的是I參數(shù);0xe3表面用戶改變的是D參數(shù)。數(shù)據(jù)串的第二個(gè)字節(jié)為本次傳送數(shù)據(jù)的數(shù)據(jù)寬度,方便下位機(jī)的數(shù)據(jù)接收判斷。當(dāng)然,在用戶改變PID參數(shù)時(shí),該字節(jié)內(nèi)裝入的是4。數(shù)據(jù)串的第三第四個(gè)字節(jié)裝的是當(dāng)前的參數(shù)(P、I或D),第三個(gè)字節(jié)為數(shù)據(jù)的高位,第四個(gè)字節(jié)為數(shù)據(jù)的低位。
2)當(dāng)用戶需要改變電機(jī)的運(yùn)行狀態(tài)時(shí),上位機(jī)將向下位機(jī)連續(xù)傳送寬度為3個(gè)字節(jié)的數(shù)據(jù)串:數(shù)據(jù)串的第一個(gè)字節(jié)用于存儲(chǔ)當(dāng)前的數(shù)據(jù)串為命令信號(hào)。數(shù)據(jù)串的第二個(gè)字節(jié)用于存儲(chǔ)數(shù)據(jù)串的數(shù)據(jù)寬度,同樣也是用于下位機(jī)判斷數(shù)據(jù)接收完成與否。數(shù)據(jù)串的第三個(gè)字節(jié)存儲(chǔ)信息為當(dāng)前的用戶命令,下位機(jī)需要通過判斷此字節(jié)的數(shù)據(jù),來完成相應(yīng)的動(dòng)作。數(shù)值0代表用戶設(shè)定電機(jī)工作在霍爾模式;數(shù)值1表示用戶設(shè)定電機(jī)工作在無傳感模式;數(shù)值2表示用戶設(shè)定電機(jī)工作在自動(dòng)切換模式;數(shù)值3表示用戶需要起動(dòng)電機(jī);數(shù)值4表示用戶需要讓電機(jī)停止工作。
3)當(dāng)然,下位機(jī)向上位機(jī)傳送的數(shù)據(jù)也需要加入通訊協(xié)議。下位機(jī)每隔1s向上位機(jī)發(fā)送一次數(shù)據(jù),該數(shù)據(jù)串寬度為11個(gè)字節(jié)。上位機(jī)通過一定的協(xié)議去讀取接收到的數(shù)據(jù)。數(shù)據(jù)串的第一個(gè)字節(jié)為數(shù)據(jù)起始代碼,其數(shù)值為0xbb,第二個(gè)字節(jié)為數(shù)據(jù)串寬度代碼,其數(shù)值為0x0b。數(shù)據(jù)串的第三、第四個(gè)字節(jié)分別存放的是母線電壓的高八位和低八位,第五、第六個(gè)字節(jié)分別存放母線電流的高八位和低八位,第七、第八個(gè)字節(jié)分別存放設(shè)定轉(zhuǎn)速的高八位和低八位,第九、第十個(gè)字節(jié)分別存放的是測(cè)得轉(zhuǎn)速的高八位和低八位,第十一字節(jié)存放的是當(dāng)前工作模式的信息,數(shù)值0表示電機(jī)當(dāng)前工作在無傳感模式下,數(shù)值1表示電機(jī)當(dāng)前工作在霍爾模式下,數(shù)值2表示電機(jī)霍爾傳感器出現(xiàn)故障,系統(tǒng)需要切換到自動(dòng)切換模式下工作。
表6.1 上位機(jī)向下位機(jī)發(fā)送數(shù)據(jù)
表6.2 下位機(jī)向上位機(jī)發(fā)送數(shù)據(jù)
下位機(jī)程序設(shè)計(jì) 下位機(jī)程序設(shè)計(jì)包含了單字節(jié)數(shù)據(jù)傳送、接收程序設(shè)計(jì)和數(shù)據(jù)接收完成后的數(shù)據(jù)處理部分的程序設(shè)計(jì)。單字節(jié)數(shù)據(jù)的傳送、接收程序其實(shí)質(zhì)為一個(gè)數(shù)據(jù)傳送、接收中斷函數(shù),無太多的邏輯在里面。
數(shù)據(jù)傳送中斷程序設(shè)計(jì)下位機(jī)每隔1s向上位機(jī)發(fā)送實(shí)時(shí)數(shù)據(jù),包括母線電壓、母線電流、設(shè)定轉(zhuǎn)速、測(cè)得轉(zhuǎn)速、霍爾傳感器狀態(tài)、當(dāng)前工作模式。通訊數(shù)據(jù)傳送中斷程序主要負(fù)責(zé)下位機(jī)向上位機(jī)發(fā)送固定格式的數(shù)據(jù),每當(dāng)發(fā)送完成一個(gè)字節(jié),系統(tǒng)產(chǎn)生該中斷,繼續(xù)發(fā)送需傳送數(shù)據(jù)的下一字節(jié)。其流程如圖6.1所示。
圖6.1 數(shù)據(jù)傳送中斷程序流程圖
數(shù)據(jù)傳送中斷程序代碼如下:
void UART1_TX_IRQHandler(void) interrupt 17
{
static u8 i=0;
UART1_SendData8(Trs_Data);
UART1_ClearITPendingBit(UART1_IT_TXE);
i++;
if(i==11)
{
i=0;
UART1_ITConfig(UART1_IT_TXE,DISABLE);
}
}
數(shù)據(jù)接收中斷程序設(shè)計(jì)數(shù)據(jù)接收中斷程序主要負(fù)責(zé)下位機(jī)接收上位機(jī)發(fā)送下來的固定格式的數(shù)據(jù),每當(dāng)接收完成一個(gè)字節(jié),系統(tǒng)產(chǎn)生該中斷,繼續(xù)等待上位機(jī)傳送數(shù)據(jù)的下一字節(jié)。其流程如圖6.2所示。
圖6.2 數(shù)據(jù)接收中斷程序流程圖
數(shù)據(jù)接收中斷程序代碼如下:
void UART1_RX_IRQHandler(void) interrupt 18
{
static u8 number=0;
number++;
Rec_Data[number-1] = UART1_ReceiveData8();
if(number > 2)
if(number == Rec_Data[1])
{
number = 0;
Rec_Com = 1;
}
}
數(shù)據(jù)接收完成程序設(shè)計(jì)數(shù)據(jù)接收完成程序在主函數(shù)中被調(diào)用,當(dāng)主函數(shù)判定數(shù)據(jù)接收完成后,調(diào)用該子程序。該子程序主要對(duì)接收到的數(shù)據(jù)進(jìn)行處理,并進(jìn)行命令響應(yīng)。主要響應(yīng)的命令有電機(jī)起動(dòng)、電機(jī)停車、工作模式選擇等。其流程如圖6.3所示。
圖6.3 數(shù)據(jù)接收完成程序流程圖
數(shù)據(jù)接收完成程序代碼如下:
void Receive_Com(void)
{
u16 receive_val;
Rec_Com = 0;
if(((Rec_Data[0]&0xf0)==0xb0)||((Rec_Data[0]&0xf0)==0xe0))
if((Rec_Data[1]==3)||(Rec_Data[1]==4))
{
switch(Rec_Data[1])
{
case 3: receive_val = Rec_Data[2];break;
case 4: receive_val = Rec_Data[2]<<8;receive_val += Rec_Data[3];break;
}
switch(Rec_Data[2])
{
case 2: Auto_Flag = 1;Hall_Flag = 1;Sen_Flag = 0;Mode_Changed = 1;break;
case 0: Auto_Flag = 0;Hall_Flag = 1;Sen_Flag = 0;Mode_Changed = 1;break;
case 1: Auto_Flag = 0;Hall_Flag = 0;Sen_Flag = 1;Mode_Changed = 1;break;
case 3: TIM1_Cmd(ENABLE);Commutation(Motor_Step,15);Mot_St = 1;break;
case 4: TIM1_Cmd(DISABLE);CD_OFF;BD_OFF;AD_OFF;Mot_St = 0;OUT_Disable();break;
}
switch(Rec_Data[0])
{
case 0xe1: PID_SP.p = receive_val; break;
case 0xe2: PID_SP.i = receive_val; break;
case 0xe3: PID_SP.d = receive_val; break;
}
}
}
上位機(jī)程序設(shè)計(jì) 上位機(jī)主要實(shí)現(xiàn)了用戶對(duì)電機(jī)的啟�?刂啤⑺俣乳]環(huán)PID參數(shù)整定及電機(jī)運(yùn)行狀態(tài)的實(shí)時(shí)監(jiān)控。上位機(jī)是用戶與單片機(jī)交流的窗口,當(dāng)用戶有請(qǐng)求時(shí),可通過上位機(jī)將請(qǐng)求傳送至單片機(jī),單片機(jī)會(huì)通過上位機(jī),將系統(tǒng)的運(yùn)行狀況反饋給用戶。上位機(jī)接收到下位機(jī)傳送的數(shù)據(jù)后會(huì)更新畫面顯示,好讓用戶知道當(dāng)前電機(jī)的工作狀況;上位機(jī)在接收到用戶的請(qǐng)求時(shí)也會(huì)向下位機(jī)傳送控制命令及數(shù)據(jù)更新值,讓下位機(jī)按用戶的意圖動(dòng)作。其流程如圖6.4所示,其詳細(xì)代碼見附錄4.4。
圖6.4 上位機(jī)程序流程圖
測(cè)試結(jié)果本研究課題經(jīng)過理論分析,硬件電路設(shè)計(jì)、軟件的編寫和調(diào)試,最終完成了電動(dòng)自行車控制器的樣品設(shè)計(jì)。該控制器以ST系列單片機(jī)中性價(jià)比較高的STM8S903K3為控制核心,充分利用片內(nèi)多種資源,設(shè)計(jì)出的控制器具有體積小的特點(diǎn)和較低的成本優(yōu)勢(shì),具有一定的市場(chǎng)競(jìng)爭(zhēng)力。
控制器樣品設(shè)計(jì)完成后,我們對(duì)控制器進(jìn)行了一系列關(guān)鍵點(diǎn)的波形測(cè)試,測(cè)試結(jié)果分別如下圖所示。
圖6.5 A相的端電壓與霍爾信號(hào)波形
圖6.6 B相反電動(dòng)勢(shì)過零信號(hào)與C相霍爾信號(hào)波形
- 自動(dòng)切換模式(霍爾出現(xiàn)故障)
圖6.7 上位機(jī)監(jiān)控畫面
如圖6.5所示,相電壓為一個(gè)梯形波。在MOSFET導(dǎo)通時(shí),繞組端電壓在24V左右;而在MOSFET關(guān)斷后一段時(shí)間內(nèi),繞組端電壓迅速降到-1V左右,那是因?yàn)槔m(xù)流二極管的鉗位作用,降繞組的感應(yīng)電壓釋放掉。
如圖6.6所示,霍爾信號(hào)的跳變與反電動(dòng)勢(shì)的跳變有一定的延遲,這個(gè)延遲大約為30個(gè)電角度。因?yàn)樵谟布娐分屑尤肓说屯V波器,引入了一定的相位延遲,所以B相的過零信號(hào)并不是超前B相霍爾信號(hào)30個(gè)電角度,在換相邏輯匹配之前一定要慎重判斷轉(zhuǎn)子位置,防止發(fā)生換相錯(cuò)誤。
如圖6.7 a)所示,系統(tǒng)在霍爾模式下啟動(dòng),工作,運(yùn)行狀況良好;圖6.7 b)所示,系統(tǒng)在無傳感模式下啟動(dòng),工作,運(yùn)行狀況良好;圖6.7 c)所示,系統(tǒng)在自動(dòng)切換模式下出現(xiàn)霍爾故障,系統(tǒng)自動(dòng)切換到無傳感模式下;圖6.7 d)所示,當(dāng)霍爾修復(fù)后,系統(tǒng)又可切換回霍爾模式下工作。
系統(tǒng)調(diào)試
1)在霍爾模式下,轉(zhuǎn)速計(jì)算不準(zhǔn)確。用示波器觀察霍爾信號(hào)輸入引腳,發(fā)現(xiàn)系統(tǒng)在某3個(gè)位置可能不停地在進(jìn)外部中斷,在不停地?fù)Q相。因?yàn)楸鞠到y(tǒng)中轉(zhuǎn)速的計(jì)算是通過計(jì)數(shù)換相步數(shù)來實(shí)現(xiàn)的,所以轉(zhuǎn)速會(huì)出現(xiàn)很大的偏差。后來發(fā)現(xiàn)是ADC采樣的影響,將ADC采樣頻率降低,并且在霍爾模式下?lián)Q相前加入邏輯判斷后,問題解決。
2)在定時(shí)器的調(diào)試環(huán)節(jié),配置好定時(shí)器后,發(fā)現(xiàn)怎么都進(jìn)不了中斷,檢查程序,一切配置合理,后來在老師的指導(dǎo)下,發(fā)現(xiàn)是中斷向量表的問題。重新配置中斷向量表,問題解決。
3)在調(diào)試霍爾換相的時(shí)候,發(fā)現(xiàn)很多子程序跳不進(jìn)去,貌似程序一直在外邊中斷中循環(huán)執(zhí)行。在老師的指導(dǎo)下,進(jìn)了外邊中斷后重新配置一遍外部中斷,問題解決。原來SMT8S903K3沒有清除外部中斷標(biāo)志位的函數(shù),重新配置外部中斷,可以清除中斷標(biāo)志位。
4)ADC不能正常工作,每次都只能轉(zhuǎn)換一次,轉(zhuǎn)換完成后進(jìn)入中斷處理數(shù)據(jù),然后再啟動(dòng),但后面ADC根本就啟動(dòng)不了。后來把數(shù)據(jù)處理放在主函數(shù)中,通過在主函數(shù)中判斷轉(zhuǎn)換完成標(biāo)志位的方式來控制ADC的啟停,問題解決。
5)在ADC能夠準(zhǔn)確地工作后,寫了一串讓ADC以單次掃描模式工作的代碼,讓其依次采集母線電壓、母線電流以及轉(zhuǎn)把電壓,發(fā)現(xiàn)ADC并不能很好地工作,使能了緩沖區(qū)后,讀出來的值始終只有一個(gè),按理說應(yīng)該是三個(gè),因?yàn)槲遗渲昧巳齻€(gè)模擬量輸入通道,而且ADC的工作模式已配置為單次掃描模式。讀出的緩沖區(qū)的數(shù)據(jù)始終是在配置通道時(shí)的最后一個(gè)通道。修改配置方法,改為只配一個(gè)通道(三個(gè)通道中,通道號(hào)最大那個(gè)通道),轉(zhuǎn)換出來的值依然不對(duì)。無奈,只好修改代碼,讓ADC工作在單次轉(zhuǎn)換的模式下,分時(shí)段去采樣母線電壓、母線電流及轉(zhuǎn)把輸入電壓。
6)在無傳感模式的起動(dòng)代碼的調(diào)試過程中,發(fā)現(xiàn)電機(jī)在加入起動(dòng)代碼后,在最初的延時(shí)換相階段能夠正常轉(zhuǎn)動(dòng),但在從異步模式切換到同步模式后,電機(jī)停止轉(zhuǎn)動(dòng)。在老師的提示下發(fā)現(xiàn)可能是異步起動(dòng)時(shí)轉(zhuǎn)速不夠,縮短異步起動(dòng)延時(shí)時(shí)間,問題解決。但在引入負(fù)載后,延時(shí)換相起動(dòng)再次失效。后來索性去掉延時(shí)換相起動(dòng)部分,在無傳感的工作模式下,直接定位轉(zhuǎn)子位置(和霍爾模式的電機(jī)起動(dòng)差不多),發(fā)現(xiàn)電機(jī)也能正常起動(dòng),但起動(dòng)成功的概率降低。最終,代碼中雖然做了起動(dòng)策略,但考慮到其通用性不強(qiáng),沒有調(diào)用延時(shí)換相起動(dòng)函數(shù),而直接采取了霍爾式的“單步起動(dòng)法”。
7)在無傳感模式下,換相不正確,電流偏大,而且總莫名其妙地大幅度抖動(dòng)。用示波器觀察反電動(dòng)勢(shì)過零信號(hào)和霍爾信號(hào),發(fā)現(xiàn)反電動(dòng)勢(shì)信號(hào)和霍爾信號(hào)與理論上的30個(gè)電角度的延遲有較大偏差,在外部中斷觸發(fā)后,判斷轉(zhuǎn)子位置的邏輯和理論上不匹配,使用示波器,逐步定位,判斷轉(zhuǎn)子位置,重新建立換相邏輯后,問題解決。
8)在與上位機(jī)的單字節(jié)通訊程序調(diào)試過程中,發(fā)現(xiàn)下位機(jī)可以接收上位機(jī)傳下來的數(shù)據(jù),但是上位機(jī)不能接收下位機(jī)傳出的數(shù)據(jù)。用示波器觀察通訊脈沖,發(fā)現(xiàn)可能是硬件故障,排除硬件故障后,問題解決。
9)在單字節(jié)通訊調(diào)通后,按著單字節(jié)傳送的原理,寫多字節(jié)的通訊。發(fā)現(xiàn)在一定的通訊次數(shù)后,下位機(jī)傳送到上位機(jī)的數(shù)據(jù)和上位機(jī)傳下去的數(shù)據(jù)一樣,但程序里面并不是實(shí)現(xiàn)的這個(gè)功能。后來在下位機(jī)的通訊代碼中加入判斷條件,當(dāng)系統(tǒng)判定數(shù)據(jù)傳送完成是時(shí)屏蔽數(shù)據(jù)傳送中斷,問題解決。
10)編程過程中,出現(xiàn)代碼過長(zhǎng),超出存儲(chǔ)區(qū)域的問題。在網(wǎng)上找了很多解決辦法,試過自己配置連接文件,試過修改存儲(chǔ)區(qū)域地址,試過使用保留存儲(chǔ)區(qū),試過編譯方式等,都無效。后來刪除了一部分編譯了但沒用到的庫文件,問題解決。
11)在系統(tǒng)保護(hù)部分的調(diào)試過程中,發(fā)現(xiàn)加入保護(hù)代碼后電機(jī)很難起動(dòng)成功,即便是在霍爾工作模式下也是如此。后來才發(fā)現(xiàn)可能是起動(dòng)的時(shí)候電流過大或者電壓過低,系統(tǒng)直接進(jìn)入保護(hù)狀態(tài),停掉電機(jī)。在系統(tǒng)保護(hù)代碼之前加入電機(jī)起動(dòng)判斷,讓電機(jī)起動(dòng)再判斷是否需要采取保護(hù)措施,問題解決。
12)在寫完轉(zhuǎn)速閉環(huán)控制代碼后調(diào)試,發(fā)現(xiàn)系統(tǒng)在啟動(dòng)的時(shí)候會(huì)有很大一個(gè)超調(diào),而且不管怎么調(diào)PID參數(shù)都解決不了。后來發(fā)現(xiàn)是PID控制函數(shù)的調(diào)用問題,原來在上位機(jī)向下位機(jī)發(fā)送起動(dòng)信號(hào)之前,下位機(jī)以及就現(xiàn)有的速度(0 RPM),和設(shè)定轉(zhuǎn)速做了多次PID運(yùn)算,當(dāng)下位機(jī)接收到上位機(jī)的起動(dòng)命令,此時(shí)輸出PWM以及被速度控制算法改為了最大值(默認(rèn)最大值為80%)。在調(diào)用速度閉環(huán)控制函數(shù)之前,加入了電機(jī)起動(dòng)判斷后,電機(jī)起動(dòng)時(shí)超調(diào)量大大減小。
總之,在整個(gè)畢業(yè)設(shè)計(jì)期間,由于對(duì)軟件使用的不熟悉所引起的錯(cuò)誤操作導(dǎo)致的問題不占少數(shù),在此就不一一列舉。還有其他許多小問題,在此也不詳述。
小結(jié)
本文對(duì)電動(dòng)自行車控制系統(tǒng)在設(shè)計(jì)中遇到的關(guān)鍵問題進(jìn)行了較為全面的研究與分析,介紹了控制系統(tǒng)四大組成部分的工作原理,重點(diǎn)闡述了無刷直流電機(jī)的工作原理與控制策略,分析了選用STM8S903K3單片機(jī)作為控制核心的優(yōu)勢(shì),分模塊詳述了系統(tǒng)軟硬件設(shè)計(jì)原理。
但是本系統(tǒng)的設(shè)計(jì)還有頗多不足,比如無傳感模式的起動(dòng)問題,不能保證系統(tǒng)的通用性,而且起動(dòng)有可能不成功。由于時(shí)間的問題,在系統(tǒng)的閉環(huán)控制方面,本應(yīng)該采用速度、電流串級(jí)控制,而最終舍棄了電流閉環(huán),只做了一個(gè)速度閉環(huán)控制,而且速度控制的精度并不算高。在系統(tǒng)保護(hù)功能方面,欠壓保護(hù)的閥值設(shè)定的較低,在電機(jī)起動(dòng)時(shí)還是會(huì)突然拉低母線電壓,而且會(huì)持續(xù)一段時(shí)間,至今沒找到問題所在。所以為了不影響電機(jī)的正常起動(dòng),將欠壓保護(hù)的閥值改小。在電機(jī)的起動(dòng)中,按理說應(yīng)該由轉(zhuǎn)把發(fā)出起動(dòng)命令,但在本系統(tǒng)中,卻采用了上位機(jī)發(fā)出起動(dòng)命令的方式。在系統(tǒng)中,剎車功能、上電自檢功能沒有添加。
雖然,本系統(tǒng)存在諸多不足與缺陷,但系統(tǒng)的硬件設(shè)計(jì)是經(jīng)過了時(shí)間考驗(yàn)的,是值得借鑒的。軟件方面缺陷雖多,但可由日后升級(jí)彌補(bǔ),升級(jí)后將是相當(dāng)具競(jìng)爭(zhēng)力的產(chǎn)品,可用于商業(yè),批量生產(chǎn)。最終,本系統(tǒng)作為一個(gè)商業(yè)用途的電動(dòng)自行車控制器,還需改進(jìn);但作為一個(gè)無刷直流電機(jī)初學(xué)者的入門教程和電動(dòng)自行車的工作原理教程還是不錯(cuò)的。
1
西京學(xué)院本科畢業(yè)論文(設(shè)計(jì))
附錄2 上位機(jī)界面
附錄2 上位機(jī)界面
.系統(tǒng)實(shí)物圖
完整的Word格式文檔51黑下載地址(內(nèi)附源程序):
基于單片機(jī)的變頻器設(shè)計(jì).doc
(4.69 MB, 下載次數(shù): 234)
2018-5-31 16:57 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
作者: yang305228226
時(shí)間: 2018-6-2 11:29
有配套資料嗎?
作者: GrayLoach
時(shí)間: 2018-11-4 22:11
暈死,居然扣了我兩次黑幣!
作者: q779883414
時(shí)間: 2019-3-18 20:03
謝謝,對(duì)初學(xué)者有用
作者: l456789
時(shí)間: 2019-8-8 23:32
很詳細(xì),學(xué)習(xí)了。
作者: l456789
時(shí)間: 2019-8-8 23:39
謝謝,很詳細(xì)的設(shè)計(jì),相當(dāng)有用。
作者: jokeyli
時(shí)間: 2019-8-14 15:49
果然是長(zhǎng)文,慢慢看
作者: lmyyjx
時(shí)間: 2019-9-26 10:24
有配套的資料嗎
作者: bbb168
時(shí)間: 2019-9-26 21:44
學(xué)習(xí)中,感謝分享。
作者: 病梅館記
時(shí)間: 2022-4-2 14:08
對(duì)帖主頂禮膜拜
作者: downloade
時(shí)間: 2023-1-20 13:12
謝謝,很詳細(xì)的設(shè)計(jì),相當(dāng)有用
作者: em78447
時(shí)間: 2023-2-22 19:19
很詳細(xì)!頂禮膜拜
歡迎光臨 (http://www.torrancerestoration.com/bbs/) |
Powered by Discuz! X3.1 |