DJI Tello 的基礎操作與套件


-#DJI Tello 的基本介紹


DJI TELLO 外觀

重量: 80g(含槳葉與電池)
尺寸: 9892.541 mm
槳葉: 3英吋
內置功能: 紅外線定高,氣壓計定高,LED 指示燈,下視視覺,Wi-Fi 連接,高清 720P 影像
接口: Micro USB 充電接口
可拆卸電池: 1.1Ah/3.8V

性能

最大飛行距離: 100 米
最大飛行速度: 8m/s
最大飛行時間: 13 分鐘
最大飛行高度: 30 米

相機功能

照片: 500 萬像素
FOV: 82.6°
影片: HD720P30
格式: JPG(照片),MP4(影片)
電子防抖: 支援

既有功能

  • 掌上拋飛
  • 全向翻滾
  • 彈跳模式
  • 手掌降落
  • 定點環繞
  • 原地360度環繞
  • 一鍵飛遠模式

無人機軟硬體限制

  • 電池電力
  • 載重量
  • 通訊能力/資料與訊號傳輸
  • 機上計算能力
  • 搭載感測裝置能力
  • 飛行穩定度

Tello 的原廠APP


control App

電腦與空拍機的連線


DJI Tello 內建的方式是可以用wifi的連接

注意:因為圖像辨識傳輸的數據量大,訊號要強,必須使用外接wifi接收器

  1. 裝上電池,開啟Tello(開機按鈕於機身側面)
  2. 開機後,確認Tello 前方之LED燈是否亮起並閃爍
  3. 使用筆電 or 手機連接wifi: TELLO-XXXXXX

Tello的插件(另外要有python latest(2.7 or 3.7))

https://github.com/hanyazou/TelloPy

下載插件:

$ pip install tellopy

在python的飛行控制檔的使用:

$ python
>>> import tellopy
>>> help(tellopy)
Help on package tellopy:

第一個飛行程式(起飛再降落):

import tellopy #導入套件tellopy
from time import sleep
help(tellopy) #觀看套件的詳細說明
drone = tellopy.Tello() #建立物件tellopy.Tello()
drone.connect() #使程式與tello建立連接
drone.wait_fot_connection(s) #等待連接的時間, 秒數
drone.takeoff() #使tello起飛
sleep(3) #等待3秒(假如在wifi強度差的地方,請延長)
drone.land() #使tello降落
sleep(3)
drone.quit() #結束程式與tello的連接

Tello 的飛行動作指令

move:
drone.up(val)
drone.down(val)
drone.set_throttle(thr_val): -1~1(neg: down, pos: up )
drone.forward(val)
drone.backward(val)
drone.set_pitch(pit_val): -1~1(neg: back, pos: for )
drone.right(val)
drone.left(val)
drone.set_roll(rol_val): -1~1(neg: left, pos: right )

rotate:
drone.clockwise(val)
drone.counter_clockwise(val)
drone.set_yaw(yaw_val): -1~1(neg: left, pos: right )
val range: 0~100,此地方的值非速度或是距離,把她想像成傾斜程度

Macro function:
flip:
drone.flip_forward()
drone.flip_back()
drone.flip_right()
drone.flip_left()
drone.flip_forwardleft()
drone.flip_backleft()
drone.flip_forwardright()
drone.flip_backright()
land:
drone.palm_land() #手掌降落
take pictures: (need EVENT_FILE_RECEIVED!)
drone.take_picture()

影像接收部分


我們須要下載這幾倨套件 av, opencv-python, image, cv2, numpy
Install av:
need FFMpeg dependencies
http://docs.mikeboers.com/pyav/develop/installation.html?
sudo ldconfig
then install av

  1. sudo python -m pip install av
  2. via source
    reference left pic, git clone this:
    https://github.com/mikeboers/PyAV.git
  3. anaconda:
    conda config --add channels conda-forge
    conda install av -c conda-forge
    
    其他下載
    pip install opencv-python
    pip install image
    
    空拍機的影像完整版請參考
    https://github.com/hanyazou/TelloPy/tree/develop-0.7.0/tellopy/examples

暫時的操都可以在大多數的linux系統以及windows 的subsystem運作,但是之後再使用ROS、FSM等操作就必須要用Ubuntu 16.04 Xenial ,否則可能會出現不相容或控制訊號無法發出的問題。

#ROS #drone #無人機 #空拍機 #AI視覺 #Python #Tello #TelloPy







你可能感興趣的文章

[23] 強制轉型 - 明確的強制轉型、Strings <> Numbers、日期轉 Number、位元運算子

[23] 強制轉型 - 明確的強制轉型、Strings <> Numbers、日期轉 Number、位元運算子

4. 安裝與使用第三方套件

4. 安裝與使用第三方套件

Semantic segmentation 簡介

Semantic segmentation 簡介






留言討論




EddieChunHinHo Feb 29, 2020

That's good. Using python to do. instead of using pip, maybe go for pip3 python 3. something has the same function, but more strong and compatable.




2
2
2