見出し画像

【プログラミング】【超シンプル】JuliaでTello(トイドローン)を操作する.

雲の無い晴れの日になると空がこんなにも青かったのかと驚く.
何十年も見てきて,たった1ヶ月くらい見てないだけなのに.

はじめに

少しまえに以下の記事を書きました.
【2021.7】【続】どのプログラミン言語をやるのが良いか少しだけ調べました.(Rust,Go,Julia)
終わりの言葉で格好つけて,「量子コンピューターに興味をもち,Juliaを始める」と書いたのですが,難しすぎておそらく断念するでしょう.
ただ,Juliaに関して調べていたところ,Juliaに関しての記事があまりにも少なくて,僕みたいな素人に理解できないものばかりでしたので,最低限記事に残しておこうと思います.

Juliaの今後の発展を願っています!

実際のプログラム

内容はシンプルでUDP通信をして,離陸,着陸をするというだけのものです.前進させることや,回転させるなどは以下のサイトで日本語に翻訳してくれているSDKを参考にコマンド追加すれば簡単にできることようになると思います.
Tello SDKを利用してPythonでTello(ドローン)を飛ばそう!SDK1.3日本語説明付き!

using Sockets

TELLO_SEND_IP =  ip"192.168.10.1"
TELLO_SEND_PORT = 8889

s = Sockets.UDPSocket()
Sockets.bind(s, ip"0.0.0.0"8889)

# 操作開始
Sockets.send(s, TELLO_SEND_IP, TELLO_SEND_PORT, "command")
# 離陸
Sockets.send(s, TELLO_SEND_IP, TELLO_SEND_PORT, "takeoff")
# 着陸
Sockets.send(s, TELLO_SEND_IP, TELLO_SEND_PORT, "land")
# 操作終了
Sockets.send(s, TELLO_SEND_IP, TELLO_SEND_PORT, "end")

# socketを閉じる
close(s)

課題

現状,やりたいことは2点あります.
・ドローンを自由自在に操れるようにプログラムを組みたい
・画像(動画)認識,処理
1点目は当たり前です.本来の目的は2点目です.
Juliaで動画を扱う方法がまだわかっていません.PythonからOpenCVを使う方法があるみたいですが,それであれば初めからPythonを使えば良いのかなと思ってしまいます.また,そもそも僕自身の画像処理の知識がまだまだ浅いです.(画像認識は奥が深いです.どう手をつけて良いのやら.)

余談

少し,調べればわかるのですが,僕が困ったことを自分用の備忘録も兼ねて残しておきます.
まずは,パッケージのinstallですが,Julia1.6では以下のようにする必要があります.(始めに"using Pkg"をする必要があります.)
他にはREPLで"]"でPkgモードにしてからinstallする方法もあります.
(今はこちらが主流なのかもしれません)

using Pkg
Pkg.add("パッケージ名")

次はJyupterの起動方法です.(JyupterでJuliaを使用することができます)
事前にIJuliaをインストールしておく必要があります.

using IJulia
notebook()

終わりに

正直,Pythonでやればドローンの操作も画像の処理もドキュメントが豊富にあるので,ある程度は割とサクッとできるかもしれません.
(参考:【初心者】Pythonでトイドローンを操作してみる)
ただ,この夏くらいはJuliaをいじってみようと思っています.
上述しましたが,Juliaに関しての記事はまだまだ少ないです.Juliaユーザーの皆さんの力でJuliaが盛え,ドキュメントが豊富になり,もっと簡単にいろんなプログラムができるようになったら嬉しいなと思います.そして,ほんの少しでも僕もそのお力になれていたらなと思います.

冒頭に紹介した記事でJuliaはまだまだ発展すると書きました.現状は他のプログラミング言語に比べまだまだの印象です.
(何をもって発展しているというか、また僕の知らない分野ではすごい盛えているのかもしれないですが)
まだまだというのは,可能性が大いにあるということです.
(このままシュリンクしてしまう可能性もありますが,僕は前向きに考える方が好きです)

一生懸命頑張りますので,僕みたいな素人でも週末でできる,Juliaプログラムの簡単なお仕事ください.
(何かAPI叩く記事でも書こうかな)

# ちなみに実際に使用しているトイドローンは以下です.
RYZE フライングカメラ TELLO ホワイト TELO


PCとスマホ,wifiだけを持って全国をのんびり旅したい.