14. 综合实验三 - 环境感应设备¶
14.1. 实验介绍¶
14.1.1. 实验物料清单¶
名称 |
数量 |
备注 |
---|---|---|
OLED屏 |
1 |
|
DHT11温湿度传感器 |
1 |
扩展板板载 |
按键 |
1 |
扩展板板载 |
5v电机风扇 |
1 |
|
循迹模块 |
1 |
|
舵机 |
1 |
14.1.2. 实验现象介绍¶
OLED屏幕显示DHT11温湿度数据,板载按键Key1可以开启或关闭电机风扇,关闭时任何条件都不转。 风扇开启时默认缓速旋转,当温度上升到一定值时高速旋转,温度下降到一定值时回到缓速旋转。 循迹(反射式红外)模块被触发时,舵机旋转45度并停顿2秒后回位,用于模拟手动触发设备开关。
14.1.3. 实验接线¶
OLED屏接线:参考《8.I2C接口 OLED屏幕》章节。
5V电机风扇接线:将扩展板的AO1或BO1接电机正级,AO2或BO2接电机负极。
红外寻迹模块:
光敏电阻模块 |
GPIO扩展 |
---|---|
DO |
P1_0 |
GND |
GND |
VCC |
3.3v |
舵机接线:参考《12.舵机接口》章节。
14.2. 实验操作¶
14.2.2. 获取程序¶
综合实验三程序位于lubancat_rk_code_storage/expansion_board/experiment/experiment_3_environmental-unit, 将experiment_3_environmental-unit整个文件夹拷贝到板卡。
本实验要用到的外设配置已经在配置文件configuration.json中定义,运行程序前可按实际情况修改。一般 只需要修改按键的输入事件,因为每次上电后,这些输入事件的注册顺序不一定每次相同。
14.2.3. python代码测试¶
python测试代码为:python/main.py
执行如下命令运行程序:
1 2 3 4 5 | # 进入python程序目录
cd python
# 运行程序
sudo python main.py
|
14.2.4. c代码测试¶
c测试代码为:c/main.c
执行如下命令运行程序:
1 2 3 4 5 6 7 8 | # 进入c程序目录
cd c
# 编译程序
make
# 运行程序
sudo ./main
|
程序运行后,OLED会显示温湿度数据。通过按下板载按键Key1使能和关闭电机,在电机使能状态下, 环境温度低于阈值时,电机匀速旋转,当环境温度超过阈值时,电机加速旋转。电机在关闭状态下不受温度控制。 当红外模块检测到物体时,舵机旋转45度,2秒后复位。