作者:約瑟夫•唐寧(Joseph Downing),貿澤電子 近年來(lái)可穿戴設備在多個(gè)市場(chǎng)呈現爆炸性增長(cháng),這很大程度上是因為它們提供的便利性以及大量的相關(guān)信息。運動(dòng)跟蹤器(比如三星的Gear Fit 2)、醫療設備(比如Qardio Arm血壓劑)以及安德瑪(Under Armor)推出的UA Speedform Gemini 3智能跑鞋就是其中一些例子。這些設備能夠為用戶(hù)提供各種反饋信息,包括睡眠質(zhì)量、VO2水平(氧攝入量)、運動(dòng)水平、步行和跑步節奏等數據點(diǎn)。 ![]() 設計可穿戴設備需要添加外圍設備來(lái)感應和顯示各類(lèi)數據,同時(shí)需要在云端存儲和檢索數據。本項目采用美信公司(Maxim)推出的Pegasus Rapid開(kāi)發(fā)平臺,開(kāi)發(fā)板上集成了關(guān)鍵的外圍設備以及Maxim推出的700-MAXREFDES117#心率監測器參考設計,這大大的簡(jiǎn)化了開(kāi)發(fā)流程。此外我們采用了Mbed操作系統(OS)用于云編程,Ubidots云服務(wù)以及Android Studio軟件實(shí)現云應用接口。 如果你是一名設計師(或“DIYer”),借助這些集成特性、參考設計和云編程工具會(huì )讓你在起跑線(xiàn)上領(lǐng)先一步。下面的內容標注了必需的工程材料、幫助你進(jìn)行編程、組裝開(kāi)發(fā)板卡、編譯和下載安卓App、將數據傳輸的云服務(wù)。 項目材料和資源 我們建議在開(kāi)始此項目前收集好如下材料和資源: 項目材料清單(BOM) 在Mouser.com官網(wǎng)上查看該項目需要的清單,包括各種組件: Maxim公司推出的700-MAX32630FTHR#開(kāi)發(fā)平臺,集成了MAX36630 ARM Cortex M4F微控制器和MAX14690 PMIC電池管理器件 Maxim公司推出的700-MAXREFDES117#心率監測器,集成心率/脈搏監測傳感器、降壓型DC/DC轉換器和邏輯電平轉換器 鋰聚合物電池 貿澤HRM Mbed repository 貿澤HRM Gihub repository 硬件: 電烙鐵 跳線(xiàn)或普通導線(xiàn) 助焊劑 接頭引腳 面包板 數字萬(wàn)用表(可選) 示波器(可選) 外圍擴展設備(可選) 賬號和軟件 一個(gè)Ubidots云服務(wù)賬號 Mbed.org官網(wǎng)賬號 Android Studio開(kāi)發(fā)軟件 項目技術(shù)概述 這是一個(gè)針對于有編程和焊接經(jīng)驗工程師和DIY愛(ài)好者的高級開(kāi)發(fā)項目,設計這個(gè)項目我們采用了如下技術(shù): Maxim(美信)MAX32630FTHR Pegasus開(kāi)發(fā)平臺 驅動(dòng)這個(gè)項目的是Maxim公司全新推出的MAX32630FTHR Pegasus開(kāi)發(fā)平臺(圖1)。集成了MAX32630 Arm Cortex M4F微控制器以及MAX14690 PMIC電池充電管理器件,這個(gè)平臺會(huì )協(xié)助工程師進(jìn)行快速的原型設計。該功能豐富的板卡包含多個(gè)集成外設,比如加速度計/陀螺儀、雙模式藍牙以及SPI、I2C、UART、66個(gè)GPIO接口等。MAX32630FTHR小巧的外觀(guān)尺寸與幾款現成的擴展板以及標準面包板相兼容,這帶來(lái)了無(wú)限的可能性。如果你對某些內容好奇,我們提供了擴展外設的介紹鏈接。 ![]() 圖1:Maxim推出的MAX32630FTHR# Pegasus開(kāi)發(fā)平臺集成了Arm Cortex M4F微控制器和PMIC電源管理器件 Maxim推出的MAXREFDES117#心率模塊參考設計 Maxim流行的MAXREFDES117#心率模塊參考設計(圖2)非常的小巧,它集成了Maxim MAX30102心率/脈搏、血氧傳感器、MAX1921降壓型DC/DC轉換器以及MAX14595邏輯電平轉換器。這種多功能設計可以用于A(yíng)rduino和Mbed平臺實(shí)現快速集成。示例提供的固件就適合這兩種平臺,給用戶(hù)提供了非;镜乃惴,可以確定心率、血氧飽和度等參數,幫助他們快速實(shí)現原型設計。 ![]() 圖2:Maxim流行的MAXREFDES117#心率模塊參考設計非常的小巧,集成了心率、脈搏、血氧傳感器、降壓式DC/DC轉換器和邏輯電平轉換器 Mbed操作系統(OS)實(shí)現云編程 MbedOS提供了一個(gè)方便的基于云編程的工具,幫助簡(jiǎn)化和加速創(chuàng )建物聯(lián)網(wǎng)(IoT)平臺。Mbed提供的工具幫助實(shí)現代碼協(xié)作、提交并且軟件發(fā)布,同時(shí)幫助維護詳細的修訂歷史記錄。使用Mbed非常的簡(jiǎn)單,創(chuàng )建賬號、尋找和選擇期望使用的硬件。如果你已經(jīng)擁有了賬號,你可以去Mbed Repositpry(代碼倉)將提供的代碼導入你的編譯器從而開(kāi)始你的工程。 Ubidots實(shí)現云服務(wù) Ubitots為所有希望想開(kāi)展IoT或云項目的開(kāi)發(fā)者提供了很好的起點(diǎn)。除了有多種開(kāi)發(fā)平臺的指導手冊,Ubidots為在服務(wù)和安卓App之間搭建接口也提供了教程,信用系統能夠讓你以簡(jiǎn)單且經(jīng)濟的方式開(kāi)發(fā)和維護你的項目,并且提供了多種方法可以獲得更多的信用值。 Android Studio實(shí)現云服務(wù)接口 你需要相應的接口來(lái)實(shí)現將數據從Maxim板卡和傳感器傳輸到云端,這可以通過(guò)一個(gè)移動(dòng)設備(比如平板電腦、智能手機)來(lái)實(shí)現。對于這個(gè)項目我們使用的是安卓框架,并且借助Android Studio來(lái)創(chuàng )建App實(shí)現傳感器數據的可視化。 開(kāi)發(fā)心率監測器 如果你已經(jīng)擁有Mbed賬號,使用貿澤提供的 HRM Mbed代碼倉并將其中的代碼導入到你的編譯器。 對于新手用戶(hù): 1. 訪(fǎng)問(wèn)Mbed.org網(wǎng)站 2. 點(diǎn)擊Mbed OS鏈接會(huì )轉到開(kāi)發(fā)者頁(yè)面 3. 點(diǎn)擊“Log in/Sign up”,輸入相關(guān)信息進(jìn)行登錄/注冊 一旦注冊你可以選擇高亮的“Compiler”鏈接來(lái)開(kāi)始一個(gè)新的項目或者訪(fǎng)問(wèn)Mouser HRM Mbed repository鏈接將其中的代碼導入你的編譯器。通過(guò)點(diǎn)擊編譯器右上角的按鈕你可以進(jìn)行選擇、查看、添加或者改變相應的目標平臺。在Mbed你會(huì )發(fā)現其他幾種Maxim產(chǎn)品和軟件示例也是有支持的。 連接開(kāi)發(fā)板卡和參考設計 將MAX32630FTHR和MAXREFDES117連接起來(lái)只需要很少的連接線(xiàn),使用面包板會(huì )更加的簡(jiǎn)單,為此請遵循如下步驟: 1. 將心率傳感器的SCL和SDA管腳連接到MAX32630FTHR的P3_5和P3_4管腳,將INT管腳連接到P3_0(圖3) 2. 心率傳感器的VIN輸入范圍在2.5到5.5V之間,我建議從3.3V或電池的SYS管腳引入電源,在嘗試使用5V時(shí)我已經(jīng)遇到了多個(gè)問(wèn)題。 3. 連接地線(xiàn) ![]() 圖3:Maxim MAX32630FTHR#手冊中提供的管腳說(shuō)明 對開(kāi)發(fā)板卡進(jìn)行編程 對開(kāi)發(fā)板卡進(jìn)行編程就像將文件從一個(gè)文件夾拖放到另一個(gè)文件夾那樣簡(jiǎn)單,當你將代碼上傳到板卡時(shí),MAX32630FTHR模塊還提供了調試接口。 我們按如下步驟開(kāi)始: 1. 用10-Pin的連接器將接口板卡與MAX32630FTHR相連接,尤其要注意Pin1管腳。 2. 將標記有HDK的USB接口連接到PC的USB端口上,此時(shí)會(huì )自動(dòng)安裝驅動(dòng),根據你使用的DAPLINK模塊的不同,它可能有多個(gè)接口或者只有一個(gè)接口(見(jiàn)圖4或圖5),當驅動(dòng)程序完成安裝后,在電腦文件資源管理器中會(huì )顯示標記為DAPLINK的新驅動(dòng)器。 3. 采用micro USB或者JST電源連接器為MAX32630FTHR模塊提供電源。 ![]() 圖4:多個(gè)輸入接口的DAPLINK模塊 ![]() 圖5:只有單個(gè)輸入口的DAPLINK模塊 一旦你建立了與開(kāi)發(fā)板卡的連接和接口,你就需要編譯代碼生成.bin文件,然后將其下載到MAX32630FTHR中,Mbed編譯器操作如下: 1. 點(diǎn)擊“編譯”或者使用下拉菜單選擇你的操作。一段時(shí)間后就會(huì )在Downloads文件下就會(huì )生成.bin文件。 2. 打開(kāi)Downloads文件夾找到.bin文件 3. 打開(kāi)一個(gè)新的資源管理器窗口,在這個(gè)窗口內你會(huì )看到一個(gè)新的DAPLINK驅動(dòng)器的盤(pán)符,這就是開(kāi)板卡的接口 4. 將新創(chuàng )建.bin文件拖動(dòng)或者復制到DAPLINK驅動(dòng)器上,這是就會(huì )開(kāi)始向開(kāi)發(fā)板下載程序 當我們在下載程序過(guò)程中,DAPLINK板卡上的LED燈應該會(huì )快速的閃爍,完成后LED燈會(huì )熄滅或者保持緩慢且穩定的閃爍 5. 按下MAX32630FTHR上的復位按鈕重新啟動(dòng)執行新下載的程序 板卡復位時(shí),板卡上紅色的LED燈會(huì )亮起并且保持穩定。 云服務(wù) 登錄后你會(huì )發(fā)現打開(kāi)的是控制面板(Dashboard)頁(yè)面,有很多選項供你選擇,比如查看所有的設備、查看可用的事件、查看個(gè)人文件、查看賬戶(hù)有多少信用值。需要注意的是對于任何項目來(lái)說(shuō)有些內容是必需的,比如API token、設備和變量ID。 查看API Tokens 想要查看API tokens,需要在頁(yè)面的右上方點(diǎn)擊“Profile”按鈕,然后選擇“API Credentials”,此時(shí)會(huì )在左側下拉菜單顯示所有的API token信息,對于每個(gè)用戶(hù)API token都是唯一的,這是在創(chuàng )建賬戶(hù)時(shí)生成的,這是為了防止你設備的數據發(fā)送給錯誤的賬戶(hù)。 添加設備 當添加變量時(shí)會(huì )為每個(gè)新的設備創(chuàng )建變量ID,首先我們從添加設備開(kāi)始: 1. 確認你在“設備頁(yè)面”(圖6) 2. 點(diǎn)擊頁(yè)面右上角的黃色的圓圈(內有加號) 3. 給設備重命名,從“My Data Source”改為任何你想要的名字 4. 點(diǎn)擊頁(yè)面的任意位置完成設備的添加,此時(shí)會(huì )彈出一個(gè)對話(huà)框提示創(chuàng )建成功 ![]() 圖6:從“設備”頁(yè)面開(kāi)始 這個(gè)“設備”代表你的一個(gè)項目,一個(gè)賬號下支持多個(gè)項目!白兞縄D”用來(lái)幫助每個(gè)設備來(lái)識別特定的傳感器、數據輸入源以及所處的位置。這有利于我們維護多個(gè)項目和以及獨立的或者共享的傳感器設備。 創(chuàng )建變量ID 創(chuàng )建變量ID與創(chuàng )建設備非常的類(lèi)似: 1. 點(diǎn)擊“新建設備”按鈕,這時(shí)會(huì )打開(kāi)此設備的詳細頁(yè)面,允許我們創(chuàng )建個(gè)人的變量 2. 點(diǎn)擊頁(yè)面右上方的黃色圓圈(內有加號標記)創(chuàng )建新的變量 3. 對變量進(jìn)行重命名 4. 點(diǎn)擊頁(yè)面的任何位置,會(huì )彈出一個(gè)對話(huà)框表明你成功創(chuàng )建了ID 點(diǎn)擊這個(gè)新的按鈕會(huì )彈出“創(chuàng )建變量”頁(yè)面(圖7),在左側會(huì )顯示多條信息,你可以編輯左側中大部分信息,其中包括API標簽、允許的范圍、測量單位和相似度(重要的一項就是ID,它用來(lái)標識你的程序應該放在的位置)。 ![]() 圖7:Ubidots “變量”顯示 我強烈建議大家查看教程文檔,當鼠標放在“Profile”按鈕上時(shí)會(huì )有下拉菜單,其中就包括指導手冊。文檔中提供了非常多的信息和主題,涉及MQTT、HTTP API接口等物聯(lián)網(wǎng)應用技術(shù)。 Android Studio軟件 我們需要向的接口才能將數據從Maxim板卡和傳感器傳輸到云服務(wù),這可以借助移動(dòng)設備(比如平板電腦、智能手機)來(lái)完成。對于這個(gè)項目我們采用的是安卓框架,使用Android Studio創(chuàng )建App應用,并將心率傳感器采集的數據進(jìn)行可視化處理。 為了節省時(shí)間,我使用“BluetoothLeGatt”這個(gè)示例進(jìn)行演示,這個(gè)應用我們可以瀏覽可用的藍牙設備,連接這些設備并且查看有哪些有用的資源。這對于創(chuàng )建自己的藍牙應用有非常好的借鑒作用(如果你選擇設計相關(guān)應用的話(huà))。Ubidots同樣提供了相關(guān)文檔來(lái)說(shuō)明如何使用App連接和發(fā)送數據到云服務(wù),我建議大家查看API token和變量token相關(guān)的說(shuō)明。 導入代碼 1. 從Mouser的Gihub上下載BLEHR.7z文件,這對于導入Android Studio是必需的。由于文件大小的限制,這個(gè)項目的源代碼被分為兩部分,你需要將它們分別進(jìn)行解壓。 2. 通過(guò)在啟動(dòng)界面點(diǎn)擊“打開(kāi)已存在的Android Studio項目”或者點(diǎn)擊“文件”菜單就可以將代碼導入Android Studio,下面你可以看到我如何改變和實(shí)現Ubidots API接口的(圖8) (注:在編譯程序前修改token密鑰,前面已經(jīng)提到過(guò)了,如果編譯前沒(méi)有進(jìn)行修改,你的數據將不會(huì )顯示在Ubidots上) ![]() 圖8:安卓Studio Ubidots API token代碼 編譯App 為了測試和調試代碼,你可以進(jìn)行如下操作: 編譯應用程序并下載到開(kāi)發(fā)板卡中,如果你不想在更新API和變量token后修改代碼可以此方法 使用“開(kāi)發(fā)者模式”,這種方式支持USB調試,你可以將你的手機或者平板電腦作為虛擬測試平臺,將其與你的開(kāi)發(fā)PC進(jìn)行連接,借助網(wǎng)絡(luò )搜索或者Android Studio的教程你可以找到如何進(jìn)入“開(kāi)發(fā)者模式”的說(shuō)明。 如果你決定使用一個(gè)設備作為開(kāi)發(fā)工具,那么只需要點(diǎn)擊菜單欄的“Run”按鈕,然后選擇你的設備開(kāi)發(fā)編譯和運行App。一旦加載完成應用程序就會(huì )在你選擇的設備上運行起來(lái)。(注:你不可以在虛擬設備上運行這個(gè)應用,因為虛擬設備不支持藍牙) 如果你打算進(jìn)行安裝調試,你需要先編譯程序,選擇“Build”然后是“Build APK(s)”,這會(huì )創(chuàng )建一個(gè)新的文件,你可將其拷貝到你選擇設備上進(jìn)行安裝。 雖然如果你不打算對軟件進(jìn)行更改,那么安裝應用程序是一個(gè)很好的選擇,但是我建議選擇一個(gè)設備作為測試平臺。在“USB調試模式”下你可以進(jìn)行更新、重編譯、重復執行代碼,這對于編程和調試非常有用。 進(jìn)行系統組裝 當你完成程序的加載并且啟動(dòng)后,在界面的右上方你會(huì )看到“Scan”按鈕,點(diǎn)擊它可以?huà)呙璨榭锤浇秶鷥人兴{牙設備,如果你對MAX32630FTHR和MAXREFDES117進(jìn)行了正確的連接和編程,當設備啟動(dòng)后在設備列表中你會(huì )看到一個(gè)標有HRM的設備。 準備好查看結果了嗎? 1. 確保啟動(dòng)了位置訪(fǎng)問(wèn)權限,如果你不確定此選項的位置,請參閱設備的在線(xiàn)幫助或者文檔 2. 選擇HRM打開(kāi)一個(gè)新的窗口,你會(huì )看到一些數據:設備地址、當前狀態(tài)、數據輸出 3. 點(diǎn)擊右上方的“連接”按鈕允許連接到這個(gè)設備,在下拉菜單中你可以查看對應的服務(wù)列表 4. 最后選擇“心率測量”,你會(huì )看到界面上開(kāi)始顯示數據(圖9) ![]() 圖9:當你選擇“心率測量”選項時(shí),你就會(huì )看到屏幕上顯示數據 如果你更新了代碼,包括正確的API和變量token,那么你現在應該能夠登錄你的Ubidots賬戶(hù)查看該設備上傳的數據,點(diǎn)擊“設備”選項。 現在你可以創(chuàng )建一個(gè)控制面板,根據你的要求可以按照不同的格式來(lái)查看數據信息(圖10)。Ubidots最近推出了一個(gè)beta版本的Android App,你可以選擇在智能手機或者平板電腦上進(jìn)行安裝來(lái)查看你的設備和數據(圖11)。 ![]() 圖10:Ubidots安卓應用控制面板 ![]() 圖11:Ubidots網(wǎng)頁(yè)控制面板總結 可穿戴設備是非常有用的工具,它可以為我們的日常生活添加很多的便利。這些設備能夠提供給用戶(hù)各種反饋數據,比如睡眠質(zhì)量、最大攝氧量(VO2)、運動(dòng)水平、步行和跑步節奏等數據。此外,它們還可以幫助你監測你的健康情況,并且可以將你的信息(比如每日血壓、血糖水平)發(fā)動(dòng)給醫療機構進(jìn)行溝通。 設計可穿戴設備需要添加外圍設備來(lái)進(jìn)行感應、顯示、存儲和檢索數據,Pegasus Rapid開(kāi)發(fā)平臺集成了關(guān)鍵的外設設備,大大簡(jiǎn)化了系統開(kāi)發(fā),700-MAXREFDES117#心率監測器參考設計也可以提供直接的借鑒作用。Mbed OS、Ubidots和Android Studio軟件分別針對基于云編程、云服務(wù)和云接口等技術(shù)進(jìn)行了完善。 運行的怎么樣?把你的情況告訴我們!你可以在Facebook、Twitter、LinkedIn、Instagram或Google+上將你的項目和想法分享給我們。 關(guān)于作者 Joseph Downing已經(jīng)在貿澤電子(Mouser Electronics)工作了六年時(shí)間,在2011年他作為技術(shù)支持專(zhuān)家加入公司,后臺轉為技術(shù)內容專(zhuān)家。Joseph在電子行業(yè)有20多年的從業(yè)經(jīng)驗,曾在很多公司任職,比如Intel、Radisys和Planar等。作為一名極客,Joseph幫助管理Mouser.com的應用和技術(shù)網(wǎng)站,并且為這些站點(diǎn)和貿易展覽會(huì )提供技術(shù)項目和材料支持。 原文鏈接: https://www.mouser.com/applicati ... heart-rate-monitor/ ![]() |