比赛的作品:水位检测站(上)
半年一度的B2(创科马拉松)项目开始啦!和我的队友商量了差不多两小时(主题是协作机器人)
简单来说,就是能帮助人类的工业,农业,或医学等领域
我和队友商量,可实现的功能有:
第一,可以测量水位是否有异常
第二,如果发现有人再水里游泳,警报上岸
第三,还可以响铃人们撤离
第四,可以通过网络上报手机里,提醒撤离大概是这样了
目前没有外壳,请看下期,所以别叫我发照片了()()
下面就开工
准备的材料:
1个UNO主控板
1个cld液晶显示屏
1个obloq模块
1个蜂鸣器
1个人体红外释热传感器
1个土壤湿度传感器(别问我为什么要用它)
我们先把lcd显示屏安装在i2c串口,如果0x20的i2c地址不行,那么试试0x27的i2c地址,如果还是不行,那就再试试0x3F的i2c地址,如果还是不行,那就调cld显示屏上的编码器,调到有文字为止,如果还是不行,没有办法,找商家问问
土壤湿度传感器是用来测量水位的,别说我开完笑,你烧下着个代码你就知道了(记得打开串口输出)
对了,土壤湿度传感器要接A0接口,不然会没有输出
void setup() {
Serial.begin(9600);
}
void loop() {
Serial.println(analogRead(A0));
}
下面就初始化obloq吧!(代码如下)
#include <UNO_Obloq.h>
// 静态常量
const String topics = {"","","","",""};
// 创建对象
UNO_Obloq olq;
void setup() {
olq.startConnect(0, 1, "", "", "", "", topics, "iot.dfrobot.com.cn", 1883);
}
void loop() {
}
注意:空的地方要填自己的网络名称和密码,还有你的帐号id和pwd(硬串口还是软串口你自选)
流程图:
有了流程图,就简单多了
代码的程序:
/*!
* MindPlus
* uno
*
*/
#include <UNO_Obloq.h>
#include <SoftwareSerial.h>
#include <DFRobot_Libraries.h>
#include <DFRobot_LiquidCrystal_I2C.h>
// 动态变量
volatile float mind_n_ShangShengZhiShu, mind_n_DengDai;
// 静态常量
const String topics = {"Py23LWp7g","","","",""};
// 创建对象
DFRobot_LiquidCrystal_I2C lcd1602;
UNO_Obloq olq;
SoftwareSerial softSerial(2, 3);
DFRobot_Tone DFTone;
// 主程序开始
void setup() {
Serial.begin(9600);
lcd1602.begin(0x27);
lcd1602.clear();
softSerial.begin(9600);
olq.startConnect(&softSerial, "KevinMobile", "15819779550", "T-NGaECnR", "TaHMaEj7gz", topics, "iot.dfrobot.com.cn", 1883);
}
void loop() {
Serial.println(analogRead(A0));
if ((analogRead(A0)<=300)) {
lcd1602.printLine(uint32_t(1), "Wate level:normal");
Serial.println(analogRead(A0));
}
else {
lcd1602.printLine(uint32_t(1), "Wate level:abnorma");
Serial.println(analogRead(A0));
DFTone.play(A1, 262, 500);
DFTone.play(A1, 880, 500);
mind_n_ShangShengZhiShu += 1;
}
if ((digitalRead(13)==1)) {
lcd1602.printLine(uint32_t(2), "Someone drowned");
}
if ((digitalRead(13)==0)) {
lcd1602.printLine(uint32_t(2), " ");
}
if ((mind_n_DengDai==30)) {
mind_n_DengDai = 0;
if ((analogRead(A0)<300)) {
olq.publish(olq.topic_0, "目前水位没有危险");
}
else {
olq.publish(olq.topic_0, (String((String("目前水位是") + String(analogRead(A0)))) + String(",请注意撤离")));
}
}
mind_n_DengDai += 1;
delay(1000);
}
好了,本帖今天结束了,我们明天再见
期待更新 太厉害了{:5_179:} ASH腻 发表于 2022-7-25 13:52
期待更新
你等半年吧 anydy 发表于 2022-7-27 16:44
你等半年吧
说好的外壳看下期呢 {:5_137:} ASH腻 发表于 2022-7-27 18:00
说好的外壳看下期呢
明天保证更新 anydy 发表于 2022-7-27 16:44
你等半年吧
hmmmm主要是外壳太烂了吧 https://mc.dfrobot.com.cn/thread-313946-1-1.html
来抢生意喽!!!
页:
[1]