當前位置:
首頁 > 科技 > 教你DIY跳舞機器人之「上位機部分」

教你DIY跳舞機器人之「上位機部分」

通過前兩周介紹的小π機器人硬體部分和軟體部分,你打造的小π機器人是否已經可以運動起來了?這周小編將主要介紹小π機器人的上位機部分,讓你可以自由控制自己的小π。小π機器人的上位機部分分為電腦端的上位機軟體和手機端的APP。

一、手機APP

1、appinventor簡介

App Inventor 原是Google實驗室(Google Lab)的一個子計劃,由一群Google工程師和勇於挑戰的Google使用者共同參與設計完成。Google App Inventor是一個完全在線開發的Android編程環境,拋棄複雜的程式代碼而使用積木式的堆疊法來完成開發者的Android程式。除此之外它也正式支持樂高NXT機器人,對於Android初學者或是機器人開發者來說是一大福音。因為對於想要用手機控制機器人的使用者而言,他們不大需要太華麗的界面,只要使用基本元件例如按鈕、文字輸入輸出即可。

2、手機APP開發

手機app部分主要包括三部分功能:實時遙控,重力遙控,動作記錄。實時遙控功能即按一個動作,小π完成一個動作。可以實現較複雜動作如搖頭、抬腳、晃腿、彈跳等,比如重力遙控功能主要是使用手機的重力感應模塊,可以控制小π的前進、左轉、右轉、後退等簡易動作。動作記錄功能,可以實現一組動作的記錄。可以實現跳舞等功能,也可以自由擴展,達到意想不到的效果。

我們所做出的APP,是一款用於操作小π實現一系列動作的APP,下面是已經製作出來的APP操作界面。

圖1、2、3中按鈕為button,提示(如圖2中的「改變背景顏色:」等)為label,文本輸入框為textbox等,點擊按鈕時會觸發相應的事件,執行對應的代碼。例如,當點擊按鈕「前」時,手機就會通過藍牙向單片機發送

教你DIY跳舞機器人之「上位機部分」

圖1 重力感應界面

教你DIY跳舞機器人之「上位機部分」

圖2 控制界面

教你DIY跳舞機器人之「上位機部分」

圖3 編輯舞步界面

使用者可以下達不同的動作指令(如運動方向、運動形態等),來完成對機器人的動作控制。並且可以通過下達其他指令(如背景顏色、音樂播放),來完成更為複雜的控制。圖3為設計舞步界面,用戶能設計一套屬於自己的舞蹈動作。我們還設置了3套固定的動作,供用戶調用。

3、內部實現

通信協議的基本格式為<指令,參數>。

當APP檢測到前進的按鈕被按下後,APP通過手機藍牙向小π機器人發送指令

在重力感應模式下,手機通過內置的加速度感測器和陀螺儀獲取手機當前的姿態信息,通過對姿態信息的判斷發送前後左右運動命令。

燈光顏色選擇指令由三條指令構成,分別為。R、G、B的參數變化範圍為0-255,這樣就可以變化出1600多萬種顏色。例如發送紅色命令就是<255,0><0,0><0,0>。

當手機APP接收到超聲波距離、溫濕度等信息時,將接收到的信息在APP界面上顯示出來。

下圖是手機APP和HC-06藍牙模塊建立連接的核心代碼截圖,供大家參考。

教你DIY跳舞機器人之「上位機部分」

教你DIY跳舞機器人之「上位機部分」

圖4 APP核心代碼

二、電腦上位機開發

1、C#簡介

C#是微軟公司發布的一種面向對象的、運行於.NET Framework之上的高級程序設計語言。C#使得C++程序員可以高效的開發程序,且因可調用由 C/C++ 編寫的本機原生函數,因此絕不損失C/C++原有的強大的功能。因為這種繼承關係,C#與C/C++具有極大的相似性,熟悉類似語言的開發者可以很快的轉向C#。

2、電腦端串口調試助手

串口調試助手通過C#編寫,界面如下圖所示。通過「串口設置」來設置串口的相應參數,「串口檢測」可以用來檢測計算機可用的串口。「發送數據」可以將「數據發送」欄中的數據通過串口發送出去。一旦串口接收到數據,則會在「數據接收」欄中顯示出來,通過先前設置的「字元顯示」或者「HEX顯示」來以字元顯示或者以十六進位數顯示。「清空數據」則可以清除「數據接收」欄以及「收據發送」欄中的所有數據。通過串口調試助手發送相關的命令可以對小π機器人進行調試。

教你DIY跳舞機器人之「上位機部分」

圖5 電腦上位機界面

串口調試助手的程序流程大致為開始進行串口初始化,在串口初始化過程中對串口號、波特率、奇偶校驗、數據位、停止位等進行設置。初始化結束後可以對命令進行收發。小π機器人中波特率為115200,無奇偶校驗、數據位為8位、停止位為1位。

3、平板端上位機開發

Win10 IoT是微軟開發的一款基於win10的物聯網操作系統。在裝有win10 IoT系統的平板電腦中可以直接運行小π機器人的平板端程序。平板端程序功能和手機APP程序類似,可以通過藍牙對小π機器人進行相應的控制。程序是通過C#編寫的,程序界面如下圖所示。

教你DIY跳舞機器人之「上位機部分」

圖6 平板上位機界面

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 電子產品世界 的精彩文章:

42V、四輸出、三通道單片式同步降壓型轉換器和升壓型控制器採用3V 至42V 輸入工作

TAG:電子產品世界 |