动手做个智能水族箱

简介: 动手做个智能水族箱

图是本案例除硬件连线外的3步导学,每个步骤中实现的功能请参考图中的说明。




1、简介

1.1、背景

 

伴随着人们生活水平的提高,养鱼已经成为了一种新的时尚,各种桌面鱼缸层出不穷,但是市面上的鱼缸系统多是比较简单的,智能鱼缸可谓是凤毛麟角,同时也价格不菲。鉴于此,我们HaaS团队打造了一款智能水族馆案例。通过监测水温,水位,以及水质,继而通过物联网平台的功能动态的调节鱼缸生态。


 

本案例中用到的传感器比较多,其中包括TDS、水温,以及压力传感器(用于测水位),充分应用到我们的日常生活中,比如水质仪,净水器,温控热水壶,胎压仪,体重秤等等。


1.1、准备

 

本案例打造需要如下硬件:


Nodemcu32S一台

HX710AB气压传感器一个

18B20水温传感器一个

TDS传感器一个

继电器三个

杜邦线若干

MicroUSB数据线一条

 

硬件连线图如下图所示:




 

继电器外接的水泵,加热棒,以及过滤器,建议采购低压直流设备,如确需强电设备,请注意强电隔离,做好防护。


2、物联网平台开发

 

整个过程包含以下3个步骤:


创建产品(设备模型)

定义产品功能(物模型)

创建设备及获取三元组

 

对于第一次使用物联网平台的读者,需要开通实例以使用物联网平台的功能。这里可以使用免费的公共实例进行开发。


 

在物联网平台中,左上角选择“华东2-上海”,点击“公共实例”,即可开通。开通后点击“公共实例”,即可进入控制台进行产品创建。




2.1、创建产品(设备模型)

 

进入公共实例控制台,点击“创建产品”按钮,即可进入新建产品页面。




 

进入新建产品页面,设定“产品名称”,这里我们命名为“智能水族箱”,读者也可以根据自己的喜好来命名。在“所属品类”中,选择“自定义品类”。


 

产品的节点类型选择“直连设备”,数据格式选择“ICA标准数据格式”,检验类型和认证方式选择默认设定即可。开发者可根据自己的需求在“产品描述”页面添加针对此产品的描述。


 

对于 ESP32 等搭载 Wi-Fi 的设备而言,联网方式选择“Wi-Fi”。




 

点击“确认”按钮,即可完成产品创建。




 

点击“前往定义物模型”




2.2、定义产品功能(物模型)

 

开发者可以使用准备好的物模型文件来进行快速导入。点击左上角“快速导入”,选择物模型文件智能水族箱物模型并上传,就能够生成案例对应的物模型。




 

生成后的效果如下:




 

定义好物模型后,需要发布物模型上线,并发布产品,以使变更生效。






 

产品及其物模型创建完成后就可以创建这个产品的设备了。


2.3、创建设备及获取三元组

 

点击左侧栏中“设备“,在筛选框中选择要添加设备的产品,点击“添加设备”。这里这里我们命名为“test_device”,开发者也可以根据自己的喜好来命名。




 

生成的设备如下。




 

开发者也可以选择“批量添加”,一次性添加多个设备,并生成随机的DeviceName。




 

点击前往“查看”按钮,就可以看到此设备的详细信息了。




 

点击右上角的“查看”按钮,就能看到设备的三元组信息了。

三元组是物联网设备端和物联网云端设备相关联的唯一标识符,在设备端连接云端的时候会使用三元组信息和云端进行鉴权,鉴权通过之后云端会认为设备已激活并上线。




 

再次前往物联网平台的设备信息页面,若设备运行正确,此时应该可以看到设备名右侧的状态由“未激活”变为“在线”。选中“实时刷新”,可以看到数据实时从设备上报到物联网平台。设备上云成功。




3、设备端开发

3.1、开发环境

 

在进行下一步之前请确保ESP32开发环境已经搭建完毕。详情请参考esp32开发环境的说明。


3.2、创建解决方案

 

如下图所示,在Haas Studio中创建项目。先选择左侧的“开发板型号”再从右侧的案例中选择“智能水族箱”案例点击“立即创建”即可。




Python脚本的详细说明请参考脚本内嵌的文字版注释


 

之后,对代码进行如下修改。


填写Wi-Fi名称及密码

 

在main.py中,填写可用的Wi-Fi名称及密码。


# wifi连接的的ssid和pwd定义

wifiSsid = "请填写您的路由器名称"

wifiPassword = "请填写您的路由器密码"

修改设备端三元组

 

在main.py中,填写创建的设备三元组信息。关于设备三元组的获取,请参考创建设备及获取三元组中的步骤。


# 三元组信息

productKey     = "产品key"

deviceName     = "设备名称"

deviceSecret   = "设备密钥"

4、运行结果

 

将代码推送到设备中运行后,会自动连接物联网平台。此时,再次前往物联网平台的设备信息页面,若设备运行正确,此时应该可以看到设备名右侧的状态由“未激活”变为“在线”。




5、物联网应用开发

 

IoT Studio 提供了应用快速开发的能力,可以很方便地与物联网平台进行联动。本节的开发工作也将围绕 IoT Studio展开。


5.1、新建“普通项目”

 

打开IoT Studio官网,在项目管理中新建一个空白项目,如下图所示,将此项目命名为“智能水族箱项目”,开发者也可以根据自己的喜好来命名。






5.2、关联产品

 

为了使本项目能够获取到目标设备的定位信息,我们首先需要将该项目和我们在前一节创建的产品“智能水族箱”绑定。


 

在项目控制台,点击左侧的“产品”,点击“关联物联网平台产品”。此时可以看见我们创建的“智能水族箱”。点击选中,并勾选“关联产品同时关联其下所有设备”,以便该项目可以访问到所有设备的信息。




5.3、创建“移动应用”



5.4、界面开发及交互配置

 

按下图所示依次将控件拖入界面中,可以根据自己需要添加所需要的控件。各组件的说明请参考IoT Studio组件说明。




 

按下图所示,为每一个按钮配置交互行为,当点击特定按钮时,设置设备物模型标签为对应值。首先配置传感器数据。




 

接下来配置开关按钮对应的数据源。




5.5、预览及发布应用

 

点击右上角按钮预览或发布,即可在手机上使用应用,可以实现随时随地远程控制啦。


————————————————

版权声明:本文为CSDN博主「HaaS技术社区」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/HaaSTech/article/details/126350264

相关实践学习
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
相关文章
|
存储 JSON 应用服务中间件
|
9月前
|
机器学习/深度学习 编解码 算法
对三种雷达信号调制类型的识别及MATLAB实现
对三种雷达信号调制类型的识别及MATLAB实现
|
Java 开发者 微服务
从单体到微服务:如何借助 Spring Cloud 实现架构转型
**Spring Cloud** 是一套基于 Spring 框架的**微服务架构解决方案**,它提供了一系列的工具和组件,帮助开发者快速构建分布式系统,尤其是微服务架构。
2428 70
从单体到微服务:如何借助 Spring Cloud 实现架构转型
|
机器学习/深度学习 人工智能 自动驾驶
人工智能与就业市场:工作的变革
【10月更文挑战第31天】随着人工智能技术的飞速发展,就业市场正经历深刻变革。本文探讨了人工智能对就业市场的积极影响,如创造新兴职业、提高生产效率和促进职业转型,以及面临的挑战,如自动化取代部分工作、技能转型需求增加和就业市场两极分化。文章提出了加强教育培训、推动产业升级和创新、完善社会保障体系等应对策略,旨在为读者提供全面而深入的理解。
|
人工智能 自然语言处理 物联网
阿里万相重磅开源,人工智能平台PAI一键部署教程来啦
阿里云视频生成大模型万相2.1(Wan)重磅开源!Wan2.1 在处理复杂运动、还原真实物理规律、提升影视质感以及优化指令遵循方面具有显著的优势,轻松实现高质量的视频生成。同时,万相还支持业内领先的中英文文字特效生成,满足广告、短视频等领域的创意需求。阿里云人工智能平台 PAI-Model Gallery 现已经支持一键部署阿里万相重磅开源的4个模型,可获得您的专属阿里万相服务。
|
数据采集 人工智能 文字识别
如何绕过Captcha并使用OCR技术抓取数据
在现代网页数据抓取中,Captcha作为一种防止爬虫和恶意访问的措施,广泛应用于各种网站。本文介绍如何使用OCR技术绕过文字Captcha,并通过代理IP技术提高爬虫的隐蔽性。具体实现包括下载Captcha图片、使用Tesseract OCR识别文字、通过代理IP抓取目标数据。示例代码展示了如何抓取大众点评的商家信息。
777 0
如何绕过Captcha并使用OCR技术抓取数据
|
机器学习/深度学习
清华领衔发布多模态评估MultiTrust:GPT-4可信度有几何?
【8月更文挑战第16天】近日,清华大学等机构发布了MultiTrust多模态评估研究,旨在全面评估大型语言模型的可信度。这是首个统一的多模态基准,覆盖真实性、安全性等五大方面,包含32个任务。研究对21个现代模型进行了实验,揭示了可信度问题和风险,强调了提高模型可靠性的重要性。结果显示开源模型在可信度上落后于专有模型,特别是在安全性方面。此外,研究还发现了模型在鲁棒性、公平性和隐私方面的挑战。论文已发布于arxiv.org。
420 1
|
存储 监控
显示器中的HDR10、HDR400、HDR600有什么区别?
HDR10是通用的HDR标准,无需支付版权费;HDR400、HDR600等是VESA的DisplayHDR等级,根据亮度、色域、色深等指标划分,数值越高代表性能越强,如HDR400要求400nit亮度,HDR600则需600nit以上。
|
算法 程序员
程序设计的五个步骤
程序的设计过程,并不是立刻就进行代码设计,一般来讲包括设置文件的存放位置、说明书的设计、代码设计、程序测试、程序调试、注释说明。
1565 6
|
机器学习/深度学习 数据采集 算法
乳腺癌预测:特征交叉+随机森林=成功公式?
乳腺癌预测:特征交叉+随机森林=成功公式?
538 0
乳腺癌预测:特征交叉+随机森林=成功公式?

热门文章

最新文章