Arduino

数種類の振動を作りたいなら専用の振動ドライバーDRV2605Lがおすすめ

AdafuritのDRV2605LモジュールにLRAアクチュエータを載せた振動で色々試したいなら自分でタイミングと強さを制御するより振動モータードライバのDRV2605Lにある115種類のプリセットから選ぶほうが簡単。I2Cで制御できてアドレスが変えられないものの、I2Cマ…

オリエンタルモーターの電動スライダEASシリーズをArduinoから動かす

オリエンタルモーターの電動スライダEASシリーズの動作電動スライダは、こちらの動画のような1軸の直線上に動く装置です。今回使ったのはオリエンタルモーター社のEAS4RNX-E040-ARAKD-1です。オリエンタルモーターは値段も書いてあるし取説もすぐダウンロ…

ArduinoでSDカードからカンマ区切りのデータを読み出してパースする

csv形式でコマンドを書いてそれをArduinoでパースしたのでコードを共有します。パース部分はこちら(カンマ区切りのデータをarduinoのシリアルで受け取り配列に入れたい - Qiita)の記事を参考にParseElements関数に切り出しました。呼び出し側のReadCommnad…

人との距離をセンサで検知する

センサによって人を検知する方法は山ほどあるが、条件によってどのセンサを使うかは大きく変わってくる。今回は人がいるいないや動き以外に人との距離もセンシングしたいという条件で、センサを選定した。 人を検知するセンサの種類 赤外線センサ レーザーセ…

openFrameworksからArduino Unoを自動的に接続する

openFrameworks v0.9.8毎回昔のコードを掘り出すのがめんどくさくなってきたので、ここに書いておく。たぶんArduinoUnoに限らずFTDIのチップで動くUSBシリアル変換デバイスを開くと思う。 ofSerial serial; bool serialStatus; void HogeClass::setup(){ ser…

ZigBeeによるセンサネットワークを作った時のメモ

ZigBeeで複数台のモジュールから高頻度に情報を送信するネットワークを作ったので、その時のノウハウをまとめる。ZigBeeのやりとりにはXBee ZBシリーズを利用。2.4GHzのZigBeeを利用するXBeeモジュール。主要各国の規制をクリアしているのでグローバルに安心…

Arduinoのタイマーライブラリ

Arduinoでなんらかの時間的に正確な処理をしたい時、Arduinoのタイマーライブラリを利用すると簡単に出来る。ArduinoのタイマーライブラリはMsTimer2とTimerOneがあり、これらのライブラリを利用すると、一定時間ごとに関数を「割り込み(interrupt)」で呼…

シリアル通信でコンピューターがフリーズする問題と対処法

ArduinoなどのマイコンからUSBシリアル変換チップ経由でMacやPC(以下まとめてPC)とシリアル通信すると、適当に書いたPC側のシリアル通信プログラムがフリーズすることがある。これへの対処法が分かったので書いておく。 シリアル通信とバッファ マイコン、…