ラベル ADK の投稿を表示しています。 すべての投稿を表示
ラベル ADK の投稿を表示しています。 すべての投稿を表示

2013年5月3日金曜日

S.H.A ACT.2

 GW後半の部に入りました。今日は、朝からハンダ付け♪。


 短いUSBケーブルやMILコネクタ・ケーブル、バニラシールドへの配線等を行いました。これらを何に使うかというと、



 前半に製作した熱源追跡台車のブレッドボードとジャンパ配線を置き換えて、スッキリさせました。


 センサの固定はあいかわらず、セロテープですけどね・・・。


 ブレッドボードとジャンパ線に比べれば、ずいぶんスッキリした感じ。ついでに、ランニングエレクトロニクスさんのSBDBTも実装できるようにして(まだ、使ってませんが)、ArduinoもUnoからMega ADKに交換しました。なぜ、Mega ADKに替えたかというと・・・


 台車を2階建てにして、


 USB スカッとミサイルランチャーを載せたかったからです。ミサイルを操作するためにUSBホスト機能が欲しかったわけです。


 熱源追跡台車ACT.2 です。ソフトの方がまだまだなので、とんでもない方向で発射したりします。発射のための熱検出のしきい値を低めに設定したら、色んな物に向かって発射してしまいました。プラズマテレビの排熱とかを検出して攻撃を仕掛けたりしてました。「この爆発は人間じゃねぇ・・・」

以下、2016年03月17日に追記しました。
Added on 03 May 17, 2016.

Arduinoのスケッチです。
Arduino sketch is bellow.
DRV8830のライブラリは自作です。
Library of DRV8830 is self-made.

2013年2月21日木曜日

Raspberry Pi のクロス開発環境 その2 デバッグ

 前回はRaspberry Pi のクロス開発環境を構築しましたが、デバッグが出来ないとやっぱりダメでしょってことで、リモートデバッグを試してみました。


 デバッグアイコンから「Debug Configurations...」を選んで・・・って思ったら、GDBを入れてなかったみたいです。


 まず、GDBをインストールして、(ついでにeclipse-rseと表示があったのでインストールしましたが、これは前回プラグイン画面でインストールしているものとかぶっているかもしれません)


 あらためて、「Debug Configurations...」で左側で「C/C++ Remote Application」を選択して、左上の新規作成ボタンを押します。右側に設定画面が表示されるので、「Main」タブで「Connectoin:」を前回作ったRaspberry Pi とのコネクションを選択して、「Search Project...」ボタンで該当プロジェクトを選択すると、「C/C++ Application:」とその下の「Remote Absolute File~」が設定されます。もし、設定されなかったり、違っているようなら、「Browse」ボタンで手動で設定します。
 「Commands to execute before application」(実行前コマンド)に
   sudo -i
   chmod +x /home/pi/workspace/HelloRaspberryPi
   gdbserver :2345 /home/pi/workspace/HelloRaspberryPi
のように、Raspberry Pi側の実行ファイルに実行権を与えて、gdbserverをポート2345で起動するようなコマンドを設定しておきます。パスの部分はプロジェクト名や実行ファイルの置き場で変わるので適宜変更して下さい。「Apply」ボタンを押して、「Debugger」タブに移ります。


 「GDB debugger:」に
   arm-linux-gnueabihf-gdb
を設定して「Apply」ボタンを押して設定を保存します。「Debug」ボタンを押すとデバッグパースティクティブに切り替わってデバッグが開始され、main関数の初めのところで停止した状態になるので、後は、ステップ実行や変数ウォッチを使ってデバッグができます。


 それと、Raspberry Pi(ターゲット)側にGDB Serverが必要です。自分のRaspberry Pi環境にはすでにインストールされていましたが、されていない場合は、
   sudo apt-get install gdbserver
で、インストールが必要だと思います。

2012年6月8日金曜日

チョロQ

 今日の小物は「チョロQ」です。なんか懐かしい。子供の頃、10円玉を後ろに挟んで、ウィリーとかやってました。自分が子供の頃のチョロQといえばゼンマイが入っていて、後ろに引っ張って離すとビヨ~ンと走りだすやつだったんですが、今のチョロQは「チョロQハイブリット」といって、(ゼンマイタイプもありますが)リチウム電池内蔵で充電式で赤外線リモコンで動くハイテクおもちゃです。ボディを交換したりもできるみたいです。



 しかし、なぜ、チョロQかというと、先日、「SmartWatchでArduino」のときに参考にさせてもらった書籍、「Android ADK プログラミング&電子工作バイブル」にArduinoでチョロQの赤外線リモコンを制御するという内容があったからです。
 書籍にあったプログラムをそのままArduinoに書き込んで...


おお、動いた。やっぱり、こういうのは楽しいですね。実際に「ものが動く」となんだか嬉しくなります。
 前述の書籍には、さらにUSB Host ShieldでAndroidと接続して、Android端末でチョロQをリモコン制御するというのもあるので、参考にさせてもらおうと思っています。

2012年6月3日日曜日

SmartWatchでArduino

 SmartWatchの開発環境を用意して、SDK内のサンプルを動かすことができたので、これを使って何かできないかな?と思ってやってみました。


 SmartWatchのサンプルアプリケーションにスワイプ、タッチでPWMの値を変更して、それをBroadcastしています。同時にADKでArduinoのPWMを制御する別アプリにBroadcastReceiverを仕込んで、先のSmartWatchからのBroadcastでの値を受信してArduino側に転送しています。
 ちょっとわかりにくいかもしれませんが、上の動画ではフリックでLEDの明るさが変わり、タッチで消灯します。
 ちなみにADKでArduinoを制御するところに関しては、「Android ADK プログラミング&電子工作バイブル」という書籍を参考にしました。ADKの資料は(日本語では)まだ少ないので、この書籍はありがたかったです。大変参考になりました。
 ADKでのPWM制御はほぼこの書籍の内容を流用させてもらっています。