一. 系统概述
智能头盔系统集成了多种功能,如安全警示、环境监测、定位和信息显示,提升用户在各种环境中的安全性与便利性。具体功能包括:
-
超声波障碍检测:
- 使用双超声波传感器监测前后障碍物。
- 检测到障碍物时,蜂鸣器发出警报。
-
温湿度监测与风扇控制:
- 监测头盔内的温度和湿度。
- 温度过高时,风扇自动启动降温。
-
光照检测与灯光控制:
- 监测环境光强。
- 光强较弱时,头盔灯光自动点亮。
-
GPS定位与APP显示:
- 集成GPS模块获取位置信息。
- 位置信息通过无线通信传输至APP,显示在地图上。
-
信息显示:
- 显示屏上显示信息:“道路千万条 安全第一条 温度: ℃”。
-
无线通信:
- 使用无线模块将温度、障碍物和位置信息传输至APP。
二. 电路设计
电路设计采用Altium Designer:
- 系统控制核心是STM32F103C8T6单片机最小系统。
- 光敏电阻模块用于光强检测,与单片机的模拟输入连接。
- DHT11用于检测温湿度,通过one-wire总线连接单片机的GPIO。
- GPS定位模块ATGM336H用于位置检测,通过UART串口连接单片机。
- HC-SR04超声波模块检测前后障碍,通过Echo和Trig与单片机的GPIO连接。
- 0.96寸OLED12864用于数据显示,采用IIC总线连接单片机。
- 使用ESP8266-01S将数据上传服务器,通过UART串口与单片机通信。
三.程序设计
#include "sys.h"
#include "delay.h"
#include "adc.h"
#include "math.h"
#include "key.h"
#include "OLED_I2C.h"
#include "ultrasonsic.h"
#include "Beep_Led_Relay.h"
#include "Control_Report_To_Police.h"
int main(void)
{
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级
delay_init(); //延时函数初始化
Beep_init(); //PC15
Led1_init(); //PB12
Relay_init(); //PB8
Hcsr04_Timer2_Init(); //PB13 PB14 PA6 PA7
TIM4_Init(300,7200);
OLED_Init(); //PB6 PB7
Adc_Init(); //PA1
Beep=1;
while(DHT11_Init()){} //PA12
OLED_CLS();
OLED_ShowCN(32,2,0);
OLED_ShowCN(32+16,2,1);
OLED_ShowCN(32+32,2,2);
OLED_ShowCN(32+32+16,2,3);
ALi_ESP8266_GPIO_Init();//PA2 PA3 PA8
MQTT_Buff_Init();
AliIoT_Parameter_Init();
delay_ms(500);
OLED_CLS();
OLED_ShowCN(24,0,6);
OLED_ShowCN(40,0,7);
OLED_ShowCN(56,0,8);
OLED_ShowCN(72,0,9);
OLED_ShowCN(88,0,10);
OLED_ShowCN(24,3,11);
OLED_ShowCN(40,3,12);
OLED_ShowCN(56,3,13);
OLED_ShowCN(72,3,14);
OLED_ShowCN(88,3,15);
OLED_ShowCN(24,6,4);
OLED_ShowCN(42,6,5);
OLED_ShowCN(90,6,16);
while(1)
{
OLED_Display_Cotrol(); //显示控制函数
}
}
上位机的HBuilder X开发的,并使用阿里云服务器进行数据处理,使用的框架是uniapp框架。
四.资料内容
24-32-06