基于STM32+JAVA+Android的六足機器人控制系統設計實現(含代碼)
STM32畢業設計——基于STM32+JAVA+Android的六足機器人控制系統設計與實現(畢業論文+程序源碼)——六足機器人控制系統
大家好,今天給大家介紹基于STM32+JAVA+Android的六足機器人控制系統設計與實現,文章末尾附有本畢業設計的論文和源碼的獲取方式,也可現在直接進群免費領取。
點擊這里找小助理0元領取:掃碼進群領資料
1、項目簡介
- 本設計主要是基于單片機的六足機器人控制系統設計,綜合分析六足機器人的結構、步態和控制算法,結合云端服務器、WIFI技術、藍牙技術、語音識別技術和手勢識別技術進行多種控制模式的設計,并提出不同應用場景的不同構建方案。
- 本系統的硬件設計分為主控板和舵機控制板兩部分。主控板主要負責各種控制模式的數據處理和顯示,舵機控制板主要負責舵機轉動角度的控制,兩板通過串口進行數據的交互。主控制板采用STM32F103VET6芯片,舵機控制板采用STM32F103R8T6芯片,兩者都基于ARM的Cortex M3內核進行設計的。主控制板的硬件電路設計主要有啟動電路、晶振電路、下載電路、復位電路、穩壓電路以及各個模塊接口電路。在Altium Designer16軟件中進行原理圖的繪制和PCB的繪制,打樣后進行焊接并完成整體的測試。
- 本系統的上位機主要是手機APP,其開發環境是Android Studio,采用C#作為云端開放平臺語言,JAVA語言作為移動客戶端設計語言,通過JAVA語言的編寫實現手機客戶端的數據接收和發送,最終實現基于云端和藍牙的控制系統上位機板塊的設計。本系統下位機的軟件設計是在Keil5編程環境下進行的,參考STM32F1的手冊和各個模塊的數據手冊進行程序的編寫,最終實現云端控制、藍牙控制、語音控制和手勢控制這四種控制系統設計。
二、系統方案設計
2.1 控制系統方案設計2.1.1 遠程控制方案設計
遠程控制方案是基于云端的控制方案,是結合最新的云端技術進行開發的方案。本系統的舵機控制系統與控制模式選擇的控制系統是分開來設計的,因此在對遠程控制方案進行設計的時候,我們只需要關注WIFI模塊如何與云端服務器連接,手機APP如何與云端服務器連接,手機APP如何與主控制板的WIFI模塊進行數據交互。
該六足機器人結構上搭載的WIFI模塊與主控板的主控芯片是用串口接口進行數據交互的,然后根據查閱相關AT指令,發送或接收相關AT指令可以配置WIFI模塊,配置完成后便可使用無線透傳模式來傳輸數據。
數據的流動過程是先從手機APP開始的,手機APP通過WIFI將數據發送到遠端服務器,然后云端服務器做轉發的作用,將數據通過互聯網發送到六足機器人所在的局域網的路由器,然后路由器再一次進行轉發將數據發送到六足機器人機械結構的WIFI模塊上,WIFI模塊通過串口將數據傳輸到主控芯片,主控芯片對數據進行解析,解析完成后發送相關的動作組指令到舵機控制板,最終實現機器人相關動作組動作。
遠程控制方案是結合當前最新的技術進行開發的,只要六足機器人所在區域有網絡,用戶的手機在世界任何地方通過手機流量即可實現遠程控制。再加上六足機器人搭載視頻模塊可以進行遠程監控,因此可以實現真正的遠程控制,這為后面的運用在不同場景下的方案設計起到很大的作用。當然,這也是本設計在控制系統方面重點要設計的內容。
2.1.2 藍牙控制方案設計
2.1.3 人機交互方案設計
2.2 應用場景方案設計
2.2.1 系統運用方案說明
本系統硬件部分預留出模塊或傳感器的通信接口,采用模塊化配置的方式來設計檢測部分,用戶可以根據不同的任務,不同的場景進行不同的模塊搭配,通過不同的傳感器進行數據的采集,可以實現溫濕度、有毒氣體、可燃氣體、生命圖像、坐標位置等等數據的采集,從而達到不同場景不同功能。
2.2.2 崎嶇地形探測方案
本系統在不添加其他模塊配置的情況下即可實現復雜地形的探測功能,因為該六足機器人因為本身的六足結構可以非常靈活在崎嶇地形運動,然后其本身還帶有遠程視頻模塊,因此可以實現遠程視頻實時顯示并可以通過云端實現遠程的控制。所以,只要是在一些有網絡但道路崎嶇的地形,都可以讓該六足機器人進行現場的探測,用戶可以在遠程進行現場的觀察。
2.2.3 震后救災搜尋方案
該六足機器人如果需要運用于地震后的救災搜尋工作中則需要進行個別傳感器和模塊的搭配配置。比如生命探測模塊、GPS模塊和聲音探測器等等。通過生命探測器可以對地震后的地面進行生命的搜尋,由于它可以靈活行走在一些工作人員無法進入的地方,所以很大程度上提高了搜尋的效率及面積。一旦檢測到有生命,馬上通過GPS模塊進行定位,然后通過云端把坐標發送到工作人員的手機客戶端,從而實現精確的災后生命搜尋定位功能。除此之外,還可以通過聲波的檢測來判斷是否有生命。當然,還可以通過它來進行食物的運輸或者儀器的運輸。
2.2.4 科研探險勘測方案
完整項目可進群免費領取,領取鏈接在文章開頭和結尾!!
4.4.2 下位機的程序編寫
遠程控制模式是基于云端進行遠程控制的,六足機器人身上搭載ESP8266WIFI模塊,通過WIFI連上云端服務器,然后手機也聯網,通過這樣的方式來實現遠程控制。這一塊的程序是實現STM32F103VET6芯片與WIFI模塊的數據交互,并配置相關的AT指令來設置STA模式中的TCP-CLIENT模式。
整個工程里面有兩個文件是與WIFI相關的,一個是common.C文件,另一個是WIFISTA.C文件。下面是WIFI配置的流程圖。
在common.C文件里面首先是需要寫好路由器的名稱和密碼。具體設置如下:
const char* WIFISTA_ssid="AAAA"; //連接路由器 const char* WIFISTA_encryption="wpawpa2_aes"; //連接加密方式 const char* WIFISTA_password="88888888"; //連接密碼 然后進行WIFI模塊的連接,程序如下: while(ATK_8266_SEND_CMD("AT","OK",20)) //檢查WIFI模塊是否在線 {
ATK_8266_quit_trans();//退出透傳 ATK_8266_SEND_CMD("AT+CIPMODE=0","OK",200); //關閉透傳模式 Show_Str(40,55,200,16,"未檢測到模塊!!!",16,1);
delay_ms(800);
LCD_Fill(40,55,200,55+16,BLACK);
Show_Str(40,55,200,16,"嘗試連接模塊...",16,1);
} while(ATK_8266_SEND_CMD("ATE0","OK",20));
完整項目工程可進群免費領取。
嵌入式物聯網的學習之路非常漫長,不少人因為學習路線不對或者學習內容不夠專業而錯失高薪offer。不過別擔心,我為大家整理了一份150多G的學習資源,基本上涵蓋了嵌入式物聯網學習的所有內容。點擊下方鏈接,0元領取學習資源,讓你的學習之路更加順暢!記得點贊、關注、收藏、轉發哦!
點擊這里找小助理0元領取:掃碼進群領資料
- 贊