天然气是国人目前家庭里边烹饪和取暖所用的主要燃料,其主要成分是甲烷(CH4),同时还含有少量的丙烷、乙烷、丁烷等其他少量气体。天然气本身无色无味,密度比空气小。如果发生天然气泄漏,其在空气中浓度达到5%~15%时,遇到明火就会爆炸。如今天然气普及,每年由于因使用不当、人为因素(忘记关闭开关)造成的燃气泄漏爆炸事故接连不断。
本案例内容就以此为背景讲述如何一步一步打造一个燃气泄漏检测系统。
1、硬件准备
完成本案例只需要如下硬件:
- ESP32一套
- MQ2燃气传感器一个
- RGB LED一个(或红色LED一个)
- 连接线若干
硬件连线图如下图所示:
2、物联网平台开发
2.1、开通公共实例
对于第一次使用物联网平台的读者,需要开通实例以使用物联网平台的功能。这里可以使用免费的公共实例进行开发。
在物联网平台中,左上角选择“华东2-上海”,点击“公共实例”,即可开通。开通后点击“公共实例”,即可进入控制台进行产品创建。
开通物联网平台功能之后,需要完成下面的3个步骤完成云端设备的创建:
- 创建云端产品
- 创建产品属性(物模型)
- 创建云端设备(获取三元组)
2.2、创建云端产品
点击上图中的“公共实例”,即可进入控制台进行产品创建。然后,点击创建产品按钮,如下图所示。
在新建产品设定页面按照下图所示,设定“产品名称”,选择所属的“自定义品类”(自定义品类的物模型为空,需要自己创建,也可以通过导入外部物模型的方式导入),节点类型选择“直连设备”,联网方式选择“Wi-Fi”,数据格式选择“ICA标准数据格式”,检验类型和认证方式选择默认设定即可。还可以根据开发者自己的需求在“产品描述”页面添加针对此产品的描述。
选择之后,点击“确认”按钮,即可完成产品创建。返回“产品”页面之后可以看到产品类表中会出现刚刚创建的“燃气检测系统”的产品,如下图所示。
2.3、创建产品属性(物模型)
点击上图中的“查看”按钮,即可看到产品信息,Topic列表,功能定义,数据解析等跟产品相关功能的设定。点开“功能定义”标签页,可以看到设备物模型定义。
标识符是设备端上报设备属性状态的消息中需要使用的标识符,并且只有在设备上报的属性内容符合“数据定义”中的数据取值范围的时候才会被物联网平台记录,否则会被物联网平台认定为非法属性而过滤掉。
本节我们选择导入物模型的方式来创建此系统需要的物模型信息,点击上图中的”编辑草稿“按钮。然后按照下图的步骤,选择本地文件导入燃气检测系统物模型。
物模型导入成功后可以看到网页出现了我们刚刚导入的物模型属性。其中alarmLight代表的是燃气等的报警状态,1处于报警状态,0代表没有报警;gasVoltage代表MQ2燃气传感器检测到的电压值。
产品及其物模型创建完成后就可以创建这个产品的设备了。
2.4、创建云端设备(获取三元组)
在产品列表页面中,点击”燃气检测系统“后的“管理设备”,就会进到设备管理页面。
在“设备”页面点击“添加设备”按钮,如下图所示。