[开源]现代交通信号控制系统,可对接多种协议的交通信号控制设备
开源系统流程管理
![[开源]现代交通信号控制系统,可对接多种协议的交通信号控制设备](https://yy123.ink/api/img/1782588784492-njbxwn.jpg)
一、开源项目简介
OpenATC-Admin
这是一款开源的现代交通信号控制软件,可应用于小型、大型、特殊路口等多种场景,并且包含了灯控、检测、故障以及用户管理等多种功能,快来使用它吧!
二、开源协议
使用MulanPSL-2.0开源协议
三、界面展示
界面展示


四、功能概述
OpenATC开源交通信号控制平台,主要为城市交通提供实时控制的软件及与软件兼容的信号机,所开发的系统适合国内大、中、小城市的各类交通控制中心。
OpenATC开源交通信号控制平台是全新开发的一套软件产品,开发中一面研究自适应混合交通控制理论,一面广泛研究国内外同类产品,特别是借鉴SCOOT、SCATS等先进系统的经验,力争使本产品达到国际领先水平,并充分满足中国智能交通的需要。
该平台是一个开源的智能路口交通控制系统,因此更着重于知识充分共享,给其他行业开发者以及科研院所中的研究者进行学习与创意接力,从而起到有利于推动整个智能交通行业发展的作用。
OpenATC管理平台,包含设备管理,设备配置,权限管理,绿波路线,勤务路线等多种功能。通讯协议开源开放,支持对接多种协议的交通信号控制设备。具有最实用的信控优化算法,并可对接OpenATC虚拟环境,对更高级的信控算法进行扩展和验证。
五、技术选型
准备工作
在进行开发之前,您需要安装以下程序:
- git
- Java 1.8+
- Maven 3.3.9+
- npm 5 or above
- Vue
前端部分
技术栈
Component
技术
框架
Vue
构建工具
npm
UI
element-ui
语法
ES2015+
HTTP客户端
axios
开发环境部署
``` bash # 克隆项目 访问一飞开源:https://code.exmay.com/ 下载 # 打包OpenATC-Config-web项目(该项目为平台主项目的组件项目,故需要提前打包,不然直接编译会出现找不到edgebase-front依赖包的情况。) npm install npm run package # 安装OpenATC-Admin-web主项目依赖 npm install # 建议不要用cnpm 安装有各种诡异的bug 可以通过如下操作解决npm速度慢的问题 npm install --registry=https://registry.npm.taobao.org # 启动服务 npm run dev # 访问 访问地址为:http://localhost:9528 # 构建测试环境 npm run build:stage # 构建生成环境 npm run build:prod # 预览发布环境效果 + 静态资源分析 npm run preview --report ```
具体流程参考 REAMDE.md 文档。
注意:
isShowGisMenu 控制地图是否显示,默认不显示。 gisNormal 是2D地图服务参数,需要自行。 gisStatellite 是3D地图服务参数,需要自行配置。 目前可支持OSM地图、高德地图和百度地图。 例如高德地图,离线地图配置,详情参考:REAMDE.md 文档
后端部分
技术栈
Component
技术
框架
SpringBoot
安全
Shiro + JWT
数据库
PostgreSQL(10.1+)
持久化
JPA
构建工具
Maven (3.5.2+)
JDK
1.8
具体流程参考 REAMDE.md 文档。
注意
- 为了方便开发,我们提供了这种前后端分离的部署模式,主要的好处是支持前端热部署,在这种模式下,前端会通过9528端口访问后端的restful api接口,获取数据, 这将导致跨域访问的问题。因此我们在OpenATC-admin-ui/config/index.js添加了支持跨域访问的配置,当前端通过npm run dev单独启动时,这些配置将被激活,允许跨域访问
评论
