CN117425921A - 用于管理车辆数据收集的系统、方法和装置 - Google Patents

用于管理车辆数据收集的系统、方法和装置 Download PDF

Info

Publication number
CN117425921A
CN117425921A CN202280040013.4A CN202280040013A CN117425921A CN 117425921 A CN117425921 A CN 117425921A CN 202280040013 A CN202280040013 A CN 202280040013A CN 117425921 A CN117425921 A CN 117425921A
Authority
CN
China
Prior art keywords
automation
vehicle
response
automated
description
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202280040013.4A
Other languages
English (en)
Inventor
方宇
T·朱
A·凌
陈奕翔
R·里德
S·R·丹卡
王学林
J·A·波蒂略
F·A·V·瓦伦苏埃拉
宗烜然
R·夏玛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SANTOS
Original Assignee
SANTOS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SANTOS filed Critical SANTOS
Publication of CN117425921A publication Critical patent/CN117425921A/zh
Pending legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W10/00Conjoint control of vehicle sub-units of different type or different function
    • B60W10/30Conjoint control of vehicle sub-units of different type or different function including control of auxiliary equipment, e.g. air-conditioning compressors or oil pumps
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0002Automatic control, details of type of controller or control system architecture
    • B60W2050/0004In digital systems, e.g. discrete-time systems involving sampling
    • B60W2050/0005Processor details or data handling, e.g. memory registers or chip architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0002Automatic control, details of type of controller or control system architecture
    • B60W2050/0004In digital systems, e.g. discrete-time systems involving sampling
    • B60W2050/0006Digital architecture hierarchy

Abstract

一种包括控制器的装置,该控制器包括自动化定义电路、自动化管理电路和自动化命令电路。自动化定义电路被构造成实现自动化用户接口,向用户接口提供至少一个自动化制法,并响应于与自动化用户接口的用户通信来解释自动化请求。自动化管理电路被构造成响应于自动化请求来确定自动化描述。自动化命令电路被构造成向车辆的控制器提供自动化描述,其中车辆的控制器被配置为响应于自动化描述而实现自动化车辆响应。

Description

用于管理车辆数据收集的系统、方法和装置
相关申请的交叉引用
本申请要求2021年3月8日提交的并且题为“SYSTEM,METHOD,AND APPARATUS FORMANAGING VEHICLE DATA COLLECTION”(SONA-0010-U01)的美国专利申请序列号17/195,589的优先权,并且是该申请的部分延续。
本申请要求2021年6月4日提交的并且题为“SYSTEM,METHOD,AND APPARATUS FORVEHICLE AUTOMATION MANAGEMENT”(SONA-0011-P01)的美国临时专利申请序列号63/197,021的优先权。
美国专利申请序列号17/195,589(SONA-0010-U01)要求以下各项的优先权:2020年3月6日提交并且题为“SYSTEM,METHOD AND APPARATUS FOR IMPLEMENTINGCONFIGURABLE DATA COLLECTION FOR A VEHICLE”的序列号为62/986,444的美国临时专利申请(SONA-0004-P01);2020年5月13日提交并且题为“SYSTEM,METHOD AND APPARATUS FORIMPLEMENTING CONFIGURABLE DATA COLLECTION FOR A VEHICLE”的序列号为63/024,383的美国临时专利申请(SONA-0005-P01);以及2020年12月10日提交并且题为“SYSTEMMETHOD AND APPARATUS FOR IMPLEMENTING CONFIGURABLE DATA COLLECTION FOR AVEHICLE”的序列号为63/123,531的美国临时专利申请(SONA-0009-P01)。
出于所有目的,所有上述专利文献都通过引用以其整体并入本文。
背景技术
先前已知的系统可用于更新车辆操作能力、调整车辆特征的操作等。然而,先前已知的系统遭受许多缺点。例如,先前已知的系统需要直接车辆访问,或者利用空中下载(over the air,OTA)软件更新来执行这些功能。然而,先前已知的系统引入了显著的风险,例如需要关闭车辆,更新车辆上的软件或固件,这造成了停机时间和车辆将不可操作的风险(例如,如果更新被中断)和/或对更新或改变造成显著的管理费用(例如,在更新不成功的情况下保持多个版本的软件可用)。附加地,先前已知系统的功能性是有限的,例如导致软件版本改变的特征可能是有限的,或者在它们能够被实现之前需要附加的验证或证明。此外,先前已知的系统要求执行更新或改变的实体具有完整的车辆知识(例如,参数名称、端点的硬件布局、控制器、存储器位置等)和权限(例如,访问和调整车辆控制器上的软件的许可)。因此,先前已知的系统引入了巨大的成本、风险,并且具有有限的功能性。
车辆通信网络用于连接整个车辆的传感器、致动器、控制器、用户接口、骑手个人设备、拖车和通信设备。最近的趋势是增加这些车辆通信网络上的负担,其中连接的设备更多,设备之间的数据传递更多,满足车辆性能、安全和排放要求的时延要求更低,以及添加的车辆特征。附加地,消费者预期增加车辆的连接性、增强的和/或定制的特征、减轻驾驶员负担的特征以及增加车辆通信网络负担的其他特征。在可预见的未来,这些趋势预期继续并加速。
车辆能力的演进推动了这样一种情形,其中合期望的是更多数量的实体有权访问车辆功能(例如,制造商、经销商、服务提供商、OEM、车身制造商、售后特征提供商和/或个人消费者)。然而,许多因素推动了这样一种情形,其中提供车辆功能改变的能力变得更加昂贵和风险更高。例如,与安全和/或排放相关的监管、对高车辆可靠性和低故障率的期望、以及车辆本身的增加的复杂性、车辆上具有的多个网络、配置和许多交互的控制器,所有这些加在一起增加了在车辆上实现新功能性的费用、风险和复杂性。此外,给定车辆设计的改变步速——包括改变的网络类型、传感器、致动器、传动系组件等——正在增加,这使得提供达到更广泛受众并且可以达到车辆的更大内容截面的能力甚至更加复杂、昂贵且风险更高。附加地,车辆上可用的大量数据是敏感数据,无论这样的数据是否包括个人可标识信息、专有信息、车辆控制信息或可能是安全风险的信息(例如,车辆在特定时间的位置等)。总之,从数据或功能的角度来看,期望扩大能够在车辆上实现功能并与车辆交互的实体的基础,而做这些事情的成本和风险正在增加。
阐述的复杂性和其他挑战具有协同效应,使得车辆数据环境的复杂性甚至大于来自每个挑战的个体贡献的总和。
发明内容
示例系统包括具有包括多个端点的网络的车辆;控制器,包括:自动化定义电路,其被构造成解释自动化描述;自动化管理电路,其被构造成响应于自动化描述而提供自动化动作计划;以及自动化执行电路,其被构造成响应于自动化动作计划而提供自动化命令;并且其中所述多个端点中的端点响应于所述自动化命令来实现自动化车辆响应。
下面描述了示例系统的某些另外的方面,这些方面中的任何一个或多个可以存在于某些实施例中。自动化描述包括车辆策略的至少一部分。自动化动作计划包括以下各项中的至少一项:要收集的数据的数据描述;致动器响应;或者触发描述。多个端点中的端点包括车辆的致动器。多个端点中的端点包括车辆的传感器。多个端点中的端点包括第二控制器。第二控制器被配置为响应于自动化命令提供所选的数据值或所选的致动器命令值之一。第二控制器进一步被配置为响应于实现自动化车辆响应而向控制器提供确认值。该系统进一步包括多个端点中的第二端点,其中第二端点响应于自动化命令来实现自动化车辆响应。端点包括传感器,并且其中第二端点包括致动器。该系统进一步包括具有第二网络的车辆,该第二网络具有第二多个端点;所述第二多个端点中的第二端点,其中第二端点响应于自动化命令来实现自动化车辆响应。端点包括传感器,并且其中第二端点包括致动器。该网络包括第一网络类型,其中第二网络包括第二网络类型,并且其中第一网络类型不同于第二网络类型。自动化车辆响应包括以下各项中的至少一个:选择性地激活致动器;收集所选的数据;将致动器移动到所选位置;将自动化车辆响应延迟保持时段;延迟自动化车辆对检测到的事件的响应,其中自动化动作计划包括事件检测描述;或者提供与前述任何一个或多个相关联的通知。自动化动作计划包括事件检测描述,并且其中自动化执行电路进一步被构造成响应于事件检测描述来检测事件,并且进一步响应于检测到的事件来实现自动化车辆响应。自动化描述进一步包括车辆操作条件,并且其中自动化管理电路进一步被构造成响应于车辆操作条件提供自动化动作计划。自动化描述进一步包括外部操作条件,并且其中自动化管理电路进一步被构造成响应于外部操作条件提供自动化动作计划。自动化定义电路进一步被构造成从外部设备接收自动化描述。
示例系统包括具有包括多个端点的网络的车辆;控制器,包括:自动化定义电路,其被构造成解释自动化触发描述和自动化动作描述;自动化管理电路,其被构造成响应于自动化触发描述和自动化动作描述来提供触发检测计划和自动化动作计划;以及自动化执行电路,其被构造成响应于触发检测计划来确定触发事件值,并且响应于触发事件值和自动化动作计划来提供自动化命令;其中所述多个端点中的端点响应于所述自动化命令来实现自动化车辆响应。
下面描述了示例系统的某些另外的方面,这些方面中的任何一个或多个可以存在于某些实施例中。该系统进一步包括,其中自动化执行电路进一步被构造成响应于触发检测计划提供触发评估命令;其中所述多个端点中的第二端点响应于触发评估命令来提供触发评估值;并且其中自动化执行电路进一步被构造成响应于触发评估值来确定触发事件值。该系统进一步包括,其中自动化执行电路进一步被构造成响应于触发检测计划提供触发评估命令;其中所述端点响应于触发评估命令来提供触发评估值;并且其中自动化执行电路进一步被构造成响应于触发评估值来确定触发事件值。自动化动作描述进一步包括自动化调度值,并且其中自动化管理电路进一步被构造成响应于自动化调度值来提供自动化动作计划。自动化触发描述进一步包括触发调度值,并且其中自动化管理电路进一步被构造成响应于触发调度值来提供自动化触发计划。自动化车辆响应包括多个自动化动作。自动化动作描述进一步包括自动化调度值,并且其中响应于自动化调度值来执行多个自动化动作。自动化调度值包括多个自动化动作的顺序或定时中的至少一个。自动化车辆响应包括以下各项中的至少一个:致动器命令;致动器激活;或者致动器轨迹。自动化车辆响应包括以下各项中的至少一个:选择性地启用车辆的特征;调整车辆特征的校准;调整车辆的显示器;调整车辆的照明;调整车辆的环境管理系统;调整车辆的音响系统;或者调整车辆的操作者控制响应。自动化动作描述包括动作重复值,并且其中自动化管理电路进一步被构造成响应于动作重复值来提供自动化动作计划。自动化动作描述包括动作中断描述,并且其中自动化管理电路进一步被构造成响应于动作中断描述来提供自动化动作计划。动作中断描述包括对车辆关闭事件的动作响应描述。动作中断描述包括对车辆故障事件的动作响应描述。动作中断描述包括对车辆操作中断的动作响应描述。动作中断描述包括对超时事件的动作响应描述。
示例系统包括具有包括多个端点的网络的车辆;控制器,包括:自动化定义电路,其被构造成解释任务描述;自动化管理电路,其被构造成响应于任务描述提供任务动作计划;以及自动化执行电路,其被构造成响应于任务动作计划提供任务执行命令;其中所述多个端点中的端点响应于任务执行命令来为车辆实现任务。
下面描述了示例系统的某些另外的方面,这些方面中的任何一个或多个可以存在于某些实施例中。该任务包括监视车辆的操作条件。该任务包括选择性地激活致动器。该任务包括将致动器移动到所选位置。该任务包括监视外部操作条件。该任务包括确定事件是否已经发生。该任务包括收集车辆的所选数据。该任务包括响应于任务执行命令或来自端点的响应中的至少一个而提供通知。该任务包括响应于任务执行命令或来自端点的响应中的至少一个而提供报告。该任务包括响应于任务执行命令或来自端点的响应中的至少一个而存储与该任务相关联的数据。该任务包括响应于任务执行命令或来自端点的响应中的至少一个而传输与该任务相关联的数据。任务描述进一步包括任务调度值,并且其中自动化管理电路进一步被构造成响应于任务调度值来提供任务动作计划。任务描述进一步包括任务发起值,并且其中自动化管理电路进一步被构造成响应于任务发起值来提供任务动作计划。
示例系统包括具有包括多个端点的网络的车辆;控制器,包括:自动化定义电路,其被构造成解释自动化触发描述和自动化动作描述;自动化管理电路,其被构造成响应于自动化触发描述和自动化动作描述来提供触发检测计划和自动化动作计划;以及自动化执行电路,其被构造成响应于触发检测计划来确定触发事件值,并且响应于触发事件值和自动化动作计划来提供自动化命令;其中所述多个端点中的端点响应于所述自动化命令来实现自动化车辆响应。
下面描述了示例系统的某些另外的方面,这些方面中的任何一个或多个可以存在于某些实施例中。自动化触发描述包括用于车辆操作参数的滤波器描述,并且其中自动化管理电路进一步被构造成响应于用于车辆操作参数的滤波器描述来提供触发检测计划。滤波器描述包括高通滤波器或低通滤波器中的至少一个。滤波器描述包括阈值滤波器、分类滤波器或相关性滤波器中的至少一个。滤波器描述包括带通滤波器或陷波滤波器中的至少一个。自动化触发描述包括针对车辆操作参数、网络消息或控制器参数中的至少一个的数据解析描述,并且其中自动化管理电路进一步被构造成响应于数据解析描述来提供触发检测计划。自动化触发描述包括地图描述,并且其中自动化管理电路进一步被构造成响应于地图描述来提供触发检测计划。地图描述包括用于多个值的多参数值映射,所述多个值各自包括车辆操作参数、外部操作参数、故障值或状态值中的至少一个。地图描述包括地理描述。地图描述包括专家系统的至少一部分。自动化触发描述包括聚合数据描述,并且其中自动化管理电路进一步被构造成响应于聚合数据描述来提供触发检测计划。聚合数据描述包括至少一个车辆操作参数的聚合描述。聚合描述包括至少一个聚合方案,其选自:至少一个车辆操作参数的多个值的总和;至少一个车辆操作参数的多个值的滚动总和;至少一个车辆操作参数的多个值的平均值;至少一个车辆操作参数的多个值的滚动平均值;将至少一个车辆操作参数的多个值与对应阈值的比较;基于至少一个车辆操作参数的时间导数的聚合;基于至少一个车辆操作参数的运算导数的聚合;或者基于至少一个车辆操作参数的频率分析的聚合。自动化触发描述包括统计分析描述,并且其中自动化管理电路进一步被构造成响应于统计分析描述来提供触发检测计划。统计分析描述包括车辆操作参数的统计异常定义。自动化执行电路进一步被构造成响应于车辆操作参数的统计异常定义和值来确定相关操作条件存在,并且响应于相关操作条件来确定触发事件值。车辆操作参数的统计异常定义基于以下各项中的至少一个:车辆操作参数的聚合值;车辆操作参数的导数;或者车辆操作参数的频率分析。
示例系统包括具有包括多个端点的网络的车辆;控制器,包括:自动化定义电路,其被构造成解释自动化触发描述和自动化动作描述,其中自动化触发描述包括触发时间描述;自动化管理电路,其被构造成响应于自动化触发描述和自动化动作描述来提供触发检测计划和自动化动作计划;以及自动化执行电路,其被构造成响应于触发检测计划来确定触发事件值,并且响应于触发事件值和自动化动作计划来提供自动化命令;其中所述多个端点中的端点响应于所述自动化命令来实现自动化车辆响应。
下面描述了示例系统的某些另外的方面,这些方面中的任何一个或多个可以存在于某些实施例中。触发时间描述包括可在触发事件值和自动化命令之间实施的延迟时段。触发时间描述包括时间窗口,并且其中自动化执行电路进一步被构造成响应于时间窗口来确定触发事件值。触发时间描述包括可在触发检测计划的第一部分和触发检测计划的第二部分之间实施的延迟时段。自动化触发描述包括可在自动化动作计划的第一部分和自动化动作计划的第二部分之间实施的延迟时段。自动化动作计划包括数据传输操作。自动化动作计划包括数据收集操作。自动化动作计划包括动作序列,并且其中触发时间描述包括动作序列的时间表。动作序列中的每个动作包括以下各项中的至少一个:数据收集动作;致动器命令;数据存储动作;或者数据传输动作。
示例系统包括具有包括多个端点的网络的车辆;控制器,包括:自动化定义电路,其被构造成解释自动化描述;自动化管理电路,其被构造成响应于自动化描述来提供自动化动作计划,并且将自动化动作计划作为数据文件存储在通信地耦合到控制器的数据存储装置上;以及自动化执行电路,其被构造成响应于自动化动作描述而提供自动化命令;并且其中所述多个端点中的端点响应于所述自动化命令来实现自动化车辆响应。
下面描述了示例系统的某些另外的方面,这些方面中的任何一个或多个可以存在于某些实施例中。自动化命令包括从数据文件中确定的至少一个数据值。自动化执行电路进一步被构造成将自动化命令作为数据参数提供给端点作为网络通信。自动化动作计划实现自动化命令的条件操作。自动化动作计划实现多个自动化命令的分支操作,所述多个自动化命令包括所述自动化命令。自动化动作计划实现包括所述自动化命令的状态机操作。自动化动作计划实现包括自动化命令的循环操作。
示例装置包括控制器,该控制器包括:自动化定义电路,其被构造成解释来自外部设备的自动化描述;自动化管理电路,其被构造成响应于自动化描述而提供自动化动作计划;以及自动化执行电路,其被构造成响应于自动化动作描述而提供自动化命令;并且其中多个端点中的端点响应于自动化命令来实现自动化车辆响应。
下面描述了示例装置的某些另外的方面,这些方面中的任何一个或多个可以存在于某些实施例中。该装置进一步包括自动化报告电路,其被构造成响应于自动化车辆响应的实现而向外部设备提供确认通信。自动化管理电路进一步被构造成响应于自动化动作计划而存储策略,并且其中自动化执行电路响应于所述策略而提供自动化命令。自动化管理电路进一步被构造成响应于自动化动作计划来调整存储的策略,并且其中自动化执行电路响应于经调整的存储的策略来提供自动化命令。自动化命令包括致动器命令。自动化命令包括数据收集命令。该装置进一步包括自动化报告电路,其被构造成向外部设备提供响应于数据收集命令而收集的数据的至少一部分。自动化命令包括对具有控制器的车辆的流程、应用或服务之一的校准调整。自动化管理电路进一步被构造成确定外部设备提供自动化描述的授权。
示例装置包括控制器,该控制器包括:自动化定义电路,其被构造成实现自动化用户接口,并响应于与自动化用户接口的用户通信来解释自动化请求;自动化管理电路,其被构造成响应于自动化请求来确定自动化描述;以及自动化命令电路,其被构造成向车辆的控制器提供自动化描述,其中车辆的控制器被配置为响应于自动化描述来实现自动化车辆响应。
下面描述了示例装置的某些另外的方面,这些方面中的任何一个或多个可以存在于某些实施例中。自动化管理电路进一步被构造成确认用户对自动化请求的授权,并响应于所述授权来确定自动化描述。自动化管理电路进一步被构造成响应于以下各项中的至少一个来确认授权:针对自动化车辆响应要收集的数据;针对自动化车辆响应要在车辆网络上提供的数据;针对自动化车辆响应要访问的致动器;针对自动化车辆响应要访问的服务;针对自动化车辆响应要访问的流程;针对自动化车辆响应要访问的应用;或者与自动化车辆响应相关联的操作影响。自动化管理电路进一步被构造成响应于授权将自动化描述确定为自动化请求的修订版本。自动化定义电路进一步被构造成响应于自动化请求的修订版本向自动化用户接口提供修订通信。自动化管理电路进一步被构造成响应于授权而拒绝自动化请求。自动化管理电路进一步被构造成响应于自动化请求的拒绝,向自动化用户接口提供拒绝通信。自动化命令电路进一步被构造成提供自动化描述作为策略或策略更新之一。自动化命令电路进一步被构造成从车辆控制器接收确认通信。自动化定义电路进一步被构造成向自动化用户接口提供确认通信。
示例系统包括具有包括多个端点的网络的车辆;控制器,包括:自动化定义电路,其被构造成解释自动化触发描述和自动化动作描述;自动化管理电路,其被构造成响应于自动化触发描述和自动化动作描述来提供触发检测计划和自动化动作计划,并且响应于触发检测计划来提供数据存储命令;数据高速缓存电路,其被构造成响应于数据存储命令而执行确认可用数据存储或预留数据存储中的至少一个;以及自动化执行电路,其被构造成:响应于触发检测计划而确定触发事件值;响应于触发检测计划而存储触发评估数据;并且响应于触发事件值和自动化动作计划而提供自动化命令;其中所述多个端点中的端点响应于所述自动化命令来实现自动化车辆响应。
下面描述了示例系统的某些另外的方面,这些方面中的任何一个或多个可以存在于某些实施例中。自动化管理电路进一步被构造成响应于用于支持触发评估数据的数据量来提供数据存储命令。数据高速缓存电路进一步被构造成执行预留数据存储,并在与至少一个车辆控制器相关联的存储器上预留数据存储。至少一个车辆控制器包括包含数据高速缓存电路的控制器。自动化管理电路进一步被构造成提供数据存储命令作为触发评估数据的数据存储轨迹。自动化管理电路进一步被构造成提供数据存储命令作为触发评估数据的数据存储时间表。自动化管理电路进一步被构造成提供数据存储命令的至少一部分作为条件数据存储命令。数据存储命令进一步包括触发评估数据的至少一个数据元素的优先级描述。数据存储命令进一步包括触发评估数据的至少一个数据元素的老化数据描述。数据高速缓存电路响应于老化数据描述而执行触发评估数据的至少一部分的调度删除。数据高速缓存电路响应于老化数据描述而对触发评估数据的至少一部分执行压缩操作。数据高速缓存电路响应于老化数据描述而对触发评估数据的至少一部分执行汇总操作。数据高速缓存电路进一步被构造成确认共享数据存储设备上的可用数据存储。数据高速缓存电路进一步被构造成在共享数据存储设备上预留数据存储。
示例系统包括具有包括多个端点的网络的车辆;控制器,包括:自动化定义电路,其被构造成解释自动化触发描述和自动化动作描述;自动化管理电路,其被构造成响应于自动化触发描述和自动化动作描述而提供触发检测计划和自动化动作计划,并且响应于自动化动作描述而提供数据存储命令;数据高速缓存电路,其被构造成响应于数据存储命令而执行确认可用数据存储或预留数据存储中的至少一个;以及自动化执行电路,其被构造成:响应于触发检测计划而确定触发事件值;响应于触发事件值和自动化动作计划而提供自动化命令;并且响应于自动化动作计划而存储自动化收集数据;其中所述多个端点中的端点响应于所述自动化命令来实现自动化车辆响应,其中所述自动化车辆响应包括提供或收集所述自动化收集数据中的至少一个。
下面描述了示例系统的某些另外的方面,这些方面中的任何一个或多个可以存在于某些实施例中。自动化管理电路进一步被构造成响应于用于支持自动化收集数据的数据量来提供数据存储命令。数据高速缓存电路进一步被构造成执行预留数据存储,并在与至少一个车辆控制器相关联的存储器存储上预留数据存储。至少一个车辆控制器包括包含数据高速缓存电路的控制器。自动化管理电路进一步被构造成提供数据存储命令作为自动化收集数据的数据存储轨迹。自动化管理电路进一步被构造成提供数据存储命令作为自动化收集数据的数据存储时间表。自动化管理电路进一步被构造成提供数据存储命令的至少一部分作为条件数据存储命令。数据存储命令进一步包括自动化收集数据的至少一个数据元素的优先级描述。数据存储命令进一步包括自动化收集数据的至少一个数据元素的老化数据描述。数据高速缓存电路响应于老化数据描述而对自动化收集数据的至少一部分执行调度删除。数据高速缓存电路响应于老化数据描述而对自动化收集数据的至少一部分执行压缩操作。数据高速缓存电路响应于老化数据描述而对自动化收集数据的至少一部分执行汇总操作。数据高速缓存电路进一步被构造成确认共享数据存储设备上的可用数据存储。数据高速缓存电路进一步被构造成在共享数据存储设备上预留数据存储。
示例装置包括控制器,该控制器包括:自动化定义电路,其被构造成:实现自动化用户接口;向用户接口提供至少一个自动化制法(recipe);以及响应于与自动化用户接口的用户通信来解释自动化请求;自动化管理电路,其被构造成响应于自动化请求来确定自动化描述;以及自动化命令电路,其被构造成向车辆的控制器提供自动化描述,其中车辆的控制器被配置为响应于自动化描述来实现自动化车辆响应。
下面描述了示例装置的某些另外的方面,这些方面中的任何一个或多个可以存在于某些实施例中。自动化定义电路进一步被构造成响应于用户的用户特性来选择一组自动化制法,并且响应于所选的一组自动化制法来提供至少一个自动化制法。用户特性包括用户角色、与用户相关联的实体、用户授权或用户接口的用户历史活动中的至少一个。自动化请求包括至少一个自动化制法中所选的一个。自动化请求包括至少一个自动化制法中修改的一个。至少一个自动化制法中的每一个包括以下各项中的至少一个:车辆的自动化操作;车辆的自动化操作的一部分;或者用于车辆自动化操作的模板。自动化请求包括至少一个参数描述,该参数描述是不可知的参数描述。自动化描述包括至少一个参数描述,该参数描述是车辆特定参数描述。
示例装置包括控制器,该控制器包括:自动化定义电路,其被构造成解释多个自动化描述;自动化管理电路,其被构造成响应于所述多个自动化描述来提供自动化动作计划;以及自动化执行电路,其被构造成响应于自动化动作计划向车辆网络的端点提供多个自动化命令。
下面描述了示例装置的某些另外的方面,这些方面中的任何一个或多个可以存在于某些实施例中。自动化定义电路进一步被构造成解释对应于多个自动化描述中的至少一个的优先级值,并且其中自动化管理电路进一步被构造成响应于优先级值提供自动化动作计划。自动化定义电路进一步被构造成解释对应于多个自动化描述中的至少一个的层级值,并且其中自动化管理电路进一步被构造成响应于层级值提供自动化动作计划。自动化管理电路进一步被构造成确定多个自动化描述中的至少两个之间的依赖值,并响应于该依赖值提供自动化动作计划。自动化管理电路进一步被构造成确定至少一个自动化描述的操作影响,并响应于操作影响而提供自动化动作计划。多个自动化描述中的至少一个包括自动化制法。自动化管理电路进一步被构造成存储自动化制法。自动化管理电路进一步被构造成确定自动化制法的生命周期值,并且响应于生命周期值而存储自动化制法。自动化定义电路进一步被构造成从工具接收多个自动化描述中的至少一个。自动化定义电路进一步被构造成从云服务器接收多个自动化描述中的至少一个。自动化定义电路进一步被构造成从移动应用接收多个自动化描述中的至少一个。自动化定义电路进一步被构造成从web门户接收多个自动化描述中的至少一个。自动化管理电路进一步被构造成响应于自动化执行电路的操作而否决所述多个自动化描述中的至少一个。自动化管理电路进一步被构造成通过执行从由以下各项组成的操作中选择的至少一个操作而否决多个自动化描述中的至少一个:更新自动化动作计划以移除多个自动化描述中的至少一个;响应于多个自动化描述中的至少一个而删除存储的数据;删除对应于所述多个自动化描述中的至少一个的存储的制法;或者调整对应于多个自动化描述中的至少一个的优先级值或层级值中的至少一个。多个自动化命令中的每一个包括从以下各项中选择的至少一个命令:数据收集命令;数据处理命令;数据通信命令;数据传输命令;致动器命令;校准调整;或者数据存储命令。
示例装置包括控制器,该控制器包括:自动化定义电路,其被构造成:实现自动化用户接口,该自动化用户接口包括:至少一个可用输入参数;至少一个可用致动参数;和至少一个响应数据选择;响应于与自动化用户接口的用户通信而解释自动化请求;自动化管理电路,其被构造成响应于自动化请求来确定自动化描述;以及自动化命令电路,其被构造成向车辆的控制器提供自动化描述,其中车辆的控制器被配置为响应于自动化描述来实现自动化车辆响应。
下面描述了示例装置的某些另外的方面,这些方面中的任何一个或多个可以存在于某些实施例中。该装置进一步包括自动化确认电路,其进一步被构造成响应于自动化车辆响应而从车辆接收收集的数据,并存储收集的数据用于异步访问。自动化确认电路进一步被构造成响应于用户请求而向自动化用户接口提供所存储的收集数据的至少一部分。自动化确认电路进一步被构造成向自动化用户接口提供所存储的收集数据的经编校部分。自动化确认电路进一步被构造成响应于用户角色、用户授权或与用户相关联的实体中的至少一个来确定所存储的收集数据的经编校部分。自动化确认电路进一步被构造成响应于所存储的收集数据中的专有信息、所存储的收集数据中的个人可标识信息或所存储的收集数据中的元数据中的至少一个来确定所存储的收集数据的经编校部分。至少一个响应数据选择包括以下各项中的至少一个:与自动化车辆响应相关联的确认值、根据自动化车辆响应收集的数据、或与自动化车辆响应相关联的修改值。自动化定义电路进一步被构造成在可用输入参数的菜单中提供至少一个可用输入参数。自动化定义电路进一步被构造成响应于用户角色、用户授权或与用户相关联的实体中的至少一个来确定可用输入参数。自动化定义电路进一步被构造成在可用致动参数的菜单中提供至少一个可用致动参数。自动化定义电路进一步被构造成响应于用户角色、用户授权或与用户相关联的实体中的至少一个来确定可用致动参数。自动化定义电路进一步被构造成向用户接口提供至少一个自动化制法。自动化管理电路进一步被构造成响应于用户对至少一个自动化制法的选择或修改中的至少一个来确定自动化描述。
示例系统包括具有包括多个端点的网络的车辆;控制器,包括:自动化管理电路,其被构造成提供自动化动作计划;自动化执行电路,其被构造成响应于自动化动作计划而提供自动化命令;以及自动化连续性电路,其被构造成确定自动化中断事件是否已经发生,并响应于自动化中断事件而提供自动化连续性命令。
下面描述了示例系统的某些另外的方面,这些方面中的任何一个或多个可以存在于某些实施例中。自动化连续性电路进一步被构造成提供自动化连续性命令作为取消命令。自动化连续性电路进一步被构造成提供自动化连续性命令作为重启命令。自动化连续性电路进一步被构造成提供自动化连续性命令作为阶段命令,该阶段命令包括自动化动作计划的阶段,在该阶段自动化动作计划将被恢复。自动化连续性电路进一步被构造成提供自动化连续性命令作为继续命令。自动化中断事件包括车辆关闭事件。自动化中断事件包括与自动化动作计划相关联的触发事件的触发事件中断。自动化中断事件包括操作中断事件,该操作中断事件包括以下各项中的至少一个的指示:确定车辆操作条件妨碍自动化动作计划的完成,确定车辆操作条件妨碍自动化动作计划的继续,或确定车辆操作条件妨碍自动化动作计划的至少一个方面的执行。自动化动作计划包括策略的一部分,其中该策略包括连续性描述,并且其中自动化连续性电路进一步被构造成响应于连续性描述来确定自动化中断事件是否已经发生。自动化动作计划包括策略的一部分,其中策略包括连续性描述,并且其中自动化连续性电路进一步被构造成响应于连续性描述来提供自动化连续性命令。
示例装置包括存储管理器电路,其被构造成选择性地访问数据存储,并且被配置为选择性地在数据存储上读取数据、写入数据或编辑数据;存储守门者电路,其被构造成解释来自车辆数据存储请求者的数据存储请求值,并响应于数据存储请求值而提供数据存储简档;并且其中存储管理器电路进一步被构造成响应于数据存储简档而执行在数据存储上预留存储器或在数据存储上保存请求者关联数据中的至少一个。
下面描述了示例装置的某些另外的方面,这些方面中的任何一个或多个可以存在于某些实施例中。车辆数据存储请求者包括以下各项中的至少一个:车辆的网络区上的端点;与车辆相关联的流程;与车辆相关联的应用;或者位于车辆上的车辆控制器。数据存储包括位于车辆控制器上的共享数据存储。数据存储包括至少部分位于车辆之外的共享数据存储。数据存储被配置成基于文件系统的共享存储。存储守门者电路进一步被构造成将数据存储访问作为服务发布在车辆上,并且响应于对数据存储访问的订阅请求来解释数据存储请求值。存储守门者电路进一步被构造成响应于与车辆数据存储请求者相关联的许可值来提供数据存储简档。数据存储简档进一步包括从由以下各项组成的参数中选择的至少一个参数:数据存储量;数据存储优先级;或数据存储保留描述。数据存储被配置成对象存储。数据存储被配置成关系数据库。数据存储被配置成键值存储。所述装置进一步包括,其中存储守门者电路进一步被构造成将数据存储上的存储数据发布为车辆上的服务,响应于来自存储数据请求者的对存储数据访问的订阅请求来解释数据访问请求值,并且响应于数据访问请求值来提供数据访问简档;并且其中存储管理器电路进一步被构造成响应于数据访问简档而从数据存储向存储数据请求者提供数据。存储守门者电路进一步被构造成响应于与存储的数据请求者相关联的许可值来提供数据访问简档。存储数据请求者包括以下各项中的至少一个:车辆网络区上的端点;与车辆相关联的流程;与车辆相关联的应用;或者位于车辆上的车辆控制器。
示例装置包括服务管理器电路,其被构造成维护服务注册表,该服务注册表包括车辆关联实体和对应服务描述的列表;服务守门者电路,其被构造成解释来自车辆服务请求者的服务请求值,并响应于服务请求值而提供服务访问简档;其中服务管理器电路进一步被构造成响应于服务访问简档来更新服务注册表;以及服务执行电路,其被构造成响应于服务注册表而允许对车辆关联实体的服务发布或服务订阅之一。
下面描述了示例装置的某些另外的方面,这些方面中的任何一个或多个可以存在于某些实施例中。服务访问简档包括服务发布值或服务订阅值中的至少一个。每个车辆关联实体包括车辆上网络的端点;与车辆相关联的流程;与车辆相关联的应用;或者位于车辆上的车辆控制器中的至少一个。每个服务描述包括可由服务控制的车辆功能;或者由服务提供的车辆数据值中的至少一个。服务守门者电路进一步被构造成响应于与车辆服务请求者相关联的许可值来提供服务访问简档。服务注册表进一步包括多个车辆关联实体和对应服务描述的列表,并且其中服务守门者电路响应于与车辆服务请求者相关联的许可值,向预期的车辆服务请求者暴露多个列表中的一个。至少一个服务描述包括由位于车辆的多个网络区上的多个端点提供的车辆数据值。多个网络区包括多个网络协议。多个网络区包括多种网络类型。至少一个服务描述包括至少部分由车外端点提供的车辆数据值。至少一个服务描述包括由位于车辆的多个网络区上的多个端点执行的车辆功能。多个网络区包括多个网络协议。多个网络区包括多种网络类型。至少一个服务描述包括至少部分由车外端点执行的车辆相关功能。
附图说明
图1是根据本公开的某些实施例的自动化车辆系统的示意图。
图2是根据本公开的某些实施例的自动化命令系统的示意图。
图3是根据本公开的某些实施例的示例自动化动作计划的示意图。
图4是根据本公开的某些实施例的示例自动化车辆响应系统的示意图。
图5是根据本公开的某些实施例的示例自动化描述的示意图。
图6是根据本公开的某些实施例的示例控制器系统的示意图。
图7是根据本公开的某些实施例的示例自动化动作描述的示意图。
图8是根据本公开的某些实施例的示例自动化触发描述的示意图。
图9是根据本公开的某些实施例的示例自动化车辆响应的示意图。
图10是根据本公开的某些实施例的示例自动化车辆响应的示意图。
图11是根据本公开的某些实施例的示例控制器装置的示意图。
图12是根据本公开的某些实施例的示例任务描述的示意图。
图13是根据本公开的某些实施例的任务描述的示意图。
图14是根据本公开的某些实施例的示例自动化动作计划的示意图。
图15是根据本公开的某些实施例的被配置为提供自动化描述的示例控制器的示意图。
图16是根据本公开的某些实施例的示例授权的示意图。
图17是根据本公开的某些实施例的示例触发的自动化动作的示意图。
图18是根据本公开的某些实施例的(一个或多个)示例数据存储命令的示意图。
图19是根据本公开的某些实施例的(一个或多个)示例数据存储命令的示意图。
图20是根据本公开的某些实施例的被配置为提供自动化描述装置的示例控制器的示意图。
图21是根据本公开的某些实施例的(一个或多个)示例自动化命令的示意图。
图22是根据本公开的某些实施例的被配置为存储收集的数据装置的示例控制器的示意图。
图23是根据本公开的某些实施例的示例自动化用户接口的示意图。
图24是根据本公开的某些实施例的示例制法访问接口的示意图。
图25是根据本公开的某些实施例的示例触发工作流程的示意图。
图26是根据本公开的某些实施例的示例工作流程的示意图。
图27是根据本公开的某些实施例的示例工作流程的示意图。
图28是根据本公开的某些实施例的自动化车辆响应活动的示例实现的示意图。
图29是根据本公开的某些实施例的示例触发评估引擎的示意图。
图30是根据本公开的某些实施例的示例任务执行引擎的示意图。
图31是根据本公开的某些实施例的示例自动化用户接口的示意图。
图32是根据本公开的某些实施例的被配置为提供(一个或多个)自动化连续性命令的示例控制器的示意图。
图33是根据本公开的某些实施例的(一个或多个)示例自动化连续性命令的示意图。
图34是根据本公开的某些实施例的被配置为管理面向服务的架构的示例控制器的示意图。
图35是根据本公开的某些实施例的被配置为管理面向服务的架构的示例控制器的示意图。
图36是根据本公开的某些实施例的示意性流程图。
图37是根据本公开的某些实施例的示意性流程图。
图38是根据本公开的某些实施例的示意性流程图。
图39是根据本公开的某些实施例的示意性流程图。
图40是根据本公开的某些实施例的示意性流程图。
图41是根据本公开的某些实施例的示意性流程图。
图42是根据本公开的某些实施例的示意性流程图。
图43是根据本公开的某些实施例的示意性流程图。
图44是根据本公开的某些实施例的示意性流程图。
图45是根据本公开的某些实施例的示意性流程图。
图46是根据本公开的某些实施例的示意性流程图。
图47是根据本公开的某些实施例的示意性流程图。
图48是根据本公开的某些实施例的示意性流程图。
图49是根据本公开的某些实施例的示意性流程图。
图50是根据本公开的某些实施例的示意性流程图。
图51是根据本公开的某些实施例的示意性流程图。
图52是根据本公开的某些实施例的示意性流程图。
图53是根据本公开的某些实施例的示意性流程图。
图54是根据本公开的某些实施例的示意性流程图。
图55是根据本公开的某些实施例的示意性流程图。
图56是根据本公开的某些实施例的示例自动化管理器的示意图。
具体实施方式
不限于本公开的任何其他方面,本文中公开内容的方面减少和/或消除了以下各项中的任何一个或多个:添加到车辆功能交互系统的每个实体的成本、新实体实现应用以实现新的车辆功能性的基本学习成本、对(一种或多种)改变的车辆网络配置的适应成本、为满足支持新的车辆功能的增加的需求而造成的成本、适应改变的监管环境的成本、保护数据的成本和/或因违规或未授权使用造成的损失、以及经由软件开发和部署修改车辆功能或特征的成本。本文中公开内容的某些实施例和/或方面可以解决所描述的成本参数中的一个或多个。本文中公开内容的某些实施例和/或方面可能增加一个或多个给定的成本参数,但是仍然通过降低目标车辆、车辆类型、实体、行业等的总体成本函数而是有益的。本文中公开内容的某些实施例和/或方面可能增加一个或多个给定的成本参数,但是提供其他益处,诸如改进的功能性和改进的特征上市时间。在某些实施例中,可能以增加的成本但是以低于被配置为实现类似改进的功能性的先前已知系统的成本来实现改进的功能性。
出于促进对本公开原理的理解的目的,现在将对附图中图示以及以下书面说明中所述的实施例进行参考。应当理解,这并不意味着对本公开的范围进行限制。进一步应当理解,本公开包括对所图示实施例的任何变更和修改,并且包括本公开所属领域的技术人员通常将想到的本文中本公开的原理的另外应用。
不限于本公开的任何方面,本公开参考了许多操作,这些操作可以全部或部分地由程序、电路、控制器、组装件、引擎、系统或在如下美国申请中的一个或多个中描述的其他组件来支持:2020年9月21日提交的题为“SYSTEM,METHOD,AND APPARATUS TO SUPPORTMIXED NETWORK COMMUNICATIONS ON A VEHICLE”(SONA-0006-U01)的US17/027,167;2020年9月21日提交的题为“SYSTEM,METHOD,AND APPARATUS TO EXTRA VEHICLECOMMUNICATIONS CONTROL”(SONA-0007-U01)的US 17/027,187;和/或2021年3月8日提交的题为“SYSTEM,METHOD,AND APPARATUS FOR MANAGING VEHICLE DATA COLLECTION”(SONA-0010-U01)。出于所有目的,前述申请中的每一个都通过引用以其整体并入本文。示例支持操作包括但不限于:从车辆网络上的端点收集数据、向其提供数据和/或向其提供指令的操作,而不管网络区,并且请求者不需要关于端点地址或网络位置、数据配置、通信协议等的车辆特定信息;车辆策略的实现,例如针对策略的初始化、修订、替换、更新、授权等;各区之间网络通信的配置;收集或提供的数据的配置,包括例如调整数据单元、数据分辨率、执行数据的上采样和/或下采样、和/或在不同网络区上的端点之间传递数据;所收集数据的存储,包括短期、中期和/或长期存储,滚动缓冲数据的存储以支持触发评估和/或执行触发操作,并包括老化数据的处置,包括老化数据的优先化、删除、传输、汇总和/或压缩,并包括确定数据是否是老化数据;将任何数据从车外传输到车辆的任何端点,和/或从车辆的任何端点传输到车外接收者,包括管理传输资源和/或对传输数据进行优先化的操作;支持面向服务的架构(SOA)的操作,包括控制服务的发布和可见性,控制对应用、流程、端点等服务的订阅,以及支持服务执行的操作,包括收集或提供相关数据、命令、通信等;和/或支持向用户、端点、应用等提供通知和/或警报的操作。对这些特征中的任何一个的支持以及贯穿本公开描述的任何其他特征可以包括诸如以下的配置:全部或部分地包括所引用申请的一个或多个电路、控制器、处理器、引擎、装置和/或计算设备,以及本公开的一个或多个电路、控制器、处理器、引擎、装置和/或计算设备;所引用申请的一个或多个电路、控制器、处理器、引擎、装置和/或计算设备与本公开的一个或多个电路、控制器、处理器、引擎、装置和/或计算设备之间的协作;全部或部分地包括本公开的一个或多个电路、控制器、处理器、引擎、装置和/或计算设备,以及所引用申请的一个或多个电路、控制器、处理器、引擎、装置和/或计算设备;和/或执行一个或多个操作,使用本公开的一个或多个电路、控制器、处理器、引擎、装置和/或计算设备来执行在程序中描述的和/或可由所引用申请的一个或多个电路、控制器、处理器、引擎、装置和/或计算设备执行的一个或多个操作。
本文中的实施例引用制法、工作流程、自动化描述、自动化动作计划、自动化触发描述、自动化触发计划、规则、任务描述、任务动作计划等。利用这样的术语是为了描述清楚性,以阐述要执行的自动化车辆操作,其中对于给定的实施例,自动化车辆操作可以存在于多于一个的位置,以说明在本文中的实施例中的各个阶段和/或位置处的自动化车辆操作描述的上下文。例如,自动化车辆操作的请求者可以通过运用API等与自动化用户接口一起工作和/或在自动化用户接口上请求自动化车辆操作,其中自动化车辆操作的描述可以被简化(例如,使用工业标准名称、参数的描述性名称、操作和/或工作流程的图形描绘等)、车辆不可知的(例如,配置为不知道车辆特定参数名称、端点位置、端点地址、车辆控制器和/或网络上的参数分布等)。在另一个示例中,云应用或电路和/或车辆侧应用或电路可以调整自动化车辆操作的描述,例如将描述转换成数据文件,作为策略的一部分、作为单独的策略等,用于与车辆通信或作为与自动化车辆操作的实施者的车内通信。数据文件、策略、计划等的传送者所利用的自动化车辆操作的示例描述可以不同于由请求者提交的描述的版本,例如被配置为使得根据自动化车辆操作的期望操作可以根据期望被标识和执行。在另一个示例中,实现组件(例如车辆控制器、车辆上的电路和/或这些的分布式组)可以具有描述的又一个版本,例如允许实现组件提供特定的致动器命令,该命令可以被致动器利用来执行期望的操作。制法、工作流程、自动化描述、自动化动作计划、自动化触发描述、自动化触发计划、规则、任务描述、任务动作计划等可以是特定实施例的不同元素,并且这些中的一个或多个对于特定实施例可以是相同的,例如取决于自动化车辆操作在何处被请求(例如,通过云连接设备和/或通过直接车辆连接设备),和/或用于将操作传送到车辆的(一个或多个)实现电路,和/或用于在车辆上实现操作(例如,从不可知描述到车辆描述的转化是否发生在车辆上、云中、在诸如工具的另一位置中、和/或这些的组合)。在某些实施例中,制法、工作流程、描述、计划、规则等可以被加密,例如在传输期间和/或存储时(例如,防止对存储器的访问来访问未加密的版本)。在某些实施例中,制法、工作流程、描述、计划、规则等可以就在利用之前被解密,例如在解析、用于转换到下一阶段的处理(例如,将自动化描述转换为自动化动作计划)、执行(例如,车辆上的工作流程)和/或检查(例如,授权、操作能力等)之前。
本公开描述了执行自动化车辆操作的系统、方法和装置,包括但不限于本公开的任何其他方面,操纵(例如,移动到所选位置、限制可用位置的范围、启用或禁用致动等)车辆上的任何致动器的操作,操纵(例如,启用或禁用、调整特征的校准或其他行为,和/或在某些情况下创建或消除特征)车辆上的任何特征的操作,使车辆执行所选的功能的操作,收集数据(例如,与任何致动器、传感器、故障条件、车辆功能、应用、流程等相关的数据,和/或收集数据以供以后利用,无论是在车辆上还是在车辆外,例如确认或验证车辆的一个方面和/或自动化车辆操作的另一个方面、支持车辆和/或一组相关车辆的故障检测或状态确定等的操作)、响应车辆条件的操作(例如,故障代码、非标称操作或数据值、操作者抱怨或车辆行为描述等;其中响应操作可以包括响应,例如:修改车辆行为以校正或减轻条件,确认、验证和/或重复车辆条件或行为的操作,和/或确定与车辆条件或行为相关的条件的操作,例如相关条件、触发条件、结果条件等);基于所选的条件(例如,所选的触发条件;和/或操作参数,例如车辆位置、操作者特性、工作周期等)修改车辆行为的操作(例如,车辆操作、数据收集、致动器或特征参数等)。在某些实施例中,自动化车辆操作的执行——包括车辆特征的添加——可以在不修改用于车辆的基础软件(例如用于车辆的控制软件)的情况下执行,例如通过提供接口,其中数据结构中的参数(例如,策略、自动化制法、自动化动作描述、任务描述等)可以被实施以实现自动化车辆操作,而不改变车辆的基础软件。
示例实施例允许构建用于在车辆上操作的特征或者在所选的时间段内执行所选的次数(例如,单次、多次、周期性地等等),被执行直到它稍后被移除(例如,被特征的创建者移除),等等。特征包括响应于任何所选条件(例如,车辆操作条件、操作者输入、外部条件等)而执行或调整的车辆的任何所选操作或操作行为),并且可以包括通常可能在车辆上的特征(例如,巡航控制、挡风玻璃刮水器延迟、自动座椅定位等)或由用户出于例如服务操作、制造商操作、操作者方便、操作者偏好等的任何目的创建的特征。
示例实施例允许修改车辆上的特征,无论该特征是预先存在的特征还是由本公开的实施例创建的特征。对特征的修改可以包括以下各项中的任何一个或多个:调整特征的校准(例如,可以包括提供用于超控校准的值,调整或不调整车辆上的实际校准);改变特征的发起条件;改变特征的启用条件;改变特征对车辆操作条件和/或外部条件(例如,一天中的时间、天气、交通、位置等)的响应;调整特征的范围(例如,允许的设置、速度范围、响应时间等);应用或调整与特征相关的限制等。
示例实施例允许许多操作的自动化,例如在不需要专用工具(例如,维修工具、制造工具或工程工具)的情况下对车辆执行测试。如本文利用的测试应该被广义地理解,并且可以包括执行以下各项中的一个或多个的操作:对车辆行为、驾驶员行为和/或车辆上的特征的观察,这可以包括基于特定条件观察这些中的一个或多个;一个或多个车辆致动器、特征、流程、应用等的运用;对车辆行为、驾驶员行为和/或车辆上的特征的观察,例如响应于所运用的方面;行为的确认(例如,收集相关数据,基于观察到的行为是由于运用引起的置信水平根据需要重复,等等);和报告(例如,传送与测试相关的参数,包括例如结果值、置信度值、相关数据等)。
示例实施例允许自动化操作以响应异常条件,例如响应检测到的入侵事件的操作(例如,其中确定不适当的动作者可能尝试收集数据、提供不适当的数据、引入破坏性信息(例如通过拒绝服务攻击)和/或不适当地修改数据(例如试图执行车辆的未授权控制操作))。响应检测到的入侵事件的示例操作包括但不限于,执行操作以重新配置网络(例如,列出应该被阻止或忽略的请求者、地址等),报告与检测到的入侵事件相关的数据(例如,入侵源的标识符;与入侵相关的操作参数,诸如尝试频率、诸如数据的目标、端点、控制参数等;入侵事件期间利用的授权数据;和/或入侵所利用的值,诸如通信报头、通信有效载荷等)。在某些实施例中,响应于检测到的入侵事件的操作可以减轻入侵企图、防止入侵企图、用于检测车辆或其他车辆上的稍后的入侵企图、和/或捕获与入侵企图相关的数据(例如,减轻进一步的损害、标识肇事者、和/或证明与入侵企图相关的方面)。
示例实施例允许操作的自动化,以向用户提供附加信息,和/或基于用户偏好和/或用户特性调整车辆操作。例如,作为父母的车辆所有者可以使用本公开的实施例设置特征以提供关于另一个驾驶员(例如,他们的孩子)的信息,例如确定重要的操作事件,例如车辆速度值、一天中的操作时间、操作位置、重要的加速事件等。这样的信息可以用于监视另一个驾驶员,和/或帮助另一个驾驶员(例如,当车辆处于不可能与正常操作一致的位置时,例如在高速公路上长时间停止,联系父母)。在某些实施例中,操作的自动化可以附加地或替代地包括基于驾驶员的车辆特征的调整,例如父母操作者可以设置各种车辆特征(例如,最大速度、额定功率、诸如日间前灯使用的光配置等),其可以帮助儿童驾驶员安全操作车辆。在某些实施例中,数据可以被直接提供给父母(例如,在报告消息中提供的加速事件),和/或可以被存储用于选择性访问。示例利用主车辆操作者和次车辆操作者之间的父子关系作为非限制性示例,但是任何其他主/次关系在本文中都是理解的,包括诸如以下的情形:车队、用于工作的车辆、被盗车辆(例如,响应于车辆被盗而采取某些操作,这可以包括允许某种水平的车辆操作,例如允许车辆移动到安全位置)、租借车辆、租赁车辆等。
本文中利用车外、车外部和/或基于云的交互的描述指代车辆的任何外部网络通信,在没有限制的情况下包括至外部设备的基于无线的通信(例如,移动数据、WiFi和/或蓝牙)。至外部设备的通信可以是普通网络(例如,通过互联网)、WAN、LAN、车辆附近的移动设备和/或这些的组合。本文描述的某些系统和程序特别地设想了车辆的运行时操作,例如在其中车辆正在执行任务(例如,移动、在不移动时执行操作等)的操作条件期间发生的外部通信。本文的公开内容进一步设想了可能在任何时段期间发生的通信,包括在车辆停机时间期间和/或在维修事件期间的通信。本文的公开内容进一步设想了可以通过有线通信信道发生的通信,诸如当车辆网络与维修工具、车载诊断(OBD)仪器或其他物理耦合的设备通信时。
本文的描述参考了车辆应用,作为非限制性示例,并使本描述清楚。然而,本文的实施例适用于具有类似挑战和/或实现的其他应用。不限于任何其他应用,本文的实施例适用于具有多个端点的任何应用——包括多个数据源、控制器、传感器和/或致动器,并且可以进一步包括存在于不同或分布式网络环境中的端点,和/或具有历史或遗留网络或通信系统的应用,所述网络或通信系统可以(在给定系统内,作为一类系统,和/或作为一个行业)过渡到更新的和/或更有能力的联网或通信系统。示例和非限制性实施例包括以下各项中的一个或多个:工业设备;机器人系统(至少包括移动机器人、自主车辆系统和/或工业机器人);移动应用(可能被认为是“车辆”,也可能不是)和/或制造系统。应当理解,本公开的某些特征、方面和/或益处适用于这些应用中的任何一个或多个,不适用于这些应用中的其他应用,并且本公开的某些特征、方面和/或益处的适用性可以取决于特定应用的操作条件、约束、成本参数(例如,操作成本、集成成本、操作成本、数据通信和/或存储成本、服务成本和/或停机成本等)而变化。因此,在本公开引用车辆、车辆系统、移动应用、工业设备、机器人系统和/或制造系统的任何地方,这些中的每一个也在本文中被设想,并且可以适用于某些实施例,或者不适用于某些其他实施例,如受益于本公开的本领域技术人员应当理解的那样。
应当广义地理解如本文利用的流程。示例流程包括相关的数据组(例如,速度数据、温度数据、视听数据、导航数据等)、相关的功能组(例如,在车辆功能、诸如服务操作和/或数据收集的车外部功能、相关车辆之间的聚合和/或对于特定系统相关的这些功能的组合之中)、相关的设备组(例如,门致动器)和/或相关的应用组。如本文使用的,流程提供了一种组织概念,该组织概念可以用于关联车辆或远离车辆的某些数据、某些端点、某些应用和/或相关功能。在某些实施例中,控制器可以利用流程来标识数据源、数据目的地、流程可用的权限、与流程相关的优先级信息等,以实现这里的某些数据监管操作。在某些实施例中,控制器可以利用流程来标识数据入侵企图,例如通过确定流程正在提供意外信息或操作请求,通过确定信息或操作请求来自意外位置,和/或根据信息或操作请求相对于历史参数、预期参数和/或预定限制的频率和/或值。在某些实施例中,流程的利用允许控制器执行可能涉及相同端点的单独操作,以支持期望的网络管理。例如,车辆速度管理应用可以具有高优先级,并且速度计端点可以与车辆速度管理应用相关联。在该示例中,如果车辆速度被传送以支持车辆速度管理应用,则控制器将高优先级应用于车辆速度消息。然而,如果车辆速度被传送以支持行程计划流程(例如,在存在行程计划流程并且不具有高优先级的情况下),则控制器可以对车辆速度消息应用较低的优先级。在另外的示例中,车辆控制器、网络的一部分或其他非标称条件的故障可能导致车辆速度管理应用迁移到系统中的另一个控制器,由此车辆速度消息被传送(例如,在备用控制器在另一个网络上的情况下)以支持车辆速度管理应用,并且控制器可以对车辆速度消息应用更高的优先级。利用流程和应用来组织系统的组件允许控制器以不同的方式监管相同或相似的信息,以支持各种功能,从而允许改进网络监管操作的性能和安全性(例如,减少不必要的跨网络业务,并且仅在需要时提供信息),并且支持相对于先前已知的系统的附加功能性,诸如冗余支持、分布式控制和粒度跨网络消息传递。
本公开的实施例提供了用于操作和/或管理车辆自动化特征和/或功能的系统、装置和方法。本文的实施例允许在没有编码的情况下添加、部署、配置和/或更新车辆自动化特征和/或功能(例如,算法开发、编译和/或计算机可读指令的更新、操作系统改变和/或固件更新)。本文的实施例允许利用自动化制法的索引、与操作者的交互和/或与进一步与操作者、所有者、服务人员、制造商、车队人员和/或OEM对接的应用的交互来添加、部署、配置和/或更新车辆自动化特征。本文的实施例支持管理、发起和/或更新车辆自动化特征和/或功能的灵活触发器,和/或执行车辆自动化特征和/或功能。
本公开的实施例提供了用于管理和/或操作车辆远程控制增强的系统、装置和方法。本文的实施例允许减少的时延和/或无时延的车辆-外部网络通信,例如利用低功率持续车辆-云通信。本文的实施例允许对客户支持、客户服务、商业分析、制造商/OEM应用差异、消费者应用、定制特征和/或售后特征的广泛控制功能。本文的实施例允许利用可编程复杂控制程序实现远程控制增强,其具有对车辆网络、设备、端点和/或流程的安全访问的高能力,以及对辅助方面的访问,以允许高能力特征(例如,确定支持车辆状态、条件等,和/或确保任务功能不受抑制的能力)的实现。
本公开的实施例提供了用于移动应用的共享网络存储的管理和/或操作的系统、装置和方法,所述移动应用具有与之相关联的多个数据存储设备,和/或可以进一步包括所述多个数据存储设备跨移动应用的至少两个网络和/或跨混合网络的网络之上分发。实施例包括由多个应用、流程、处理器、电路、端点、设备、服务等共享的统一存储。本文的实施例提供了对移动应用的网络上的端点、设备、应用和/或流程的网络文件系统访问。本文的实施例为共享存储数据和/或其部分提供覆盖数据库服务。本文的实施例提供了用于共享存储数据的所选加密方案,其至少包括在静态的数据的加密。本文的实施例提供了共享网络存储操作的认证、访问控制和审计,其至少包括根据策略、参与设备的权限等的排定操作。本文的实施例提供了共享存储数据的数据生命周期管理,其至少包括:策略的实现;数据保留方案;和/或移动应用的设备、端点、应用、流程、相关服务、数据类型和/或确定操作条件之间的优先化。
本公开的实现以面向服务的架构(SOA)的形式提供,更快开发,代码重复使用,更低复杂性以及更容易部署。OEM受益于降低开发成本、缩短的上市时间、减少的保修费用和召回费用。对客户的益处包括车辆具有更多的功能,购买后的特征升级,以及减少由于与保修和/或召回相关联工作所致的不便。如本文使用的SOA包括用于设备、端点、应用和/或流程的操作,以发布(例如,服务提供商)服务的可用性(例如,数据值、致动器操作和/或可用的功能),以及订阅(例如,服务请求者)或以其他方式请求可用的服务。可以选择性地发布服务(例如,仅向具有足够权限的订户发布,和/或仅由具有足够权限的提供商发布)。服务可能在发布和请求侧这二者都具有不同权限,例如其中所有者、制造商、OEM、车身制造商、车队运营商、第三方应用等具有发布和/或请求服务的不同权限。服务提供商和/或请求者可以在车上或车外。
本公开的示例为移动应用提供频繁的特征升级、特征添加或移除以及个性化的特征配置。示例实施例通过提供简单、灵活的自动化能力来启用定制的车辆行为。示例实施例包括接口和集成工具,从而允许开发者和用户快速且容易地创建基于用户输入和车辆状态操纵车辆特征的定制工作流程。
示例实施例允许用户创建定制触发动作规则,以自动化车辆环境,并允许先前不可用的车载功能。例如,本文的实施例包括响应于语音命令、智能电话输入、车辆中的按钮和/或检测到的车辆操作条件或事件,对座舱温度、照明、信息娱乐、座椅、窗户、天窗、敞篷车顶部、驾驶模式和/或任何其他致动器或车辆接口的调整的客户控制。
下文描述了示例操作,以说明本公开实施例可支持的几种操作类型。示例操作是非限制性的,并且示例自动化管理器能够响应于能够作为网络通信和/或存储在计算机可读介质上的数据参数提供的任何输入,并且能够向系统中的任何致动器提供能够被命令的任何响应,包括在系统中的另一控制器(例如,车辆显示器、系统扬声器、车辆传动系等)控制下的致动器。
示例定制化操作包括响应于驾驶员轻敲驾驶员座椅加热开关两次并设置乘客座椅加热而设置乘客座椅加热的操作。示例操作在短暂的延迟(例如,几秒钟)之后将驾驶员座椅加热开关返回到驾驶员侧加热的控制。示例操作允许驾驶员从车辆的驾驶员侧方便地设置乘客座椅加热。
示例定制化操作包括响应于命令配置多个车辆方面的操作,诸如“嘿,汽车,开始我的早晨通勤”。在该示例中,配置的车辆方面可以包括将无线电调谐到选择的电台和音量,设置预选择的导航目的地(例如,办公室),设置车辆的性能模式(例如,燃料经济模式),设置驾驶员的座椅位置(例如,向前/向后、高度、倾斜、腰部支撑等),和/或设置HVAC参数(例如,选择的座舱温度)。在某些实施例中,定制化操作可以包括基于环境或外部条件的进一步交互,诸如取决于一周中的星期几使用不同的无线电台,基于环境温度调整HVAC设置,根据车辆中的人数调整导航,等等。
一种示例定制化操作,包括响应于系统条件配置多个车辆方面的操作,所述系统条件诸如是车辆在夜间接近驾驶员的家。在该示例中,定制化操作实现了一个工作流程,该工作流程为调暗前灯、降低收音机音量、向家庭自动化系统发送消息以打开灯并且打开车库门,以及在汽车驶入车库时收回侧视镜。在某些实施例中,车辆在夜间接近驾驶员的家可以通过任何操作来确定,诸如根据GPS坐标确定、与家庭自动化系统的网络直接交互等。
一种示例定制化操作包括响应于输入——诸如车辆显示器上的硬编码按钮——配置多个车辆方面的操作。示例包括响应于硬编码按钮将车辆的HVAC系统设置为期望的温度,而不必导航气候控制系统、利用多次按钮按压、和/或在可能缺乏可视性(例如,车辆是黑暗的)和/或驾驶员不想利用注意力来寻找和关注相关旋钮的情况下转动相关旋钮。
示例自动化管理器(或车辆自动化管理器)允许用户创建可以在车辆上执行的任意触发动作规则,诸如由集中式控制器执行。例如,用户可以创建触发动作规则,当在夜间驾驶时没有迎面而来的交通时,它将自动打开车头远光灯。定制化操作的示例示意流程描述包括:
用户通过她的电话或web浏览器访问应用,并使用其创建定制触发动作规则,或启用由OEM创建的预定义规则;
触发动作规则被发送到云,并且启用的触发动作规则在云侧被合并为“制法”;
云通过车辆更新控制器(VUC,例如体现在自动化管理器1404上)向车辆推送制法(例如,下载、存储和安装与定制化操作相关的配置信息);
当触发评估引擎接收到最新制法时,其分析制法中的每个工作流程,并以受控和隔离的方式执行每个规则;
审计数据(诸如触发动作规则被执行的次数、触发事件检测、触发事件数据和/或动作被采取或触发但基于操作条件被抑制的事件等)被发送回到云,在云中可以例如从电话应用和/或其他监视应用对其进行进一步审查。
可以看出,车辆自动化管理器1404允许用户丰富其车辆体验,而无需等待特征请求、批准和更新过程。示例车辆自动化管理器进一步允许用户利用他们自己的创造力和/或第三方应用提供商的创造力来实现改进的车辆交互。附加地,车辆品牌所有者(例如,制造商或OEM)或其他支持方或负责方可以实现触发动作规则,以更快和/或更频繁地向许多用户、或甚至特定用户提供更新或特征。
示例车辆自动化管理器(VAM)从云中获取制法作为输入,并执行制法中的触发动作规则。每个触发器操作规则都由触发器、条件和操作组成。触发器是对规则的输入,其包括来自CAN总线的信号、时间、位置、诊断状态、车辆状态、视频/音频、驾驶日志等。条件取得触发输入值,并决定是否满足某些条件。
使用定制语法描述条件,以便表述复杂的逻辑条件,诸如多级与/或逻辑、比较器和用于计算总和/平均值/标准偏差等的高级实用函数。如果条件得到满足,则对应的动作将被执行和/或被请求(但是可能由于操作条件等而被阻止)。动作可能包括调用SOA中的服务或向CAN ECU发送CAN信号。
参考图56,示意性地描绘了示例装置5600,其包括自动化管理器1404,并且其定位在中央控制器上。在图56的示例中,自动化管理器1404使用MQTT/HTTP/WebSocket等从云接收制法(和/或描述定制化操作的配置信息)。VAM基于制法控制车辆自动化,并包括解析制法的词汇引擎,以及通过利用触发评估引擎和任务执行引擎(和/或触发执行引擎)来协调规则执行的规则引擎。诸如图56中的自动化管理器的操作可以包括车辆自动化操作、事件触发操作、远程控制操作和/或响应于由制造商、OEM、车队所有者、车辆所有者、车辆操作者和/或第三方创建的应用、特征、触发或其他自动化应用而执行的任何可配置操作。
示例触发评估引擎将触发数据取作输入,并基于触发数据值评估触发条件。触发数据可以来自任何网络,诸如CAN总线,例如使用可配置的边缘网关来调整路由表以动态检索信号值。此外,数据还可以通过SOA来自诸如以太网ECU之类的任何ECU 1406,来自集中式控制器上的其他模块(例如,诊断服务器),或者来自以太网上的原始传感器数据(诸如视频/雷达/LiDAR流)或其他类型的网络(例如支持高级驾驶员辅助系统——ADAS1408)。集中式控制器可以进一步与系统的其他方面共享为定制化操作执行的数据收集,诸如用于其他目的的数据收集操作,和/或在利用至少一些相同触发数据参数的多个定制化操作之间共享数据收集,从而减少对相同数据参数的冗余请求。在某些实施例中,数据收集可以是可以附加地基于触发条件的单独操作,和/或数据收集可以作为定制化操作来执行。
在图56的示例中,触发管理器(例如,作为图56的示例中的自动化/远程管理器)管理来自各种触发相关客户端的触发,诸如车辆自动化、远程控制和/或数据收集触发流程。图56中的示例进一步包括接收与触发相关的数据的数据监听器,该数据可以从车辆中的任何位置取得,所述位置诸如是:CAN总线;以太网分组(包括具有诸如车辆位置的状态信息的EthCC分组);提供DET错误、RDBI数据、故障代码等的诊断管理器;系统管理器(例如,提供车辆电力状态信息);时间管理器(例如,提供当前时间值);和/或诸如来自SOA的任何其他信息。触发数据也可以取自车辆外部的任何位置,诸如云中的REST API端点。
在图56的示例中,数据告诉高速缓存存储用于条件评估的数据,例如包括缓冲数据、中间参数等。
在图56的示例中,条件评估运行时是基于高速缓存中的触发值评估条件的引擎,并响应于评估确定是否满足触发条件。条件评估支持任何类型的分析或确定操作,其至少包括:基本逻辑运算符(例如,与、或、数值比较等);具有适当格式的嵌套逻辑表达式(例如,((X>5&&Y<10)||Z!=100)&&P<0.05);数学函数(例如,算术、指数、三角、模、伽玛等);和/或在数据范围内的复杂数据变换函数(例如,中值;均值;标准差;映射;减少;最小值/最大值;分桶(bucketing);过滤;积分;求导;和/或频率分析操作)。
在图56的示例中,任务执行引擎执行动作目录中定义的动作(例如,根据定制化操作调整的致动器)。示例和非限制性动作包括开灯、打开和/或调整HVAC、打开点火装置等。本公开的实施例能够访问通过任何网络可到达的任何致动器,包括在多于一个网络上提供的致动器(例如,一个致动器使用以太网,并且另一个致动器使用CAN)。在某些实施例中,动作包括对致动器的操作的请求(例如,对具有直接控制致动器的另一控制器的请求)、请求执行公布的服务的动作、和/或具有复杂交互的动作,该复杂交互可能进一步存在于多于一个其他控制器上。例如,动作包括为当前用户调整周围环境,这可以包括与多个控制器和/或流程交互,例如确定当前用户身份、她的偏好,以及调整诸如座位位置、HVAC设置、无线电信道等环境。这些动作还可以包括调用云中的REST API、向联系人发送SMS消息等。
在某些实施例中,自动化管理器将一个或多个定制化操作作为服务进行宣传(例如,可以由定制化操作的请求者可选择,在策略中定义等)。在某些实施例中,自动化管理器的组件、电路、控制器和/或引擎全部或部分地与诸如远程控制管理器之类的其他管理器共享,和/或可以响应于使用API、库调用或其他交互接口的其他管理器,例如确定指定的一组数据和触发逻辑(例如,从其他管理器传递到自动化管理器)是否指示触发事件已经发生(例如,由条件评估运行时确定),和/或实现由另一个管理器提供的要被实现的操作(例如,作为操作请求从该另一个管理器传递到自动化管理器)(例如,由任务执行引擎操作以移动致动器和/或向其他控制器提供适当的命令)。
本公开的实现提供了可定制化操作的快速开发和部署、无需编码和/或编译要求的自动化实现、客户定制化的访问、第三方应用、售后供应商等。即使在数据提供商和/或致动器跨多于一种网络类型上分布的情况下,本公开的实现也提供易于实现可定制化操作,并且不要求可定制化操作的提供商了解车载网络的当前配置。
本公开的示例提供了对移动应用执行远程控制操作的能力。某些特征的远程控制操作可能被硬编码在ECU软件中——例如简单的操作,诸如引擎的启动/停止操作、车门的锁定/解锁操作、车窗和/或天窗的打开/关闭操作等。然而,在生产完成后为这样的特征添加或改变功能性需要代码改变和验证,这可能包括参与远程功能的一个或多个ECU和/或那些ECU上的软件构建的重新鉴定。本公开的实施例能够在车辆生命周期中的任何点配置移动应用的远程控制操作,并且进一步允许在制造时包括的远程操作的配置、更新和固定。附加地或替代地,在存在诸如本公开中阐述的更鲁棒的远程控制实现的情况下,先前将被硬编码的特征可以被实现为如本文中阐述的动态特征。
下文描述了示例操作,以说明本公开的实施例可支持的一种类型的几个远程控制操作。示例操作是非限制性的,并且示例远程控制管理器能够响应能够作为网络通信和/或存储在计算机可读介质上的数据参数提供的任何输入,并且能够向系统中的任何致动器提供能够被命令的任何响应,包括在系统中的另一控制器的控制下的致动器(例如,车辆显示器、系统扬声器、车辆传动系等)。
示例操作包括接收排定的环境适应性的客户配置,其中远程控制操作包括在所选的星期几(例如,工作日)在排定的时间(例如,7AM)将HVAC系统激活至所选的条件(例如,所选的温度,和/或利用除霜来确保窗户是干净的)。在某些实施例中,客户可以使用应用(例如,第三方应用)、使用基于云或web的接口和/或使用由制造商、经销商等提供的应用来配置操作。在某些实施例中,操作者选择用于远程控制操作的制法(例如,其可以包括设置某些参数的提示,和/或可以仅仅是打开或关闭特征的指令或批准)。在某些实施例中,操作者构建定制的远程控制操作,其可以例如基于车辆上存在的、在制法中可用的定制的操作特征,和/或可以完全由用户与接口交互来建立,以允许输入要执行的操作、要应用的任何条件和任何阈值的设置等。
示例操作包括远程控制管理器响应渐进式预处理命令以所选的次序加热车辆的座舱,诸如使用HVAC使座舱空气达到期望的温度,然后激活加热方向盘和/或加热座椅功能。
示例操作包括远程控制管理器响应用户设置请求,并响应于响应用户设置请求调整车辆配置(例如,转向柱定位、环境光颜色、内部/仪表板灯亮度、UI/UX风格选择等)。
示例操作包括车辆管理设置(例如,代客模式、借用车辆模式、当驾驶车辆时为父母所有者的孩子配置的模式等),例如降低车辆速度限制、位置限制(例如,距激活位置500米的地理围栏周界、具有诸如城市界限的限定区域的限制和/或在限定区域之外的限制,诸如州线、另一城市界限、距激活位置的总距离等)。车辆管理设置的应用限制可以是实际应用的限制(例如,最大速度、性能值等)或通知限制(例如,通常地理限制可以被实现为通知限制而不是关断限制),其中如果超过(和/或测试,诸如利用实际应用的限制)车辆管理设置的限制,则通知被发送到所有者和/或所选设备。
示例操作包括安全模式,例如响应于对安全模式的请求从相机、麦克风、车辆显示器、仪表板等请求数据。在某些实施例中,用户可以选择一个或多个设备(例如,车辆内或相对于车辆的特定相机和/或位置),并且可以从(一个或多个)所选设备接收流式传输的视频和/或快照。在某些实施例中,安全模式允许来自通信地耦合到车辆的设备的数据请求,例如与车辆通信的家庭安全系统的安全相机(例如,参见前面的定制操作)。
示例操作包括个性化操作,诸如播放“祝你生日快乐”和/或在司机生日那天进入车辆时操纵座舱灯。附加地或替代地,个性化操作可以是任何类型的操作,例如:在给定的日历日期、一周中的星期几等播放所选的歌曲或播放列表;在进入车辆时提醒操作者日历事件(例如,链接到智能电话的日历功能等)、纪念日等;和/或提醒操作者排定的停留(例如,在进入车辆下班回家时拿起食品杂货)。
示例且非限制性的远程控制操作包括执行一个或多个操作,诸如:向操作者发送注释,在车辆显示器上示出注释,和/或在扬声器上宣布注释;从一个或多个相机拍摄快照,并将其发送给操作者和/或请求者;允许第三方服务(例如,移动加油、车辆服务和/或运输公司)访问车辆位置和车门状态,但是仅在特定条件下(例如,一天中的所选时间,直到事件完成,和/或响应于第三方服务接近车辆);当操作者接近时开始车辆、控制器、机头单元(head unit)等的启动操作;通过(例如,响应于结霜、环境温度确定等)给车辆除霜对环境改变作出反应;和/或运行用于诊断目的的排定测试(例如,当操作者离开车辆时运行主动诊断测试,减少测试对车辆任务的影响)。
示例远程控制操作包括先决条件、任务和/或状态报告。先决条件包括车辆状态、CAN信号、以太网分组、存储在计算机可读介质上的信息(例如,日志信息、行程信息和/或存储在存储器位置的其他车辆信息)、时间和/或日期、位置等的任意组合,以用作远程操作的先决触发条件,并且可以进一步被配置为复杂的逻辑表达式,并且可以进一步基于多个条件。该任务包括可以利用CAN信号、以太网分组或其他网络通信来执行的动作,至少包括在前面的定制操作中描述的任何动作。状态报告包括确认信息、操作被执行的确认和/或操作未被执行的通知、相关数据、确认数据、与远程控制操作相关的利用数据等。状态报告的内容可能因状态报告的接收者和/或请求者而异——例如,操作者可以接收确认操作的简单状态报告,服务人员可以接收具有与操作相关的相关联参数的更详细的状态报告,并且制造商可以接收移除了个人可标识信息的详细状态报告(例如,以编译可靠性数据,同时允许存储和聚合数据,而不必管理个人可标识信息)。先决条件、任务和/或状态报告的存在和/或内容可以由用户输入、策略和/或配置信息来提供和/或更新。
示例远程控制解决方案支持在完成所有远程控制功能(例如,操作条件、内部座舱设置、电池充电状态等)之后最终车辆状态(车辆应该返回到的状态)的规范。该车辆状态可以不同于接收到请求时的车辆状态。与任务类似,它也是可配置和可编程的。
再次参考图56,示意性地描绘了示例远程控制管理器,其在该示例中是集中式控制器的一部分,尽管远程控制管理器可以是不同的设备和/或位于另一设备上。到CAN控制器的接口可以通过可配置的边缘网关来实现。在该示例中,任务执行引擎和触发评估引擎被描绘为独立的并且专用于远程控制管理器,这仅仅是为了本描述的清楚。任务执行引擎和/或触发评估引擎可以全部或部分地与诸如自动化管理器的另一设备或控制器一起定位,在远程控制管理器和自动化管理器之间共享,和/或远程控制管理器和自动化管理器(如果存在)中的每一个可以具有分离的(一个或多个)触发评估引擎和/或(一个或多个)任务执行引擎。
如本文使用的任务、车辆任务或其他类似术语应当广义地理解。如本文利用的任务指的是以下各项中的任何一项:主要功能;意图功能;关键功能;和/或最小使能功能(例如,操作被认为正常和/或可接受以允许继续操作所需的功能)。例如,车辆的任务可能取决于车辆的当前操作条件和/或车辆的意图用途。例如,车辆任务可以包括提供动力和/或动力操作的能力,并且可以进一步包括性能描述,诸如最小可用功率、扭矩和/或车辆速度(例如,其可以与这些的额定值相同或更低)。在另一个示例中,任务可以是提供车辆系统的电力和/或功能性的能力,诸如灯、通信操作、保持操作、车厢环境操作等。在某些实施例中,在车辆或组件不能执行任务的情况下,例如在动力操作可用但低于车辆可接受的性能特性的情况下,车辆或组件的一些操作水平可能是可用的。在某些实施例中,与任务相关的方面可能不影响车辆的性能,但仍然是任务关键的,例如,气囊功能、ABS功能等的丧失可能不阻止任务的操作(例如,动力操作),但仍然被认为是对于车辆以可接受的方式继续操作关键的任务。可以看出,车辆、组件、控制操作等的任务可以取决于车辆的背景,包括设计考虑、车辆的目的、策略和/或与车辆相关的实体的偏好(例如,车队所有者、车辆所有者、监管机构等)、车辆的地理位置和/或车辆的地形位置(例如,当前标高、坡度、道路类型等)。数据值或其他特征可以是在第一车辆上但不在第二车辆上和/或在给定车辆的第一时间但不在给定车辆的第二时间的任务关键和/或任务相关的数据值或特征。受益于本公开和通常可用于车辆及其组件的信息,本领域技术人员可以容易地确定数据值、控制操作、组件或系统的其他元件是否是任务关键的和/或任务相关的。确定数据值、控制操作、组件或系统的其他元件是否是任务关键的和/或任务相关的某些考虑包括但不限于:车辆的等级、车辆的意图用途、与车辆相关联的服务质量要求、车辆或其组件的保修说明、车辆的预期工作周期、车辆的地理操作区域、车辆的地形操作区域、与车辆相关联的监管要求和/或与车辆相关联的策略考虑。
本文所述的方法和系统可以部分或全部通地过具有计算机、计算设备、处理器、电路和/或服务器的机器进行部署,所述机器执行计算机可读指令、程序代码、指令和/或包括配置为在功能上执行本文所述方法和系统的一个或多个操作的硬件。如本文使用的术语计算机、计算设备、处理器、电路和/或服务器(“计算设备”)应该广义地理解。
示例计算设备包括任何类型的计算机,其能够访问与其通信存储的指令,诸如存储在非暂时性计算机可读介质上的指令,因此计算机在执行指令时执行计算设备的操作。在某些实施例中,这样的指令本身包括计算设备。附加地或替代地,计算设备可以是单独的硬件设备、跨硬件设备分布的一个或多个计算资源,和/或可以包括诸如以下各项的方面:逻辑电路、嵌入式电路、传感器、致动器、输入和/或输出设备、网络和/或通信资源、任何类型的存储器资源、任何类型的处理资源、和/或被配置为响应于确定的条件来功能性地执行本文的系统和方法的一个或多个操作的硬件设备。
参考图1,提供、创建、部署、实现和/或支持自动化车辆响应活动的示例系统100。如本文使用的自动化车辆响应活动应该广义地理解,并且包括但不限于本公开的任何其他方面的操作,例如:控制车辆上和/或通信地耦合到车辆的任何致动器;收集车辆上可用的所选数据,包括生成和/或传送否则可能不可用的数据的操作;例如响应于检测到的条件、具有所选值、范围或阈值的车辆数据等,提供通知或警报;启用或开始监视操作、条件操作等;前述的任何一个或多个的触发实施例(例如,确定触发器是否存在,以及响应由触发器检测到的条件的存在或不存在);前述的任何一个或多个的调度实施例(例如,其中调度包括开始定时、实现定时、数据存储定时、延迟时段等,并且其中调度可以应用于触发评估、自动化操作、通知、警报、数据存储、数据传输、相关通信等);和/或实现任何类型的工作流程(例如,实现单个动作、动作序列、分支动作序列、循环动作序列、重复动作序列和/或状态机的操作)。
图1的系统100以及本公开的系统、装置、组装件、控制器、电路、程序和/或其他实施例允许实现具有一个或多个特征的自动化车辆响应,这些特征例如是:在不改变基础软件、固件或车辆控制器的其他方面(这原本可能需要附加的认证、测试、调试等)的情况下提供鲁棒的车辆功能性和复杂的工作流程的能力;将自动化车辆响应实现扩展到更广泛的人群或实体的能力,例如终端消费者、车辆所有者、车辆操作者、车队管理者、经销商、服务人员、原始设备制造商(OEM)、车辆装配工/车身制造商、售后组件提供商等;提供鲁棒的车辆功能性和复杂的工作流程的能力,而不要求创建者具有关于可用数据、传感器、致动器等的车辆特定知识;调度许可和授权的能力,以确保创建者不能访问他们不应访问的数据或车辆功能;为数据的特定创建者和/或接收者配置数据的能力,例如保护专有信息(例如,控制算法,包括算法步骤、响应时间、数据分辨率等),保护个人可标识信息(PII)等,同时扩展可以由创建者使用的可用数据(例如,在本公开的实施例中,敏感数据可能是可用的,其原本例如通过以降低的分辨率、在移除或改变一些动态信息的情况下和/或以改变的采样率提供数据而是不可用的);和/或为自动化车辆响应的特定创建者和/或受益者(例如,车辆操作者)配置致动器或车辆控制访问的能力,同时扩展可以由创建者使用的可用自动化车辆响应(例如,根据与创建者和/或受益者相关联的许可或授权,和/或根据保护所选车辆功能的单独规则,通过将对致动器/控制的访问限制到指定条件、设定点、请求对照所命令的操作等)。
示例系统100包括具有多个网络区106、108的车辆102,每个网络区具有多个端点。例如,图1的示例中的网络区106描绘了网络区106上的四个端点,包括表示为数据存储的一个端点,以及网络区108上的三个端点。图1的示例包括控制器104,示意性地描绘为与每个网络区106、108通信,并且具有单独的相关联数据存储。在某些实施例中,控制器104可以被提供为网络区106、108的端点,和/或控制器104可以包括融合网络设备(CND)——例如以监管和促进车辆的网络区106、108之间的通信,和/或与外部设备、云服务器、服务工具、制造工具等的通信。示例系统100包括具有控制器112和单独的数据存储114、116的云服务器110,以及具有控制器124和数据存储126的工具122。示例工具122可以是任何类型的工具,包括例如维修工具、制造工具,但是可以包括任何类型的工具,例如工程工具、售后工具、面向消费者的工具等。示例系统100描绘了直接连接到车辆102的外部设备120(例如,直接连接到车辆102的移动电话或膝上型计算机),例如操作者设备、服务设备、车队管理设备等。示例系统100描绘了连接到云服务器110的外部设备118,例如使用web门户、移动应用、专有应用等。图1中描绘的示例组件是非限制性示例,并且给定系统100可以包括或省略图1中描绘的任何组件。在某些实施例中,组件在第一时间可以是系统100的一部分(例如,当外部设备120通信地耦合到车辆102时),而在第二时间不是系统100的一部分。
在示例布置中描绘了示例控制器104、112、124。本公开的各方面(包括电路、控制器、引擎等)可以以任何布置全部或部分地提供在所描绘的控制器104、112、124上,跨所描绘的控制器分布,位于其他位置(例如,在网络区106、108上,包括全部或部分地位于网络区106、108的端点上),和/或取决于系统的当前操作条件(例如,电路在第一操作条件下位于云服务器110上并且在第二操作条件下位于维修工具122上)、一天中的时间、日历日期、操作者的位置、车辆102的位置等而位于不同的位置中。图1中描绘的示例数据存储可以位于系统100中的任何位置,并且至少选择性地或间歇地与体现系统100的一部分的任何控制器通信的任何数据存储在本文中被设想为用于本文的某些操作的数据存储,这些操作至少包括存储数据、移动存储的数据、向操作者或与车辆相关联的其他实体(例如,服务人员、车队管理人员、制造商、所有者、经销商、售后提供商等)提供数据。
参考图2,示例装置200被示意性地描绘为非限制性地提供自动化命令214,其中车辆102的端点响应于自动化命令214来实现自动化车辆响应活动。示例控制器202以及本文描绘的所有控制器(例如,参考图6、图11、图15、图17、图20、图22、图32、图34和图35以及相关描述)可以整体或部分地位于车辆、云服务器、工具和/或外部设备上,并且可以跨这些中的一个以上分布,包括分布在这些中的一个或多个内(例如,控制器具有位于车辆的第一端点上的第一部分和位于车辆的第二端点上的第二部分)。
描绘了本文的示例控制器,其具有被配置为执行控制器操作的多个电路。不限于本公开的任何其他方面,电路包括被配置为执行针对该电路阐述的操作的组件,并且可以包括诸如以下各项的组件:致动器,其响应于命令来执行所选的操作和/或提供诸如致动器状态、故障条件等的通信;传感器,其提供电路利用的一个或多个信息值,包括直接传感器(例如,温度、速度、电压等)和/或虚拟传感器(例如,从系统上可用的多个其他值中确定的值);处理器和/或存储在计算机可读介质上的可执行指令,其中处理器被配置为执行指令以执行电路的一个或多个操作;和/或被配置为存储与电路相关联的相关数据、可执行指令等的数据存储。在某些实施例中,电路的组件和/或分布取决于电路执行的操作、车辆的操作条件和/或组件的通信连接性(例如,与云服务器、工具和/或外部设备的通信的可用性)。在某些实施例中,传感器、致动器、支持控制器、数据存储等可以通信地耦合到电路,例如,解释温度值的电路可以包括其上存储有表示温度值的数据值的数据存储,其中,解释温度值的电路的操作可以包括读取数据值,并且在另一个示例中,解释温度值的电路可以包括提供温度值以供电路的其余部分利用的温度传感器。示例电路可以由硬件、可执行指令、传感器、致动器、逻辑电路等的任何配置来体现,它们被配置为协作以执行电路的功能。在某些实施例中,电路的部分可以跨多于一个控制器分布,部分在车辆上和/或车辆外,和/或电路的部分跨车辆的多于一个端点分布。为了本说明书的清楚起见,本文的每个电路和/或控制器被描绘为单个组件,但是可以以本文阐述的任何方式分布和/或定位。
示例控制器202包括自动化定义电路204,其被构造成解释自动化描述212。示例自动化描述212包括要执行以实现自动化车辆响应的操作,并且可以由外部设备、工具、云服务器等提供。自动化描述212的利用允许计划要由不具有车辆特定信息(例如,参数名称、端点位置、网络地址和/或关于车辆上控制操作和/或端点的分布的信息)的用户执行的自动化车辆响应。在某些实施例中,允许用户提供自动化描述212的用户接口可以固有地限制用户仅查看或访问该用户被许可的信息、功能等。在某些实施例中,除了将用户限制到许可的活动的用户接口之外或作为其替代,控制器202响应于自动化描述212来确定自动化动作计划222的操作包括检查自动化描述212的方面是否被请求者(例如,提供自动化描述212的用户)许可。
示例控制器202包括自动化管理电路206,其被构造成响应于自动化描述212提供自动化动作计划222。在某些实施例中,自动化动作计划222包括响应于自动化描述212的车辆的端点的车辆特定信息(例如地址、所有者、网络位置等),所述端点例如提供所请求的数据的端点、能够执行所请求的功能的端点、和/或包括或掌控作为自动化车辆响应活动的一部分而被运用的车辆的所选致动器的端点。自动化动作计划222可以进一步包括诸如以下各项的信息:触发评估信息(例如,用于确定自动化车辆响应活动的各方面是否应该被发起、执行、继续、中断等的信息)、要收集的数据、要操纵的(一个或多个)致动器、应该传送的数据值等。在某些实施例中,自动化动作计划222进一步包括诸如以下各项的信息:数据处理(例如,收集的数据分辨率、单位、采样率、调整、汇总、上采样、下采样等)、要进行的校准调整(例如,与车辆的流程、应用、端点等相关联的校准)、支持操作的数据存储(例如,包括收集的数据的存储、触发评估数据的存储和/或支持自动化操作的存储,例如响应于检测到的事件可以存储更长时间的某些车辆数据的滚动缓冲)。示例控制器202进一步包括自动化执行电路208,其响应于自动化动作计划222提供(一个或多个)自动化命令214,例如以实现自动化动作计划222,和/或执行自动化动作计划222中阐述的工作流程和/或工作流程的任务。车辆的一个或多个端点——不管这样的端点位于车辆的哪个网络区上——都响应于(一个或多个)自动化命令214来执行自动化车辆响应活动的所选操作。
示例装置200,控制器202包括自动化报告电路210,其响应于自动化车辆响应402的实现向外部设备提供确认通信220。示例自动化管理电路206进一步存储响应于自动化动作计划222的策略,并且其中自动化执行电路208响应于该策略提供自动化命令214。示例自动化管理电路206进一步响应于自动化动作计划222来调整存储的策略,其中自动化执行电路208响应于经调整的存储策略来提供自动化命令214。示例自动化命令214包括致动器命令和/或数据收集命令。示例自动化报告电路210向外部设备提供响应于数据收集命令而收集的数据的至少一部分。示例且非限制性的自动化命令214包括对具有控制器202的车辆的流程、应用或服务之一的校准调整。示例自动化管理电路206进一步被构造成确定外部设备提供自动化描述212的授权。控制器202的示例操作可以响应于车辆操作参数218,例如如关于图8和相关描述所阐述。
参考图5,提供示例自动化描述212作为用于车辆的策略502的一部分,例如定义用于网络间通信、网络内通信、车外通信等的规则、优先级信息、层级信息等的策略。在某些实施例中,策略502被CND或其他网络控制设备用来实现许可、促进端点之间的通信等,以确保网络利用、数据安全、数据传输资源利用、车辆操作影响以及与网络相关的车辆操作的其他方面在指定参数内执行,并确保端点和/或外部设备可以访问允许的数据、流程、端点、应用等,而不需要与其他端点、流程、应用等相关联的通信协议、网络地址、网络位置、数据单元、数据分辨率和/或数据采样率的个性化知识。可以是自动化描述212的一部分的示例参数包括诸如以下的参数:车辆操作条件504(例如,与开始、继续或执行操作相关联的操作条件,包括要用作与自动化车辆响应活动相关联的触发评估参数的操作条件);外部操作条件506(例如,与开始、继续或执行操作相关联的操作条件,包括要用作与自动化车辆响应活动相关联的触发评估参数的操作条件,其中外部操作条件包括车外操作条件,例如天气、交通、环境条件,来自云服务器的指示,例如更新指示和/或召回指示等);数据收集参数508(例如,要作为自动化操作的一部分收集的参数,以准备自动化操作,验证自动化操作,和/或与触发评估相关的这些中的任何一个);事件检测参数510(例如,用于评估、确认和/或验证事件已经发生的参数);致动器控制参数512(例如,与可以在自动化操作中利用的致动器相关联的参数,诸如致动器标识符、致动器命令值、致动器阈值等);校准改变514(例如,与作为自动化操作的一部分对校准进行的改变相关联的参数,诸如相关联的流程、应用、端点、车辆功能等的标识符,要被改变的校准参数的标识符,和/或与要被应用的校准改变相关联的值,包括例如被检测以实现、调整或回复校准改变的条件,和/或包括先前校准值的存储,例如以支持系统恢复或回滚操作);通知参数516(例如,通知、警报等的内容和/或位置信息,诸如网络地址、实体名称、通信报头信息以及要包括在通知或警报中的数据);所选制法、模板和/或对这些的调整(例如,用于自动化操作的制法和/或模板的标识和/或内容,和/或从要用于自动化描述212的制法和/或模板的基线的调整,和/或所选制法、模板和/或调整218);生命周期值520(例如,所收集数据的数据保留、自动化描述212的相关时间段,诸如“执行单次”、“连续执行”、“在所选时间窗口内执行”等,并且其可以包括与自动化描述212和/或相关数据等相关联的优先级值);操作影响522(例如,限制网络通信资源、处理资源、数据存储资源等的利用,和/或限制车辆功能、应用或流程的干扰或中断——例如,限制执行诸如动力操作、引擎控制器、变速器控制器等关键功能的车辆控制器的利用);层级值524(例如,用于控制多个自动化操作、多个存储数据块等的优先化、调度和/或实现);和/或优先级值526(例如,事件检测、触发评估、与自动化描述212相关联的自动化操作、根据自动化操作收集的数据的优先级,并且包括这些之间的交互或关系——例如,在检测到特定事件之前与自动化描述212相关联的第一优先级,以及在特定事件之后与自动化描述212相关联的第二优先级,例如增加自动化描述212对于诸如确定异常车辆条件存在的事件的优先级,或者降低自动化描述212对于诸如确认车辆组件正常操作的事件的优先级)。对利用的限制(例如来自操作影响522的限制)可以包括计算的限制(例如,确定由自动化动作计划222和/或车辆总体产生的网络通信速率,例如,来自历史利用信息和/或先前估计的利用信息,并且其可以进一步包括确定由于车辆上端点的实际分布所致的利用影响——例如,考虑CND流量以支持网络间通信等),基于规则的限制(例如,将自动化动作计划222限制到数据存储上限、网络利用上限等,其可以进一步根据自动化动作计划222的优先级和/或与请求者或与自动化动作计划222相关联的其他实体相关联的许可值来确定),和/或灵活限制(例如,允许所有自动化动作计划222直到达到利用限制,并且然后以所选的方式在自动化动作计划222之间进行优先化,这可以由策略或本文阐述的任何其他优先化方案来设置)。在某些实施例中,例如当自动化动作计划222由于利用限制而未被实现和/或被修改时,示例控制器202提供通知或警报来指示自动化动作计划222已经被拒绝、中止和/或修改。通知或警报可以被传送给请求者、(例如,云服务器110或在控制器112上运行的应用的)管理员、车辆制造商或与系统100相关联的任何其他实体。
参考图3,示例自动化动作计划222包括为特定车辆配置的自动化描述212的方面,例如:要收集的数据的数据描述302(例如,包括网络地址、端点标识符、数据处理值等);致动器响应304(例如,包括网络地址、端点标识符、致动器命令值等);数据传输操作306(例如,包括传输定时、优先级、传输响应丢失等);数据存储操作308(例如,包括数据存储位置、数据存储格式、数据存储生命周期等);事件检测描述310(例如,要检测的与自动化车辆响应活动相关的事件,例如用于发起动作、修改动作、发起或设置定时器值、设置状态值等);触发描述312(例如,用于发起动作或工作流程、发起数据收集、发起定时器或其他延迟操作等的触发器);和/或动作序列或时间表314(例如,提供对工作流程中排序的动作的描述,例如,参考图25-27或31,以及相关描述,提供对发起动作的定时和/或动作之间的延迟时段的描述,基于事件、触发器、状态值或操作条件的动作时间表等)。在某些实施例中,自动化动作计划222进一步包括数据描述,其阐述了数据处理、单位、分辨率、采样率和/或与自动化车辆响应活动期间利用的数据相关的其他信息,和/或在自动化车辆响应活动期间存储、传送或传输的数据。
参考图4,示意性地描绘了示例自动化车辆响应402,例如阐述了作为自动化车辆响应活动要执行的动作。示例自动化车辆响应402不是通常将作为系统中的数据值出现的值,而是可以作为过程的目标的相当高级的描述(例如,参考图36-55和相关描述),其是用户提供自动化请求1506和/或自动化描述212的预期目标活动,和/或可以作为与模板或制法相关的描述来提供,例如在用户接口上提供。示例且非限制性的自动化车辆响应402包括诸如以下的响应:选择性地激活致动器404(例如,命令致动器打开或关闭,命令致动器到所选位置,和/或命令致动器的结果,例如利用致动器的控制算法的设定点);所选数据的收集406(例如,在自动化命令的操作期间收集的与事件检测、触发评估相关的数据、与自动化命令相关的确认数据和/或与自动化命令相关的警报或通知);将自动化车辆响应延迟保持时段408(例如,检测到触发评估指示将执行自动化车辆响应活动,并且将执行活动延迟预定时段,直到检测到另一条件,和/或根据车辆的操作条件,例如等待直到车辆停止、以阈值速度移动、低于设定的燃料或电池水平、处于关闭条件等);延迟对检测到的事件的自动化车辆响应410(例如,车辆事故事件、故障代码事件、非正常操作事件和/或贯穿本公开阐述的任何其他事件检测);将致动器移动到所选位置412;和/或提供通知414(例如,已经执行了自动化车辆响应活动、已经确认了触发评估、已经检测到事件和/或与事件检测相关的信息、还没有执行或将不会执行自动化车辆响应活动等的通知)。自动化车辆响应402是可以由自动化命令214执行的几个操作的非限制性示例。在某些实施例中,给定的自动化车辆响应活动可以包括多个自动化车辆响应402。在某些实施例中,自动化车辆响应402可以作为工作流程中的任务来执行,例如关于图25-27和31所阐述的。
示例系统包括响应于自动化命令214的端点作为与控制器202分离的第二控制器(例如,其中自动化命令214是到第二控制器的通信)。示例系统包括第二控制器响应于自动化命令214提供所选的数据值(例如,请求收集的数据)或所选的致动器命令值(例如,响应于自动化命令214命令致动器)。在某些实施例中,第二控制器进一步向控制器202提供确认值216,例如确认自动化命令214被接收,确认致动器已经被命令,和/或确认致动器已经对命令做出响应。在某些实施例中,第二控制器响应于实现自动化车辆响应,例如响应于提供给第二控制器的致动命令214,响应于检测到的事件,和/或响应于确定自动化车辆响应是活动的触发评估,而提供确认值216。在某些实施例中,第二控制器将确认值216提供为作为自动化车辆响应的一部分而执行的工作流程的任务。示例系统包括第二端点,例如传感器或致动器,其响应于来自第二控制器的命令。在某些实施例中,响应于自动化命令214的端点可以是根据自动化命令214执行动作的传感器或致动器。在某些实施例中,各种自动化命令214涉及多于一个端点,其中每个端点可以在车辆的任何网络区上,包括跨车辆的多于一个网络区分布的端点。在某些实施例中,控制器202向每个相关端点提供自动化命令214,例如通过CND传递命令,该CND配置和传送自动化命令214、确认值216和/或在控制器202和响应端点之间提供的任何其他通信,包括为每个端点和控制器202根据相关网络协议、消息传递范例等提供通信。车辆中的网络区可以是不同的类型(例如,以太网对照CAN),利用不同的通信协议等。车辆的网络区的端点可以利用不同的网络通信速率或方案、不同的数据类型或分辨率(例如,2字节定点数据对照4字节浮点数据),或者具有由CND、边缘网关和/或策略引擎或策略管理器管理的任何其他差异,如本文中和美国申请17/027,167、17/027,187和/或US17/195,589中所阐述的,这些申请先前已通过引用并入本文。
示例自动化执行电路208响应于自动化动作计划的事件检测描述224来检测事件,并且进一步响应于检测到的事件来实现自动化车辆。示例自动化管理电路206响应于自动化描述212的外部操作条件提供自动化动作计划222,并且自动化执行电路208从外部设备(例如,至少间歇地与控制器202和/或车辆通信的设备,例如在外部设备上操作的基于web的服务)接收外部操作条件。示例自动化定义电路204从外部设备接收自动化描述212,例如通过诸如以下各项的操作:从云服务器接收自动化描述212,作为要在车辆上执行的自动化工作流程;作为包括自动化描述212的策略;作为包括自动化描述212的策略的一部分(例如,要附加到主策略,和/或要作为第二策略执行,其中系统实现允许服务多个策略);和/或作为由任何外部设备、诸如服务工具、与车辆通信的云服务器上的应用、与车辆通信的web门户、和/或移动应用(诸如车辆操作者的移动设备上的应用)做出的远程命令(例如,由具有自动化描述212的数据文件提供,并被格式化为由控制器202识别和实现)。
参考图6,示例装置600描绘了包括自动化定义电路204的控制器601,自动化定义电路204解释自动化触发描述602(例如,描述发起、继续、中止和/或在与自动化车辆响应活动相关联的工作流程的任务或状态之间移动的标准)和自动化动作描述604(例如,描述作为与自动化车辆响应活动相关联的工作流程的一部分执行的操作)。示例控制器601包括自动化管理电路,该自动化管理电路响应于自动化触发描述602和自动化动作描述604提供触发检测计划610和自动化动作计划222(例如,提供车辆特定参数以实现描述602、604,附加在策略内,和/或执行任何其他操作以实现如本文所阐述的自动化车辆响应活动)。示例控制器601包括自动化执行电路208,该自动化执行电路208确定触发事件值612(例如,检查当前车辆条件或其他相关数据以确定触发检测计划610的触发的标准是否已被满足),并响应于触发事件值612(例如,在触发被确认之后开始执行自动化命令214)和自动化动作计划222(例如,执行所选自动化操作)提供自动化命令214。
示例自动化执行电路208进一步响应于触发检测计划610提供触发评估命令606,例如允许串行触发条件(例如,在开始检查条件B之前检查条件A是否存在)。响应于触发评估命令606的(一个或多个)端点可以不同于执行自动化命令214的端点,并且支持每个触发水平的另外的端点(例如,在考虑串行触发条件的情况下)可以不同于支持其他触发水平的端点(例如,对条件A对照条件B的检查可以使用不同的一组传感器、车辆数据等,以确定是否满足针对每一个的触发条件)。示例自动化执行电路208响应于从触发评估命令606确定的触发评估值608,例如其中触发评估值608包括用于检查相关触发条件是否已经满足的来自端点的数据(例如,来自传感器的温度、来自致动器的位置反馈、和/或来自车辆控制器的状态参数,诸如“门半开”),其中自动化执行电路208响应于触发评估数据执行自动化动作计划222和/或触发检测计划610的适当方面。
参考图7,示例自动化动作描述604包括自动化调度值706(例如,工作流程的任务的时间和/或排序)。自动化动作描述604的示例方面包括以下各项中的一个或多个:要收集的数据的数据描述702;要控制的致动器的致动器响应704;事件检测描述708(例如,对于作为工作流程的一部分要检测的事件);动作重复值710(例如,动作要重复的次数、重复时间表、在其期间调整重复行为的时间窗口等);和/或动作中断描述712(例如,描述诸如操作条件、响应时间、状态值等标准,在该标准下动作应该被认为是中断的;和/或在中断的情况下应该执行的动作的描述,例如数据删除或管理、状态值或其他存储参数的设置,和/或动作是否应该恢复的描述和/或恢复的相关标准)。
参考图8,示例自动化触发描述602包括触发调度值810(例如,工作流程的各种触发确定的时间和/或排序)。自动化触发描述602的示例方面包括以下各项中的一个或多个:事件检测描述802(例如,用于与触发确定相关的事件);触发描述806(例如,被评估以确定触发事件值612的标准);触发时间描述814(例如,触发检查的相关时间帧,包括相对于其他值的延迟时段,例如车辆启动后10分钟,和引擎速度超过1000rpm后5秒,并持续30秒);(一个或多个)车辆操作参数的滤波器描述804(例如,允许响应时间和/或操作参数的实时准确度的改变,例如对相关数据的观察者隐藏系统动态,或者增加对车辆的一个方面进行逆向工程的难度,同时为工作流程的触发和动作目的提供足够的数据);地图描述808(例如,允许地理和/或管辖触发检测,例如在不同的国家实现不同的显示单元组,调整引擎性能或排放以符合每个国家等);聚合数据描述812(例如,允许根据各种数据元素的求和、移动平均、积分等进行触发确定);统计分析描述816(例如,允许根据异常数据进行触发确定,所述异常数据诸如:温度模型预期范围之外的温度值、在预期值之外几个标准偏差的数据值、和/或元数据统计,诸如超过或低于预期频率或频率分布的值被传送的次数);和/或用于车辆操作参数、网络消息和/或控制器参数的数据解析描述818(例如,允许自动化执行电路208:仅提供或利用感兴趣的数据,例如所选时间窗口内的数据和/或与检测到的事件或触发相关联的数据;根据所选的格式化、消息协议等来调整报告的数据,和/或利用具有全部或部分移除的报头(例如,网络地址等,这可能取决于提供数据的端点的网络类型和协议)的有效载荷(例如,数据值)来提供报告。在某些实施例中,除了有效载荷之外的关于消息的信息(例如时间戳、网络地址等)可以从数据中移除,例如由于许可值(例如,提供未被授权查看数据的某些方面的自动化请求1506的请求者),以降低利用(例如,仅提供移除了消息报头的有效载荷降低了网络通信和数据存储利用),和/或标准化数据(例如,利用错误系统时间的端点可以具有时间校正的数据,例如以允许稍后的数据同步)。
参考图9,示例自动化车辆响应902包括以下各项中的一个或多个:提供致动器命令904,提供致动器激活906(例如,阻止或允许使用致动器,例如启用或禁用车辆的特征,例如巡航控制系统、门锁致动器或方向盘);和/或致动器轨迹908(例如,控制致动器响应的速率,通过一系列时间-位置命令来命令致动器;通过一系列时间设定点命令来命令致动器;等等)。如本文中利用的,自动化车辆响应902包括由本文中执行如下操作的任何控制器提供的动作:完成自动化车辆响应活动,执行自动化工作流程,执行自动化车辆响应,或本文中描述的任何其他类似的自动化操作。
参考图10,示例自动化车辆响应902包括以下各项中的一个或多个:选择性地启用车辆特征1002(例如,打开或关闭车辆能力);调整车辆特征的校准1004(例如,调整最大速度,将无线电音量限制到所选值,和/或调整车辆的任何其他特征);调整车辆的显示器1006(例如,向屏幕提供选择的相机;向操作者提供灯或通知;和/或改变在屏幕或仪表板上显示哪些值);调整车辆的操作者控制响应1008(例如,切换到经济或性能模式;调整最大速度或功率;和/或调整变速器换档方案);调整车辆的环境管理系统1010(例如,调整温度、鼓风机水平、鼓风机方案等,例如允许根据操作者身份、一天中的时间、天气信息等做出响应);调整车辆的音响系统1012(例如,设置音量、电台、预设、允许值等);和/或调整车辆的照明1014(例如,内部照明、诸如远光迎面距离的前灯阈值、前灯瞄准位置和/或前灯光水平激活阈值,其可以针对驾驶员、一天中的时间、季节等进行配置)。
示例自动化动作描述604包括动作重复值,并且自动化管理电路206进一步响应于动作重复值提供自动化动作计划222。例如,取决于自动化描述212、自动化触发描述602和/或自动化动作描述604的组织,和/或特定系统的工作流程的实现方案,动作可以作为工作流程的一部分重复(例如,参考图25-27和31),或者给定动作可以重复多次(例如,其可以一起被视作诸如图25-27和31中的工作流程中的单个任务)。
示例自动化描述604包括动作中断描述,其中自动化管理电路206响应于动作中断描述进一步提供自动化动作计划222。示例和非限制性的动作中断描述包括以下各项中的一个或多个:对车辆关闭事件的动作响应描述(例如,当检测到车辆关闭事件时要采取的动作,例如响应于操作者请求的状态、钥匙移除等);车辆故障事件的动作响应描述(例如,当故障中断动作时要采取的动作,例如当命令的致动器指示故障已经发生时);对车辆操作中断的动作响应描述(例如,该动作在60mph下需要10秒,并且车辆在6秒后刚刚将速度降低到55mph;在另一个示例中,所选参数的网络通信丢失已经超过阈值);和/或任务进度的超时事件、例如中断的时间量(例如,参数丢失、触发条件丢失、未能前进到任务阶段等)被认为是动作的中断。示例中断描述包括确定是否暂停或取消操作(例如,相关工作流程的操作)、是否在继续或重启之前恢复触发条件、是否将动作计为完成或未完成、是否以及在何处提供动作中断的通知或警报、和/或依照动作对存储的数据的处置(例如,保留数据、删除数据、移动数据等)。
参考图11,示例装置1100包括控制器1101,控制器1101具有:自动化定义电路,其被构造成解释任务描述1102(例如,对于由可能不了解车辆、端点配置和/或参数名称的请求者提供的任务);自动化管理电路206,其响应于任务描述1102提供任务动作计划1106(例如,其中任务被转换成车辆特定参数并被配置成为工作流程或用于任务的其他组织方案,如贯穿本公开所述);以及自动化执行电路208,其响应于任务动作计划1106提供(一个或多个)任务执行命令1104(例如,提供网络通信、致动器命令和/或根据任务动作计划1106收集数据)。示例系统100包括响应于(一个或多个)任务执行命令1104而实现车辆任务的一个或多个端点。
参考图12,示例任务描述1102包括以下各项中的一个或多个:任务调度值1206(例如,设置与任务相关联的时间值和/或命令序列);任务发起值1208(例如,设置任务开始的标准);(一个或多个)致动器响应1204(例如,在任务执行期间要提供的致动器命令);和/或要收集的数据的数据描述1202(例如,根据任务执行要收集的数据的设置标准、参数等)。
参考图13,提供了示例和非限制性任务1302。在某些实施例中,任务可以是任何自动化车辆响应活动、自动化工作流程或自动化车辆响应,和/或这些中的任何一个或多个内的操作。示例任务1302包括诸如以下的操作:监视车辆操作条件1304(例如,速度、燃料经济性、报警系统等);选择性地激活致动器1306(例如,禁用或启用车辆的任何致动器、特征或其他方面);将致动器移动到所选位置1308(例如,打开行李箱;和/或设置致动器速率极限或目标,移动致动器通过时间-位置或时间-值轨迹等);响应于任务执行命令(例如,如果任务被尝试)和/或端点响应(例如,如果任务被完成)而传输任务数据(例如,与任务相关联的任何数据,例如确认任务的数据、验证数据和/或作为任务的操作收集的数据)1310;响应于任务执行命令和/或端点响应而存储任务数据1312;响应于任务执行命令和/或端点响应(例如,提供可在自动化用户接口1504上访问的报告)而提供报告(例如,具有选择的数据、格式化、验证数据、报头、元数据等)1314;和/或响应于任务执行命令和/或端点响应而提供通知(例如,任务已经开始和/或完成的警报,其可以包括任务结果的概要信息,例如,最高温度、故障代码等)1316。在某些实施例中,车辆的示例任务1302包括收集车辆的所选数据1318,确定事件是否已经发生1320,和/或监视外部操作条件1322。
参考图14,示意性地描绘了示例自动化动作计划222。示例自动化动作计划222包括一个或多个动作,例如:实现条件操作1410(例如,基于另一任务的完成、事件的检测和/或触发评估来执行任务);实现分支操作1412(例如,基于另一任务的单次完成、检测到的事件和/或触发评估来执行多于一个任务);实现状态机操作1414(例如,任何基于状态机的工作流程,例如基于所选的触发条件在操作模式之间移动,其中每个操作模式具有与其他操作模式不同的任务集);和/或实现循环操作1416(例如,允许一个或多个任务的轮回和/或重复行为)。示例自动化动作计划222包括连续性描述1418,例如描述中断参数(例如,确定任务、工作流程、自动化车辆响应活动等的中断是否已经发生)和连续性参数(例如,对于中断的任务、工作流程和/或自动化车辆响应活动的数据处置、恢复标准等)。在某些实施例中,动作中断描述712的方面适用于自动化动作计划222的实施例。
参考图15,示意性地描绘了包括控制器1501以向车辆控制器1510提供自动化描述212的示例装置1500。示例控制器1501包括自动化定义电路204,其实现自动化用户接口1504,并响应于与自动化用户接口1504的用户通信来解释自动化请求1506。自动化用户接口1504可以包括任何接口,例如允许用户构建任务、工作流程等的交互式用户接口、允许用户将代码元素插入用于生成自动化请求1506的文件中的编码接口,和/或API,其中运用API以用于向控制器1501提交自动化请求1506。在某些实施例中,用户使用外部设备1508访问自动化用户接口1504,例如通过访问web门户、移动应用、云服务器,和/或通过诸如使用工具、膝上型计算机、移动设备等的直接车辆访问(该访问可以由具有控制器1701的至少一部分的云服务器和/或利用位于车辆上的控制器1701支持)。
示例控制器1501包括自动化管理电路206,其响应于自动化请求1506确定自动化描述212。在某些实施例中,自动化请求1506和自动化描述212可以是相同的,例如其中自动化用户接口1504允许用户直接提供自动化描述212。在某些实施例中,自动化请求1506和自动化描述212可以是不同的,例如,其中自动化请求1506通过引用来引用制法(例如,制法178或“快速预热制法”),和/或其中自动化请求1506利用速记参数(例如,任务A,而不是在任务A中执行的步骤)或缩写。在某些实施例中,允许自动化请求1506和自动化描述212不同允许减少资源利用以支持本文的实施例,和/或允许用户方便的实现(例如,允许用户简单地选择制法或模板,和/或修改那些)。在某些实施例中,允许自动化请求1506和自动化描述212相同提供了系统的简化实现和/或故障检修和/或调试的容易性。示例控制器1501包括向车辆控制器1510提供自动化描述212的自动化命令电路1502,其中车辆控制器1510被配置为实现响应于自动化描述212的自动化车辆响应。在图15的示例中,控制器1501可以至少部分位于车辆上(例如,确定车辆侧控制器上的自动化描述212的全部或一部分)。控制器1501的车辆侧部分(如果存在的话)可以位于与车辆控制器1510相同的基板(例如,板、存储器、处理器)上,或者位于车辆中的另一个控制器(未示出)上。在某些实施例中,控制器1501完全远离车辆定位。在某些实施例中,控制器1501位于云服务器上,和/或实现为web门户。
示例自动化管理电路206确认用户对自动化请求1506的授权1512,并响应于授权1512确定自动化描述212。例如,在自动化请求1506包括需要特定授权才能访问的诸如参数值、参数特性(例如,分辨率、采样率)、操作请求(例如,受影响的特定致动器)、数据存储请求(例如,显式的,诸如支持数据收集操作的数据存储,或者隐式的,诸如支持事件检测、触发评估、数据处理操作等的数据存储,以支持任务、工作流程等)等方面的情况下,示例自动化管理电路206将与用户相关联的授权1512(例如,对于用户个人,根据与用户相关联的实体,根据用户的访问位置等)与该方面的所需授权进行比较。取决于缺乏授权的类型、系统的设计选择以及任务、工作流程等的组织,自动化管理电路206可以拒绝自动化描述212(例如,禁止自动化描述212包括自动化请求1506,例如通过提供仅包括其他授权请求的自动化描述212,和/或完全省略自动化描述212),和/或提供经调整的自动化描述212(例如,移除未授权的方面,例如参数、任务、数据存储等)。在某些实施例中,在自动化描述212被调整的情况下,示例自动化管理电路206向自动化用户接口1504提供修订和/或通知通信1514,其可以被提供给请求用户(例如,对自动化请求1506的修订,和/或包括关于修订的信息),和/或另一用户(例如,允许另一用户监视对敏感参数的访问,调整请求用户的授权,改进自动化用户接口1504的接口元素,和/或通过直接通信辅助其他用户和/或训练自动化用户接口1504)。在某些实施例中,在自动化描述212被拒绝的情况下,示例自动化管理电路206向自动化用户接口1504提供拒绝通信,该拒绝通信可以被提供给请求用户(例如,自动化请求1506的拒却,和/或包括关于拒却的信息)和/或另一用户。示例自动化命令电路1502提供自动化描述212作为策略和/或策略更新。示例自动化命令电路1502从车辆控制器1510接收确认通信1516,其中确认通信1516确认一个或多个方面,例如:接收到自动化描述的确认;自动化描述被批准的确认(例如,基于参数、致动器等的可用性,以支持请求用户和/或控制器1501的任务和/或授权,例如与控制器1501相关联的实体的身份、由控制器1501提供的登录信息、控制器1501和车辆控制器1510之间的加密通信操作等);车辆具有执行自动化描述的能力的确认(例如,存储器存储、传输能力、网络支持能力等);一个或多个任务已经被执行的确认(和/或与之相关的执行统计);和/或与一个或多个任务相关的数据可用的确认。在某些实施例中,自动化定义电路204进一步被构造成向自动化用户接口1504提供确认通信,该确认通信可以与确认通信1516相同或基于确认通信1516。在某些实施例中,确认通信1516被提供给与请求用户相同或不同的用户(例如,其中第一用户负责设置任务,并且第二用户利用来自任务的数据)。
参考图16,示例授权1512可以涉及以下各项中的一个或多个:针对自动化车辆响应要收集的数据1602;针对自动化车辆响应要在车辆的网络上提供的数据1604(例如,包括对网络流量的影响以支持任务,和/或支持网络间流量,例如通过CND来连接不同网络区上的端点);针对自动化车辆响应要访问的致动器1606;针对自动化车辆响应要访问的服务1608;针对自动化车辆响应要访问的流程1610;针对自动化车辆响应要访问的应用1612;和/或与自动化车辆响应相关联的操作影响1614(例如,燃料经济性影响、数据存储影响、网络利用影响等)。授权1512的各方面可以是二元的(例如,用户具有许可或不具有许可)或分级的(例如,用户具有对所选量的存储器存储的授权)。
参考图17,装置1700包括控制器1701,用于针对车辆执行触发的自动化动作。示例控制器1701包括解释自动化触发描述602和自动化动作描述604的自动化定义电路204,以及响应于自动化触发描述602和自动化动作描述604提供触发检测计划610和自动化动作计划222的自动化管理电路206。示例自动化管理电路206进一步响应于触发检测计划610提供数据存储命令1704(例如,提供足够的存储以执行触发操作,包括触发评估、支持数据的滚动缓冲、和/或支持作为触发检测计划610的一部分而被指示的数据收集操作)。示例控制器1701包括数据高速缓存电路1702,其响应于(一个或多个)数据存储命令1704而确认数据存储设备上的可用数据存储,和/或预留数据存储设备上的存储。在某些实施例中,数据存储的可用性(例如,不论是当前可用存储、可预留存储或其组合)可以是自动化触发描述、自动化动作描述和/或自动化描述212的批准、修订或拒绝的一部分。在某些实施例中,数据存储的可用性可以是确定事件检测的一部分,例如任务、工作流程或自动化车辆响应活动的中断(例如,当完成任务的存储器存储被确定为不可用时,决定任务被中断)。示例控制器1701包括自动化执行电路208,其响应于触发检测计划610确定触发事件值1706(例如,触发事件是否已经发生),并且响应于触发事件值1706和自动化动作计划222存储触发评估数据(例如,作为存储触发评估数据的数据存储命令1704)。示例自动化执行电路208进一步响应于触发事件值1706提供自动化命令214(例如,在触发事件已经发生之后提供自动化命令214,这可以进一步包括延迟时段)。示例系统包括响应于(一个或多个)自动化命令214的一个或多个端点,从而实现自动化车辆响应。示例数据高速缓存电路1702预留和/或确认与至少一个车辆控制器相关联的存储器存储上的数据存储,该车辆控制器可以是包括数据高速缓存电路1702的控制器1701,或者车辆上的另一控制器。
参考图18,由自动化管理器电路206提供的(一个或多个)示例数据存储命令1704包括以下各项中的一个或多个:触发评估数据1802的数据存储时间表1810(例如,数据保持时间、与数据或其部分相关的优先级信息等);触发评估数据1802的数据存储轨迹1808(例如,随时间的存储量);条件数据存储命令1812(例如,基于检测到的事件、满足的触发等的数据存储,例如允许对数据存储量进行统计估计,以支持多个任务、工作流程、自动化车辆响应等,例如基于多个任务、工作流程、自动化车辆响应等的同时触发事件的可能性);触发评估数据1802的至少一个数据元素的优先级描述1814(例如,允许数据内的优先化、老化数据的区别对待等);触发评估数据1802的至少一个数据元素的老化数据描述1816(例如,驻留时间、传输优先级、要被执行以压缩、汇总、聚合或以其他方式减少数据的活动,和/或删除方面,诸如在删除数据时要发送的通知、警报或剩余数据);数据存储的确认1804(例如,数据存储被预留和/或响应数据被存储的确认);和/或数据存储的预留1806(例如,支持任务、工作流程、自动化车辆响应等的数据存储量)。图19的示例类似于图18的示例,其中命令涉及自动化收集数据1902,而不是触发评估数据1802。在某些实施例中,可以存在数据存储命令1704以支持触发评估数据1802和自动化收集数据1902两者。
示例数据高速缓存电路1702响应于老化数据描述1816执行存储器管理操作,例如:对触发评估数据1802的至少一部分执行调度删除;对触发评估数据1802的至少一部分执行压缩操作;对触发评估数据1802的至少一部分执行汇总操作;确认共享数据存储设备上的可用存储;和/或预留和/或确认共享数据存储设备上的数据存储的预留。本文利用共享存储的示例实施例可以包括共享存储控制器和/或其任何方面,例如如在美国专利申请序列号17/195,589(SONA-0010-U01)中、例如在‘589申请的图16处以及相关描述所描述的。
再次参考图17,示例自动化管理电路206响应于自动化动作描述604提供数据存储命令1704。关于触发评估数据1802描述的关于图17阐述的所有前述操作和方面也适用于从自动化动作描述604确定的作为任务、工作流程和/或自动化车辆响应的一部分收集的数据。示例操作包括确认和/或预留数据存储、老化数据的管理、确认通信、有条件的数据存储和/或任何数据存储命令1704示例,包括例如关于图18或19描绘的那些。
参考图20,示例装置2000包括控制器2001,其被配置为向车辆控制器1510提供自动化描述212。示例控制器包括自动化定义电路204,其实现自动化用户接口1504,并且向自动化用户接口1504提供至少一个自动化制法2004,并响应于与自动化用户接口1504的用户通信来解释自动化请求1506。在某些实施例中,自动化制法1506可以包括来自自动化制法2004的一个或多个所选制法、一个或多个所选制法的修改或调整版本(例如,由用户),和/或可以独立于自动化制法2004生成(例如,通过任务或工作流程构建器,如图25-27和31中所描绘的)。示例自动化定义电路204响应于用户的用户特性2002选择一组自动化制法2004,并响应于所选的组向自动化用户接口1504提供至少一个自动化制法(例如,提供所有所选的制法,提供前10个所选的制法等)。基于用户特性2002从自动化制法2004中选择制法包括选择用户已授权的制法,和/或选择用户可能感兴趣的制法(例如,基于用户的角色和制法的标签,和/或由具有类似角色的用户利用的制法,和/或基于用户的另一方面,例如实体类型,例如制造商、OEM、经销商、车队所有者、操作者等)。示例且非限制性的用户特性2002包括以下各项中的一个或多个:用户角色、与用户相关联的实体、用户授权、或与自动化用户接口1504的用户历史活动。在某些实施例中,每个自动化制法2004包括以下各项中的一个或多个的操作:车辆的自动化操作;车辆自动化操作的一部分(例如,要由用户完成的部分);和/或用于车辆自动化操作的模板(例如,针对一系列潜在自动化操作要构建为良好起点的制法)。示例自动化请求1506包括作为不可知参数描述的至少一个参数描述,或者不是车辆特定的参数描述,例如包括参数命名、单位、分辨率、采样率等,其符合行业标准、实体标准(例如,采用用户的公司)、不同车辆的参数描述(例如,与目标车辆相比的前一年型号、具有与目标车辆不同的组件和/或网络配置的类似车辆、或者与目标车辆不相关的另一车辆,例如与用户最近访问的车辆一致的参数)。在某些实施例中,自动化描述212包括车辆特定参数。在某些实施例中,自动化描述212包括标准化参数,其中车辆特定参数在车辆控制器1510上确定,例如通过CND、策略引擎等。
参考图21,示意性地描绘了示例自动化命令214的多个方面。示例自动化命令214可以各自包括图21中描绘的一个或多个方面,并且自动化命令214可以包括图21的示例中未描绘的其他方面。示例自动化命令214包括以下各项中的一个或多个:数据收集命令2102(例如,为触发评估、事件检测和/或作为任务、工作流程、自动化车辆响应等的一部分而收集的数据);数据处理命令2104(例如,参数命名;单位选择;分辨率,例如字节深度、显示分辨率等;采样率,包括上采样和/或下采样操作;顺序数据值的同步或时间间隔处理;数据通信命令2106(例如,哪些数据元素将在网络上传送、传送到哪些端点、作为多播等);数据传输命令2108(例如,要传输哪些数据元素,包括潜在相关的时间帧、优先级等);致动器命令2110;校准调整2112;和/或数据存储命令2114(例如,包括数据预留、老化数据处置、存储优先级等)。
再次参考图2,示例自动化定义电路204解释多个自动化请求1506和/或自动化描述212,其中自动化管理电路206响应于自动化请求1506和/或自动化描述212提供自动化动作计划222。在某些实施例中,自动化请求1506和/或自动化描述212进一步包括对应的优先级值,并响应于优先级值提供自动化动作计划222。在某些实施例中,自动化请求1506和/或自动化描述212进一步包括对应的层级值,并且响应于层级值来提供自动化动作计划222。层级值可以涉及自动化描述、任务、工作流程等的排序,和/或可以涉及与自动化描述、任务、工作流程等相关联的实体。与自动化描述、任务、工作流程等相关联的实体可以涉及请求信息的任何实体(例如,用户、用户角色和/或诸如用户的公司的实体角色),提供信息的任何实体(例如,车辆控制器、端点、流程、应用、车辆功能等,其提供信息作为自动化描述、任务、工作流程等的一部分),和/或受自动化描述、任务、工作流程等显著影响的任何实体,等等(例如,由于相关的网络区流量、支持任务的控制器处理操作和/或支持任务的数据存储操作)。层级值的利用允许对车辆上的不同用户、实体、角色和应用类型的粒度响应(例如,对照车辆的娱乐显示功能,改进对车辆的燃料系统功能的支持)。示例自动化管理电路206确定至少两个自动化描述212之间的依赖值(例如,基于参数确定和/或排序、自动化描述212中指示的依赖度,和/或基于提供或响应受自动化描述、任务、工作流程等影响的数据的车辆相关功能的强制执行时间表)。示例自动化管理电路206确定自动化描述212中的至少一个的操作影响,并响应于操作影响提供自动化动作计划222。在某些实施例中,自动化管理电路确定自动化制法和/或自动化描述212的生命周期值,并响应于生命周期值存储自动化制法和/或自动化描述212。例如,生命周期值可以指示自动化描述212(和/或自动化制法)应该执行一次,应该执行所选的次数,应该持续执行,应该在所选的时间段(例如,接下来的六个月)内执行,和/或应该在另一个条件为真或假时执行(例如,结束自动化描述212和/或自动化制法的生命周期,例如当条件改变时)。示例自动化管理电路206例如通过将描述标记为移除、通过删除描述和/或通过停止支持描述的操作(例如,包括停止触发评估、数据存储、数据存储预留等)而否决自动化描述212中的至少一个。否决自动化描述212和/或自动化制法的示例且非限制性操作包括以下各项中的一个或多个:更新自动化动作计划222以移除否决的自动化描述;响应于否决的自动化描述,删除存储的数据;删除对应于否决的自动化描述的存储制法;和/或调整对应于否决的自动化描述的优先级值或层级值中的至少一个。
参考图22,示例装置2200包括控制器2201,控制器2201被配置为存储与任务、工作流程、自动化车辆响应等相关的收集数据。示例控制器2201包括实现自动化用户接口1506的自动化定义电路204,自动化用户接口1506包括至少一个可用输入参数(例如,在车辆上可用的和/或可以在车辆上变得可用的数据参数)、至少一个可用致动参数(例如,可用于至少部分操纵的致动器;和/或可用于至少部分操纵的特征,例如具有可用的校准调整和/或特征启用/禁用操作)、以及至少一个响应数据选择,例如可用于收集的数据、可以提供的确认数据、可以提供的验证数据和/或可以提供的确认通信。示例控制器2201包括自动化确认电路2202,其响应于自动化车辆响应(例如,任务、工作流程、自动化车辆响应活动等的执行)从车辆接收收集的数据2208,并存储收集数据2204用于异步访问。在某些实施例中,例如在自动化确认电路2202至少部分位于车辆上的情况下,从车辆接收收集的数据2208包括从车辆的端点接收收集的数据2208,该端点可以是与托管自动化确认电路2202的一部分的端点分离的端点。存储的收集数据2204可以存储在车辆上、云服务器上和/或共享数据存储上。在某些实施例中,使存储的收集数据2204可用于车辆功能、流程、应用或端点以在以后访问。在某些实施例中,存储的收集数据2204存储在云服务器上,并且在稍后的时间由车辆功能、流程、应用或端点访问,其中存储的收集数据2204的至少一部分在稍后的时间(例如,当请求时)被带回车辆。在某些实施例中,使得存储的收集数据2204可用于外部设备,例如云服务器应用、车队管理器应用、制造商应用等,例如以允许一起访问多个车辆的数据、车辆车队的数据和/或使用存储的收集数据2204对车辆执行迭代改进操作的机器学习过程的数据。在某些实施例中,响应于用户请求(例如,对数据的请求,和/或由用户操作的应用对数据的请求),例如由自动化确认电路2202将存储的收集数据2204的一部分提供给自动化用户接口1504。在某些实施例中,接收和/或请求存储的收集数据2204的用户可以是与提供自动化请求1506的用户不同的用户。在某些实施例中,存储的收集数据2204的经编校部分被提供给车辆功能、流程、应用或端点、在外部设备上操作的应用和/或自动化用户接口1504。在某些实施例中,要供应的数据的经编校的部分和/或要以其他方式供应的数据的部分可以存储在与存储的收集数据2204分离的数据存储上(例如,数据存储116对照数据存储114),该分离的数据存储可以包括分离的加密和凭证。编校存储的收集数据2204和/或利用分离的存储和/或凭证的操作允许方便的机制来限制用户对某些数据类型(例如,专有数据、个人可标识信息等)的暴露,以及保护存储的收集数据2204免受请求用户或设备对存储的收集数据2204的安全破坏。在某些实施例中,自动化确认电路2202响应于诸如以下信息来确定存储的收集数据2204的经编校部分:存储的收集数据2204的特性2206(例如,存储的收集数据2204中的专有信息、存储的收集数据2204中的个人可标识信息和/或存储的收集数据2204中的元数据)。在某些实施例中,用于在自动化用户接口1504上显示和/或选择的响应数据选择包括以下各项中的一个或多个:与自动化车辆响应相关联的确认值、根据自动化车辆响应收集的数据、和/或与自动化车辆响应相关联的修改值。
示例自动化定义电路204在可用输入参数的菜单中提供可用输入参数。示例自动化定义电路204响应于用户特性2002,例如用户角色、用户授权和/或与用户相关联的实体,来确定可用输入参数。示例自动化定义电路204向自动化用户接口1504提供(一个或多个)自动化制法,并且可以响应于用户对(一个或多个)自动化制法的(一个或多个)选择和/或(一个或多个)修改,进一步确定自动化描述212。
参考图23,描绘了示例自动化用户接口1504,其可以用于帮助用户确定可用参数、向工作流程提供参数、请求特定参数格式化、处理等。描绘了示例自动化用户接口1504以说明本公开的某些方面,但不限于本文的实施例。示例自动化用户接口1504包括输入参数部分2302,从而允许用户确认或选择参数名称、参数单位、参数分辨率(例如,字节深度,但可以取而代之是精度描述等)、和/或参数的采样率。在图23的示例中,提供了可选的动作按钮,以允许用户方便地设置用于数据收集的参数,使参数可用于工作流程,和/或确认或编辑要应用于参数的数据处理。基于许可、授权、用户特性等,例如某些参数、分辨率值、采样率值等,一些选择可能对用户不可用。在某些实施例中,不可用的选择可以从自动化用户接口1504隐藏,和/或可以以不同的方式显示(例如,不能在菜单中选择的变灰值)。示例自动化用户接口1504包括致动器参数部分2304,包括致动器参数名称、可用值和/或值类型(例如,布尔、整数等)。示例致动器参数部分2304允许用户方便地确认工作流程中的正确参数符号,并使致动参数可用于工作流程。在图23的示例中,提供了动作按钮,以允许用户方便地打开工作流程创建窗口,和/或查看可用制法的列表。
参考图24,示意性地描绘了示例制法访问接口,该接口可以是自动化用户接口1504的一部分。图24的示例描绘了哪些工作流程和/或特征与该制法相关(例如,哪些工作流程使用该制法,和/或哪些工作流程包括在该制法中),其中每个工作流程包括一个或多个要执行的动作,和/或一个或多个与该工作流程相关联的触发器。
参考图25,示意性地描绘了两个示例工作流程。第一工作流程2502包括单个触发器和与该触发器相关联的动作。示例工作流程2502——其可以是收集制法——基于感兴趣的触发器提供了方便的数据收集格式。第二工作流程2504包括双任务序列,具有与每个任务相关联的触发器,从而基于感兴趣的触发器提供方便的条件数据收集格式。参考图26,示意性地描绘了三个示例工作流程2602、2604、2606。图26的示例图示了本文实施例的工作流程创建的灵活性,包括允许顺序任务(工作流程2602)、分支任务(工作流程2604)和/或循环任务2606。参考图27,示例工作流程被描绘为状态机,具有与每个状态相关联的任务,并且具有为状态之间的过渡提供的过渡条件。图25-27的显示可以被提供给自动化用户接口1504,例如以允许用户可视化、布置和编辑工作流程。
参考图28,示例系统2800被示意性地描绘为支持自动化车辆响应活动的实现,例如包括控制器和/或电路的方面和/或其整体或部分地体现的方面,所述控制器和/或电路在本文中被配置为执行与图28的示例中描绘的组件相关联的操作。示例系统2800包括制法管理器2802,其被配置为创建制法(例如,通过与运用自动化用户接口1504的用户的交互,和/或创建自动生成的制法以检测某些条件、数据元素,和/或支持用于机器学习操作的数据收集,所述机器学习操作被设计为改进车辆操作、检测故障条件等)。示例系统2800包括分析组件,该分析组件包括分析引擎2814,分析引擎2814被配置为确定分析2812,例如趋势、预测未来故障、标识异常数据(例如,针对车辆、车辆组件和/或与相关联的车辆组相关的异常数据,例如车型年、特定车队、具有相关角色或工作周期的车辆等),其可以用于确定制法、建议制法(或任务、工作流程或数据收集活动)、和/或帮助用户确定制法(或任务、工作流程或数据收集活动)是否有可能开发关于特定条件的更多信息、和/或为用户的特定目标提供有用信息。
示例系统2800包括制法处理引擎2804,例如将制法作为自动化描述212进行处理,并确定触发检测计划610和自动化动作计划222。在示例系统2800中,触发检测计划610被提供给触发评估引擎2808,并且自动化动作计划222被提供给任务执行引擎2806。示例触发评估引擎2808处理触发检测计划610以确定何时指示任务,并且示例任务执行引擎2806处理自动化动作计划222以执行其中描述的任务的操作。示例系统2800包括数据准备引擎2810,其收集与触发评估和/或任务执行、与数据相关联的存储和/或高速缓存、与数据相关联的处理以及数据的车外传输(例如,回到图28的示例中的分析引擎2814)相关的数据。
参考图29,示意性地描绘了示例触发评估引擎2900。示例触发评估引擎2900可以在系统2800中利用,和/或可以整体或部分地由本文描述的并且被配置为执行触发评估引擎2900的操作的一个或多个电路或控制器来体现。示例触发评估引擎2900包括支持层2902,在图29的示例中,支持层2902管理通信、检索外部数据、将消息配置到网络区等。示例触发评估引擎2900包括分析层2904,其被配置为解析和/或提取相关数据,例如用于确定触发条件是真还是假的数据。示例分析层2904进一步被配置为过滤数据,例如利用数据的采样、数据的方面(例如,最大值或最小值等),执行数据的映射(例如,将数据与相关标准和/或数据的任务操作进行比较),和/或可以进一步被配置为聚合数据(例如,汇总、移动平均、分桶数据、基于整个数据或聚合的数据子集的状态值,等等),和/或执行数据的统计分析(例如,在统计值与触发阈值相关的情况下,确定离群数据,和/或支持启发式触发器,例如基于某些数据效应、动态、数据有意义的可能性等的启发式)。在图29的示例中,触发评估引擎2900提供触发事件值1706,例如提供是否满足触发条件的指示。
参考图30,示意性地描绘了示例任务执行引擎3000。示例任务执行引擎3000可以在系统2800中利用,和/或可以整体或部分地由本文描述的并且被配置为执行任务执行引擎3000的操作的一个或多个电路或控制器来体现。示例任务执行引擎3000包括动作选择层3002,例如基于触发条件、任务优先级、任务层级等选择任务来执行。示例任务执行引擎3000包括动作调度层3004,例如为系统2800上的多个活动任务调度开始、持续时间、排序等。示例任务执行引擎3000包括动作发起层3006,例如开始任务的一个或多个动作的操作。示例任务执行引擎3000包括支持层3008,其控制数据通信、数据存储、API交互、数据库交互和/或服务交互(例如,发布和/或订阅与任务相关的(一个或多个)服务,例如提供任务所利用的数据,和/或提供可以作为服务可用并作为任务的一部分执行的动作)。示例任务执行引擎3000包括动作监视层3010,例如确定任务状态、任务阶段、确定与任务相关联的确认值和/或确定任务的结果。
参考图31,示意性地描绘了示例自动化用户接口1504,其提供了图示示例制法和/或制法创建接口的各方面的示例接口。图31的示例包括制法名称(其可以是诸如“早晨座位调整制法”的名称),以及显示区域,以描绘制法所利用的数据,和/或对未修改制法中可用的原始数据进行的修改。图31的示例进一步描绘了制法中包括的多个任务(例如,图31中的A、B、…H),其在图31的示例中包括对任务的触发、任务执行的动作和/或每个给定任务调用的其他任务的描述。在图31的示例中,为了方便用户参考,描绘了任务关系的图形描绘。在某些实施例中,自动化用户接口1504被提供用于用户参考,例如通过解析体现制法的代码块,和/或自动化用户接口1504可以是交互式的,例如允许用户编辑任务、任务的触发、与任务相关联的动作、和/或任务之间的关系——例如通过用户在数据字段中的文本编辑、在图形部分中拖放任务等。
参考图32,示例装置3200包括控制器3201,控制器3201被配置为提供(一个或多个)自动化连续性命令3208,例如控制任务、工作流程和/或自动化车辆响应活动的中断和/或恢复。示例控制器3201包括提供自动化动作计划222的自动化管理电路206、响应于自动化动作计划222提供自动化命令214的自动化执行电路208、以及确定自动化中断事件2306是否已经发生的自动化连续性电路3208。示例自动化连续性电路3208响应于自动化中断事件3206提供自动化连续性命令214。参考图33,(一个或多个)示例且非限制性的自动化连续性命令3208包括以下各项中的一个或多个:取消命令3302(例如,任务被取消,并且将不被恢复,和/或将仅基于未来确定的触发条件被恢复);重启命令3304(例如,任务被停止,并且当操作条件与任务的进一步进展一致时将被恢复);阶段命令3306(例如,任务被停止,并且应该在特定阶段继续,无论是响应于未来确定的触发条件和/或当操作条件与任务的进一步进展一致时——例如当在任务的早期阶段收集的相关数据可能仍然适用于任务的后期阶段时);和/或继续命令3308(例如,当被中断的任务可以继续时,例如当诸如数据存储可用性的限制值被解除时)。(一个或多个)示例且非限制性的自动化中断事件3206包括以下各项中的一个或多个:确定车辆关闭事件已经发生或即将发生;确定车辆操作条件妨碍自动化动作计划的完成(例如,用于后期阶段触发或动作的数据目前不可用);确定车辆操作条件妨碍自动化动作计划的继续(例如,用于目前阶段触发或动作的数据目前不可用,和/或操作条件与继续任务不一致);和/或确定车辆操作条件妨碍自动化动作计划的至少一个方面的执行(例如,相关任务被中断,其中包括当前设想任务的自动化动作计划在相关任务未完成的情况下不能完成)。在某些实施例中,自动化动作计划222被提供作为策略的一部分,其中该策略包括定义标准的连续性描述,以确定中断是否已经发生,和/或调整自动化连续性电路3202对任务中断的响应。例如,用户可以利用该策略来定义全局或默认任务中断响应、对所选应用、流程、车辆功能、端点等的响应。
参考图34,示例装置3400包括控制器3402,控制器3402被配置为管理面向服务的架构以支持任务、工作流程、自动化车辆响应活动等。在某些实施例中,控制器3402管理面向服务的架构,以供车辆上的任何端点、车辆功能、流程等利用,和/或供外部设备利用,例如访问自动化用户接口1504并允许用户向车辆发布服务,和/或订阅车辆上可用的服务。非限制性地,服务可以包括任务、工作流程和/或自动化车辆响应活动,例如提供所选致动器响应、自动化操作、数据收集操作等。
示例控制器3402包括存储管理器电路3404,存储管理器电路3404选择性地访问数据存储,并且被配置为选择性地在数据存储上读取数据、写入数据或编辑数据。示例数据存储可以是车载的、车外的或其组合。示例控制器3402包括存储守门者电路3406,其解释数据存储请求值3410(例如,来自流程、车辆功能、应用和/或端点),并响应于数据存储请求值3410提供数据存储简档3418。例如,数据存储简档3418可以指示存储器的预留量和/或存储器的物理位置(例如,其中共享存储器存储跨多个物理设备分布)。数据存储简档3418的确定可以基于与数据存储请求值310的请求者相关联的优先级、所支持的流程的优先级、车辆功能和/或请求者的端点中的一个或多个,和/或根据系统上的可用存储。响应于数据存储简档3418,示例存储管理器电路3404还执行在数据存储上预留存储器,和/或在数据存储上保存请求者关联数据。
示例车辆数据存储请求者包括以下各项中的至少一个:车辆的网络区上的端点;与车辆相关联的流程;与车辆相关联的应用;或者位于车辆上的车辆控制器。示例数据存储包括位于车辆控制器上的共享数据存储,例如单个合并的大存储器,和/或由存储管理器电路3404共同视为共享数据存储的分布式数据存储。示例数据存储包括至少部分位于车辆之外的共享数据存储,其可以用于长期数据存储、低访问频率数据存储和/或预留否则会由于与老化数据相关的操作和/或有限的可用车载存储而丢失的数据。示例数据存储被配置成基于文件系统的共享存储,例如其中存储的数据3408存储在文件中(例如,定界文件、XML文件和/或存储在数据库配置的数据文件中的文件)。示例存储守门者电路3406将可用数据存储作为服务3412发布在车辆上。
示例存储守门者电路3406将数据存储访问作为服务3414发布在车辆上,并且潜在地发布给自动化用户接口1504,并且响应于对数据存储访问的订阅请求3416来解释数据存储请求值3410(例如,在数据存储作为服务提供的情况下,在数据存储通过适当地订阅数据存储表面来获得的情况下)。
示例存储守门者电路3406响应于与车辆数据存储请求者相关联的许可值(例如,与请求流程、应用、车辆功能和/或端点相关联的许可值)而提供数据存储简档3418。示例数据存储简档3418还包括参数,例如:数据存储量;数据存储优先级;和/或数据存储保留描述。示例数据存储至少部分被配置成对象存储。示例数据存储至少部分被配置成关系数据库。示例数据存储至少部分被配置成键值存储。
示例存储守门者电路3406还将存储在数据存储上的数据3408作为服务发布在车辆上,和/或发布到自动化用户接口1504。图34的示例允许存储守门者电路3406提供数据存储作为服务,和/或提供存储在数据存储上的收集的数据作为服务。示例存储守门者电路3406控制对数据存储的访问,和/或对存储的数据的访问,利用与请求者相关联的许可来监管数据存储简档3418、数据访问简档3420,和/或响应于许可来监管对发布的服务的批准。在某些实施例中,可以通过允许或不允许对发布的服务的订阅,和/或通过基于请求者或预期请求者的许可允许或不允许发布订阅的可见性(例如,在请求不能由不具有可见性的实体做出的情况下),来监管发布的服务。
参考图35,示例装置3500包括控制器3502,控制器3502被配置为管理面向服务的架构以支持任务、工作流程、自动化车辆响应活动等。示例控制器3502包括维护服务注册表3516的服务管理器电路3504,服务注册表3516包括车辆关联实体3522的列表(例如,车辆功能、流程、应用和/或端点,并且可以包括车外实体,例如与自动化用户接口1504交互的用户)。示例控制器3502包括服务守门者电路3506,其解释来自车辆服务请求者3520(和/或具有足够许可的某些车外请求者)的服务请求值3510,并响应于服务请求值3510提供服务访问简档3518。示例服务访问简档3518包括访问服务的许可和/或发布服务的许可,例如由服务管理器电路3504用来相应地更新服务注册表3516。示例控制器3502包括服务执行电路3508,其允许服务发布3524和/或服务订阅3512,例如响应于服务请求值3510和服务注册表3516。
例如在服务注册表3516上的示例服务描述包括可由服务控制的车辆功能(例如,致动器、任务、工作流程等)。示例服务描述包括由车辆的一个或多个网络区上的一个或多个端点提供的车辆数据值。示例服务描述包括由多个端点提供的车辆数据值,并且跨车辆的至少两个网络区分布。在某些实施例中,至少两个网络区包括不同的网络协议和/或不同的网络类型。示例服务描述包括至少部分由车外端点提供的车辆数据值。示例服务描述包括至少部分由车外端点执行的车辆相关功能。例如,一些数据可以在车外确定,和/或某些车辆相关操作可以在车外执行,例如更长周期的增量改进操作、某些虚拟传感器的操作和/或车辆状态参数的确定,和/或至少部分依赖于车外数据(例如,燃料成本、交通信息、天气信息、基于地理和/或基于管辖权的规则、监管、偏好等)的参数的确定。
以下描述描绘了用于执行操作以创建和实现车辆自动化响应活动的各种示例程序。可以利用贯穿本公开阐述的任何控制器、电路、组件、管理器、引擎等来执行示例程序。示例程序是非限制性示例,并且可以在某些实施例中全部或部分地利用。鉴于本文的公开内容,将显而易见的是,示例程序的操作可以被省略、整体或部分地组合、和/或整体或部分地重新排序。
参考图36,示意性地描绘了用于提供自动化命令的示例程序3600。示例程序3600包括解释自动化命令的操作3602、响应于自动化命令提供自动化动作计划的操作3604、以及响应于自动化动作计划提供自动化命令的操作3606。
参考图37,示意性地描绘了用于提供自动化命令的程序3700的示例程序3700。示例程序370包括操作3602和操作3604,并且还包括确定是否已经检测到事件的操作3702。响应于操作3702指示是,示例程序3700包括提供自动化命令的操作3606。响应于操作3702指示否,示例程序3700继续操作3702(例如,监视事件的检测)。
参考图38,示意性地描绘了提供自动化命令的示例程序3800。示例程序3800包括解释自动化描述和动作描述的操作3802,其中自动化描述可以进一步包括触发描述。示例程序3800包括响应于自动化描述(和/或触发描述)和动作描述来提供触发检测计划和自动化计划的操作3804。示例程序3800包括确定触发事件值的操作3806,以及响应于触发事件值提供自动化命令的操作3606。
参考图39,示意性地描绘了提供自动化命令的示例程序3900。示例程序3900包括操作3802和操作3804,并且还包括确定是否满足触发调度值的操作3902。响应于操作3902指示是,程序3900包括提供触发评估命令的操作3904、确定触发事件值的操作3806、以及确定是否满足自动化调度值的操作3906(例如,在执行自动化操作之前在触发事件之后应用延迟时段)。响应于操作3906指示是,程序3900包括提供自动化命令的操作3906。响应于操作3902指示否,示例程序3900继续操作3902(例如,继续对照触发调度值进行监视)。响应于操作3906指示否,示例程序3900继续操作3906(例如,继续对照自动化调度值进行监视)。
参考图40,示意性地描绘了提供任务执行命令的示例程序4000。示例程序4000包括解释任务描述的操作4002、响应于任务描述提供任务动作计划的操作4004、以及响应于任务动作计划提供任务执行命令的操作4006。
参考图41,示意性地描绘了用于提供任务执行命令的示例程序4100。示例程序4100包括操作4002和操作4004,并且还包括确定是否满足任务调度值和/或任务发起值的操作4102。响应于操作4102指示是,示例程序4100包括提供任务执行命令的操作4006。响应于操作4102指示否,示例程序继续操作4102(例如,继续对照任务调度值和/或是否满足任务发起值进行监视)。
参考图42,示意性地描绘了提供自动化命令的示例程序4200。示例程序4200包括解释包括触发时间描述和自动化动作描述的自动化触发描述的操作4202。示例程序还包括提供触发检测计划和自动化计划的操作3804、确定触发事件值的操作3806以及提供自动化命令的操作3606。
参考图43,示意性地描绘了提供自动化命令的示例程序4300。示例程序4300类似于程序3600、3800和/或4200。示例程序4300还包括将自动化动作计划存储为数据文件(例如,提供被解析和/或实现的自动化车辆功能,而不改变车辆控制器上的基础软件、固件等)的操作4302。
参考图44,示意性地描绘了提供自动化车辆操作的确认和/或提供与自动化车辆操作相关联的收集数据的示例程序4400。示例程序4400包括提供自动化命令的过程,例如但不限于程序3600。示例程序4400包括响应于自动化动作计划而存储策略(例如,更新的策略、自动化动作计划的专用策略和/或包括自动化动作计划作为其至少一部分的新策略)的操作4402。示例程序4400还包括响应于策略的实现提供确认通信(例如,确认策略包括自动化计划、自动化计划可以被执行、和/或自动化计划已经被执行)的操作4404。示例程序4400可选地包括提供与自动化计划相关联的收集数据的操作4406。
参考图45,示例程序4500包括实现自动化用户接口的操作4502、解释自动化请求(例如,代码块、数据结构块、所选制法、所选工作流程、修改的制法、修改的工作流程和/或交互创建的自动化描述)的操作4504、响应于自动化请求确定自动化描述4506的操作4506、以及向车辆控制器提供自动化描述的操作4508。
参考图46,示意性地描绘了选择性地向车辆控制器和/或向自动化定义电路提供自动化描述的示例程序4600。示例程序4600包括确定自动化请求是否能够被满足(例如,请求者是否具有实现自动化请求的授权,和/或车辆是否能够实现自动化请求——例如由于诸如处理、网络通信和/或数据存储的资源限制,和/或由于诸如所请求的数据、特征、致动器等的不可用性的操作限制)的操作4602。响应于操作4602指示是,示例程序4600包括响应于自动化请求确定自动化描述的操作4604,以及提供自动化描述的操作4606。响应于操作4602指示否,示例程序4600包括确定自动化请求是否可以被修订(例如,请求者是否允许修订,经修订的操作是否可用,例如操作的子集,密切相关或相似的操作可用,和/或自动化请求的优先级是否允许进行修订)的操作4608。响应于操作4608指示是,示例程序4600包括修订自动化请求并响应于经修订的自动化请求确定自动化描述的操作4610。操作4610可以可选地包括提供与修订相关的通知,例如提供给请求者或诸如自动化操作的接收者或受益人的另一实体。响应于操作4608确定否,示例程序4600包括拒绝(或拒却)自动化请求的操作4612——例如,其中基于自动化请求将不提供自动化描述。示例操作4612可选地包括提供与拒绝相关的通知,例如提供给请求者或另一实体,例如自动化操作的接收者或受益人,和/或自动化用户接口的管理员、车辆制造商、安全人员等。
参考图47,示意性地描绘了提供自动化命令的示例程序4700。示例程序4700包括解释自动化触发描述和/或自动化动作描述的操作4702、响应于(一个或多个)描述提供触发检测计划和/或自动化动作计划的操作4704、响应于(一个或多个)计划提供数据存储命令的操作4706、以及响应于数据存储命令确认和/或预留可用数据存储的操作4708(例如,以支持触发评估、事件检测和/或支持自动化动作计划中描述的自动化操作的数据收集操作)。示例程序4700还包括确定触发事件值的操作4710,以及存储触发评估数据的操作4712。示例操作4712可以可选地包括管理存储的触发评估数据的老化数据。示例程序4700还包括例如响应于(一个或多个)计划而提供自动化命令的操作4714。参考图48,示意性地描绘了示例程序4800。在图48的示例中,数据存储命令可以附加地或替代地包括足以支持作为自动化动作计划的一部分收集的数据的数据存储,其中程序4800还包括存储自动化收集数据的操作4802。操作4802可选地包括管理自动化收集数据的老化数据。
参考图49,示例程序4900包括实现自动化用户接口的操作4502、向自动化用户接口提供至少一个制法的操作4902、以及解释自动化请求(例如,作为提供给自动化用户接口的(一个或多个)制法中所选的一个和/或经修改的一个)的操作4504。示例程序4900还包括响应于自动化请求确定自动化描述的操作4506,以及向车辆控制器提供自动化描述的操作4508。
参考图50,示例程序5000包括解释多个自动化描述的操作5002、在多个自动化描述之间进行优先化和/或应用层级的操作5004、以及响应于优先化和/或层级自动化描述来确定自动化动作计划的操作5006。
参考图51,示例程序5100包括否决至少一个自动化描述(例如,已经过期的、已经完成或执行的、没有可用的相关调度动作或触发条件的、不再具有要保持的足够优先级的、已经例如由请求者请求移除的、和/或例如由于资源限制、授权过期等而不能再执行的自动化描述)的操作5102。示例程序5100包括响应于操作5102而更新自动化动作计划和/或自动化动作计划的优先级或层级,以否决自动化动作计划的操作5104。示例程序5106还包括响应于操作5104的更新删除所选数据(例如删除不再需要的数据、由于自动化描述的降低的优先级而删除数据等)的操作5106。
参考图52,示例程序5200包括提供自动化动作计划的操作5202、响应于自动化动作计划提供自动化命令的操作5204。示例程序5200包括确定自动化操作的中断事件是否已经发生的操作5206。响应于操作5206指示是,程序5200包括提供自动化连续性命令(例如以继续、中断、暂停、恢复、执行数据清除操作等)的操作5208。响应于操作5206确定否,示例程序5200继续操作5206(例如,针对中断事件继续监视自动化操作)。
参考图53,示例程序5300包括解释数据存储请求值的操作5302、响应于数据存储请求值提供数据存储简档的操作5304、以及响应于数据存储简档预留存储器、确认存储器存储和/或存储数据(例如,触发评估数据、自动化收集数据和/或其他与自动化车辆响应相关联的数据)的操作5306。
参考图54,示例程序5400包括操作5302和操作5304,并且还包括响应于数据存储简档来预留存储器和/或存储数据的操作5402。示例程序5400还包括将存储的数据作为服务发布的操作5404,和/或将可用的数据存储作为服务发布的操作5406。
参考图55,示例程序5500包括维护服务注册表(例如,列出诸如端点、控制器、流程、应用等的实体,以及所列实体的(一个或多个)对应服务)的操作5502、以及解释来自车辆服务请求者(例如,请求端点、流程、应用、控制器等)的服务请求值的操作5504。示例程序5500包括提供服务访问简档的操作5506、响应于服务访问简档更新服务注册表的操作5508、以及响应于更新的服务注册表选择性地允许服务发布(例如,允许实体发布服务)和/或服务订阅(例如,允许实体订阅服务)的操作5510。
示例实施例包括云侧执行的车辆自动化管理器,其可以用于创建、删除和/或查询车辆自动化描述,诸如制法、自动化描述、工作流程等。示例云侧执行的车辆自动化管理器可以体现在贯穿本公开阐述的任何控制器、电路、组件、管理器、引擎等中。在某些实施例中,车辆自动化描述可以存储在对云服务器可访问的数据存储中,并且选择性地发送到车辆以供执行。在某些实施例中,单个车辆自动化描述可以在给定时间在车辆上活动,尽管实施例支持在给定时间的多个车辆自动化描述,和/或包含在车辆自动化描述内的多个自动化功能。在某些实施例中,云侧执行的车辆自动化管理器被配置为接收关于车辆自动化响应活动的状态、执行和/或结果的报告。示例云侧执行的车辆自动化管理器提供例如在自动化用户接口上实现的功能,以允许查询与云服务器相关联的车辆上的车辆自动化描述的部署,例如包括时间值(例如,与向车辆传送车辆自动化描述相关的时间值、执行时间、移除时间等)、车辆自动化描述的内容以及允许标识相关联车辆的车辆细节。在某些实施例中,云侧执行的自动化管理器允许确定车辆自动化描述状态和/或统计量,例如时间帧、执行状态、执行结果等,以及非正常情况的标识(例如,其中车辆已经拒绝或不能接纳和/或执行车辆自动化描述的操作)。在某些实施例中,云侧执行的自动化管理器可以在小型云设备上实现,例如与车辆直接通信的设备(例如,硬连接,诸如以太网或CAN连接,和/或无线连接,诸如WiFi连接或蓝牙连接),例如当车辆不能或不期望车辆完全与云通信时提供云级能力。在某些实施例中,体现小型云设备的外部设备可以在稍后时间选择性地耦合到云服务器,同步来自利用车辆执行的自动化管理操作的信息。
本文的示例实施例提供了为车辆创建、实现、获得状态信息、对自动化操作进行验证和/或故障诊断的能力,包括由不具有车辆特定信息的用户进行,所述车辆特定信息例如是对控制算法、参数名称、网络名称和/或端点、传感器、致动器等在车辆上的位置的理解。在某些实施例中,车辆的自动化操作被组织成一个或多个工作流程,每个工作流程具有一个或多个任务,并且每个任务具有一个或多个相关动作。在某些实施例中,如本文利用的计划(和/或自动化描述,和/或制法)包括用于实现该计划的多个工作流程。用于组织自动化操作的命名法不是限制性的,但是示例命名法用于清楚地说明本公开的方面。示例组织包括具有时间表和/或相关联的触发评估的工作流程,该时间表和/或相关联的触发评估用于确定工作流程应当何时开始,这可以根据描述的任何方面来确定,例如基于时间的确定、基于操作条件(例如,车辆操作条件和/或外部操作条件)的确定、基于特定请求(例如,由操作者、自动化用户接口的用户、服务人员、制造商等)的确定)、和/或基于检测到的事件的确定。在示例组织中,多个任务可以由工作流程执行,其中一些或所有任务可以各自具有时间表和/或相关联的触发评估,该时间表和/或相关联的触发评估用于确定每个任务应该何时开始。在某些实施例中,可以对照时间表和/或相关联的触发同时评估多个任务(例如,同时检查多个任务以确定给定任务是否准备好开始执行)。示例组织包括具有多个动作的每个任务,所述动作例如诸如致动器的移动、数据元素的收集和/或解释、提供通信等特定操作。任务的动作可以被调度,并且可以包括并行、串行执行的动作,具有轮回或循环操作等。在某些实施例中,给定任务的动作在另一个任务开始之前执行,尽管在某些实施例中可以同时执行多于一个的任务。
在另外的示例中,工作流程在任何级(例如,任务级、动作级和/或全局工作流程级)的进展可以作为状态值(例如作为收集的数据和/或作为触发评估数据)报告,从而允许用户确认工作流程的进展和/或状态,执行工作流程的统计分析(例如,对于车辆,和/或跨一组车辆),和/或对工作流程、任务或动作进行故障诊断,例如查看工作流程、任务或动作在哪里有问题,和/或查看在问题发生时和/或在问题发生之前车辆上还发生了什么。在某些实施例中,在工作流程、任务或动作的执行期间,可以为检测到的事件、所选状态值和/或错误值提供通知。在某些实施例中,检测到的事件、所选状态值和/或错误值可以用于触发附加的工作流程或任务,例如收集相关数据,以确定问题对车辆或包括车辆的系统等的影响。在某些实施例中,关于工作流程和/或任务的进展数据、状态数据、与工作流程和/或任务相关的其他操作条件数据(例如,之前、期间或之后)可以用于未来的开发和/或迭代改进,例如以使任务或工作流程的实现和/或执行更高效、更有效,和/或减少任务和/或工作流程的不合期望的副作用。
如贯穿本公开所阐述的,关于任务或工作流程观察和/或收集的数据,例如触发评估数据、事件检测数据和/或直接利用的数据(例如,用作动作参数的数据)可以是车辆上存在的数据、车辆外部的数据和/或车辆上或外部创建的数据(例如,虚拟传感器、确定的状态值等)来具体支持任务或工作流程,和/或支持自动化用户接口的所选能力(例如,给用户特定类型的信息用于工作流程、制法和/或自动化描述)。附加地或替代地,任何动作可以在车辆上执行或者可以在车辆外执行(例如,打开车门、与相机交互、发送通知等)。不限于本公开的任何其他方面,动作可以由贯穿本公开所阐述的自动化命令来实现。
在某些实施例中,如本文所阐述的制法、工作流程、自动化描述等的创建还提供了可以用于如本文所阐述的工作流程、任务、动作或其他自动化操作的常数和/或变量的创建。在某些实施例中,常数和/或变量可以以类似于包括输入参数的方式创建(例如,参考图23和相关描述)。在某些实施例中,常数和/或变量的范围可以是可选择的,例如使常数和/或变量可用于任何工作流程、可用于工作流程内的任何任务和/或可用于任务内的任何动作。在某些实施例中,变量可以是能够保存可选值的任何值,和/或任务、工作流程和/或其中动作可以向变量写入值。在某些实施例中,一些任务、动作或工作流程可以具有对变量的写入访问权,而其他任务、动作或工作流程可以仅具有对给定变量的读取访问权。在某些实施例中,常数或变量可以由与车辆相关的值或也可在车辆上获得的外部数据值来确定或表示(例如,为了便于开发任务、工作流程或动作),或者可以是与车辆上已经可用的值不相关的值或作为外部数据值(例如,用于实现任务、工作流程或动作的参数)。
不限于本公开的任何其他方面,工作流程、自动化描述、计划等可以在文件处实现,例如阐述工作流程、自动化描述或计划的操作的JSON文件。在某些实施例中,可以利用其他类型的数据结构,例如XML文件、脚本等。在某些实施例中,工作流程、自动化描述和/或计划可以以领域特定语言创建,例如用于实现自动化车辆操作的专有语言,例如为用户(包括可能不具有编程操作的复杂知识的用户)方便阅读和理解而创建的语言,和/或为用户创建易于理解的环境以理解正在创建和/或实现的车辆和/或自动化操作。在某些实施例中,自动化用户接口可以被配置为支持制法、描述、计划等的图形创建和/或修改。
网络和/或通信资源在没有限制的情况下包括局域网、广域网、无线网络、互联网或任何其他已知的通信资源和协议。示例和非限制性硬件和/或计算设备在没有限制的情况下包括通用计算机、服务器、嵌入式计算机、移动设备、虚拟机和/或仿真计算设备。计算设备可以是作为几个设备的一个方面而被包括的分布式资源,作为执行计算设备的所述功能的可互操作的资源集而被包括,使得分布式资源一起运转以执行计算设备的操作。在某些实施例中,每个计算设备可以在单独的硬件上,和/或一个或多个硬件设备可以包括多于一个计算设备的方面,例如作为存储在设备上的单独可执行指令,和/或作为可执行指令集的逻辑分区方面,其中一些方面包括第一计算设备之一的一部分,并且一些方面包括另一个计算设备的一部分。
计算设备可以是服务器、客户端、网络基础设施、移动计算平台、固定计算平台或其他计算平台的一部分。处理器可以是能够执行程序指令、代码、二进制指令等的任何种类的计算或处理设备。处理器可以是或包括信号处理器、数字处理器、嵌入式处理器、微处理器或任何变体,诸如可以直接或间接地促进存储在其上的程序代码或程序指令的执行的协处理器(数学协处理器、图形协处理器、通信协处理器等)等。此外,处理器可以使能多个程序、线程和代码的执行。线程可以被同时执行,以增强处理器的性能,并且促进应用的同时操作。借助于实现,本文描述的方法、程序代码、程序指令等可以在一个或多个线程中实现。该线程可以产生已经分配有与其相关联的优先级的其他线程;处理器可以基于优先级或者基于程序代码中提供的指令的任何其他次序来执行这些线程。处理器可以包括存储器,该存储器存储如本文和其他地方描述的方法、代码、指令和程序。处理器可以通过接口访问存储介质,该存储介质可以存储如本文和其他地方描述的方法、代码和指令。与处理器相关联的用于存储能够由计算或处理设备执行的方法、程序、代码、程序指令或其他类型指令的存储介质可以包括但不限于CD-ROM、DVD、存储器、硬盘、闪存驱动器、RAM、ROM、高速缓存等中的一个或多个。
处理器可以包括一个或多个内核,其可以增强多处理器的速度和性能。在实施例中,该过程可以是组合了两个或更多个独立的核(称为管芯)的双核处理器、四核处理器、其他芯片级多处理器等。
本文所述的方法和系统可以部分或全部地通过在服务器、客户端、防火墙、网关、集线器、路由器或其他此类计算机和/或网络硬件上执行计算机可读指令的机器进行部署。计算机可读指令可以与服务器相关联,该服务器可以包括文件服务器、打印服务器、域服务器、互联网服务器、内联网服务器和其他变型,诸如次服务器、主机服务器、分布式服务器等。服务器可以包括以下各项中的一个或多个:存储器、处理器、计算机可读暂时性和/或非暂时性介质、存储介质、端口(物理的和虚拟的)、通信设备和能够通过有线或无线介质访问其他服务器、客户端、机器和设备的接口等。如本文和其他地方描述的方法、程序或代码可以由服务器执行。此外,执行如本申请中描述的方法所需的其他设备可以被认为是与服务器相关联的基础设施的一部分。
所述服务器可以向其他设备提供接口,所述其他设备在没有限制的情况下包括客户端、其他服务器、打印机、数据库服务器、打印服务器、文件服务器、通信服务器、分布式服务器等。附加地,该耦合和/或连接可以促进指令跨网络的远程执行。这些设备中的一些或全部的联网可以促进在一个或多个位置并行处理程序代码、指令和/或程序,而不脱离本公开的范围。此外,通过接口附接接到服务器的所有设备可以包括能够存储方法、程序代码、指令和/或程序的至少一个存储介质。中央储存库可以提供要在不同设备上执行的程序指令。在该实现中,远程储存库可以充当用于方法、程序代码、指令和/或程序的存储介质。
所述方法、程序代码、指令和/或程序可以与客户端相关联,所述客户端可以包括文件客户端、打印客户端、域客户端、互联网客户端、内联网客户端和其他变体,诸如次客户端、主机客户端、分布式客户端等。客户端可以包括以下各项中的一个或多个:存储器、处理器、计算机可读暂时性和/或非暂时性介质、存储介质、端口(物理的和虚拟的)、通信设备和能够通过有线或无线介质访问其他客户端、服务器、机器和设备的接口等。如本文和其他地方描述的方法、程序代码、指令和/或程序可以由客户端执行。此外,执行如本申请中描述的方法所需的其他设备可以被认为是与客户端相关联的基础设施的一部分。
客户端可以向其他设备提供接口,所述其他设备在没有限制的情况下包括服务器、其他客户端、打印机、数据库服务器、打印服务器、文件服务器、通信服务器、分布式服务器等。附加地,该耦合和/或连接可以促进方法、程序代码、指令和/或程序跨网络上远程执行。这些设备中的一些或全部的联网可以促进在一个或多个位置并行处理方法、程序代码、指令和/或程序,而不脱离本公开的范围。此外,通过接口附接到客户端的所有设备可以包括能够存储方法、程序代码、指令和/或程序的至少一个存储介质。中央储存库可以提供要在不同设备上执行的程序指令。在该实现中,远程储存库可以充当用于方法、程序代码、指令和/或程序的存储介质。
本文所述的方法和系统可以部分或全部地通过网络基础设施部署。网络基础设施可以包括诸如计算设备、服务器、路由器、集线器、防火墙、客户端、个人计算机、通信设备、路由设备和如本领域已知的其他有源和无源设备、模块和/或组件之类的元件。除了其他组件之外,与网络基础设施相关联的(一个或多个)计算和/或非计算设备可以包括诸如闪存、缓冲器、堆栈、RAM、ROM等之类的存储介质。如本文和其他地方描述的方法、程序代码、指令和/或程序可以由一个或多个网络基础设施元件来执行。
本文和其他地方描述的方法、程序代码、指令和/或程序可以在具有多个小区的蜂窝网络上实现。蜂窝网络可以是频分多址(FDMA)网络或码分多址(CDMA)网络。蜂窝网络可以包括移动设备、小区站点、基站、中继器、天线、塔等等。
本文和其他地方描述的方法、程序代码、指令和/或程序可以在移动设备上或通过移动设备实现。移动设备可以包括导航设备、蜂窝电话、移动电话、移动个人数字助理、膝上型计算机、掌上计算机、上网本、寻呼机、电子书阅读器、音乐播放器等。除了其他组件之外,这些设备可以包括存储介质,诸如闪存、缓冲器、RAM、ROM和一个或多个计算设备。可以使能与移动设备相关联的计算设备执行存储在其上的方法、程序代码、指令和/或程序。替代地,移动设备可以被配置为与其他设备协作执行指令。移动设备可以与基站通信,基站与服务器对接并被配置为执行方法、程序代码、指令和/或程序。移动设备可以在对等网络、网状网络或其他通信网络上通信。方法、程序代码、指令和/或程序可以存储在与服务器相关联的存储介质上,并由嵌入在服务器内的计算设备执行。基站可以包括计算设备和存储介质。存储设备可以存储由与基站相关联的计算设备执行的方法、程序代码、指令和/或程序。
所述方法、程序代码、指令和/或程序可存储和/或访问在机器可读的暂时性和/或非暂时性介质上,所述介质可以包括:计算机组件、设备和记录介质,其保留用于计算的数字数据一段时间间隔;被称为随机存取存储器(RAM)的半导体存储装置;大容量存储装置,通常用于更永久的存储装置,诸如光盘,磁存储形式,如硬盘、磁带、磁鼓、卡和其他类型;处理器寄存器、高速缓冲存储器、易失性存储器、非易失性存储器;光存储装置,诸如CD、DVD可移动介质,诸如闪存(例如USB棒或钥匙)、软盘、磁带、纸带、穿孔卡、独立RAM盘、Zip驱动器、可移动大容量存储装置、离线等等;其他计算机存储器,诸如动态存储器、静态存储器、读/写存储装置、可变存储装置、只读存储装置、随机存取存储器、顺序存取存储器、位置可寻址、文件可寻址、内容可寻址存储装置、网络附加存储装置、存储区域网络、条形码、磁性墨水等等。
本文所述的某些操作包括解释、接收和/或确定一个或多个值、参数、输入、数据或其他信息(“接收数据”)。用于接收数据的操作在没有限制的情况下包括:经由用户输入接收数据;通过任何类型的网络接收数据;从与接收设备通信的存储器位置读取数据值;利用默认值作为接收的数据值;基于对接收设备可用的其他信息来估计、计算或导出数据值;和/或响应于后来接收的数据值更新这些中的任何一个。在某些实施例中,作为接收数据值的一部分,数据值可以由第一操作接收,并且稍后由第二操作更新。例如,当通信停机、间歇或中断时,可以执行第一接收操作,并且当通信恢复时,可以执行更新的接收操作。
本文提供了操作的某些逻辑分组——例如本公开的方法或程序——以说明本公开的方面。本文描述的操作被示意性地描述和/或描绘,并且操作可以以与本文的公开一致的方式被组合、划分、重新排序、添加或移除。应理解,操作描述的上下文可能需要对一个或多个操作进行排序,和/或可以明确公开用于一个或多个操作的次序,但是操作的次序应当广义地理解,其中本文具体设想了提供操作的等同结果的任何等同的操作分组。例如,如果在一个操作步骤中使用一个值,则在某些上下文中(例如,在用于实现某个效果的操作的数据的时间延迟很重要的情况下),可能需要在该操作步骤之前确定该值,但是在其他上下文中(例如,在使用来自操作的先前执行周期的值对于那些目的来说将是足够了的情况下),可能不需要在该操作步骤之前确定该值。因此,在某些实施例中,如所描述的操作次序和操作分组在本文被明确地设想,并且在某些实施例中,重新排序、细分和/或不同的操作分组在本文被明确地设想。
本文所述的方法和系统可以将物理和/或无形项目从一种状态变换到另一种状态。本文描述的方法和系统还可以将表示物理和/或无形项目的数据从一种状态变换到另一种状态。
上述方法和/或过程以及其步骤可以在适合用于特定应用的硬件、程序代码、指令和/或程序或硬件和方法、程序代码、指令和/或程序的任何组合中实现。硬件可以包括专用计算设备或特定计算设备、特定计算设备的特定方面或组件、和/或硬件组件和/或逻辑电路的布置,以执行方法和/或系统的一个或多个操作。所述过程可以在一个或多个微处理器、微控制器、嵌入式微控制器、可编程数字信号处理器或其他可编程设备连同内部和/或外部存储器中实现。所述过程也可以或取而代之地体现在专用集成电路、可编程门阵列、可编程阵列逻辑或可以被配置为处理电子信号的任何其他设备或设备组合中。将进一步领会,一个或多个过程可以实现为能够在机器可读介质上执行的计算机可执行代码。
可以使用结构化编程语言(诸如C)、面向对象的编程语言(诸如C++)或任何其他高级或低级编程语言(包括汇编语言、硬件描述语言和数据库编程语言和技术)创建计算机可执行代码,可以对其进行存储、编译或解释以在上述设备之一以及处理器、处理器架构的异构组合或者不同硬件和计算机可读指令的组合或者能够执行程序指令的任何其他机器上运行。
因此,在一个方面,上述每个方法及其组合可以体现在计算机可执行代码中,所述计算机可执行代码当在一个或多个计算设备上执行时,执行其步骤。在另一方面,该方法可以在执行其步骤的系统中体现,并且可以以多种方式跨设备分布,或者所有功能性可以集成到专用的独立设备或其他硬件中。在另一方面,用于执行与上述过程相关联的步骤的装置可以包括上述任何硬件和/或计算机可读指令。所有这样的排列和组合都旨在落入本公开的范围内。
虽然已结合特定实施例详细示出和描述了本公开,但对本领域技术人员而言,针对其的各种修改和改进将变得清楚。因此,本公开的精神和范围不受前述示例所限制,但应在法律允许的最广泛意义上进行理解。

Claims (56)

1.一种系统,包括:
具有包括多个端点的网络的车辆;
控制器,包括:
自动化定义电路,其被构造成解释自动化描述;
自动化管理电路,其被构造成响应于自动化描述而提供自动化动作计划;和
自动化执行电路,其被构造成响应于自动化动作计划而提供自动化命令;并且
其中所述多个端点中的端点响应于所述自动化命令来实现自动化车辆响应。
2.根据权利要求1所述的系统,其中所述自动化描述包括车辆策略的至少一部分。
3.根据权利要求1所述的系统,其中所述自动化动作计划包括以下各项中的至少一个:
要收集的数据的数据描述;
致动器响应;或者
触发描述。
4.根据权利要求1所述的系统,其中所述多个端点中的端点包括车辆的致动器。
5.根据权利要求1所述的系统,其中所述多个端点中的端点包括车辆的传感器。
6.根据权利要求1所述的系统,其中所述多个端点中的端点包括第二控制器。
7.根据权利要求6所述的系统,其中所述第二控制器进一步被配置为响应于实现自动化车辆响应而向控制器提供确认值。
8.根据权利要求1所述的系统,进一步包括所述多个端点中的第二端点,其中所述第二端点响应于所述自动化命令来实现所述自动化车辆响应。
9.根据权利要求1所述的系统,进一步包括:
车辆,其具有第二网络,所述第二网络具有第二多个端点;
所述第二多个端点中的第二端点,其中所述第二端点响应于所述自动化命令来实现所述自动化车辆响应。
10.根据权利要求1所述的系统,其中所述自动化动作计划包括事件检测描述,并且其中所述自动化执行电路进一步被构造成响应于所述事件检测描述来检测事件,并且进一步响应于所检测到的事件来实现所述自动化车辆响应。
11.根据权利要求1所述的系统,其中所述自动化描述进一步包括车辆操作条件,并且其中所述自动化管理电路进一步被构造成响应于所述车辆操作条件而提供所述自动化动作计划。
12.根据权利要求1所述的系统,其中所述自动化描述进一步包括外部操作条件,并且其中所述自动化管理电路进一步被构造成响应于所述外部操作条件而提供所述自动化动作计划。
13.一种系统,包括:
具有包括多个端点的网络的车辆;
控制器,包括:
自动化定义电路,其被构造成解释自动化触发描述和自动化动作描述;
自动化管理电路,其被构造成响应于所述自动化触发描述和所述自动化动作描述而提供触发检测计划和自动化动作计划;和
自动化执行电路,其被构造成响应于所述触发检测计划而确定触发事件值,并且响应于所述触发事件值和所述自动化动作计划而提供自动化命令;
其中所述多个端点中的端点响应于所述自动化命令来实现自动化车辆响应。
14.根据权利要求13所述的系统,进一步包括:
其中所述自动化执行电路进一步被构造成响应于所述触发检测计划而提供触发评估命令;
其中所述多个端点中的第二端点响应于所述触发评估命令来提供触发评估值;并且
其中所述自动化执行电路进一步被构造成响应于所述触发评估值而确定所述触发事件值。
15.根据权利要求13所述的系统,进一步包括:
其中所述自动化执行电路进一步被构造成响应于所述触发检测计划而提供触发评估命令;
其中所述端点响应于所述触发评估命令来提供触发评估值;并且
其中所述自动化执行电路进一步被构造成响应于所述触发评估值而确定所述触发事件值。
16.根据权利要求13所述的系统,其中所述自动化动作描述进一步包括自动化调度值,并且其中所述自动化管理电路进一步被构造成响应于所述自动化调度值而提供所述自动化动作计划。
17.根据权利要求13所述的系统,其中所述自动化触发描述进一步包括触发调度值,并且其中所述自动化管理电路进一步被构造成响应于所述触发调度值而提供所述自动化触发计划。
18.根据权利要求13所述的系统,其中所述自动化车辆响应包括以下各项中的至少一个:
致动器命令;
致动器激活;或者
致动器轨迹。
19.根据权利要求13所述的系统,其中所述自动化车辆响应包括以下各项中的至少一个:
选择性地启用车辆特征;
调整车辆特征的校准;
调整车辆的显示器;
调整车辆的照明;
调整车辆的环境管理系统;
调整车辆的音响系统;或者
调整车辆的操作者控制响应。
20.根据权利要求13所述的系统,其中所述自动化动作描述包括动作重复值,并且其中所述自动化管理电路进一步被构造成响应于所述动作重复值来提供所述自动化动作计划。
21.根据权利要求13所述的系统,其中所述自动化动作描述包括动作中断描述,并且其中所述自动化管理电路进一步被构造成响应于所述动作中断描述而提供所述自动化动作计划。
22.一种系统,包括:
具有包括多个端点的网络的车辆;
控制器,包括:
自动化定义电路,其被构造成解释任务描述;
自动化管理电路,其被构造成响应于所述任务描述而提供任务动作计划;和
自动化执行电路,其被构造成响应于所述任务动作计划而提供任务执行命令;
其中所述多个端点中的端点响应于所述任务执行命令来为车辆实现任务。
23.根据权利要求22所述的系统,其中所述任务包括监视车辆的操作条件。
24.根据权利要求22所述的系统,其中所述任务包括选择性地激活致动器。
25.根据权利要求22所述的系统,其中所述任务包括监视外部操作条件。
26.根据权利要求22所述的系统,其中所述任务包括确定事件是否已经发生。
27.根据权利要求22所述的系统,其中所述任务包括响应于所述任务执行命令或来自端点的响应中的至少一个而提供报告。
28.根据权利要求22所述的系统,其中所述任务描述进一步包括任务调度值,并且其中所述自动化管理电路进一步被构造成响应于所述任务调度值而提供所述任务动作计划。
29.根据权利要求22所述的系统,其中所述任务描述进一步包括任务发起值,并且其中所述自动化管理电路进一步被构造成响应于所述任务发起值来提供所述任务动作计划。
30.一种系统,包括:
具有包括多个端点的网络的车辆;
控制器,包括:
自动化定义电路,其被构造成解释自动化触发描述和自动化动作描述;
自动化管理电路,其被构造成响应于所述自动化触发描述和所述自动化动作描述而提供触发检测计划和自动化动作计划;和
自动化执行电路,其被构造成响应于所述触发检测计划而确定触发事件值,并且响应于所述触发事件值和所述自动化动作计划而提供自动化命令;
其中所述多个端点中的端点响应于所述自动化命令来实现自动化车辆响应。
31.根据权利要求30所述的系统,其中所述自动化触发描述包括用于车辆操作参数的滤波器描述,并且其中所述自动化管理电路进一步被构造成响应于用于所述车辆操作参数的滤波器描述而提供所述触发检测计划。
32.根据权利要求30所述的系统,其中所述自动化触发描述包括针对车辆操作参数、网络消息或控制器参数中的至少一个的数据解析描述,并且其中所述自动化管理电路进一步被构造成响应于所述数据解析描述而提供所述触发检测计划。
33.根据权利要求30所述的系统,其中所述自动化触发描述包括地图描述,并且其中所述自动化管理电路进一步被构造成响应于所述地图描述而提供所述触发检测计划。
34.根据权利要求33所述的系统,其中所述地图描述包括用于多个值的多参数值映射,所述多个值各自包括以下各项中的至少一个:车辆操作参数、外部操作参数、故障值或状态值。
35.根据权利要求30所述的系统,其中所述自动化触发描述包括聚合数据描述,并且其中所述自动化管理电路进一步被构造成响应于所述聚合数据描述而提供所述触发检测计划。
36.根据权利要求30所述的系统,其中所述自动化触发描述包括统计分析描述,并且其中所述自动化管理电路进一步被构造成响应于所述统计分析描述而提供所述触发检测计划。
37.根据权利要求36所述的系统,其中所述统计分析描述包括车辆操作参数的统计异常定义。
38.根据权利要求37所述的系统,其中所述自动化执行电路进一步被构造成响应于所述统计异常定义和所述车辆操作参数的值而确定相关操作条件存在,并且响应于所述相关操作条件而确定触发事件值。
39.一种系统,包括:
具有包括多个端点的网络的车辆;
控制器,包括:
自动化定义电路,其被构造成解释自动化描述;
自动化管理电路,其被构造成响应于所述自动化描述而提供自动化动作计划,并将所述自动化动作计划作为数据文件存储在通信地耦合到控制器的数据存储装置上;和
自动化执行电路,其被构造成响应于所述自动化动作描述而提供自动化命令;并且
其中所述多个端点中的端点响应于所述自动化命令来实现自动化车辆响应。
40.根据权利要求39所述的系统,其中所述自动化动作计划实现自动化命令的条件操作。
41.根据权利要求39所述的系统,其中所述自动化动作计划实现多个自动化命令的分支操作,所述多个自动化命令包括所述自动化命令。
42.根据权利要求39所述的系统,其中所述自动化动作计划实现包括所述自动化命令的状态机操作。
43.根据权利要求39所述的系统,其中所述自动化动作计划实现包括所述自动化命令的循环操作。
44.一种装置,包括:
控制器,包括:
自动化定义电路,其被构造成:
实现自动化用户接口;
向用户接口提供至少一个自动化制法;和
响应于与自动化用户接口的用户通信而解释自动化请求;
自动化管理电路,其被构造成响应于自动化请求而确定自动化描述;和
自动化命令电路,其被构造成向车辆的控制器提供自动化描述,其中车辆的控制器被配置为响应于所述自动化描述而实现自动化车辆响应。
45.根据权利要求44所述的装置,其中所述自动化定义电路进一步被构造成响应于所述用户的用户特性来选择一组自动化制法,并且响应于所选的一组自动化制法来提供所述至少一个自动化制法。
46.根据权利要求44所述的装置,其中所述自动化请求包括所述至少一个自动化制法中所选的一个。
47.根据权利要求44所述的装置,其中所述至少一个自动化制法中的每一个包括以下各项中的至少一个:车辆的自动化操作;车辆的自动化操作的一部分;或者用于车辆的自动化操作的模板。
48.根据权利要求44所述的装置,其中所述自动化请求包括至少一个参数描述,所述参数描述是不可知的参数描述。
49.根据权利要求48所述的装置,其中所述自动化描述包括至少一个参数描述,所述参数描述是车辆特定参数描述。
50.一种装置,包括:
控制器,包括:
自动化定义电路,其被构造成解释多个自动化描述;
自动化管理电路,其被构造成响应于所述多个自动化描述而提供自动化动作计划;和
自动化执行电路,其被构造成响应于所述自动化动作计划而向车辆网络的端点提供多个自动化命令。
51.根据权利要求50所述的装置,其中所述自动化定义电路进一步被构造成解释对应于所述多个自动化描述中的至少一个的优先级值,并且其中所述自动化管理电路进一步被构造成响应于所述优先级值而提供所述自动化动作计划。
52.根据权利要求50所述的装置,其中所述自动化定义电路进一步被构造成解释对应于所述多个自动化描述中的至少一个的层级值,并且其中所述自动化管理电路进一步被构造成响应于所述层级值而提供所述自动化动作计划。
53.根据权利要求50所述的装置,其中所述自动化管理电路进一步被构造成确定所述多个自动化描述中的至少两个之间的依赖值,并且响应于所述依赖值而提供所述自动化动作计划。
54.根据权利要求50所述的装置,其中所述自动化管理电路进一步被构造成确定至少一个自动化描述的操作影响,并响应于所述操作影响而提供所述自动化动作计划。
55.根据权利要求50所述的装置,其中所述自动化管理电路进一步被构造成响应于所述自动化执行电路的操作而否决所述多个自动化描述中的至少一个。
56.根据权利要求55所述的装置,其中所述自动化管理电路进一步被构造成通过执行从由以下各项组成的操作中选择的至少一个操作而否决所述多个自动化描述中的至少一个:
更新所述自动化动作计划以移除所述多个自动化描述中的至少一个;
响应于所述多个自动化描述中的至少一个而删除存储的数据;
删除对应于所述多个自动化描述中的至少一个的存储的制法;或者
调整对应于所述多个自动化描述中的至少一个的优先级值或层级值中的至少一个。
CN202280040013.4A 2021-06-04 2022-06-06 用于管理车辆数据收集的系统、方法和装置 Pending CN117425921A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202163197021P 2021-06-04 2021-06-04
US63/197021 2021-06-04
PCT/US2022/032380 WO2022256742A1 (en) 2021-06-04 2022-06-06 System, method, and apparatus for managing vehicle data collection

Publications (1)

Publication Number Publication Date
CN117425921A true CN117425921A (zh) 2024-01-19

Family

ID=84324599

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202280040013.4A Pending CN117425921A (zh) 2021-06-04 2022-06-06 用于管理车辆数据收集的系统、方法和装置

Country Status (4)

Country Link
EP (1) EP4315284A1 (zh)
KR (1) KR20240018508A (zh)
CN (1) CN117425921A (zh)
WO (1) WO2022256742A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022548324A (ja) 2019-09-20 2022-11-17 ソナタス インコーポレイテッド 車両外通信制御のためのシステム、方法、及び装置
US11772583B2 (en) 2020-03-06 2023-10-03 Sonatus, Inc. System, method, and apparatus for managing vehicle automation

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7660652B2 (en) * 2006-02-02 2010-02-09 Signature Control Systems, Inc. Method, system and device for monitoring vehicle usage
AU2007333025B2 (en) * 2006-12-13 2012-03-08 Crown Equipment Corporation Fleet management system
US10210672B2 (en) * 2017-04-07 2019-02-19 Toyota Research Institute, Inc. Systems and methods for remotely controlling data collection by a vehicle

Also Published As

Publication number Publication date
KR20240018508A (ko) 2024-02-13
EP4315284A1 (en) 2024-02-07
WO2022256742A1 (en) 2022-12-08

Similar Documents

Publication Publication Date Title
US20220297635A1 (en) System, method, and apparatus for managing vehicle data collection
US11721137B2 (en) System, method, and apparatus for managing vehicle data collection
US11929878B2 (en) System, method, and apparatus for extra vehicle communications control
CN110618671B (zh) 空中(ota)移动服务平台
US20230158975A1 (en) System, method, and apparatus for managing vehicle automation
US20230150523A1 (en) System, method, and apparatus for managing vehicle automation
CN115443637A (zh) 用于管理车辆数据收集的系统、方法和装置
CN117425921A (zh) 用于管理车辆数据收集的系统、方法和装置
JPWO2021055955A5 (zh)
US11772583B2 (en) System, method, and apparatus for managing vehicle automation
US20230154245A1 (en) System, method, and apparatus for managing vehicle automation
US20230161583A1 (en) System, method, and apparatus for managing vehicle automation
US20230154246A1 (en) System, method, and apparatus for managing vehicle automation
US20230154244A1 (en) System, method, and apparatus for managing vehicle automation
US20240163173A1 (en) System, method, and apparatus for extra vehicle communications control

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40100270

Country of ref document: HK