投稿者「nogueLab」のアーカイブ

電子工作:鳥獣ジャマー+IoT家庭菜園

鳥獣ジャマー( Maker Faire Tokyo 2018の展示物 )に温湿度センサ,土壌湿度センサ,IBM Cloudを用いて簡易的な状態を管理できるデモを作成した。

図1 鳥獣ジャマ+IoT家庭菜園ープロトタイプ

①ノートパソコン OR Raspberry Pi3: 全体の処理はPythonで行い,OpenCVの画像処理による鳥獣の検知,シリアル通信にて,各種センサ情報を取得,取得したセンサ情報,鳥獣の検知情報は,IBM Cloudに送信する。

②野菜:家庭菜園で育てる野菜。

③温湿度センサ:DHT11 temperature and humidity sensor module。

④土壌湿度センサ:YL-69 soil moisture sensor。

⑤鳥獣除け:畑では水を撒く装置を使うが,今回のデモでは,MABUCHI RF-500TB ソーラーモーター02を使用。

⑥BLE電球:異常検知時のお知らせ,また,室内の場合は,LEDで野菜を育てるのに使用する。KAWAYOU LED電球を使用。

⑦Arduino:温湿度センサ,土壌湿度センサを操作し,値を取得してシリアル通信にて結果をパソコンへ送信する。

⑧Arduino+MOTOR SHIELD:ソーラーモーターを回すのに使用する。

⑨USBカメラ:野菜の状況を監視するために使用する。ELP Webカメラ 1MP 防犯カメラ 屋外 防水 カメラUSB 720P H.264 赤外線ナイトビジョン USBドームカメラを使用。

⑩IBM Cloud:各種センサ情報,異常検知情報を収集し,状態を監視することができる。


鳥獣ジャマー+IoT家庭菜園のプロトタイプの動作状況は,動画1の実験動画のようになっている。


動画1 鳥獣ジャマー+IoT家庭菜園

【開発言語】

Python:全体の処理、画像処理,シリアル通信,IBM Cloudとの通信にて使用。

Visual C#:BLE電球の操作に使用。

C言語:Arduinoのプログラムにて使用。


【成果】

Maker Faire 2018では動体検知処理を入れていたが,今回はそれを抜き,物体の認識処理のみで大体の検知はできることを確認した。

各種センサ情報,異常検知情報をIBM Cloudにアップし,サイト上で状況を確認できた。


【今後の作業】

  • ⑦,⑧の無線化(Bluetoothによる無線化)
  • 現在はノートPC上での動作のため,Raspberry Pi3への移植
  • 実際に野菜を育て

【その他】

Maker Faire Tokyo 2017で展示した植物生育診断装置の改良に着手したいなと思う今日この頃。

トリリオンノードが売り出されたら各種装置の小型化を目指したい。


Maker Faire 2019に通りました。8/3,8/4に展示する予定です。

Maker Faire Tokyo 2018 のうぐらぼ/NogueLab 出展!! 2018/08/05

Maker Fiare Tokyo 2018の二日目(2018/08/05)にて,昨日に引き続き,鳥獣ジャマー(Vermin Jammer)を展示しました。

初日に引き続き,二日目も沢山の人に来ていただけました。展示をご覧いただいた皆様ありがとうございました。

図1 二日目設置完了(朝飯中)

図2 説明している様子

 

昨年度の作品「植物生育診断装置(LED誘起蛍光法)」の続きを覚えていて見に来てくれた方もいましたが,2018年は鳥獣ジャマーに注力してしまったので,手についてない状況で申し訳ありませんでした。

2017年,2018年の作品まとめなども含めて後日,現状について情報をアップできたらと考えております。しばしお待ちいただきたく,よろしくお願いいたします。

また,展示してました資料は下記のURLからダウンロードできます。

鳥獣ジャマー(Vermin Jammer)

http://nogue-lab.com/paper/MFT2018_paper.pdf

Maker Faire Tokyo 2018 のうぐらぼ/NogueLab 出展!! 2018/08/04

Maker Fiare Tokyo 2018の初日(2018/08/4)にて,鳥獣ジャマー(Vermin Jammer)を展示しました。

展示物をご覧いただいた皆さまありがとうございました。

昨年度に引き続き,農業における問題を色々聞かせていただき,大変ためになりました。

  • カラス,鳥各種,いのしし,しか,あらいぐま,たぬき,ハクビシン,猫,etc
  • あらいぐまを捨てる人問題

また,最新の技術をご存知の方からは色々なご助言をいただき,今後の改良につなげていきたいと考えております。

  • 野生動物の学習データをクラウドから提供しているサービス
  • 今更SSD,もっとよい技術あるので,そっちを使っては?(YoLo関連,SSD動向,etc)

 

図1 鳥獣ジャマー(Vermin Jammer)の展示

図2 説明している様子

 

動画 展示物の紹介

2018年8月5日も展示しておりますので,ご興味のある方は展示物を見ていただけると幸いです。

電子工作:鳥獣ジャマー

農作物等の鳥獣被害に対して,OpenCVを用いて動体検知をして,散水機等で追い払うシステムを作れないかなと考え,図1の構成にて,プロトタイプを作ってみた。

図1 鳥獣ジャマープロトタイプ

①ノートパソコン or Raspberry Pi3:Python,OpenCVにて画像処理,シリアル通信を行い,動体検知,動体を脅かすモノの操作を行う

②Arduino uno rev3:シリアル通信にて送られてきたメールに従い,トリガの操作を行う。プロトタイプでは,サーボモータ(SG90)を操作し,スポンジボールガンの引き金を引く

③USBカメラ:動体を取得するためのカメラとなる

④動体を脅かすモノ:プロトタイプでは,サーボモータ(SG90)にて,スポンジボールガンを放つ。(最終的には,散水機等を作成し,鳥獣に水をかけ脅かすなどをしたいと考えている)

⑤動体:デモでは,熊のぬいぐるみを動かしているが,最終的には,あらゆる鳥獣,虫等を学習データを用いて検知したいと考えている。


鳥獣ジャマーのプロトタイプの動作状況は,動画1の鳥獣ジャマープロトタイプ実験動画のようになっている。

動画1 鳥獣ジャマープロトタイプ実験動画

今回開発したプログラムは,Pythonで作成した。

Pythonでは,OpenCVを使用し,以下のフローにて処理を行っている。

  1. USBカメラの画像を取得
  2. 動体の輪郭を抽出
  3. 輪郭の面積が一番大きく,一定以上の大きさ場合,輪郭の重心を表示
  4. ターゲットの中心の赤枠内に,輪郭の重心が表示されたのをトリガとし,スポンジボールを発射する

【成果】

結果として,動画にあるように,動体を検知し,スポンジボールを当てることができた。


【今後の作業】

今後は,以下の点を改善したいと考えている。

  • 自宅の庭で,散水装置を作り,プロトタイプと組み合わせる
  • 猫を鳥獣対象とし,猫の画像にて学習を行い,猫の場合のみ散水する

【その他】

今年度のMaker Faireはこの内容と昨年度展示した魚キャッチセンサーの無線版,植物生育診断装置を改良したもので申請してみたいと考えてます。


※5/31に申請が通りました(*^▽^*)

MFTokyo2018に向けてしっかりと作りこんでいきたいと思います。

貸し農園探し諦める

デジタルな農具を作るにあたり,実際に畑をやってみないと本当に必要なモノが見えてこないということで,貸し畑を調べてみた。

とりあえず,適当に調べて出てきたのが

全国70農園展開中!【シェア畑】

便利なサイトで,地図上から貸し農園を確認することができる。

しかし,現在住んでるあたりにあるかなと調べたが,近くにない...

他のサイトも探してみたが,近くは埋まっていたりしてない。

老後の楽しみでやっている人多いんだろうなぁ。

引っ越すわけにもいかないから,家のちっちゃい庭でやるしかないか...

除草剤撒いてしまって庭の土はダメな状態なので,プランターでなんとかするしかないな。

猫の糞害もあるので,その辺も考慮しながらチャレンジしてみるかな。

 

Maker Faire Tokyo 2017 のうぐらぼ/NogueLab 出展!! 2017/08/06

Maker Fiare Tokyo 2017の二日目(2017/08/06)にて,昨日に引き続き,植物生育診断(LED誘起蛍光法),魚キャッチセンサー無線版を展示しました。

本日も沢山の人にお越しいただくことができました。

本展示をご覧いただいた皆様ありがとうございました。

また,ご協力いただきました同僚の皆さまには心より御礼申し上げます。本当にありがとうございました。

本展示で説明させていただいた内容,いただいたご意見,今後の予定等は,後日まとめて記事として載せる予定です。しばらくお待ちください。

また,展示してました資料は下記のURLからダウンロードできます。

植物生育診断装置(LED誘起蛍光法)

http://nogue-lab.com/paper/MFT2017_paper1.pdf

魚キャッチセンサー無線版

http://nogue-lab.com/paper/MFT2017_paper2.pdf


以下,二日目の様子を写真でアップ致します。

①二日目の展示の準備完了

②本日は魚キャッチセンサー無線版を載せてみました。釣り竿にデバイスを取り付けた様子(本来はリチウムイオン電池を取り付けるのですが,申請してなかったので,有線で給電しています)

③説明している様子

④説明している様子

⑤説明している様子

⑥会社の同僚が来てくれました。

⑦同僚から差し入れまでいただきました。ありがとうごじます。おいしくいただきました。

⑧マイクを持って説明させていただきましたが,すごい噛みまくりました。恥ずかしかった。

⑨大量の荷物を持って撤収

⑩また来年も参加できるよう頑張っていきたいと思います。

Maker Faire Tokyo 2017 のうぐらぼ/NogueLab 出展!! 2017/08/05

Maker Fiare Tokyo 2017の初日(2017/08/05)にて,植物生育診断(LED誘起蛍光法),魚キャッチセンサー無線版を展示しました。

展示物をご覧いただいた皆さまありがとうございました。また,専門的なご意見をいただけたり等,非常にためになりました。

いただいたご意見等は,今後の開発に活かしていきたい考えております。

図1 左:植物生育診断装置(LED誘起蛍光法),右:魚キャッチセンサー無線版

 

図2 植物生育診断装置(LED誘起蛍光法)

展示してました資料は下記のURLからダウンロードできます。

植物生育診断装置(LED誘起蛍光法)

http://nogue-lab.com/paper/MFT2017_paper1.pdf

魚キャッチセンサー無線版

http://nogue-lab.com/paper/MFT2017_paper2.pdf

展示資料に記載しておりますが,魚キャッチセンサー無線版のプログラムの内容は8月中に本ホームページにアップする予定です。

また,植物生育診断装置に関しては,実験,解析など結果を後日載せていく予定です。

掲載までしばらくお待ちくださいm(_ _)m


以下,本日の様子を写真でアップ致します。

①昨年と同様にたくさんの入場者の方が並んでました。

②昨年と同様にたくさんの入場者の方が並んでました。

③今回の展示に近いことをされている方とお話ができました。

④説明している様子

⑤説明している様子 NDVIの話が出てきたり,励起光,反応する光の波長等,専門的な内容で話ができてためになりました。

⑥説明している様子

⑦説明している様子。魚キャッチセンサー無線版のカウントを400回分ほどアップしていただいているときの写真です。

展示を通して,電子工作や農業,釣りに興じていただけると幸いです。

電子工作:植物生育診断装置(LED誘起蛍光法)

2016年度のMaker Faireで展示できなかった浜松フォトニクスマイクロ分光器を使用した植物生育診断装置を作ってみました。

植物生育診断装置(LED誘起蛍光法)のプロトタイプとして図1のようなものを作ってみました。

図1 植物生育診断装置(LED誘起蛍光法)プロトタイプ

植物生育診断装置(LED誘起蛍光法)の構成は図2のようになる。

図2 植物生育診断装置(LED誘起蛍光法)の構成

①Arduino Uno Rev3:C12666MAとLEDを操作し,スペクトルを取得し,PCへ送る

②ブレットボードシールド:Arduino用のブレットボードシールド。C12666MAや配線をするための基板

③C12666MA:浜松フォトニクス社のマイクロ分光器

④LED:白色,紫外,青色,緑色,黄色,赤色のいずれか

⑤励起光:④のLEDで使用する光。使用する光により⑥の反射光+蛍光が変わる。

⑥反射光+蛍光:使用する光により⑥の反射光+蛍光が変わる

⑦葉等の植物:主に緑色の植物

⑧取得したスペクトル強度:Visual Studio C# 2015で作成したアプリで①を操作し,スペクトルを取得し,波形として表示する。

⑨ノートパソコン:⑧のアプリを動かすためのPC

⑩USBケーブル:①と⑨をつなぐためのUSBケーブル


【技術内容】

農業関係で今回のような光を当て,その反射光等を使用した技術は色々とあり,実用化されている技術としては,農産物の糖度分析,農産物の成分分析(栄養の含有,産地判別)等がある。

今回は,母校の研究室で植物の生育診断,病気(カビの発生)の研究をしていた仲間がいたので,それらのことを簡単に作れないかと思い,作ってみました。

基本は,光を植物等に当てると反射光+蛍光が出る。

ここで蛍光という光を取得できると,生育診断,病気を見たりすることができる。


【実験】

公園の葉っぱを一枚拝借し,白色LEDを用いてスペクトルを取得した。

 

結果が以下のようなものとなる。

励起光としての白色LEDの光は,440nm,520nmあたりに強度のピークが出る光となる。励起光以外の光は,660nm,680nmあたりにピークが出ているような結果となった。


【成果】

  • 励起光とは違う光を取得できていることが確認できた。
  • 励起光の種類で結果が変わることを確認できた。

【今後の作業】

  • 現在は,手で押さえながら実験しているので,安定した結果得られないので,固定して同じような結果が毎度得られるようにする。
  • 植物の成長に合わせスペクトルを取得し,変化を見る(データ取得)

【その他】

今年度のMaker Faireはこの内容と昨年度展示した魚キャッチセンサーの無線版で申請してみたいと考えてます。

電子工作:魚キャッチセンサー(ジャイロセンサ+Raspberry Pi2) No.06

電子工作:魚キャッチセンサー(ジャイロセンサ+Raspberry Pi2) No.05の続きです。

2016年8月11日(木)に3回目となる実証実験(実際の釣りで魚キャッチセンサーを使う)を実施しました。(in 千葉県片貝)

この日は下図の●のポイントにて実験しました。

20160811_001

図1 千葉県片貝釣りポイント

20160811_002

図2 魚キャッチセンサーの実験1

20160811_003

図3 魚キャッチセンサーの実験2

20160811_004

図4 魚キャッチセンサーの実験3(角速度センサーの取り付け)

今回の実験では,前回のまったく釣れなくまともに反省できなかった結果は忘れ,前々回の反省を踏まえた,スピーカーの新規購入,角速度センサーへのケーブルを長くする,角速度センサーをホットボンドで周りを固め,多少濡れても大丈夫なようにした対応の確認を目的としました。

電子機器関連は前回と変わらず以下の構成となります。

  • Raspberry pi2(100均で買ったタッパーに水除けとして入れてます)
  • パナソニック モバイルバッテリー 10,260mAh USBモバイル電源 QE-QL301-K(100均で買ったタッパーに水除けとして入れてます)
  • 角速度センサへの配線(約4.5m,前回は約2.5m)
  • TaoTronics 防水Bluetooth 4.0 ワイヤレスステレオスピーカー
  • オーディオケーブル

天候は曇り,真夏でしたが,雲のおかげでゆっくりと釣りができました。

結果,魚キャッチセンサーの反応としては,

  • 音が鳴ってから釣り上げた数:8匹
  • 音が鳴ってからエサを取られたり,針ごと持ってかれた数:6回

となりました。

釣れたのはすべてフグでした。下の動画が釣れた時の撮影していたものをすべてまとめたものとなります。1匹目は,すぐにつれてしまい撮っている暇はありませんでしたが,2匹目~8匹目は,撮ることができました。この日は,フグ祭りで,他の釣り人もフグだらけでした。

動画1 実験動画(2匹目~8匹目)

成果としては,前回の成果+αの以下の内容となります。

  • ヒットした後の音がうるさいのを直す
  • 配線をなくす(無線でできる方法の模索)
  • フグにはよく反応する
  • いしもちは,引きがなさ過ぎてならない

とりあえず,結構使える感じが確認できたので,無線化に向けての準備をしていきたいと思います。

 

魚キャッチセンサー(有線タイプ):Raspberry Pi2の設定,プログラムの公開

【Raspberry Pi2の設定】

Maker Faire Tokyo 2016で公開していたRaspberry Pi2は,Raspbian Wheezyを使用していたのですが,最新(2016年8月14日現在)では,Raspbian Jessieとなっているので,Jessie版の設定を調べ直したものを公開します。


01.Raspbian Jessieのダウンロード

以下のURLへ移動する。

https://www.raspberrypi.org/downloads/raspbian/

これをダウンロードと記載の「Download ZIP」を選択し,PCへイメージをダウンロードする。

000-0


02.Win32 Disk Imagerのダウンロード

以下のURLへ移動する。

http://sourceforge.jp/projects/sfnet_win32diskimager/

これをダウンロードと記載の「Win32DiskImager-0.9.5-binary.zip」を選択し,PCへバイナリデータをダウンロードする。

000-1


03.microSDへRapbian Jessieを書き込む

ダウンロードしたZIPファイル(2016-05-27-raspbian-jessie.zip,Win32DiskImager-0.9.5-binary.zip)を解凍する。

PC(Windows PC)とmicroSDを接続する。PCとmicroSDの接続には,SDカードリーダー/ライター等をご使用ください。今回は,Digio2 CRW-6M46BKを使用しております。また,SDカードは,TOSHIBAのmicroSDHC UHS-Iカード(SD変換アダプタ付属)MSDAR40N08Gを使用しました。

000-2

解凍したWin32DiskImager-0.9.5-binaryディレクトリのWin32DiskImager.exeを起動する。

000-3

起動後,以下のGUIが表示される。Image Fileの欄にあるフォルダの画像をクリックする。

001

解凍した2016-05-27-raspbian-jessieディレクトリに「2016-05-27-raspbian-jessie.img」ファイルを選択し,「開く」ボタンを押す。

002

書込み先のmicroSDがGドライブとなっているので,Deviceを「G:¥」を選択し,「Write」ボタンを押す。書込み処理が走り,完了するまで待つ。完了すると「Write Successful」と表示される

003


04.Raspberry Pi2の起動

下図のようにRaspberry Pi2と各デバイスを接続する。

接続するもの

・USBキーボード
・USBマウス
・LAN(家のルータ等,ネットと接続するためのもの)
・スピーカー
・ディスプレイ(今回は,HDMI⇔DVIで接続してます)
・USB電源
・角速度センサー(展示していた資料の接続)004

Raspberry Pi2にmicroSDカードを挿しこみ,電源を入れる。

下図のような画面が表示されるまで待つ。

005


05.各種設定

タスクバーにあるLXTerminal(ディスプレイアイコンみたいなもの)を起動する。

006

LXTerminal上にて,以下のコマンドを実行する。途中Yes or Noのような表記が出るので,その時はyを入力しEnterして続行する。最後に再起動コマンド(reboot)にて再起動する。

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo rpi-update
sudo reboot

再起動後,Windows PCからRaspberry Pi2上のファイルを編集できるようにするため,以下のコマンドにて,sambaをインストールする。

sudo apt-get install samba samba-common-bin

インストール後,以下のコマンドにて下記の内容を最後尾に追記する。

sudo leafpad /etc/samba/smb.conf

以下,追記内容。

[share]
path = /home/pi
writable = yes
guest ok = yes
guest only = yes
create mode = 0777
directory mode = 0777
share modes = yes
force user = pi

以下のコマンドにて,ユーザー:piのパスワードを設定する。今回は,デフォルトと同じパスワードとし,ユーザー:pi,パスワード:raspberryとしています。

sudo smbpasswd -a pi

以下のコマンドにてsambaを起動する。

sudo systemctl restart smbd
sudo systemctl restart nmbd

以下のコマンドにてxrdpをインストールし,Windowsからリモートデスクトップにて接続できるようにする。

sudo apt-get install xrdp
sudo wget http://w.vmeta.jp/temp/km-0411.ini
sudo ln -s km-0411.ini km-e0200411.ini
sudo ln -s km-0411.ini km-e0010411.ini
sudo ln -s km-0411.ini km-e0210411.ini
sudo service xrdp restart

また,日本語対応にするための設定として以下のコマンドを実行する。

sudo apt-get install task-japanese task-japanese-desktop

以下のコマンドにて,シリアル通信ができるようにする。

sudo leafpad /boot/cmdline.txt

【変更前】

dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait

【変更後】

dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait

以下のメニューよりRaspberry Piのconfig設定をする。

007

表示されたGUIにて,FileSystemのExpand Filesystemを選択する。これにて使用できるmicroSDの領域を拡げる。BootにてDesktopを起動したくないので,To CLIに設定する。

008

Interfaceのタブに移り,I2C,SerialがEnableになるように設定する。他,使用したいGPIO等ある場合は,Enableを選択する。

009

Localisationのタブに移り,Set Localeにて,Languageをja(Japanese),CountryをJP(Japan),Character SetをUTF-8に設定する。

010

Set Timezoneにて,AreaをAsia,LocationをTokyoに設定する。

011

最後に,以下のコマンドにてdhcpcd.confを編集する。

sudo leafpad /etc/dhcpcd.conf

以下の2行を最後に追記し,IPアドレスを固定する。

interface eth0
static ip_address=192.168.11.13/24

以上の設定にて,再起動する。


【プログラムについて】

01.公開プログラムについて

プログラムは,下記URLからダウンロードできます。

http://nogue-lab.com/Program/AutoFishDemo.zip

内容物は以下の内容となります。

【ソースコード】
main.c メイン処理を行うCソースコード。I2CのI/Fを用い,角速度センサーのデータを取得します。また,取得したデータをUARTにて送信します。PC側からUARTにてeコマンドを送ると処理が止まります。sコマンドを送ると処理が再スタートします。
drv_i2c.c I2Cに関するI/FをまとめたCソースコード。
drv_public.h I2CのI/Fを提供するヘッダファイル。

【オブジェクトファイル】
main.o,drvi2c.oはmakeコマンドにて生成させる。

【実行ファイル】
FishAppは,makeコマンドにて生成される実行ファイル。

【ログファイル】
log.txtは,FishAppの実行時に出力されるログが保存されます。

【音】
alerm.wav,
start.wav,
stop.wavは,
PANICPUMPKIN 様のホームページで提供されているものを使用させていただいております。

URL:http://pansound.com/panicpumpkin/

【その他】
Makefileは,makeコマンドに必要なファイルとなる。

【実行方法】
sudo make runにて実行していただくと動作する。

ダウンロード後,AutoFishDemo.zipを解凍し,以下の位置に配置する。

/home/pi/Program/AutoFishDemo/


02.プログラムの自動実行について

以下のコマンドにてrc.localファイルを編集する。

sudo leafpad /etc/rc.local

以下の1行をexit 0の記述より前に記載する。

 

/home/pi/Program/AutoFishDemo/FishApp &

これによりRaspberry Pi起動時にFishAppが起動するようになる。

注意:最後に記載の&は忘れないようにしてください。他の処理ができなくなる恐れがあります。

 


【その他】

01.Raspberry Pi2の設定について

Rasbian WheezyからJessieに変更となり,少し設定が変わりました。今回の公開内容でうまくいかない可能性があるとすると,キーボード関係がうまくいかない可能性があります。キーボード関係の設定はGoogle等で大体出てくると思うので,うまくいかない際はそちらにて調べていただけたらと思います。

02.不具合等について

今回公開した内容にて一応動作することを確認しましたが,大きな不具合等ありましたら確認でき次第,なるべく早めに更新するように致します。

03.免責事項

本サイトに記載のモノ作りに関する情報,プログラム等,それらを利用したことにより生じた損害について,一切責任を負いません。ご利用者の責任にてご利用ください。