AK传输协议学习

2024-02-19 14:30
文章标签 学习 协议 传输 ak

本文主要是介绍AK传输协议学习,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本文资料来自KMI25/2,KMI25/4的产品数据手册(KMI25_2_4.pdf),如有不对的地方,欢迎大家指正。

AK协议用于数据信号的传输,它是一种轮速传感器(WSS)和电子控制单元(ECU)的标准接口。由传感器产生的信号经过信号调理单元处理,产生速度信号和数据信号。

1 AK信号的定义

AK信号的格式如Fig 6所示。
在这里插入图片描述

一帧AK信号包含速度脉冲(speed pulse)和数据协议位(data protocol bits),对应着速度信号和数据信号。速度脉冲反映齿轮的结构,且可根据相邻两个速度脉冲的时间间隔算出轮速。数据协议位表示其他额外信息,比如旋转方向、场幅度(field amplitude)等内容。AK信号是通过改变电流的大小来传输数据,电流分为三级。高等级电流(I_CCH,HIGH-level supply current),一般取28mA,用于速度脉冲;中等级电流(I_CCM,MID-level supply current),一般取14mA,用于数据协议位;低等级电流(I_CCL,LOW-level supply current),一般取7mA,用于表示信号中的低电平。
在这里插入图片描述

当传感器检测到过零输入信号时(即检测到磁场为0),延时t_d(70~121us)后输出一个速度脉冲,脉冲宽度为t_p(通常为50us)。速度脉冲后面是数据协议位,最多有9个的数据单元。每个数据单元表示1位数据,所占时长为t_p。在速度脉冲和数据协议位的第一个数据单元之间存在t_p/2的时间间隔。
下图(Fig 7)是协议数据位的表示方法。在数据单元的时间段内,若检测到电流上升沿则表示数据1,电流下降沿表示数据0。若不存在电流边沿,则该位数据无效。
在这里插入图片描述

协议数据位最多有9位,每一位的定义如Table 4。
在这里插入图片描述

2 AK信号的两种状态

根据输入信号的频率不同,发出的AK信号将会有两种状态:低速运行和高速运行。

2.1 低速运行

当输入信号频率较低,以至于距离上次检测到过零输入信号的时间已超过T_stop(通常为150ms)时,仍未有新的过零输入信号出现,则将信号重新发送一遍,但速度脉冲用电流大小为I_CCM的人工速度脉冲代替。若继续T_stop后依然未检测到过零输入信号,继续重复发送。如果在1秒内没有检测到过零信号,或相关迟滞电平在250毫秒内没有通过,系统进入低速模式,协议数据位中的模式位(M)由0变为1。在重复发送信号时,若一帧信号还没发送完时检测到了过零信号输入,则发送新速度脉冲之前终止重复传输。因存在延时t_d,所以在检测到过零信号后正在发送的数据单元可以正常发送完毕,并且发送新速度脉冲前存在至少t_p/2的时间间隔。如Fig 8所示。
在这里插入图片描述

2.2 高速运行

当输入信号的频率很高时,速度脉冲后面的9个数据单元并不一定会全部发送,但正在发送的数据单元都可以正常发送完毕,而且每帧数据一定存在一个速度脉冲。这种运行状态和低速运行中重复发送信号的终止方式一致,如Fig 8所示。

3 相关参数

在这里插入图片描述

在这里插入图片描述

这篇关于AK传输协议学习的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

如何在Spring Boot项目中集成MQTT协议

《如何在SpringBoot项目中集成MQTT协议》本文介绍在SpringBoot中集成MQTT的步骤,包括安装Broker、添加EclipsePaho依赖、配置连接参数、实现消息发布订阅、测试接口... 目录1. 准备工作2. 引入依赖3. 配置MQTT连接4. 创建MQTT配置类5. 实现消息发布与订阅

使用Python进行GRPC和Dubbo协议的高级测试

《使用Python进行GRPC和Dubbo协议的高级测试》GRPC(GoogleRemoteProcedureCall)是一种高性能、开源的远程过程调用(RPC)框架,Dubbo是一种高性能的分布式服... 目录01 GRPC测试安装gRPC编写.proto文件实现服务02 Dubbo测试1. 安装Dubb

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

重新对Java的类加载器的学习方式

《重新对Java的类加载器的学习方式》:本文主要介绍重新对Java的类加载器的学习方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、介绍1.1、简介1.2、符号引用和直接引用1、符号引用2、直接引用3、符号转直接的过程2、加载流程3、类加载的分类3.1、显示

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

Nginx中配置HTTP/2协议的详细指南

《Nginx中配置HTTP/2协议的详细指南》HTTP/2是HTTP协议的下一代版本,旨在提高性能、减少延迟并优化现代网络环境中的通信效率,本文将为大家介绍Nginx配置HTTP/2协议想详细步骤,需... 目录一、HTTP/2 协议概述1.HTTP/22. HTTP/2 的核心特性3. HTTP/2 的优

关于WebSocket协议状态码解析

《关于WebSocket协议状态码解析》:本文主要介绍关于WebSocket协议状态码的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录WebSocket协议状态码解析1. 引言2. WebSocket协议状态码概述3. WebSocket协议状态码详解3

Java进阶学习之如何开启远程调式

《Java进阶学习之如何开启远程调式》Java开发中的远程调试是一项至关重要的技能,特别是在处理生产环境的问题或者协作开发时,:本文主要介绍Java进阶学习之如何开启远程调式的相关资料,需要的朋友... 目录概述Java远程调试的开启与底层原理开启Java远程调试底层原理JVM参数总结&nbsMbKKXJx

Qt 中集成mqtt协议的使用方法

《Qt中集成mqtt协议的使用方法》文章介绍了如何在工程中引入qmqtt库,并通过声明一个单例类来暴露订阅到的主题数据,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧... 目录一,引入qmqtt 库二,使用一,引入qmqtt 库我是将整个头文件/源文件都添加到了工程中进行编译,这样 跨平台