Profile - TW035


TW035

具生理回饋之智慧型載具

國立成功大學
醫學工程研究所


Finals


[print]


Project

Name of Project:具生理回饋之智慧型載具

Contest Advisor

Name:陳天送 教授

Members

No.Name
1黃鎮浩
2黃秉宏
3巫建興
4黃建豪

Project Paper - view as Preliminary(2011/07/21), Final(2011/11/01), Draft, Latest

1. 設計介紹 (Preliminary Paper)

       輪椅是當今最常被使用者用來增加移動性的行動載具,國內載具使用需求也隨著老年人口不斷增加。目前市面上輪椅雖可幫助下肢癱瘓的病人移動與簡易之行動輔助,對於使用者的安全性即時生理監測評估及實用性上仍略顯不足,而一般站立架設計多數僅提供失能者站立功能,少有在移位及移動上兼備良好功能。
       故本系統結合
FPGA建立新型站立機構設計與高效能生理監測演算法建立智慧型載具,協助行動失能者行動、站立及移位功能,藉由使用此一智慧型站立行動載具,可以達到幫助使用者的獨立生活,亦能減輕照顧者的生理及心理負擔。本作品使用FPGA及嵌入一顆NiosII 軟核心處理器所來研製兩輪驅動與線性致動器之站立式電動輪椅控制晶片,用之實現兩輪轉速差、光學編碼器信號偵測、脈波寬度調變以及模糊控制器電路,使得本載具在移動、轉彎、站立架升降皆有優越的表現。另一方面,改善現今同類型的載具缺乏的生理回饋機制,避免病患在使用載具過程中,因使用不當而造成的傷害,亦是本參賽作品的設計概念。在病患使用載具的同時,監測心律不整、呼吸不規律、溫度失調、暈眩而失去知覺導致跌倒安全機制,產生其功能性、適用性及操控之人因分析,配合未來智慧型生活空間設計。

1: 智慧型載具設計概念圖

 

(Revision: 2 / 2011-06-11 00:11:26)

2. 功能描述 (Final Project Paper)

 本作品-生理回饋之智慧載具(圖2-1),載具的移動使用FPGA做到多種理論控制,使得載具移動精確且順暢,,此外更有讓使用者在載具上有移位功能,同時位於使用者胸前的生理回饋裝置,更全程監控使用者的生理狀況,若使用者生理狀況發生異常,如心律異常、呼吸急促時,生理回饋裝置會與FPGA溝通,再由FPGA啟動安全回饋機制,使用者所搭乘的載具會即時停止,以減少載具對使用者進一步的傷害,進而讓醫護人員進行緊急協助,達到載具使用者的安全考量。

 

圖2-1: 生理回饋之智慧載具系統

一. FPGA模組完成之功能描述

1. 速度迴路之模糊控制器:完成以此FPGA為基礎來設計應用於電動輪椅平台之速度迴路模糊控制器,具有設計快速、節省資源與克服平台參數未確定性及自我強健性的功能。
2. 光學編碼器信號偵測電路(QEP)電路:偵測電動輪椅實際軌跡。
3. 脈波寬度調變信號電路(PWM信號):將模糊控制器之計算結果以PWM訊號送入驅動電路,來驅動智慧型功率模組(IPM)以精確控制直流輪圈馬達。
4. 梯形加、減速之速度命令電路:用來控制輪椅之速度命令以梯形速度軌跡達到目標命令,可提升輪椅在行駛上之順暢以  及更好之安全性。
5. 以RS-232讀取89S51之訊號與解碼:在FPGA讀取以RS-232傳輸之控制面板資訊,解碼後給予Nios做運算。

二. 在NiosII處理器模組完成之功能描述

1. 電動輪椅運動軌跡策略計算:利用控制面板上之資訊,經由編碼後傳至FPGA,由NiosII軟核心進行解碼,進而設定輪椅之段速,以及計算輪椅在操控時之差速命令(圖2-2)。
2. 差速命令之限制:將差速命令對左右偏擺之權重做限制,可以在操作偏擺時,兩輪之差速不至於過大,使操作者更安全。

 

                                                                                      
圖2-2: 梯型速度規劃示意圖

三. 在生理參數模組完成之功能描述

1.身份辨識功能:可自訂使用者參數,應用於不同使用者系統辨識,且不會互相影響。
2.生理參數警示功能:當發生異常時,載具能適當地使載具漸漸停止,讓使用者回到舒適坐姿。
3.具生理回饋移位功能:依使用者生理狀況調整升降速度。
4.胸導程ECG心電圖偵測系統

5.體溫監控系統
6.呼吸率監控系統
 



(Revision: 7 / 2011-08-29 16:03:20)

3. 效能參數 (Final Project Paper)

        在本做品中透過Altera的NiosII系列軟式核心嵌入式處理器可編程邏輯和可編程晶片系統 (System-On-a-Programmable-Chip, SOPC)來整合軟硬體,下圖3-1 為Quartus II 編譯後的系統資源使用狀況。

圖3-1: 系統資源使用圖

此站立式電動輪椅運動控制晶片內部電路方塊圖控制晶片所使用的資源如表.3-1所示,使用5,802個LEs約為總資源之17%、而記憶體使用75,264 bits約為總資源之16%。

表.3-1 站立式電動輪椅運動控制晶片資源使用表


 

(Revision: 4 / 2011-08-29 14:38:34)

4. 設計架構 (Preliminary Paper)

1. NiosII 智慧型控制載具軟硬體   

        本作品以FPGA實現速度控制IP、速度迴路模糊控制器、PWM訊號產生、光學編碼器訊號讀取、倍頻電路、RS232之傳輸電路及解碼電路等。本系統運動速度軌跡之計算則由軟體NiosII處理器來執行並產生速度命令下圖4-1為站立式電動輪椅之控制晶片架構圖和方塊圖,其中包含兩組輪圈馬達控制速度控制IP及一顆Nios處理器,整體程式共分為兩部份,軟體與硬體。軟體部分主要以NiosII 撰寫C 語言來實現(圖4-2),而硬體部分主要在FPGA 晶片以VHDL 來實現。

圖4-1: 站立式電動輪椅控制平台軟硬體架構圖

 圖4-2: 站立式電動輪椅運動控制晶片內部電路方塊圖

2. 程式控制流程

       下圖4-3為本作品實際所使用的程式流程圖,分為主程式以及中斷副程式,在主程式中包括中斷程式初始化、載具速度控制IP參數設定以及初始位置設定,初始化和FPGA設定完成後開始接收Microcontroller所傳送的生理參數訊號。在中斷副程式部份包括速度軌跡計算、接收控制面板訊號與傳送站立式電動輪椅運動控制平台速度控制IP之資料。

圖4-3: 程式流程圖

3. 電動輪椅直流輪圈馬達控制     

        站立式電動輪椅直流輪圈馬達之速度控制由軟體Nios II處理器來執行,在搖桿控制面板上會將位置訊號送至搖桿做編碼,此值將轉換成九個方位(0~8),用來判斷目前搖桿之位置,如圖4-4所示。其中0是原點位置,而方位1~8則是代表輪椅移動的方向,本策略將方位1~8的範圍均分成8等分 。另外則是控制面板上之按鈕訊號,用來控制輪椅加、減速度,共分成零到五段速度。同時將速度段數(Sp)與方位(Dir),在結合(Sp&Dir)後,前四個位元為Sp,而後四個位元為Dir;然後再將此值由RS-232傳輸到DE2板。FPGA接收此訊號再解碼後即可以得到控制面板上之資訊,在將此資訊丟進NIOS來做分析與處理,表4-1為段速編碼與方位編碼之關係。電位搖桿之方位可以決定兩輪固定之差速值,而段速則可以決定兩輪直線前進時之最高基本速度。此兩值將做為規劃電動輪椅左輪及右輪之目標速度命令值。

圖4-4: 搖桿9個方位

表4-1: 速度與方位之編碼表

4. 脈波寬度調變(PWM)硬體電路控制

        輪圈直流馬達控制系統中,在FPGA中建立脈波寬度調變(PWM)硬體電路來控制,給馬達線圈不同頻率與大小的相電壓與相電流,進而控制馬達的轉速與轉矩。另外為了增加搖桿控制上的靈敏度,設計上採用16位元有號數(signed)、中間對齊式之脈波寬度調變訊號來做控制。而上下計數器將產生對稱式三角波計數電路。三角波計數值將以20ns之clock由X”000”上數至X”410”然後再下數至X”000”完成正半週計數,再由X”FFF”下數至X”BEF”然候再上數至X”FFF”完成負半週計數,以10進制來看正半週即是從0上數到1040在下數到0,而上半週則是從0下數到-1040在上數到0,然後再重複計數,計數頻率為1/(1040×4×20ns)≒12 kHz,再透過比較器電路,將脈波寬度調變輸入命令將和三角波信號做比較,就可得到直流馬達所需的正反轉PWM訊號。而下圖4-5為利用Quartus II軟體模擬出的四組周期約為12 kHz之PWM信號。

圖4-5: PWM之輸出模擬

另外因為馬達驅動板上的智慧型功率模組(IPM),在切換時需要一點延遲時間所以利用邊緣偵測電路方塊,偵測比較電路脈波邊緣變化訊號,來決定停滯帶產生的位置。再根據比較邏輯電路方塊與停滯值電路方塊,產生一停滯帶延遲時間設定為2us,如下圖4-6為PWM延遲之模擬圖。
 

圖4-6: PWM延遲之模擬圖

5. 方波編碼脈波處理電路      

        方波編碼脈波處理電路(QEP),主要包含數位濾波、D型正反器、乘四解碼電路、正反計數器電路,由於計數電路對雜訊干擾十分敏感,為了避免位置量測時雜訊造成計數錯誤,因此必須要加上數位濾波器(採用RS正反器),將A相、B相與Z相訊號上的雜訊分別濾除,得到PHA、PHB、PHZ之訊號。由於微分訊號都是由延遲訊號造成的,所以我們將微分訊號改由D型暫存器來取代,PHA和PHB兩相光電盤訊號經過D型暫存器後得到DLA和DLB兩個延遲訊號。將PHA、PHB、DLA與DLB帶入乘四解碼電路運算公式,可得到馬達旋轉方向(DIR)與脈衝計數(PLS),在本作品中設定DIR=0為正轉(CW),DIR=1為反轉(CCW),下圖4-7之模擬波形,可以看出將A相以及B相做上緣微分與下緣微分後得到之四倍頻訊號(PLS),以及由運算公式判斷其正反轉訊號(DIR)。

圖4-7: 微分訊號與乘四解碼電路之模擬波形(a)正轉(b)反轉
 

             由上述乘四解碼電路再經正反計數器計算(16位元計數),設定馬達正轉時為上數計數,反轉時為下數計數,可以得到馬達轉子的真正位置(CNT)。在程式設計上繼續根據乘四解碼電路輸出之DIR與PLS,可以來決定馬達的方向與位置。假設馬達為正轉,脈波計數以上數器計數,其波形如下圖8。若馬達為反轉,脈波計數以下數計數,波形將如圖4-8所示。此圖形顯示本作品中,光編碼器電路設計之正確性。

圖4-8:(a)正轉脈衝計數(b)反轉脈衝計數

 

      

 

(Revision: 4 / 2011-08-29 14:50:19)

5. 設計方法 (Final Project Paper)

        載具控制系統設計透過Altera的NiosII系列軟式核心嵌入式處理器來整合智慧型控制載具軟硬體,將微處理器、記憶體、生理參數週邊電路放至單一個 FPGA來執行。第一步驟是定義控制人機系統,這包括定義處理器、記憶體介面、周邊元件、仲裁器以及客戶指令等方面。定義完系統後,進入系統產生階段。這個階段可以使用SOPC Builder 來完成這項工作。系統產生之後,分成兩個方面進行設計,一是硬體設計,另外一個是軟體設計,在軟體設計時,使用QuartusⅡ軟體對硬體描述語言原始程式及EDIF檔進行邏輯電路合成之編譯,在軟體設計時,使用NiosII IDE軟體發展工具和軟體資源(如Header 檔、程式庫、監督程式與周邊驅動程式等)來產生與編輯應用程式碼,並配合使用Debug/Profile 進行程式除錯的工作。為了確保軟硬體設計正確性,還可利用ModelSim軟體進行模擬,一旦發現錯誤,便可回到系統產生階段SOPC Builder修改系統並產生系統,直到正確無誤為止,再將硬體設計與軟體設計依序下載至載具控制電路板做功能驗證。

(Revision: 3 / 2011-08-22 13:21:15)

6. 設計特點 (Preliminary Paper)

本作品運用Nios II以及FPGA功能,完成站立式電動輪椅直流輪圈馬達之速度控制與生理監控功能,及需要彈性修改的速度規劃,使得智慧型載具在移動與移位上具優良表現,另一方面,有一跟FPGA保持連線的Microcontroller,此Microcontroller位於使用者胸前,監控使用者的生理參數,並傳輸到 FPGA做判斷。因為本載具適用的對象為脊椎受傷患者,而脊椎受傷患者因為spinal cord受傷,會有自主神經失調和心跳過緩的狀況,而引發呼吸、血壓、心跳的變化,這些生理參數關係的患者的安全,故本系統經由監控使用者的生理參數,透過FPGA內建立的載具控制函式,可做到緩慢減速至停止、移位等應對措施,使載具不會對使用者造成進一步的傷害。

圖6-1:具生理回饋之智慧型載具控制器

一.FPGA模組設計特點

1. 速度迴路模糊控制器:完成以此FPGA為基礎來設計應用於電動輪椅平台之速度迴路模糊控制器,具有設計快速、節省資源與克服平台參數未確定性及自我強健性的功能。
2. 載具移動及站立架升降功能:本作品載具為兩輪驅動,在前進、後退時可做五段速切換,轉彎時使用兩輪轉速差,可做到八方位的移動,升降功能可讓使用者改變為站姿或坐姿。
3. 搖桿操控解碼:本作品搖桿為電容式搖桿,依推動的傾斜度與方位有不同電壓值,經過Analog to Digit 電路至單晶片再編碼後,由UART傳送至FPGA解碼並執行指令。
4. 光學編碼器:以光學偵測實際軌跡,進而修正載具移動,增進載具的可靠性。
5. 脈波寬度調變信號電路(PWM信號):將模糊控制器之計算結果以PWM訊號送入驅動電路,來驅動智慧型功率模組(IPM)以精確控制直流輪圈馬達。
6. 梯形加、減速之速度命令電路:用來控制輪椅之速度命令以梯形速度軌跡達到目標命令,可提升輪椅在行駛上之順暢以  及更好之安全性。
7. 在FPGA讀取以RS-232傳輸之控制面板資訊,解碼後給予Nios做運算。
8. 差速命令之限制:將差速命令對左右偏擺之權重做限制,可以在操作偏擺時,兩輪之差速不至於過大,使操作者更安全。

二. 在生理參數模組設計特點

1.生理參數包含心率、
血氧濃度、呼吸、溫度的即時監控,具顯示及儲存的功能,並在緊急狀況即時使載具做出對應措施。
2.生理參數警示功能:當發生異常時,載具能適當地使載具漸漸停止,讓使用者回到舒適坐姿。
3.具生理回饋移位功能:依使用者生理狀況調整升降速度。
4.身份辨識功能:可自訂使用者參數,應用於不同使用者系統辨識,且不會互相影響。
5.以生理參數模組偵測電動輪椅狀況,實際修正載具控制。

三. 電源模組設計特點

1.因為本載具需任意移動,所以需要裝置電池於載具上,而電源模組也需要特別設計,我們使用湯淺電池公司的產品REC10-12, DC-12V-10Ah與NP1.2-12, DC-12V-1.2AH電池,如圖6-2所示。

2.本作品的電源模組,主要有供給DE2-70 FPGA模組使用之DC 9V(12V經7809轉為9V),輪圈直流馬達、線性致動器以及電磁煞車使用DC 24V,馬達驅動板上各種IC所需的DC 5V與DC 15V電源,電路設計圖如圖6-3所示。

圖6-2: 湯淺電池公司之電池NP1.2-12, REC10-12

圖6-3: 電源模組電路圖

(Revision: 9 / 2011-08-29 16:11:21)

7. 總結 (Final Project Paper)

        在這次的比賽中,需將所學的控制理論在FPGA上實作,由於需要多種功能,光用VHDL撰寫十分困難,還要多費心思考慮效能上的問題,但在學習Nios II軟核心後,將較複雜或適合使用C語言撰寫的部分,交由Nios II軟核心處理,減少開發的困難度,分為FPGA及Nios II兩部分也讓所寫的程式不會過於龐大複雜,增加可讀性及維護方便性,同時也了解Nios II軟核心的好用之處。

        目前本系統FPGA-based四軸驅動成功建置了─順暢的速度轉換,精確的方位控制以及轉位功能,未來將繼續進行渦輪渦桿、機台底座之受力分析,建構FPGA-based雙軸DC馬達驅動控制器小型化之研製,在生理監控系統部份完成初步硬體;未來將使用站立架及徒手站立之動作進行生物力學與運動學分析。本隊將持續研究,以提昇輔具使用者之尊嚴,以及照料者之生活品質為目的,開發一兼具安全、實用、輕便、美觀及實惠之FPGA新型智慧型載具。

(Revision: 6 / 2011-08-29 14:52:24)
生物力學與運動學分析。本隊將持續研究,以提昇輔具使用者之尊嚴,以及照料者之生活品質為目的,開發一兼具安全、實用、輕便、美觀及實惠之FPGA新型智慧型載具。

(Revision: 6 / 2011-08-29 14:52:24)