本文主要是介绍基于STM32的盲人守护精灵设计与实现,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
目录
1 适用场景
2 开发环境
3 技术框架及硬件元件
4 实现功能
6 实物图
7 关键源码
1 适用场景
盲人拐杖、智能导盲杖
2 开发环境
下位机开发环境:Keil µVision5
上位机开发环境:腾讯云平台
小鱼儿电子设计微信号:IOTElectronics(可获取视频)
3 技术框架及设计思路
- 技术框架:STM32单片机+WiFi无线通信技术+腾讯云平台+微信小程序+微信公众号提醒
- 设计思路:系统上电后,拐杖开启智能模式,使用者在行走中,拐杖检测到前方障碍物,会语音提示报警,使用者不慎摔倒时,拐杖会发出警报声,引起周围行人注意并实施援救,当周围环境亮度过暗时,会亮灯提示其他人,同时当前方有积水时,会报警和语音提示。
- 硬件元件:STM32单片机+5516光线传感器+DS1302实时时钟模块+水滴传感器+ADXL345三轴加速度传感器+JQ8400语音播报模块+E18-D80NK漫反射光电红外传感器+OLED12864屏幕+LED照明灯+按键+蜂鸣器+ESP8266 WiFi无线通信模块
4 实现功能
- LED灯照明:当光线传感器监测环境的光线值低于30%时,自动开启照明灯进行照明,防止行人碰撞,并为行人照明。
- 红外障碍物监测:当红外传感器检测前方有障碍物,语音提示"有障碍"(2s提醒一次)。
- 跌倒报警:当三轴加速度传感器检测到盲人摔倒,蜂鸣器会报警,在跌倒时间大于30s,未起来,通过微信公众号提醒监护人。
- 积水监测:当拐杖触到积水会语音提示"有积水"(2s提醒一次)。
- 按键功能:按下按键可以实现时间设定、语音播报温度和时间以及开机和关机。
- 微信小程序远程监测:通过WiFi无线通信技术将监测的相关数据上传至腾讯云平台,进而发送至微信小程序,并通过公众号进行提醒。
5 实物图
6 关键源码
SENSOR sensor;
unsigned int adc;
unsigned int cnt_beep;
unsigned int cnt_display=0;
unsigned char flag_beep;
unsigned char cnt_play;
unsigned char start=1;
void App_GetSensor_Point(void)
{static unsigned char delay;float f_temp;if(start==0){flag_beep=0;sensor.led=0;sensor.play=0; return;}if(delay++>100){delay=0;ADXL345_GetValue();}if(timer3cnt>1000) { cnt_play++;volume_config(30);f_temp=0.0625*DS18B20_GetTemp();sensor. Temperature=f_temp; if(sensor. Temperature>99)sensor.temperature=0;sensor.fall=adxlInfo.status; if(READ_IR==0)sensor.ir=1;else sensor.ir=0; ADC_Read(10); if(sensor. Water>30)sensor.water=1;else sensor. Water=0; if(sensor. Light<40)sensor.led=1;else sensor.led=0; flag_beep=0;if(sensor.fall||sensor. Water)flag_beep=1;sensor. Play=0;if(sensor.ir) sensor. Play|=0x01;if(sensor. Water)sensor. Play|=0x02;timer3cnt=0; } display_info();
}
这篇关于基于STM32的盲人守护精灵设计与实现的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!