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