飞凌方案丨基于RK3399、i.MX6UL实现智能交通信号灯

2023-11-01 15:31

本文主要是介绍飞凌方案丨基于RK3399、i.MX6UL实现智能交通信号灯,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

"红灯停、绿灯行、黄灯亮了等一等",还记得这首童谣么?如今随处可见的交通信号灯大家一定不在陌生,那你知道这些信号灯都隐藏着哪些“秘密”?跟着小编一起来了解一些交通信号灯背后的那些“秘密”以及 未来智能交通信号灯的发展趋势。

一、交通信号灯

交通信号灯由红灯、绿灯、黄灯组成。红灯表示禁止通行,绿灯表示准许通行,黄灯表示警示。

1、绿灯信号:绿灯信号是准许通行信号。按《交通安全法实施条例》规定:绿灯亮时,准许车辆、行人通行,但转弯的车辆不准妨碍被放行的直行车辆和行人通行。

2、方向指示信号灯:方向信号灯是指挥机动车行驶方向的专用指示信号灯,通过不同的箭头指向,表示机动车直行、左转或者右转。

3、人行横道灯信号:人行横道灯由红、绿两色灯组成。在红灯镜面上有一个站立的人形象,在绿灯面上有一个行走的人形象。人行横道灯设在人流较多的重要交叉路口的人行横道两端。灯头面向车行道,与道路中心垂直。

二、交通信号灯控制逻辑

以一个最常见的十字路口为例,东西南北四个方向各有一组红绿灯。

十字路口红绿灯,最常见的交通信号灯的控制逻辑是南北方向通行时,东西方向不通行;东西方向通行时,南北方向不通行。如果十字路口车流量很大,可能会是另外一套控制逻辑,比如每一个时刻只有一个方向为绿灯,其它都是红灯。平时见到的交通信号灯,绝大部分都是固定配时的,也就是红灯、绿灯时长固定不变,也有 非固定配时的,比如按照一天中的时间段、或者按照一个星期的不同日子来设置不同的配置方案,还有会根据路口的流量变化动态调整配时方案的。

三、为什么现在信号灯的设计越来越复杂?

开过车的朋友,尤其是新手司机来说,最怕经过情况比较复杂的路口。路面上不仅有复杂的导向线,路口处还有样式特别的红绿灯,一个方向可能会有多组灯,比如有直行灯、左转灯、右转灯、甚至掉头灯,总之各种情况都会有。 从表面上看,这些交通信号标志的类型似乎很复杂,在不同的情况下想要采取不同的方式去应对。其实万变不离其宗,看见交通信号灯只要遵循“红灯停,绿灯行”的原则即可。

为什么现在交通信号灯的设计越来越复杂?是因为我国主要大中城市的市内交通拥堵情况日益加重,特别是在交通高峰期,如果还是采用简单控制逻辑,那么整个区域的交通都可能面临瘫痪的处境,更合适的信号控制时间和转向配置方案,可以更加有效地改善交通拥堵情况。

四、交通信号灯背后的嵌入式

理工科的同学是否还记得那些年做过的实验,通过定时器+LED+数码管实现交通信号灯的演示。当然如此简单的演示方案,肯定不能满足日益复杂的交通现场环境,而现实中的交通信号灯控制是如何做到的呢?

交通信号控制系统是一个独立的系统,又是整个地区信号灯系统的一部分。是城市道路交通管理系统中对交叉路口、行人过街,以及环路出入口采用信号控制的子系统,主要包括交通工程设计、车辆信息采集、数据传输与处理、控制模型算法与仿真分析、优化控制信号调整交通流等。

在十字路口道路旁,都会有这么样的一个交通信号控制柜,针对于交通信号灯控制的交通信号机就安装于交通信号控制柜内,是现代城市交通系统的重要组成之一,用于城市道路交通信号的控制与管理。

交通信号机内部由单片机或者Linux的处理器作为 主控,外围有串口、网口、按键、显示屏、指示灯等接口。看似不复杂,但是由于它工作环境严酷、需要常年累月连续工作,对产品稳定、质量要求很高。小编通过检索各个嵌入式厂商针对交通信号机提供的解决方案,简单为大家梳理一下交通信号机的工作原理。

上面这张框架图很好的体现了 交通信号机内部主控系统是如何工作的。根据飞凌嵌入式提供的解决方案,简单梳理了各个接口连接的外设需求。以飞凌嵌入式的iMX6UL系列核心板为例,

■ 双网口冗余设计,当某一线路出现故障时,自动启动另外一条线路与指挥中心进行通信;

■ 8路串口,可外接多种传感器、检测器、GPS,保证系统的精确时钟;

■ USB接口,可外接U盘、鼠标,方便生成和下载参数;

■ 多路GPIO,实现多通道红绿灯控制;

■ 7寸、10.1寸高清屏幕显示,界面运行流畅;

■ 上行通道支持4G接口,WiFi热点方便参数配置;

■ 工业级主板,可在-40°C~+85°C温宽下运行,经多个的领域长期测试,保证产品在严苛环境下的性能稳定;

■ 采用Linux+QT开发,提供各个接口的Demo例程,可以更快速的开发产品,支持Linux3.14+QT4.8.5,Linux4.1.15+QT5.6。

五、什么是智能信号灯?是否可以解决拥堵问题?

同时,城市发展的日新月异以及居民生活水平的提高使得市政道路改建工程频繁、机动车保有量持续增加,这些变化都对城市交通分布特征带来了巨大的影响,对交通信号灯控制如何应对这些快速变化提出了挑战。

随着中国城市化与机动化进程的深入,交通拥堵问题日益突出,已成为制约城市发展的主要瓶颈之一。传统的缓解交通拥堵的解决方案例如:拓宽道路、加大路网密度、建立立体交通等越来越显示出其局限性,随着物联网、大数据、人工智能、信息技术的发展,交通部门意识到只有利用高科技手段才能改善日趋严重的交通问题。因此,对道路基础设施的“智能化”改造成为智能交通发展的必然趋势。交通信号灯是城市交通管理控制的重要手段,信号灯控制系统升级将有极大潜力缓解交通拥堵。

在人工智能技术高速发展的背景下,对路面交通设施设备进行数字化梳理和数字化采集上,基于图像处理及嵌入式系统的智能交通信号灯应运而生。它可以通过多个渠道进行感知和收集相关的交通数据,然后利用“智慧大脑”分析研判,计算出更合适的信号控制时间和转向配置方案,从而有效地改善交通拥堵情况。

六、智能交通信号灯需要“智能大脑”

智能交通信号控制系统解决方案,飞凌嵌入式提供的解决方案是这样的,在各路口的交通信号灯现场的路边控制柜内,交通信号机可采用飞凌嵌入式的相关嵌入式ARM核心板设计,推荐的是FET3399-C核心板,多种AI框架支持, Android7.1系统,支持Tensorflow Lite、Caffe等多种AI框架;并提供针对RK3399平台深度学习目标检测开发的优化方案例程(RKSSD),利用了OpenCL、RGA等硬件加速模块,以降低CPU负载。

■ 具备2个ARM Cortex-A72内核和4个ARM Cortex-A53内核,最高主频1.8GHz,GPU采用Mali-T864,视频处理性能强大,可结合视频车辆检测器,利用路口电子警察的摄像机进行车辆信息的采集,进行车辆信息的采集;

■ 具备多种显示接口,包括HDMI2.0、MIPI-DSI、EDP1.3、DP1.2,最大分辨率达4K,可灵活选择显示接口,超大高清分辨率屏幕显示;

■ 具备ADC 5路,可通过监测信号灯的电压、电流、功率来监视信号灯的状态;

■ 可通过4G/5G与实时路况数据进行交换,实时改变控制方案,解决突发交通拥堵问题。在拥堵频发的核心区域、潮汐流明显的主干道区域,能发挥更加强大的协调路况的功能;

■ 多系统支持,Linux4.4+QT5.12、Android7.1、Forlinx Desktop18.04,python3.6语言编程,让开发变得更简单。

■ 由于飞凌嵌入式嵌入式计算机硬件的产品优势,使得交通灯可以有效规避“停机”或延迟等故障,同时可以高效处理海量的数据与控制任务。

扩展阅读:

-------------------------------------------------------------------

相关信号机专业术语

有两个不太容易理解的概念,叫做 相位和 相位阶段,官方的解释我就不引用了,说下自己的理解。

简单来说,一个路口有几组灯,就对应几个相位,比如上述的十字路口,东西南北各一组灯,那就是4个相位。

相位阶段,车辆“通行权”的每一次转换就称为一个信号相位阶段,一个信号周期内"通行权"的交接几次,就是几个信号阶段。

相位周期,就比较好理解了,就是该相位的信号灯各种灯色轮流显示一次所需的时间总和。

还有一些其他术语就不解释了。

智能交通信号灯背后的嵌入式密码-飞凌嵌入式 - 飞凌嵌入式行业资讯 - 保定飞凌嵌入式技术有限公司

这篇关于飞凌方案丨基于RK3399、i.MX6UL实现智能交通信号灯的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/323983

相关文章

使用Java解析JSON数据并提取特定字段的实现步骤(以提取mailNo为例)

《使用Java解析JSON数据并提取特定字段的实现步骤(以提取mailNo为例)》在现代软件开发中,处理JSON数据是一项非常常见的任务,无论是从API接口获取数据,还是将数据存储为JSON格式,解析... 目录1. 背景介绍1.1 jsON简介1.2 实际案例2. 准备工作2.1 环境搭建2.1.1 添加

Java实现任务管理器性能网络监控数据的方法详解

《Java实现任务管理器性能网络监控数据的方法详解》在现代操作系统中,任务管理器是一个非常重要的工具,用于监控和管理计算机的运行状态,包括CPU使用率、内存占用等,对于开发者和系统管理员来说,了解这些... 目录引言一、背景知识二、准备工作1. Maven依赖2. Gradle依赖三、代码实现四、代码详解五

java如何分布式锁实现和选型

《java如何分布式锁实现和选型》文章介绍了分布式锁的重要性以及在分布式系统中常见的问题和需求,它详细阐述了如何使用分布式锁来确保数据的一致性和系统的高可用性,文章还提供了基于数据库、Redis和Zo... 目录引言:分布式锁的重要性与分布式系统中的常见问题和需求分布式锁的重要性分布式系统中常见的问题和需求

SpringBoot基于MyBatis-Plus实现Lambda Query查询的示例代码

《SpringBoot基于MyBatis-Plus实现LambdaQuery查询的示例代码》MyBatis-Plus是MyBatis的增强工具,简化了数据库操作,并提高了开发效率,它提供了多种查询方... 目录引言基础环境配置依赖配置(Maven)application.yml 配置表结构设计demo_st

python使用watchdog实现文件资源监控

《python使用watchdog实现文件资源监控》watchdog支持跨平台文件资源监控,可以检测指定文件夹下文件及文件夹变动,下面我们来看看Python如何使用watchdog实现文件资源监控吧... python文件监控库watchdogs简介随着Python在各种应用领域中的广泛使用,其生态环境也

el-select下拉选择缓存的实现

《el-select下拉选择缓存的实现》本文主要介绍了在使用el-select实现下拉选择缓存时遇到的问题及解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录项目场景:问题描述解决方案:项目场景:从左侧列表中选取字段填入右侧下拉多选框,用户可以对右侧

Python pyinstaller实现图形化打包工具

《Pythonpyinstaller实现图形化打包工具》:本文主要介绍一个使用PythonPYQT5制作的关于pyinstaller打包工具,代替传统的cmd黑窗口模式打包页面,实现更快捷方便的... 目录1.简介2.运行效果3.相关源码1.简介一个使用python PYQT5制作的关于pyinstall

使用Python实现大文件切片上传及断点续传的方法

《使用Python实现大文件切片上传及断点续传的方法》本文介绍了使用Python实现大文件切片上传及断点续传的方法,包括功能模块划分(获取上传文件接口状态、临时文件夹状态信息、切片上传、切片合并)、整... 目录概要整体架构流程技术细节获取上传文件状态接口获取临时文件夹状态信息接口切片上传功能文件合并功能小

python实现自动登录12306自动抢票功能

《python实现自动登录12306自动抢票功能》随着互联网技术的发展,越来越多的人选择通过网络平台购票,特别是在中国,12306作为官方火车票预订平台,承担了巨大的访问量,对于热门线路或者节假日出行... 目录一、遇到的问题?二、改进三、进阶–展望总结一、遇到的问题?1.url-正确的表头:就是首先ur

C#实现文件读写到SQLite数据库

《C#实现文件读写到SQLite数据库》这篇文章主要为大家详细介绍了使用C#将文件读写到SQLite数据库的几种方法,文中的示例代码讲解详细,感兴趣的小伙伴可以参考一下... 目录1. 使用 BLOB 存储文件2. 存储文件路径3. 分块存储文件《文件读写到SQLite数据库China编程的方法》博客中,介绍了文