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

2015-04-15

Arduinoにホールセンサーをつなげてデジタル接続する

Ardionoにホールセンサーをつなげて、デジタルピンで受信してみました。ホールセンサーには、
  • DN6851(パナソニック社製)
を利用しました。耐用電圧の幅が広いので、直接つなげてもOKなようです(たぶん)。Arduinoとの接続には、割り込み処理をするために2番ピンに繋げてます。以下、スケッチです。



2015-03-01

Arduino:Bluetooth Shield(SLD63030P)をSlaveモードで動かす


前記事にてBluetooth4.0BLEが接続できないという問題に遭遇したので、それなら古い Bluetoothで、、、ということで、旧式のBluetooth Shield(SLD63030P)を入手して接続に成功しました。成功しましたといっても、それまでにいろいろ四苦八苦しており、とりあえず現状できていることは
  • ノートPC側から接続(シリアルポートとして)
  • ArduinoからデータをBluetooth経由でノートPCに送信
  • プログラム側は前記事のようにシリアルとして認識
という感じです。で、正直、Bluetoothのことが全くわかっておらず、電源入れたらすぐに繋がるんだろう、、とか思ってたのがそもそもの間違いでした。Arudino側のスケッチの書き方次第で接続が失敗したりするようで、接続できなかった場合の問題の切り分けに注意が必要ですね。もしかするとBluetooth4.0が繋がらないのもそういう問題かもしれません。
下記は、Arduino側のスケッチです。公式のサンプルの一部を抜粋してますが、アナログポートの出力をそのまま送ってます。



2015-02-22

Arduino:Bluetooth 4.0 Low Energy BLEシールドを入手しましたが、、、


表題のとおり、ArduinoにBluetoothシールドを入手しましたが、いろいろトラブっている最中なので作業録です。

対応するArduino IDEは1.0.6まで
まず、これにハマりました。ライブラリを追加してコンパイルすると、
C:\Program Files (x86)\Arduino\libraries\RBL_nRF8001\RBL_nRF8001.cpp:25:23: error: setup_msgs causes a section type conflict with __c
みたいなエラーがでます。現在、Arduino IDEは1.6が最新ですが、コレじゃダメ。なんと、1.06までしか対応してないようです(公式の回答をネットで目にしました)。で、1.06をダウンロードしてコンパイルしたら見事成功。iPhoneアプリでも接続を確認しました。

Bluetooth 4.0 Low Energy ってのが曲者
Low Energy...最新の低電力版ってことだね。。と安易に考えておりましたが、これは対応機種が限定されるようです。AndroidやiOSでも最新版が必要なのはわかるんですが、Windowsでも8.1以上が必要らしいです。手元にWindows7のノートPCがあって、検索にひっかかるけどコネクションできない、、、というよくわからない状況で、プログラムがおかしいのか、デバイスが4.0対応じゃないのか、、と思ったりしたのですが、Win8.1以上とは、、、とりあえずは旧式のBluetoothボードにした方がいいかもしれません。


2015-02-21

Arduino:PCからの入力に合わせてLEDをON・OFFする 〜USB接続編〜




新規立ち上げの研究テーマでArduinoを利用することになったので、C#でUSBを通してArduinoを制御するプログラムを書いてみました。具体的には、USBで接続されたArduino本体のLEDを、PC側のクライアントソフトでON・OFFするというものです。
Arduino側のプログラム(スケッチというらしい)は下記のようになります。C#のプログラムは書くまでもない(シリアルポートに対してWriteするだけでよい)ので省略します。