本文系統設計由開發者針對目前的一些上肢肢體不健全、自主進食有困難的特殊群體,所提出的一款輔助進食的服務型桌面機械手控制系統,以語音、機器視覺等傳感器技術為機器人提供人機交互的接口以及系統的反饋接口,使用物聯網技術使機器人能夠通過網絡與用戶進行數據交互,最終實現機械手能夠按照預期輔助上身有缺陷的人群完成輔助喂食的一系列功能。 1系統功能實現針對目前家庭中服侍老人和特殊人群的要求,設計的輔助進食機械手系統,主要功能是通過語音的提示,指示機械手完成特定的動作,動作分為喂食 A、B 或 C 三類食物。當機械手收到正確有效的語音指令后,機器臂會取對應食物儲存器中的食物,并通過搭載的攝像頭會尋找人臉的目標位置,在檢測到人臉并且等待人主動進食的過程中使用PID控制完成人臉的動態追隨,直到人主動進食動作完成或者新的進食語音指令觸發。機械手的主要工作流程是在第一次檢測到人臉以后會將關節坐標記錄作為下次喂食的終點坐標,同時進食動作的完成標志是機器人攝像頭檢測到人嘴張開動作的發生標記一次進食動作完成,如果沒有新的語音指令中斷發生,機械手繼續下一輪的喂食動作。2系統整體硬件設計在整個輔助進食機械手控制系統中,硬件部分包含電源、通信、圖像采集和處理、存儲、語音輸入、脈沖輸出和網絡通信模塊,輔助進食機械手硬件系統框圖如下所示。由硬件系統框圖可以看出整個系統包含了人機交互單元(語音輸入模塊也是系統的輸入單元)? 、基于 STM32F427 圖像處理單元(用于圖像采集和處理、數據存儲以及通訊)? 、基于 STM32F103 運動控制單元(路徑規劃、伺服舵機控制以及通信)和桌面機械手平臺,當然作為一款服務機器人在物聯網(IOT)時代必然會包括一些家庭環境信息,這樣我們可以通過網絡來實時查看家庭環境狀態,本文提供的是機械手的末端姿態信息、當前環境的溫度和光照強度信息。硬件模塊設計◆主控芯片:選擇 Cortex-M3 內核STM32F103ZET6 作為主控制器芯片,集成有豐富的外設資源,其架構圖如下所示。◆電源模塊 :本設計的電源系統是采用 DC-DC(直流轉直流)方式,外部電源輸入可接受 6-24V之間的直流電源,通過電壓轉換芯片 MP2359 實現 5 伏電壓輸出。◆語音模塊:選用的是支持非特定人聲語音識別芯片 LD3320A,實現正確識別出候選語音后能夠產生中斷請求。◆攝像頭模塊:使用的是攝像頭模塊是 OV7725 搭載 STM32F427 處理器的機器視覺庫 OpenMV 。◆電機驅動模塊:采用數字舵機 TBS2701,就能夠滿足輔助進食機械手所需精度以及扭矩。◆WiFi 網絡模塊 :通過選用ESP8266WiFi模塊,內嵌 TCP/IP 協議,能夠完成 WIFI 數據和串口之間的交換,實現服務機器人與遠程的客戶端進行信息交互。3系統的物聯網軟件實現 本文的輔助進食機械手借助 WiFi 網絡連接云端服務器,實現的功能是完成自身控制器的溫度監控、機器人姿態角的上報、以及家庭工作環境的溫度和光照強度信息實時上報遠程客戶端,能夠實時為用戶提供所需要的家庭環境信息。1、服務機器人接入機智云方案 機智云主要為用個人開發者和企業提供智能硬件開發和云服務平臺,連入物聯網無線WiFi網絡是一種非常便捷的選擇。本文服務機器人和機智云的接入方案是先在設備端(也就是機器人端連接WiFi通信模塊)嵌入WiFi模塊,然后設備通過路由器聯網后與機智云進行通信,而在另一端手機應用 APP集成機智云提供的 SDK(應用 APP 是在機智云協議的框架下開發完成,具有特定產品密碼類似于 ID 號,而且遵從機智云協議就能連入機智云平臺)也能連入機智云,這樣機智云就能為應用端和設備端搭建了網絡通信橋梁。服務機器人和機智云接入方案,如圖所示。 2、機械手傳感器云端數據點創建 服務機器人在用戶遠程信息交互時,需要知道機器人的工作狀態,其中做主要的是控制器是否工作正常,通過采集 STM32 芯片內部的溫度以及通過傳感器 (MPU6050)采集機器人末端姿態信息了解機器人的姿態信息。同時用戶還可以通過機器人上面的溫度傳感器(DS18B20)采集的信息了解家庭環境的室溫信息,通過光照強度傳感器的采集信息了解居室光強信息,也能支持擴展更多的物聯網功能。文中模擬了控制兩個 LED 燈的開關。下圖是在機智云上創建的產品傳感器數據點的部分截圖。 3、機智云生成的產品代碼與硬件開發 ◆ 機智云平臺開發產品的流程:①新建一個產品,然后新建產品相關的數據點信息,如機器人的傳感器信息多是從設備上采集是一種只讀類型的數值信息,而控制 LED 燈的數據點數據屬于可寫的布爾(BOOL)類型的信息,不僅需要從設備上讀取,而且還需要應用端(APP)通過機智云能夠修改。②在完成數據點創建信息后,根據 MCU 硬件平臺生成對應的包含機智云協議和產品數據點信息的代碼包,接下來就是代碼移植和設備硬件開發工作,最后需要做的就是 APP 端聯合調試過程。具體的開發流程如圖所示。 ③?在生成代碼之前可以通過虛擬設備完成在線調試功能,比如手機端端打開 LED0 和LED1 云端會更新狀態為 BOOL 值 1,如下所示。對于可寫類型的數據點測試可以云端寫入,APP 端更新。◆?對于整個機智云移植流程以及硬件驅動的開發在這里以流程圖的形式給出,詳細步驟如下: 步驟1:? 移植 FreeRTOS 系統內核 步驟2:? 為機智云協議提供 1 毫秒(MS)時基 步驟3:? 提供 WIFI 模塊的通信接口,數據收發接口,這里是串口,并且封裝機智云協議的數據接收和發送函數 步驟4:添加設備傳感器驅動以及機智云的軟復位程序 步驟5:創建?FreeRTOS?機智云任務(Gizwits_task()),主要包括機智云協議連接模式設置以及復位操作和傳感器端的上行數據處理。 在完成整個開發以后就可以在遠程 APP 端控制 LED 燈的點亮和熄滅以及實時查看服務機器人的工作狀態,獲悉機器人工作點的環境信息了。如圖所示就是手機 APP端顯示的機器人的實時工作狀態。4系統總結整個輔助進食機械手系統,針對服務機器人的聯網信息交互給出解決的方案,移植了物聯網平臺的機智云協議,物聯網的嵌入不僅使遠程的交互提供了可能,同時使輔助進食機械手的功能變得更加完善,成為物聯網機器人。機械手實物圖:輔助進食機械手取食運作過程:
-
物聯網
+關注
關注
2911文章
44837瀏覽量
375183
發布評論請先 登錄
相關推薦
評論