1. 跟踪器(Tracker)
主要功能:
- 数据获取与监控:跟踪器通常负责从多个来源(如传感器、飞行器的状态等)实时获取数据。这些数据可以包括位置、速度、高度、姿态和其他与飞行相关的参数。
- 状态更新:跟踪器根据获得的数据不断更新对象的状态。在飞行仿真中,这可以涉及对飞行器、导弹或其他空中目标的实时位置和状态进行更新。
- 目标跟踪:跟踪器在多个目标之间进行管理,能够识别并跟踪多个飞行器或物体,并处理它们的位置和状态变化。
- 数据融合:若涉及多个传感器,跟踪器会执行数据融合,将来自不同传感器获取的数据整合成一致的信息,提高跟踪的精度。
应用示例:
在空中交通管理系统中,跟踪器会接收来自雷达、GPS等设备的数据,实时计算飞行器的位置,并确保在仿真环境中正确地表现出来。
2. 处理器(Processor)
主要功能:
- 数据处理与分析:处理器接收来自跟踪器和其他输入的原始数据,执行必要的计算和分析,以生成所需的输出。处理可能包括算法运算、数据过滤和格式转换等。
- 决策支持:处理器可以根据仿真环境中所需的目标(如飞行任务、导航决策等)做出实时决策。这可以涉及对飞机的航线制定、避障决策等。
- 逻辑控制:处理器管理仿真系统的逻辑控制,包括状态机、自适应算法等,以确保系统按预定的逻辑路径执行任务。
- 与其他模块的交互:处理器通常会和其他仿真组件(如显示模块、输入控制模块等)交互,协调各个部分的工作。
应用示例:
在飞行仿真中,处理器会根据跟踪器提供的飞行器状态计算出飞行路径,确定最佳的航线,并实时更新飞机的控制指令。
总结
- 跟踪器集成和管理数据,确保实时监测和状态更新。
- 处理器负责分析、决策和执行逻辑,以确保仿真系统的高效运行。
总体而言,这两个组件相辅相成,一个提供实时数据跟踪与状态管理,另一个则负责数据处理与决策支持,携手工作,共同保证仿真系统的准确性和高效性。通过有效的跟踪和处理,AFSim 系统能够提供真实且可靠的飞行仿真体验。
此时的代码结构

平台界面: 供参考

代码解释:
代码继续 AFSim 基础总结一 代码总结(1),如果想运行 整个代码,请先了解 总结1
其中跟踪部分:无新增代码。
处理器相关
在 cargo_aircraft.txt 文件中增加
# cargo_aircraft.txt
# A component of the simple_flight demo
########### 本次增加1 开始 ###########
include_once track_processor.txt
########### 本次增加1 结束 ###########
radar_signature CARGO_AIRCRAFT_RADAR_SIG
constant 10 m^2
end_radar_signature
sensor AIR_RADAR WSF_GEOMETRIC_SENSOR
frame_time 5 sec
maximum_range 30 nm
reports_location
reports_bearing
reports_side
reports_velocity
azimuth_field_of_view -45.0 deg 45.0 deg
elevation_field_of_view -15.0 deg 15.0 deg
ignore_same_side
on
end_sensor
platform_type CARGO_AIRCRAFT WSF_PLATFORM
icon c130
spatial_domain air
category cargo
########### 本次增加2 开始 ###########
add processor track_proc TRACK_MANAGER
purge_interval 15 sec ### 这行和下面一行,官方文档未添加,作者添加,为了解释代码,
report_interval 2.5 sec ### 但是官方说明中有添加(知道意思就可以了)
end_processor
add processor task_mgr CARGO_TASK_MANAGER
end_processor
########### 本次增加2 结束 ###########
mover WSF_AIR_MOVER
update_interval 3 sec
end_mover
radar_signature CARGO_AIRCRAFT_RADAR_SIG
add sensor cargo_radar AIR_RADAR
internal_link track_proc
end_sensor
end_platform_type
track_processor.txt
# File generated by Wizard 2.9.0 on Oct 22, 2024.
processor TRACK_MANAGER WSF_TRACK_PROCESSOR
master_track_processor
purge_interval 10 sec
report_interval 3 sec
end_processor
processor CARGO_TASK_MANAGER WSF_TASK_PROCESSOR
update_interval 10 sec
end_processor
定义两个处理器的配置,可用于某个系统(如数据处理或事件管理系统)的追踪和任务管理。下面是对这段代码的逐行解释:
-
文件生成信息:
# File generated by Wizard 2.9.0 on Oct 22, 2024.
这行是一个注释,表明此文件是由版本为2.9.0的某个工具(可能是一个代码生成器或设置向导)生成的,生成日期为2024年10月22日。
-
第一个处理器定义:
processor TRACK_MANAGER WSF_TRACK_PROCESSOR
定义了一个名为
TRACK_MANAGER
的处理器,类型为WSF_TRACK_PROCESSOR
。-
master_track_processor:
这是此处理器的一个标识或配置,具体作用涉及管理主追踪进程。 -
purge_interval 10 sec:
此配置项表示每10秒触发一次清除操作,用于定期清理缓存或不再需要的数据。 -
report_interval 3 sec:
此配置项表示每3秒生成一次报告,可能用于记录或监控活动。
end_processor
标记此处理器定义的结束。
-
-
第二个处理器定义:
processor CARGO_TASK_MANAGER WSF_TASK_PROCESSOR
定义了另一个名为
CARGO_TASK_MANAGER
的处理器,类型为WSF_TASK_PROCESSOR
。- update_interval 10 sec:
这里表示该处理器每10秒进行一次更新,可能涉及处理与货物相关的任务。
end_processor
标记此处理器定义的结束。
- update_interval 10 sec:
综上所述,这段代码定义了两个处理器:一个用于跟踪管理及定期报告,另一个用于处理货物任务并定期更新。这种结构可以用于监控实时系统中的任务和数据,确保及时更新和维护。
cargo_aircraft.txt 中本次添加如下
########### 本次增加2 开始 ###########
add processor track_proc TRACK_MANAGER
purge_interval 15 sec ### 这行和下面一行,官方文档未添加,作者添加,为了解释代码,
report_interval 2.5 sec ### 但是官方说明中有添加(知道意思就可以了)
end_processor
add processor task_mgr CARGO_TASK_MANAGER
end_processor
########### 本次增加2 结束 ###########
代码分解和详解
add processor track_proc TRACK_MANAGER
- 含义:
add processor
:此关键字用于在仿真系统中添加一个新的处理器(processor)。track_proc
:这是新处理器的名称。它将用于在其他代码部分引用该处理器。TRACK_MANAGER
:表示要添加的处理器的类型或类别。TRACK_MANAGER
是系统中 track_processor.txt预定义的一个处理器类型,负责管理和更新跟踪数据。
purge_interval 15 sec
- 含义:
purge_interval
:这是一个属性设置,指定处理器在进行数据清理(purge)操作的时间间隔。15 sec
:表示清理操作将在每 15 秒执行一次。这意味着处理器将定期删除过时的数据,以避免过度消耗内存或处理器资源。
report_interval 2.5 sec
- 含义:
report_interval
:这是另一个属性设置,指定处理器生成报告的时间间隔。2.5 sec
:表示处理器将在每 2.5 秒生成一次报告。报告可能包括当前状态、跟踪信息或其他处理器生成的有用数据。
end_processor
- 含义:
end_processor
:这一行表示处理器定义的结束。所有与track_proc
相关的设置都在这一行之前完成,之后可以继续定义其他处理器或模块。
add processor task_mgr CARGO_TASK_MANAGER
- 含义:
add processor
:同样地,用于添加一个新的处理器。task_mgr
:这是新处理器的名称,用于后续引用。CARGO_TASK_MANAGER
:表示要添加的处理器的类型或类别。在这种情况下,这个处理器可能负责管理和调度与货物相关的任务或操作。
end_processor
- 含义:
end_processor
:表示task_mgr
处理器定义的结束,之后可以继续进行其他定义。
总结
这段代码在 AFSim 框架中定义了两个处理器:一个是跟踪器管理器 (TRACK_MANAGER
),另一个是货物任务管理器 (CARGO_TASK_MANAGER
)。每个处理器都有其特定的管理任务,例如跟踪和数据清理、报告生成等。这些设定帮助构建一个有序和高效的仿真环境,确保仿真过程中的数据处理与任务调度得以有效执行。