问题标签 [canoe]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
canoe - 将外部传感器连接到 CANoe
我对stackoverflow完全陌生。我有一个与 CANoe(矢量)相关的问题
是否可以通过CANoe将外部传感器信号注入ECU,外部传感器信号来自虚拟仿真软件Carmaker。
canoe - 如何使用 Canoe .XCP 和 CAPL 写入 XCP 参数?
如何使用 Canoe .XCP 和 CAPL 脚本写入 XCP 参数?我们可以测量这些参数,但不能改变它们,这有可能吗?
c# - 在 C# 的 Vector.Diagnostics(用于 CANoe)程序集中使用 Request 和 Ecu 类
我正在尝试创建一个仅指定 PDU 的诊断服务请求,并在 Visual Studio 中的 C# 上使用请求类的 ToString 函数打印回该服务的相应限定符。Ecu 类和 Request 类都是 Vector.Diagnostics 程序集的成员。
但是我对应该如何使用这些类感到困惑。
是否可以创建 Ecu 类的对象,并使用该对象创建新请求?我尝试了一些代码来做到这一点,但它只是在运行时显示错误或抛出“NullReferenceException”。
错误是说 Request 类没有构造函数。为什么不?它是一个类,因此它必须有一个默认构造函数。
如果如果我删除第二行,并对第三行进行如下修改:
我打字的时候很开心,但是在运行时抛出了上面提到的异常。
发生了什么,为什么?
c# - 使用基于 C# 的工具向 CANoe 配置中的 ECU 发送诊断请求
我想向特定 CANoe 配置中的 ECU 发送自定义诊断请求,并通过外部工具(由我在 C#、Visual Studio 中开发)接收该请求的响应。
我知道 Vector.Diagnostics 之类的库,它们在发送请求和内容时很有用。但据我目前所见,大多数使用这些库的脚本都已加载到 CANoe 配置中,并通过模拟设置中的 .NET 测试模块执行。
因此,即使我确实使用“Vector.Diagnostics”库创建了诊断请求,我应该如何将请求与特定配置中的 ECU 准确关联?ECU 本身可以通过 ECU Qualifier 和“ECU”类对象来寻址。但是 CANoe 配置呢?
我正在考虑通过 CANoe-COM 服务器组件打开关联的 CANoe 配置,然后发送请求,但它并没有真正的意义。没有理由将配置(通过 COM 服务器打开)与诊断请求(通过 C# 中的向量库创建和发送)相关联。
有人吗?任何人?...
PS:如果无需完全打开 CANoe 配置即可完成此任务,我也将不胜感激。
capl - CAPL中CAN 1监听UDS报文并在CAN2输出控制码的方法
我是一个完全的编程爱好者,但在操作 Vector 工具方面有一些经验,并且长期熟悉汽车 CAN 网络和 UDS。我可以发送控制消息以手动操作总线 2 上的 RAD I/O 接口上的继电器(ON KEY),所以我知道该命令有效(clickety click)但我需要它在收到诊断 CAN 帧后这样做(在对话中)。问题是,diagRequest 在 CAN 总线 1 上,我需要在 CAN 总线 2 上发送命令。请有 CAPL 键盘侠能提出解决方案吗?
capl - 替代 CAPL 函数“TestWaitForDiagRequestSent”
我正在寻找 CAPL 中的一个函数,它提供与上述函数相同的功能。
该函数用于等待确认诊断请求是否成功发送。传入的参数是 DiagRequest 对象和特定的等待期。如果在此期间结束时未收到确认,则返回与超时相对应的错误代码。另一个错误代码也指其他失败原因,例如协议错误等。
我对这个已建立的“TestWaitForDiagRequestSent”函数的主要问题是它只能在测试用例结构中使用,或者通过 CANoe 的模拟设置中的 CAPL、XML 或 .NET 测试模块实现。我需要实现相同的功能,而不必使用测试模块。
任何人都可以建议另一个 CAPL 函数来完成相同的工作减去测试模块,或者建议一种实用的方法来实现这一点?
c# - 将 CANoe COM 服务器与 C# 一起使用时的问题
我正在尝试通过 C# 中的 CANoe-COM 服务器在特定的 CANoe 配置中执行一些 CAPL 函数。但我遇到了错误。
在这里,我在 CANoe-COM 服务器中声明两个类的对象:应用程序(打开 CANoe 配置)和 CAPLFunction(在配置上运行一些 CAPL 功能,比如打开一个面板),按下按钮在一个简单的 Windows 窗体中。代码如下:
当我在 Visual Studio 中输入这些函数时,没有显示任何错误。即使在运行程序时,表单也会显示,并且在单击按钮时,配置“All_Neu.cfg”也会打开。但在那之后,系统抛出这个错误:“类未注册,HRESULT:REGDB_E_CLASSNOTREG”。它在抛出错误时突出显示声明 CAPLFunction 对象的行。
这很奇怪,因为应该没有问题,对吧?我的意思是,CANoe 配置正确打开,所以 CANoe-COM 服务器是活跃的。
事实上,我注意到 COM 服务器中任何其他类的任何对象,如 Bus 或 Write,都会导致相同的错误。配置确实打开了,但在那之后,什么也没有。
关于为什么会发生这种情况的任何想法?
capl - 是否有访问硬件配置的 CAPL 功能?
我正在使用 CANoe 设置测试环境。根据我要运行的测试,我需要在运行测试之前正确配置硬件。
我能够使用面板配置硬件并导出设置以供以后导入,但我无法从测试本身启动它,因此在附加到不同硬件配置的测试之前需要手动操作启用。
我希望能够直接从测试(CAPL)中恢复硬件配置。
canoe - 驱动程序:接收溢出:消息丢失
上面两张图分别是我的测量和模拟设置。Replay 块播放一个长度为 6 分钟的 blf 文件,其中包含来自两个 CAN 通道的总共 2,413,161 个 CAN 帧。
上图说明了工作台设置。Canoe 读取 blf 文件并在两个 CAN 通道上传输 CAN 帧。微控制器 (MuC) 接收 CAN 帧将它们转换为以太网 IPV4 UDP 数据包并再次传输到独木舟。
当我运行此配置时,出现以下错误。
1. 系统 - CAN 驱动程序:接收溢出 - 消息丢失
2. 系统 CAN X:ID = XXX 的消息无法发送。TransmitCANFrame 中的驱动程序错误 11,“XL_ERR_QUEUE_IS_FULL”
3. 系统警告:重播加载延迟
系统 ReplayBlock 1(blf_file.blf):15 次,总共 7347.46 毫秒
我认为这是由于独木舟性能问题或 CAN 驱动程序问题。所以我做了以下步骤。
1.修改了Vector hardware Config下CANCaseXL Receive latency->Very fast。
2. 在 Vector hardware config -> Global settings 下增加 Transmit queue settings->32768 (maximum)。
3. 我禁用了除一个日志记录块 (blf) 之外的所有内容 [正如您在测量设置中看到的那样]。
但我仍然遇到同样的错误。可能是什么问题呢?有没有其他方法可以解决这个问题?
python-3.x - 如何在python的while循环中每次返回值
我有以下代码
我想每次都退回味精,我该怎么办?有人能帮我吗?