Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
JavaScript初心者のためのNode.jsで学ぶドローン制御プログラミング
Search
mogiken
April 05, 2018
Technology
360
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
JavaScript初心者のためのNode.jsで学ぶドローン制御プログラミング
JavaScript初心者のためのNode.jsで学ぶドローン制御プログラミング
mogiken
April 05, 2018
More Decks by mogiken
See All by mogiken
Ethereumをさわって実感するブロックチェーンハンズオン
mogiken
0
260
自己紹介LT
mogiken
0
600
チームスマコン・ブロックチェーン勉強会資料3回
mogiken
0
430
チームスマコン・ブロックチェーン勉強会資料2回
mogiken
0
280
チームスマコン・ブロックチェーン勉強会資料1回
mogiken
0
440
Ethereumをさわって実感するブロックチェーンハンズオン
mogiken
1
390
自己紹介
mogiken
0
280
Other Decks in Technology
See All in Technology
データエンジニアの次の戦場は "プロセスエンジニアリング"
sansantech
PRO
1
110
大型犬好きによるPugの紹介
yamanoku
1
160
sue445's proposals 2026
sue445
0
100
AI導入は済んだ。次は統制を作り替える番だ_AI×開発組織 Summit 2026
techtekt
PRO
0
370
QA4AI 2026-Oct 生成AI時代の品質保証
tokuty
1
900
会社説明資料
persolserverworks
0
9.8k
フロントエンドカンファレンス関西2026 - 速すぎるUIに、待ち時間を
teamlab
PRO
0
190
宣言型部分更新は何を解決しどこへ向かうのか
shuta13
1
480
AI駆動で「他アプリの音を加工できる」アプリを作った
satomasahiro2005
0
170
React改造してみた
tsukina_7mochi
0
120
実践! SRE × AI - ABEMA における AIOps -
tetsuya28
8
3.1k
hackers_champloo_2026_tidb
makocchi
0
170
Featured
See All Featured
A better future with KSS
kneath
240
18k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
What's in a price? How to price your products and services
michaelherold
247
13k
Utilizing Notion as your number one productivity tool
mfonobong
4
620
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
520
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
220
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
520
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
600
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3.1k
How STYLIGHT went responsive
nonsquared
100
6.3k
Become a Pro
speakerdeck
PRO
31
6.3k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Transcript
TECHNOMOBILE GROUP HEAD OFFICE TOKUSHIMA development section | 5floor Column Minamiaoyama,7-1-5,Minamiaoyama,Minato-ku,Tokyo
107-0062,Japan | 3floor Tokushimakenkohkagaku-center,Hiraishisumiyoshi,Kawauchi-cho,Tokushima-shi Tokushima 771-0134,Japan JavaScript初心者のための Node.jsで学ぶドローン制御プログラミング
2 最近ドローン流行ってますよね。 流行語にもなりました。 落ちたりw COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS RESERVED. 6
3 ドローンはラジコンの延長のような おもちゃと思っていませんか? 実はセンサーがたくさんあり それらを制御するためにコンピュー タが内蔵されています。 COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS
RESERVED. 6
4 応用範囲も広くレースだけではなく 端の点検や土壌調査、農薬散布など に使われ始めています。 Amazonは宅配も計画中!!! 第四次産業革命とも COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS
RESERVED. 6
5 実際に飛ばしたことありますか? COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS RESERVED. 6
6 実際に飛ばしてみましょう!!! おもちゃのドローンなら簡単で す。 COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS RESERVED. 6
7 みなさんはプログラマーですよね? であればプログラムで制御してみた いと思いませんか? COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS RESERVED. 6
8 おもちゃのドローンでもSDKが配布 されているものもあり、手軽にプロ グラム制御できます。 COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS RESERVED. 6
9 もちろん簡単なJavaScriptでも制 御できるのです。 COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS RESERVED. 6
10 今回はJavaScriptの実行環境に Node.jsを使って、ドローン制御方 法を学びましょう。 ハンズオン形式で!! COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS RESERVED.
6
11 COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS RESERVED. 6 使用するドローン
12 COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS RESERVED. 6 ドローンはどうやって飛ぶのでしょう? ジャイロセンサー、加速度センサ、 高度センサ、GPSセンサなどをもと
に、コントローラ(コンピュータ) が制御します。
13 COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS RESERVED. 6 ドローンを制御するには 参考: h#p://www.drone-jp.net/?page_id=121
スロットル = 上昇下降 ピッチ = 前後 ロール = 左右 ラダー(ヨー) = 左右の回転
14 COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS RESERVED. 6 ドローンをプログラムで制御するには WiFi/Bluetoothなどの無線 スマホ/PCなど
15 COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS RESERVED. 6 今回、制御する構成 Bluetooth PC(Node.js)
16 COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS RESERVED. 6 Node.jsとは JavaScriptはブラウザで動作する 言語ですが、Node.jsはサーバーで
動作するJavaScriptです。 非同期処理が得意なためチャットな どの通信用によく使われます。 また、動作が軽いためIoTなどの組 み込みLinuxでよく使われます。
17 「Node.jsをインストール」「必要なライブラリをインストール」のページを実 行して、Node.jsとライブラリーをインストール済みにしておいてください。 6 事前準備
18 COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS RESERVED. 6 この学びの対象者は? →JavaScript初心者でJavaScriptを 使ってドローンを制御してみたい人。つい
でにNode.jsも学びたい人。 教えないことは? →ばりばりのJavaScriptプログラマーで はないので深い知識はありません。難しい 質問はしないで。
19 COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS RESERVED. 講師 Gashfara,Inc.代表 デジタルハリウッド大学院客員講師 茂木健一
[email protected]
[email protected]
http://facebook.com/mogiken http://www.slideshare.net/mogiken1 自己紹介 [プロフィール/実績] もぎ・けんいち•青山学院大学大学院卒。Gashfara,Inc.代表。本社はハワイですが出社したことな し。ホノルルマラソンには参加w 青山学院大学大学院卒:エニックスでオリジナルゲーム制作(Z80アセンブラ CP/M)、SmallTalk で人工知能開発(企業買収)。 (株)東洋情報システム退社後、(株)エイチアイ、グランスフィア(株)、(株)ファッション ウォーカー(えびもえのEC)など数社のベンチャー企業の立ち上げ・創業期に参画し、ガシュファ ラ・インクをUSで起業。システム開発ではゲーム、TOL(ツタヤオンライン)の立ち上げ。動画配 信システム(USENのGate01:Gyaoの前進)、電子マネーシステム(Bitcash)、ECフルフィルメ ントシステムなど、多彩な分野を経験。IT関連教育では1998年ころからデジハリの2.5階に間借 りしながら教育コンテンツ作成(JIB社)。Brew、Java、セキュリティーなどの講師として活躍。 現在、(株)HUGGを設立し、スマホのカップル向けSNSサービス[HUGG]をグローバルに展開。㈱ テクノモバイルにて技術サポート。 【著書】 BREWプログラミング実践バイブル [共著] (インプレス)、PHP逆引き大全 516の極意[共著](秀 和システム)
20 成長を実現させるシステム”モバイルトータルソリューション” Web システム スマホ アプリ ゲーム アプリ モバイルトータルソリューション B2B2C
• コンシューマ向けの⼤規模Webシステムの開発からアプリ・ゲーム開発までをマルチデバイスで対応 高い技術力 市場ニーズとマッチ ⼤規模 Webシステム に強い Java,PHP Strong1 最先端技術・独⾃ フレームワークで 効率的な 開発 Strong2 ⾼トラフィック、 インフラ ネットワーク に強い Strong3 プライマリー ベンダー、 ヒアリング・ 要件定義 に強い Strong Ⅰ 情報資産の活⽤ 最先端と 知⾒に強い Strong Ⅱ 最先端のマルチ デバイス ウェアラブルに 強い Strong Ⅲ Mashup Awards 5年連続 受賞 会社名 株式会社テクノモバイル 設 ⽴ 2008年 資本⾦ 2,500万円 代 表 播⽥ 誠 従業員数 100名(グループ合計) 本社所在地 〒 107-0062 東京都港区南⻘⼭7-1-5 コラム南⻘⼭ 5F 開発室 〒771-0134 徳島県徳島市川内町平⽯住吉209-5 徳島健康科学総合センター 3F
21 Macを例に解説します。Windowsはここを参考に http://qiita.com/takuyakojima/items/780b3b3133a17cceb175 Node.jsをインストール COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS RESERVED. 6
nvm(Node.jsバージョン管理ツール)をインストールします。 ・ターミナルを開き下記2行を実行。 git clone https://github.com/creationix/nvm.git ~/.nvm source ~/.nvm/nvm.sh ・下記を実行してNode.jsの4.1.1をインストールします nvm install 4.1.1 ※gitがインストールされていない時は yum -y install git または brew install git
22 必要なライブラリをインストール COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS RESERVED. 6 ドローンを制御するために必要なライブラリをインストールします。 ・ターミナルを開き下記2行を実行。新しくターミナルを開くたびに必要です。
ログインシェルに記載するのがよいでしょう。 source ~/.nvm/nvm.sh nvm use 4.1.1 ・下記を実行してライブラリをインストールします npm i noble npm i keypress npm i rolling-spider npm i temporal
23 動かしてみましょう COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS RESERVED. 6 h#ps://goo.gl/YOjWNW からファイルをダウンロードして実行しましょう。 node
finddrone.js でドローンの BluetoothIDを探します。PC毎にIDは違い ます。Ctrl-Cで停止できます。 drone.jsの14行目あたりのuuidを見つけた IDに書き換えます。 node drone.jsで実行します。
24 動かしてみましょう COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS RESERVED. 6 設定完了のメッセージが表示されたら、ターミナルのキーで操作できます。 緊急時にはドローンのガード部分を掴んで捕まえてしまいましょう。
l = 着陸(緊急時に着陸させるために必ず確認してください。) t = 離陸 x = 接続解除(ちゃんと解除しないと次回接続できません) 離陸後の操作 矢印キー = 方向移動 u = 上昇 d = 下降 w = 90度右回転 q = 90度左回転 a = 自動操縦。離陸して着陸。
25 ソースコード解説 COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS RESERVED. 6
26 Let’s ゲーム COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS RESERVED. 6 指示に従ってゲームをクリアしま しょう
優勝すると。。。。。 aキーの自動操縦の動きを修正して所定の位置にうまく着陸させましょう。 単純な横移動以外の動きをつければ、ポイントを加算します。 参考:https://github.com/voodootikigod/node-rolling-spider
27 COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS RESERVED. 6 あとは、サンプルを自分なりに改造して遊びましょう。 自分でもおもちゃのドローンを入手してチャレンジ これであなたも新しい第4次産業エンジニア
の仲間入り!!
28 COPYRIGHT(C) TECHNOMOBILE ALL RIGHTS RESERVED. 6 ・IoT事業の参考 ・本格的な第四次(六次?)産業への参入検証 ・Node.jsの開発サービス参入
・デザイナー・エンジニアのスキル向上 適用事例(経営者・営業担当の方に)