ドローンを動かすためにSwiftに触れた話

ガジェット

はじめまして。
今年の4月に入社しました新入社員の田中颯と申します。
さっそく本題ですがTello EDU
(公式サイト : https://www.ryzerobotics.com/jp/tello-edu )
をSwiftを使って動かしたいと思います。

こちらのドローンですが思ったより飛ぶ時の力があり、
狭い場所で飛ばすのはあまりお勧めできません。
広さに余裕があるところで飛ばしてください。

今回はのテーマを決めたきっかけですが
ドローンを用いたプログラミングを題材に講義を開いてほしい
とのお仕事をいただいた事がきっかけになりました。
講義の様子は後日またブログが更新されるかもしれません。

Tello EDU自体は子供でも簡単に飛ばして遊べる様になっているので、プログラミング初心者でも理解しやすいブロックプログラミングに対応はしているのですが…

今回は講義の相手は高校生ということもあり、
教える側としてはさらに掘り下げてSwiftも学習してみようかなという思惑で始めました。

まずSwift Playgrounds内のチュートリアルから触れてみる

1つ目のチュートリアルがこちら

とりあえず実行して動作を確認してみましょう。
結果は、離陸->数秒(3秒)一定の高さで維持->着陸
という感じでした。

つまり
takeOff()
ここの部分で接続しているドローンが離陸。

wait(seconds: 3)
ここは離陸した状態から高度をを3秒間維持。

land()
ここで着陸という風に動いています。

チュートリアルとして項目が30個ほど用意されているみたいなのでとりあえず順番に目を通していきたいと思います。

チュートリアル半分くらい学習した結果

こんなコードがかけました!
上から順に、前10cm->右20cm->前40cm->左40cm->後40cm->右20cm->後10cm

少し前に出て一辺40cmの正方形を描き元の位置まで戻ってくるコードをかいてみました。
一応動画も撮ってみましたのでご覧ください。

ビデオ

他にもいろいろ実装してみたものの家で飛ばすには広さが足りず断念…

使用した感想

結論から入るとプログラミングに触れた事がない人が勉強するのにちょうど良い教材かなと思いました。
途中までの感想ですがチュートリアルも親切です。
(英語版しかありませんが)

何より自分で組んだコードで思った通りに動いた時の達成感を味わえるのではないかなと思います。

ドローンを飛ばす経験ってそうそうできるものではありません。
お子さんがいる方は夏休みの自由研究なんかで取り上げれば家族の時間も作れ良い思い出作りにもなるのではないでしょうか?

以上で田中颯の初ブログ投稿を終わります。
読んでいただきありがとうございました。

タイトルとURLをコピーしました