UDS 诊断 - InputOutputControlByIdentifier(按标识符的输入输出控制)(0x2F)服务

news2024/11/24 6:09:00

UDS 诊断服务系列文章目录

诊断和通信管理功能单元
UDS 诊断 - DiagnosticSessionControl(诊断会话控制)(0x10)服务
UDS 诊断 - ECUReset(ECU重置)(0x11)服务
UDS 诊断 - SecurityAccess(安全访问)(0x27)服务
UDS 诊断 - CommunicationControl(通信控制)(0x28)服务
UDS 诊断 - TesterPresent(测试仪保活)(0x3E)服务
UDS 诊断 - AccessTimingParameter(访问计时参数)(0x83)服务
UDS 诊断 - SecuredDataTransmission(受保护的数据传输)(0x84)服务
UDS 诊断 - ControlDTCSetting(控制DTC设置)(0x85)服务
UDS 诊断 - ResponseOnEvent(基于事件响应)(0x86)服务
UDS 诊断 - LinkControl(链路控制)(0x87)服务
数据传输功能单元
UDS 诊断 - ReadDataByIdentifier(按标识符读取数据)(0x22)服务
UDS 诊断 - ReadMemoryByAddress(按地址读取内存)(0x23)服务
UDS 诊断 - ReadScalingDataByIdentifier(按标识符读取换算数据)(0x24)服务
UDS 诊断 - ReadDataByPeriodicIdentifier(按周期性标识符读取数据)(0x2A)服务
UDS 诊断 - DynamicallyDefineDataIdentifier(动态定义数据标识符)(0x2C)服务
UDS 诊断 - WriteDataByIdentifier(按标识符写数据)(0x2E)服务
UDS 诊断 - WriteMemoryByAddress(按地址写内存)(0x3D)服务
存储数据传输功能单元
UDS 诊断 - ClearDiagnosticInformation(清除诊断信息)(0x14)服务
UDS 诊断 - ReadDTCInformation(读取 DTC 信息)(0x19)服务(1) - 服务说明
UDS 诊断 - ReadDTCInformation(读取 DTC 信息)(0x19)服务(2) - 请求消息
UDS 诊断 - ReadDTCInformation(读取 DTC 信息)(0x19)服务(3) - 响应消息
UDS 诊断 - ReadDTCInformation(读取 DTC 信息)(0x19)服务(4) - 示例
输入输出控制功能单元
UDS 诊断 - InputOutputControlByIdentifier(按标识符的输入输出控制)(0x2F)服务

本文章可能会涉及到的文章
UDS诊断 - 数据标识符代码 DID 参数的定义

文章目录

  • UDS 诊断服务系列文章目录
  • 一、服务说明
  • 二、请求消息
    • 1. 请求消息定义
    • 2. 请求消息数据参数定义
  • 三、肯定响应消息
    • 1. 肯定响应消息定义
    • 2. 肯定响应消息数据参数定义
  • 四、inputOutputControlParameter(输入输出控制参数)定义
  • 五、支持的NRC
  • 六、示例
    • 1. 假设
    • 2. 示例 1 - “进气门位置” shortTermAdjustment(短期调整)
    • 3. 示例 2 - EGR 和 IAC shortTermAdjustment(短期调整)
      • 1)假定
      • 2)案例 1:仅控制 IAC 枢纽位置
      • 3)案例 2:仅控制 RPM
      • 4)案例 3:控制踏板位置 A 和 EGR 工作周期
      • 5)案例 4:将参数的控制权返还给 ECU


一、服务说明

客户端使用 InputOutputControlByIdentifier(按标识符的输入输出控制)服务代替输入信号值,以及电子系统输出(执行机构)的内部服务器功能和/或力控制值。总之,该服务用于相对简单的(如静态)输入替换/输出控制,但若必须使用较为复杂的输入替换/输出控制时,则使用 routineControl(例程控制)。

客户端请求消息包括服务器引用输入信号、内部服务器功能和/或输出信号(执行机构)的 dataIdentifier(访问设备控制时可能引用一组信号)。controlOptionRecord(控制选项记录)参数须包括服务器输入信号、内部功能和/或输出信号的所有信息。若控制的 dataIdentifier 引用了多个参数(即打包或位映射数据标识符),则车辆制造商可要求请求消息中包含 controlEnableMask(控制启用掩码)。若车辆制造商选择支持 EnableMask(启用掩码)概念,则该服务的所有类型 InputOutputControlByIdentifier(按标识符的输入输出控制)请求必须有 controlEnableMask(控制启用掩码)参数。若对引用输出测量值或反馈值的 dataIdentifier 请求 InputOutputControlByIdentifier(按标识符的输入输出控制),则服务器须负责在服务器控制策略内替换正确的目标值,以使从客户端请求消息的正常服务器控制策略能够尝试达到所需状态。

若请求控制成功启动或已达到所需状态,则服务器须发送肯定响应消息。即使 dataldentifier 当前不受测试仪的控制,服务器也须向 returnControIToECU(将控制权返还给 ECU)的 inputOutputControlParameter(输入输出控制参数)的请求消息发送肯定响应消息。此外,服务器在接收到 retumControIToECU(将控制权返还给ECU)请求时,务必将客户端的所有 controlMask(控制掩码)(若支持)位设置为 ‘1’,以便打包或位映射的 dataldentifier会完全返回至 ECU。符合请求消息 controlOptionRecord(控制选项记录)参数的 inputOutputControlParameter(输入输出控制参数)的 controlState(控制状态)字节的格式和长度,须完全匹配正在被请求的 dataldentifier 的 dataRecord 的长度和格式。此种方式须确保用带相同 DID 的 ReadDatabyldentifier(按标识符读取数据)能够获取实际输出或输入状态。

使用 InputOutputContolByldentifier(按标识符的输入输出控制)服务执行输入替换或输出控制时,ECU 在接收到请求时会有两个基本要求。第一个是从所有的上流控制策略上断开 dataldentifier 内参数引用的对应数据对象,否则将更新数据对象值。第二个是替换控制策略所有下流活动所使用的对应数据对象值。例如,直接强制点亮前大灯的测试仪请求会需要防止前大灯开关位置受前大灯输出的影响,并将所需的 “点亮” 状态替换为最终决定前大灯状态所需输出的功能所使用的数据对象。

该服务允许控制单个 dataldentifier 及其单个请求消息的相应参数。这样的话,服务器会响应包括请求消息数据标识符以及控制状态信息在内的单个响应消息。

二、请求消息

1. 请求消息定义

字节参数名称字节值Cvt
#1 InputOutputControlByIdentifier(按标识符的输入输出控制)请求SID0x2FM

#2
#3
dataIdentifier[] = [
byte#1(MSB)
byte#2(LSB) ]

0x00 - 0xFF
0x00 - 0xFF

M
M

#4
..
#4+(m-1)
controlOptionRecord[] = [
inputOutputControlParameter
controlState#1
..
controlState#m ]

0x00 - 0xFF
0x00 - 0xFF
..
0x00 - 0xFF

M1
C1
..
C1

#4+m
..
#4+m+(r-1)
controlEnableMaskRecord[] = [
controlMask#1
..
controlMask#r ]

0x00 - 0xFF
..
0x00 - 0xFF

C2
..
C2

C1:是否使用该参数取决于 dataIdentifier 和 inputOutputControlParameter(输入输出控制参数)
C2:若车辆制造商支持 controlEnableMask(控制启用掩码)概念,则 dataIdentifier 由多个参数组成时须包括该参数。

2. 请求消息数据参数定义

定义
dataIdentifier(数据标识符)
该参数定义了服务器本地输入信号、内部参数和/或输出信号。
controlOptionRecord(控制选项记录)
由一个或多个字节(inputOutputControlParameter 和 controlState#1 至 controlState#m)组成。
controlEnableMaskRecord(控制启用掩码记录)
由一个或多个字节(controlMask#1 至 controlMask#r)组成。仅在需控制的 dataIdentifier 由多个参数(即对数据标识符定义了位映射或打包)组成时支持 controlEnableMaskRecord。与 dataIdentifier 内定义的各个参数相对应的 controlEnableMaskRecord 中须有一位。需控制的 dataIdentifier 仅由单个参数组成时,不得支持 controlEnableMaskRecord。
注:dataIdentifier 的各参数可以是任何数目的位。
controlEnableMaskRecord 内各位的数值须确定 dataIdentifier 的对应参数是否请求的影响。controlEnableMaskRecord 的 ‘0’ 位值须表示相应参数不受该请求的影响,‘1’ 位值须表示相应参数受该请求的影响。controlMask#1 最高有效位须与 controlState#1 最高有效位 controlState 首个参数相对应,controlMask#1 的次高有效位须与 controlState 的第二个参数相对应,以此方式继续对所有参数采用所必须的多个 controlMask(控制掩码)字节。
例如,controlMask#2 最低有效位会与 controlState 的第 16 个参数相对应。对于位映射的数据标识符,不支持的位也须在 controlEnableMaskRecord 中有对应的位,以便 controlEnableMaskRecord 各参数的掩码位的位置与 controlState 对应参数的位置能够完全匹配。

三、肯定响应消息

1. 肯定响应消息定义

字节参数名称字节值Cvt
#1 InputOutputControlByIdentifier(按标识符的输入输出控制)响应SID0x6FM

#2
#3
dataIdentifier[] = [
byte#1(MSB)
byte#2(LSB) ]

0x00 - 0xFF
0x00 - 0xFF

M
M

#4
#5
..
#5+(m-1)
controlStatusRecord[] = [
inputOutputControlParameter
controlState#1
..
controlState#m ]

0x00 - 0xFF
0x00 - 0xFF
..
0x00 - 0xFF

M
C1
..
C1

C1:是否使用该参数取决于 dataIdentifier 和 inputOutputControlParameter(输入输出控制参数)。

2. 肯定响应消息数据参数定义

定义
dataIdentifier(数据标识符)
该参数是请求消息的 dataIdentifier 的回显。
controlStatusRecord(控制状态记录)
由多个字节(inputOutputControlParameter 和 controlState#1 至 controlState#m)组成,包括反馈数据等。

四、inputOutputControlParameter(输入输出控制参数)定义

字节值说明
0x00returnControlToECU(将控制权返还给 ECU)
该值向服务器表明客户端不再控制 dataIdentifier 引用的输入信号、内部参数和/或输出信号。
请求的 controlState 字节的详细信息:0 字节
肯定响应的 controlState 字节的详细信息:等于 dataIdentifier 的 dataRecord 的大小和格式。
0x01resetToDefault(重置为默认状态)
该值向服务器表明需要将 dataIdentifier 引用的输入信号、内部参数和/或输出信号重置为默认状态。
请求的 controlState 字节的详细信息:0 字节
肯定响应的 controlState 字节的详细信息:等于 dataIdentifier 的 dataRecord 的大小和格式。
0x02freezeCurrentState(冻结当前状态)
该值向服务器表明需要冻结 dataIdentifier 引用的输入信号、内部参数和/或输出信号的当前状态。
请求的 controlState 字节的详细信息:0 字节
肯定响应的 controlState 字节的详细信息:等于 dataIdentifier 的 dataRecord 的大小和格式。
0x03shortTermAdjustment(短期调整)
该值向服务器表明需要将RAM 中 dataIdentifier 引用的输入信号、内部参数和/或受控输出信号调整为 controlOption 参数中的值(例如,将怠速空气控制阀设置为特定步骤编号,将脉冲宽度值设置为特定值/占空比)。
请求的 controlState 字节的详细信息:等于 dataIdentifier 的 dataRecord 的大小和格式
肯定响应的 controlState 字节的详细信息:等于 dataIdentifier 的 dataRecord 的大小和格式。
0x04保留
Column 1Column 2
centered 文本居中right-aligned 文本居右

五、支持的NRC

NRC说明
0x13消息长度不正确或格式无效
0x22条件不正确
若不符合请求 inputOutputControl 的要求,则返回该 NRC。
0x31请求超过限值
下述情况下,应发送此 NRC:
- 装置不支持请求的 dataIdentifier 值;
- InputOutputControlByIdentifier(按标识符的输入输出控制)所含的数值失效;
controlOptionRecord 的一个或多个适用 controlState 数值失效;
装置不支持 controlEnableMaskRecord 的各启用控制的位组合。
0x33安全访问被拒绝
若客户端发送带有效、安全的 dataIdentifier 的请求且服务器安全功能当前是激活的,则须返回 NRC。

下图为 0x2F 服务 NRC 的处理。
0x2F 服务 NRC 的处理

图例
1. 至少 4(SI + DID + IOCP)
2. 若 IOCP = shortTermAdjustment,则 1 字节 SI + 2 字节 DID + 1 字节 IOCP + 第 n 个字节 controlState + 第 n 个字节 controlMask(若适用)
2. 若 IOCP <> shortTermAdjustment,则 1 字节 SI + 2 字节 DID + 1 字节 IOCP + 第 n 个字节 controlMask(若适用)。

六、示例

1. 假设

下述示例说明了如何与 HVAC 控制模块一起使用 inputOutputControlByIdentifier(按标识符的输入输出控制),并假定在单个服务器内执行物理通信。

2. 示例 1 - “进气门位置” shortTermAdjustment(短期调整)

正受控制的参数是与 dataIdentifier(0x9B00)相关的 “进气门位置”。换算:Air Inlet Door Position(进气门位置)[%] = 十进制(十六进制)* 1 [%]

step1:使用 ReadDataByIdentifier(按标识符读取数据)服务读取进气门位置的当前状态

req   22 9B 00
resp  62 9B 00 0A

step2:shortTermAdjustment(短期调整)

req   2F 9B 00 03 
	 3C - controlOptionRecord[controlState#1] = 60%
resp  6F 9B 00 03 3C

注:按上述规定,客户端已发送一条 InputOutputControlByIdentifier(按标识符的输入输出控制)请求消息。服务器已立即发送肯定响应消息,包括数值为 12% 的 controlState 参数 “进气门位置”。进气门需要一定的时间达到 60% 的请求值。

step3:使用 ReadDataByIdentifier(按标识符读取数据)服务读取进气门位置的当前状态

req   22 9B 00
resp  62 9B 00 3C

注:按上述规定,客户端在启用 InputOutputControlByIdentifier(按标识符的输入输出控制)时已发送一条 readDataByIdentifier 请求消息。服务器控制策略需要有限的时间最终达到所需的值。上述示例出现在服务器最终达到所需的目标值时。

step4:returnControlToECU(将控制权返还给 ECU)

req   2F 9B 00 00
resp  6F 9B 00 00 3A

step5:freezeCurrentState(冻结当前状态)

req   2F 9B 00 02
resp  6F 9B 00 02 3A

3. 示例 2 - EGR 和 IAC shortTermAdjustment(短期调整)

1)假定

本示例使用了打包的 dataIdentifier 0x0155 说明单个请求内的各个参数或多个参数。

本节规定了 shortTermAdjustment(短期调整)功能的测试条件和示例 dataIdentifier 0x0155 的相关消息流。

dataIdentifier 支持下表内的五个参数。

DID数据字节参数数据记录内容
数量大小
0x0155#1(所有位)#18 个位dataRecord[ data#1 ] = IAC Pintle Position(n = 次数)
#2 - #3(所有位)#216 个位dataRecord[ data#2 - #3 ] = RPM(0 = 0 U/min,65 535 = 65 535 U/min
#4(第 7 位至 4 位)#34 个位dataRecord[ data#4(bits 7-4) ] = Pedal Position A:Linear Scaling,0 = 0%,15 = 120%
#4(第 3 位至 0 位)#44 个位dataRecord[ data#4(bits 3-0) ] = Pedal Position B:Linear Scaling,0 = 0%,15 = 120%
#5(所有位)#58 个位dataRecord[ data#5 ] = EGR Duty Cycle:Linear Scaling,0 次 = 0%,255 次 = 100%

dataIdentifier 0x0155 由定义打包,并由五个基本参数组成。为实现单独控制,通过 ControlEnableMaskRecord(控制启用掩码记录)内的单一位选用这些各个基本参数。若指定的 dataIdentifier 有除了打包或位映射以外的定义,则请求消息中没有 ControlEnableMaskRecord。ControlMask#1 最高有效位务必与 ControlState#1 最高有效位 dataIdentifier 首个参数相对应。

dataIdentifier 0x0155 的 ControlEnableMaskRecord
总大小 = 1 字节(仅由 ControlEnableMask#1 组成)
位的位置ControlEnableMask#1 - 位含义(1 = 受影响,0 = 不受影响)
7(最高有效位)确定参数 1(IAC 枢纽位置)是否受请求的影响
6确定参数 2(RPM)是否受请求的影响
5确定参数 3(踏板位置 A)是否受请求的影响
4确定参数 4(踏板位置 B)是否受请求的影响
3确定参数 5(EGR 工作周期)是否受请求的影响
2未因响应参数产生影响
1未因响应参数产生影响
0(最低有效位)未因响应参数产生影响

2)案例 1:仅控制 IAC 枢纽位置

req  2F 01 55  03 
	 07 - controlOptionRecord[ controlState#1 ] = IAC 枢纽位置(7 次)
	 XX - controlOptionRecord[ controlState#2 ] = RPM(XX)
	 XX - controlOptionRecord[ controlState#3 ] = RPM(XX)
	 YZ - controlOptionRecord[ controlState#4 ] = 踏板位置 A(Y)和 B(Z)
	 XX - controlOptionRecord[ controlState#5 ] = EGR 工作周期(XX)
	 80 - controlEnableMask[ controlMask#1 ]  = 仅控制 IAC 枢轴位置
// 注:controlState#2 - #5 中的 RPM 值、踏板位置 A、B 和 EGR 工作周期均是各不相关的,因为 controlMask#1 参数规定了仅 dataIdentifier 的首个参数会受请求的影响。

resp 6F 01 55 03 
	 07 - controlOptionRecord[ controlState#1 ] = IAC 枢纽位置(7 次) 
	 02 - controlOptionRecord[ controlState#2 ] = RPM(750 U/min) 
	 EE - controlOptionRecord[ controlState#3 ] = RPM 
	 12 - controlOptionRecord[ controlState#4 ] = 踏板位置 A(8%)和 B(16%) 
	 59 - controlOptionRecord[ controlState#5 ] = EGR 工作周期(35%)
// 注:controlState#1 - controlState#5 中的做优参数传输值须反映系统当前状态。

3)案例 2:仅控制 RPM

req  2F 01 55 03
	 XX - controlOptionRecord[ controlState#1 ] = IAC 枢纽位置(XX 次)
	 03 - controlOptionRecord[ controlState#2 ] = RPM(0x03E8 = 1000 U/min)
	 E8 - controlOptionRecord[ controlState#3 ] = RPM
	 YZ - controlOptionRecord[ controlState#4 ] = 踏板位置 A(Y)和 B(Z)
	 XX - controlOptionRecord[ controlState#5 ] = EGR 工作周期(XX)
	 40 - controlEnableMask[ controlMask#1 ] = 仅控制 RPM
// 注:controlState#1 和 controlState#4 - #5 中的 IAC 枢轴位置、踏板位置 A、B 和 EGR 工作周期均是各不相关的,因为 controlMask#1 参数规定了仅 dataIdentifier 的第二个参数会受请求的影响。

resp 6F 01 55 03 
	 09 - controlOptionRecord[ controlState#1 ] = IAC 枢纽位置(9 次) 
	 03 - controlOptionRecord[ controlState#2 ] = RPM(950 U/min) 
	 B6 - controlOptionRecord[ controlState#3 ] = RPM 
	 12 - controlOptionRecord[ controlState#4 ] = 踏板位置 A(8%)和 B(16%) 
	 59 - controlOptionRecord[ controlState#5 ] = EGR 工作周期(35%)
// 注:controlState#1 - controlState#5 中的做优参数传输值须反映系统当前状态。

4)案例 3:控制踏板位置 A 和 EGR 工作周期

req  2F 01 55 03
	 XX - controlOptionRecord[ controlState#1 ] = IAC 枢纽位置(XX 次)
	 XX - controlOptionRecord[ controlState#2 ] = RPM(XX)
	 XX - controlOptionRecord[ controlState#3 ] = RPM(XX)
	 3Z - controlOptionRecord[ controlState#4 ] = 踏板位置 A(0x3 = 24%)和 B(Z)
	 72 - controlOptionRecord[ controlState#5 ] = EGR 工作周期(45%)
	 28 - controlEnableMask[ controlMask#1 ] = 控制踏板位置 A 和 EGR 工作周期
// 注:controlState#1 - #3 和 controlState#4(第 3 位至 0 位) 中的 IAC 枢轴位置、RPM 和踏板位置 B 的传输值均是各不相关的,因为 controlMask#1 参数规定了仅 dataIdentifier 的第三个和第五个参数会受请求的影响。

resp 6F 01 55 03 
	 07 - controlOptionRecord[ controlState#1 ] = IAC 枢纽位置(7 次) 
	 03 - controlOptionRecord[ controlState#2 ] = RPM(850 U/min) 
	 52 - controlOptionRecord[ controlState#3 ] = RPM 
	 32 - controlOptionRecord[ controlState#4 ] = 踏板位置 A(24%)和 B(16%) 
	 69 - controlOptionRecord[ controlState#5 ] = EGR 工作周期(41%)
// 注:controlState#1 - controlState#5 中的做优参数传输值须反映系统当前状态。

5)案例 4:将参数的控制权返还给 ECU

req  2F 01 55 00
	 FF - controlEnableMask[ controlMask#1 ] = 所有基本参数
resp 6F 01 55 00
	 09 - controlOptionRecord[ controlState#1 ] = IAC 枢纽位置(9 次) 
	 03 - controlOptionRecord[ controlState#2 ] = RPM(850 U/min) 
	 52 - controlOptionRecord[ controlState#3 ] = RPM 
	 12 - controlOptionRecord[ controlState#4 ] = 踏板位置 A(8%)和 B(16%) 
	 59 - controlOptionRecord[ controlState#5 ] = EGR 工作周期(35%)
// 注:controlState#1 - controlState#5 中的做优参数传输值须反映系统当前状态。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2127819.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

8月份美国CPI通胀降至+2.5%

根据劳工统计局&#xff08;BLS&#xff09;最近发布的一份报告&#xff0c;美国CPI&#xff08;消费者价格指数&#xff09;通胀在8月份放缓至2.5%&#xff08;同比&#xff09;&#xff0c;这是自2021年2月以来的最低水平。最新的通胀数据使美国国债收益率和美元指数上升&…

稀土抗菌剂真的能抗菌吗?

在现代生活中&#xff0c;抗菌剂已经成为了我们日常生活的一部分。然而&#xff0c;面对市面上各种抗菌产品&#xff0c;我们如何才能选择既安全又有效的产品呢&#xff1f;近年来&#xff0c;稀土抗菌剂因其独特的抗菌性能而引起了广泛关注。 稀土抗菌剂的抗菌原理 稀土抗菌剂…

基于 SpringBoot 的学习平台

摘 要 在Internet高速发展的今天&#xff0c;我们生活的各个领域都涉及到计算机的应用&#xff0c;其中包括学习平台的网络应用&#xff0c;在外国学习平台已经是很普遍的方式&#xff0c;不过国内的管理平台可能还处于起步阶段。学习平台具有学习信息管理功能的选择。学习平台…

Jenkins部署若依项目

一、配置环境 机器 jenkins机器 用途&#xff1a;自动化部署前端后端&#xff0c;前后端自动化构建需要配置发送SSH的秘钥和公钥&#xff0c;同时jenkins要有nodejs工具来进行前端打包&#xff0c;maven工具进行后端的打包。 gitlab机器 用途&#xff1a;远程代码仓库拉取和…

OpenHarmony鸿蒙( Beta5.0)智能加湿器开发详解

鸿蒙开发往期必看&#xff1a; 一分钟了解”纯血版&#xff01;鸿蒙HarmonyOS Next应用开发&#xff01; “非常详细的” 鸿蒙HarmonyOS Next应用开发学习路线&#xff01;&#xff08;从零基础入门到精通&#xff09; “一杯冰美式的时间” 了解鸿蒙HarmonyOS Next应用开发路…

spring security OAuth2 客户端接入gitee

一、简介 OAuth 是一个开放标准&#xff0c;该标准允许用户让第三方应用访问该用户在某一网站上存储的私密资源(如头像、照片、视频等)&#xff0c;并且在这个过租中无须将用户名和密码提供给第三方应用。通过令牌(token)可以实现这一功能&#xff0c;每一个令牌授权一个特定的…

ATF UFS初始化笔记

1. JESD220 中关于UFS初始化的描述 原文 13.1.3 Initialization and boot code download process The initialization and boot code download process is made up of the following phases: partial initialization, boot transfer and initialization completion. 13.1.3.…

果蔬识别系统性能优化之路(四)

目录 前情提要剩下问题 问题排查解决方案下一步 前情提要 果蔬识别系统性能优化之路&#xff08;三&#xff09; 剩下问题 同步数据库数据并初始化ivf依然要8,9秒 问题排查 通过断点加时间打印&#xff0c;发生其实初始化ivf的时间很快&#xff0c;慢的是数据在网络间的传…

【读论文】End-to-end reproducible AI pipelines in radiology using the cloud

文章目录 End-to-end reproducible AI pipelines in radiology using the cloud01 研究背景与目的医学成像领域&#xff08;1&#xff09;研究现状&#xff08;2&#xff09;存在问题 其他研究领域&#xff1a;基因组学&#xff08;genomics&#xff09;研究目的&#xff1a;提…

Vue3使用vue-qrcode-reader实现扫码绑定设备功能

需求描述 移动端进入网站后&#xff0c;登录网站进入设备管理界面。点击添加设备&#xff0c;可以选择直接添加或者扫一扫。点击扫一扫进行扫描二维码获取设备序列号自动填充到添加设备界面的序列号输入框中。然后点击完成进行设备绑定。 安装vue-qrcode-reader 这里使用的版…

《OpenCV计算机视觉》—— 身份证号码识别案例

文章目录 一、案例实现的整体思路二、代码实现1.首先定义两个函数2.模板图像中数字的定位处理3.身份证号码数字的定位处理4.使用模板匹配&#xff0c;计算匹配得分&#xff0c;找到正确结果 一、案例实现的整体思路 下面是一个数字0~9的模板图片 案例身份证如下&#xff1a; 对…

http有什么方法升级成https?

&#x1f512; 获取与安装证书 JoySSL注册填写申请码230907即可领取免费申请资格https://www.joyssl.com/certificate/select/free.html?nid7 &#x1f4c4; 申请SSL证书 选择证书&#xff1a;首先需选择合适的SSL证书&#xff0c;如域名认证&#xff08;DV&#xff09;、公…

120页ppt丨集团公司战略规划内容、方法、步骤及战略规划案例研究

响应会员需求&#xff0c;晓零分享一份经典资料《120页ppt集团公司战略规划内容、方法、步骤及战略规划案例研究》&#xff0c;欢迎进入星球下载学习。 以下是对企业战略规划三个阶段八个步骤的详细解析&#xff1a; 一、阶段一&#xff1a;内外分析 项目启动和前期准备&…

Parallels Desktop 20 发布下载,macOS Sequoia 和 Windows 11 24H2 支持准备就绪

Parallels Desktop for Mac 20.0.0 (build 55653) - 在 Mac 上运行 Windows macOS Sequoia 和 Windows 11 24H2 支持准备就绪 请访问原文链接&#xff1a;https://sysin.org/blog/parallels-desktop/&#xff0c;查看最新版。原创作品&#xff0c;转载请保出处。 作者主页&a…

Java | Leetcode Java题解之第400题第N位数字

题目&#xff1a; 题解&#xff1a; class Solution {public int findNthDigit(int n) {int d 1, count 9;while (n > (long) d * count) {n - d * count;d;count * 10;}int index n - 1;int start (int) Math.pow(10, d - 1);int num start index / d;int digitInde…

wifiip地址可以随便改吗?wifi的ip地址怎么改变

对于普通用户来说&#xff0c;WiFi IP地址的管理和修改往往显得神秘而复杂。本文旨在深入探讨WiFi IP地址是否可以随意更改&#xff0c;以及如何正确地改变WiFi的IP地址。虎观代理小二将详细解释WiFi IP地址的基本概念、作用以及更改时需要注意的事项&#xff0c;帮助用户更好地…

欧盟《人工智能法案》的重点监管要求

文章目录 前言一、欧盟《人工智能法案》的重点监管要求(一)基于风险的监管路径1.具有不可接受风险的人工智能系统2.高风险人工智能系统3.有限风险与低风险人工智能系统(二)对高风险人工智能的监管要求1.针对高风险人工智能系统的要求2.针对高风险人工智能系统产业链参与者的…

shader 案例学习笔记之fract函数

fract函数 可以理解为模1取余&#xff0c;获取一个数的小数部分&#xff0c;如果参数是向量&#xff0c;那就是获取每个向量分量上的小数 案例一 #ifdef GL_ES precision mediump float; #endif// 渲染分辨率 uniform vec2 u_resolution; // 程序运行时间 uniform float u_ti…

【卷起来】VUE3.0教程-08-路由管理

在Vue中&#xff0c;我们可以通过vue-router路由管理页面之间的关系。 Vue Router是Vue.js的官方路由&#xff0c;它与Vue.js核心深度集成&#xff0c;让用Vue.js构建单页应用变得轻而易举。 &#x1f332; 在Vue中引入路由 安装路由 npm install --save vue-router 建立三个…

【C++登堂入室】类和对象(中)——类的6个默认成员函数

目录 一、类的6个默认成员函数 ​编辑二、构造函数 2.1 概念 2.2 特性 三、析构函数 3.1 概念 3.2 特性 四、拷贝构造函数 4.1 概念 4.2 特征 五、赋值运算符重载 5.1 运算符重载 5.2 赋值运算符重载 5.3 前置和后置重载 六、日期类的实现 七、const成员 八、…