引言
控制工業(yè)的發(fā)展使得在很多場合下需要使用體積小、功能強(qiáng)的控制器。例如在電動自行車上,為了不在外觀上對車身產(chǎn)生重大的影響(這實(shí)際上是行業(yè)標(biāo)準(zhǔn)的要求之一),電機(jī)作為后輪的一部分,電池(雖然體積不小)也盡量安裝在不甚矚目的地方。這樣的總體要求使得電機(jī)控制器也必須在完成所需功能的前提下,盡可能地小巧。這樣的要求歸結(jié)到電路的層次就要求選取盡量少和盡量小的元件來實(shí)現(xiàn)控制功能。幸運(yùn)的是,大規(guī)模集成電路的發(fā)展使得這樣的實(shí)現(xiàn)成為可能。Cypress Microsystems, Inc.的PSoC系列就是一種新型的功能強(qiáng)大的控制器優(yōu)選IC,利用它可以極大程度地減少外圍電路。
1 PSoC 及其特點(diǎn)
PSoC 即可編程片上系統(tǒng)(Programmable System on Chip)。Cypress Microsystems, Inc.的PSoC Cy8c24xxx 系列片內(nèi)有一個高速內(nèi)核、Flash 快速閃存和SRAM 數(shù)據(jù)內(nèi)存,以及設(shè)計(jì)者可配置的模擬和數(shù)字模塊。其主要特征如下:
■ 功能強(qiáng)大的 Harvard 結(jié)構(gòu)處理器:M8C 處理器速度可達(dá)24MHz;8×8 乘法,32 位加法。
■ 先進(jìn)的外圍電路(PSoC Blocks):6 個模擬PSoC Block 提供多至14 位ADC、多至8 位DAC、可編程放大器、可編程濾波器和比較器;4 個數(shù)字PSoC Block 提供8-32 位定時(shí)器、計(jì)數(shù)器和PWM、可連至所有GPIO 引腳、可組合成復(fù)雜的外圍電路。
■ 靈活的片上存儲器:4K 字節(jié)Flash 程序存儲,50,000 次擦寫;256 字節(jié)SRAM 數(shù)據(jù)存儲;在系統(tǒng)編程。
■ 可編程的引腳配置:所有GPIO 25mA 驅(qū)動;上拉、下拉、高阻、強(qiáng)力及開路驅(qū)動模式。
■ 其他系統(tǒng)資源:看門狗和睡眠定時(shí)器等。
■ 完善的開發(fā)工具:免費(fèi)的開發(fā)軟件 PSoC Designer;全功能在線仿真器和編程器。
PSoC 將傳統(tǒng)的單片機(jī)系統(tǒng)集成在一顆芯片里,用戶模擬和數(shù)字陣列的可配置性是其最大特點(diǎn),可供開發(fā)者隨需配置。
2 控制器需要實(shí)現(xiàn)的功能
設(shè)計(jì)的控制器用于電動自行車上直流電機(jī)的控制,具有如下一些功能:
(1) 根據(jù)電動手柄或腳踏傳感器的輸入,輸出相應(yīng)脈寬的PWM 值,改變驅(qū)動電流,從而達(dá)到改變電機(jī)轉(zhuǎn)速的功能;
(2) 定時(shí)巡航功能:若手柄或腳踏輸出在一段時(shí)間內(nèi)不變,則不再響應(yīng)新的輸入而保持固定的PWM 脈寬輸出,直到輸出超過10%;
(3) 安全方面的考慮。限速:限速開關(guān)閉合則控制電機(jī)最大速度不超過某定值;剎車:檢測到剎車信號,則停止所有輸出,剎車信號取消后系統(tǒng)重新啟動;
(4) 車速輸出指示:通過測量Hall 傳感器信號檢測車速,送車速指示表盤;
(5) 產(chǎn)生一個50kHz 的時(shí)鐘信號,送驅(qū)動電路。
另外,為保證系統(tǒng)的健壯性(Robustness),對于一些偶然的誤操作或外部條件的突然改變應(yīng)有一定的容錯功能。
(1) 過流保護(hù):電流過大會損壞電路中的元器件,從而影響系統(tǒng)的正常工作。因此,過流保護(hù)是一項(xiàng)重要的措施;
(2) 電池欠壓保護(hù):電池的電壓過低時(shí)繼續(xù)工作會嚴(yán)重影響電池的壽命。因此,需要欠壓保護(hù)來提示用戶;
(3) 溫度保護(hù):電路中溫度過高會影響元器件的正常工作,所以對此也要采取適當(dāng)?shù)拇胧?/p>
3 控制器設(shè)計(jì)和實(shí)現(xiàn)
3.1 PSoC 設(shè)置
根據(jù)設(shè)計(jì)要求,選用CY8C24423,首先考慮對PSoC 進(jìn)行設(shè)置,如圖1。系統(tǒng)中選用了多種內(nèi)部模塊。如表1。內(nèi)部模塊設(shè)置完成后,對相應(yīng)的管腳進(jìn)行配置,包括I/O 設(shè)定和中斷方式設(shè)定等。另外,對全局資源進(jìn)行設(shè)置。本系統(tǒng)中主要的參數(shù)有: CPU 時(shí)鐘24MHz、工作電壓5V、睡眠定時(shí)512Hz(供看門狗定時(shí)用)。
圖1 控制器中PSoC設(shè)置
3.2 控制電路設(shè)計(jì)
如 3.1 所述,由于大部分功能都可以通過PSoC 實(shí)現(xiàn),因此硬件電路的設(shè)計(jì)相對簡單。圖2 給出了系統(tǒng)中電路框圖。
圖2 控制器電路框圖
控制電路對輸入的電流、電池電壓、手柄電壓和溫度電壓送入A/D 采樣;腳踏電壓采用中斷方式,根據(jù)脈沖寬度判斷車速和施加在腳踏傳感器上的力的大小,送出相應(yīng)的PWM,實(shí)現(xiàn)助力;剎車中斷作為一個獨(dú)立的中斷源,具有最高的優(yōu)先級。PWM 輸出對于電機(jī)的上臂和下臂采用不同的處理。上臂信號直接輸出,而下臂信號在與Hall 傳感信號“與”后輸出。
3.3 控制軟件設(shè)計(jì)
系統(tǒng)的核心部分是軟件的設(shè)計(jì)。圖3 給出了系統(tǒng)運(yùn)行的總體流程。
圖3 控制器軟件流程
其中,SA、SB 和SC 分別為Hall 傳感器輸入的電機(jī)位置信號,根據(jù)他們來確定送往電機(jī)控制上臂(AT/BT/CT)和下臂(AB/BB/CB)的驅(qū)動信號。主程序根據(jù)優(yōu)先級對可能出現(xiàn)異常的參數(shù)進(jìn)行輪詢。若一切正常,則所需操作就是取得手柄或腳踏輸入轉(zhuǎn)換為PWM 輸出驅(qū)動電機(jī)轉(zhuǎn)動。對于手柄電壓和電流保護(hù)采樣,放在PWM 中斷中實(shí)現(xiàn),將在下文說明。使用PSoC 進(jìn)行程序設(shè)計(jì),可有兩種選擇——匯編或C 語言實(shí)現(xiàn)。即使在匯編程序中,也可以定義所需要的常數(shù)和變量,這無疑大大減小了程序的復(fù)雜程度,在現(xiàn)有單片機(jī)中是很有特色的。
以下是匯編程序中關(guān)于電流保護(hù)的一段。
其中定義了若干變量,使得程序的可讀性大大增強(qiáng)。
3.4 系統(tǒng)設(shè)計(jì)中的關(guān)鍵技術(shù)
前文已經(jīng)提到,本系統(tǒng)中使用最頻繁的是手柄/腳踏采樣然后送PWM 輸出;最高優(yōu)先級的是電流保護(hù)。因此,在PWM 中斷程序(pwmint.asm)中實(shí)現(xiàn)這兩個功能。
PWM 相關(guān)設(shè)置
PWM 輸出頻率選擇15kHz/25kHz 兩種,主要的考慮是避開可聽聲的頻率范圍(20Hz~20kHz,到15kHz 時(shí)人耳已經(jīng)不甚敏感),同時(shí)及時(shí)響應(yīng)可能的電流異常。
手柄/腳踏信號采樣及處理
為了操作的簡便,該設(shè)計(jì)中省去了一般電動車上的腳踏開關(guān)。因此,對于同時(shí)進(jìn)入的采樣信號,既要保證都能夠檢測到,又要采用合理的處理方法送PWM 輸出。
圖4 給出了系統(tǒng)中手柄采樣/電流保護(hù)一體化處理的流程。其中中斷執(zhí)行5 次(時(shí)間間隔:5/15000=0.33ms)分別進(jìn)行一次手柄電壓采樣,并和腳踏采樣比較,大者送PWM 輸出。圖4 手柄采樣/電流保護(hù)一體化處理過流保護(hù)的實(shí)現(xiàn)。
圖4 手柄采樣/電流保護(hù)一體化處理
我們知道,瞬間的電流沖擊對于電子元器件有很強(qiáng)的損耗,甚至毀壞。特別對于直流電機(jī)來說,在啟動瞬間或者突然的堵轉(zhuǎn),將產(chǎn)生電流沖擊。因此,在這種情況下,必須立即減小PWM 輸出脈寬,以防意外。系統(tǒng)中,對于過流保護(hù)是一個重點(diǎn),而其難點(diǎn)在于迅速對過流作出響應(yīng)。若采用PSoC 中的A/D 模塊進(jìn)行采樣,即使使用響應(yīng)較快的6 位A/D 模塊SAR6(已經(jīng)犧牲掉了一定的精度),其轉(zhuǎn)換時(shí)間20μ s,經(jīng)測試,后續(xù)的處理難以起到限流作用。另外一個問題就是對于沖擊毛刺的處理。由于電流(系統(tǒng)中通過一個5mΩ 的電阻變換為電壓信號)在上升沿處容易產(chǎn)生毛刺,因此需要一定的延時(shí)再進(jìn)行處理。這樣,上述模塊更加難以勝任。經(jīng)過仔細(xì)分析遴選,最終確定選用CMPPRG 比較器模塊。
該模塊響應(yīng)時(shí)間(在HighPower模式下)響應(yīng)時(shí)間僅為1.2μ s,加上為剔除毛刺所需要的10μ s延時(shí),仍能夠滿足限流需求。需要指出的是,系統(tǒng)設(shè)計(jì)中巧妙利用PWM 輸出過程進(jìn)行限流處理,使得限流更加可靠。圖5給出了限流處理的時(shí)序。在第一個PWM 周期內(nèi),沒有檢測到過流,因此PWM 輸出脈寬在第二周期內(nèi)保持不變。在第二個周期內(nèi)檢測到了過流,立即從下一周期開始減小PWM 輸出脈寬,從而電流得到了限制。
圖5 限流處理時(shí)序圖
結(jié)語
本文介紹了一款電動自行車控制器的設(shè)計(jì)。該設(shè)計(jì)基于功能強(qiáng)大的PSoC 單片機(jī),外圍電路簡單可靠,程序設(shè)計(jì)中利用PWM 輸出高電平時(shí)間檢測電流過載,取得的很好的效果。目前,該控制器已經(jīng)量產(chǎn),用戶反響良好。
-
PSoC
+關(guān)注
關(guān)注
12文章
170瀏覽量
91816 -
電機(jī)控制器
+關(guān)注
關(guān)注
20文章
519瀏覽量
32037
發(fā)布評論請先 登錄
相關(guān)推薦
評論