Python 智能硬件设计
PIoT 课程

Python 智能
硬件设计

课程定位
课程定位

在 ESP32-S3 开发板
(ESP32-S3-DevKitC-1)上
用 Python 做智能交通

智能交通.md 一;综合系统渲染图局部

课程定位 · 6+1:6 个小实验叠加成综合系统 实验1 智能路灯 实验2 交通环境检测 实验3 智能交通灯 实验4 超声波车辆检测 实验5 停车场道闸 实验6 视觉系统 实验7 智能交通综合系统 集成实验 1–6 的硬件与程序 后一个实验以加法模式继承前一个实验,且可相对独立运行

智能交通.md 一(3)、三;实验7 §7.1.1

课程定位 · Python 三层架构(实验7 图7-2) 业务层 应用逻辑层 智能路灯控制 交通环境检测 智能交通灯控制 超声波车辆检测 停车场道闸控制 视觉道闸控制 中间层 数据处理层 传感器数据融合 时间统一管理 数据缓存队列 事件分发机制 模块间通信接口 接入层 硬件驱动层 光敏 74HC595 人体 雨滴 AHT30 OLED 超声波 蜂鸣器 数码管 RFID 步进电机 红外遥控 继电器 串口摄像头 通过 API 接口通信(上层调用下层) 通过 API 接口通信(上层调用下层)

实验7 §7.1.3(4)、§7.2.2

课程定位 · 分步打板,合成综合实验大板 ESP32-S3 开发板 (ESP32-S3- DevKitC-1) AHT30 温湿度、OLED I2C 总线 RFID 读卡器 SPI 接口 串口摄像头 与 I2C 分时复用 UART LED 灯、数码管 多个位移寄存器分组 74HC595 蜂鸣器 / 继电器 复用,实验时选其一 GPIO 步进电机 / 数码管 B 分时控制 GPIO 模块众多,部分引脚需要复用或分时使用

实验7 §7.1.4(2);§7.1.1(2)

学习目标 01 · 传感与驱动模块的 Python 驱动 感知 光敏传感器 人体传感器 雨滴传感器 AHT30 温湿度 超声波传感器 RFID 读卡器 红外接收器 串口摄像头 执行与显示 74HC595 位移寄存器 LED 灯 2 位数码管 OLED 显示屏 蜂鸣器 步进电机 继电器 按键

实验1–6 §x.2;实验7 表7-1

学习目标 02 · 加法继承:一套工程贯穿七个实验 实验1 实验2 实验3 实验4 实验5 实验6 实验7 · 原有代码保持不变 · 接入层:添加新硬件驱动 · 业务层:主循环添加新模块调度 · 功能逐步增加,代码逐步积累

智能交通.md 一(3);实验7 §7.2.3

学习目标 03 · AI 终端:端侧采集,电脑识别 ESP32-S3 开发板 (ESP32-S3- DevKitC-1) 串口摄像头 采集车辆图像 UART 继电器 控制摄像头电源 GPIO OLED 显示屏 显示车牌号和时间 I2C 按键 触发采集 / 手动开闸 GPIO WiFi(ESP32-S3 内置) 无线网络 TCP 电脑客户端 上传图像 → 车牌识别 → 返回识别结果

实验6 §6.1.3(3);智能交通.md 一(5)

项目和章节 · 七个实验一览 实验1 智能路灯 实验2 交通环境 检测 实验3 智能交通灯 实验4 超声波 车辆检测 实验5 停车场道闸 实验6 视觉系统 实验7 智能交通 综合系统 6 个小实验 +1 综合

实验1–7 docx 标题

实验1 智能路灯 · 控制系统流程图 初始化 GPIO · ADC 74HC595 · 串口 读取光敏传感器 光照低于 天黑阈值? 否 清除天黑标志,关闭所有 LED 是 设置天黑标志 节能调光:8 个白色 LED 全亮 10 s 60% 亮 5 s 30% 亮 5 s 人体感应 检测到有人: 黄色感应灯亮 5 s 主循环

实验1 §1.4.1

交通环境检测
渲染图
实验 2

交通环境检测

  • 雨滴检测下雨时 OLED 提示注意车速
  • 光照检测天黑时提示打开车灯
  • 温湿度检测AHT30 实时显示温湿度

实验2 §2.1.1、表2-1;交通环境检测系统渲染图

实验2 交通环境检测 · 硬件控制示意图 ESP32-S3 开发板 (ESP32-S3- DevKitC-1) 雨滴传感器 检测信号 光敏传感器 模拟电压信号 ADC AHT30 温湿度传感器 I2C 总线 OLED 显示屏 I2C 总线 AHT30 与 OLED 共用 I2C 总线

实验2 §2.1.4(2)

实验3 智能交通灯 · 硬件控制示意图 ESP32-S3 开发板 (ESP32-S3-DevKitC-1) 串行数据 74HC595 ① 交通指示灯 2 个路口 · 红黄绿 串行数据 74HC595 ② 数码管 路口一倒计时 串行数据 74HC595 ③ 数码管 路口二倒计时 PWM 信号 蜂鸣器 黄灯闪烁时警示

实验3 §3.1.4(2)

超声波车辆检测
渲染图
实验 4

超声波车辆检测

  • 超声波传感器测距并换算车速
  • OLED显示屏实时显示车速
  • 车辆过近时蜂鸣提示

实验4 §4.1.1;超声波车辆检测系统渲染图

实验5 停车场道闸 · 硬件控制示意图 ESP32-S3 开发板 (ESP32-S3- DevKitC-1) RFID 读卡器 识别车辆 RFID SPI 接口 红外接收器 遥控信号 按键 1、按键 2 按下为低电平 GPIO 步进电机 经 ULN2003 驱动板,升降道闸 四相脉冲 红色 LED 道闸关闭 GPIO 绿色 LED 道闸开启 GPIO

实验5 §5.1.4(2)

实验6 视觉系统 · 视觉道闸流程图 初始化 WiFi 连接 · 继电器断开 OLED · 按键 · 串口 OLED 显示“等待车辆” 按键 1 或 WiFi 远程触发? 否 是 闭合继电器,接通摄像头 UART 采集 JPEG 图像 WiFi(TCP)上传到电脑客户端 电脑客户端识别车牌并回传 OLED 显示车牌号和时间 步进电机开启道闸 自动关闸,断开继电器 回到等待 客户端识别步骤 图像预处理 车牌定位 字符分割 字符识别

实验6 §6.4.1、§6.2.5

智能交通综合系统
渲染图
实验 7 · +1

智能交通综合系统

  • 集成实验1–6 全部硬件
  • 业务层串联成综合系统

实验7 §7.1.1;智能交通综合系统渲染图(局部)

实验7 智能交通综合系统 · 流程图 ① 三层架构初始化 接入层 中间层 业务层 ② 主循环调度 选择运行模式 独立运行 只运行选定实验 协同运行 依次调度各模块 演示 自动循环切换 ③ 模块协同(经中间层) 环境检测数据 影响路灯亮度 车辆检测 触发道闸 / 视觉识别 RFID 识别 与车牌识别相互验证 循环

实验7 §7.4.1

典型实训 · 每个实验一闭环 01 开发要求 实验文档 x.1 节 02 硬件控制原理 实验文档 x.2 节 03 电路 EDA 设计 实验文档 x.3 节 04 系统设计 实验文档 x.4 节

实验1–7 章节结构 x.1–x.4

典型实训 · 加法继承:工程目录 lib/ lib/ access_layer.py middleware_layer.py service_container.py lib/drivers/ aht30.py hcsr04.py mfrc522.py shift_register.py ssd1306.py stepper.py lib/services/ aht30_service.py day_night_service.py digit_service.py gate_service.py hcsr04_service.py oled_service.py rfid_service.py street_light_service.py traffic_light_service.py 接入层、中间层不变,新实验只在业务层加逻辑

实验7 §7.2.3、§7.4.2(3);据素材组目录卡 p18-lab-reuse-lib-tree 重排

综合实验大板
渲染图
成果

综合实验大板

  • 综合大板焊接
  • 系统测试
  • 大实验报告

智能交通.md 三.7(4)(5);实验7 §7.1.1(5);综合系统渲染图(局部)

成果

电脑客户端

  • 实验过程在电脑客户端上实时显示
  • 端侧采集,电脑客户端识别实验6 视觉系统
  • 客户端界面演示录屏画面数据为示意数据

智能交通.md 一(4);实验6 §6.1.3(3);PIoT 智能交通客户端演示录屏

配套设备 · ESP32-S3 主控 GPIO 排针 ESP32-S3 模组 天线 USB 接口 BOOT RST ESP32-S3 开发板(ESP32-S3-DevKitC-1) 内置 WiFi 支持蓝牙 运行 MicroPython

实验7 表7-1;实验1–7 §x.1.3(2)

配套设备 · 传感与驱动模块 光敏传感器 实验1/2 D203S 人体传感器 实验1 HL-01 雨滴传感器 实验2 AHT30 温湿度传感器 实验2 OLED 显示屏 实验2/4/6 74HC595 位移寄存器 实验1/3/5 2 位数码管 实验3 蜂鸣器 实验3/4 HC-SR04 超声波传感器 实验4 RC522 RFID 读卡器 实验5 28BYJ-48 步进电机 实验5 HX1838 红外接收器 实验5 按键 实验5/6 继电器 实验6 串口摄像头 实验6

智能交通.md 引脚表;实验7 表7-1

PIoT

谢谢观看

广西感知物联科技有限公司 · PIoT