SlideShare a Scribd company logo
1 of 16
Download to read offline
屋外設置水槽向け
環境監視システムの製作
Hamamatsu.rb / Xiao Project / Rowan Tools
Langur
Last update: 2022/12/03
ごめんなさい
Rubyの話はないです
Introduction
ミナミヌマエビ
4
• 体長2~3cm程度
• 水槽のコケ掃除用によく飼育される
• コケというか藻
• 死骸も捕食する→魚や貝の死骸は骨や殻だけになる
• 卵から稚エビとして産まれる
• 他種はプランクトンとして産まれるものが
多く繁殖困難
• 屋外で飼育すると爆殖する
• 発泡スチロールに水を張っておくだけでよい
• ザリガニの餌を与えるともっと増える
• 釣りで餌に使える
画像出典:
[a] https://ja.wikipedia.org/
ミナミヌマエビの画像の著作表示
Sasapy, 2007
ミナミヌマエビ[a]
CC-表示 3.0
飼育環境
5
• 天面に寒冷紗を貼付け
• 通気口
• 蚊や他の昆虫の侵入防止
• 万が一蚊が湧いたら近所迷惑…
• エビがボウフラやヤゴ等に捕食される…
• ソイル(土)の設置
• エビの足場用
• 糞の分解促進用
• 浮遊性の水草の設置
• エビの足場用
• 飼育水の富栄養状態化の防止用
• マツモやアナカリス(オオカナダモ)を栽培
• メンテナンスは水の注ぎ足し、水草を間引く程度
エビの大量死
6
屋外に設置した水槽で夏にエビの大量死が発生。
飼育水が熱かったことから、太陽光や外気温により茹ったと思われる。
また、酸素欠乏が疑われる。
画像出典:
[b] エビ水槽以外 https://www.irasutoya.com/
[c] エビ水槽 https://www.gex-fp.co.jp/fish/blog/columns/vol-08-2/
[d] 水中の飽和溶存酸素量 https://www.toadkk.co.jp/
外気温・水温から取得を始めてみる
環境の実態把握が急務
Solution
システム構成
8
収集した
データの閲覧
データの
蓄積・解析
LAMP構成
- Linux
- Apache
- MySQL
- PHP
RESTful API
データの収集
WSNノード
- Wi-Fi接続
- 外気温・水温計測
屋外設置
- 要高温環境耐性
- 要防水性
Raspberry Piの採用
- Wi-Fi対応
- センサの接続
- 高温環境耐性
→防水加工耐性
Shrimp Tank Pi Nodeと命名
[1] 小野田晃久, 峰野博史, 施設園芸環境向け無線センサノードの開発, 農業情報学会2020年度年次大会講演要旨集, vol. 2020, pp. 162-163, May. 2020
高温環境耐性はPiNode[1]で実証済
STP Node
9
Hardware / Software構成
• メイン基板
• Raspberry Pi Zero W
• Raspberry Pi OS
• ApplicationはPythonで作成
• 水温センサ
• DS18B20 … 1-Wireで接続
• ファイル読出しでOK
• 温湿度センサ
• SHT31 … I2Cで接続
• pisht30[2]を使用 … PyPIで公開済
• GPIOの操作にpigpiodを使用
• Pythonのセミナで利用するために作成・公開
• M5StickC用のEHV III HATを利用するために作成
• ENV III HATにSHT30が搭載されている
Raspberry Pi Zero W DS18B20 SHT31
[2] Akihisa ONODA, pisht30, https://pypi.org/project/pisht30/, PyPI, Jan. 2022
画像出典:
[e] Raspberry Pi Zero W https://www.raspberrypi.com/
[f] DS18B20 / SHT31 https://akizukidenshi.com/
[g] ENV III HAT https://www.m5stack.com
温度センサはアナログセンサ + A/Dコンバータ
を使う手もあるが、利便性のためモジュール化
されたものを採用(お金で解決)。
STP Node
10
部品 数量 調達先 備考 画像
Raspberry Pi Zero W 1 KSY 昔購入した在庫
microSDカード 1 Amazon 高耐久モデル推奨
Ex. SanDisk Extreme Pro シリーズ
DS18B20 1 Amazon
水温センサ
1-Wire
SHT31 1 秋月電子通商
温湿度センサ
I2C
主な部品と調達先
STP Node
11
Application
#- -*- coding: utf-8 -*-
import pisht30 as SHT31
import time
import json
import requests
URL = “サーバーのURL"
AUTH = “サーバーの認証情報"
DS18B20 = "/sys/devices/w1_bus_master1/28-012025646549/temperature"
def read_ds18b20():
val = 0.0
try:
file = open(DS18B20)
wt_str = file.read()
val = float(wt_str.strip()) / 1000.0
except Exception as e:
print(e)
finally:
file.close()
return val
def read_sht31():
config = {'address': SHT31.Address.HIGH.value}
obj = SHT31.PiSht30(config)
return obj.read()
ds18b20 = read_ds18b20()
sht31 = read_sht31()
value = {}
value['wt'] = round(ds18b20, 2)
value['at'] = round(sht31['temperature'], 2)
value['rh'] = round(sht31['humidity'], 2)
value['time'] = int(time.time())
value['auth'] = AUTH
data = json.dumps(value)
body = {'record': data}
#print(body)
res = requests.post(URL, body)
DS18B20の読み出し
SHT31の読み出し
センサの読み出し
データの加工
データの送信
Results
計測結果
13
11/04
11/11
11/18
11/25
12/02
• 日中: 気温 > 水温
• 夜間: 気温 < 水温
• peakが水温のほうが遅れる
• 水の方が温度変化が少ない
猛暑日のエビの死滅は
気温のピークより遅れる
可能性がある
対策を取れる可能性がある
水の方が空気よりも比熱が高い
→ 温まりにくく冷めにくい
… 意図せず確認できた
Conclusion
まとめ
15
• 屋外設置水槽を監視する仕組みはできた
• STP Nodeによる外気温・湿度、水温の監視
• サーバーへのデータ蓄積
• 今後の展望
• 可視化や通知の仕組みの構築
• 気象庁のデータとの連携
• FAQ
• pHや溶存酸素などの対応予定はない
• センサーが高い(安いもので、pH $70、溶存酸素 $170くらい)
• 2w~4w毎に校正が必要 (校正に劇薬が必要、個人で調達は厳しい)
• 試薬の方が安価で対応しやすい
• センサーの寿命が長くて1年
Thank You!

More Related Content

Recently uploaded

Recently uploaded (8)

MPAなWebフレームワーク、Astroの紹介 (その1) 2024/05/17の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その1) 2024/05/17の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その1) 2024/05/17の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その1) 2024/05/17の勉強会で発表されたものです。
 
情報を表現するときのポイント
情報を表現するときのポイント情報を表現するときのポイント
情報を表現するときのポイント
 
ネットワーク可視化 振る舞い検知(NDR)ご紹介_キンドリル202405.pdf
ネットワーク可視化 振る舞い検知(NDR)ご紹介_キンドリル202405.pdfネットワーク可視化 振る舞い検知(NDR)ご紹介_キンドリル202405.pdf
ネットワーク可視化 振る舞い検知(NDR)ご紹介_キンドリル202405.pdf
 
LoRaWAN無位置ロープ式水漏れセンサーWL03A 日本語マニュアル
LoRaWAN無位置ロープ式水漏れセンサーWL03A 日本語マニュアルLoRaWAN無位置ロープ式水漏れセンサーWL03A 日本語マニュアル
LoRaWAN無位置ロープ式水漏れセンサーWL03A 日本語マニュアル
 
LoRaWAN無位置ロープ型水漏れセンサー WL03A-LB/LSカタログ ファイル
LoRaWAN無位置ロープ型水漏れセンサー WL03A-LB/LSカタログ ファイルLoRaWAN無位置ロープ型水漏れセンサー WL03A-LB/LSカタログ ファイル
LoRaWAN無位置ロープ型水漏れセンサー WL03A-LB/LSカタログ ファイル
 
Keywordmap overview material/CINC.co.ltd
Keywordmap overview material/CINC.co.ltdKeywordmap overview material/CINC.co.ltd
Keywordmap overview material/CINC.co.ltd
 
2024年5月17日 先駆的科学計算フォーラム2024 機械学習を用いた新たなゲーム体験の創出の応用
2024年5月17日 先駆的科学計算フォーラム2024 機械学習を用いた新たなゲーム体験の創出の応用2024年5月17日 先駆的科学計算フォーラム2024 機械学習を用いた新たなゲーム体験の創出の応用
2024年5月17日 先駆的科学計算フォーラム2024 機械学習を用いた新たなゲーム体験の創出の応用
 
Hyperledger Fabricコミュニティ活動体験& Hyperledger Fabric最新状況ご紹介
Hyperledger Fabricコミュニティ活動体験& Hyperledger Fabric最新状況ご紹介Hyperledger Fabricコミュニティ活動体験& Hyperledger Fabric最新状況ご紹介
Hyperledger Fabricコミュニティ活動体験& Hyperledger Fabric最新状況ご紹介
 

Featured

How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
ThinkNow
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 

Featured (20)

How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 

221203_stpnode.pdf

  • 1. 屋外設置水槽向け 環境監視システムの製作 Hamamatsu.rb / Xiao Project / Rowan Tools Langur Last update: 2022/12/03
  • 4. ミナミヌマエビ 4 • 体長2~3cm程度 • 水槽のコケ掃除用によく飼育される • コケというか藻 • 死骸も捕食する→魚や貝の死骸は骨や殻だけになる • 卵から稚エビとして産まれる • 他種はプランクトンとして産まれるものが 多く繁殖困難 • 屋外で飼育すると爆殖する • 発泡スチロールに水を張っておくだけでよい • ザリガニの餌を与えるともっと増える • 釣りで餌に使える 画像出典: [a] https://ja.wikipedia.org/ ミナミヌマエビの画像の著作表示 Sasapy, 2007 ミナミヌマエビ[a] CC-表示 3.0
  • 5. 飼育環境 5 • 天面に寒冷紗を貼付け • 通気口 • 蚊や他の昆虫の侵入防止 • 万が一蚊が湧いたら近所迷惑… • エビがボウフラやヤゴ等に捕食される… • ソイル(土)の設置 • エビの足場用 • 糞の分解促進用 • 浮遊性の水草の設置 • エビの足場用 • 飼育水の富栄養状態化の防止用 • マツモやアナカリス(オオカナダモ)を栽培 • メンテナンスは水の注ぎ足し、水草を間引く程度
  • 6. エビの大量死 6 屋外に設置した水槽で夏にエビの大量死が発生。 飼育水が熱かったことから、太陽光や外気温により茹ったと思われる。 また、酸素欠乏が疑われる。 画像出典: [b] エビ水槽以外 https://www.irasutoya.com/ [c] エビ水槽 https://www.gex-fp.co.jp/fish/blog/columns/vol-08-2/ [d] 水中の飽和溶存酸素量 https://www.toadkk.co.jp/ 外気温・水温から取得を始めてみる 環境の実態把握が急務
  • 8. システム構成 8 収集した データの閲覧 データの 蓄積・解析 LAMP構成 - Linux - Apache - MySQL - PHP RESTful API データの収集 WSNノード - Wi-Fi接続 - 外気温・水温計測 屋外設置 - 要高温環境耐性 - 要防水性 Raspberry Piの採用 - Wi-Fi対応 - センサの接続 - 高温環境耐性 →防水加工耐性 Shrimp Tank Pi Nodeと命名 [1] 小野田晃久, 峰野博史, 施設園芸環境向け無線センサノードの開発, 農業情報学会2020年度年次大会講演要旨集, vol. 2020, pp. 162-163, May. 2020 高温環境耐性はPiNode[1]で実証済
  • 9. STP Node 9 Hardware / Software構成 • メイン基板 • Raspberry Pi Zero W • Raspberry Pi OS • ApplicationはPythonで作成 • 水温センサ • DS18B20 … 1-Wireで接続 • ファイル読出しでOK • 温湿度センサ • SHT31 … I2Cで接続 • pisht30[2]を使用 … PyPIで公開済 • GPIOの操作にpigpiodを使用 • Pythonのセミナで利用するために作成・公開 • M5StickC用のEHV III HATを利用するために作成 • ENV III HATにSHT30が搭載されている Raspberry Pi Zero W DS18B20 SHT31 [2] Akihisa ONODA, pisht30, https://pypi.org/project/pisht30/, PyPI, Jan. 2022 画像出典: [e] Raspberry Pi Zero W https://www.raspberrypi.com/ [f] DS18B20 / SHT31 https://akizukidenshi.com/ [g] ENV III HAT https://www.m5stack.com 温度センサはアナログセンサ + A/Dコンバータ を使う手もあるが、利便性のためモジュール化 されたものを採用(お金で解決)。
  • 10. STP Node 10 部品 数量 調達先 備考 画像 Raspberry Pi Zero W 1 KSY 昔購入した在庫 microSDカード 1 Amazon 高耐久モデル推奨 Ex. SanDisk Extreme Pro シリーズ DS18B20 1 Amazon 水温センサ 1-Wire SHT31 1 秋月電子通商 温湿度センサ I2C 主な部品と調達先
  • 11. STP Node 11 Application #- -*- coding: utf-8 -*- import pisht30 as SHT31 import time import json import requests URL = “サーバーのURL" AUTH = “サーバーの認証情報" DS18B20 = "/sys/devices/w1_bus_master1/28-012025646549/temperature" def read_ds18b20(): val = 0.0 try: file = open(DS18B20) wt_str = file.read() val = float(wt_str.strip()) / 1000.0 except Exception as e: print(e) finally: file.close() return val def read_sht31(): config = {'address': SHT31.Address.HIGH.value} obj = SHT31.PiSht30(config) return obj.read() ds18b20 = read_ds18b20() sht31 = read_sht31() value = {} value['wt'] = round(ds18b20, 2) value['at'] = round(sht31['temperature'], 2) value['rh'] = round(sht31['humidity'], 2) value['time'] = int(time.time()) value['auth'] = AUTH data = json.dumps(value) body = {'record': data} #print(body) res = requests.post(URL, body) DS18B20の読み出し SHT31の読み出し センサの読み出し データの加工 データの送信
  • 13. 計測結果 13 11/04 11/11 11/18 11/25 12/02 • 日中: 気温 > 水温 • 夜間: 気温 < 水温 • peakが水温のほうが遅れる • 水の方が温度変化が少ない 猛暑日のエビの死滅は 気温のピークより遅れる 可能性がある 対策を取れる可能性がある 水の方が空気よりも比熱が高い → 温まりにくく冷めにくい … 意図せず確認できた
  • 15. まとめ 15 • 屋外設置水槽を監視する仕組みはできた • STP Nodeによる外気温・湿度、水温の監視 • サーバーへのデータ蓄積 • 今後の展望 • 可視化や通知の仕組みの構築 • 気象庁のデータとの連携 • FAQ • pHや溶存酸素などの対応予定はない • センサーが高い(安いもので、pH $70、溶存酸素 $170くらい) • 2w~4w毎に校正が必要 (校正に劇薬が必要、個人で調達は厳しい) • 試薬の方が安価で対応しやすい • センサーの寿命が長くて1年