APP下载

智能停车系统的设计与实现

2022-08-30王良彬丘昌鑫

科技创新与应用 2022年23期
关键词:车牌低功耗车位

王良彬,丘昌鑫,李 佳

(广州新华学院FabLab创新中心,广东 东莞 523133)

随着科技的飞速发展和交通工具的普及,汽车作为人类社会中最主要的交通工具之一,起着重大作用。汽车数量的增长,使城市停车资源日益紧缺,机动车保有量与停车位供应量越发突出,停车难、乱停车、“一位难求”一直未得到有效解决。因此,停车难是急需解决的问题。据调查,在城市地区,30%的交通拥堵是由于司机为了找到一个停车位而造成的。在我国大城市停车位比例为1∶0.8,中小城市为1∶0.5,加上某些不文明停放现象,所以停车位供需缺口大、停车位空置率高问题并存。

传统无线智能停车管理系统,是在车位上安装监测器,采用两跳技术将车辆占用信息上报给运营商无线网络(车辆检测器通过ZigBee等短距传播技术将信息上报给汇聚网关,汇聚网关再通过2G/3G网络上报),然后通过停车管理平台进行智能管理。这种系统的缺点是无线通信采用非授权频段,私建无线局域网,存在信号干扰问题。汇聚网关覆盖范围有限,通常一个汇聚网关只能管理10~15个车位,需要大量架设网关,效率低下,设备成本及部署成本较高。

本文设计了一种基于NB-IoT(窄带物联网)[1]的智能停车系统,采用NB-IoT技术的车辆检测器直接将信息上报给运营商无线网络,具有覆盖广、连接多、成本低、功耗少和网络安全性高等特点,且不再需要汇聚网关。结合GPS进行车位的定位和智能车牌识别,再通过移动端进行车位信息展示和业务办理,形成高效智能停车系统。

1 智能停车系统总体设计

1.1 系统介绍

本文设计的智能停车系统由硬件和移动端组成,其中硬件以STM32L476超低功耗芯片作为系统的控制器,BC95-TE-B(NB-IoT)模块为车位锁的通信节点,将车位信息发送给NB-IoT基站,GPS模块进行精准定位车位位置和图像识别模块进行车牌的识别。系统运行流程如图1所示,NB-IoT模块将车位信息采集并实时地传送给后台云服务器,并在移动端中显示。用户通过移动端可以进行车位信息的查看和预约,并上传自己的车牌号码。系统将车智能导航到指定的车位,车到达车位后,通过图像识别模块进行车牌的识别,进行开锁并进行自动计费。

图1 系统运行流程

1.2 系统架构设计

本系统分为4层,自上而下分别由用户应用层、云端服务器层、NB-IoT通信层和智能监测终端层组成[2],系统总体架构如图2所示。

图2 系统总体架构

用户应用层提供车位信息数据的显示、用户业务的办理以及车位的引导功能。云端服务器层分别为应用服务器和数据库服务器,数据库服务器接收自NBIoT通信发射站发送的车位信息数据并存储,通过应用服务器与应用进行数据连接。NB-IoT通信层为NBIoT通信基站,通过窄宽带通信技术连接服务器和监测终端,进行数据实时传输。智能监测终端层负责数据的收集,由STM32L476芯片、NB-IoT模块、GPS模块和图像识别模块进行数据检测和反馈。

2 硬件设计

2.1 STM32L476处理器

本系统采用STM32L476超低功耗芯片作为系统的控制器。STM32L476系列是基于高性能ARM Cortex-M4 32位RISC内核的超低功耗微控制器(MCU),具有高达80 MHz工作频率,还嵌入了高速存储器(闪存高达1 MB,SRAM高达128 KB),灵活的外接存储器控制器(FSMC)[3],SPI闪存接口和各种增强的I/O,方便接入其他模块和使用。本系统使用时间比较长久,需要很低的功耗,为了满足系统低功耗[4-5],同时对实时性要求很高(快速唤醒)的环境下,采用stop2模式,该模式下SRAM中的数据不会丢失,同时LSE,LSI时钟不会关闭,支持多种的唤醒方式(RTC唤醒,LPTIM唤醒和LPUART唤醒)。

2.2 NB-IoT通信模块

NB-IoT通信模块采用BC95-B5芯片进行通信,支持低功耗设备在广域网的蜂窝数据连接[6],也被叫作低功耗广域网(LPWA)。NB-IoT支持待机时间长、功耗低、同时还能提供非常全面的蜂窝数据连接覆盖,一个扇区能够支持10万个连接,且支持低延时敏感度、超低的设备成本和低设备功耗[7]。BC95-B5使用电信运营商,使用CoAP协议[8]并通过电信IoT平台对接的方式接入,再通过HTTPS协议到达服务器端。使用AT+NBAND?指令查询当前模块的频段,本次测试使用电信模块,因此NBAND设置为5。使用AT+NCONFIG?将AUTOCONNECT和R_0354_0338_SCRAMBLING设置为TRUE开启自动注网模式和查看扰码功能是不是和基站对应上。该模块唤醒NB-IoT通信模块并收发数据部分控制代码如下:

voidInit_Key_GPIO(void)

{

GPIO_InitTypeDefGPIO_InitStructure;

RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA|RCC_AHBPeriph_GPIOC,ENABLE);

GPIO_InitStructure.GPIO_Pin=KEY2_PIN|KE Y3_PIN;

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IN;

GPIO_InitStructure.GPIO_Speed=GPIO_Spe ed_2MHz;

GPIO_Init(KEY2_3_PORT,&GPIO_InitStructure);

GPIO_InitStructure.GPIO_Pin=KEY1_PIN;

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IN;

GPIO_InitStructure.GPIO_Speed=GPIO_Speed_2MHz;

GPIO_Init(KEY1_PORT,&GPIO_InitStructure);

}

2.3 定位模块

定位模块采用Air530定位模块[5,9-10],Air530模块是一款高性能、高集成度的多模卫星定位导航模块。体积小、功耗低,可用于车载导航、智能穿戴和无人机等GNSS定位的应用中。模块支持GPS/Beidou/GLONASS/Galileo/QZSS/SBAS。采用了射频基带一体化设计,集成了DC/DC、LDO、LNA、射频前端、基带处理、32位RISC CPU、RAM、FLASH存储、RTC和电源管理等功能。采用NMEA0183数字协议[11],提供超高的性能,即使在弱信号的地方,也能快速、准确定位。Air530管脚图如图3所示,RXD串口和TXD串口分别连接STM32L476的PA2和PA3串口进行数据的输入和输出GPS NMEA格式定位数据。

图3 Air530管脚图

2.4 车牌识别模组

车牌识别模组[12]采用OV7670摄像头模块和边缘检测算法[13]进行车牌的识别。当车抵达指定的车位时,OV7670摄像头模组启动进行车牌的拍照,并上传。后台应用进行对照片车牌的定位,字符分割和字符识别等关键技术,识别出的车牌和上传车牌进行对比,判断是否开锁。车牌识别流程如图4所示,根据顶帽变换和底帽变换公式(1)方法来增强图片对比度。

图4 车牌识别流程

式中:enhanced(g)表示对比度增强后的图像;g表示源图像;Tophat(g)表示对g的顶帽变换;Bothat(g)表示对g的底帽变换。

进一步采用Sobel算子对图像作水平差分,以求取垂直边缘,加上了高斯平滑和二值化操作。对图像识别精度大大提高。边缘检测部分代码如下。

I1=rgb2gray(I);

I2=edge(I1,'sobel',0.15,'both');

se=[1;1;1];

I3=imerode(I2,se);

se=strel('rectangle',[25,25]);

I4=imclose(I3,se);

I5=bwareaopen(I4,2000);

[y,x,z]=size(I5);

myI=double(I5);

tic

Blue_y=zeros(y,1);

for i=1:y

for j=1:x

if(myI(i,j,1)==1)

Blue_y(i,1)=Blue_y(i,1)+1

end end end

3 软件设计与实现

软件设计功能如图5所示,软件设计包括Web服务器和微信小程序2部分。Web服务器是针对管理员而开发的,方便管理者查看停车信息和小程序用户反馈的信息。管理者通过平台可以修改机器的使用时间,查看设备的情况并进行维修,使智能停车系统更加简便和友好。

图5 软件设计功能

移动客户端采用微信小程序来开发[14],因为微信已经成为人们每日必会打开的APP,用户量巨大,且小程序开发成本低,开发周期短,有效节约开发时间、人力成本和功能成本等,非常适合本系统软件的开发。用户可以通过小程序注册登录,登录页面可进行停车车辆信息的查看,车位停放地点,自己车位约定的信息以及停车费结算。进入查找停车位界面,用户输入停车地点,系统查询是否有车位,显示车位的信息,点击车位进行预约,输入车牌号码进行预约。用户可点击车位导航页面进行导航到预约的车位。注册登录页面和预约页面如图6所示。

图6 小程序注册登录及预约页面

4 实验结果分析

智能停车系统最终能够实现硬件监测系统获取车位的定位、状态和时间信息,提交给数据库。小程序可以显示车位的信息和进行业务的办理,进行导航到指定的车位,监测硬件进行车牌识别,进行车位的解锁并计算时间。小程序可结算停车费。智能停车系统最终通过小程序实现智能停车,提高停车的效率。

在车牌识别测试中,提供车辆车牌照片进行识别,识别原车牌照片如图7(a)所示,识别结果如图7(b)所示。通过测试,识别的不同车牌识别测试数据见表1。

表1 不同车牌识别测试

图7 原车牌照片及识别结果图

5 结论

本文设计并利用STM32L476超低功耗芯片、NBIoT模块、Air530定位模块、车牌识别模组和小程序实现了智能停车系统。可通过小程序对车位信息和定位进行查看,选中车位输入车牌号进行预约,规划路线导航至车位进行识别开锁。通过小程序查看停车时间和费用并支付,实现找车位、精准导航和支付一体化。本系统的设计,使车主快速找到停车位,降低寻找车位的时间,减少城市道路拥堵,提高城市空车位的利用率。

猜你喜欢

车牌低功耗车位
一种高速低功耗比较器设计
为了车位我选择了环保出行
我自己找到一个
数字图像处理技术在车牌识别系统中的应用
一种宽带低功耗四合一接收机设计
一个车位,只停一辆?
低功耗便携智能翻译手套系统
低功耗技术在驾驶行为管理模块中的应用
第一张车牌
基于MATLAB 的车牌识别系统研究