飞凌方案丨基于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

相关文章

python使用Akshare与Streamlit实现股票估值分析教程(图文代码)

《python使用Akshare与Streamlit实现股票估值分析教程(图文代码)》入职测试中的一道题,要求:从Akshare下载某一个股票近十年的财务报表包括,资产负债表,利润表,现金流量表,保存... 目录一、前言二、核心知识点梳理1、Akshare数据获取2、Pandas数据处理3、Matplotl

分布式锁在Spring Boot应用中的实现过程

《分布式锁在SpringBoot应用中的实现过程》文章介绍在SpringBoot中通过自定义Lock注解、LockAspect切面和RedisLockUtils工具类实现分布式锁,确保多实例并发操作... 目录Lock注解LockASPect切面RedisLockUtils工具类总结在现代微服务架构中,分布

Java使用Thumbnailator库实现图片处理与压缩功能

《Java使用Thumbnailator库实现图片处理与压缩功能》Thumbnailator是高性能Java图像处理库,支持缩放、旋转、水印添加、裁剪及格式转换,提供易用API和性能优化,适合Web应... 目录1. 图片处理库Thumbnailator介绍2. 基本和指定大小图片缩放功能2.1 图片缩放的

Python使用Tenacity一行代码实现自动重试详解

《Python使用Tenacity一行代码实现自动重试详解》tenacity是一个专为Python设计的通用重试库,它的核心理念就是用简单、清晰的方式,为任何可能失败的操作添加重试能力,下面我们就来看... 目录一切始于一个简单的 API 调用Tenacity 入门:一行代码实现优雅重试精细控制:让重试按我

Redis客户端连接机制的实现方案

《Redis客户端连接机制的实现方案》本文主要介绍了Redis客户端连接机制的实现方案,包括事件驱动模型、非阻塞I/O处理、连接池应用及配置优化,具有一定的参考价值,感兴趣的可以了解一下... 目录1. Redis连接模型概述2. 连接建立过程详解2.1 连php接初始化流程2.2 关键配置参数3. 最大连

Python实现网格交易策略的过程

《Python实现网格交易策略的过程》本文讲解Python网格交易策略,利用ccxt获取加密货币数据及backtrader回测,通过设定网格节点,低买高卖获利,适合震荡行情,下面跟我一起看看我们的第一... 网格交易是一种经典的量化交易策略,其核心思想是在价格上下预设多个“网格”,当价格触发特定网格时执行买

使用Python构建智能BAT文件生成器的完美解决方案

《使用Python构建智能BAT文件生成器的完美解决方案》这篇文章主要为大家详细介绍了如何使用wxPython构建一个智能的BAT文件生成器,它不仅能够为Python脚本生成启动脚本,还提供了完整的文... 目录引言运行效果图项目背景与需求分析核心需求技术选型核心功能实现1. 数据库设计2. 界面布局设计3

python设置环境变量路径实现过程

《python设置环境变量路径实现过程》本文介绍设置Python路径的多种方法:临时设置(Windows用`set`,Linux/macOS用`export`)、永久设置(系统属性或shell配置文件... 目录设置python路径的方法临时设置环境变量(适用于当前会话)永久设置环境变量(Windows系统

Python对接支付宝支付之使用AliPay实现的详细操作指南

《Python对接支付宝支付之使用AliPay实现的详细操作指南》支付宝没有提供PythonSDK,但是强大的github就有提供python-alipay-sdk,封装里很多复杂操作,使用这个我们就... 目录一、引言二、准备工作2.1 支付宝开放平台入驻与应用创建2.2 密钥生成与配置2.3 安装ali

Spring Security 单点登录与自动登录机制的实现原理

《SpringSecurity单点登录与自动登录机制的实现原理》本文探讨SpringSecurity实现单点登录(SSO)与自动登录机制,涵盖JWT跨系统认证、RememberMe持久化Token... 目录一、核心概念解析1.1 单点登录(SSO)1.2 自动登录(Remember Me)二、代码分析三、