如何实现标定?

article/2025/9/22 3:54:41

      上一篇《什么是标定》对标定进行了初步的介绍,让大家有了一个感性的认识。标定是一项非常复杂的工作的,涉及方方面面的知识非常多,本文将对标定具体实现的过程进行介绍。

 控制器对标定的支持

在前面的文章中介绍了控制算法是在软件编程的时候已经写入到控制器中,是通过标定对相关的参数进行优化调整。为了实现上述目的,控制器在软件开发中就必须支持标定数据的存储和标定通讯协议两部分功能,下面将分别进行说明:

标定数据的存储

大家都知道为了保证嵌入式软件运行的效率,大部分数据都是定义在RAM中的,只有固化确定的数据一般会存储在ROM中,比如常见的const类型的数据。而RAM中的数据又是在下电后会被清零复位的,所以标定修改了RAM的数据就无法存储下来。因此,在控制器内部就需要分别在ROM和RAM中分别划分一个区域来定义标定数据,这两个区域的空间大小必须一样,同时需要在两个区域按照相同的顺序分别一一对应定义变量,ROM区域定义为const类型变量,RAM区域定义为正常的变量。通过标定修改的数据,可以通过RAM地址映射存储到对应的ROM地址变量中,在标定完成后烧录到ROM区域中,下次上电初始化的是再从ROM中拷贝到对应的RAM区域,如此就可以实现了标定数据的自动映射参与控制算法的计算。下图是控制器内部变量映射关系说明。

标定通讯协议

嵌入式软件控制算法在开发验证完成后就会烧录到控制器中,如果通过修改数据后重新编译烧录来实现标定数据的更改就会非常麻烦。主要有以下两方面原因:一是对于一个控制器标定数据优化的频次无法确定,尤其在软件开发完成释放后就不能每次都通过烧录编译的方法来实现;二是控制器在硬件和软件控制算法定型后都会安装到固定的控制器外壳中,如果更新标定数据都通过烧录软件就需要反复拆除外壳;三是编译烧录软件更新数据就无法实现在线实时标定,让标定工作无法正常开展,这也是最关键的一点。因此,汽车行业内专门定义了相应的标定通讯协议,目前常用的是CCP和XCP两种协议,只要控制器内容集成了标定通讯协议栈软件就可以实现在线实时标定,后续文章将会对标定协议进行详细的介绍。

标定工具的支持

       当拿到一个可以支持标定的控制器后就需要选择标定工具来实现具体的标定工作了。标定工具通常包括与控制器和电脑连接通讯的硬件以及在电脑中运行的标定软件,这两部分都相对比较复杂,目前行业内主流使用的标定软硬件套件厂家基本以VECTOR的CANape和ETAS的INCA两种工具。上述两种标定工具功能非常复杂,也都是收费的商业软件,价格都在大几万人民币左右。后续文章也会对上述两种标定工具的使用展开详细的介绍。

标定的具体工作

在前面的文章介绍中举了一个简单的示例说明什么是标定,但是实际的标定工作是一项非常复杂的工作,甚至在某一些标定工作内容中还带一些危险的因素。在此以汽车行业的标定为例,一辆汽车包含了发动机、变速箱、整车匹配等等很多部分。所有零部件组成一辆完整的汽车之前需要对零部件进行标定,这就是通常所说的零部件台架标定。一辆整车在投放市场之前还需要进行包括动力性、经济性、排放性能等多方面的标定,同时由于车辆实际使用的环境是天南地北,所以就还需要在平原、高寒、高原、高热、高湿等多种环境下开展上述整车标定工作。如果按照正常完整的开发流程,一个车型从设计到投放市场的时间至少是3年,在这其中标定工作占了很大一部分工作内容,后续我们也将会介绍标定工程师相关工作。

 下一篇文章我们就将开始介绍标定协议相关知识,让大家能够更清楚的了解实现标定的具体过程。


http://chatgpt.dhexx.cn/article/nt9TZd0T.shtml

相关文章

标定的分类(一)

关于标定的分类及说明(一) 现在工业机器视觉和计算机视觉大量应用标定算法,但是对于初学者来说,存在概念模糊,理论理解错误的现状,因此,需要对标定进行梳理,防止大家在学习过程中混淆各种标定概念。话不多…

什么是标定?

标定这两个字在汽车行业里的工程师基本都听过,但是在其他行业里大部分人都不知道什么是标定,甚至都没有听说过标定。什么是标定?举一个常见的例子,家里买了电视,连接网络就可以看节目了,与其他任何环境影响…

JMS及其API介绍

Java Message Service是java ee的规范之一,可以用来发送异步消息,在某些场景下,可以作为不同系统,或者不同模块之间的集成方式。 可以类比为通过数据库来集成的方式,模块A完成逻辑以后,往数据库插…

Springboot 整合 JMS

ActiveMQ JMS 仅支持 Java 平台。 由于 JMS 是一套标准,所以 SpringBoot 整合 JMS 必然是整合 JMS 的某一个实现。 Apache ActiveMQ 是一个开源的消息中间件,完全支持 JMS 1.1 规范,支持多种编程语言( C、C、C#、Delphi、Erlang、AdobeFla…

1.JMS规范介绍

目录 1.什么是JMS规范 2.什么是MOM 3.MOM的特点 4.JMS和MOM的关联 5.JMS的体系结构 6.JMS常见基本概念 7.JMS 的事务性会话和非事务性会话 8.JMS消息的可靠性机制 1.什么是JMS规范 Java 消息服务(Java Message Service)是 java 平台中关于面向消息…

JMS 示例

JMS 开发示例。 使用weblogic8作为jms server。 1、在weblogic中配置JMS。 配置JMS connection factory 配置JMS File Store 配置JMS Server 配置JMS destination 2、创建JMS Sender package jms; import java.util.Hashtable; import javax.jms.JMSE

ActiveMQ详解一 —— JMS介绍

1. JMS概述 不同系统之间信息交换,有多种方式。 SUN公司提出了一种面向详细的中间件服务—— JMS,Java消息服务,是JavaEE的标准/规范之一。 JMS指出:消息的发送应该是异步的、非阻塞的。 也就是说,消息的发送者发送…

SpringBoot整合JMS

SpringBoot整合JMS 文章目录 SpringBoot整合JMS前言一、JMS、AMQP概念以及区别二、ActiveMQ安装三、SpringBoot整合ActiveMQ:队列模式实例1、创建demo项目2、添加依赖3、添加application配置4、添加配置文件ActiveMQConfig5、创建JMS组件文件6、发送消息控制器7、测…

JMS规范介绍

目录 1.什么是JMS规范 2.什么是MOM 3.MOM的特点 4.JMS和MOM的关联 5.JMS的体系结构 6.JMS常见基本概念 7.JMS 的事务性会话和非事务性会话 8.JMS消息的可靠性机制 1.什么是JMS规范 Java 消息服务(Java Message Service)是 java 平台中关于面向消息…

JMS规范

一、JMS经典模式详解 JMS即Java消息服务(Java Message Service)应用程序接口,是一个Java平台中关于面向消息中间件(MOM,Message oriented Middleware)的API,用于在两个应用程序之间&#xff0c…

微服务 —— 消息服务中间件 JMS

一、消息服务中间件 对于大多数应用来说,可采用消息服务中间件来提升系统异步通信,消息解耦问题。 消息的作用:异步处理、应用解耦、流量削峰。 异步消息中的两个概念:消息代理、目的地 当消息发送者发送消息,由消息…

JMS解析(二)——JMS简介

JMS解析(一)——JMS简介_踩踩踩从踩的博客-CSDN博客 前言 本篇文章会紧接着上篇文章未介绍完毕的JMS规范,继续消息接收、事务管理、持久化以及应用的介绍。 消息接收 消息接收分为队列接收和topic消息接收 对于队列的接收基本的consumer…

JMS(Java消息服务)(Activemq简单介绍)

是什么? JMS(java消息服务)是规范,它定义了一些规则,一些接口。具体实现由各种做这个产品的厂家或开源组织来实现。 为什么? 在JMS还没有诞生前,每个企业都会有自己的一套内部消息系统&#…

JMS解析(一)——JMS简介

消息中间件MQ及ActiveMQ介绍_踩踩踩从踩的博客-CSDN博客 前言 上篇文章对消息中间件做了个解析,以及ActiveMQ的安装和基本使用,做了个基本了解,因为如果不了JMS规范,一定是不学不好消息中间件和ActiveMQ,本篇文章会从JMS是什么&…

JMS基本概念

简介 JMS即Java消息服务(Java Message Service)应用程序接口,是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。Java消…

JMS概述

** 一、什么是JMS ** JMS即Java消息服务(Java Message Service)应用程序接口,是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行…

深入浅出JMS(一)——JMS简介

如果手机只能进行实时通话,没有留言和短信功能会怎么样?一个电话打过来,正好没有来得及接上,那么这个电话要传递的信息肯定就收不到了。为什么不能先将信息存下来,当用户需要查看信息的时候再去获得信息呢?伴随着这个疑惑,短息和留言应运而生,无论手机是否开机、是否未…

详解 ROI Align 的基本原理和实现细节

转载至http://blog.leanote.com/post/afanti.denggmail.com/b5f4f526490b 欢迎支持原作者。 ROI Align 是在Mask-RCNN这篇论文里提出的一种区域特征聚集方式, 很好地解决了ROI Pooling操作中两次量化造成的区域不匹配(mis-alignment)的问题。实验显示,在检测测任务…

眼睛ROI区域裁剪

为了用深度方法训练一个睁闭眼模型,这里不需要再提取特征,而是需要用到眼睛的原图,第一步就是把眼睛区域裁剪下来。 本文用的是opencv的检测库shape_predictor_68_face_landmarks.dat,得到68特征点后,根据特征点来裁剪…

目标检测Fast RCNN中的ROI pooling

目标检测的任务可以分为两步:选出所有可能存在物体的候选框、判断候选框中的物体是否为前景或者背景。 但是这可能会产生很多的候选区域,如果把它们都喂入CNN,计算量将特别大,这也是rcnn效率低的原因所在。rcnn对每个候选区域都进…