资料介绍
描述
介绍
蜜蜂是环境中重要的授粉昆虫,但它们面临许多可能影响其健康和生存的危险。蜜蜂可能面临:
- 捕食者:某些动物种类可能会攻击或突袭蜂巢以寻找食物。
- 蜂巢盗窃:有时养蜂人发现他们的蜂巢被盗。
- 杀虫剂:它们对蜜蜂可能是危险的,因为它们可以杀死或削弱以花为食的昆虫。
- 环境:它们可能会受到许多环境因素的影响,例如温度和湿度波动以及空气污染。
重要的是采取措施保护蜜蜂并确保其长期生存。因此,我们提出了一个使用微控制器和传感器的监控系统,可以帮助养蜂人更好地了解和保护他们的蜂箱。
该系统由不同的传感器组成:
- 湿度/温度 DHT22 x2
- 温度 DS18B20 x2
- 重量 HX711 x1
- 光照强度 SEN0291 x1
- 声音x1
它由电池和太阳能电池板组成。该设备还包含一个 LiPo Rider Pro 卡,可以连接两个组件,使其能源自给自足。
系统设置
传感器
首先,每个组件都经过单独测试,以验证其功能是否正常。为实现此步骤,使用了原型板、微控制器和传感器。有必要将传感器的特定代码放入微控制器中。
必须对所有传感器(DS18B20、HX711、SEN0291)执行相同的操作。这些传感器的连接和测试,请参考描述中的组件链接。
全部测试完后,我们做了一个通用的代码,可以同时拥有所有的信息(我们的在文末有说明)
麦克风
为了研究蜜蜂的行为,我们不得不放大麦克风的信号。您必须按照原理图使用 MAX4468 音频放大器(您可以在互联网上找到该组件的文档)。
您必须首先在原型板上进行测试并检查示波器上的信号以验证功能是否正常。但是,可能会有很多噪音,这是显而易见的。因此,您必须打印音频电路的 PCB 才能获得正确的结果。
数据传输
然后,LoRa-E5模块用于无线传输数据。此信息被发送到服务器 (TTN),服务器 (TTN) 将其发送到云 (Ubidots)。云允许在图表上可视化数据。要使用该模块并将数据发送到服务器,请转到以下链接:https ://wiki.seeedstudio.com/Grove_LoRa_E5_New_Version/
最后,将TTN服务器与ubidots链接,参考这个链接:https ://help.ubidots.com/en/articles/5096476-plugins-connect-the-things-stack-to-ubidots
一旦在 Ubidots 上,为了执行我们的代码,我们将不得不创建不同的变量并在插件部分的解码器部分编写下面的代码。
function format_payload(args){
var ubidots_payload = {};
// Log received data for debugging purposes:
// console.log(JSON.stringify(args));
// Get RSSI and SNR variables using gateways data:
var gateways = args['uplink_message']['rx_metadata'];
for (const i in gateways) {
// Get gateway EUI and name
var gw = gateways[i];
var gw_eui = gw['gateway_ids']['eui'];
var gw_id = gw['gateway_ids']['gateway_id'];
// Build RSSI and SNR variables
ubidots_payload['rssi-' + gw_id] = {
"value": gw['rssi'],
"context": {
"channel_index": gw['channel_index'],
"channel_rssi": gw['channel_rssi'],
"gw_eui": gw_eui,
"gw_id": gw_id,
"uplink_token": gw['uplink_token']
}
}
ubidots_payload['snr-' + gw_id] = gw['snr'];
}
// Get Fcnt and Port variables:
ubidots_payload['f_cnt'] = args['uplink_message']['f_cnt'];
ubidots_payload['f_port'] = args['uplink_message']['f_port'];
// Get uplink's timestamp
ubidots_payload['timestamp'] = new Date(args['uplink_message']['received_at']).getTime();
// If you're already decoding in TTS using payload formatters,
// then uncomment the following line to use "uplink_message.decoded_payload".
// PROTIP: Make sure the incoming decoded payload is an Ubidots-compatible JSON (See https://ubidots.com/docs/hw/#sending-data)
// var decoded_payload = args['uplink_message']['decoded_payload'];
// By default, this plugin uses "uplink_message.frm_payload" and sends it to the decoding function "decodeUplink".
// For more vendor-specific decoders, check out https://github.com/TheThingsNetwork/lorawan-devices/tree/master/vendor
let bytes = Buffer.from(args['uplink_message']['frm_payload'], 'base64');
var decoded_payload = decodeUplink(bytes)['data'];
// Merge decoded payload into Ubidots payload
Object.assign(ubidots_payload, decoded_payload);
return ubidots_payload
}
function decodeUplink(bytes) {
// Decoder for the RAK1906 WisBlock Environmental Sensor (https://store.rakwireless.com/products/rak1906-bme680-environment-sensor)
var decoded = {};
//if (bytes[0] == 1) {
// If received data is of Environment Monitoring type
decoded.temperature = (bytes[0]<<8|bytes[1])/10 ;
decoded.humidity = (bytes[2]<<8|bytes[3]) ;
decoded.temp1 = (bytes[4]<<8|bytes[5])/10;
decoded.temp2 = (bytes[6]<<8|bytes[7])/10;
decoded.poids = (bytes[8]<<8|bytes[9])/100;
decoded.battery=(bytes[10]<<8|bytes[11])/100;
decoded.luminosity=bytes[12]<<8|bytes[13];
return {"data": decoded};
}
module.exports = { format_payload };
不要忘记将我们代码中 AppEUI、DevEUI 和 AppKey 的值替换为您放在 TTN 上的值。
if(at_send_check_response("+AT: OK", 100, "AT\r\n")){
is_exist = true;
at_send_check_response("+ID: AppEui", 1000, "AT+ID\r\n");
at_send_check_response("+MODE: LWOTAA", 1000, "AT+MODE=LWOTAA\r\n");
at_send_check_response("+DR: EU868", 1000, "AT+DR=EU868\r\n");
at_send_check_response("+CH: NUM", 1000, "AT+CH=NUM,0-2\r\n");
at_send_check_response("+KEY: APPKEY", 1000, "AT+KEY=APPKEY,"E2615C4277914656365B2A0F5F012047"\r\n"); CHANGER HERE
at_send_check_response("+ID: DEVEUI", 1000, "AT+ID=DEVEUI,"ABCDEF123456789A"\r\n"); CHANGE HERE
at_send_check_response("+ID: APPEUI", 1000, "AT+ID=APPEUI,"0000000000000000"\r\n"); CHANGE HERE
at_send_check_response("+CLASS: C", 1000, "AT+CLASS=A\r\n");
ret=at_send_check_response("+PORT: 9", 1000, "AT+PORT=9\r\n");
delay(200);
is_join = true;
检查代码中分配的引脚是否与物理分配给微控制器的引脚相同。一切都准备好了!系统功能正常,可以启动。
改进
为了使系统更紧凑、无线并避免噪音,我们用 KiCad 软件中的 PCB 电路替换了原型板。首先是带有音频放大器的音频 PCB。
现在在 KiCad 中创建原理图和封装,以便打印。
印刷 PCB 后,您必须在 PCB 上焊接元件(音频放大器、电阻器、电容器),注意选择正确的电阻器和电容器值。
然后您必须创建最终的 PCB,其中包含 Arduino 板和连接所有传感器的连接器。
构建系统
然后我们让我们的系统防水,以保护它免受天气条件的影响。所有模块或传感器都放置在防水盒中。传感器通过电缆延伸,放置在蜂巢内/蜂巢上。
盒子功能正常,只需要测试一下!
我们决定将我们的结果发布在另一个 Cloud Beep 上。这是我们得到的结果。
。
- 房间灯光监控系统开源分享
- 蜂窝连接的蜂巢监视器开源分享
- 具有人体检测功能的智能监控系统开源
- 开源低成本电力监控系统
- 温度监控系统开源分享
- 邮箱监控系统开源项目
- 灯光监控系统开源分享
- TempGuard温度监控和异常检测系统开源
- 智能能源和公用事业监控系统开源分享
- 可远程监控蜂巢的开源项目
- 灯光监控系统开源
- 安装在蜂巢上的传感器开源分享
- 温室监控系统开源分享
- 基于ARM处理器的禽舍环境监控系统 31次下载
- 用于小米开源监控系统open-falcon的监控采集脚本集合 12次下载
- Nightingale夜莺监控部署安装和使用 2204次阅读
- 什么是动力环境监控系统 883次阅读
- 40个步骤安装部署Prometheus监控系统 4.9w次阅读
- 什么是MES生产监控系统? 2106次阅读
- 监控系统负载记录系统状态 867次阅读
- 影响无线监控系统中图像质量的原因 4760次阅读
- 图像传感器为视频监控带来了新趋势 8.3w次阅读
- 监控系统的存储方法 8376次阅读
- 安防监控系统的特点_安防监控系统的优势 2495次阅读
- 物联网十大经典开源操作系统 1w次阅读
- 安防监控系统中如何选择模拟监控布线和数字监控布线 7391次阅读
- 智能安防监控系统方案介绍 4.2w次阅读
- 电视监控系统概述和特点以及分类 5235次阅读
- 什么是结晶器监控系统?结晶器监控系统组成原理 1108次阅读
- 基于Android智能家居远程监控系统设计 5428次阅读
下载排行
本周
- 1山景DSP芯片AP8248A2数据手册
- 1.06 MB | 532次下载 | 免费
- 2RK3399完整板原理图(支持平板,盒子VR)
- 3.28 MB | 339次下载 | 免费
- 3TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 4DFM软件使用教程
- 0.84 MB | 295次下载 | 免费
- 5元宇宙深度解析—未来的未来-风口还是泡沫
- 6.40 MB | 227次下载 | 免费
- 6迪文DGUS开发指南
- 31.67 MB | 194次下载 | 免费
- 7元宇宙底层硬件系列报告
- 13.42 MB | 182次下载 | 免费
- 8FP5207XR-G1中文应用手册
- 1.09 MB | 178次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33566次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6656次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537798次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420027次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191187次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多