A. 大疆機甲大師ep支持自己編程嗎
大疆機甲大師ep支持自己編程;
新一代的機甲大師 EP 開放了軟體開發工具包,為我們的編程教學帶來了新的可能,去實現人工智慧識別,人聲控制,編隊跳舞這些有趣的功能。
B. 大疆機甲大師編程體驗:如何Coding一個會跟蹤的小機甲
作者:思源
早一段時間,機器之心拿到了一台機甲大師 S1,在暢快地控制與 游戲 之餘,我們不禁想看看它的編程模塊到底是什麼樣的。看看除了手動控制外,我們都能通過編程實現些什麼,機甲大師 S1 又能自動化做些什麼。帶著這些疑問,機器之心實際操作了一波,看看機甲大師 S1 的大腦到底能有多強。
「戰斗」體驗
在剛拿到機甲大師 S1 的時候,當然是先體驗一番它的操作與戰斗樂趣了。我們可以通過雲台上的攝像頭以第一人稱的視角操作機器,當然也包括開火啦。因為我們是通過 WIFI 連接並控制機甲大師,所以控制距離依 WIFI 信號而定,當然你也可以嘗試其它的連接方式。
即使是單人模式,機甲大師 S1 也能實現很多功能,例如錄制視頻或拍照、識別物體或射擊水彈等等。如下是機器之心已經在辦公室中開玩了。
真實場景版第一人稱射擊 游戲 。
在剛玩機甲大師 S1 時,可能會感到非常新奇、非常有意思。但了解它的操作和各種功能後,它的操作樂趣會逐漸消退,畢竟沒有其它機甲大師能一起對戰。
不過值得慶幸的是,機甲大師 S1 還有「實驗室」模式,我們可以根據編程模塊實現各種炫酷的玩法。
機甲大師 S1 編程模塊
機甲大師 S1 的編程主要分為 Python 和 Scratch 兩種,它們兩者之間是可以直接轉換的。總體而言,機甲大師提供了大量預定義的模塊,我們要做的就是調用不同的模塊,並構造完整的流程。
機甲大師 S1 的功能模塊大致能分為幾大類,首先是控制機身行為的模塊,包括燈光、移動和射擊等等;其次是各種識別模塊,例如識別到人、標志等等;最後是一些編程的標准模塊,例如控制流或數據結構等等。
因為基本的能力與特性都是確定的,剩下的重點就是構建系統的邏輯。所以說,如果我們了解了各種模塊或 API 的定義,那麼機甲大師 S1 的編程並不困難。
舉個栗子
下面列舉一個簡單的案例,我們需要機甲大師 S1 開始旋轉機身、雲台來找人。如果檢測到行人,那麼就令機身的所有燈光都變成紅色,並抬頭「看著」人。這樣簡單的一個邏輯可以快速通過 Scratch 完成,直接拖拽不同的模塊就行了。其中不同類的模塊顏色還不一樣,例如 while、if 等控制語句都是藍色;視覺識別模塊都是淺黃色。
如下展示了用 Scratch 編寫上面邏輯的結果:
即使不太了解編程的讀者,看看上面的模塊差不多也能知道機甲大師 S1 會做些什麼。基本上各種復雜的任務或流程都能通過 Scratch 搭建,各種功能也都能實現。對於一般的開發者而言,我認為直接使用 Scratch 編程更便捷一些,因為 Python 編程其實邏輯上也差不多,不過要熟悉各種 API。
如下是上面程序的 Python 代碼,它的復雜之處在於 API 的選擇與配置,其它程序控制流或過程並不會太復雜。
雖然說是用 Python 編寫的程序和 Scratch 是等價的,但這么多 API 還是需要花一定功夫來理解的。如上所示,我們並不需要導入各種模塊,直接可以調用 vision_ctrl、led_ctrl 和 gimbal_ctrl 等介面,各 API 的參數也與 Scratch 中的差不多。
如果我們用 Python 寫機甲大師 S1 的程序,那麼我們這樣的初學者會遇到一些問題。首先機甲大師 S1 似乎暫時沒有提供完善的 Python API 文檔,只在每一個 Scratch 模塊下介紹了對應的 API,但該 API 的行為與用法並沒有展示。其次,每一次查找 API 時,不能通過搜索直接定位,我們先要理解 Scratch 模塊,才能找到對應的 API。
編程指南中的 Python API 示例。
最後,至少在機器之心嘗試用 Python 編程時,沒感覺到它的定製化優勢。所有高層 API 的介面都是封裝好的,我們只能利用現有的功能模塊實現一些流程。比如說機甲大師 S1 的識別功能,它支持行人、特定標記、特定姿勢和其它機器人的檢測,它們都有非常完善的 API。但是如果需要識別新的目標,例如「貓」,那麼它是做不到的,我們也無法給它加上我們自己訓練的 ML 模型。
當然,機甲大師的底層開發肯定非常復雜,要給它加上新的特性一定很麻煩,但是機器之心還是希望機甲大師能提供一系列教程,讓機器學習開發者也能將自己的模型載入到上面。
總體而言,通過這個簡單的案例,我們發現對於一般的用戶,使用 Scratch 寫程序要比用 Python 寫高效得多。它非常適合作為青少年的編程啟蒙玩具,用 Scratch 編寫出炫酷的應用。
Scratch 編程模塊
最後我們重點介紹一下機甲大師該怎樣使用 Scratch 進行編程。機甲大師 S1 的編程都在應用程序內完成,不同的語言都有自己的編輯窗口。如下所示為 Scratch 的編程界面,其中圖形化的編程模塊有一百多個。為了便於查找模塊,機甲大師按照不同的功能以不同顏色的模塊進行分類,這樣搭建起來會比較簡單。
編程指南地址:https://www.dji.com/cn/robomaster-s1/programming-guide
我們簡單搭建了一個識別人的流程,機甲大師可以旋轉車身找人,找到了就向行人前進。如下所示為程序的調試窗口,執行後可以同時看到攝像頭的畫面與車身的狀態,這樣就能快速嘗試剛剛編寫程序的效果。
在下面的動圖中,我們可以看到程序運行的動態過程。這里因為場地有限,我們將向前平移距離設定為了 0 米,如果不為 0,那麼機甲大師在檢測到人的同時會抬起「炮筒」向人前進。如下所示當檢測到人時,機甲大師會抬頭。
其實更好的一種方式是先用 Scratch 搭建整個架構,然後再在 Python 開發環境下修改細節。比如說,拉拽的 Scratch 模塊只有少數幾種條件語句,但是如果在 Python 環境下就能利用 elif 等更合理的語句。
同時,很多 API 的參數也是不太一樣的,在 Scratch 環境下,燈光只能配置幾種常見的顏色,但是在 Python 環境下,可以通過 RGB 的值來配置燈光顏色。如下是上述程序的 Python 代碼,我們可以進一步調整細節。
如上只是簡要介紹機甲大師 S1 該怎樣編程,我們通過簡單的操作就實現一個「智能」的機器人。總體來說,使用已有的高層 API 做個智能機器人就已經非常足夠了,我們不能期望能使用更加復雜的底層介面。帶小朋友做個炫酷的機甲大師,這也是非常有意思的挑戰啊。
C. 如何在大疆機甲大師上編程向前走
你好,你不用擔心,如果想在編程上向上走的話,最好是去進行一下硬體的優化。
D. 大疆無人機飛控採用什麼操作系統 ucos
嚴謹點回答應該是NUTTS系統,嵌入式操作系統一般都是linux是鼻祖,不過linux比較版龐大一般只跑在cortexA核cpu上,像當下權無人機飛控mcu多半是stm32主導的cortexM核,大疆也不例外,性價比高,只能跑實時的小操作系統,不過也是都已linux大改魔改來的,最早的市面上常見多軸開源飛控程序基本都以NUTTS系統主導,大家無非是再大改魔改成閉源固件更成熟,飛行更穩定。就像小米的MIUI其實就是改安卓,或者說優化成自家的。
E. 大疆機甲大師ep支持自己編程嗎
支持。RoboMasterEP搭載高性能舵機,可通過編程介面進行自定義控制。RoboMasterEP該產品為大疆第二款教育機器人。
F. 大疆RoboMaster TT無人機評測:開啟編程航拍之路
無人機好玩嗎?確實很有趣且很好玩,尤其對於青少年的孩子來說是一個可玩性很高的玩具,而且會操控無人機玩航拍也能讓孩子多一門手藝,在將來的就業競爭中獲得更多的優勢。但如果孩子是零基礎開始學無人機的話,我並不推薦直接送孩子一套大疆Mavic Mini或更高端的無人機,由於航拍時依然會有炸機風險,不僅損失較大而且容易誤傷到他人,安全問題還是相當重要的,另外孩子有可能會三分鍾熱度,玩了一陣後就對無人機興趣不大了,結果無人機在家吃灰的話同樣得不償失。
相對而言,我倒是更加推薦特洛無人機這類玩具給零基礎的孩子們作為啟蒙玩具使用,一來是這種玩具由於體積較小,遙控無人機飛行高度不高,炸機風險相對可控,當然更重要的在於特洛無人機支持自定義編程操作,能夠讓孩子在玩無人機的同時通過編程方式鍛煉孩子的編程思維,這才是寓教於樂的核心精髓。而近期大疆又為特洛無人機進行了,因而我們看到了為學生群體量身打造的RoboMaster TT創造力套裝(以下簡稱TT無人機),這次我們就來看看全新的RoboMaster TT有著哪些新的變化。
外形繼承特洛樣式 飛行操控體驗一致
不仔細端詳時,你會發現TT無人機與此前的特洛無人機在外形上並沒有什麼顯著差別,主要就是配色上統一為深紅色,並且機身的頂部位置多了TT的logo標記和6個圓形的外接介面。
但在配件上,TT無人機要比特洛多了不少,多出了一個開源控制器、一個測距點陣屏拓展模塊,一個轉接拓展版以及4張挑戰卡。而多出來的這些配件就是二者的最大區別,而這些配件也將在編程操作中發揮著不小的作用。稍後的編程介紹環節會著重講述這些配件的使用方法。
再來簡述一下TT無人機的相關參數,基本上與此前的特洛無人機沒什麼區別,在包括電池和槳葉以及護槳的狀態下,機身重量為87g,前方的攝像頭可拍攝500萬像素的照片和720p30p的視頻,最遠可飛行30米,最高飛行高度為30米。
機身底部位置還配備了視覺定位系統,有了這套系統在操控無人機時能很好的避開無人機下方的障礙物,從而實現安全的起飛和降落,也減小了炸機風險。當然要避免炸機的話,機身的上方,前方後方和左右兩側都配有該系統才能更好的避免炸機情況發生,不過那是高端無人機才會配有的系統,咱們也只能盡量安全操作來避免飛行事故發生吧。
充電介面位於機身左側,依舊還是micro-USB,不過作為入門無人機的定位來說採用這個介面也無可厚非,電池可提供13分鍾的飛行續航時間,但這個飛行時間是在無人機沒有安裝測距點陣屏拓展模塊和開源控制器下實現的,要是安裝那2個配件的話,續航時間會更短一些。對我來說有些不滿的就是它的充電速度上較為偏慢,需要1.5小時左右的時間才能充滿電進行飛行。
在實際航拍上,TT無人機也與特洛無人機一樣通過Tello APP進行飛行操控,除了常規的飛行方式外,還支持360 環繞拍攝和翻滾飛行等操作。
以上便是TT無人機的操控飛行介紹,但大家也可以看到,無論是參數上還是飛行操控上與之前的特洛基本沒什麼兩樣,因此我們重點關注的便是配件的應用與編程方面,TT無人機在這兩個方面都帶來了哪些新奇的玩法。
圖形化積木簡易編程 DIY燈效花樣繁多
我們先將開源控制器和測距點陣屏拓展模塊安裝到TT無人機上,並將開源控制器上的數據線接上機身的micro-USB介面,開啟無人機的開關按鈕後可以看到,測距點陣拓展模塊的頂部開始閃爍起了指示燈,並且測距點陣拓展模塊的正前方亮起了TT樣式的燈效,這個燈效的設計讓我有種玩俄羅斯方塊的既視感。而通過移動設備的Tello E APP或PC端的Mind+ 圖形化及代碼編程軟體,我們就能通過編程的方式實現DIY的創意飛行。
或許有些同學在看到編程二字後就頭大了,腦海中浮現出來的編程內容就是各種英文單詞加數字運算符號,循環條件動作或樣式進行邏輯運算,但其實你在使用Tello E或Mind+進行編程時,會發現這其實是圖形化的編程,而且上手難度並不高,通過類似玩新手任務的 游戲 ,我們可以看到編程的方式很類似玩搭積木,通過一塊塊積木的堆疊然後層層推進,一步一步設置從而獲得我們想要的效果。
在編程中,我們不僅能夠控制無人機的飛行操作,還能自定義設置飛機上的指示燈顏色以及測距點陣屏拓展模塊上的燈效效果,還記得我只取提到燈效有玩俄羅斯方塊的感覺嗎?在編程設置中,我們還真的就可以把燈效做成俄羅斯方塊的各種造型。不只是自定義造型,我們還能在測距點陣屏拓展模塊顯示各種字母或圖案,並通過時間變化來拼成單詞或展現一些新奇的特效,比如我們對一個「HELLO」單詞設置字幕的先後順序和變換時間的參數,屆時測距點陣屏拓展模塊就會依次顯示出』H』』E』』L』』L』』O』五個字母。
挑戰卡飛行地圖提升個人能力 多人互動打造無人機蜂群
除了測距點陣屏拓展模塊外,挑戰卡和飛行地圖也是我們在無人機的編程中十分好用的道具,標配的4 張挑戰卡在正反兩面均有不同圖案,而挑戰卡的圖案則由小火箭、挑戰卡ID、星球三部分組成。其中小火箭代表坐標系中 X 軸正方向。挑戰卡 ID則是為了方便我們區別不同挑戰卡,星球則是讓無人機識別出是哪款挑戰卡,並獲得挑戰卡的坐標方位。
而飛行地圖就需要我們在官網自行下載了,其圖案由DJI Logo,裝飾圖案、星球三部分組成。其中DJI Logo代表該挑戰卡坐標系中 X 軸正方向。裝飾圖案只是起到裝飾作用。星球的作用則與挑戰卡的星球一樣,需要注意的是,列印飛行地圖時需要使用啞光,表面有紋理並且粗糙不反光的材料,否則可能會影響無人機的視覺感測器。另外TT無人機識別挑戰卡的區域是由范圍的,可識別高度為0.3-1.2米,不同高度上可識別的范圍也都不一樣,可識別范圍大致呈現一個立體的梯形結構。如果挑戰卡在TT無人機的識別空間外,無人機則有可能無法探測到挑戰卡。
飛行地圖
無人機除了單人玩耍外,多人互動也能進一步豐富無人機的可玩性,不僅可以相互進行飛行比賽,我們還能給無人機編隊集群,大家集思廣益,在編程的溝通交流迸發出創造力的火花,還是以測距點陣屏拓展模塊上顯示」HELLO」單詞作為例子,由於屏幕太小,一個無人機只能顯示清晰一個字母,但是五架無人機放在一起,不就能一次性完整的展出」HELLO」的字樣了嗎,當然由於評測設備只有2台TT無人機,不過無傷大雅,「HI」的字樣還是能拼一下的。所以相比起孩子的單人鑽研編程,我更加推薦孩子們一起搞編程。
簡要的說明一下多人互動如何實現,先在Tello E APP上通過直連方式將智能手機或平板電腦連接到TT無人機,然後將拓展模塊的直連模式切換到路由器模式,待無人機成功連上路由器時,依次相同的操作流程就可完成飛行編隊。
當然,孩子要是個編程天才,能自己獨立寫開發代碼的話,在SDK3.0和Arino IDE等工具進行代碼編程操作,要是孩子正在學習Python開發語言的話那就更好了,大疆還直接提供了無人機Python編程的課程大綱,可以直接將所學的編程知識在實際應用中展現出來。
總結
其實大家最近看一些 科技 新聞也能看到 科技 巨頭蘋果和谷歌也都在大力推動兒童的編程教育,編程能力會是未來孩子就職競爭能力表現的一大考核要素,從這個角度來看,給孩子一架TT無人機投資他的編程教育是一筆相當劃算的投資,千里之行始於足下,或許未來的一個編程開發高手,就啟蒙於一台TT無人機。因此想讓購買的無人機發揮更多作用,鍛煉孩子編程思維能力的話,TT無人機的確是更好的選擇。