发表于:2021/10/5 15:58:22
#0楼
使用树莓派3做的一套农业监控系统,可以监控植物的温度、湿度、光照强度、重量、录像,全方面记录种植过程中的情况 制作视频已上传到哔哩哔哩:https://www.bilibili.com/video/BV1cR4y1H7LY/
软件架构
树莓派需要安装64位系统,32位无法安装OpenCV,本人试过。需要安装的应用有,docker、node-red、grafana、timescaledb、pgadmin4、OpenCV、jupyterlab
安装教程
1. docker
#使用脚本安装
sudo curl -sSL https://get.docker.com | sh
#查看 Docker 版本
docker -v
#重启 systemctl 守护进程
sudo systemctl daemon-reload
#设置 Docker 开机启动
sudo systemctl enable docker
#开启 Docker 服务
sudo systemctl start docker
#下载 Docker 图形化界面 portainer
sudo docker pull portainer/portainer
#创建 portainer 容器
sudo docker volume create portainer_data
#运行 portainer
sudo docker run -d -p 9000:9000 --name portainer --restart always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer
浏览器中输入树莓派IP:9000 进入界面
输入图片说明
2. node-red
首先在docker内创建一个用于容器与外部互交的东西
输入图片说明
安装 node-red,可以到docker仓库查看 链接
docker run -it -p 1880:1880 -v node_red_data:/data --name mynodered nodered/node-red
浏览器中输入树莓派IP:1880进入界面
输入图片说明
然后再安装两个插件node-red-contrib-modbus 和 node-red-contrib-postgresql 用于读传感器值和保存数据到数据库
输入图片说明
3. grafana
可以到docker仓库查看链接
docker run -d --name=grafana -p 3000:3000 grafana/grafana
浏览器中输入树莓派IP:3000进入界面
输入图片说明
然后安装插件 grafana-cli plugins install dalvany-image-panel 用于显示图片
输入图片说明
4. timescaledb
可以到docker仓库查看链接
拉取镜像
docker pull timescale/timescaledb:latest-pg12
部署容器是有添加环境变量POSTGRES_PASSWORD 和密码
输入图片说明
5. pgadmin4
可以到docker仓库查看链接
拉取镜像
docker pull dpage/pgadmin4
部署容器是有添加环境变量PGADMIN_DEFAULT_EMAIL 和 PGADMIN_DEFAULT_PASSWORD 作为用户名和密码
输入图片说明
浏览器中输入树莓派IP:5000进入界面
输入图片说明
6. OpenCV 和jupyterlab
到docker仓库拉取一个基础python镜像
docker pull python
部署python容器,进入容器使用pip安装 OpenCV和jupyterlab
pip install opencv-python
pip install jupyterlab
pip install psycopg2
pip install matplotlib
apt install libgl1-mesa-glx
保存为镜像
部署jupyterlab
软件架构
树莓派需要安装64位系统,32位无法安装OpenCV,本人试过。需要安装的应用有,docker、node-red、grafana、timescaledb、pgadmin4、OpenCV、jupyterlab
安装教程
1. docker
#使用脚本安装
sudo curl -sSL https://get.docker.com | sh
#查看 Docker 版本
docker -v
#重启 systemctl 守护进程
sudo systemctl daemon-reload
#设置 Docker 开机启动
sudo systemctl enable docker
#开启 Docker 服务
sudo systemctl start docker
#下载 Docker 图形化界面 portainer
sudo docker pull portainer/portainer
#创建 portainer 容器
sudo docker volume create portainer_data
#运行 portainer
sudo docker run -d -p 9000:9000 --name portainer --restart always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer
浏览器中输入树莓派IP:9000 进入界面
输入图片说明
2. node-red
首先在docker内创建一个用于容器与外部互交的东西
输入图片说明
安装 node-red,可以到docker仓库查看 链接
docker run -it -p 1880:1880 -v node_red_data:/data --name mynodered nodered/node-red
浏览器中输入树莓派IP:1880进入界面
输入图片说明
然后再安装两个插件node-red-contrib-modbus 和 node-red-contrib-postgresql 用于读传感器值和保存数据到数据库
输入图片说明
3. grafana
可以到docker仓库查看链接
docker run -d --name=grafana -p 3000:3000 grafana/grafana
浏览器中输入树莓派IP:3000进入界面
输入图片说明
然后安装插件 grafana-cli plugins install dalvany-image-panel 用于显示图片
输入图片说明
4. timescaledb
可以到docker仓库查看链接
拉取镜像
docker pull timescale/timescaledb:latest-pg12
部署容器是有添加环境变量POSTGRES_PASSWORD 和密码
输入图片说明
5. pgadmin4
可以到docker仓库查看链接
拉取镜像
docker pull dpage/pgadmin4
部署容器是有添加环境变量PGADMIN_DEFAULT_EMAIL 和 PGADMIN_DEFAULT_PASSWORD 作为用户名和密码
输入图片说明
浏览器中输入树莓派IP:5000进入界面
输入图片说明
6. OpenCV 和jupyterlab
到docker仓库拉取一个基础python镜像
docker pull python
部署python容器,进入容器使用pip安装 OpenCV和jupyterlab
pip install opencv-python
pip install jupyterlab
pip install psycopg2
pip install matplotlib
apt install libgl1-mesa-glx
保存为镜像
部署jupyterlab