當(dāng)前位置:汽車配件110網(wǎng) >> 汽修百科 >> 電動車維修 >> 基于PSoC的電動自行車控制器的設(shè)計(jì) |
電子產(chǎn)品世界 俠名 電動車維修 2008-5-3 1
PSoC是Cypress半導(dǎo)體生產(chǎn)的具有8位MCU核和數(shù)字與模擬混合信號陣列的可編程片上系統(tǒng)。PSoC集三種可編程能力于一體,不僅具有MCU的可編程序能力,還包含了部分可編程邏輯運(yùn)算功能,同時(shí)也提供了可編程模擬陣列;通過對寄存器的配置或控制,三者之間可以相互作用、協(xié)調(diào)工作。PSoC的數(shù)字資源(如定時(shí)器、PWM、UART等)和模擬資源(如放大器、比較器、濾波器等)以數(shù)字模塊和模擬模塊的方式給出。不同型號的PSoC芯片的差異主要在于其擁有的數(shù)字模塊和模擬模塊的數(shù)量不同。用戶可根據(jù)特定需求來定義這些模塊。集成開發(fā)環(huán)境PSoC Designer也預(yù)先為用戶定義了70多個(gè)常用的數(shù)字和模擬資源供用戶選擇。這些預(yù)定義的模塊被稱之為用戶模塊,如數(shù)字資源有:定時(shí)器、PWM、UART、SPI、CRC、PRS等等;模擬資源有放大器、比較器、濾波器等等;ADC則由若干數(shù)字模塊和模擬模塊組合而成。PSoC開發(fā)人員無需通過設(shè)置寄存器來構(gòu)建這些周邊設(shè)備,只需在PSoC Designer中選擇和放置所需要的用戶模塊并進(jìn)行參數(shù)設(shè)定。PSoC Designer不僅能配置用戶模塊,而且也為用戶提供這些用戶模塊的API函數(shù)供用戶編程時(shí)調(diào)用。 CY8C24533是專門針對電機(jī)控制而開發(fā)的一款PSoC芯片。它繼承了CY8C24XXXA系列芯片的幾乎所有的資源,同時(shí)針對電機(jī)控制擴(kuò)展了部分的資源和功能,使得它非常適合應(yīng)用在電動自行車的控制以及其他的電機(jī)控制。 CY8C24533的系統(tǒng)資源和周邊性能 CY8C24533的內(nèi)部結(jié)構(gòu)如圖1所示。其資源包括: 控制器的設(shè)計(jì) src="http://photographerstories.com/qxzhishi_htm/pic_qx/20110621232157236.jpg" border=0> 系統(tǒng)資源 CY8C24533使用8位哈佛結(jié)構(gòu)處理器內(nèi)核(M8C CPU),它具有獨(dú)立的程序存儲器和數(shù)據(jù)存儲器總線,處理器速度(Tempo)可達(dá)24MHz。擁有豐富的M8C架構(gòu)指令,系統(tǒng)提供便捷的尋址方式。CY8C24533的系統(tǒng)資源中包括一個(gè)乘加器(MAC)。MAC系統(tǒng)中作為一個(gè)獨(dú)立的組件,并映射到特定的寄存器地址空間,由輸入寄存器和輸出寄存器,能執(zhí)行帶符號的8×8乘法運(yùn)算和32位的加法運(yùn)算。只要把數(shù)據(jù)傳送到輸入寄存器,在下一個(gè)指令周期,輸出寄存器就能得到運(yùn)算結(jié)果。寄存器加速內(nèi)存數(shù)據(jù)交換,大大提高了處理數(shù)據(jù)的速度(Tempo)。CY8C24533有兩個(gè)時(shí)鐘發(fā)生器:主時(shí)鐘發(fā)生器和低頻時(shí)鐘發(fā)生器。其中主時(shí)鐘發(fā)生器為24MHz作為系統(tǒng)時(shí)鐘,可分頻或不分頻作為CPU時(shí)鐘。系統(tǒng)時(shí)鐘N1,N2和N3次(均可由用戶設(shè)定)分頻產(chǎn)生的時(shí)鐘VC1,VC2和V3可以提供給用戶作為模擬PSoC模塊和數(shù)字PSoC模塊的輸入時(shí)鐘。系統(tǒng)時(shí)鐘也可以倍頻產(chǎn)生48MHz的時(shí)鐘作為PWM的輸入,以提高PWM的分辨率。低頻時(shí)鐘發(fā)生器是一個(gè)32KHz內(nèi)部低速振蕩器,主要用于看門狗/睡眠定時(shí)器的時(shí)鐘。其他的系統(tǒng)資源還包括可設(shè)定電壓閥值的電源低電壓檢測(LVD/POR)、中斷控制器、I2C、用于△-∑模數(shù)轉(zhuǎn)換的采樣抽取器(Decimator)、片內(nèi)溫度傳感器和片內(nèi)電壓參考等。 片內(nèi)存儲器 CY8C24533有8KB的閃存用于程序存儲以及256B的片內(nèi)SRAM數(shù)據(jù)存儲器?梢杂瞄W存的部分空間模擬E2PROM。此外,它還具有串行在系統(tǒng)編程功能(ISSP)。CY8C24533對片內(nèi)存儲器提供多種保護(hù)加密方式。與傳統(tǒng)的熔絲保護(hù)加密方式不同,CY8C24533是以塊加密方式實(shí)施對片內(nèi)存儲器的加密保護(hù),所以具有更高的安全性。 模塊資源 CY8C24533有4個(gè)數(shù)字模塊和4個(gè)模擬模塊。片內(nèi)的數(shù)字模塊可以配置成各種各樣的用戶模塊,比如時(shí)間定時(shí)器、實(shí)時(shí)時(shí)鐘、脈寬調(diào)制和死區(qū)脈寬調(diào)制(DB PWM)、循環(huán)冗余校對模塊、全雙工UART、SPI等功能模塊。片內(nèi)的模擬模塊可以配置多種模擬周邊功能,如比較器、可編程增益放大器、差分放大器、可編程濾波器。結(jié)合數(shù)字模塊和模擬模塊可以實(shí)施各種模數(shù)轉(zhuǎn)換,如7-14位的增量式模數(shù)轉(zhuǎn)換,8和11位的△-∑模數(shù)轉(zhuǎn)換等等。PSoC Designer集成開發(fā)環(huán)境也為用戶提供了靈活和完善的數(shù)字模塊和模擬模塊的輸入輸出路由、模塊和模塊之間的路由及數(shù)字模塊和模擬模塊之間的路由。在這些路由中還包括了一些硬件的邏輯運(yùn)算塊(LUT),這些邏輯運(yùn)算塊可以進(jìn)行16種邏輯運(yùn)算。用戶可以通過路由選擇和路由之間的邏輯運(yùn)算使模塊和模塊之間形成相互關(guān)聯(lián)的有機(jī)的功能塊,使這些功能塊具有更復(fù)雜更獨(dú)特更強(qiáng)大的功能。從而減少片外資源的使用,使系統(tǒng)更簡潔。 SAR ADC模塊 在電機(jī)控制中通常需要一個(gè)高速(High Speed)的ADC用于檢測過流信號進(jìn)而實(shí)施對功率MOS管的保護(hù)。CY8C24533集成了一個(gè)專用的8位逐次逼近ADC。它的一次轉(zhuǎn)換時(shí)間只有3.33μs,這對于快速的檢測過流信號非常有用。另外為了能在合適的時(shí)間進(jìn)行模數(shù)轉(zhuǎn)換,CY8C24533還提供了多種觸發(fā)方式來啟動模數(shù)轉(zhuǎn)換。它包括自由運(yùn)行、手動單次觸發(fā)和同步觸發(fā)方式。同步觸發(fā)方式原理框圖如圖2。在同步觸發(fā)方式有兩條通路(Low Path和High Path)可以實(shí)施觸發(fā)。這兩條通路分別有一個(gè)8位的寄存器與來自數(shù)字模塊的的計(jì)數(shù)值進(jìn)行比較,如果Low Path的比較結(jié)果相等時(shí)CMP_LO輸出高電平,如果High Path的比較結(jié)果相等時(shí)CMP_HI輸出高電平,CMP_LO和CMP_HI的輸出在通路邏輯(Path Logic)進(jìn)行邏輯運(yùn)算,邏輯運(yùn)算的結(jié)果為1時(shí)便觸發(fā)啟動模數(shù)轉(zhuǎn)換。通路邏輯有“與”和“或”兩種邏輯運(yùn)算功能,CMP_LO和CMP_HI的值由用戶設(shè)定。這個(gè)性能對電機(jī)控制非常有用。比如,當(dāng)DBB0被配置成一個(gè)8位的PWM時(shí),在一個(gè)PWM的周期里,ADC可以被觸發(fā)一次或兩次。當(dāng)CMP_LO或CMP_HI寄存器有一個(gè)被設(shè)置,并且通路邏輯設(shè)置“或”運(yùn)算時(shí)被觸發(fā)一次;當(dāng)CMP_LO和CMP_HI的寄存器被設(shè)置一樣并且通路邏輯設(shè)置“與”運(yùn)算時(shí)也被觸發(fā)一次;當(dāng)CMP_LO和CMP_HI的寄存器被設(shè)置不一樣并且通路邏輯設(shè)置“或”運(yùn)算時(shí)被觸發(fā)兩次。當(dāng)DBB0和DBB1被配置成一個(gè)16位的PWM時(shí),在一個(gè)PWM的周期里,模數(shù)轉(zhuǎn)換可以被觸發(fā)一次,這時(shí)通路邏輯設(shè)置“與”運(yùn)算。在直流無刷電機(jī)的控制中,通常PWM值用于控制電機(jī)的電壓或速度(Tempo),每一個(gè)PWM周期中的相電流的大小是變化的,用同步觸發(fā)方式可以在每一個(gè)PWM周期的固定時(shí)刻觸發(fā)模數(shù)轉(zhuǎn)換,采樣電機(jī)的電流信號,判斷電流是否異常,實(shí)施對電機(jī)和MOS管的有效保護(hù)。
圖3所示是一個(gè)電動自行車控制器系統(tǒng)原理框圖。圖中,CY8C24533作為主控芯片,左邊為各種輸入信號:調(diào)速轉(zhuǎn)把信號、剎車信號、電池電壓、電機(jī)的霍爾信號和其他外設(shè)信號。右邊是MOSFET的驅(qū)動電路、功率MOSFET三相橋電路以及電池電量顯示電路,F(xiàn)在的電動自行車都使用“無刷直流電機(jī)”作為傳動部件,所以CY8C24533必須通過來自電機(jī)的霍爾信號產(chǎn)生合適的相序信號提供給MOSFET的驅(qū)動電路,進(jìn)而驅(qū)動功率MOSFET三相橋,使無刷直流電機(jī)的三相繞組得到按一定規(guī)律變化的勵(lì)磁電流。 PWM輸出 為了通過調(diào)速轉(zhuǎn)把來控制轉(zhuǎn)速,必須將PWM信號疊加在相序信號上,通過調(diào)節(jié)PWM的占空比,來控制電機(jī)繞組的相電壓和電流實(shí)現(xiàn)轉(zhuǎn)速控制。通常MCU的PWM輸出是從固定的管腳輸出,所以傳統(tǒng)的MCU做法是在芯片的外部加邏輯電路將6路或3路相序信號和PWM信號相“與”后輸出。而CY8C24533 PSoC芯片有靈活多樣的模塊輸入和輸出的路由資源可以選擇,可以將一路PWM信號在不同的時(shí)刻路由到一個(gè)或同時(shí)路由到多個(gè)I/O上。如圖4所示將一個(gè)數(shù)字模塊配置成雙緩沖器,PWM信號的輸出配合雙緩沖器中的一個(gè)緩沖器便將PWM信號路由到LUT的四個(gè)輸出上,進(jìn)而通過數(shù)字輸出總線路由到一個(gè)或多個(gè)I/O上。這樣在換相且當(dāng)某一相或幾相需要PWM輸出時(shí),可在獲得換相信號時(shí)通過中斷程序?qū)WM輸出切換到相應(yīng)的I/O口上。I/O口的輸出可以直接輸入到MOS管的驅(qū)動電路,這樣就不需要外部加邏輯電路。圖5是在PSoC Designer開發(fā)環(huán)境下的PWM輸出路由配置圖。 峰值電流保護(hù) 電動自行車在使用過程中會有多種可能的情況導(dǎo)致瞬間峰值電流很大,這個(gè)電流如果超過MOS管的最大可耐受電流,MOS管將被擊穿。所以峰值電流保護(hù)是非常必要的。峰值電流保護(hù)的關(guān)鍵是響應(yīng)速度(Tempo)。通常采用硬件的方式來實(shí)施,如將采樣的電流送到一個(gè)比較器進(jìn)行比較,比較器的輸出再通過邏輯電路與PWM的輸入信號相“與”。在CY8C24533芯片中包含模擬模塊,CT(連續(xù)時(shí)鐘)的模擬模塊可以作可編程的比較器和可編程的放大器。我們將CT模塊作放大器用于放大電流信號,另一個(gè)CT模塊作比較器,用于比較電流信號,比較器的閾值可以程序設(shè)置。放大器的輸出作為比較器的輸出,比較器輸出到比較總線,比較總線經(jīng)LUT輸入到數(shù)字模塊的雙緩沖器中的另一個(gè)緩沖器,這個(gè)緩沖器的輸出經(jīng)由行輸出總線的LUT與PWM信號實(shí)現(xiàn)“與”操作(見圖4或圖5)。如果峰值電流超過設(shè)定的閾值,比較器的輸出將封住PWM的輸出,對MOS管實(shí)施有效的保護(hù)。 平均值電流保護(hù) 平均值電流保護(hù)對保護(hù)電機(jī)和MOSFET是非常重要的,尤其在堵轉(zhuǎn)時(shí)。因?yàn)殚L時(shí)間的堵轉(zhuǎn)會產(chǎn)生高溫而致使電機(jī)或MOSFET被燒毀。CY8C24533有高速(High Speed)逐次逼近ADC,因此可以利用上述的同步觸發(fā)方式在每個(gè)PWM 周期的固定時(shí)刻采樣電流值,以獲得平均值電流。如果這個(gè)值超過設(shè)定的閾值并持續(xù)一段時(shí)間(如3s以上),控制器自動保護(hù)軟件即會采取相應(yīng)的措施,如減少PWM的輸出或關(guān)斷PWM,來對電機(jī)和MOSFET實(shí)施有效的保護(hù)。 1:1助力 CY8C24533有數(shù)字模塊可以用作捕捉定時(shí)器,捕捉踏板轉(zhuǎn)軸的轉(zhuǎn)速信號,獲得模擬的1:1助力信號,然后通過對PWM的輸出的控制,實(shí)現(xiàn)模擬的1:1助力或1:N控制。由于CY8C24533的閃存空間高達(dá)8KB,可允許用戶程序設(shè)計(jì)多種功能和保護(hù);赑SoC CY8C24533的電動自行車控制器還包括超靜音功能、防飛車功能、短路保護(hù)功能、欠壓保護(hù)功能、定速巡航、ABS剎車再生制動等功能。超靜音功能減少了起步噪聲;防飛車功能解決了無刷控制器由于轉(zhuǎn)把或線路故障引起的飛車現(xiàn)象,提高了系統(tǒng)的安全性;短路保護(hù)功能防止電機(jī)三根相線輸出端任意兩端短路或三端全短路,以及控制器不會燒毀;欠壓保護(hù)功能使得電池電量不足時(shí)及時(shí)通知用戶更換電池。定速巡航、ABS剎車使控制器的性能更加完善。 本文小結(jié) 基于PSoC CY8C24533的電動自行車控制器,利用其模擬、數(shù)字和路由資源使整個(gè)系統(tǒng)只用一個(gè)PSoC芯片便實(shí)現(xiàn)了上述的所有控制功能,因此無需任何外圍芯片,外圍元件的數(shù)目也相應(yīng)減少。這充分體現(xiàn)了SoC的優(yōu)勢,同時(shí)芯片的資源也得到了充分有效的利用。由于CY8C24533的模擬、數(shù)字和路由等資源也是可編程的,其使設(shè)計(jì)工程師的智慧和創(chuàng)意得到更多體現(xiàn)的同時(shí),也使電動自行車控制器的性能得到更多的提升。(作者:Cypress半導(dǎo)體公司 翁小平 黃建明 江小平) |
|
|
湘公網(wǎng)安備 43120202000083號