当前位置: 首页 > news >正文

天心区网站建设公司宁波的网络营销服务公司

天心区网站建设公司,宁波的网络营销服务公司,免费个人业务网站制作,网页怎么截图目录 一、前言 二、工具 三、原理 四、代码实现 1、esp8266的使用 2、ds18b20的使用 前提: 3、oled屏使用 4、光敏传感器使用 五、网页使用 六、总结 效果演示 esp8266物联网测试 一、前言 基于物联网课设设计的小项目,可供参考。 本项目使用…

目录

一、前言

二、工具

三、原理

四、代码实现

1、esp8266的使用

2、ds18b20的使用

前提:

3、oled屏使用

4、光敏传感器使用

五、网页使用

 六、总结


效果演示

esp8266物联网测试

一、前言

基于物联网课设设计的小项目,可供参考。

本项目使用ESP8266作为主控器实现一个简单的测温系统,主要功能有:测量环境温度并在屏幕上显示,实现昼夜更换减少耗能,超过温度会报警。

数据是基于MQTT协议通信的,作者想编写一个MQTT协议的APP,但是难度过大,并且没接触过android studio,所以用一个可以接受MQTT的网站来实现数据收集。

二、工具

arduino ide

esp32(esp8266)单片机

ds18b20温度传感器

OLED显示屏

光敏传感器

物联网网站

三、原理

        esp8266读取ds18b20数据并发布到指定话题,读取光敏传感器的状态来检测昼夜变换来实现系统的关闭与开启(白天关闭 False/0 夜晚开启 True/1),并在oled上显示温度和状态,并且可以在网页端查看数据和状态。

四、代码实现

1、esp8266的使用

        作者使用的是arduino ide进行代码上传的,相关代码可以看博主前几篇文章

学习使用Arduino IDE驱动ESP8266/32单片机进行wifi通信-CSDN博客文章浏览阅读685次,点赞18次,收藏12次。官网下载arduino ide准备一个esp8266单片机或esp32。通过arduino 进行esp8266的驱动和wifi通信。 https://blog.csdn.net/2301_76165902/article/details/146050322?fromshare=blogdetail&sharetype=blogdetail&sharerId=146050322&sharerefer=PC&sharesource=2301_76165902&sharefrom=from_link对于wifi和MQTT通信的基本操作都有写。

2、ds18b20的使用

前提:

安装库「OneWire」

头文件为

#include <OneWire.h>

网上好多教程都安装了「DallasTemperature」库或者ds18b20集成库,作者安装后在最新版arduino上编译不通过,只有OneWire原始库来驱动传感器才能编译通过,作者不知道原因,可能使编译器版本太新导致的,如果有解决办法欢迎评论区讨论。

 作者使根据示例 DS18x20_Temperature 文件去修改的

float DS18B20()
{byte i;byte type_s = 0;byte data[9];byte addr[8];float celsius;while( !ds.search(addr));ds.reset();ds.select(addr);ds.write(0x44, 1);        // start conversion, with parasite power on at the enddelay(100);     // maybe 750ms is enough, maybe not// we might do a ds.depower() here, but the reset will take care of it.ds.reset();ds.select(addr);    ds.write(0xBE);         // Read Scratchpadfor ( i = 0; i < 9; i++) {           // we need 9 bytesdata[i] = ds.read();Serial.print(data[i], HEX);Serial.print(" ");}int16_t raw = (data[1] << 8) | data[0];if (type_s) {raw = raw << 3; // 9 bit resolution defaultif (data[7] == 0x10) {// "count remain" gives full 12 bit resolutionraw = (raw & 0xFFF0) + 12 - data[6];}} else {byte cfg = (data[4] & 0x60);// at lower res, the low bits are undefined, so let's zero themif (cfg == 0x00) raw = raw & ~7;  // 9 bit resolution, 93.75 mselse if (cfg == 0x20) raw = raw & ~3; // 10 bit res, 187.5 mselse if (cfg == 0x40) raw = raw & ~1; // 11 bit res, 375 msdefault is 12 bit resolution, 750 ms conversion time}celsius = (float)raw / 16.0;Serial.print("  Temperature = ");Serial.println(celsius);return celsius;
}

返回值为温度(摄氏度)

如果有不懂的地方可以去示例中查看。

3、oled屏使用

头文件为

#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

去管理库里安装相应的依赖

参数设置

const int I2C_ADDR = 0x3c;              // oled屏幕的I2c地址
#define SDA_PIN 4                       // SDA引脚,默认gpio4(D2)
#define SCL_PIN 5                       // SCL引脚,默认gpio5(D1)Adafruit_SSD1306 oled(128, 64, &Wire,-1);

初始化

oled.begin(SSD1306_SWITCHCAPVCC,0x3C);oled.setTextColor(WHITE);//开像素点发光oled.clearDisplay();//清屏

显示文字 

oled.setTextSize(1); //设置字体大小  oled.setCursor(35, 5);//设置显示位置oled.println("-jiezz-");oled.display(); // 开显示

在回调函数里显示温度 

for (int i = 0; i < length; i++) {Serial.print((char)payload[i]);oled.setCursor(15+i*12, 30);//设置显示位置oled.println((char)payload[i]);oled.display(); // 开显示}

这里的位置如果不懂就去网上查一查不同尺寸显示屏的参数,长和宽。

4、光敏传感器使用

光敏电阻通过光强来改变带电阻改变输出电压。

上面有四个引脚VCC,GND,AO(模拟输出),DO(数字输出),只用DO即可,会在光强时输出0,光弱时输出1,阈值可以通过电位器去调节。

简单的用一个引脚去读取即可

pinMode(D3,INPUT);Serial.println(digitalRead(D3));

 可是充当系统的状态量

这些传感器都驱动好了,之后就是整合完成通信即可。

如果需要完整代码可以私信博主,这里就不占篇幅了。

五、网页使用

(公测)KZone喵星球 - 探索AI与编程的乐趣

添加三个话题

/esp8266/wendu  存放温度

/esp8266/state  存放状态

/esp8266/msg   存放信息

在可视化面板添加温度测量

右侧绑定话题

 

添加一个状态灯,绑定state话题

再添加一个输入框,可以和oled进行交互显示

 

到这里就能完成系统的基本功能了

 六、总结

对于云平台可以用阿里云或者腾讯云这些包装好的服务器,会提供app或者小程序使用,可视化效果更好,如果有需要可以试一试,本项目只是娱乐,无任何用途。

如果有问题请评论区指正。

http://www.cadmedia.cn/news/5061.html

相关文章:

  • 山西省住房和城乡建设厅门户网官方网站网络营销推广要求
  • 网站建设论文结尾广州seo公司排行
  • 网站的关键词排名怎么做域名年龄对seo的影响
  • 上海最正规的人才市场做百度seo
  • 浙江网站建设的要求门户网站推广方案
  • 云主机免费申请优化20条措施
  • 贵州5g网站建设安徽网络推广和优化
  • 青岛科友网站建设网络公司网络营销是什么工作
  • 建设一个公司网站 需要钱吗网站优化seo是什么意思
  • 微信网页视频怎么下载seo工具在线访问
  • 阿里云虚拟主机做2个网站百一度一下你就知道
  • 新媒体运营需要学什么慈溪seo排名
  • 二级单位网站建设百家号排名
  • 野草cms北京seo排名优化网站
  • 合肥到黄山旅游攻略太原seo计费管理
  • 邢台网站建设与制作百度开发平台
  • 官方网站在家做兼职官网seo优化
  • 昌平最好的网站建设做网络推广为什么会被抓
  • 临桂住房和城乡建设委员会网站抖音推广网站
  • 广州网站建设哪家公司好百度营销大学
  • 中央政府门户网站的建设思路网络推广是指什么
  • 优秀网站模板欣赏泉州网站seo外包公司
  • 网站建设费用什么意思搜狗友链交换
  • 天眼查询企业信息电话win7优化工具哪个好用
  • 建设网站系统北京seo设计公司
  • 设计公司企业想法seo怎么优化方案
  • 网站建设有多少公司seo
  • 餐饮公司网站建设策划书网络营销环境宏观微观分析
  • 网站建设的要点什么是网络营销?
  • 国外h5制作网站模板下载一诺网络推广公司