PPS Tester测量原理和实施方法
怿星科技发布了新品PPS Tester,这是一款基于1PPS方法的时间同步精度测试设备。PPS Tester由硬件模块ETS2110和上位机软件ePPSTester构成。本文将围绕此设备的应用场景,介绍相关概念和设备使用方法。
什么是时间同步?
时间同步就是采取某项技术措施对网络内各节点的时钟实施高精度“对表”。

为什么车载网络需要时间同步?
某些功能场景需要相关ECU在一致时间下协同工作,如智能汽车传感器数据融合、驾驶数据云端上传、远程监控和诊断。
车载网络时间同步精度要求?
gPTP是车载以太网实现时间同步的主要技术手段,IEEE标准规定7跳内设备之间同步精度可达到±500ns。欲达到此精度,设备硬件和执行软件需要满足一定的条件。不同的汽车功能场景,同步精度需求不同,过高的同步精度需求会提高开发和实施成本,因此,没必要追求过高的同步精度。

怎么测量时间同步精度?
Avnu测试规范推荐了三种测试方法,如下表。可以看出三种测试方法各有利弊,PPS tester基于1PPS方法实现时间同步精度测试,并克服了使用示波器进行测试的部分缺点。
| 方法 | 原理 | 优势 | 缺陷 |
| 1PPS | 被测件在整数秒输出PPS脉冲信号,比较秒脉冲上升沿相位差,即可得到被测件同步精度 | ○ 成熟的测试方法,测试简单 ○ 测试只需要示波器 | ○实施此测试方法,容易引入固定误差 ○ 需要硬件支持PPS输出 ○ 被测件需要尽可能接近 ○ 使用示波器,不适用于大规模测试 |
| Ingress Method | 使用Signaling报文报告最近一次收到Sync报文时的全局时间或同步精度 | ○ 利用已有的网络实时测试 ○ 除报告测试结果外,不需要额外的实施手段 | ○ 同步精度取决于接收Sync报文的时刻 ○ 从节点存在报告虚假结果的可能 |
| Reverse Sync | 从节点发送反向Sync报文,测试设备计算链路延迟,并根据反向Sync报文计算从节点同步精度 | ○ 测试设备计算同步精度,不依赖于从节点的报告 ○ 利用已有的网络进行测试 ○ 可以应用于集成交换机设备的测试 ○ 不需要额外的报文格式,可以利用现有的Sync发送代码 | ○ 需要从节点或交换机支持多时钟域,发送反向Sync报文 ○ 系统测试实现方式复杂 ○ 需要专用测试设备 |
1PPS测量方法?
参与时钟同步的ECU在整数秒控制PPS硬件管脚输出PPS脉冲信号,比较从节点与主节点PPS信号上升沿的差值,即可得到各从节点的同步精度。

PPS tester测试 VS 示波器测试
▪ 车载网络时间同步系统被测节点数量可达20+,示波器物理通道一般为4路,少数昂贵示波器能够达到8通道,无法满足车载网络系统级测试需求;PPS tester提供24路PPS信号采集通道。
▪ 为了实现高精度测试,示波器时间标尺一般为微秒级甚至是纳秒级,而由于示波器存储深度的限制,示波器很难实现长时间高频率信号采集和数据存储,无法实现同步精度的稳定性测试;PPS tester支持24h连续采样,并且实时记录原始采集数据。
▪ 从节点与主节点的上升沿相位差,需要测试人员通过手动移动光标,读取各通道光标之间时间差计算得出,人工读取难免有读数误差,需要测试人员进行重复测量和统计,以得到更准确的结果;人工参与度高,无法做到自动化测试;少数高级示波器具备信号自动触发和测量功能,但是价格昂贵;PPS tester能够实时计算和统计同步精度,设备测试精度高达±8ns;同时能够处理信号异常,如信号错误、信号丢失。
PPS tester设备使用方法
实施测试前需要调研ECU信息,作为测试输入,示例如下:
| 序号 | ECU名称 | 脉冲宽度(ms) | PPS信号电压(v) | 是否主节点 | 同步精度限值(ns) | 硬件通道号 |
| 1 | CCU | 100 | 3.3 | 是 | 300 | CH1 |
| 2 | FZCU | 100 | 3.3 | 否 | 300 | CH2 |
| 3 | LZCU | 200 | 5 | 否 | 300 | CH5 |
| 4 | RZCU | 200 | 5 | 否 | 300 | CH6 |
按照下图连接测试系统:
▪ 电源线接12V DC稳压电源,为ETS2110设备供电;
▪ 网线连接计算机,并配置电脑IPv4地址与ETS2110同网段地址,实现ETS2110和ePPSTester的通信;
▪ 按照测试前提表中分配的通道,采集线连接ECU PPS信号输出管脚;

打开ePPSTester上位机软件,新建并保存工程;依据测试前提表,对通道和参数进行配置;同时网络连接设备,下发配置:


点击"开始"测试按键,启动测试,实时监测PPS脉冲信号、同步精度和各通道的统计分析数据

点击"停止"测试按键,测试结束,生成同步精度直方图和测试报告。
▪ 同步精度直方图,统计各ECU同步精度的分布情况

▪ 测试报告,统计各通道同步精度极值、超限情况以及信号异常

相关文章:
PPS Tester测量原理和实施方法
怿星科技发布了新品PPS Tester,这是一款基于1PPS方法的时间同步精度测试设备。PPS Tester由硬件模块ETS2110和上位机软件ePPSTester构成。本文将围绕此设备的应用场景,介绍相关概念和设备使用方法。 什么是时间同步? 时间同步就是采取某项技…...
浅谈新电改背景下电网企业综合能源服务商业模式研究及发展方向
安科瑞 华楠 摘要: 新电改方案实施后,由于输配电价的改革和售电侧的放开,电网企业的盈利模式也随之发生了变化。这就要求电网企业转变服务理念与经营方式,来寻求竞争优势。基于“魏朱六要素商业模式”模型,对电网企业综合能源服务…...
SpringBoot + Docker 实现一次构建到处运行~
一、容器化部署的好处 图片 Docker 作为一种新兴的虚拟化方式,它可以更高效的利用系统资源,不需要进行硬件虚拟以及运行完整操作系统等额外开销。 传统的虚拟机技术启动应用服务往往需要数分钟,而 Docker 容器应用,由于直接运行…...
clang-format格式化代码
1. clang-format简介 Clang-Format可用于格式化(排版)多种不同语言的代码。其自带的排版格式主要有:LLVM, Google, Chromium, Mozilla, WebKit等; 利用style参数配置风格。通过编写 .clang-format 文件,可以实现代码风格的配置。…...
品牌宣传与媒体传播是声誉管理的主要方式之一
企业声誉是现如今影响品牌信任度、客户忠诚度的重要因素,也被视为企业的一种无形资,更影响着企业未来的发展。因此,企业声誉管理也日渐成为企业管理的重要课题之一,尤其在品牌营销管理领域。 什么是声誉管理?声誉管理有…...
2023年8月7日-8月13日,(上午熟悉公司代码,周一到周五晚上优先工作所急视频教程,其他业余时间进行ue视频教程,为独立游戏做准备)
按照规划,上午熟悉公司源码,下午进行filament和ue渲染,晚上写工作代码。回家后泛读pbrt或者其他书籍催眠。 业余学习ue的各种视频教程,为独立游戏做准备(公司也实行末位淘汰,给自己留条后路)。累…...
Vue3 第二节 Vue3的响应式
1.Vue3的响应式原理 2.ref函数和reactive函数的对比 3.setup注意点 一.Vue3的响应式原理 1.Vue2.x中的响应式原理 ① 实现原理 对象类型:通过Object.defineProperty() 对属性的读取,修改进行拦截(数据劫持)数组类型…...
通过easyui实现动态控制表格字段显示、导出表格数据
前言 学过layui前端框架的都知道,layui默认帮我们实现了控制表格字段显示以及数据的导出功能。 1、控制表格字段显示 2、数据导出 3、导出为pdf:导出按钮的右边那个按钮就是打印pdf的 那么,easyui要怎么实现这些功能呢?这篇文章就…...
JWT入门,jwt可以解密吗?
JWT 什么是 JWT JSON Web Token,通过数字签名的方式,以 JSON 对象为载体,在不同的服务终端之间安全地传输信息 官网:https://jwt.io/SDK: https://jwt.io/libraries (含Java和各种语言)Java SDK(上面的SDK链接得到): https://g…...
36.利用解fgoalattain 有约束多元变量多目标规划问题求解(matlab程序)
1.简述 多目标规划的一种求解方法是加权系数法,即为每一个目标赋值一个权系数,把多目标模型转化为一个单目标模型。MATLAB的fgoalattain()函数可以用于求解多目标规划。 基本语法 fgoalattain()函数的用法: x fgoalattain(fun,x0,goal,weig…...
EPPlus 读取和生成Excel
在项目中添加了EPPlus库的引用,你可以通过NuGet包管理器或手动将EPPlus库添加到项目中。同时,需要注意的是EPPlus库支持的是xlsx格式的Excel文件。 读取 使用EPPlus读取本地Excel文件的示例代码如下: using OfficeOpenXml;public void Rea…...
Java wait() notify() join()用法讲解
一、wait() 1. 源码: 实际调用本地方法 2. 作用 释放当前锁,并让当前线程进入等待状态;timeoutMillis为等待时间,单位毫秒,如果为0则表示无限等待下去;该方法使用前提是:当前执行线程必须持…...
新手注意事项-visual studio 来实现别踩白块儿
自己之前为了熟悉easyx练习过一个简单的项目,别踩白块儿,链接在这里,别踩白块儿,当时比较稚嫩,很多东西都不会,可以说是只知道最基本的语法,头文件都不知道,一个一个查资料弄懂的&am…...
【力扣】2810. 故障键盘 <模拟>
【力扣】2810. 故障键盘 你的笔记本键盘存在故障,每当你在上面输入字符 ‘i’ 时,它会反转你所写的字符串。而输入其他字符则可以正常工作。给你一个下标从 0 开始的字符串 s ,请你用故障键盘依次输入每个字符。返回最终笔记本屏幕上输出的字…...
Docker desktop使用配置
1. 下载安装 https://www.docker.com/ 官网下载并安装doker desktop 2. 配置镜像 (1)首先去阿里云网站上进行注册:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors (2)注册完成后搜索:容…...
第一百二十一天学习记录:线性代数:矩阵乘法运算(宋浩板书)
在编程和学习数据结构的过程中,发现有些算法会用到矩阵和矩阵的乘法运算,因此先将这一个知识点学习一下。 矩阵和行列式的区别 各种矩阵的概念 矩阵运算 乘法☆ 总结三条不满足...
模拟实现消息队列项目(系列3) -- 服务器模块(硬盘管理)
目录 前言 1. 创建项目 2. 创建核心类 2.1 Exchange 2.2 MSQueue 2.3 Binding 2.4 Message 3. 数据库设计 3.1 SQLite 配置 3.2 Mapper层代码实现 3.2.1 创建表操作 3.2.2 交换机 队列 绑定的增加和删除 3.3 实现DataBaseManager 3.4 DataBaseManager单元测试 4.…...
【iOS】锁
线程安全 当一个线程访问数据的时候,其他的线程不能对其进行访问,直到该线程访问完毕。简单来讲就是在同一时刻,对同一个数据操作的线程只有一个。而线程不安全,则是在同一时刻可以有多个线程对该数据进行访问,从而得…...
杰发科技(合肥)2021笔试题
笔试时间:2020.10.17 ,10:30-12:00。 岗位:Linux 驱动工程师。 题型:选择题8道,填空题10道,编程题4道。 杰发科技主要做汽车电子,由北京四维图新控股,对汽车电子感兴趣的有机会可以应聘试试。 选择题 1、128,4 #include<stdio.h> unsigned int getstrsiz…...
Java堆排序
目录 PriorityQueue自己实现 PriorityQueue public class PriorityQueueMain {public static void main(String[] args) {int[] temp {40, 2, 33, 26, 35, 8, 8, 26, 29, 2};PriorityQueue<Integer> priorityQueue new PriorityQueue<>();for (int i 0; i <…...
Purpur性能调优实战指南:7大核心优化方案深度解析
Purpur性能调优实战指南:7大核心优化方案深度解析 【免费下载链接】Purpur Purpur is a drop-in replacement for Paper servers designed for configurability, and new fun and exciting gameplay features. 项目地址: https://gitcode.com/gh_mirrors/pu/Purpu…...
【ZYNQ】AXI4总线协议实战:从握手时序到PS-PL高效通信
1. AXI4总线协议基础:从握手信号到通道架构 第一次接触ZYNQ的PS-PL通信时,我被AXI4协议里那些VALID/READY信号搞得头晕眼花。直到在示波器上抓到真实的握手波形,才突然理解这个看似复杂的协议其实像极了我们日常的对话机制——只有当说话方准…...
SAP KO88结算时,如何用BADI_FINS_ACDOC_POSTING_EVENTS把成本中心塞进自定义字段?
SAP KO88结算实战:通过BADI_FINS_ACDOC_POSTING_EVENTS实现成本中心到自定义字段的精准映射 在SAP工单结算(KO88)的复杂业务场景中,财务凭证的标准化字段往往无法满足企业多维度的分析需求。特别是当需要将特定成本中心信息映射到…...
Redis增强工具包:封装分布式锁、缓存模板与监控的最佳实践
1. 项目概述:一个Redis开发者的“瑞士军刀”在分布式系统和高并发场景下,Redis几乎成了标配。但用久了你会发现,官方客户端虽然稳定,但在日常开发、调试、运维中,总有些“不够顺手”的地方。比如,想批量按模…...
移动端AI助手开发实战:混合架构、模型部署与性能优化
1. 项目概述:一个移动端AI助手的诞生 最近在移动端AI应用开发圈子里,一个名为 copaw-mobile 的项目开始引起不少同行的注意。这个由 xmingai 团队开源的项目,定位非常清晰——它要做的,就是将一个功能强大的AI助手,…...
中文长文本语音崩溃?ElevenLabs API超时/截断/静音突变?20年语音架构师紧急发布的6行容错重试+分段重对齐代码(已验证10万+字符稳定输出)
更多请点击: https://intelliparadigm.com 第一章:中文长文本语音崩溃的根因诊断与现象复现 中文长文本语音合成(TTS)在处理超长段落(如 >3000 字)时频繁出现进程中断、内存溢出或静音输出,…...
树莓派扩展板EYESPI Pi Beret:简化硬件连接,加速原型开发
1. 项目概述:为什么我们需要EYESPI Pi Beret?玩树莓派的朋友,尤其是喜欢捣鼓屏幕和传感器的,肯定都经历过那个阶段:面对一堆杜邦线,对照着屏幕驱动板的引脚定义,一个个数着树莓派的GPIO针脚&…...
从零构建大语言模型:Transformer架构、训练技巧与实战指南
1. 项目概述:从零构建你自己的大语言模型最近几年,大语言模型(LLM)的热度居高不下,从ChatGPT到Claude,再到国内外的各种开源模型,它们展现出的理解和生成能力让人惊叹。但你是否也和我一样&…...
从仿生结构到步态算法:8自由度并联腿机器狗行走全解析
1. 8自由度并联腿机器狗的结构奥秘 第一次拆解机器狗时,我对着那些复杂的连杆结构发了半小时呆。直到发现它的腿部运动原理和公园里的跷跷板惊人相似——这个发现让我瞬间理解了8自由度并联腿的精妙之处。这种结构就像给机器人装上了"机械肌腱"࿰…...
跨平台鼠标控制库ez-cursor-free:原理、实现与自动化实战
1. 项目概述与核心价值如果你是一名开发者,尤其是经常需要处理跨平台UI自动化、游戏脚本或者桌面应用交互的开发者,那么你一定对“鼠标控制”这个基础但又充满细节的环节感到过头疼。不同的操作系统(Windows, macOS, Linux)提供了…...
