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