# SmartParking_1 **Repository Path**: lucien2009/smart-parking_1 ## Basic Information - **Project Name**: SmartParking_1 - **Description**: .NET6和VUE开发的一个开源智能停车场管理系统,后期时间允许会将后端使用java实现 - **Primary Language**: C# - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 15 - **Created**: 2024-04-10 - **Last Updated**: 2024-04-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 1 背景 经过多天的观察,发现市面上的停车场监控系统都过于老旧,在此契机之下,尝试开发一套智能停车场监控系统。 2 技术选型 系统使用前后端分离的方式开发,跨平台部署。 2.1 前端 系统前端使用VUE3开发,必要时使用前端开源框架Element UI,并使用axios实现Ajax请求。 2.2 后端 系统后端前期用.Net6开发,使用Ocelot网关,JWT身份认证,IServiceCollection依赖注入,ORM框架使用EF Core,使用AutoMap对象关系映射,缓存使用Redis,不使用持久化,数据库使用MySql,消息推送使用RabbitMQ(.netcore cap),前后端实时通信使用WebSocket(SignalR),动态配置、服务注册、服务发现使用nacos,主键生成器使用Yitter,使用Skywalking实现全链路监控,定时任务使用XXL-Job。 微服务架构图: http://naotu.baidu.com/file/c9e343006d65a3e7fec3480821f27b7a?token=413d860b1840254d ![微服务架构图](Doc/%E5%8E%9F%E5%9E%8B/SmartParking.png) 后期系统后端会使用spring boot开发,数据库使用mysql 8以后的版本,ORM框架使用Mybatis,安全认证使用spring security。 2.3 设备控制类 系统出入停车场、停车库使用海康威视摄像机,并使用java调用海康威视组件进行车号识别,车位使用地磁式车辆感应装置并辅以人工校准车辆位置。 2.4 手持设备 手持设备使用安卓系统,用以在道路两侧、停车库补录车辆信息,可以考虑使用微信、支付宝小程序实现。 3 功能设计 3.1 网站功能 3.1.1 停车场、停车位监控页面 停车场分为立体停车场(多层)、平面停车场(可以存在多个分区)、道路两侧或人行道停车场,各种类型的停车场应当以不同的形态展示。 3.1.1.1 停车场监控 展示停车场内车位总数、占用数、最近进出车、僵尸车数量、月卡年卡车数量、当日收益等,并在单个停车场界面展示停车位占用信息,位置不准时可以手动校正。 3.1.1.2 查询车辆位置信息 输入车牌号,查询车辆的位置信息,如无当前位置信息,展示其历史出入信息。 3.1.1.3 在场车辆详细信息展示 展示车辆的详细信息,包括车辆进出时间,进出照片,停车时长,停车费等信息。 3.1.2 车辆出入停车场历史 用于根据条件查询多个或单个停车场的车辆出入场记录,并能导出数据。 3.1.3 数据统计 3.1.3.1 停车辆数统计 根据条件统计一个或多个停车场或某个区域在一段时间内的停车辆数,并能导出数据。 3.1.3.2 停车费统计 根据条件统计一个或多个停车场或某个区域在一段时间内的停车费预计收入、实际收入等数据,并导出数据。 3.1.4 操作平台页 整体展示停车场数据,如当前停车辆数、僵尸车辆数、月卡车辆数、临时车辆数、停车数量趋势,停车费收入趋势、最近进出车数据、当天停车辆数、当天停车费收入等。 3.2 服务器、相机、手持终端 3.2.1 出入闸机 获取车辆出入停车场闸机的数据(车牌号和车辆图片),并写入数据库中。 3.2.2 车位地磁车辆感应装置 获取地磁感应装置的数据,得到车位占用和空闲状态数据。 3.2.3 手机或手持终端 用以补录或调整车辆位置信息,路边或没有出入闸机的停车场用于车辆入库的核对,并能实现简单的查询功能。 4 意义和价值 智能停车系统可以大大加强停车场管理员对车位和车辆的监控,能够有效的提高车位利用率。