基于STM32的智慧共享停车位设计_第1页
基于STM32的智慧共享停车位设计_第2页
基于STM32的智慧共享停车位设计_第3页
基于STM32的智慧共享停车位设计_第4页
基于STM32的智慧共享停车位设计_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

[17],如果接收产生一个输出脉冲,其宽度可以用于确定脉冲传播的距离。下图为雨滴传感器模块的程序编写。图4-4传感器模块程序图HC-SR04超声波传感器的测距模块不仅具有接触式的距离检测的功能,还具有非接触式的距离检测的功能,而且所测的距离可以达到2厘米至400厘米,在测量过程中难免会存在误差,但是HC-SR04超声波传感器的精度的测量竟然可以达到3毫米的。图4-5传感器模块工作流程图4.3显示模块本小节所需要实现的功能是在LCD1602液晶显示屏上可以显示字符信息,程序框架如下:(1)编写LCD1602显示函数。(2)编写主函数。图4-6显示模块工作流程图第一步是先将LCD1602进行初始化,然后对其写入命令以及写数据操作,我们在写出写命令和写数据的时候,11.0592MHz调用可延时1ms的代码(此代码可由辅助软件计算写出)。图4-7显示模块程序图LCD1602的显示函数:(1)下图为编写LCD1602显示模块的光标位置的设置。图4-8光标位置程序图(2)下图为编写LCD1602显示模块的清屏函数的程序。图4-9清屏函数程序图下图为LCD1602显示模块的主页面函数程序:图4-10主页面程序图第5章系统设计结果目前已经完成了关于基于STM32的智慧共享车位设计的原理图设计、电路板的布线、各元器件的采购和焊接工作以及软件程序的编写和调试工作,可以实现上述关于基于STM32的智慧共享停车位的三种模式的基本功能和调节车辆停驶单价、检测雨淹报警等功能。该设计主要通过超声波传感器检测到物体模拟车辆驶入与离开,通过步进电机的正转和反转来模拟车位锁的打开与关闭,通过绿色LED灯的亮灭来模拟有无车辆停驶在该停车位,通过LCD1602显示屏来显示车辆在该停车位的停驶时间、停驶费用和步进电机状态等信息。当雨滴传感器模块检测到雨水时,红色的LED灯会变亮,蜂鸣器会报警,提醒车主车辆存在危险。5.1车位无车状态当车位处于无车的状态时,LCD1602显示屏的第一行将显示日期和时间,第二行显示“STATE:”为步进电机的运行状态,“Tingzhi”表示电机现在正处于停止状态,此时绿色LED灯熄灭。如下图5-1所示。图5-1车位无车状态演示图5.2车位打开状态超声波传感器模块检测有无车辆驶入,当射频模块识别到正确的IC卡且超声波传感器模块识别到有车辆正在驶入时,LCD1602显示屏的第一行显示“TIME:”为车辆停驶的具体时间,第二行显示“STATE:”为步进电机的运行状态,“Zhengzhuan”表示步进电机现在正处于正转状态来模拟车位锁打开,电机开始正转,绿色的LED灯点亮。如下图5-2所示。图5-2车位打开状态演示图5.3车位关闭状态当车主拿走IC卡并驾驶车辆离开停车位,超声波传感器检测不到车辆时,LCD1602显示屏的第一行显示“FEIYONG”,表示车辆在该停车位停驶的具体费用,第二行显示“STATE:”表示步进电机的运行状态,“Fanzhuan”表示步进电机现在正处于反转状态模拟车位锁关闭,电机开始反转,绿色的LED灯熄灭。如下图5-3所示。图5-3车位关闭状态演示图参考文献琼阁.\o"基于PX4的地面无人车避障系统及路径规划研究"基于PX4的地面无人车避障系统及路径规划研究[D].\o"北方工业大学"北方工业大学,2019张健毅.\o"基于超声信号的小波变换研究"基于超声信号的小波变换研究[D].山东师范大学,2009韩菲菲.\o"人头部声场的分布和强度"人头部声场的分布和强度[D].南京航空航天大学,2016罗素枫.\o"智能教学机器人避障系统的研究"智能教学机器人避障系统的研究[J].\o"科学咨询(科技·管理)"科学咨询(科技·管理),\o"2012(07)"2012(07)汪明磊.\o"智能车辆自主导航中避障路径规划与跟踪控制研究"智能车辆自主导航中避障路径规划与跟踪控制研究[D].合肥工业大学,2013许琴.\o"提高MCS51单片机超声测距精度"提高MCS51单片机超声测距精度[J].科技资讯,2018李达.\o"基于物联网技术的实验室设备运行管理系统"基于物联网技术的实验室设备运行管理系统[D].长安大学,2013韩国强;李德刚;张济航.\o"基于蓝牙技术的仪表无线搜寻系统的设计"基于蓝牙技术的仪表无线搜寻系统的设计[J].石油化工自动化,2015于方文.\o"基于无源RFID平台的儿童疫苗免疫信息管理系统设计与应用"基于无源RFID平台的儿童疫苗免疫信息管理系统设计与应用[D].西安电子科技大学,2011王翠珍;王春雷;唐金元.\o"基于射频识别技术的实验室设备管理系统"基于射频识别技术的实验室设备管理系统[J].仪表技术,2013林凯.\o"公路桥梁施工技术分析"公路桥梁施工技术分析[J].科技创新与应用,2020严芳芳.\o"基于太阳能发电的温室大棚参数检测装置的研究"基于太阳能发电的温室大棚参数检测装置的研究[D].河北农业大学,2013王思为.\o"企业用户停车服务管理信息系统设计与分析"企业用户停车服务管理信息系统设计与分析[D].南京邮电大学,2015王美龄;王丽梅;张佳媛.\o"光伏变频器开关电源的设计"光伏变频器开关电源的设计[C].第十二届沈阳科学学术年会论文集(理工015陈康.\o"旋转LED显示器设计与研究"旋转LED显示器设计与研究[D].成都理工大学,2018朱利强;杨富强;曹秀珍.\o"基于单片机的液位深度检测与控制系统设计"基于单片机的液位深度检测与控制系统设计[J].科技创业月刊,2012曹开颜;付明慧;吴俊涛.\o"基于超声波避障的导盲系统设计"基于超声波避障的导盲系统设计[J].电子制作,2021LZhang,CLi,CChen,MZhang,XianTechnologicalUniversity.DesignofsharedparkinglocksystembasedonSTM32[J].ForeignElectronicMeasurementTechnology,2018.KPark,GIMa,JHYi,YCho,SPark.SmartphoneRemoteLockandWipeSystemwithIntegrityCheckingofSMSNotification[J].IEEEInternationalConferenceonConsumerElectronics,2011.DusanTeodorovic,PantaLudc.Anintelligentdriverlocationsystemforsmartparking[J].TheMISSuperStrategiesConference,2016:26-29.Huang

Hongyang,Song

Chai,Ting

Jin,Tian

Taoling,Hong

Chen,Di

Zhang,Gao

Danni.

Design

of

An

IoT

based

Smart

Parking

Lock[J].Journal

of

Physics:

Conference

SeriesVolume

1952,2021(4).Juan

A.Vera-Gómez,Alexis

Quesada-Arencibia,Carmelo

R.

García,Raúl

Suárez

Moreno,Fernando

Guerra

Hernández.An

Intelligent

Parking

Management

System

for

Urban

Areas[J].Sensors,2016(6).附录A#include"led.h"#include"delay.h"#include"sys.h"#include"usart.h"#include"key.h"#include"string.h"#include"lcd1602.h"#include"timer.h"#include<hcsr04.h>#include"Myspi.h"#include"rc522.h"#include"sim900a.h"u16distan_max=20;u8wt_flag=0;unsignedcharID[4],TYPE[4]; //所读卡的ID、类型unsignedcharID_BUFF[8];unsignedcharCount;unsignedintIC_num=0;charEnglish_message[]={"Hello!!"};//英文短信内容charphonenumber[]={};//接受短信的号码charChinese_message[]={"60A876848F668F865B58572853719669002C8BF76CE8610FFF01FF01"};//中文短信内容对应于您的车辆存在危险,请注意!!//中文号码修改0031为115027830220charUnicode_phonenumber[]={"00310035003000320037003800330030003200320030"};u8sms_time=0;u8send_smsflg=0;//年月日时分秒23-05-1121:34:30u8yeal=23;u8month=05;u8day=16;u8hour=12;u8minute=05;u8second=30;u8TimeDisplay[18]={0};u8displayflg=1;u8Mode=0;u8danjia=5;//单价u8keytime=0;voidWarn(void)//蜂鸣器报警{ u8ii;for(ii=0;ii<3;ii++){Buzzer=0;delay_ms(100);Buzzer=1;delay_ms(100);} }voidPass(void)//蜂鸣器报警{ Buzzer=0;delay_ms(500);Buzzer=1;}//IC卡扫描函数voidic_scan(){if(PcdRequest(PICC_REQALL,TYPE)==0) //寻天线区内全部卡{ if(PcdAnticoll(ID)==0) { ID_BUFF[0]=ID[1]/100+0x30; ID_BUFF[1]=ID[1]/10%10+0x30; ID_BUFF[2]=ID[1]%10+0x30; ID_BUFF[3]=ID[0]/100+0x30; ID_BUFF[4]=ID[0]/10%10+0x30; ID_BUFF[5]=ID[0]%10+0x30; ID_BUFF[6]='\0'; Count=ID[1];//卡片的第一位// LCD1602_Show_Str(3,0,ID_BUFF);// Pass(); if(Count==131||Count==25) //有卡,设置的两张卡,ID[1]卡片第一位转换成10进制0x83、0x19 { ic_t=0; ic_flag=1; } } }}u8test=0;intmain(void){ u8buf1[4]; u8buf2[11]; intdistance1; u8keyval=0; delay_init(); NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //设置NVIC中断分组2:2位抢占优先级,2位响应优先级 Usart1_Init(19200); TIM3_Int_Init(39,7199);//10Khz的计数频率 TIM2_Int_Init(9999,7199);//定时1秒 GPIO_Configuration(); delay_ms(100); LCD1602_Init(); //显示屏初始化 LCD1602_Write_Cmd(0x01); //清屏 LCD1602_Show_Str(0,0,"Welcometothe"); LCD1602_Show_Str(0,1,"ParkingSystem");delay_ms(500); delay_ms(500); delay_ms(500); delay_ms(500); LCD1602_Init(); //显示屏初始化 LCD1602_Write_Cmd(0x01); //清屏 LCD1602_Show_Str(0,1,"STATE:"); HC_SR04_1_Init(); //超声波模块初始化 DJ_Init(); KEY_Init(); //系统初始化 LED_Init(); LED1=1; InitRc522(); //初始化射频卡模块 while(1) { key1_init(); delay_ms(1); keyval=KEY_Scan(0); if(keyval==KEY0_PRES)//按键1 { Mode=1; keytime=0; danjia++; } elseif(keyval==KEY1_PRES)//按键4 { Mode=1; keytime=0; danjia--; if(danjia==1) danjia=1; } if(Mode==1) { /*显示单价*/ buf2[0]=(danjia)/10+0x30; buf2[1]=(danjia)%10+0x30; buf2[2]='$'; buf2[3]=''; buf2[4]=''; buf2[5]=''; buf2[6]=''; buf2[7]=''; buf2[8]=''; buf2[9]=''; buf2[10]='\0'; LCD1602_Show_Str(7,0,buf2); LCD1602_Show_Str(0,0,"danjia:"); //超时退出 if(keytime>5) { keytime=0; Mode=0; LCD1602_Write_Cmd(0x01); //清屏 LCD1602_Show_Str(0,1,"STATE:"); } } else { if(zx_flag==0) { if(displayflg==1) { /*显示时间月-日时:分:秒*/ TimeDisplay[0]=month/10+0x30; TimeDisplay[1]=month%10+0x30; TimeDisplay[2]='-'; TimeDisplay[3]=day/10+0x30; TimeDisplay[4]=day%10+0x30; TimeDisplay[5]=''; TimeDisplay[6]=hour/10+0x30; TimeDisplay[7]=hour%10+0x30; TimeDisplay[8]=':'; TimeDisplay[9]=minute/10+0x30; TimeDisplay[10]=minute%10+0x30; TimeDisplay[11]=':'; TimeDisplay[12]=second/10+0x30; TimeDisplay[13]=second%10+0x30; LCD1602_Show_Str(0,0,TimeDisplay); } LCD1602_Show_Str(6,1,"Tingzhi"); } if(zx_flag==1) { LCD1602_Show_Str(6,1,"Zhengzhuan"); } if(zx_flag==2) { LCD1602_Show_Str(6,1,"Fanzhuan"); } distance1=Senor_Using_1(); //测距 if(distance1>999)distance1=999; buf1[0]=distance1/100+0x30; buf1[1]=distance1/10%10+0x30; buf1[2]=distance1%10+0x30; buf1[3]='\0';// LCD1602_Show_Str(2,1,buf1); ic_scan(); //IC扫描 if(distance1<20)//超声波无识别 { wt_flag=1; LED1=0; } else//超声波有识别 { LED1=1; //LED灯控制 wt_flag=0; } if((distance1<20)&&(ic_flag==1)) //有卡且有物体 { js_flag=1; if((ZXflag==0)&&(StopFlag==1)) { ZXflag=1; //正转 StopFlag=0; zx_flag=1; } } if((distance1>=20)&&(ic_flag==0))//无卡且无物体 { js_flag=0; if((ZXflag==1)&&(StopFlag==1)) { delay_ms(500);//考虑实际情况延时后电机反转 delay_ms(500); delay_ms(500); delay_ms(500); ZXflag=0; //反转 StopFlag=0; zx_flag=2; buf2[0]=(sec*danjia)/1000+0x30; buf2[1]=(sec*danjia)/100%10+0x30; buf2[2]=(sec*danjia)/10%10+0x30; buf2[3]=(sec*danjia)%10+0x30; buf2[4]='$'; buf2[5]=''; buf2[6]=''; buf2[7]=''; buf2[8]=''; buf2[9]=''; buf2[10]='\0'; LCD1602_Show_Str(8,0,buf2); LCD1602_Show_Str(0,0,"FEIYONG:"); disp

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论