Upload
bizan-nishimura
View
1.710
Download
6
Embed Size (px)
Citation preview
2016.4.6 IoTLT@大阪
西村備山@奈良キカイケン
BLEラジコン基板でIoTしてみた
自己紹介
西村備山 (@lipoyang)
■奈良県在住&勤務
■組込み系技術者
■ミニ四駆
ミニ四駆をBLEラジコン化
BLE
Androidアプリ
魔改造ミニ四駆
歩くミニ四駆
ニコニコ動画で 40万再生
GPduino
Konashi互換のBLEモジュール
Arduino互換のマイコン
DCモータ×2, RCサーボ×3
BLEラジコン基板
http://lipoyang.net/gpduino
やりたいこと
BLE 指令
Web系はまったく未経験
JavaScript わからん
← C言語歴20年
Milkcocoaがお手軽らしい
仕組み
send
DataStore
BLE
Webアプリ
ソース (HTML)
<body> <table><tr><td></td> <td><img id="up" src="up.png"></td> <td></td></tr> <tr><td><img id="left" src="left.png"></td> <td></td> <td><img id="right" src="right.png"></td></tr> <tr><td></td> <td><img id="down" src="down.png"></td> <td></td></tr></table> <script src='https://cdn.mlkcca.com/v2.0.0/milkcocoa.js'> </script> <script src="controller.js"></script> </body>
ソース (JavaScript)
window.onload = function(){ var buttonUp = document.getElementById('up'); (中略)
var milkcocoa = new MilkCocoa("アプリのID.mlkcca.com"); var ds = milkcocoa.dataStore('gpduino'); buttonUp.onclick = function() { if( direction != DIR_UP){ direction = DIR_UP; ds.send({direction: 'up'}); buttonUp.src = "up_active.png"; (中略)
} }; (後略)
Androidアプリ
BLE Konashi
SDK Milkcocoa
SDK
中継アプリ
※ Android は Konashi SDK が Java版しかない
Milkcocoa SDK for Android
jarをダウンロード
GitHubのはメンテされてない!?
ぬるぽ 発生!
Milkcocoa/Konashi 中継アプリ
ソース (Java)
public void onCreate(Bundle savedInstanceState) { (中略)
m_milkcocoa = new MilkCocoa("アプリのID.mlkcca.com"); m_dataStore = m_milkcocoa.dataStore("gpduino"); m_dataStore.addDataStoreEventListener(this); m_dataStore.on("send"); }
public void onSended(DataElement dataElement) { String direction = dataElement.getValue("direction"); (後略) }
public class MainActivity extends Activity implements DataStoreEventListener {
動いた~
でもリアルタイムって…
→ 数10msecのレイテンシを リアルタイムとは呼ばない
※ メカトロ屋の感想です
時間の尺度
10 μsec
100 μsec
1 msec
10 msec
100 msec
1 sec
10 sec
RTOS
メカ
LAN クラウド
Linux, Windows
UI
BLE
分野によって リアルタイムの 意味は違う!
次は何しようかな~?
http://lipoyang.net
7/9~10
メイカーズバザール大阪
7/16~18 NT金沢2016
出展予定