【单片机毕业设计】【mcuclub-dz-692】基于单片机的电瓶车监测及防盗系统设计
本项目设计了一套基于STM32F103C8T6单片机的电瓶车智能监测及防盗系统。系统通过4G模块AIR780实现手机远程布防/撤防控制,并集成多种传感器:SW-420震动检测模块防盗报警、电压检测电瓶状态、XGZP6847胎压监测、MPU6050倾倒检测以及GPS定位功能。异常情况(移动、电瓶被盗、胎压异常、倾倒)会触发声光报警并通过4G发送短信提醒,手机APP同步显示信息。系统还支持电子锁远程控
一、基本介绍
项目名:基于单片机的电瓶车监测及防盗系统设计
项目编号:mcuclub-dz-692
单片机:STM32F103C8T6
功能简介:
1、通过4G模块AIR780,手机端APP可远程控制布防、撤防
2、在布防情况下,通过震动检测模块SW-420检测电频车是否发生移动,如果发送移动,通过4G模块发送短信“车辆移动,请速速查看!”,手机APP上也显示相应提示信息,并同时声光报警提醒
3、在布防情况下,通过电压检测检查电瓶是否被偷,如果被偷,通过4G模块发送短信“电瓶被偷,请速速查看!”,手机APP上也显示相应提示信息,并同时声光报警提醒
4、通过胎压检测模块XGZP6847检测胎压,如果胎压异常,通过4G模块发送短信“胎压异常,请速速查看!”,手机APP上也显示相应提示信息,并同时声光报警提醒
5、通过MPU6050模块检测电瓶车是否倾倒,如果倾倒,通过4G模块发送短信“电瓶车倾倒,请速速查看!”手机APP上也显示相应提示信息,
6、通过北斗+GPS模块,可锁定电瓶车位置,手机APP获取电瓶车经纬度信息
7、手机端可以控制电动车的电子锁,通过手机 APP 等方式进行锁车操作
8、低电量提醒,骑电动车时,在上位机app上撤防后,能够检测电动车电量,当电量过低时,通过语音播报模块CN-TTS语言播报“电量过低”,手机 APP上可实时显示电量,并能设置最低电量
9、通过OLED显示电压、胎压
二、资料总览
实物资料

三、32单片机部分资料展示
1、实物图展示
单片机型号:STM32F103C8T6
供电接口:TYPE-C
板子类型:PCB集成板,厚度1.2,两层板(上下层覆铜接地)
器件类型:元器件基本上为插针式,个别降压芯片会使用贴片式。
2、原理图展示
软件版本:AD2013
电路连线方式:网络标号连线方式
注意:原理图只是画出了模块的引脚图,而并不是模块的内部结构图
3、PCB图展示
由原理图导出,中间有一个项目编号,隐藏在单片机底座下,插入单片机后不会看到。
两层板,上下覆铜接地。
四、系统框图
绘制软件:VISIO
本设计以STM32F103C9T6单片机为核心控制器,加上其他的模块一起组成整个系统,其中包含中控部分、输入部分和输出部分。中控部分采用了STM32F103C9T6单片机,其主要作用是获取输入的部分数据,经过内部处理,控制输出部分。输入由五部分组成,第一部分是震动检测模块检测电频车是否发生移动;第二部分是电压检测检查电瓶是否被偷;第三部分MPU6050模块检测电瓶车是否倾倒;第四部分是GPS模块,可锁定电瓶车位置;第五部分是压力检测模块,可检测车辆胎压值;第六部分是供电模块,通过该模块可给整个系统进行供电。输出由三部分组成,第一部分时显示模块,显示电量和胎压信息;第二部分是语音播报模块,当电量过低时,语言播报“电量过低”。第三部分是声光报警模块,检测电频车是否发生移动,电瓶被偷,胎压异常,都会进行声光报警。第四部分是继电器模块,控制车锁打开关闭;除此之外还有4g模块,与手机进行数据通信,系统框图如图3.1所示。
五、部分程序展示
软件版本:keil5
注意:逻辑程序和驱动程序分开,分布于main.c和其他.c文件
/**********************************
函数名:处理函数
传参值:无
返回值:无
**********************************/
void Manage_Function(void)
{
if(display_num == 0) //测量界面
{
if(flag_defense == 1) //布防模式
{
if(SHOCK == 0)
{
if(flag_zd == 0)
{
Air_4G_Send_Msg_Chinese(36,"0001000D91688142443606F70008168F668F8679FB52A8FF0C8BF7901F901F67E5770BFF01"); //车辆移动,请速速查看!
flag_zd = 1;
}
upward_zd = 1;
alarm_zd = 0;
}
else
{
flag_zd = 0;
}
if(volt_value <= 40)
{
if(flag_dp == 0)
{
Air_4G_Send_Msg_Chinese(36,"0001000D91688142443606F7000816753574F688AB5077FF0C8BF7901F901F67E5770BFF01"); //电瓶被偷,请速速查看!
flag_dp = 1;
}
flag_volt = 1;
}
else
{
flag_volt = 0;
flag_dp = 0;
}
}
else //撤销布防模式
{
if(volt_surplus < volt_surplus_min)
{
if(time_num % 200 == 0)
{
Huart2_Send_Str("电量过低");
}
}
}
if(pressure_value > pressure_max || pressure_value < pressure_min)
{
if(flag_ty == 0)
{
Air_4G_Send_Msg_Chinese(36,"0001000D91688142443606F700081680CE538B5F025E38FF0C8BF7901F901F67E5770BFF01"); //胎压异常,请速速查看!
flag_ty = 1;
}
}
else
{
flag_ty = 0;
}
if(MPU6050_accel_y > 5000 || MPU6050_accel_y < -5000)
{
if(flag_qd == 0)
{
Air_4G_Send_Msg_Chinese(38,"0001000D91688142443606F7000818753574F68F66503E5012FF0C8BF7901F901F67E5770BFF01"); //电瓶车倾倒,请速速查看!
flag_qd = 1;
}
}
else
{
flag_qd = 0;
}
if(alarm_zd < 6 || flag_volt == 1 || pressure_value > pressure_max || pressure_value < pressure_min ) //任何异常情况声光报警
{
if(time_num % 20 == 0)
{
ALERT = !ALERT;
if(upward_zd == 1) //如果因为震动引起,响3次
{
alarm_zd++;
}
}
}
else //否则声光报警关闭
{
ALERT = 0;
}
}
else //设置界面,关闭加热、制冷及声光报警
{
ALERT = 0;
}
if(flag_finish_5s == 1) //5秒上传一次数据
{
flag_begin_5s = 0;
Air_4G_SendData();
flag_begin_5s = 1;
}
}
更多推荐



所有评论(0)