写在前面
整理了学习两者联合仿真时收集的一些资料,加上个人实践经验,将所学所悟予以记录。本篇是第二篇,主要讲指令功能。
1. 基本指令
前面说了Matlab对stk的调用方式有两种,相应的指令也有区别,比如同样是新建场景,使用AeroToolBox的指令为:
stkNewObj(’/’,‘Scenario’,‘MyScenario’);
stkNewObj指令为通用的创建新目标指令,除了场景、还可以利用该指令添加卫星、敏感器、星座等STK中的通用目标。
指令参数有三个,第一个表示创建目标的位置,可以理解为父目标,场景是STK种最外层目标,所以第一个参数设置为’/’;第二个参数表示目标的类型,第三个参数表示目标的名字。
如果需要在该场景下创建一个卫星,那么相应的指令为:
stkNewObj(’*/’,‘Satellite’,‘Satellite1’);
主要关注该指令的第一个参数,卫星的父目标为场景,当只存在一个场景时,可以用’*/‘代替该场景。这个指令和下述方式是等价的:
stkNewObj(’/Scenario/MyScenario’,‘Satellite’,‘Satellite1’)。
而使用mexConnec方式创建场景的指令如下:
- conid = stkOpen(stkDefaultHost);(该指令用以获取当前STK的端口号)
- stkConnect(conid,‘New’,’/’,‘Scenario MyScenario’)。
stkConnect为固定指令,里面有4个参数,参数1为端口号;参数2为指令作用,'New’代表新建,新建卫星、敏感器等也是该参数;参数3与stkNewObj指令的参数1同理,参数4是tkNewObj指令的参数2+3。
2.指令查询
在matlab的指令窗口输入help stk可以查询相关的内容。
再进一步输入help aeroToolbox就可以看到aeroToolbox包含的相关指令,掌握每个指令的作用和参数定义,就可以做到正确使用了。
对于mexConnec指令的查询,我个人常用方法是借助STK的help文档。
STK11的help文档非常强大,在侧边栏这里尅可以知道connect相关内容:
在指令库里面还按照不同的索引方式进行说明:
随便点一个具体的指令,可以看到指令介绍界面有指令使用示例如下:
每一条示例都展示了stkConnect的参数2-4,因为参数1是conid端口号。
掌握了指令的查询方法,就可以使用matlab完成自己想要的调用功能了。