AFSim仿真系统—20 媒介命令

 本栏目将对《AFSim 2.9中文参考手册》进行持续更新,欢迎关注交流!

对本书全文和AFSIM其它资料感兴趣的伙伴,可联系作者领取~

全部内容索引请看 ⬇️⬇️⬇️

《AFSim 2.9中文参考手册》-CSDN博客​编辑https://blog.csdn.net/henggesim/article/details/145566384


目录

通用引导型媒介模型WSF_COMM_MEDIUM_GUIDED

通用非引导型媒介模型WSF_COMM_MEDIUM_UNGUIDED


medium <name-or-type> <base-type-name>



   channels <integer-value>

   default_mode_name <mode-name>

   use_sharing <boolean-value>



   mode <mode-name>

      ...

   end_mode



   script string ModeOnTransmit ...



end_medium

添加一个medium到有效的通信框架对象

comm <name> <type>   # or edit comm <name>

   add medium <type>

     ...

   end_medium

end_comm

在有效的通信框架对象上编辑一个medium对象

router <name> <type>   # or edit router <name>

   edit medium <type>

      ...

   end_medium

end_router

在有效的通信框架对象上删除一个medium对象:

comm <name> <type>   # or edit comm <name>

   delete medium <type>

end_comm

注意:删除medium会用该对象的默认medium类型及默认设置替换现有定义。

概述

在AFSIM中,medium 是一种对象,代表通信设备将数据传播到另一通信设备的方式。Medium 提供了一种可定义的用户类型,可被AFSIM通信框架中的各种对象利用。Medium定义了其实现对通信施加的限制,这些限制与使用该medium的通信模型所定义的限制相协同。例如,即使通信设备可以利用最大传输速率,该速率也可能会被所使用的medium或medium的其他动态特性(如复用中使用的信道数量)进一步限制。

Medium在AFSIM中是独特的,因为它们可以在多个通信对象之间共享。因此,使用共享medium的每个通信设备都受到该medium限制的约束。例如,四个通信设备共享一个medium,该medium有四个可用传输信道。如果一个通信设备使用了所有四个信道,其他通信设备在一个或多个信道可用之前无法进行传输。特定的模型可能会根据干扰、拥塞等概念实施其自身的限制。

由于medium是共享对象,只能在全局上下文中定义。任何特定于通信对象(如路由器或通信设备)的medium使用必须引用在全局上下文中定义的medium,并且只通过其类型名称引用此medium。

Medium还可以包含多种模式,表示与该medium相关的不同状态。使用AFSIM脚本语言,可以在运行时修改任何传输的状态,以提供动态方法更改传输特性。虽然AFSIM中的任何对象都仅限于一个medium对象,但该medium可以有任意数量的可用模式。

命令

channels <integer-value>

解释

定义medium可用的信道数量,也就是说,是否支持复用。信道数量决定了该medium可以处理的并发传输的数量,以及随后利用该medium的所有通信对象的并发传输数量。

默认值:最大整数值(没有并发传输数量的限制)

命令

default_mode_name <mode-name>

解释

指定该medium上传输的默认模式。每个medium都有一个名为“default”的默认模式,使用默认值。除非使用此命令,否则在典型的medium处理期间将使用“default”模式。需要注意的是,可以通过使用mode命令显式定义“default”模式来修改默认模式。

默认值:使用“default”模式

命令

use_sharing <boolean-value>

解释

默认情况下,medium在每个引用特定全局定义medium类型的对象之间共享。如果指示use_sharing为false,那么每次使用此medium类型定义将实例化其自身实例。这允许类型定义作为每个实例的简单模板,而避免共享实际medium本身。

默认值:true(medium是共享的)

命令

mode <mode-name> .. end_mode

解释

mode命令用于定义该medium的单个模式。可以重复多次,但每个模式必须具有唯一的字符串名称。任何给定模式的实际命令由所使用的medium类型确定。

注意:每个medium都有一个“default”模式。任何在mode块之外使用的典型模式命令都引用“default”模式。

脚本

script string ModeOnTransmit(WsfCommMessage aMessage, WsfComm aTransmitter, WsfComm aReceiver) ... end_script

功能

定义一个可选的脚本方法,每次尝试通过该medium传输消息时都会调用。用户可以通过返回模式的字符串标识符来指定该medium上的传输模式。

返回空字符串或不存在的模式名称时,该medium将使用当前指定的默认模式进行消息传输。

通用引导型媒介模型WSF_COMM_MEDIUM_GUIDED

medium <name> WSF_COMM_MEDIUM_GUIDED

   ... medium Commands ...



   propagation_speed <random-speed-reference>

   transfer_rate <random-data-rate-reference>

   packet_loss_time <random-time-reference>



   mode <mode-name>

      propagation_speed <random-speed-reference>

      transfer_rate <random-data-rate-reference>

      packet_loss_time <random-time-reference>

   end_mode



end_medium

WSF_COMM_MEDIUM_GUIDED 是一种通用的引导型medium类型。引导型medium有时也称为有界或有线medium。这种medium提供了通常与以前版本的AFSIM中引导通信框架对象相关的基本medium功能。

这种medium类型适用于AFSIM核心中的以下通信对象模型:

  • WSF_COMM_RCVR
  • WSF_COMM_XMTR
  • WSF_COMM_TRANSCEIVER
  • WSF_COMM_ROUTER

军事特定

这种medium类型适用于wsf_mil中的以下通信模型:

  • WSF_JTIDS_TERMINAL

注意:删除medium会用该对象的默认medium类型及默认设置替换现有定义。

命令

propagation_speed <random-speed-reference>

解释

设置消息传播速度。

当此命令在mode块之外定义时,指定与该medium关联的“default”模式的传播速度。

默认值:c(光速常数)

命令

transfer_rate <random-data-rate-reference>

解释

设置该medium在设定时间内可以传输的数据量。

当此命令在mode块之外定义时,指定与该medium关联的“default”模式的传输速率。

默认值:-1(瞬时传输)

命令

packet_loss_time <random-time-reference>

解释

设置每次通过该medium传输时增加的延迟时间。虽然表示为由于数据包丢失导致的延迟,但此值可用于引入任何原因的正常传输时间延迟,或作为模拟多种传输延迟源的总延迟。

当此命令在mode块之外定义时,指定与该medium关联的“default”模式的数据包丢失时间。

默认值:0(无延迟)

命令

mode <mode-name> .. end_mode

解释

mode命令用于定义该medium的单个模式。可以重复多次,但每个模式必须具有唯一的字符串名称。任何给定模式的实际命令由所使用的medium类型确定。

注意:每个medium都有一个“default”模式。任何在mode块之外使用的典型模式命令都引用“default”模式。

通用非引导型媒介模型WSF_COMM_MEDIUM_UNGUIDED

medium <name> WSF_COMM_MEDIUM_UNGUIDED

   ... medium Commands ...

   ... WSF_COMM_MEDIUM_GUIDED Commands



   snr_transfer_rate_table ...

   bit_error_probability ...

   error_correction ...

   bit_error_rate_ebno_table ...



   mode <mode-name>

      ... WSF_COMM_MEDIUM_GUIDED Commands

      snr_transfer_rate_table ...

      bit_error_probability ...

      error_correction ...

      bit_error_rate_ebno_table ...

   end_mode



end_medium

WSF_COMM_MEDIUM_UNGUIDED 是一种通用的非引导型medium类型。非引导型medium是一种不受物理介质限制的medium,通常与使用电磁辐射传输信号相关。这种medium类型提供了在以前版本的AFSIM中常见的非引导medium的通用规范。

这种medium类型适用于AFSIM核心中的以下通信对象模型:

  • WSF_RADIO_RCVR
  • WSF_RADIO_XMTR
  • WSF_RADIO_TRANSCEIVER
  • WSF_COMM_ROUTER

注意:目前,路由器不允许基于硬件定义发射器或接收器。对于路由器使用非引导medium,将使用发起消息的通信设备的发射器/接收器功能。

军事特定

这种medium类型适用于wsf_mil中的以下通信模型:

  • WSF_SUBSURFACE_RADIO_RCVR
  • WSF_SUBSURFACE_RADIO_XMTR
  • WSF_SUBSURFACE_RADIO_TRANSCEIVER
  • WSF_LASER_RCVR
  • WSF_LASER_XMTR
  • WSF_LASER_TRANSCEIVER

注意:删除medium会用该对象的默认medium类型及默认设置替换现有定义。

命令

snr_transfer_rate_table <absolute-units><data-rate-units><SNR-value 1> <transfer-rate-value 1> … end_snr_transfer_rate_table

解释

指定一个将信噪比(SNR)值映射到消息传输速率的表格。SNR-Transfer-Rate表将进行插值。如果指定了表格,表格中的传输速率值将覆盖使用transfer_rate命令指定的值。

注意:SNR传输速率表与Eb/No vs BER表互斥。最后指定的将被使用。

默认值:无

示例

snr_transfer_rate_table

   dB bit/s

   0  100

   1  100

   2  90

   3  80

   4  40

   5  20

   55 10

   70 1

end_snr_transfer_rate_table

命令

bit_error_probability <real-value>

解释

可选参数,定义系统设计的比特错误率概率。用于从Eb/No vs BER表中选择Eb/No值。必须大于或等于零。

默认值:0.0

命令

error_correction <real-value>

解释

可选参数,确定在使用Eb/No计算数据速率时应用的错误校正量。必须在0.0和1.0之间。单位假定为dB。

默认值:0 dB

命令

bit_error_rate_ebno_table <absolute-units><ratio-units><BER-value 1> <Eb/No-value 1> … end_bit_error_rate_ebno_table

解释

可选表格,定义比特能量与谱噪声密度(Eb/No)与比特错误率(BER)之间的关系。与bit_error_probability和error_correction结合使用,以计算medium上的数据传输速率。使用此表时,数据速率 = SNR * 错误校正 * (带宽 / Eb/No)。比特错误率-EbNo表将进行插值。如果指定了表格,表格中的传输速率值将覆盖使用transfer_rate命令指定的值。

注意:表格中的值的单位是可选的,如果未输入,假定BER为无单位,Eb/No为dB。

注意:Eb/No vs BER表与SNR传输速率表互斥。最后指定的将被使用。

默认值:无

示例

bit_error_rate_ebno_table

  0.00000001 12

  0.0000001  11.3

  0.000001   10.3

  0.00001    9.5

  0.0001     8.3

  0.001      6.5

  0.01       4.3

  0.1        0

end_bit_error_rate_ebno_table

命令

mode <mode-name> .. end_mode

解释

mode命令用于定义该medium的单个模式。可以重复多次,但每个模式必须具有唯一的字符串名称。任何给定模式的实际命令由所使用的medium类型确定。

注意:每个medium都有一个“default”模式。任何在mode块之外使用的典型模式命令都引用“default”模式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值