2. 综合实验五 - 综合环境监测¶
2.1. 实验介绍¶
2.1.1. 实验物料清单¶
名称 |
数量 |
备注 |
---|---|---|
野火BMP280气压计 |
1 |
|
野火光敏电阻模块 |
1 |
|
野火热敏电阻模块 |
1 |
|
野火ADS1115 ADC模块 |
1 |
|
野火MQ135空气检测模块 |
1 |
|
DHT11温湿度传感器 |
1 |
扩展板板载 |
2.1.2. 实验现象介绍¶
程序通过MQTT协议,将各传感器数据发布上云。
2.1.3. 实验接线¶
野火BMP280气压计模块接线:
BMP280气压计模块 |
扩展板SPI接口丝印 |
---|---|
3V3 |
3V3 |
GND |
GND |
CS |
P13 |
DO |
DO |
DI |
DI |
CLK |
CLK |
其中CS使用扩展GPIO的P1_3。
光敏电阻模块和热敏电阻模块接线:
光敏电阻模块 |
GPIO扩展 |
热敏电阻模块 |
GPIO扩展 |
---|---|---|---|
AO |
AO |
||
DO |
P1_0 |
DO |
P1_1 |
GND |
GND |
GND |
GND |
VCC |
3.3v |
VCC |
3.3v |
野火ADS1115 ADC模块接线,将模块插入扩展板的I2C接口:
MQ135空气检测模块接线,其中AO脚与ADS1115的A0脚相连:
MQ135 |
|
---|---|
AO |
A0(ADS1115) |
5V |
5V |
GND |
GND |
2.2. 实验操作¶
2.2.2. 阿里云物联网云平台创建其它物模型¶
本节测试需要将BMP280的大气压值、DHT11的温湿度值、光敏状态值、热敏状态值、MQ135空气质量值上传到平台。 我们将在上一章创建的产品下继续添加和修改物模型,具体创建步骤可以参考上一章节。最终添加和修改后的物模型如下, 注意数据类型全都是字符串型:
2.2.3. 获取程序¶
综合实验五程序位于lubancat_rk_code_storage/expansion_board/experiment/experiment_5_environmental-monitoring, 将experiment_5_environmental-monitoring整个文件夹拷贝到板卡。
本实验要用到的外设配置已经在配置文件configuration.json中定义,运行程序前可按实际情况修改。
2.2.4. python代码测试¶
python测试代码为:python/main.py
修改程序,将程序中使用的三元素信息替换成自己的:
1 2 | cd python
vi main.py
|
1 2 3 4 5 | ''' main.py '''
productKey = "a1pwoLHW8Tl"
deviceName = "lubancat"
deviceSecret = "160cacffcba7b83f2eb896403688dac5"
|
执行如下命令运行程序:
1 2 | # 运行程序
sudo python main.py
|
2.2.5. c代码测试¶
c测试代码为:c/main.c
修改程序,将程序中使用的三元素信息替换成自己的:
1 2 | cd c
vi main.c
|
1 2 3 4 5 | /* main.c */
#define EXAMPLE_PRODUCT_KEY "a1pwoLHW8Tl"
#define EXAMPLE_DEVICE_NAME "lubancat"
#define EXAMPLE_DEVICE_SECRET "160cacffcba7b83f2eb896403688dac5"
|
执行如下命令运行程序:
1 2 3 4 5 | # 编译程序
sudo make
# 运行程序
sudo ./main
|