基于策略推导的嵌入式多媒体终端控制系统
2021-09-03张跃进
薛 峰, 张跃进
(1. 上海理工大学 印刷出版与艺术设计学院, 上海 200093; 2. 华东交通大学 信息工程学院, 江西 南昌 330013)
汽车是人类日常生活中最常用的代步工具。近年来我国汽车工业飞速发展,同时大众对车载电子产品的需求不断提升[1]。当前车载设备中普遍使用8位或16位单片机,导致计算和图像处理能力较弱,虽然也有使用32位中央处理器(CPU)的高端车载设备,例如导航仪、高密度数字视频光盘(DVD)播放设备、地面数字电视广播(DVB-T)播放设备、车载视频录像机等,但这些产品性能独立,功能拓展性较差,设备集成能力弱,采集数据主要运用各类外界传感器,安装复杂繁琐,可靠性较低[2]。
智能车载系统是汽车规划设计中最为重要的部分,从最初的播放磁带录音、收听广播节目,发展到集各类智能服务于一身的嵌入式车载多媒体终端控制系统,有效地解决了传统车载设备的诸多问题,已经成为汽车必不可少的设备,为驾驶人与乘坐人提供相应的安全保障及娱乐服务,对其进行开发与研究具有广阔的市场前景和重要意义。当前,有学者对嵌入式多媒体控制进行了相关研究。张辉[3]提出了基于智能终端控制的嵌入式多媒体控制系统,采用高性能Raspberry Pi开发板,并将Raspbian作为操作系统,构建由Python语言组成的Web应用程序平台,利用智能设备完成远程控制、网络附加存储以及分布式存储等功能,有效拓展多媒体控制系统的应用范围,实现远程控制,整体的嵌入式多媒体控制性能较好,但该系统未考虑车辆定位的功能,导致车辆缺少导航等功能,难以满足当前的使用需求。赵凡[4]提出了基于“互联网+”技术的多媒体中央控制系统设计方案,安装高性能的嵌入式微处理器作为嵌入式操作系统,运用高级语言开发应用程序,采用无线网络作为信息通道,满足“互联网+”时代下智能终端设备的远程控制功能,但该方案的响应速度较慢,缺少数据传输的速率优化技术,在实际应用中会存在车辆驾驶安全隐患。林彦廷等[5]提出了以S5P6818处理器为核心的车载多媒体控制终端设计方案,具有音频的播放控制、 访问天气预报、 可视倒车以及倒车距离报警等功能,实现了网络、 安全、 娱乐一体化智能车载多媒体终端控制,但该方案未考虑系统定位性能。
为了进一步改善智能嵌入式多媒体终端控制系统在车辆中的应用性能,提高系统定位准确性,本文中以Windows CE 5.0操作系统和飞思卡尔i.MX31处理器为基础,设计一种基于策略推导的嵌入式多媒体终端控制系统,使用嵌入式多媒体文件传输协议(embedded multimedia file transfer protocol,EMFTP),解决系统数据传输及时性低的问题,并通过多媒体播放、 全球定位系统(global positioning system,GPS)定位导航、 可视倒车及倒车距离实时报警、 车载蓝牙通话、 调幅(AM)/调频(FM)收音机5个板块,构建嵌入式车载多媒体终端控制系统;通过对比不同系统测试结果,验证所设计控制系统的优越性能。
1 多媒体终端实时传输策略推导
在嵌入式车载多媒体终端控制系统中,任何功能都需要通过信息传输完成任务指令,然而,随着媒体文件的快速增加,系统控制速率会减慢,资源消耗也随之增多。为了提升数据实时传输速率,本文中提出的EMFTP能够使系统具备更优时效性,减少资源消耗,完善系统全局性能。
EMFTP主要采用传输控制协议(transmission control protocol,TCP)和用户数据报协议(user datagram protocol,UDP),利用应用层控制,完成指令信息快捷传输。其体系架构如图1所示。
RTT(round-trip time):往返时延,表示从发送端发送数据开始,到发送端收到来自接收端的确认总共经历的时延。
可靠的数据传输一般采用回退步或选择性重传完成。回退步是在丢失1个数据包后,丢弃后面全部准确抵达的数据包,传输效率低;选择性重传表示发送方在定时器操控的时段中,接收源自接收方基于确认及否定确认的传输协议,并决定是否要需重新传输此分组。该方案需要接收方的多次回馈,增加了嵌入式终端负担,引发终端处理能力下降。本文中创建一种简单的差错修复机制,简化嵌入式接收端工作任务,节约更多资源终端接收与处理的数据包个数。
EMFTP使用的传输方式是使接收方记录下丢失的数据包信息,在发送期终止时,一次性回馈给发送方,发送方在下一个发送周期重新上传丢失的数据包,重复循环此过程,直至全部数据包被成功接收,具体过程如图2所示。
图2 嵌入式多媒体文件传输协议差错修复时序
在A—B的传输周期中,传输方把全部文件利用UDP协议输送至终端。UDP呈现的是不可靠数据传输,某些数据包可能会因网络阻塞或接收性能较差而导致丢失[6]。接收方利用序列号评判数据包实时状态,同时记录下丢失数据包的序列号。
若一次丢包事件中持续丢失了众多数据包,标记丢失的首个和最后一个数据包序列号,了解持续丢包范围,减少回馈信息的数量。在传输期终止后,发送方采用TCP对接收方输送传递完成的信令C,接收方得到信息指令,将丢包链表返回至发送方D。发送方重新传输丢失数据包,重复进行此过程,直至接收方完全接收到全部数据包。
EMFTP的目的不是尽可能地获得网络可用带宽,而是在符合嵌入式多媒体终端接收性能条件下得到比较稳定的传输速率,将数据从服务器端快速地输送至嵌入式终端。采用速率控制策略推导的基本思想为:速率增量是目前发送速率的递减函数,也就是发送速率增加,速率增量会接近于0。在各个速率控制时段内,假设没有源自接收方的否定应答,那么发送速率增加α(x)(x为发送速率,bit/s;α(x)为传播时延),α(x)非增且x→+∞,由此得到
x=δ+α(x)
,
(1)
式中δ为信道带宽。
为了确保传输速率迅速达到平稳并减小振荡,α(x)的值要在x=0 bit/s时较大,同时用很快的速率逐步减小。
针对某个随机否定应答,传输速率用固定因子β的比例进行缩减:
λ=(1-β)x
,
(2)
式中λ为传输速率。
为了达到数据传输速率控制目标,应答包内要包括以下内容:回馈间隔中接收的数据包全体个数r、回馈间隔遗失的数据包总体个数l和网络带宽b[7]。发送方接收到应答包后,按照r与l推算上个回馈间隔中的数据包丢失率P,即
P=l/(r+l)
。
(3)
按照丢包率大小, 将其划分成3种状态。 当P=0时, 此种状态下无丢包现象发生,证明网络情况较优,终端接收性能符合当前发送速率请求,可运用式(1)进一步增强发送速率。当0
EMFTP使用和带宽有关的分段函数当作提速增加量γ(x),分段函数在发送速率x变大时会迅速变小,将此过程描述为
(4)
式中:s为接收方的定期回馈间隔; 「·⎤为取大于等于符号内数的最小整数;R(x)为目前传输速率,即
R(x)=8x
。
(5)
假如网络内拥有数量较多的数据流,在同一时间探测出阻塞状态,需减小输送速度,全部吞吐量会生成较大浮动,减少了带宽可用量[8-9]。使用随机降速方式防止发生此种状况,如果在一个回馈间隔中具备m个丢包事件,n为符合1~m的均匀分布随机数,那么发送速率变化的计算公式为
σ(x)=(1-θ)nmx
,
(6)
式中:σ(x)为发送时延;θ为降速增量。假设θ较小,在网络产生阻塞情况下无法及时减少速率,致使阻塞需要耗费很长时段才能修复;若θ较大,致使发送速率过小,传输性能较差,使发送速率过于振荡,稳定性较差。
在回馈控制信令使用UDP情况下, 网络阻塞时应答包遗失概率明显提高。 在接收方持续5个回馈限期中没有得到应答包的状况下, 推导认定发生丢包事件。
EMFTP采用基于接收方的包对法,预测链路带宽。包对表示持续发送没有间隔的2个数据包,发送方每隔15个数据包发送1个包对,接收方记录包对抵达后数据包的间隔时长,利用中值过滤器剔除过大及过小数值后,用平均值预测带宽容量。假设数据包大小为k,间隔时段均值为t,将预测获得的网络带宽值B记作
B=k/t
。
(7)
通过推算回馈间隔中的数据包丢失率,达到数据传输速率控制目标,采用基于接收方的包对法,预测链路带宽,实现多媒体终端实时传输策略推导。
2 嵌入式多媒体终端控制系统方案
利用上述实时传输策略推导方法,可保证所建系统控制时效性高,资源消耗较少,为用户提供更优操作体验。以此为基础,构建一套完整的智能嵌入式车载多媒体终端控制系统,具备良好的集成度,运行可靠,实用性强,并使系统兼容性得到显著提升,实现预期的设计需求[10-12]。
2.1 系统软硬件架构
嵌入式车载多媒体终端控制系统硬件的核心是飞思卡尔i.MX31处理器,由电源板块、储存设备、视频监控板块、收音机板块、GPS导航板块、蓝牙板块及人机交互板块、DVD板块等构成,如图3所示。
图3 嵌入式车载多媒体终端控制系统硬件全局架构
嵌入式操作系统的挑选要与真实工程特性相融合,全方位考虑开发周期、开发成本、体系架构、系统反应时间及可靠性等多种因素。本方案采用Windows CE 5.0作为操作系统,系统软件设计主要包括操作系统移植、设备驱动程序开发及应用程序开发等部分。
在系统运行时,软、硬件资源划分、外部设备驱动、接口通信等流程均在操作系统层内完成。在Windows CE 5.0开发环境下,最主要的任务有2个,即内核性质及应用程序开发。工作人员能够利用操作系统定制工具创建,以及定制内核、使用嵌入式系统特征对定制内核采取编译及调整,系统软件架构如图4所示。
图4 嵌入式车载多媒体终端控制系统软件架构
2.2 多媒体音频研发设计
多媒体音视频软件板块工作过程如图5所示。虽然Windows CE 5.0系统本身具备播放功能,但是系统内播放软件支持的多媒体格式较少,在完成程序设计过程中,需要安装多媒体播放软件Mplayer。音频播放器规划流程如图5所示。通过液晶显示器(liquid crystal display,LCD)输出视频,利用音箱输出音频。Mplayer最显著的特征就是支持较多种类的输出设施。
图5 音视频软件板块工作过程
2.3 GPS定位导航设计
卫星持续输送自身星历参变量与时间数据,用户接收数据后,推算得到接收机三维方位、方向、速率与时间等车辆数据,该过程即为GPS定位。
在本系统设计中,GPS接收机使用伪距测量定位算法,经过推导卫星信号传播至接收机所耗费的时间,然后用时间乘以光速获得接收机与卫星的间距,融合三维坐标内的距离解析式,仅需要3颗卫星即能构成3个公式,并求解出观测点方位(X,Y,Z),由于考虑到卫星时钟和接收机时钟的偏差,需了解X、Y、Z与时钟相差的4个未知数,组成4个方程进行计算,获得接收机经纬度及高度[13]。
GPS接收机输出均满足NMEA-0183V20标准串行通信协议句式,数据内容涵盖经纬度、 高度、 时间、 系统情况、 速率等信息。把定位数据融进电子地图软件内,完成GPS定位与导航,GPS接收机串口程序过程如图6所示。
图6 全球定位系统接收机串口程序过程
将GPS数据输送到DVD中,利用总线将处理器中地理方位数据传输到功率放大器,减少误码率。由于GPS系统接收到的信号来自太空,信号较弱,因此在系统设计过程中,要使元件具有良好的灵敏性,必须保证芯片组接收到高质量的信号,同时需要考虑系统的时效性。
2.4 可视倒车及倒车距离实时报警设计
可视倒车工作流程如图7所示。该板块使用摄像头收集图像数据与超声波测量距离,并将数据呈现在LCD内,对用户进行提醒[14]。控制摄像头与超声波测距板块,就要创建对应的驱动程序。如果超声波测量的距离小于初始设置距离,LCD屏会显示距离信息,蜂鸣器开始发出报警信号。在驱动程序设计中包含LED驱动板块、蜂鸣器驱动板块、超声波驱动板块。以下将超声波板块作为例子,说明其驱动创建全部过程。实施应用程序研发时,应用程序无法直接访问硬件,利用驱动程序作为纽带,为用户层搭建访问硬件接口。
图7 可视倒车工作流程
由于Windows CE 5.0系统内拥有摄像头驱动,因此应用程序仅需使用系统调用函数就能开启摄像头装备,明确摄像头内涵盖的图像信息。使用Linux视频设备驱动V4L2管理摄像头图像信息,其工作原理如图8所示。要实现一个队列保存摄像头收集的视频数据,需要申请4个或以上内核信息缓存,将其分别安置在队列内,缓存区运用系统调用函数,把缓存呈现于用户空间,实现倒车操作,摄像头每收集一帧图像数据就做出一个出队动作,获得数据后重新进入队列。
V4L2_buffer为操作指令代码。
2.5 车载蓝牙
蓝牙板块根据性能被分成通用异步收发传输器(universal asynchronous receiver/transmitter,UART)、人机界面与流程操控3个板块。UART主要承担串口通信任务,人机用户界面板块用于提供接口服务,流程操控板块供应上层应用用户接口,利用串口传输给蓝牙硬件[15]。在整个系统流程中3个板块不是顺序调用关系,如图9所示。将应用程序接口(application programming interface,API)消息转化为指令,在链接确定后,串口通信板块接收的数据被传输至流程控制板块,在通过流程评判执行后,数据才会传输至上层处理板块。
图9 流程接口驱动调用原理
2.6 AM/FM收音机
收音机可对电台实施调谐, 把电台频率呈现给用户。 AM/FM收音机包含用户输入、 电台信号输入、 调谐器操控、 电台频率显示。 该板块共有以下几种工作模式, 即预置电台、 调出预置电台、 电台微调、 自动搜索、 扫描搜索。 预置电台是把现阶段频率电台储存于带电可擦可编程只读存储器中; 调出预置电台表示把储存的电台频率读出并播放; 微调是使用0.1 MHz的频率递加或递减;自动搜索是使用0.1 MHz频率递加,直至获取高质量信号电台;扫描搜索表示自动搜台接收到高质量信号,播放固定秒数后连续自动搜台。
通过上述步骤,利用飞思卡尔i.MX31处理器以及电源板块、储存设备、视频监控板块、收音机板块等板块作为系统硬件架构,采用Windows CE 5.0操作系统,操作系统移植、设备驱动程序开发及应用程序开发等软件部分,实现智能嵌入式车载多媒体终端控制系统的构建,以满足现阶段多媒体应用诸多需求。
3 系统测试
为了验证本文中提出的控制系统(简称本文系统)的优越性,选择GPS定位和可视倒车2项功能作为实验指标。在定位实验中,将实际定位结果与实验定位结果的偏差作为衡量系统定位准确性的标准,实验定位结果与实际定位结果偏差越小,控制系统的定位准确性越高,反之,控制系统的定位准确性越低。采用基于智能终端控制的控制系统、基于“互联网+”技术的控制系统与本文系统进行对比,定位偏差结果如图10所示。
图10 基于不同控制系统的全球定位系统定位偏差
由图中结果可以看出,当定位距离为150 m时,基于智能终端控制的控制系统的平均定位偏差为41%,基于“互联网+”技术的控制系统的平均定位偏差为55%,本文系统的平均定位偏差为19%,而实际定位结果的平均定位偏差为18%,本文系统的定位结果与实际定位结果偏差较小,证明该系统的定位准确性较高,稳定性强。
为了使本文系统生成的图像以实时方式展现,需要调节可视倒车功能屏幕显示端播放帧率,通过多次测验,得到表1所示的系统屏幕显示端的播放帧率。由表中数据可知,本文系统的可视倒车播放帧率均值为13.9 s-1,满足真实播放帧率需求,系统的可靠性较高。中午和傍晚的帧率均值不同,说明光线强度会影响系统播放帧率,但帧率差值较小,不会对系统倒车板块功能产生不良影响。
表1 可视倒车功能屏幕显示端播放帧率实验结果
4 结语
为了改善车辆中嵌入式多媒体终端控制系统的应用性能,本文中提出了一种利用速度控制策略推导方法的嵌入式多媒体终端控制系统,通过实验验证了该系统控制性能的可靠性较高,平均定位偏差为19%,与实际定位结果的偏差较小,有效地提高了车辆定位的准确性;不同时间段倒车影像的屏幕播放帧率均值为13.9 s-1,满足实际车载多媒体的应用需求;在功能方面,该系统添加了蓝牙通话、收音机等功能。未来的工作将对车载多媒体控制系统的实际应用成本进行深入研究,并且增加精准远程控制等功能,为该系统的推广应用提供理论依据。