
养蜂(或称蜂学,源自拉丁语:apis“蜜蜂”)是指人类在蜂箱中维护蜜蜂种群的活动。养蜂人(或称蜂农)饲养蜜蜂以收集蜂蜜以及蜂巢产生的其他产品(包括蜂蜡、蜂胶、花粉和蜂王浆),或用于农作物授粉,或生产蜜蜂出售给其他养蜂人。饲养蜜蜂的地点被称为蜂场或“蜜蜂园”。
人类采集野生蜜蜂蜂蜜的描绘可追溯到15,000年前。大约9,000年前,北非开始使用陶器容器养蜂。[2] 大约4,500年前的埃及艺术中就展示了蜜蜂的驯化。当时使用了简单的蜂箱和烟雾,蜂蜜被储存在罐子里,其中一些罐子在图坦卡蒙等法老的墓葬中被发现。直到18世纪,欧洲人才对蜜蜂的种群和生物学有了足够的了解,从而能够制造出可移动的巢脾蜂箱,这样可以在不破坏整个蜂群的情况下收获蜂蜜。这是我的爱好之一。我的职业是电子工程师,所以我决定在一定程度上实现养蜂过程的自动化。在收获时,拥有正确的信息(如温度、湿度、蜂蜜质量和重量图表)非常重要,以便决定是留在原地还是转移到其他区域。我的系统基于树莓派和Arduino。Arduino板连接到DHT温湿度传感器、LCD显示屏和带有秤的HX711放大器,读取数值并将其打印到LCD显示屏和串行端口。DHT传感器用于室外,将安装在项目外壳的外部。负载秤传感器来自一个体重秤,已经带有框架,将安装在蜂箱的底部。树莓派读取串行端口并将数值存储在数据库中,然后打开一个网络服务器,显示蜂箱的温度、湿度和重量图表,以及统计信息(最小值、最大值、平均值)和时间段选择(6小时、12小时、24小时)。
第一步:物料清单(BOM)
收集所需部件:
1 x 树莓派 B+
1 x Arduino Nano
1 x HX711 秤放大器板
1 x 负载传感器(我的是来自一个秤,最大承重300 KG)
1 x DHT 温湿度传感器
1 x Arduino LCD显示屏
1 x 4.7k 电阻
2 x 10k 电阻
2 x 按钮
1 x WiFi 适配器
移动电源
外壳盒
USB 线缆
第二步:开始
首先,你需要安装Raspbian。
要连接到SSH,你需要知道树莓派的IP地址。我使用了一个适用于Mac的酷工具PiFinder它可以找到网络上连接的所有树莓派。
你也可以将树莓派连接到显示器,打开终端并运行:
ifconfig
inet IP地址就是树莓派连接到网络的地址。下一步是通过SSH连接,可以使用Windows上的Putty,或者通过Linux或Mac的终端。
我在终端中运行了以下命令:
sshpi@192.168.1.23
(其中pi = 用户名,192.168.1.23 = 树莓派的IP地址)
更新系统。打开终端或SSH,并运行:
sudo apt-getupdatesudo apt-getupgrade-y sudo reboot
安装用于通过串行端口与Arduino通信的软件:
sudo apt-getinstall ino
安装数据库软件:
sudo apt-getinstall sqlite3
安装网络服务器:
sudo apt-getinstall apache2
第三步:设置Arduino
下一步是设置Arduino环境:
安装Arduino IDE,然后从下面的链接安装库。
连接你的Arduino板,并上传位于Git仓库中的草图:ArduinoRaspberryPiHive.ino。
将DHT传感器连接到数字引脚10,LCD显示屏连接到SCL和SDA,HX711板连接到A1和A0,重置秤的按钮连接到引脚11,背光开启按钮连接到数字引脚12。此外,所有扩展都连接到5V和地。我进行了分线并直接焊接到我的Arduino的USB上,使用了一个螺丝端子来连接5V和地。我想如果使用Arduino上的5V引脚,我可能会得到大约4.5V的电压。
现在,我们继续配置树莓派。
通过USB线将Arduino连接到树莓派。
第四步:准备外壳
按照附带的原理图,将电线焊接到按钮和10k电阻上。
在外壳盒上钻孔,并添加按钮、DHT传感器、负载秤电缆和LCD显示屏。
我还将DHT传感器粘到了盒子上,并添加了一个开关。
其中一个按钮用于点亮LCD背光。
另一个按钮用于将秤重置为0 KG。
第五步:回到树莓派
通过USB线将Arduino连接到树莓派。
打开终端并运行:
inoserial
你将看到来自Arduino的串行读取数据。如果没有,说明你做错了什么。
关闭窗口并打开另一个终端。
通过运行以下命令创建数据库:这将创建一个名为templog的数据库。
sqlite3 templog.db
添加weight和temps表:这个查询创建了两个表,temps(包含一个名为timestamp的日期和时间列,以及一个名为temp的数值列)和weight(包含一个名为timestamp的日期和时间列,以及一个名为Kg的数值列)
CREATE TABLE temps (timestamp DATETIME, temp NUMERIC);
CREATE TABLE weight (timestamp DATETIME, Kg NUMERIC); Commit;
确保在每个查询后添加分号。
如果你运行-tables,你应该会看到两个表,temps和weight。
退出终端,并运行以下命令:第一个命令将templog.db复制到/var/www/文件夹中。第二个命令更改文件的所有者。
sudocptemplog.db /var/www/ sudochownwww-data:www-data /var/www/templog.db
现在是时候从git导入代码了。在终端窗口中,运行:
gitclonehttps://github.com/vpetrache/Raspberry-Pi-Web-Application-Temperature-Reading.git
这将创建一个名为Raspberry-Pi-Web-Application-Temperature-Reading的文件夹,其中包含monitor.py和webgui.py。进入该目录:
cd Raspberry-Pi-Web-Application-Temperature-Reading cp monitor.py /usr/lib/cgi-bin/ cp webgui.py /usr/lib/cgi-bin/
更改文件所有权: sudo chmod +x /usr/lib/cgi-bin/monitor.py sudo chmod +x /usr/lib/cgi-bin/webgui.py sudo chown www-data:www-data /usr/lib/cgi-bin/monitor.py
第六步:启动服务器
要将Python脚本添加为作业运行:
sudocrontab -u www-data -e
在www-data文件的末尾添加以下行:
*/15 * * * * /usr/lib/cgi-bin/monitor.py
下一步,启用Apache网络服务器以运行脚本:
sudo leafpad/etc/apache2/sites-enabled/000-default&
导航到以下行:
< Directory "/usr/lib/cgi-bin" >...< /Directory >
添加以下行:
AddHandlercgi-script .py
并重启Apache服务器:
sudoservice apache2 reload
重启树莓派:
sudoreboot
打开任何浏览器并连接到 http://YourPiIpAddress/cgi-bin/webgui.py 你应该会看到类似这样的内容(带有一些数据):
第七步:总结
当季节到来时,我将拥有一个功能齐全的负载秤,并对蜂蜜收获有更多的了解。
以下是本项目中使用的仓库:
https://github.com/vpetrache/Raspberry-Pi-Web-Appl...
https://github.com/bogde/HX711
原文地址:
https://www.instructables.com/Raspberry-Pi-Beekeeping-Server/