2 系統(tǒng)硬件設計
2.1 中央控制部分
系統(tǒng)使用三星公司的S3C2410處理器作為中央控制單元。該芯片以32位ARM920T為內核,最高處理速度達到203 MHz;支持5級流水線操作,包括存儲器管理單元;具有低成本、低功耗、集成性高的特性[4]。系統(tǒng)外擴32 MB Flash空間,用于存儲Linux內核、應用程序;系統(tǒng)外擴64 MB SDRAM,用于系統(tǒng)和程序的執(zhí)行。
2.2 主要功能部分
肌電采集電路用于檢測和采集患者的體表肌電信號,電路主要包括前置放大、高通濾波、低通濾波、隔離放大、工頻陷波、增益控制電路。該部分電路將采集到的體表肌電根據(jù)系統(tǒng)要求放大1 250~10 000倍。增益控制電路由S3C2410的GPIO控制,系統(tǒng)利用S3C2410的SPI總線擴展12位串行A/D轉換芯片AD7453采集肌電放大器輸出的SEMG信號,然后經(jīng)過濾波處理后傳送到實時處理模塊,并在LCD上顯示出來。系統(tǒng)通過控制相關電路的工作來控制肌電采集的開始和停止等操作。
NMES電路產生一種低頻可漸變的調制矩形波。S3C2410的PWM輸出一路脈寬可調的矩型波到該電路,同時4通道12位串行D/A轉換芯片MAX5742輸出一路梯形調制波,兩路波形經(jīng)調幅電路、高壓恒流源電路就能得到調制方波作為刺激波。MAX5742是SPI接口的串行D/A芯片,也接到S3C2410的SPI總線,與A/D芯片分時復用。該電路的刺激波形、刺激強度、頻率、脈寬、時間等參數(shù)均通過系統(tǒng)軟件來調節(jié)。
FNS電路輸出調幅的無極性微分型指數(shù)脈沖的中頻電刺激波形。系統(tǒng)向MAX5742輸出一路隨機波形生成調制波;同時,S3C2410的PWM輸出一路頻率為1 kHz的方波,方波由微分電路整形為微分型指數(shù)脈沖;最后,調制波與指數(shù)脈沖經(jīng)波形合成電路、恒流源電路得到所需的刺激波形。
2.3 人機交互接口
系統(tǒng)采用了SHARP公司生產的一款9.4英寸TFT-LCD 640×480彩色液晶顯示屏。S3C2410帶有LCD控制器,支持STN型和TFT型LCD。支持彩色TFT時,可提供4/8/12/16位顏色模式。LCD控制器的功能是產生顯示驅動信號,驅動LCD顯示器。用戶只需要通過讀寫一系列的寄存器,便可完成配置和顯示控制。
本系統(tǒng)需要鍵盤來輸入數(shù)據(jù)或者控制命令,實現(xiàn)設置參數(shù)和控制系統(tǒng)的目的。除了數(shù)字0~9外,再加上幾個功能鍵即可滿足系統(tǒng)需求,所以不需要使用專用的PC鍵盤,而是開發(fā)具有針對性的小鍵盤。本系統(tǒng)直接通過S3C2410的8個GPIO口來擴展4×4矩陣鍵盤。
2.4 擴展接口
S3C2410接口豐富,用戶可根據(jù)需要方便地擴展各種接口。本系統(tǒng)通過S3C2410的USB控制器擴展USB HOST接口,為系統(tǒng)提供存儲數(shù)據(jù)功能;利用S3C2410的URAT控制器擴展RS232,利用總線擴展網(wǎng)卡芯片DM9000給系統(tǒng)提供網(wǎng)絡接口,方便系統(tǒng)調試和儀器數(shù)據(jù)的網(wǎng)絡共享。
3 系統(tǒng)軟件設計
康復儀通過軟件界面實現(xiàn)視覺信號的反饋作用,為肌電生物反饋治療提供技術支撐。該康復儀的軟件系統(tǒng)主要由嵌入式Linux操作系統(tǒng)、驅動程序和應用程序三部分組成。
3.1 嵌入式操作系統(tǒng)
為了滿足系統(tǒng)對實時性和安全性的要求,系統(tǒng)采用了嵌入式Linux操作系統(tǒng)。嵌入式Linux繼承了Linux的穩(wěn)定性優(yōu)點,且其內核相當精簡,因此在嵌入式領域得到廣泛應用[5]。
本系統(tǒng)采用了Linux2.6.x內核,針對S3C2410的硬件情況,裁剪并編譯了適合ARM 處理器的Linux內核,再借助于華恒公司的ppc bootloader將其傳輸至開發(fā)板的FLASH并啟動內核,通過busybox制作文件系統(tǒng)。這里根據(jù)需要制作一款簡單的只讀文件系統(tǒng),即cramfs文件系統(tǒng)。通過配置宿主機NFS(network filesystem)文件服務器的方式,可將該文件系統(tǒng)傳輸至FLASH,從而完成對開發(fā)板上操作系統(tǒng)的配置。
3.2 設備驅動程序
在完成操作系統(tǒng)裁剪后,需要對Linux下的各種設備進行驅動程序編程。由于模塊方式要比靜態(tài)編譯鏈接方式更加方便靈活,因此本系統(tǒng)在Linux內核基礎上二次開發(fā)的設備驅動程序是按照模塊方式實現(xiàn)的。模塊化驅動程序的設計和實現(xiàn)流程主要有編寫模塊化編程子程序、編寫自動配置和初始化子程序、編寫服務于I/O請求的子程序和編寫中斷服務子程序四個步驟。按照這四個基本步驟編寫肌電增益控制驅動、A/D和D/A轉換驅動、PWM調制波產生驅動、鍵盤驅動、LCD驅動以及網(wǎng)卡及串口驅動程序等。
[!--empirenews.page--]3.3 應用程序
便攜式腦卒中康復儀要為患者和操作人員提供友好、簡便的圖形用戶界面(GUI)。GUI要求簡單、直觀、可靠、占用資源小且反應快速,并且可以根據(jù)硬件具有較好的可移植性和裁剪性。系統(tǒng)選用了Qt/Embedded-2.3.10作為腦卒中康復治療儀的應用程序開發(fā)平臺。
Qt/Embedded是Trolltech公司開發(fā)的面向嵌入式系統(tǒng)的Qt版本。Qt/Embedded是Server/Client結構,在底層摒棄了X lib,僅采用framebuffer作為底層圖形接口。Qt使用特有信號/槽(singal/slot)機制,對象間的通信非常簡便和靈活。Qt/Embedded將外部輸入設備抽象為keyboard和mouse輸入事件,底層接口可以較好地支持用戶自定義的設備[6]。
應用軟件采用了模塊化的設計思想,把整個軟件系統(tǒng)劃分為系統(tǒng)自檢模塊、參數(shù)設置模塊、實時處理模塊、顯示模塊和刺激模塊。功能模塊圖如圖2所示。
操作系統(tǒng)啟動完畢后,系統(tǒng)自檢模塊加載各個外圍設備,并對設備進行測試。設備自檢正常運行之后,按給定的初始值對設備進行參數(shù)初始化,等待治療過程的開始。治療程序運行之前,用戶可以通過參數(shù)設置模塊修改治療參數(shù),外設驅動程序根據(jù)加載的參數(shù)配置外設。治療程序運行過程中,通過實時處理模塊將采集到的肌電信號經(jīng)過濾波處理后顯示在屏幕上,實現(xiàn)肌電的視覺反饋;刺激模塊根據(jù)用戶設定的治療方式對患者進行MMES或者FNS。
康復治療儀根據(jù)用戶的設定參數(shù)運行,然后采集并顯示實時的肌電信號,將患者的肌電信號通過LCD反饋給患者。當患者肌電超過預先設定的刺激閾值時,系統(tǒng)按照治療方案給予患者一次電刺激。在不同的治療模式下,系統(tǒng)提供不同的方式誘發(fā)電刺激。治療過程中,用戶可以根據(jù)患者的實際情況調節(jié)治療模式、刺激方式、強度、治療時間等參數(shù)以達到最好的效果??祻椭委熈鞒倘鐖D3所示。
GUI是系統(tǒng)與用戶相互交流和溝通的平臺,是系統(tǒng)的重要組成部分。該康復儀GUI的首要功能是實現(xiàn)視覺信號的心理反饋作用??紤]到腦卒中患者肌電水平主要集中在200 μV以下,而正常EMG的范圍在2μV~2000 μV之間,坐標縱軸的描繪運用了對數(shù)函數(shù)變換。取對數(shù)函數(shù):
Y=log10(X)
當X取值為10、100、1 000時,所對應的Y值分別為1、2、3。即在X=10~100和X=100~1 000內,Y的增量都等于1,這樣就可以在等間距的情況下突出2 μV~200 μV這部分的數(shù)值,又可以照顧到整個輸出范圍的要求。界面中,橫軸為時間,而且設計成1min剛好顯示1屏治療數(shù)據(jù)的方式。這樣使患者既能觀察到一段時間內的治療情況,也有較充裕的時間來主動活動患肢,能誘發(fā)NMES進行治療,而不會因為顯示過快等造成視覺和身體的疲勞。主界面的設計結果如圖4所示。
便攜式腦卒中康復儀采用了嵌入式ARM-Linux系統(tǒng)及Qt/Ebedded開發(fā)設計,與目前國內外同類儀器相比較,具有體積小、可靠性高、效率高、成本低、功耗低等特點,便于將治療儀推廣到社區(qū)醫(yī)院、鄉(xiāng)鎮(zhèn)醫(yī)院甚至患者家庭使用,符合我國醫(yī)療衛(wèi)生改革的發(fā)展要求,具有良好的應用前景。
系統(tǒng)實現(xiàn)了在LCD上實時顯示采集到的肌電信號,并同時顯示刺激閾值;兩種電刺激輸出的各項參數(shù)均能達到預期水平;圖形用戶界面簡便友好、操作方便,人機交互效果良好,完全能滿足腦卒中康復系統(tǒng)要求,達到了預期效果。
Lua RTOS 是一個實時操作系統(tǒng),設計在嵌入式系統(tǒng)上運行,對 FLASH 和 RAM 內存的要求最低。目前 Lua RTOS 可用于 ESP32, ESP8266 和 PIC32MZ 平臺,并可以輕松移植到其他32位...
關鍵字: Lua RTOS 操作系統(tǒng) 嵌入式系統(tǒng)通用異步收發(fā)傳輸器(Universal Asynchronous Receiver/Transmitter),通常稱作UATR,是一種串行、異步、全雙工的收發(fā)器。全雙工的UART支持同時雙向通信,是嵌入式系統(tǒng)必不可少的d...
關鍵字: 異步收發(fā) 傳輸器 嵌入式系統(tǒng)Flash Memory 是一種非易失性的存儲器。在嵌入式系統(tǒng)中通常用于存放系統(tǒng)、應用和數(shù)據(jù)等。在 PC 系統(tǒng)中,則主要用在固態(tài)硬盤以及主板 BIOS 中。
關鍵字: Flash 存儲器 嵌入式系統(tǒng)近年來,隨著計算機技術及集成電路技術的發(fā)展,嵌入式技術日漸普及,在通訊、網(wǎng)絡、工控、醫(yī)療、電子等領域發(fā)揮著越來越重要的作用。嵌入式系統(tǒng)無疑成為當前最熱門最有發(fā)展前途的IT應用領域之一。?嵌入式系統(tǒng)一般由嵌入式微處理器、外...
關鍵字: 嵌入式 嵌入式系統(tǒng) 計算機深圳2022年8月26日 /美通社/ -- 8月17日 – 深圳,AMD Xilinx舉辦為期一天的線下技術日活動,在AMD Xilinx主辦下宜鼎國際作為合作伙伴的身份被邀...
關鍵字: AMD Xilinx AGENT 嵌入式系統(tǒng)單向散列算法,又稱hash哈希函數(shù),Hash函數(shù)(也稱雜湊算法)就是把任意長的輸入消息串變化成固定長的輸出串的一種函數(shù),該過程是不可逆的。Hash函數(shù)可用于數(shù)字簽名、消息的完整性檢測、消息起源的認證檢測等。較為常用的方法...
關鍵字: 嵌入式算法 嵌入式系統(tǒng)作為消費者,在我們考慮購買電池供電設備時,通常首先要檢查的關鍵指標之一是一次充電可以使用多長時間。電池壽命已成為許多可穿戴設備的重要賣點,但對于越來越多的工業(yè)物聯(lián)網(wǎng)傳感器和其他類似應用來說,電池壽命同樣也是一個重要的考慮...
關鍵字: 貿澤電子 嵌入式系統(tǒng)摘要:設計了一種新型的基于LeapMotion體感控制器的仿生機械臂交互控制系統(tǒng),利用LeapMotion體感控制器替代傳統(tǒng)的人機交互方式,采集手部數(shù)據(jù),將識別到的手勢動作經(jīng)過計算機分析處理后,通過無線傳輸?shù)姆绞浇o開發(fā)板...
關鍵字: 人機交互 嵌入式系統(tǒng) 機械手臂