1500円程度と比較的安価なシャープ製ダストモニターで遊んでみたわけです。
↓を参考にGP2Y1010AU0Fをarduinoに接続。
http://lafudo.blogspot.jp/2013/12/arduino-gp2y1010au0fpm25.html
あとは参考サイトのスケッチを試した所そのまま動作した。
しばらく数値をみていたが20から30ug/m3ってところのようだ。
利用したスケッチ(参考サイトほぼそのまま)
https://gist.github.com/izumogeiger/0136c538cb220f283a1cbbd841611706
あとはこれをxivelyにアップすればモニターになる。
ということで以前試したENC28J60を利用してセンサーの値を返すWEBサーバにすることにした。
ついでに温湿度センサーDHT11とHMMC5883を繋いでこれらの値も返すように。
WEBサーバのスケッチは↓
https://gist.github.com/izumogeiger/f0b03e789c72e7053c6241d07f3c76fb
3秒毎にWEBサーバにアクセスして60サイクル毎にxively.comにアップロードするスクリプトは以下。
https://gist.github.com/izumogeiger/c000a91a77161acb3365d22f48d6c83c
でxively.comで以下のようにグラフ化で終了。
2016年8月27日土曜日
2016年8月14日日曜日
arduino+MAX7219+8x8マトリクスLEDでbitman再び
arduino用のMAX7219を使った8x8マトリクスLEDのキットで遊んでみた。
基盤にピンソケット、抵抗、コンデンサをハンダ付けしてICとLEDをはめ込んで完成。
マトリクスLEDは上下2通りの差し込みが可能だけど、以下のように基盤のシルク文字に対して下面にマトリクスLEDの型番表示がくるようにハメるので正解だった。
arduinoと基盤を以下のように接続。
[board] - [arduino]
VCC - 5V
GND - GND
DIN - D2
CLK - D3
CS - D4
次にソフトウェアだけどLedControlというライブラリを使用した。
http://wayoda.github.io/LedControl/
後は以前作成したbitmanを移植。
無事動作を確認。
https://youtu.be/Ik9oMRhhzxs
作成したスケッチは以下。
https://gist.github.com/izumogeiger/1f4c0a5bd6c45d0b27e8ba3af0a2df8a
基盤にピンソケット、抵抗、コンデンサをハンダ付けしてICとLEDをはめ込んで完成。
マトリクスLEDは上下2通りの差し込みが可能だけど、以下のように基盤のシルク文字に対して下面にマトリクスLEDの型番表示がくるようにハメるので正解だった。
arduinoと基盤を以下のように接続。
[board] - [arduino]
VCC - 5V
GND - GND
DIN - D2
CLK - D3
CS - D4
次にソフトウェアだけどLedControlというライブラリを使用した。
http://wayoda.github.io/LedControl/
後は以前作成したbitmanを移植。
無事動作を確認。
https://youtu.be/Ik9oMRhhzxs
作成したスケッチは以下。
https://gist.github.com/izumogeiger/1f4c0a5bd6c45d0b27e8ba3af0a2df8a
2016年8月13日土曜日
ENC28J60でarduinoをLANに接続
arduinoにセンサーつないでUSBシリアル通信でPCやラズパイでデータロギングでもいいんだけども、arduinoを直接LANにつないでWEBサーバにしてネットワーク越しにデータ取得できた方がなにかと便利であろうということでENC28J60を使ってarduinoをLANに繋いでみた。
とピン接続。
本来は3.3v駆動らしいが5vでも動いた(いいんだろうか。。。それで)。
あと基盤のネジ固定穴は3mmネジは入らない。2mmネジなら入ったのでそれで固定。
後はethercardライブラリをgithubから取得して導入して
https://github.com/jcw/ethercard
サンプルスケッチを書き込んで動作確認。
https://gist.github.com/izumogeiger/117f37a40167cf964d0264dd1e0b0f6d
webサーバのリクエスト処理で各種センサーの値を取得してクライアントに返してやるようにすればarduinoによるセンサーサーバになるわけ。
こりゃ便利。
ENC28J60
2枚目の写真なんだけどシルク文字がどう見ても間違っていて少しハマったわけです。
上から
5V GND
LNT CLK
SO WOT
SCK ST
RST CS
Q3 GND
と読めるんだけど、本当はたぶん以下。
5V GND
INT CLK
SO WOT
SCK SI
RST CS
Q3 GND
LNT -> INT
ST -> SI
ST=STATUS?、LNT=????、そんなのデータシートにもないぞ、SIはどこ???という具合で数分考え込んでしまった。
(中華ぱちもん?)
ENC28J60+ARDUINO でIoT製作 (テスト編)
を参考に
[ENC28J60] - [ARDUINO]
SCK - D13
SO - D12
SI - D11
CS - D8
とピン接続。
本来は3.3v駆動らしいが5vでも動いた(いいんだろうか。。。それで)。
あと基盤のネジ固定穴は3mmネジは入らない。2mmネジなら入ったのでそれで固定。
後はethercardライブラリをgithubから取得して導入して
https://github.com/jcw/ethercard
サンプルスケッチを書き込んで動作確認。
https://gist.github.com/izumogeiger/117f37a40167cf964d0264dd1e0b0f6d
DHCPでIPアドレス取得してwww.google.comにping |
静的IPアドレスを設定、webサーバで起動時間を表示 |
webサーバのリクエスト処理で各種センサーの値を取得してクライアントに返してやるようにすればarduinoによるセンサーサーバになるわけ。
こりゃ便利。
2016年8月12日金曜日
ポケットガイガーType5+arduino+TM1638
以前ポケットガイガーType5+arduinoで簡易モニタリングポストを作成したのだが、それだけだと寂しいのでTM1638を使って数秒毎にcpm表示するようにしてみた。
8桁8セグに小数点2桁までのcpmと上部LEDに2進でCPMの整数値を表示している(あまり意味ないけど)。やはり表示があるとわかりやすい。
8桁8セグに小数点2桁までのcpmと上部LEDに2進でCPMの整数値を表示している(あまり意味ないけど)。やはり表示があるとわかりやすい。
スケッチ
2016年8月11日木曜日
arduino+HC-SR04+LCD1602
超音波距離センサモジュール HC-SR04で遊んでみた。
近くだと10cmから20cm、離れるともっと誤差がありそうだけど一応距離っぽい感じではあるようだ。
スケッチは以下を参考にLCD表示を追加。
https://www.switch-science.com/catalog/1606/
最終スケッチは以下。
https://gist.github.com/izumogeiger/67dc31c313433b8c3821156e96a1c528
近くだと10cmから20cm、離れるともっと誤差がありそうだけど一応距離っぽい感じではあるようだ。
スケッチは以下を参考にLCD表示を追加。
https://www.switch-science.com/catalog/1606/
最終スケッチは以下。
https://gist.github.com/izumogeiger/67dc31c313433b8c3821156e96a1c528
arduino+DHT11+LCD1602
以前にチャレンジして失敗した温湿度センサーDHT11をarduinoで再挑戦してみた。
adafruitのサイトを参考にDHT11のoutピンに2.2kΩをプルアップしてarduinoのD2に接続。
https://learn.adafruit.com/dht/using-a-dhtxx-sensor
サイトのライブラリのサンプルであっさり動作。
そのままでは物足りないので16x2のLCDをつないで表示してみた。
LCDはarduino editor標準のサンプルスケッチで普通に動作。
安い割にはキレイで簡単。ナイス。
最終的なスケッチは以下。
https://gist.github.com/izumogeiger/510d9908c911c518db7632dcdf8223a2
adafruitのサイトを参考にDHT11のoutピンに2.2kΩをプルアップしてarduinoのD2に接続。
https://learn.adafruit.com/dht/using-a-dhtxx-sensor
サイトのライブラリのサンプルであっさり動作。
そのままでは物足りないので16x2のLCDをつないで表示してみた。
LCDはarduino editor標準のサンプルスケッチで普通に動作。
安い割にはキレイで簡単。ナイス。
最終的なスケッチは以下。
https://gist.github.com/izumogeiger/510d9908c911c518db7632dcdf8223a2
登録:
投稿 (Atom)