虽然iSight有Adams/View接口,但对Adams的版本有限制。下面使用iSight的simcode,就可以支持任意版本的Adams了。

Adams模型如下:

1. 编写cmd文件

file binary read &
file_name = "E:\WXP\Adams\View\isight\Adams_byCMD\latch.bin" &
alert = no var set var=DV_6 real_value = 0.7434119172961013
var set var=DV_7 real_value = 1.9259555962462807
var set var=DV_8 real_value = 4.433676661326009
var set var=DV_9 real_value = 4.714610513466087
var set var=DV_10 real_value = 7.779034103913939
var set var=DV_11 real_value = 6.796475165941863
var set var=DV_12 real_value = 6.286717021438926
var set var=DV_13 real_value = 6.98794537270161
var set var=DV_14 real_value = 5.115403982604715
var set var=DV_15 real_value = 8.202838178072785 simulation single scripted &
sim_script_name = .latch.Last_Sim &
reset_before_and_after = yes numeric_results write &
result_set_component_name = MAG, Last_Run.TIME &
sort_by = by_value &
order = descending &
write_to_terminal = off &
file_name = "E:\WXP\Adams\View\isight\Adams_byCMD\spring.txt"

latchi.bin是要优化的Adams模型;

var set var = DV_* 是要优化的设计变量;

仿真是由脚本.latch.Last_Sim控制,reset_before_and_after设置为yes表示每次仿真前后都要重置。

spring.txt是输出文件,其内容是由result_set_component_name来定义的,名称之间用逗号隔开。这里输出是MAG和Last_Run.TIME,并按倒序排列。这与在Adams/PostProcessor是对应的。

输出内容如下:

A.  .latch.Last_Run.StringOfForce.MAG (newton)
B. .latch.Last_Run.TIME (sec) A B
3.497601E+003 2.000000E-001
3.358114E+003 1.980000E-001
3.318937E+003 1.960000E-001
3.029387E+003 1.940000E-001
2.987023E+003 1.920000E-001
2.807605E+003 1.900000E-001
2.783798E+003 1.880000E-001
2.676770E+003 1.860000E-001
2.664381E+003 1.840000E-001
2.588095E+003 1.820000E-001
2.580667E+003 1.800000E-001
2.518880E+003 1.780000E-001
2.514620E+003 1.760000E-001
2.459801E+003 1.740000E-001
2.457834E+003 1.720000E-001
2.405967E+003 1.700000E-001
2.405960E+003 1.680000E-001
2.356435E+003 1.660000E-001
2.354424E+003 1.640000E-001
2.307433E+003 1.620000E-001
2.303180E+003 1.600000E-001
2.257533E+003 1.580000E-001
2.250652E+003 1.560000E-001
2.205627E+003 1.540000E-001
2.195428E+003 1.520000E-001
2.151713E+003 1.500000E-001
2.150561E+003 1.480000E-001
2.136098E+003 1.460000E-001
2.096343E+003 1.440000E-001
2.091177E+003 1.420000E-001
2.071141E+003 1.400000E-001
2.036315E+003 1.380000E-001
2.026218E+003 1.360000E-001
1.998838E+003 1.340000E-001
1.970465E+003 1.320000E-001
1.954294E+003 1.300000E-001
1.917255E+003 1.280000E-001
1.897496E+003 1.260000E-001
1.873899E+003 1.240000E-001
1.824325E+003 1.220000E-001
1.816026E+003 1.200000E-001
1.783518E+003 1.180000E-001
1.724723E+003 1.160000E-001
1.718114E+003 1.140000E-001
1.681860E+003 1.120000E-001
1.622564E+003 1.100000E-001
1.597314E+003 1.080000E-001
1.568254E+003 1.060000E-001
1.509209E+003 1.040000E-001
1.461937E+003 1.020000E-001
1.443129E+003 1.000000E-001
1.385403E+003 9.800000E-002
1.313952E+003 9.600000E-002
1.308374E+003 9.400000E-002
1.253238E+003 9.200000E-002
1.167364E+003 9.000000E-002
1.157460E+003 8.800000E-002
1.116083E+003 8.600000E-002
1.024530E+003 8.400000E-002
9.981465E+002 8.200000E-002
9.781544E+002 8.000000E-002
8.846512E+002 7.800000E-002
8.438606E+002 7.600000E-002
8.422008E+002 7.400000E-002
7.521066E+002 7.200000E-002
7.171571E+002 7.000000E-002
6.952084E+002 6.800000E-002
6.303409E+002 6.600000E-002
6.010998E+002 6.400000E-002
5.613901E+002 6.200000E-002
5.216125E+002 6.000000E-002
4.976557E+002 5.800000E-002
4.433115E+002 5.600000E-002
4.270085E+002 5.400000E-002
4.077383E+002 5.200000E-002
3.466379E+002 5.000000E-002
3.419748E+002 4.800000E-002
3.313902E+002 4.600000E-002
2.799041E+002 4.400000E-002
2.680295E+002 4.200000E-002
2.571407E+002 4.000000E-002
2.257823E+002 3.800000E-002
2.166965E+002 3.600000E-002
1.877344E+002 3.400000E-002
1.830562E+002 3.200000E-002
1.762658E+002 3.000000E-002
1.505007E+002 2.800000E-002
1.456106E+002 2.600000E-002
1.321667E+002 2.400000E-002
1.270103E+002 2.200000E-002
1.237226E+002 2.000000E-002
1.116855E+002 1.800000E-002
1.097937E+002 1.600000E-002
1.038876E+002 1.400000E-002
1.032703E+002 1.200000E-002
8.873737E+001 1.000000E-002
5.565966E+001 8.000000E-003
3.145351E+001 6.000000E-003
1.475188E+001 4.000000E-003
4.483455E+000 2.000000E-003
0.000000E+000 0.000000E+000

2. 编写BAT文件

要想在命令方式下调用Adams,需编写如下的批处理文件goAVIEW.bat。

del E:\WXP\Adams\View\isight\Adams_byCMD\spring.txt
"D:\MSC.Software\Adams_x64\2014\common\mdi.bat" av ru-s b E:\WXP\Adams\View\isight\Adams_byCMD\latch.cmd e

上面文件的第一行为每次调用前删除上一次的结果文件spring.txt。第二行是命令行调用adams读取步骤1中文件的方法。

3. iSight设置

在iSight工作区中拖入Application Components下的DataExchanger(2个)和OS Command(1个),Process Components下的

Optimization(1个)至Task1中。

左侧Data Exchanger读取latch.cmd文件,双击弹出如下界面。

点击中间的Click here to open a new Data Source,添加write属性的cmd文件。

点击Next进入下一步,再Back返回上一步。点击File to Read at Runtime下文件名右侧的…按键,将文件写出路径设为绝对路径:

点击Next,选择General Text。点击Finish完成设置。

在模板文件中选中某个设计变量数值,在Parameter中输入变量名,然后点击右侧笔图标的write按键,完成iSight的该设计变量创建。使用同样方法将所需的所有设计变量全部创建出来。点击OK完成写出文件的所有设置。

 

双击iSight工作区右侧的Data Exchanger 1,点击中间的Click here to open a new Data Source,添加read属性的文件。

 

点击Next进入下一步,再Back返回上一步。点击File to Read at Runtime下文件名右侧的…按键,确认与下图设置一致:

 

点击OK后,再点击Next按键,选择General Text。点击Finish完成设置。选中下图绿色高亮数据,在Parameter中输入变量名,点击右侧的Read按键,完成优化目标变量的创建。点击完成读取文件的设置。

 

双击iSight工作区的OS Command,在Basic选项卡中点击Find Program按键选择步骤2中创建的goAVIEW.bat文件。点击OK完成命令文件的设置。

 

4. 设置优化方法

双击Optimization1,在General选项卡中选择多岛遗传算法作为优化方法:

 

在Variables选项卡中勾选所有要优化的设计变量。

 

在Objectives中勾选优化的目标函数SpringForce。点击OK完成优化方法的设置。

 

点击工具栏的Run Model或按F4,开始优化。优化结束后,点击Summary选项卡,查看优化结果。

 

示例文件

iSight集成Adams/View:Simcode的更多相关文章

  1. iSight集成Adams/View:Adams组件

    iSight本身支持特定版本的Adams/View,在Adams中添加isight的插件方法如下: 1.在iSight安装目录下搜索isight.bin文件,将其复制到Adams安装路径下的win32 ...

  2. 如何把car中的模块导入adams/view中

    在你的adams安装目录下的acar文件夹下找到acar.cfg文件,将里面的 MDI_ACAR_PLUS_AVIEW 后面的no改成yes,在car中的tool下面就可以找到进入view环境的命令了 ...

  3. ADAMS与外部程序通信(Adams Command Server)

    The Adams Command Server is an Adams View (or Adams Car) component that manages communication betwee ...

  4. adams技巧汇总

    T+左键        平动模型 R+左键        旋转模型 Z+左键        动态缩放 F或Ctrl+F     以最大比例全面显示模型 S+左键        沿着垂直于屏幕的轴线旋转 ...

  5. 机器人与机器人仿真技术(zz)

    http://www.viblue.com/archives/5587.htm 一.机器人简介: 机器人(Robot)是自动执行工作的机器装置.它既可以接受人类指挥,又可以运行预先编排的程序,也可以根 ...

  6. iOS UITableView 与 UITableViewController

    很多应用都会在界面中使用某种列表控件:用户可以选中.删除或重新排列列表中的项目.这些控件其实都是UITableView 对象,可以用来显示一组对象,例如,用户地址薄中的一组人名.项目地址. UITab ...

  7. android点击状态分析

    android:addStatesFromChildren="true" :父类从子类中获取点击状态. android:duplicateParentState="tru ...

  8. Android学习笔记⑥——UI组件的学习ImageView相关

    ImageView是集成了View的组件,它的主要工作就是显示一些图片啊,虽然他的用法一句话概括了,但是我觉得学起来应该不会太简单,正所谓 短小而精悍么 :) ImageView 派生了 ImageB ...

  9. android开发3:四大基本组件的介绍与生命周期

    android开发3:四大基本组件的介绍与生命周期 Android四大基本组件分别是Activity,Service服务,Content Provider内容提供者,BroadcastReceiver ...

随机推荐

  1. git push如何至两个git仓库

    分别有仓库 A(github),B(JAE 的 git),本机为C. 假设以 a 仓库作为最终的使用仓库, b为发布仓库.分支都为 dev 第一步,增加远程仓库 git remote add orig ...

  2. Node.js process 模块常用属性和方法

    Node.js是常用的Javascript运行环境,本文和大家发分享的主要是Node.js中process 模块的常用属性和方法,希望通过本文的分享,对大家学习Node.js http://www.m ...

  3. 广播接收者Receiver

    一,动态创建网络状态监控 思路: 1:需要注册一个广播接收者,registerReceiver()需要两个参数 public Intent registerReceiver( BroadcastRec ...

  4. 浅谈JavaScript中的defer,async

    引言 开始重读<<JavaScript高级程序设计>>一书,看到关于JavaScript中关于defer.async的部分.网上查询了点资料,觉得蛮好的.现在总结下. defe ...

  5. [Head First设计模式]餐馆中的设计模式——命令模式

    系列文章 [Head First设计模式]山西面馆中的设计模式——装饰者模式 [Head First设计模式]山西面馆中的设计模式——观察者模式 [Head First设计模式]山西面馆中的设计模式— ...

  6. Bash 中的环境变量

    在 Bash 里,可以通过 export 命令查看当前 Shell 进程的环境变量,这些环境变量一些是 Bash 自己创建的,还有一些是 Bash 从父进程继承来的,然而需要注意的是,父进程传给 Ba ...

  7. Mac Pro 实现 PHP-5.6 与 PHP-7.0 等多版本切换

    先前参考 如何 实现PHP多版本的 共存 和 切换? 实现了Linux(Ubuntu/CentOS)系统下,PHP多版本的切换,但是在 Mac OS 下,由于用户权限控制的比较严格,文章里提到的脚本运 ...

  8. java基础知识(四)java内存机制

    Java内存管理:深入Java内存区域 上面的文章对于java的内存管理机制讲的非常细致,在这里我们只是为了便于后面内容的理解,对java内存机制做一个简单的梳理. 程序计数器:当前线程所执行的字节码 ...

  9. JS正则表达式元字符

    https://segmentfault.com/a/1190000002471140

  10. PYTHON 全局变量和局部变量

    #局部变量,只能调用函数体内的变量 def fun(): a = 234 print(a) #全局变量,在函数体外声明,在函数体内都可调用 b = 'gyc' def fun(): a = 234 p ...