基于FlexRay总线的车载通用信息交互单元设计

2022-08-16 03:11:36李仑升许亚星
计算机工程与设计 2022年8期
关键词:波特率寄存器总线

赵 君,赵 刚,李仑升,许亚星

(航空工业计算所,陕西 西安 710065)

0 引 言

随着特种车辆机电技术性能提升需求的不断提高,机电综合化技术在非任务系统中的应用越来越广泛,其主要特征为物理综合、信息综合与能量综合。新的特种车辆平台已广泛采用了基于CAN总线或FlexRay总线的机电综合管理系统架构,技战术指标得到了跨代飞跃[1]。但是,针对现役老型号车载平台的能力提升也是现阶段装备发展的一个重要工作方向,其中通过在现有平台中增加非任务系统控制管理设备,改造信息网络,增加传感与作动部件,从而降低平台对战勤人员非战斗任务的占用,可以有效提升现有装备的技战术水平[1]。

FlexRay总线是一种采用高速串行通信模式、兼容事件触发的时间触发型总线[2],并具有实时性高、有效带宽高、容错能力强等诸多优势,已成为特种车辆平台系统的首选网络通信方案,该总线具备柔性时分多址通信能力,可有效避免传统CAN总线应用中的冲突竞争问题,是未来特种车辆平台机电综合管理系统的一个发展方向[2-4]。

本文针对现役装备车辆平台基于FlexRay总线的机电综合化能力提升需求,设计一种兼容多种接口的信息交互单元,满足传统装备模拟量、离散量、RS422等数据信息与车载FlexRay总线网络的交互,目标是降低装备非任务重量,提升机电综合管理性能,为有效提升老型号装备战斗力提供有效的解决措施。

1 工作原理与技术要求

针对某型装备能力提升,提出一种基于信息交互单元应用模式,如图1所示。在本系统中,信息交互单元隶属于显控系统,主要实现以下功能:

(1)系统需要在上电后1 s内完成启动与初始化配置;

(2)将接收到的显控装置发送的控制指令,由RS422接口转为FlexRay总线,并按照规定时序发送至综管单元;

(3)将接收到的综管单元采集的遥测信息,自身健康状态等信息,由FlexRay总线转换为RS422接口在显控装置显示;

(4)将接收到的显控装置发送的配电指令,由RS422接口转为CAN总线信息,转发至配电装置,并将配电装置的健康状态信息,系统配置状态,由CAN总线转为RS422接口信息在显控装置显示;

(5)将接收到的显控装置发送的液压控制指令,转发至液压控制器,并将控制健康状态信息,系统工作状态,通过与液压控制器交联的RS422接口实现数据透传;

(6)采集新增温度与压力传感器状态,提供传感器供电与采集4 mA~20 mA电流信号,具备传感器过载保护能力;

(7)控制新增封闭活门、交输活门、电磁阀等部件,具备过载保护能力。

图1 信息交互单元典型应用

针对以上需求,梳理出本系统中信息交互单元技术要求如下:

(1)应至少具备1路FlexRay总线,1路CAN总线,2路RS422接口;

(2)应具备至少6路4 mA~20 mA采集接口,分辨率不低于16 bit,数据更新率不低于1 kSPS;

(3)应具备至少6路传感器供电能力,支持过载保护,可独立配电,供电电压15 V±0.1 V,纹波小于100 mV;

(4)应具备至少8路27 V/开功率驱动能力,支持过载保护,可独立控制;

(5)支持针对RS422接口的波特率检测,通信波特率误差应小于2%,具备针对RS422接收电压的电压检测能力;

(6)具备故障信息本地记录能力。

2 硬件设计

2.1 架构设计

为提升内外场测试性与维护性能力,提高故障诊断与隔离能力,同时兼容灵活扩展与可配置性,根据综合化与模块化设计原则进行架构设计,共设计了3类模块实现本系统信息交互单元功能,分别为核心处理模块(central processing moudle,CPM)、接口功能模块(input & output module,IOM)与电源模块(power supply module,PSM),图2为适配FlexRay总线系统的信息交互单元架构。

2.2 核心处理模块(CPM)设计

核心处理模块,简称CPM,主要完成信息交互单元的控制管理任务,基于SPI总线接口与硬线实现与各功能模块的数据交互与控制管理功能。该模块主要由CPU最小系统与通用FlexRay总线通信单元组成(1.2节)其架构如图3所示。本设计中选择ARM+FPGA架构作为核心处理模块最小系统,其中ARM处理器选择STM32F407,FPGA选择Artix-7 A7 XC7A35。

图2 基于FlexRay总线的信息交互单元架构

图3 信息交互单元CPM模块架构

图3中,最小系统主要包括ARM处理器、FPGA、存储器、电源、时钟、调试接口等,具备微控制器监控、硬件初始化、操作系统引导、故障数据记录、功能调试、软件加载等基本功能,并通过SPI接口与硬线交联其它功能模块,实现控制管理功能,其中核心处理模块作为SPI主设备。同时,为了实现带宽扩展、控制解耦,并防止故障蔓延,核心处理模块具备8路SPI接口,可为功能模块配置独立的SPI接口。

在CPM模块中独立设计了基于FPGA控制的FlexRay总线、CAN总线与RS422通信接口,ARM通过FSMC接口访问CAN总线与FlexRay总线协议芯片,RS422采用IP核实现。针对消息联动需求,可以在FPGA中设计触发源,无需ARM应用软件参与实现基于配置表的消息透传转发,从而提升系统实时响应能力[5,6]。

2.3 接口功能模块(IOM)设计

信息交互单元中除CPM模块外均可认为是接口功能模块(IOM),主要用于是应用不同场景的接口交联需求,具有两种架构形态:一种模态是基于FPGA的智能架构;第二种是无处理器的非智能架构,其中非智能架构通常采用硬线完成接口采集与控制,本文主要介绍基于FPGA智能架构的接口功能模块设计,如图4所示。

图4 信息交互单元IOM模块架构

IOM模块和CPM模块之间通过SPI接口与硬线连接,实现数据通信与控制管理。该模块主要实现传感器供电,温度压力传感器信号采集以及作动部件功率驱动控制,完成输入模拟量的处理功能,通过差分滤波器与仪表运放将4 mA~20 mA模拟信号处理成标准电压信号由模数转换器件完成数据采集。模块使用AD7606完成模数转换,该器件单片支持8通道同步采集,最高支持200 kSPS,分辨率可达16 bit,具备模拟输入箝位保护,模拟缓冲器输入阻抗高达1M欧姆,具备二阶抗混叠低通滤波器,支持基于数字滤波器的过采样应用需求,接口方式灵活,基于该芯片及其配置可以方便地构建各种机电类产品的模拟量接口采集电路,具有很好的灵活性与可扩展性。

此外,接口功能模块具备功率驱动功能,基于TPS2492设计的功率驱动电路,可以通过配置采样电阻与充电电容实现过载保护与短路保护,具备反时限保护特征,可以有效地保护负载与信息交互单元产品本身。同时,基于TPS2492设计了超控电路,可以通过硬线实现安全态的超越控制,有效地提升了系统安全性。

2.4 电源模块(PSM)设计

PSM主要完成正常、应急电源切换处理、滤波、浪涌抑制、预处理及DC/DC转换,为处理板和接口处理板提供对应电源供电,PSM模块架构如图5所示[5]。

图5 信息交互单元PSM模块架构

3 软件设计

3.1 信息交互单元软件运行机理

信息交互单元软件配置项包括CPM_ARM应用软件(运行于ARM处理器)、CPM_FPGA逻辑(主FPGA)、IOM_FPGA逻辑(从FPGA),配置项间相互协同为各种数据提供控制管理功能,如FlexRay与CAN总线之间的数据转换、FlexRay总线与RS422接口之间的数据转换以及模拟量数据与总线数据间的数据转换等,同时信息交互提供基于配置表的简单逻辑处理能力。信息交互单元软件将不同ICD的输入数据去除其接口属性,将数据负载进行参数化分解与存储,然后基于配置表规划的信息流路径与实时性要求将参数二次封装为满足系统ICD要求的数据包传输至目标设备。实现数据转换与传输功能主要由4个软件功能模块组成,分别是数据采集模块、数据处理模块、数据发送模块、管理维护模块,其运行架构如图6所示。

图6 信息交互单元软件数据处理原理

图6中,数据采集模块主要用于对输入数据的采集,主要由4个数据采集引擎构成,基于管理维护模块传递的地址映射、ICD与工作模式等配置参数,实现采集数据转化为系统参数的解耦操作,数据采集引擎的能力受信息交互单元硬件资源约束,因此软件中需要设计安全边界,防止发生数组越界,参数范围越界等导致系统异常崩溃故障,从而对系统和人员安全性造成不良影响。

数据处理模块主要用于对分解出的各种参数完成逻辑处理,包括算术逻辑与时序逻辑。管理维护模块将逻辑处理配置表传输至数据处理模块,当参数非法时数据处理模块具备故障记录与告警能力。

数据发送模块管理维护模块传递来的地址映射、ICD以及工作模式等配置信息,数据处理模块输出的参数与逻辑关系进行数据封装、逻辑关联与时序配置,最终将信息转化为电气接口所需的电平信号完成接口驱动。

管理维护模块主要完成配置表信息接收、解析、配置参数二次分配,故障记录,BIT(PUBIT/PBIT/MBIT),人机交互等功能,最终为数据采集/处理/发送模块提供工作所需的配置信息。

3.2 FlexRay总线驱动软件设计

CPM模块通过配置可以实现针对RS422接口、CAN总线接口与FlexRay总线接口的通信数据交互,其中与显控装置的FlexRay总线通信接口驱动软件设计是关键技术之一。本文针对MFR4310设计了基于协议操作控制接口(protocol operation control,POC)的驱动软件,将对POC的寄存器操作命令封装成驱动软件中间件,可以降低系统开发难度,实现基于用户功能需求的FlexRay协议配置、唤醒与传输等控制功能。

驱动软件主要包括接口时序控制、初始化、服务层3个功能模块。时序控制模块完成针对MFR4310的物理层接口操作,建立FPGA对MFR4310的数据操作能力;初始化模块主要完成基于维护管理模块配置信息的POC相关寄存器配置;服务层模块完成与数据发送模块的逻辑与数据链接[7,8]。

驱动软件包括Open、Close、Send与Receive这4个功能接口,Open基于配置信息完成初始化操作,中断管理,Close完成关闭中断和复位,Send完成发送数据地址映射,Receive完成接收数据地址映射与状态信息回读。

管理维护模块软件基于配置表信息,调用FlexRay总线驱动软件完成MFR4310内部接收FIFO缓存、独立消息缓存与接收映射缓存的相关配置。其中,独立消息缓存用于配置静态段收发数据帧,而接收映射缓存用于执行接收任务,接收FIFO用来配置没有分配接收消息的数据帧,通常用于动态段的数据操作。

3.3 RS422波特率测量软件设计

针对技术要求中对RS422接口进行波特率检测的需求,进行波特率误差检测软件设计。将RS422接口接收信号经驱动器完成电平转换后,由FPGA采集并分析波特率误差,设计包括电平状态寄存器、波特率阈值配置寄存器(单bit)、单bit脉宽FIFO(深度128)以及FIFO状态寄存器。

其中,两个波特率单bit阈值寄存器,用于配置任一波特率下的1 bit数据所对应的时间长度,例如当预期波特率为115200 bps时,1 bit数据发送时间约为8 μs,则波特率上限寄存器配置13 μs,下限寄存器配置5 μs,当接口捕获信号脉宽为5 μs

3.4 模拟量采集软件设计

模拟量采集接口是由2片AD7606构成的16通道模拟量输入接口,其中2片AD7606的片选与启动转换控制端共用。模拟量采集功能主要由FPGA实现,包括模拟量电压存储寄存器、最大值寄存器、最小值寄存器、模式选择寄存器、采样率配置寄存器、启动与停止寄存器。

通过维护管理软件模块可以实现工作参数配置,主要包括采样模式寄存器选择AD7606工作状态(是否过采样)、采样率配置寄存器,选择系统所需的采集速率(范围1 kHz~200 kHz,步进1 kHz,精度1 Hz)。数据采集模块软件配置启动与停止寄存器,使能采集后,2片AD7606同步开始采集数据,每一个通道具有3个寄存器,分别是最大值、最小值、实时值,可以通过数据采集模块软件访问相应的数据存储寄存器,为后续数据处理模块软件提供有效数据。

4 总线通信调度优化设计

4.1 数据流能力需求分析

信息交互单元是系统信息通信路径的关键节点,其有效带宽余量是系统可扩展性的重要指标。FlexRay总线中,每个静态段的数据帧长度可以配置为0~254字节,根据以往型号通信ICD要求,信息交互单元控制类指令数据帧长度小于等于64字节,采集类数据帧长度一般小于128字节,因此本系统中信息交互单元长度选择64字节,可以在满足传输要求的前提下,能有效提升数据帧利用率[9,10]。

本文设计信息交互单元数据流周期包括10 ms、20 ms、50 ms和100 ms,通信帧更新统计见表1,共计23帧。选择5 ms作为基准通信周期,考虑降额设计需求保证所有数据在基准周期的整数倍内传输完毕,定义2个最大更新周期公倍数200 ms作为系统通信周期。由于系统总线通信周期为10 Mbps,一个静态段64字节的耗时约为93 μs,因此考虑降额设计后选取静态时隙为100 μs[7-9]。

表1 信息交互单元典型工况数据帧统计

本文中信息交互单元的通信机制全部采用静态段时间触发模式,不采用应用软件时间调度方式,可以最大程度保证系统的实时性与确定性。根据表1数据流量统计,将所有数据帧配置在23个静态时隙中,如图7所示。

图7 信息交互单元时隙分配

4.2 时隙优化控制

本文中信息交互单元采用图7中方案时存在冗余数据发送缺陷,主要表现为信息交互单元采用5 ms基准周期通信,所有更新周期大于5 ms的数据都按照基准周期重复冗余发送,例如100 ms周期发送的数据帧,在100 ms内被重复发送19次,因此图7方案导致总线有效带宽降低,不利于系统扩展。

针对带宽浪费问题,本文基于MFR4310协议处理器开展时隙优化控制。该处理器具备两种时钟,其中T1为绝对时钟,T2为可配置时钟(绝对/相对)。T1与T2均可以配置为循环模式,时钟溢出可触发可屏蔽中断,定时器配置关系如式(1)与式(2)所示,T1采用总线周期和宏节拍作为时基,其中宏节拍与微节拍相对应。微节拍是总线协议栈中最小时间单位,其与晶振周期量级相同,宏节拍是N个微节拍组成的一个宏观时间,总线中每个通信周期都是由M个宏节拍组成,因此每个通信周期宏节拍的范围最大是M,通信周期数值量化范围是0~63[10,11]

CCYC&TI1CYCMSK=TI1CYCVAL&TI1CYCMSK

(1)

CMT&TI1MTMSK=TI1MTVAL&TI1MTMSK

(2)

式中:CCYC和CMT为周期计与宏节拍计数器,TI1CYCVAL与TI1MTVAL为定时器T1配置溢出参数,TI1CYCMSK与TI1MTMSK为掩码参数。

本文信息交互单元的时间调度优化方案中,将T1的配置溢出参数设置为0,掩码参数也配置为0,此时每个通信周期起始就触发定时器T1中断,实现5 ms中断一次,在定时器中断中对表1中的4种周期时隙进行动态使能与禁止,优化后的时序关系如图8所示。

图8 优化后的通信时序关系

图8中,方格代表基准周期计数,方格中的数字10、20、50、100代表表1中4种周期通信任务,例如编号0方格,表示该周期内发送的数据帧为10 ms、20 ms、50 ms与100 ms周期任务数据,方格20表示该周期内发送10 ms与50 ms周期任务数据,通过每个5 ms基准周期配置不同通信任务周期数据的使能与禁止实现动态时隙优化控制,可有效降低总线负载冗余数据,提升带宽利用率[12]。

5 测试验证与分析

针对基于信息交互单元的老型号装备升级后平台开展测试分析,结果见表2。

表2 测试验证与分析结果

针对基于信息交互单元FlexRay总线与CAN总线样机,测试对比数据见表3。其中,在FlexRay样机平台,通过合理规划FlexRay总线周期调度,采用时隙优化控制技术,降低数据通信周期中的冗余消息发送,可以有效地降低总线负载,提升通信效率[11,12]。

为进一步验证该平台的通用性,基于FlexRay总线的信息交互单元,构建出半物理仿真环境,选择环控系统中的辅助冷却系统作为典型应用场景。辅助冷却系统由冲压空气单元、蒸发循环制冷单元、液体冷却回路3部分构成。其中冲压空气单元由冲压空气作动器、冲压空气出口抽气风扇、出口单向活门等部件组成;蒸发制冷单元由压缩机、蒸发器、电子膨胀活门、冷凝器、回热器等部件组成;液体冷却回路由液体散热器、发热元件(电子设备舱、大功率电子设备)、泵组件等组成,测试架构如图9所示,其中环控辅助冷却系统半物理仿真设备主要用于运行辅助冷却系统物理域模型,驱动板卡产生激励与接收控制指令;实时仿真机运行嵌入式综合处理软件,模拟分布式控制架构;信息交互单元实物是系统控制算法与辅助冷却系统物理域信息的桥梁,作为远程测控终端完成信号采集、指令转发与数据传输。

表3 CAN总线样机与FlexRay总线样机对比

图9 辅助冷却系统典型工况半物理仿真架构

系统测试动态监控界面如图10所示。其中,信息交互单元主要功能为数据采集、数据处理、数据发送、管理维护,实现环控辅助冷却系统半物理仿真设备与综合控制软件之间的数据交互。在本典型测试应用中,信息交互单元最小控制周期5 ms,启动时间小于300 ms,满足系统实时性要求,数据负载占用率最高12.7%,采用时隙优化控制技术后,负载占用率降低至7.1%,降低冗余信息带宽占用,有效提升了系统余量。

图10 信息交互单元的辅助冷却系统联合实验

6 结束语

针对传统车载平台机电综合化性能提升需求,设计了基于FlexRay总线的信息交互单元,以模块化思想构建了基于SPI总线的信息交互单元架构,并实现了各功能模块的软硬件设计与研制。计算分析与测试验证结果表明,适配FlexRay总线的信息交互单元可以满足装备改造及性能提升要求,相比于传统车载机电架构,基于信息交互单元的升级方案大幅提升了系统的可靠性与实时性,并有效提升了整机级轻量化与模块化水平,该方案为特种车辆平台的性能提升提供了有效解决措施。

猜你喜欢
波特率寄存器总线
CAN 总线波特率自适应程序设计
智能制造(2020年5期)2020-07-03 06:24:00
Lite寄存器模型的设计与实现
计算机应用(2020年5期)2020-06-07 07:06:44
基于PCI Express总线的xHC与FPGA的直接通信
测控技术(2018年6期)2018-11-25 09:50:12
机载飞控1553B总线转以太网总线设计
测控技术(2018年8期)2018-11-25 07:42:08
基于FPGA的异步串行通信波特率容错设计
电子测试(2018年7期)2018-05-16 06:27:18
分簇结构向量寄存器分配策略研究*
多通道ARINC429总线检查仪
基于EtherCAT总线的ROV控制系统设计
河南科技(2014年16期)2014-02-27 14:13:22
C*Core芯片SCI串口波特率容限优化
高速数模转换器AD9779/AD9788的应用