黃恒一 付三麗
(三亞學院,海南 三亞 572022)
科技在不斷進步,智能化的設備不斷普及和應用,促使機械化自動化的設備應運而生,由于現實生活環境中的一些極端天氣條件及人類不便作業的地方對智能機械化作業的需求,因此,用機械臂代替人類雙手完成某些工作是有必要的,特別是在一些特殊的場合,比如警察在碰到炸彈時由于環境危險,可利用履帶機器人完成工作;還有在存在毒氣、狹窄的縫隙,崎嶇的山地,需要搬運一些有輻射的物體,這些場景都能體現機械臂智能車的優勢[1]。本文設計了一款手機藍牙無線監控智能車,具有低成本、便捷性、易操作等特點。
本文設計的智能手機控制機械臂智能車能實現對目標區域物品的實時監控及抓取作業。該智能車的優勢是操作便捷,容易上手,同時智能車主體硬件部件構造簡單,除無線抓取功能之外,還可以實現目標區域圖像信息的回傳顯示監控[2,3]。
智能車Arduino單片機核心控制模塊負責控制小車的各種操作以及連接各模塊;BT18藍牙通信模塊用于智能手機與遙控履帶車的信息交互,負責將接收APP發出的指令傳輸到單片機中從而進行遠距離通信;電源模塊選用兩節4.2v電池電源供電;驅動模塊利用舵機控制機械臂抓取功能完成抓取作業;監控模塊選用WIFI數傳,實時在手機上傳輸視頻;驅動模塊驅動兩臺微型直流電機,使履帶車實現前進后退轉向功能[4]。
本文設計的機械臂智能車硬件部分分為5個模塊,分別是Arduino板核心控制模塊,監控模塊,藍牙通信模塊,電源模塊,驅動模塊。其中主控模塊用于實現智能車主體各種功能的控制及數據的處理;藍牙模塊用于智能車與用戶之間的數據交互;驅動模塊實現智能車機械臂的控住操作;監控模塊實現智能車主體攝像頭與目標區域圖像信息的采集;電源模塊用于實現對智能車主體部件的電源供電。

圖1 智能車俯視圖

圖2 智能車帶監控模塊圖
圖1為不含外接監控模塊智能車主體,圖2所示為含外接監控模塊藍牙智能車主體,圖2所示為手機監控端可以通過WiFi的方式接收智能車主體上攝像頭回傳的監控畫面[5]。
2.2.1 智能車外接監控模塊
智能車外接監控模塊選用工作電壓5V工作電流1.0A的WiFi智能模塊,智能車搭載這個模塊來實現圖像信息的傳送,本模塊供電口為5V充電寶進行供電,USB接口連接攝像頭再通過手機APP連接設備的WiFi即可實時視頻傳輸。

圖3 監控模塊外接電源接口

圖4 監控模塊外接免驅攝像頭接口
圖3、圖4監控模塊相關外接部件配置完畢后,用戶即可實現對智能車外接監控圖像信息的回傳查看。

圖5 智能車監控測試

圖6 PC端監控回傳圖像信息
由圖6可知,當智能車處于正常運行時,與智能車車身路由器網關處于同一局域網環境中的終端設備,也可以通過瀏覽器端實現對監控圖像信息的回傳查看。
2.2.2 智能車機械臂模塊
文中智能車機械臂模塊選用三個MG90S舵機,其中兩個為一個整體,兩個舵機配合來完成機械臂的移動功能,第三個控制機械爪的張開閉合。通過stm32本身的PWM端口生成相應的波形,編程用于控制機器手臂的動作程序以實現對舵機的控制。
MG90S舵機工作其原理是控制電路接收來自信號源的控制脈沖,驅動電機轉動,齒輪將速度呈大倍數降低,并將輸出扭矩放大到響應倍數,然后輸出;電位器隨末位動級轉動,測量舵機的轉角角度;電路板根據電位計檢測判斷舵機的轉角角度,然后控制舵機轉動到目標角度或保持在目標角度。為了模擬舵機轉向,外部控制器必須輸出PWM信號,以指示舵機的旋轉角度。舵機控制器所需的編碼信息是脈沖寬度。舵機的控制脈沖周期20ms,脈寬范圍0.5ms~2.5ms,分別對應-90o到+90o的位置(對于180o舵機)。
用戶手機端APP通過發送控制機械臂爪子不同的指令至智能車主控芯片,通過智能車主控芯片進行解碼,來控制智能車機械臂手臂產生不同的效果[6,7]。

圖7 智能車機械臂控制端APP

圖8 智能車機械臂小臂
智能車軟件部分分為三部分,分別為機械臂小車運行狀態用戶控制端手機APP軟件、智能車芯片主程序及智能車監控端手機APP。
2.3.1 程序設計流程
總體程序流程分為三個部分,第一個部分主要用來控制小車的運動以及舵機的運轉,也就是機械臂的控制;第二部分控制圖像傳輸;第三個部分是智能車主體芯片程序。

圖9 程序設計流程圖
其中,智能車主控芯片程序是通過Keil軟件進行開發;手機控制端APP適合初學者使用的網頁制作平臺,在MITApp inventor平臺上,可以通過拖動各種功能按鍵實現軟件的制作,組件設計和邏輯設計都十分方便;智能車監控端手機APP,最佳的方案是利用Java語言在eclipse IDE進行開發[8,9]。
2.3.2 APPInventor程序設計
APPInventor2是一個在網頁上就能進行操作的可視化安卓應用程序制作平臺。用戶只需要使用瀏覽器打開APP Inventor2的平臺網站,使用賬戶登錄后即可通過拖拽組件和邏輯塊來完成安卓應用程序的制作,操作十分簡便,入門門檻較低,不同于傳統的APP制作開發需要Java語言的基礎和Android應用開發的基礎,而且其應用領域十分廣闊。
論文中智能車用戶控制端APP是在APPInventor2開發平臺上開發完成的,主要是用來遙控機械臂智能車的各種功能,對小車發送前進、退、左轉、右轉、機械臂模塊的相關指令功能。
圖10和圖11所示為智能車用戶端APP軟件設計的相關界面。
2.3.3 智能車監控端APP的設計
監控端APP通過準備好JDK,android SDK,ADT和開發工具Eclipse構建APP開發平臺,采用Java語言編寫。

圖10 APP界面端

圖11 APP邏輯代碼界面

圖12 監控APP開發組件

圖13 監控APP開發界面
通過圖13可知道,所開發的監控端APP,可以實現對目標區域圖像的實時監控及抓拍[10]。
論文設計的機械臂智能車可以在一些極端條件下輔助人類進行相關作業。雖然智能車還存在避障、傳感、自主導航等一些技術問題需要進一步拓展研究,但是相信隨著科技的進步,未來人們可以通過機器人和機器車來代替人們去處理一些危險、困難、艱苦的工作,使科技服務于人類,推動社會的進步。