点亮你的鱼缸
本帖最后由 347945801 于 2020-11-13 18:36 编辑在快节奏的生活中,陌生人之间的交流越来越少,很多人都选择养宠物作为排解寂寞的手段
其中,养金鱼大概是“看起来”最简单的了
但我们的生活越来越忙碌,你是否在紧张忙碌的生活中,经常忘了照顾你的小鱼鱼呢?是否因为忘了换水而让鱼生活在浑浊的水中呢,又是否因为加热棒突然抽风而将鱼煮“熟”了呢
硬件清单
M0主控板x1
DS18B20 防水温度传感器套件x1
Gravity: 模拟TDS传感器x1
Gravity: I2C 8×16 RGB LED点阵表情板x1
Gravity I2C OLED-2864 显示屏x1
杜邦线若干
软件使用Arduino IDE 烧录程序M0的SDK可以在Wiki中找到我们还用到了几个传感器和显示器的库包括DFRobot_TDS,DFRobot_RGBPanel,DFRobot_SSD1306_I2C
DFRobot_DS18B20,DFRobot_NeoPixel这两个库在DFRobot官方库中没有,但可以在Mind+的Arduino库中找到。
因为我们同时使用的表情板和OLED显示屏都是IIC设备,因此我们需要将IIC接口扩展,这里就需要用到扩展板了
我们开始着手做一个外壳
这里我选择用激光切割来制作,使用的材料是黑色的亚克力板(不用透明的肯定不是因为里面接线太乱)
在拼装的过程中,我顺便将会表情板和OLED显示屏固定在了亚克力板上
而我们对于表情板的编程可以移到Mind+上,在将代码复制到Arduino上(Mind+还未支持M0)
#include <DFRobot_DS18B20.h>
#include <DFRobot_NeoPixel.h>
#include <DFRobot_RGBPanel.h>
#include <DFRobot_SSD1306_I2C.h>
// 静态常量
const uint16_t bitmap[] = {
{0x03e0,0x07f0,0x0888,0x0888,0x0770,0x0360,0x02a0,0x02a0},
{0x0000,0x1008,0x0810,0x0420,0x0810,0x1008,0x03c0,0x0420},
{0x4422,0x2814,0x1008,0x2814,0x4422,0x0000,0x0000,0x03c0},
{0x0000,0x1008,0x2814,0x0000,0x0000,0x0000,0x0420,0x03c0}
};
// 创建对象
DFRobot_NeoPixel neoPixel_4;
DFRobot_TDS tds_A0(A0);
DFRobot_SSD1306_I2C oled12864;
DFRobot_DS18B20 ds18b20_5;
DFRobot_RGBPanel panel;
// 主程序开始
void setup() {
oled12864.begin(0x3c);
ds18b20_5.begin(5);
neoPixel_4.begin(4, 20);
neoPixel_4.setBrightness(255);
}
void loop() {
oled12864.setCursorLine(1);
oled12864.printLine((String("TDS: ") + String((tds_A0.getTdsValue()))));
oled12864.setCursorLine(2);
oled12864.printLine((String("Temperature:") + String(ds18b20_5.getTempC())));
if (((ds18b20_5.getTempC()<20) && ((tds_A0.getTdsValue())>=30))) {
panel.diy(bitmap, 1);
}
else {
if ((ds18b20_5.getTempC()<20)) {
panel.diy(bitmap, 3);
}
else if (((tds_A0.getTdsValue())>=30)) {
panel.diy(bitmap, 4);
}
else {
panel.diy(bitmap, 2);
neoPixel_4.showRainbow(0, 4, 1, 360);
}
}
delay(5000);
}
代码中关于温度和TDS的阈值可以根据养的鱼的种类不同而修改
接着上传代码到主控中
将代码上传后,我们将探头放入鱼缸中,就能获取鱼缸中的水质和温度了
这是适宜的水质和温度,表情板显示笑脸,灯带为彩色
这是TDS超标是的表情,灯带为蓝色
这是水温低于或高于正常值的表情,灯带显示为黄色
水质和水温都不在正常范围内时,表情板就显示一个红色的骷髅头,你亲爱的小鱼鱼就快嗝屁啦
鱼的记忆只有7秒,我们无法感受到他们的生活状态,这个小鱼缸让人们可以生动的感受鱼的生活环境
及时换水和正确使用加热棒,也避免主人投食过多导致水体浑浊
本帖最后由 安卓机器人 于 2020-11-14 12:42 编辑
一直在找适合水养植物的IOT鱼缸 很好的创意
这个不错,很有创意
页:
[1]