1 - 前言 RoboMaster TT 是大疆首款擁抱開源的教育無人機(jī) ,為使該款無人機(jī)能夠更加符合開源精神和青少年科技創(chuàng)新教育核心,讓國內(nèi)中小學(xué)師生有更極致的教學(xué)體驗,大疆與國際領(lǐng)先的開源硬件企業(yè)DFRobot展開官方合作,將旗下Mind+圖形化編程軟件與RoboMaster TT教育無人機(jī)深度結(jié)合,并作為該款無人機(jī)官方指定圖形化編程軟件平臺。 此外,基于Mind+強(qiáng)大的硬件擴(kuò)展功能庫DFRobot旗下的開源硬件也作為該款無人機(jī)官方推薦第三方外接硬件產(chǎn)品,使得RoboMaster TT無人機(jī)更加如虎添翼。 2 - RoboMaster TT介紹RoboMaster TT由兩部分組成: 下面一部分為Tello EDU無人機(jī),可以執(zhí)行飛行命令。 上面一部分為擴(kuò)展模塊,為一塊可編程基于ESP32的主控板和一個5.8G WiFi模組。 兩者通過microUSB線連接時激活擴(kuò)展模塊上的WIFI模組并可以進(jìn)行通信。 3 - Mind+介紹Mind+可以使用電腦WiFi直接實時控制Tello EDU,也支持對擴(kuò)展模塊上的ESP32模塊進(jìn)行編程控制Tello EDU。 因此,RoboMaster TT 在Mind+上總有4種玩法: 實時模式 —— 單機(jī)模式 實時模式 —— 組隊模式 上傳模式 —— ArduinoC編程 上傳模式 —— MicroPython編程 >3.1 - 實時模式與上傳模式的區(qū)別在Mind+中,程序運(yùn)行于電腦上,編程完立即可運(yùn)行的部分為實時模式編程,對立的,程序運(yùn)行于第三方硬件上,編程完需要將程序上傳到第三方硬件上運(yùn)行則為上傳模式編程。 因此對于RoboMaster TT來說,實時模式即為通過電腦WIFI直接連接RoboMaster TT進(jìn)行實時的編程控制,斷開連接后飛機(jī)就不會執(zhí)行設(shè)定的程序,上傳模式即為使用USB線對擴(kuò)展模塊上的ESP32進(jìn)行編程,實現(xiàn)斷開電腦連接后飛機(jī)依然可以執(zhí)行設(shè)定的程序。 ---------- 4 - 準(zhǔn)備工作在開始使用前,將飛機(jī)調(diào)整到最新默認(rèn)狀態(tài)能更好的實現(xiàn)本文的效果。 >4.1 - 更新Tello EDU固件請根據(jù)Tello EDU使用說明書,使用大疆官方的Tello EDU手機(jī)APP將固件更新到最新版本。 注意:更新EDU固件時不要連接擴(kuò)展模塊,即WiFi名應(yīng)該為Tello-xxxx。 >4.2 - 安裝擴(kuò)展模塊驅(qū)動擴(kuò)展模塊使用Mind+編程是通過USB串口,因此在首次使用Mind+連接擴(kuò)展模塊時需要安裝驅(qū)動。 使用USB線連接擴(kuò)展模塊到電腦USB口。 打開Mind+,在菜單連接設(shè)備下點(diǎn)擊一鍵安裝驅(qū)動,彈出驅(qū)動安裝框,點(diǎn)擊下一步或OK直到完成 如果安裝 出現(xiàn)問題,可以點(diǎn)擊鏈接查看詳細(xì)步驟:https://mindplus./zhunbei >4.3 - 恢復(fù)擴(kuò)展模塊固件由于擴(kuò)展模塊可編程,如果擴(kuò)展模塊中存在程序則會導(dǎo)致實時模式的控制無法生效,因此在使用實時模式前需要將擴(kuò)展模塊恢復(fù)默認(rèn)固件。 使用USB線連接擴(kuò)展模塊和電腦。 切換Mind+為上傳模式,在左下角擴(kuò)展中選擇RoboMaster TT(ESP32)然后返回。 點(diǎn)擊連接設(shè)備選擇擴(kuò)展模塊對應(yīng)的COM口,然后點(diǎn)擊恢復(fù)設(shè)備初始設(shè)置,等待進(jìn)度條走完,擴(kuò)展模塊點(diǎn)陣屏顯示TT即可。---------- 5 - 實時模式玩法本章節(jié)簡要介紹RoboMaster TT在Mind+實時模式下的基本玩法。 注:兼容Tello EDU除擴(kuò)展模塊部分功能例如點(diǎn)陣控制。 >5.1 - 單機(jī)模式準(zhǔn)備工作帶無線網(wǎng)卡功能的電腦。 Tello EDU或RoboMaster TT。 RoboMaster TT需要恢復(fù)擴(kuò)展模塊固件。 RoboMaster TT切換為AP模式,以使電腦可以連接Tello EDU發(fā)出的WIFI。 開始控制 打開Mind+,切換到實時模式,在擴(kuò)展中切換到功能模塊標(biāo)簽,選擇加載RoboMaster TT(單機(jī)),返回主界面。連接以RMTT或Tello開頭的WiFi,等待連接成功。 注意: RMTT開頭的WiFi表示Tello EDU加上了擴(kuò)展模塊,Tello開頭的WiFi表示Tello EDU沒有加上擴(kuò)展模塊發(fā)出的WiFi,均可以連接。 如果列表中沒有Tello或RMTT的WiFi,則可以手動在電腦的WiFi列表中連接飛機(jī)發(fā)出的WiFi。 如果電腦WiFi列表中也沒有Tello或RMTT的WiFi,則可能飛機(jī)WiFi沒有切換到AP模式或WiFi名稱被修改,此時可以檢查擴(kuò)展模塊開關(guān)然后長按Tello EDU開機(jī)鍵重置WiFi名。 如果出現(xiàn)連接成功后幾秒鐘自動掉線則說明電腦防火墻攔截了Mind+的聯(lián)網(wǎng)功能,請關(guān)閉防火墻。 其他問題見本文最后的常見問題清單。連接成功之后顯示綠色對勾,飛機(jī)指示燈紫色(RMTT)或綠色(Tello EDU)閃爍,表示正常連接,即可進(jìn)行編程和控制。首先可以打開電池電量和飛機(jī)溫度實時顯示。如果電量不足時飛機(jī)的翻轉(zhuǎn)指令不會被執(zhí)行,如果飛機(jī)溫度過高會自動關(guān)機(jī)。直接點(diǎn)擊積木,或?qū)⒎e木拖出來即可執(zhí)行。起槳模式可以讓飛機(jī)螺旋槳旋轉(zhuǎn)而不飛起來,可用戶給飛機(jī)在地面時降溫。起飛前要退出起槳模式。編程測試。將飛機(jī)放置于空曠上方無遮擋物的地方。 注意:每一條動作程序都會等待動作執(zhí)行完畢后再進(jìn)入下一條命令,即阻塞型指令。 積木說明 【點(diǎn)擊查看積木說明】 更詳細(xì)說明可參考Tello EDU SDK文檔。 >5.2 - 組隊模式將多臺飛機(jī)和電腦都連入同一個路由器中時,電腦端可以通過給不同的飛機(jī)發(fā)送指令實現(xiàn)多機(jī)控制。 準(zhǔn)備工作單機(jī)模式的所有要求 無線路由器 調(diào)整飛機(jī)首先記錄飛機(jī)的SN碼或WiFi名,可以從Tello EDU電池倉、手機(jī)APP、產(chǎn)品包裝盒、單機(jī)模式獲取。此處我們先使用Mind+獲取飛機(jī)SN碼。 先設(shè)置飛機(jī)到單機(jī)模式,在單機(jī)模式中使用Tello EDU SN碼功能即可獲取SN碼,獲取SN碼之后記錄下來。接下來讓飛機(jī)連接到路由器WiFi中:注意:組隊模式需要比較好的網(wǎng)絡(luò),因此請使用一個專用路由器讓飛機(jī)和電腦接入5.8G WiFi信號中,電腦網(wǎng)絡(luò)中禁用其他網(wǎng)卡。 接下來設(shè)置飛機(jī)要連接的路由器WiFi,使用如下積木,填入路由器熱點(diǎn)WiFi名字和密碼,然后點(diǎn)擊運(yùn)行。撥動RMTT擴(kuò)展模塊上的開關(guān)到STA模式。等待飛機(jī)連接到WiFi,連接成功后飛機(jī)會自動進(jìn)入起槳模式。 通過路由器后臺也可以看到飛機(jī)是否連入了WiFi。 依次通過以上步驟記錄多臺飛機(jī)的SN然后讓飛機(jī)連入WiFi。 開始控制加載RoboMaster TT(組隊)擴(kuò)展,注意兩個擴(kuò)展的積木不要混用。 為方便多機(jī)控制,我們將不同飛機(jī)進(jìn)行編號,使用如下積木,將兩個飛機(jī)的SN碼輸入,并編號為1和2,然后在當(dāng)前電腦所在的網(wǎng)絡(luò)中掃描飛機(jī)。 將已經(jīng)切換為STA模式的飛機(jī)開機(jī),等待飛機(jī)聯(lián)網(wǎng)自動起槳,點(diǎn)擊運(yùn)行如下程序搜索飛機(jī),當(dāng)飛機(jī)從黃燈閃爍變?yōu)樽蠠糸W爍即被搜到了。 注意: 電腦此時需要與飛機(jī)連入同一個路由器WiFi下,否則無法搜索到。 如果無法搜到,可以查看本文最后的常見問題清單。查看飛機(jī)狀態(tài)。 組隊飛行測試。 積木說明 【點(diǎn)擊查看積木說明】 更詳細(xì)說明可參考Tello EDU SDK文檔。 ---------- 6 - 上傳模式玩法本章節(jié)介紹上傳模式對RMTT的擴(kuò)展模塊進(jìn)行編程控制的方法。 RoboMaster TT的擴(kuò)展模塊主控為ESP32,在Mind+中支持兩種語言編程,其中ArduinoC模式功能更多,擴(kuò)展功能也更多適合初學(xué)者使用,MicroPython模式功能相對較少,適合想要學(xué)習(xí)Python語法的用戶。 >6.1 - ArduinoC代碼 準(zhǔn)備工作 電腦 microUSB線 RMTT擴(kuò)展模塊 開始控制 切換到上傳模式,在擴(kuò)展中選擇RoboMaster TT(ESP32),使用USB線連接擴(kuò)展模塊。編寫一個閃燈的程序,連接設(shè)備中選擇COM口,點(diǎn)擊上傳到設(shè)備,等待上傳完成即可看到效果。飛行控制,編寫一個程序,上傳完畢之后斷開usb線,然后將擴(kuò)展模塊連接Tello EDU飛機(jī)后開機(jī)。 等待飛機(jī)亮起綠燈,此時按一下擴(kuò)展模塊上的按鈕(飛機(jī)保護(hù)機(jī)制,必須使用這個積木按下按鈕才能起飛),飛機(jī)即亮紅燈起飛,然后亮藍(lán)燈旋轉(zhuǎn)然后亮綠燈降落。 手動編輯代碼Mind+支持直接輸入代碼進(jìn)行編譯上傳,因此對于不支持的擴(kuò)展傳感器,可以直接編輯代碼進(jìn)行控制。 注意點(diǎn)擊上傳到設(shè)備時如果下方為自動生成則上傳的為圖形化對應(yīng)的代碼,兩者并存不沖突。 如下為通過手動編輯功能讀取外接的URM10(SR04)超聲波模塊的值。 用戶庫功能Mind+開放擴(kuò)展庫,因此用戶可以通過此功能導(dǎo)入外部的arudino庫,然后使用手動編輯功能進(jìn)行代碼編寫控制,或制作對應(yīng)的圖形化積木使用圖形化代碼控制。 詳情請參考Mind+官方文檔中的自定義用戶庫文檔教程。 積木說明 【點(diǎn)擊查看積木說明】 更詳細(xì)說明可參考Tello EDU SDK文檔。 >6.2 - MicroPython代碼 準(zhǔn)備工作 電腦 microUSB線 RMTT擴(kuò)展模塊 開始控制 切換到上傳模式,在擴(kuò)展中選擇RoboMaster TT(ESP32),使用USB線連接擴(kuò)展模塊。切換語言到MicroPython,切換完成之后,代碼變成了MicroPython語法的代碼,此時連接設(shè)備選擇端口會自動燒錄MicroPython固件。編寫一個切換燈光顏色的程序,點(diǎn)擊運(yùn)行即可上傳程序查看效果。由于MicroPython模式省略了編譯過程,因此上傳程序變得很快。積木說明 【點(diǎn)擊查看積木說明】 更詳細(xì)說明可參考Tello EDU SDK文檔。 >6.3 - 硬件案例:紅外遙控飛機(jī)Mind+中支持了大量開源硬件,因此可以將各種開源硬件連接到RMTT上從而實現(xiàn)各種效果。本案例使用一個紅外接收模塊連接到RMTT擴(kuò)展板,然后通過普通的紅外遙控器控制RMTT。 準(zhǔn)備工作 電腦 microUSB線 RMTT擴(kuò)展模塊+io擴(kuò)展板 紅外接收模塊 紅外遙控器 硬件連接 紅外接收模塊通過io擴(kuò)展板接到IO26(程序中設(shè)定的)上(提前焊接好排針,【視頻演示】,需要【烙鐵】、【2.54mm排針】)。軟件編程打開Mind+(1.6.5 RC2.0及以上版本),切換到上傳模式,主控板選擇RMTT,然后在通信模塊中選擇加載紅外接收模塊,返回。 進(jìn)行編程,首先寫一個簡單的程序,從串口獲取紅外編碼: 上傳完成后,根據(jù)程序,打開串口監(jiān)視器,使用紅外遙控器對著接收模塊發(fā)送數(shù)據(jù): 可以發(fā)現(xiàn),按下不同的按鍵會收到不同的編碼,這就是按鍵的紅外編碼。 對于這個遙控器,F(xiàn)D開頭的為正確編碼,其他為錯誤編碼(被干擾);對于其他遙控器,多次按下同一個按鍵,相同的編碼即為此按鍵的編碼。 新遙控器電池倉有個塑料片需要拔掉,可以使用手機(jī)前后攝像機(jī)對著遙控器燈查看是否有紅外發(fā)射出來。通過編碼遙控飛機(jī),編寫如下程序,控制RMTT擴(kuò)展模塊的燈顏色,按下2亮藍(lán)燈,按5亮綠燈。 使用這個方法,使用其他遙控器也可以先獲取編碼,然后判斷編碼,執(zhí)行動作。視頻演示:點(diǎn)擊查看 (注:視頻拍攝時還沒有單獨(dú)的模塊,因此本文程序使用更方便) >6.4 - 硬件案例:超聲波避障點(diǎn)擊查看完整視頻 (注:視頻拍攝時軟件中還沒有單獨(dú)的編程擴(kuò)展模塊,使用用戶庫或手動編輯代碼替代,此處僅展示一些效果,程序部分可以重寫) >6.5 - 硬件案例:二哈識圖點(diǎn)擊查看完整視頻 (注:視頻拍攝時軟件中還沒有單獨(dú)的編程擴(kuò)展模塊,使用用戶庫或手動編輯代碼替代,此處僅展示一些效果,程序部分可以重寫) >6.6 - 硬件案例:手勢識別點(diǎn)擊查看完整視頻 (注:代碼可參考傳感器的示例程序編寫) 進(jìn)階擴(kuò)展 通過本案例,我們學(xué)會了使用紅外遙控器遙控RMTT的燈,修改程序則可以實現(xiàn)遙控飛機(jī)的動作。 其他開源硬件,也可以采用同樣的步驟,了解傳感器模塊的使用方法,編程控制。 如果Mind+中沒有支持此模塊,那么你依然可以使用Mind+支持的 擴(kuò)展用戶庫 實現(xiàn)更多模塊的兼容。 ---------- 7 - 成套課程點(diǎn)擊查看: ROBOMASTER TT 無人機(jī)編程教學(xué)開發(fā)大賽 ①《ROBOMASTER TT 無人機(jī)編程教學(xué)開發(fā)大賽 一等獎?wù)n程》作者:莊建東含教案、PPT、項目文件 第一課 認(rèn)識無人機(jī) 第二課 了解編程軟件 第三課 我要起飛了 第四課 飛行任務(wù)一快樂郵遞員 第五課 飛行任務(wù)二 表演機(jī)器人 第六課 飛行任務(wù)三 穿越叢林 第七課 移動交通指揮員 第八課 微笑飛行機(jī)器人 第九課 自動飛行 第十課 高空避障機(jī)器人 第十一課 遙控飛行 第十二課 機(jī)器人小保姆 第十三課 高樓搜救機(jī)器人 第十四課 聽話機(jī)器人 第十五課 森林防火巡邏員 第十六課 迷你小跟班 ②《大疆TT教育無人機(jī) 從入門到精通》 —— 大疆教育官方出品分為無人機(jī)飛行、無人機(jī)編程、無人機(jī)編隊、無人機(jī)競賽4章節(jié)近100個項目,幫助你學(xué)習(xí)操控TT無人機(jī)從入門到精通。 各大線上商店均可以搜索購買 ---------- 8 - 常見問題FAQ 問題 Tello非RMTT版本可以用Mind+控制嗎? 答 普通版不可以使用,EDU版可以使用實時模式單機(jī)+組隊控制,RMTT版可以使用全部功能包括上傳模式。 問題 實時模式無法搜索到WIFI或Tello EDU,或連接成功后馬上斷開連接。 首先確保電腦與飛機(jī)處于同一個網(wǎng)絡(luò)下,并且飛機(jī)各固件都是最新版本。 解決辦法1 關(guān)閉網(wǎng)卡并重啟電腦。無法搜索到設(shè)備請禁用掉所有網(wǎng)卡,僅保留需要使用的無線網(wǎng)絡(luò)后重啟電腦后再進(jìn)行搜索。推薦使用Windows10系統(tǒng)。 解決方法2 關(guān)閉防火墻。防火墻對網(wǎng)絡(luò)連接有影響,在控制面板中關(guān)閉windows防火墻 問題 提示8889端口訪問失敗怎么辦? 解決辦法 首先確保軟件是官網(wǎng)最新的版本。如果是,則嘗試點(diǎn)擊組隊模式中的斷開連接積木或重啟軟件,減少多次掃描的操作。另外注意單機(jī)和組隊的積木不可以同時使用。如果依然無法解決,可以加入Mind+ QQ交流群進(jìn)行反饋 問題 組隊模式動作延遲很大是為什么? 解決辦法 組隊模式請使用專用的路由器,確保將所有飛機(jī)及電腦接入路由器5.8G WiFi下而不是2.4G WiFi(路由器如有信道設(shè)置功能可以將5G信道設(shè)置為149)。 問題 只能搜到Tello開頭的WiFi,而搜不到RMTT開頭的WiFi是為什么? 解決辦法 首先請確認(rèn)擴(kuò)展模塊要先連接Tello EDU才能開機(jī),并且擴(kuò)展模塊上的開關(guān)撥到下方(手機(jī)符號標(biāo)志側(cè))。做好這個設(shè)置之后,因為擴(kuò)展模塊的WiFi默認(rèn)是5GHz的,因此需要手機(jī)和電腦支持5GHz,如果手機(jī)或電腦不支持則需要修改擴(kuò)展模塊的信道。 修改信道的方法:找一臺能夠連接上RMTT的手機(jī),打開Tello EDU,在外部模組里面設(shè)置通訊信道為(1-13,這一段是2.4G頻段),運(yùn)行程序后2.4G頻段的手機(jī)就可以使用了。 問題 如何固定傳感器模塊到RMTT上? 解決辦法 可以3D打印一個結(jié)構(gòu)件用來固定:點(diǎn)擊下載 問題 傳感器如何連接TT擴(kuò)展板? 解決辦法 焊接好排針之后就可以連接了,【視頻演示】,需要【烙鐵】、【2.54mm排針】) 問題 舵機(jī)如何連接TT擴(kuò)展板? 解決辦法 將舵機(jī)的3pin杜邦頭取下,換成1pin的杜邦頭 問題 RMTT擴(kuò)展板的I2C引腳是什么? 解決辦法問題 如何升級擴(kuò)展模塊中wifi的固件? 解決辦法 點(diǎn)擊查看 |
|