adams 批处理导入模型时 如何实时显示过程信息?

现状:adams car批处理导入整车模型时只显示 “开始执行批处理”,见下图

img


目标:在执行批处理时显示如下过程信息(方便监测异常)见下图,下图是在adams界面手动操作导入模型时显示的过程信息。此过程信息是执行cmd后adams输出的。

img

您可以使用MATLAB的system命令来调用ADAMS批处理,并使用disp命令在MATLAB命令窗口中显示信息。例如,以下是一个简单的示例:

batch_cmd = 'adams -b script.cmd';
[status, result] = system(batch_cmd);
disp('ADAMS batch import process has started.');

在ADAMS批处理过程中,您可以在script.cmd中使用echo命令来输出信息并在MATLAB命令窗口中显示它们。例如:

echo "Importing model 1..."
model_import -file "model1.adm"
echo "Model 1 import complete."
echo "Importing model 2..."
model_import -file "model2.adm"
echo "Model 2 import complete."

这将在ADAMS批处理过程中显示每个模型的导入进度信息。在MATLAB命令窗口中,您将看到类似以下内容的输出:

ADAMS batch import process has started.
Importing model 1...
Model 1 import complete.
Importing model 2...
Model 2 import complete.

引用 皆我百晓生 小程序回复内容作答:
要实时显示批处理导入模型的过程信息,可以使用MATLAB中的disp函数来在命令窗口中打印相关信息。将批处理文件的每个步骤添加适当的disp语句来输出相应的信息。

例如,在批处理文件中的导入模型步骤之前,可以添加以下代码来显示正在导入模型的信息:

disp('正在导入模型...');

同样,在导入模型的下一步之前,添加以下代码来显示导入成功的信息:

disp('模型导入完成。');

这样,当批处理文件执行时,信息会实时显示在命令窗口中,方便监测异常。

注意:以上示例使用的是MATLAB的语法,如果使用其他编程语言,可以根据相应语言的输出函数来实现相似功能。

【以下回答由 GPT 生成】

我了解您希望在使用adams批处理导入模型时实时显示过程信息的需求。我会尽力为您提供解决方案。不过很抱歉,由于我目前无法操作adams软件,无法给出具体的代码。下面是我可以提供的一般性的解决思路:

  1. 通过adams软件的API,查找是否提供了用于获取导入模型过程信息的函数。您可以在adams的文档中查找是否有相关的API函数。如果有,请留意函数的输入参数和返回值,以便在后续步骤中使用。
  2. 如果adams没有提供获取导入模型过程信息的函数,您可以考虑使用系统级的工具来捕获adams运行时的信息。您可以运行adams批处理命令时,将标准输出定向到一个文件中。例如,在Windows命令行中运行以下命令: adams_command.bat > output.txt 这样,adams批处理的输出信息将被重定向到output.txt文件中。您可以使用其他编程语言读取这个文件,并将其中的内容实时显示出来。
  3. 如果adams软件的界面支持插件或扩展,您可以尝试查看是否有与导入模型过程相关的插件或扩展,这些插件或扩展可能提供了实时显示过程信息的功能。

总之,根据adams软件的特性和可用的API,您可以选择适合您需求的方法来实现在导入模型过程中实时显示过程信息。希望这些思路能对您有所帮助。如果您有任何进一步的问题或者需要更具体的解决方案,请随时告诉我。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^

使用cd命令导航到ADAMS Car的安装目录,通常是在ADAMS安装目录的bin文件夹中。

cd C:\Program Files\ADAMS\ADAMS_Car\bin

请根据你的ADAMS Car安装路径进行相应更改。

运行批处理文件: 在命令行窗口中,运行你的批处理文件,例如:

adams_car_batch.exe -b your_batch_file.bch

在这里,adams_car_batch.exe是ADAMS Car的批处理执行程序,-b选项用于指定批处理文件的路径,your_batch_file.bch是你的批处理文件的名称。确保替换成你自己的批处理文件路径和名称。

提供参考实例,建议私信该博主,有目标的进行沟通,链接:https://blog.csdn.net/m0_46222854/article/details/121590760

结合GPT给出回答如下请题主参考
要实时显示过程信息,可以在批处理文件中使用echo命令将需要显示的信息打印出来,并且将输出重定向到一个文件中。然后使用tail命令监视该文件的更新,以实时查看信息。

以下是一个示例批处理文件:

echo "开始导入整车模型"

adams car -batch -run your_script.cmd > log.txt

tail -f log.txt

在上面的示例中,echo命令将“开始导入整车模型”打印到控制台。然后使用Adams car命令导入模型,并将输出重定向到log.txt文件中。最后使用tail命令监视log.txt文件的更新,以实时查看信息。

请注意,您需要将“your_script.cmd”替换为您实际使用的Adams car脚本文件名。此外,log.txt文件名称也可以更改为您喜欢的名称。

此外,您还可以使用其他类似的命令,例如grep命令来过滤信息,并将重定向的输出传递给其他命令。例如:

adams car -batch -run your_script.cmd 2>&1 > log.txt | grep "Error" > error_log.txt

在这个示例中,使用2>&1将标准错误重定向到与标准输出相同的地方,并使用grep命令过滤所有包含“Error”的行,并将结果重定向到error_log.txt文件中。这将使您能够轻松地查找任何错误并将其记录下来以进行后续分析。

希望这些示例对您有所帮助!

Matlab-GUI程序 界面实时显示命令行中运行过程

https://blog.csdn.net/qq_38605488/article/details/105205725
https://blog.csdn.net/weixin_42517317/article/details/115881984

该回答引用ChatGPT,希望对题主有所帮助,如有帮助,还望采纳。


解决方案:

  1. 打开批处理文件,添加以下代码:

    echo off
    echo 开始执行批处理
    rem 以下是导入模型的命令
    adamsmfe -batch -input "路径\文件名.mfe"
    echo 批处理执行完毕
    
  2. 将“adamsmfe”替换为实际的adams命令名,如果使用的是GUI版本的adams,命令名应该是“adams”。

  3. 运行批处理文件,可以看到命令执行的过程信息。如果有异常情况,可以根据过程信息进行排查。