引言:醫療電子設備市場競爭激烈,快速構建原型系統是縮短開發時間的關鍵。
21 世紀是生命和健康的世紀,生命科學的飛速進步不斷推動著人類對自身健康和疾病的認識,如何開發創新型的醫療電子設備也成為了研究的熱點之一,其研究內容涉及眾多工程學研究領域,如電子學、計算機、信息處理、光學、精密機械學等。隨著醫學的發展、治療手段的多樣化和相關工程領域技術的不斷進步,醫療電子設備正變得日益復雜化,事實上很多大型醫療電子設備都由多個子系統組成,需要集成多種傳感器、機械部件、電子元件比如FPGA 或者微處理器等,還會涉及到多種專業總線和協議,其研發周期也是相當長,可能需要2-3 年甚至更長的時間。于是,如何縮短整個醫療電子設備系統的開發時間、提高創新程度成為了占領市場的要素。
從另外一個角度看,對于大學、研究所或者公司的研發機構來說,他們必須著眼于未來的、有一定前瞻性和創新性的設備研發,因此這部分研發人員需要關注的是,如何快速地對一些算法或理論上的研究成果進行驗證、并進一步搭建出實際的系統直至產品化,從而將自己的科研項目或專利產業化,獲取更多支持以進入良性循環。
對于一些小型公司來說,如何從激烈的市場競爭中站穩腳跟并脫穎而出是非常困難的事情。他們的核心技術人員也許是生物醫學領域的專家,掌握了一定的專利或研究成果,但如何在團隊人員非常有限的情況下,快速的將專利或研究成果轉化成產品、并保證產品的可靠性和穩定性是很大的難點。
綜上所述,對于醫療電子設備的開發人員來說,系統本身在電子、機械、傳感器等方面的復雜性以及市場競爭的需求,使得如何快速地對研究成果進行原型驗證并產品化成為領先于市場的關鍵。
通過統一的平臺快速構建原型系統
系統開發一般可以分為三個階段:設計,原型驗證、以及發布。設計主要是對產品本身以及其中牽涉到的算法、概念進行設計,原型驗證是對設計的可行性進行驗證或評估,發布是產品的最終實現。設計階段的主要任務是由開發團隊中生物醫學、信號處理、圖像處理方面的專家或研發人員使用文本數學工具來進行算法設計或系統設計,這一階段的成果是指特定的、達到一定目的的算法。原型階段的主要任務是在一定的硬件平臺上實現設計算法并進行驗證和評估,從而進一步調整算法,這部分任務通常由具有電子工程背景的嵌入式系統開發人員,在VxWorks、QNX、Linux 等嵌入式操作系統上加以完成,他們所使用的軟件工具是和硬件平臺直接相關的,比如CCS, VHDL, VDSP++等。
一般情況下這兩個階段的開發人員和開發平臺都是不同的,因此原型階段的開發者必須無縫的將設計階段的成果加以吸納和轉換,比如將原先的文本數學算法在嵌入式環境下用C 重寫一遍,或者根據硬件平臺的選擇將浮點算法改寫成定點算法。如果系統需求需要修正或者算法設計有些錯誤,就會導致原型階段的大量修正工作甚至返工。 因此,整個系統開發是一個循環遞進的過程。
為了減少這兩個階段之間循環往復的次數,很多開發團隊都采取了兩邊互相靠攏的方法,要求前端的算法設計人員對硬件和底層編程有一定了解,而后端的嵌入式系統開發人員也需要有一定的生物醫學背景。這種方法一定程度上能夠讓兩個階段之間更好地進行溝通,但是對開發人員的要求較高,而且缺少系統性,隨著醫療電子系統的日益復雜化,不能從根本上解決問題。
一種更為釜底抽薪的解決方案是將這兩個階段的工作移植到統一開發平臺之中,即在一個開發平臺下集成算法和硬件:一方面,在算法設計階段引入硬件I/O 進行前期的驗證,可以在更早階段發現并修正潛在的錯誤;另一方面,由于使用同樣的開發環境,算法設計的代碼可以在原型驗證的過程中被重用,從而簡化編程的復雜性,降低了對算法設計人員和嵌入式開發人員在系統設計流程中各個步驟的要求。從根本上加快循環遞進的過程,從而縮短系統的開發時間。
使用圖形化系統設計平臺——LabVIEW 快速搭建醫療電子設備的原型
自1986 年誕生以來,LabVIEW 圖形化開發平臺一直致力于簡化編程的復雜性,在所有涉及到數據采集和控制的領域里,LabVIEW 圖形化編程方式都已經成為標準的開發工具。對于醫療電子設備的開發團隊來說,LabVIEW 提供了將硬件I/O 引入算法設計的快捷方式,并通過代碼重用和商業化、可發布的嵌入式原型平臺,簡化構建原型系統的復雜性。
交互式的算法設計,并支持已有算法的代碼重用
在過去的幾年里,LabVIEW 已經擴展性地納入了多種算法設計方式,從而更好地滿足了研發設計人員的需求。除了強大的圖形化編程方式以外, LabVIEW 現還包括了基于文本的數學編程工具連續時間仿真、狀態圖和圖形化數據流模式,用以代表各類算法。 LabVIEW 還納入了交互式工具,用于數字濾波器、控制模型、數字信號處理算法的開發,令醫療電子相關的算法設計更為簡易。
以信號處理為例,信號處理是很多醫療電子系統中非常關鍵的部分,比如心電圖、腦電圖和其他生物信號與醫學影像,都需要通過信號處理,提取出信號中的特征值,以得到進一步的分析結果。通過 LabVIEW 和相關的工具包,比如高級信號處理工具包和濾波器設計工具包,設計人員可以通過調用現成的函數 ,快速完成例如移除基線漂移、噪聲消除、QRS 檢測、胎心信號提取等應用。通過交互式的快速VI,只要在菜單中對參數進行設置即可完成Kaiser 窗FIR 高通濾波器的設計,從而移除基線漂移。為了進一步處理,設計人員也可以調用高級信號處理工具包中的小波降躁函數來濾除寬帶噪聲。
對于例如胎心信號提取等較為復雜的處理,開發人員也可以通過LabVIEW 中的ICA(獨立分量分析)算法來加以研究應用。如圖1 所示,上半部分是采集到的母體和胎心的混合信號,下半部分是經過ICA 處理后分離得到的胎心信號。
圖1 胎心信號的提取
與此同時,開發人員也可以通過LabVIEW 內置的文本數學工具重用已有的算法,例如使用Mathscript 節點調用MATLAB 中開發的.m 文件,并通過LabVIEW 的交互式環境對算法進行驗證調試,從而與各種先進的數學和設計軟件集成使用。
將硬件I/O 引入算法設計, 在早期發現并修正潛在的問題
正如前文所提,如果系統需求需要修正或者算法設計存在錯誤,就會導致原型階段的大量修正工作甚至返工。因此一種解決方案就是更早地將真實世界的信號和硬件引入到設計流程之中,從而在早期就發現并修正潛在的問題。