張 雁, 于政寬, 李德世, 張國強
(長春大學(xué) 機械與車輛工程學(xué)院, 吉林 長春 130022)
傳統(tǒng)的手動輪椅已經(jīng)無法滿足用戶的需求, 而電控系統(tǒng)的引入可以為用戶提供更大的便利和舒適性。其中,STM32 作為一種高性能的微控制器, 具有強大的處理能力和豐富的外設(shè)接口, 為輔助輪椅電控系統(tǒng)的創(chuàng)新設(shè)計提供了廣闊的空間。 本文將重點探討如何利用STM32 的特性和功能,設(shè)計出更智能、更安全、更舒適的輔助輪椅電控系統(tǒng),以提升用戶的生活質(zhì)量和獨立性。
本產(chǎn)品由STM 模塊與輪椅部分組成,STM 模塊主要是由STM32F103 作為主控板,速度監(jiān)測控制,ECG(Electrocardiogram)心電檢測傳感器,角度傳感器。 可以實現(xiàn)對老人以及輪椅的狀態(tài)監(jiān)控并自動觸發(fā)報警, 通過GPRS的蜂窩移動介入與監(jiān)護人的上位端APP 及時聯(lián)系,可以及時得到救助。為了方便移動、固定可以在輪椅部分在座椅下方可以加上輪子與固定裝置,輪子采用橡膠材質(zhì),可以實現(xiàn)靜音、減震的作用,總體系統(tǒng)流程圖如圖1 所示。
圖1 總體系統(tǒng)流程圖
系統(tǒng)的控制部分采用了STM32 系列C8T6 單片機,其最高工作頻率可達72MHz;總的來說,通過輪椅扶手處搖桿將控制信號傳遞給MCU,MCU 通過ADC 等外部模塊持續(xù)收集電機的工作狀態(tài)信息,實現(xiàn)了矢量控制。 根據(jù)矢量控制的驅(qū)動原則, 控制電路必須對霍爾傳感器所輸出的三相霍爾信號進行采集, 從而獲得電動機的旋轉(zhuǎn)情況,然后由MCU 將切換信號輸入到驅(qū)動芯片中,除此之外,一些外部電路來實現(xiàn)電流的測量和電壓的穩(wěn)定化。
STM32 單片機收集電流收集部分使用運放, 將收集到的相位電流經(jīng)過放大后傳送給單片機的模數(shù)轉(zhuǎn)換器,再經(jīng)單片機計算得到真實的電流值。 電動機V 相位的電流, 通過取樣電阻器得到。 在此基礎(chǔ)上,利用單片機對測量到的相電流進行處理,并將其作為閉環(huán)控制的依據(jù)。在相位電流到達最大時,程序會自動切斷全部開關(guān),使系統(tǒng)不能正常工作。 在運行階段,STM32 單片機響應(yīng)外部事件,中斷、定時器、ADC 采樣等,執(zhí)行相應(yīng)的中斷服務(wù)程序。中斷服務(wù)程序執(zhí)行完成后,STM32 單片機會返回主程序繼續(xù)執(zhí)行。運行流程是循環(huán)執(zhí)行的,主程序會不斷地循環(huán)執(zhí)行,直到復(fù)位或者停止運行。 因此,在應(yīng)用程序設(shè)計時,需要注意循環(huán)的設(shè)計,保證程序的正確性和穩(wěn)定性。STM32 支持多種接口,包括UART、I2C、SPI 等,可以與各種傳感器、執(zhí)行器等進行通信[1],從而實現(xiàn)多種輔助功能,如傾斜傳感器、 加速度傳感器、ECG 心電圖傳感器等,如圖2 所示。
圖2 STM32F103C8T6 電路圖
本設(shè)計采用SCA100T 芯片作為傾角傳感器來檢測輪椅的姿態(tài)狀態(tài),實現(xiàn)輪椅翻倒警報功能,SCA100T 芯片是一種高精度的傾角傳感器, 能夠?qū)崟r測量輪椅的傾斜角度,并精確反饋給控制系統(tǒng),從而實現(xiàn)更為準確的輪椅控制。傾角傳感器一般指的是水平傳感器,該儀器的工作原理是利用兩軸傾角傳感器SCA100T 來實現(xiàn)的,SCA100T是雙軸傾角傳感器,原理如圖3 所示為固體擺式示意圖,它是由擺錘、 擺線和支架組成的[1]屬于固擺式傾角傳感器, 姿態(tài)處理模組電路見圖4 該種類型的傳感器主要是把測量到的靜態(tài)重力加速度的變化量轉(zhuǎn)換為傾角信息量的變化[2]。
圖3 固體擺式原理示意圖
圖4 姿態(tài)處理模組電路圖
受重力G 和拉力T 的作用下,根據(jù)平行四邊形法則,合外力F 為:
在對測量結(jié)果進行運算后,使用SPI 來與LCD 顯示屏的顯示模塊進行通訊, 使用I2C 協(xié)議來讀出姿態(tài)傳感器SCA100T 的數(shù)據(jù),使用串口通信的模式來接收藍牙模塊的數(shù)據(jù), 并且通過PWM 波形來對電動機和舵機進行控制。 姿態(tài)處理模組電路如圖4 所示。
誤差修正放大器的主要負責(zé):消除零點誤差,根據(jù)電路的電源電壓,適當?shù)胤糯髠鞲衅鞯撵`敏度,使電路的抗干擾能力最大化[3]。 A/D 轉(zhuǎn)換和信號處理電路,其主要功能是對從誤差放大器中輸出的DC 信號進行A/D 轉(zhuǎn)換,并對其進行角度計算,并輸出角度數(shù)據(jù)。
通過使用單片機STM32F103ZET6 接收按鍵模塊產(chǎn)生的信號,PWM 信號輸出和控制信號輸出分別通過計算相應(yīng)的占空比得到。 產(chǎn)生的PWM 信號驅(qū)動L298 的使能和方向,控制電機的轉(zhuǎn)動。在STM32 中,PWM 輸出的方式一般采用定時器的方式,通過控制定時器的計數(shù)值、時鐘源等參數(shù), 可以實現(xiàn)PWM 輸出的占空比和頻率的調(diào)整。使用STM32 的PWM 進行調(diào)速的基本步驟和公式:
(1)初始化TIM 選擇適當TIM,根據(jù)需要設(shè)置其時鐘源、計數(shù)器分頻器和計數(shù)器模式等??梢詫IM2 配置為向上計數(shù)模式,并使用系統(tǒng)時鐘作為時鐘源。其中自動重載寄存器的值應(yīng)該根據(jù)所需PWM 頻率和時鐘頻率計算得出。
ARR=(F_TIMERCLK/(F_PWM*PWM_RESOLUTION))-1(2)
ARR 為自動重載寄存器的值,F(xiàn)_TIMERCLK 為TIM的時鐘頻率,F(xiàn)_PWM 為所需的PWM 頻率,PWM_RESOLUTION 為PWM 的分辨率(通常為1000 或者4096)。 配置輸出比較通道(OC)選擇一個或多個OC 通道,設(shè)置其模式和參數(shù), 輸出比較模式、 預(yù)裝載和極性等。 可以將OC1 通道配置為PWM 模式, 設(shè)置占空比為50%。 啟動TIM 將TIM 使能,開始計數(shù)。
Duty Cycle = (CCR / ARR)*50% (3)
(2)CCR 為捕獲比較寄存器的值,ARR 為自動重載寄存器的值。 CCR 的值應(yīng)該根據(jù)所需占空比計算得出。
(3)啟動定時器(TIM)TIM 開始計數(shù),通過設(shè)置TIM的CR1 寄存器的CEN 位來實現(xiàn)。
(4) 改變占空比使用STM32 的庫函數(shù)來更改OC 通道的值,改變PWM 輸出的占空比。 可以使用以下庫函數(shù)將OC1 通道的值更改為75%:TIM_SetCompare1(TIM2,(uint16_t)(ARR*0.75))。
(5)調(diào)整占空比使用外部信號(例如電位器、編碼器或傳感器)來調(diào)整PWM 輸出的占空比,使用ADC 模塊讀取電位器的值,并將其轉(zhuǎn)換為占空比。
(6)調(diào)整占空比:可以使用外部信號(例如電位器、編碼器或傳感器) 來調(diào)整PWM 輸出的占空比。 可以使用ADC 模塊讀取電位器的值,并將其轉(zhuǎn)換為占空比。
采用高速過流檢測電路可以實現(xiàn)實時監(jiān)測電機過流情況、快速響應(yīng)電路故障、增強設(shè)備穩(wěn)定性和保護電池電路等優(yōu)點,老年人輔助輪椅電機在運行時,可能會因為各種原因出現(xiàn)過載或者堵轉(zhuǎn)等異常情況, 如果不及時發(fā)現(xiàn)并處理,就會對老年人的使用安全造成嚴重的威脅。采用高速過流檢測電路能夠?qū)崟r監(jiān)測電機的過流情況, 及時發(fā)現(xiàn)并處理異常情況,保證老年人的使用安全。
該高速地測過流檢測解決方案采用單個零漂移快速建立放大器(OPA388)和一個高速比較器(TLV3201)加以實現(xiàn)。該電路轉(zhuǎn)為檢測快速電流信號和過流時間(如電機和電源) 的應(yīng)用設(shè)計。 高速過流檢測電路如圖5 所示。OPA388 具有最寬的寬帶以及超低漂移和快速壓擺率,選擇該器件。 TLV3201 具有快速響應(yīng)功能(因為其40ns 的小傳播延遲和4.8ns 的上升事件), 因此選擇了該器件。這使比較器能夠直接連接微控制器的邏輯電平。TLV3201 還具有低功耗和40μA 的靜態(tài)電流。 通常,對于低測電流檢測檢測電阻器上的放大器可用于同相配置。不過, 所示的應(yīng)用電路使用OPA388 作為檢測電阻器上的差分放大器。 這在分流電阻器上提供了真正的差分測量,并且在電源接地和負載接地不一定相同的情況下可能是有利的[4]。
圖5 高速過流檢測電路
圖6 設(shè)計仿真
圖7 瞬態(tài)響應(yīng)仿真結(jié)果
(1)確定傳遞方程,其中R1=R2并且R2=R4。
(2)選擇檢測電阻器值(假設(shè)最大壓降為10Ma,負載電流為1A),以最大限度地降低電阻器上的壓降。
(3)選擇放大器增益,是COMP_IN 在負載電流達到臨界閾值1A 時達到2V。
設(shè)置:R1=R2=1kΩ,R2=R4=200kΩ
(4)計算放大器的跨足增益
直流無刷電機可以通過精確的電流控制實現(xiàn)高精度的速度和位置控制, 可以保證老年人輔助輪椅的行駛穩(wěn)定性和安全性,同時提供更好的使用體驗。直流無刷電機運轉(zhuǎn)時噪音較低,能夠減少對老年人的干擾和影響,提高老年人的使用舒適度[5]。
本設(shè)計采用ATK-PD6010 作為電機驅(qū)動板支持DC12~60V 寬范圍供電,最大輸出電流10A,最大驅(qū)動功率600W;支持霍爾傳感器檢測,編碼器檢測,過零檢測;支持3 相電流采集,相反向電動勢采集,溫度采集,驅(qū)動板電源電壓采集。 由于三相U/V/W 的驅(qū)動器是一樣的,所以通過U/V/W 的驅(qū)動器為例進行分析:U 相高、 低側(cè)PWM 訊PWM_UH 及PWM_UL,經(jīng)由圖騰輸出型光耦合,分別進入門驅(qū)動邏輯控制輸入端子HIN 及LIN, 當控制訊號SD_IN=0 時, HIN 訊號經(jīng)由HO,而HIN 為1 時,Q1為ON,HIN 為0 時,Q1 為OFF,Q1 為OFF;然后,LIN 信號經(jīng)由LO 來控制下部管Q2 的接通和斷開。Q1、Q2 的輸出Motor_U 與馬達的U 相連接。 圖騰的輸出與推挽輸出相似,不需要上下拉電阻,具有很好的輸出能力,而且輸出信號會隨著輸入信號而變化, 在光耦輸入端懸浮的時候,默認輸出是低電平。 采用了圖騰式的輸出光耦合,在輸入懸空時,上、下管同時關(guān)閉。 無刷直流電機的機械特性為:n=Ud/(2Keφ)-2Tem/(KTφ), 因此可以通過調(diào)節(jié)端電壓Ud或定子電流Id來實現(xiàn)調(diào)速[6]。 驅(qū)動板3 相H 橋電路,如圖8 所示。
圖8 驅(qū)動板3 相H 橋電路
根據(jù)電機驅(qū)動板支持DC12~60V 寬范圍供電, 最大輸出電流10A,最大驅(qū)動功率600W 的條件下選用MY1016Z直流無刷電機。這款電機的額定功率和額定轉(zhuǎn)矩能夠滿足電機控制板的最大輸出電流和輸出功率的要求, 同時電機的外形尺寸也比較緊湊,適合安裝在電動輪椅上。MY1016Z電機的額定功率為350W,能夠提供足夠的功率驅(qū)動輪椅運動。電機的額定轉(zhuǎn)速為3200rpm,轉(zhuǎn)矩1.6Nm,這樣的參數(shù)可以提供適度的動力, 使老年人在使用輪椅時更加舒適和安全MY1016Z 電機運行平穩(wěn),噪音更少,比傳統(tǒng)的有刷電機更加適合老年人電動輪椅使用。 這可以提供更加安靜、舒適的使用體驗,不會對老年人的健康造成負面影響。 尺寸緊湊,相對于傳統(tǒng)的有刷電機來說體積更小,適合安裝在輪椅上。
3 個U4、U5、U6 雙A B 運放TP2412,TP2412 為高帶寬低噪低失調(diào)電壓運放,性能優(yōu)異,非常適合用于電壓和電流的放大。 U 相經(jīng)過過壓的電壓信號DIV_U 被連接到U4B 的同相端子上, 由于R12、R24 未被焊上,U4B 運算放大器被用作一個電壓跟蹤器, 其7 個引腳的輸出信號的幅值與輸入值一致。 盡管輸入輸出信號的幅度是一樣的,但在一定程度上,輸出信號與輸入信號被隔離開來。與此同時,由于控制板和驅(qū)動板之間是由排線連接,所以信號路徑較長,衰減較大。 在7 腳輸出之后,加上了RC低通濾波,以消除信號線上的高頻干擾,最后得到了用于控制板ADC 采集用的信號BEMF_U (BEMF 為反向電動勢縮寫)。此外, ESD 二極管VD2 還起到了消除靜電的作用,因此對IO 起到了保護作用。
U 相位的電流放大,將取樣電阻器(電流I)上的信號I-V_U 通過差分的方法,通過對U4A 運算放大器(運算放大器)進行差分,差分參考電壓VCC1.2。
基準電壓Vref 是1.25V。因此,在放大后,輸出為Iout=6×0.02×1+1.25V
通過對Iout輸出的模數(shù)轉(zhuǎn)換器進行處理,即可得到相電流I 值。 可見,運算放大器的輸出也是經(jīng)過了RC 的低通濾波器和ESD 的保護.其中,AMP_IU 即為模數(shù)轉(zhuǎn)換器所使用的電流訊號。 ATK-PD6010B 驅(qū)動板板載的電壓電流采集電路,如圖9 所示。
圖9 電壓電流采集電路
ECG(ElectroCardiogram)是一種用來記錄心電信號的非侵入性檢查方法。它可以檢測心臟的電活動,并以圖形的形式呈現(xiàn)出來。 ECG 的原理是利用電極在皮膚表面記錄心臟產(chǎn)生的電信號, 然后將這些信號放大并記錄在紙上或顯示屏上。 當心臟肌肉收縮時,它會產(chǎn)生一系列電信號,稱為心電圖波形。 這些波形可以分為P 波、QRS 波和T 波,它們分別代表心房收縮、心室收縮和心室復(fù)極。ECG 設(shè)備可以測量這些波形的幅度、 持續(xù)時間和形狀,以檢測心臟的功能和異常。 在進行ECG 檢查時,通常會在身體的四肢和胸部放置電極。 這些電極可以記錄心臟電信號在身體不同位置的變化,然后將這些信號轉(zhuǎn)換為圖形[7]。
此設(shè)計采用了電容耦合電測量方法, 對老年人生命信進行了測量, 它的方法是將心電信號通過電容耦合的方式進行數(shù)據(jù)采集, 采集的信號在經(jīng)過濾波、 放大、A/D轉(zhuǎn)換后,再送到單片機中進行數(shù)據(jù)分析與處理[8]。 其系統(tǒng)流框圖具體如圖11 所示。
圖11 MAX30102 心率模塊系統(tǒng)流程圖
工作原理是建立在血紅素吸收光線的性質(zhì)上。 在氧化血紅蛋白上,紅外線的強度大于紅光,而在氧化血紅蛋白上,紅外線的強度大于紅光。 在測量過程中,基于動脈血液流動的脈動特征, 脈動速度和脈動強度也被確定并顯示出來[9]。 光源使用具有特定波長的LED,所述LED 對動脈血液中的血紅蛋白(HbO2)和血紅蛋白(Hb)具有特異性;透光率轉(zhuǎn)換為電信號:由于動脈搏動充血的溶劑發(fā)生了變化,從而使這束光的透光率發(fā)生了變化,這時,通過光電變換接收通過人體組織反射的光線,轉(zhuǎn)化為電信號,并將其放大輸出。 光容積法:是利用人的身體組織在脈搏跳動時所產(chǎn)生的光線的差異,來測量血液中的氧氣含量。
模擬電路:傳感器輸出的電信號非常微弱,需要通過模擬電路進行放大和濾波。模擬電路通常由放大器、濾波器和采樣電路組成。放大器用于放大信號,使得信號的幅度足夠大以便于后續(xù)的處理,模擬電路如圖12 所示。
圖12 MAX30102 電路圖
此設(shè)計設(shè)計為了解決老年人在日常生活中行動不便問題, 也是本產(chǎn)品設(shè)計的起點, 在現(xiàn)如今的時代,國內(nèi)的老齡化的趨勢,老年人行動不便是老齡化問題其中之一,老年人對輔助產(chǎn)品的需求也接踵而至,在十九大提出了《國家積極應(yīng)對人口老齡化中長期規(guī)劃》鼓勵運用現(xiàn)代科技對老年人輔助產(chǎn)品進行研發(fā)設(shè)計。 老年人輔助產(chǎn)品對人機交互性能要求嚴格, 所以對老年人輔助輪椅有巨大的需求。 這項技術(shù)有可能極大地改善依靠輪椅行動的老年人的生活質(zhì)量, 并為他們的親人和看護人提供安心。隨著進一步的開發(fā)和完善,該系統(tǒng)可能成為輪椅和其他助行器設(shè)計中廣泛采用的安全功能。