CN115623494A - 基于ns3的多无人系统分布式组网仿真方法及系统 - Google Patents
基于ns3的多无人系统分布式组网仿真方法及系统 Download PDFInfo
- Publication number
- CN115623494A CN115623494A CN202211616692.3A CN202211616692A CN115623494A CN 115623494 A CN115623494 A CN 115623494A CN 202211616692 A CN202211616692 A CN 202211616692A CN 115623494 A CN115623494 A CN 115623494A
- Authority
- CN
- China
- Prior art keywords
- nodes
- unmanned system
- unmanned
- node
- virtual mapping
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W16/00—Network planning, e.g. coverage or traffic planning tools; Network deployment, e.g. resource partitioning or cells structures
- H04W16/18—Network planning tools
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B17/00—Monitoring; Testing
- H04B17/30—Monitoring; Testing of propagation channels
- H04B17/391—Modelling the propagation channel
- H04B17/3911—Fading models or fading generators
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B7/00—Radio transmission systems, i.e. using radiation field
- H04B7/14—Relay systems
- H04B7/15—Active relay systems
- H04B7/185—Space-based or airborne stations; Stations for satellite systems
- H04B7/18502—Airborne stations
- H04B7/18506—Communications with or from aircraft, i.e. aeronautical mobile service
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W16/00—Network planning, e.g. coverage or traffic planning tools; Network deployment, e.g. resource partitioning or cells structures
- H04W16/22—Traffic simulation tools or models
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/02—Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
- H04W84/04—Large scale networks; Deep hierarchical networks
- H04W84/06—Airborne or Satellite Networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Electromagnetism (AREA)
- Astronomy & Astrophysics (AREA)
- Aviation & Aerospace Engineering (AREA)
- General Physics & Mathematics (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种基于NS3的多无人系统分布式组网仿真方法及系统,通过在NS3中创建基站以及与多个无人系统节点一一对应的虚拟映射节点,基站可将各无人系统节点的控制信息发送给对应的虚拟映射节点,借助NS3中移动模型实现虚拟映射节点与无人系统节点的状态同步,同时借助NS3构建虚拟映射节点间的底层通信和信道衰落模型,进而可以实现各无人系统节点间底层通信仿真。解决现有的无人系统仿真系统无法实现底层通信仿真的问题。
Description
技术领域
本发明涉及网络仿真领域,尤其涉及一种基于NS3的多无人系统分布式组网仿真方法及系统。
背景技术
无人系统包含无人机、无人车、无人船等系统,一个真实的无人系统包括运动模块、控制器、通信模块等硬件,对应一个真实的载具实体。多无人系统集群组网在军事和民用领域都应用广泛,但是真实的多无人系统实验是非常困难的,这对组网算法和集群控制算法的开发带来了困难。所以,有必要开发一套面向多无人系统智能组网的仿真系统。
NS3是一款开源的离散时间网络仿真模拟器,应用于网络仿真领域,基于Linux的TCP/IP协议栈,提供了许多网络协议以及通信模型,也提供了大量的基类以及丰富的接口,具有易扩展、集成高的特点,研究人员可以根据自身需要对网络仿真,独立的设计网络各层算法和改善模型。
对于目前已有的无人系统而言,不论是硬件组成的,还是用无人系统仿真软件模拟的,它们都不具备底层通信的细节描述或网络仿真功能。发明人发现,想模拟它们之间的通信,可以借助NS3实现网络底层模拟,包括信道建模、各层协议开发、网络性能分析。此外,对于NS3而言,它的虚拟节点按照仿真开始时初始化的轨迹规则移动,仿真期间无法被人为分布调控,且它的可视化接口界面PyViz仅停留在二维,还需要考虑其扩展性以及与外界真实物理网络交互等问题。
发明内容
本发明提供了一种基于NS3的多无人系统分布式组网仿真方法及系统,以解决现有的无人系统仿真系统无法实现底层通信仿真的问题。
第一方面,提供了一种基于NS3的多无人系统分布式组网仿真方法,包括:
构建多个无人系统节点;
在NS3上创建基站及多个虚拟映射节点,所述多个虚拟映射节点与多个无人系统节点一一对应;
对基站、多个虚拟映射节点进行网络配置,并创建信道衰落模型,模拟多个无人系统节点间的通信;
基站通过物理网络接收多个无人系统节点发送的控制信息数据包并进行解析,并将解析后的控制信息发送给各自对应的虚拟映射节点;
各虚拟映射节点调用NS3内的移动模型,根据接收的控制信息完成虚拟映射节点与无人系统节点的状态同步;
根据各虚拟映射节点的状态及信道衰落模型实时判断各虚拟映射节点间的链路通断,实现多个无人系统节点间通信链路状态模拟。
根据第一方面,在一种可能的实现方式中,还包括:
将多个无人系统节点与构建的地面可视控制站和三维可视化引擎进行交互;
地面可视化控制站向多个无人系统节点发送控制信息,以及接收多个无人系统节点反馈的控制信息;
三维可视化引擎接收多个无人系统节点发送的控制信息进行三维可视化展示。
根据第一方面,在一种可能的实现方式中,多个无人系统节点与NS3中基站的通信方法如下:
若无人系统节点为无人系统仿真软件创建的模拟节点,通过无人系统仿真软件将每个无人系统节点的控制信息打包成数据包,通过向外通信的接口程序,在局域网内以UDP通信方式定时组播所有无人系统节点的数据包;
若无人系统节点为真实的系统节点,所有无人系统节点直接通过各自的数传模块与外界通信,同样在局域网内以UDP通信方式定时组播数据包;
为NS3中基站安装FdNetDevice网络设备,设定基站的IP、网关、子网掩码,将终端物理网卡的IP、网关、子网掩码设定与基站一致;将该基站加入组播网址,实现多个无人系统节点与NS3中基站的通信。
根据第一方面,在一种可能的实现方式中,每个虚拟映射节点均安装NS3内部通信的网络设备,分配合法的虚拟IP地址,并配置多个虚拟映射节点间的无线信道属性,选择路由协议和传输协议。
根据第一方面,在一种可能的实现方式中,控制信息至少包括ID、时间戳、速度、位置;解析后的控制信息根据ID发送给对应的虚拟映射节点。
根据第一方面,在一种可能的实现方式中,还包括:
将所有的无人系统节点的仿真初始时间进行同步;
将所有的虚拟映射节点的仿真初始时间进行同步。
根据第一方面,在一种可能的实现方式中,所述各虚拟映射节点调用NS3内的移动模型,根据接收的控制信息完成虚拟映射节点与无人系统节点的状态同步,包括:
根据接收的时间戳、速度、位置,计算位置偏差,估计预测位置,预测位置通过如下方法计算:
式中,tm为第m个控制信息数据包跨平台跨终端的时间误差为各无人系统节点
运行仿真时的初始时间戳,为NS3运行仿真时的初始时间戳,为无人系统节点发送的
第m个控制信息数据包中的时间戳,为NS3收到第m个控制信息数据包时的时间戳;为
第m个控制信息数据包中的速度,为第m个控制信息数据包中的位置;
各虚拟映射节点调用NS3中的移动模型,根据接收的速度以及预测位置控制各虚拟映射节点的移动及位置更新。
第二方面,提供了一种基于NS3的多无人系统分布式组网仿真系统,包括多无人系统及NS3系统;
所述多无人系统包括多个无人系统节点,通过物理网络与NS3系统进行通信,以将控制信息数据包发送给NS3系统;
所述NS3系统内构建有基站及多个虚拟映射节点,并实现网络配置,所述多个虚拟映射节点与多个无人系统节点一一对应;基站用于接收控制信息数据包并进行解析,并将解析后的控制信息发送给各自对应的虚拟映射节点;多个虚拟映射节点间通过网络配置及创建的信道衰落模型模拟多个无人系统节点间的通信;各虚拟映射节点还用于在接收到控制信息时调用NS3系统内的移动模型,实现虚拟映射节点与无人系统节点的状态同步;NS3系统根据各虚拟映射节点的状态及信道衰落模型实时判断各虚拟映射节点间的链路通断并进行展示。
根据第二方面,在一种可能的实现方式中,所述多无人系统还包括可与多个无人系统节点进行交互的地面可视控制站,地面可视控制站用于向多个无人系统节点发送控制信息以控制多个无人系统节点运动,以及接收多个无人系统节点反馈的控制信息。
根据第二方面,在一种可能的实现方式中,所述多无人系统还包括可与多个无人系统节点进行交互的三维可视化引擎,三维可视化引擎用于接收多个无人系统节点发送的控制信息进行三维可视化展示。
本发明提出了一种基于NS3的多无人系统分布式组网仿真方法及系统,通过在NS3中创建基站以及与多个无人系统节点一一对应的虚拟映射节点,基站可将各无人系统节点的控制信息发送给对应的虚拟映射节点,借助NS3中移动模型实现虚拟映射节点与无人系统节点的状态同步,同时借助NS3构建虚拟映射节点间的底层通信和信道衰落模型,进而可以实现各无人系统节点间底层通信仿真。该基于NS3的多无人系统分布式组网仿真方法及系统还具有以下优点:
(1)搭建了一个多无人系统分布式组网系统架构,可供后续开发;
(2)既实现了分布式仿真,又实现了真实网络与虚拟网络节点间映射;可供分布控制的无人系统节点,通过真实物理网络,映射到NS3各个虚拟映射节点,使NS3虚拟映射节点由其分布控制;
(3)NS3可以利用无人系统来扩展功能,如使用无人系统的三维可视化引擎;
(4)无人系统借助NS3,能进行底层通信仿真,研究TCP/IP的通信协议以及通信模型,包括但不限于信道模型建模、各层协议开发、网络性能分析;
(5)本发明具有良好的可扩展性,无人系统与NS3都具有与外部通信的能力,可以应用到大规模网络仿真中。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的无人系统节点、基站、虚拟映射节点示意图;
图2是本发明实施例提供的NS3内部虚拟节点移动与位置更新示意图;
图3是本发明实施例提供的NS3内部链路状态示意图;
图4是本发明实施例提供的多无人系统分布式组网仿真系统总框架图;
图5是本发明实施例提供的无人系统节点的数据收发示意图;
图6是本发明实施例提供的NS3框架示意图;
图7是本发明实施例提供的无人系统框架示意图;
图8是本发明实施例提供的基于NS3的多无人系统分布式组网仿真方法实验流程图;
图9是本发明实施例提供的实验设备连接示意图;
图10是本发明实施例提供的无人系统仿真软件示意图;
图11是本发明实施例提供的实验下NS3虚拟节点搭建与通信示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将对本发明的技术方案进行详细的描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本发明所保护的范围。
为了便于理解本发明的技术方案,下面结合附图先对NS3以及无人系统做简单的阐述。
如图6所示为NS3框架示意图。NS3中虚拟节点是一切协议和模块的载体,基于TCP/IP协议栈,可以安装应用层、传输层、网络层、链路层以及物理层,研究人员可以在NS3中独立的开发各层通信协议、研究各种通信模型。
NS3的虚拟节点:NS3中可以创建许多虚拟节点。虚拟节点基于TCP/IP协议栈,是模拟和实物节点拥有相同网络协议栈的节点,即无线传感器节点,可以类比为一台计算机。
NS3的信道:网络中数据流流过的媒介称为信道。在NS3中,可以把各个虚拟节点连接到代表数据交换信道的对象上,该对象称为NS3的信道。
NS3的网络设备:如果想把一台计算机连接到网络上,必须在计算机上安装有网卡。在Linux系统中,网卡通过网卡驱动程序来控制。在NS3中,网络设备这一抽象概念相当于硬件设备和软件驱动的总和,安装在虚拟节点上,从而使得虚拟节点像真实计算机一样,通过NS3信道与其他节点通信。
NS3的链路层的网络设备,它们可以分为以下三类:
FdNetDevice:安装此网络设备的虚拟节点,需要挂载到真实物理网卡或子网卡,可以通过真实网络与外界真实主机通信;
TapBridge:安装此网络设备的虚拟节点,会在本机中自动生成虚拟网卡,该网卡用于和本机协议栈通信;
NS3内部通信的网络设备:安装此网络设备的虚拟节点,仅能在NS3中与其他安装该设备的虚拟节点通信,属于NS3内部的虚拟通信。
如图7所示为无人系统的框架示意图。无人系统包括了无人机、无人车、无人船系统,一个无人系统可以理解为一个智能无人设备及其所依赖组件的总和。无人系统可以是硬件组成,应用于真实实验,例如无人机实机飞行测试。也可以是软件来模拟,进行理论性仿真,例如模拟无人机的仿真飞行测试。对于单个无人系统,它的能力受限。可以通过多无人系统组网、集群,根据任务分工,在一定时间、空间内协同完成复杂任务。
在上述基础上,本发明实施例提供了一种基于NS3的多无人系统分布式组网仿真系统,包括多无人系统及NS3系统;
所述多无人系统包括多个无人系统节点,通过物理网络与NS3系统进行通信,以将控制信息数据包发送给NS3系统;
所述NS3系统内构建有基站及多个虚拟映射节点,并实现网络配置,所述多个虚拟映射节点与多个无人系统节点一一对应;基站用于接收控制信息数据包并进行解析,并将解析后的控制信息发送给各自对应的虚拟映射节点;多个虚拟映射节点间通过网络配置及创建的信道衰落模型模拟多个无人系统节点间的通信;各虚拟映射节点还用于在接收到控制信息时调用NS3系统内的移动模型,实现虚拟映射节点与无人系统节点的状态同步;NS3系统根据各虚拟映射节点的状态及信道衰落模型实时判断各虚拟映射节点间的链路通断并进行展示。基于NS3的多无人系统分布式组网仿真系统整体架构如图4所示。
具体地,如图1所示,将每个无人系统作为一个无人系统节点,对于有N个无人系统,则对应有N个无人系统节点。收集所有无人系统节点的控制信息,这些控制信息包括但不限于ID、时间戳、速度(含x,y,z方向的三维向量)、位置(含x,y,z或经纬高的全局三维坐标),通过UDP向局域网内的其他IP组播控制信息数据包。在Linux运行的NS3系统上创建M个虚拟节点作为基站,基站具有数据收发的功能,将基站作为数据集中汇总单元,能够接收外部物理网络发送的信息,包括所有无人系统节点发送的控制信息数据包。在Linux运行的NS3系统上创建N个虚拟节点作为N个无人系统节点对应的虚拟映射节点,这种一对一映射关系可以理解为每个虚拟映射节点对其对应无人系统节点数据信息的克隆,在NS3系统内部,可以进行虚拟网络仿真,可以根据需要对基站、虚拟映射节点和NS3虚拟网络配置各种网络参数和通信协议,从而模拟无人系统节点间通信,而实际上无人系统节点之间并没有通信。
如图2所示,NS3系统中各虚拟映射节点的克隆信息间接由基站解析的数据得到,实际上所有虚拟映射节点的信息都来自无人系统节点发送的信息。每当基站收到一个无人系统节点的数据包时,NS3系统中的所有虚拟映射节点会根据解析得到的ID判断是自身是否为其对应的虚拟映射节点,若为对应的虚拟映射节点,则接收该控制信息数据包的速度、位置、时间戳等信息,估计位置误差,并采用NS3系统中自带的移动模型来更新自身速度和位置,完成一对一的映射。
如图3所示,其展示了多个无人系统节点间利用NS3系统来反映链路通断的功能。由于无人系统通信测试实验在真实环境下测试成本高、无人系统仿真软件一般也不具备底层通信仿真功能,这些导致无人系统节点很难模拟像室外这样复杂的通信环境,例如在信道方面,链路受距离、山地、树林等影响的通断与质量下降,而NS3具有能通过信道建模来仿真信道等功能。在图3中,连接两虚拟映射节点的信道链路受各种因素影响,当信道衰落到一定程度时,接收功率衰减到一定db时,链路将会断开。信道衰落模型可以由研究人员自行在NS3中设计与修改,也可以使用该平台已有的模型创建。
对于无人系统节点,既可以是硬件组成的真实存在的无人系统,对应一个真实的载具,也可以是无人系统仿真软件模拟的无人系统,对应一个虚拟的载具,区别在于前者的系统组成是硬件实物,后者的系统是通过软件来虚拟创建的。且无人系统节点需要具备但不限于以下基本条件:
(1)具有分布式控制自身运动的能力。例如真实无人系统的自驾仪,无人系统仿真软件控制其节点运动的进程。
(2)具有与外界真实物理网络通信的能力。例如真实无人系统用来通信的数传模块,无人系统仿真软件向外通信的接口。
(3)具有地面可视控制站接口。该接口可以让多个无人系统节点的运动由其统一调配控制。
(4)具备三维可视化界面接口。该接口可以克服NS3的可视化接口界面PyViz仅支持二维的缺陷,可以观察无人系统节点在三维逼真的空间里运动。
对于该基于NS3的多无人系统分布式组网仿真系统中的无人系统节点,还需进行以下处理:
(一)多个无人系统节点的时间同步
多个无人系统节点运行在不同的时钟下,而它们发出的所有数据需要集中发给作为数据集中汇总单元的基站来汇总,这就需要一个同步机制,将它们都统一在一个时间原点上。采用目前已有的一些时间同步工具,能将所有无人系统节点的仿真初始时间进行同步。
(二)无人系统节点的数据收发
对于单个无人系统节点而言,既要把控制信息(ID、时间戳、速度、位置等)传给NS3系统,还需要建立与地面可视控制站和三维可视化引擎的联系,也需要与外界物理网络通信,方便与外部其他依赖接口、平台交互。这样处理能使本实施例提供的仿真系统的扩展性进一步提高。
如图5所示,将无人系统节点的数据收发分为了:发送到NS3系统,与地面可视控制站和三维可视化引擎交互,与外部其他接口、平台交互。
1、发送到NS3系统
每个无人系统节点将自身的ID、时间戳、速度、位置等信息打包成数据包,向局域网内组播地址的指定端口组播该数据包。当NS3系统中作为数据集中汇总单元的基站加入组播地址,监听发送的端口,可以收到所有无人系统节点的数据包。
2、与地面可视控制站和三维可视化引擎交互
对于真实无人系统节点的地面可视控制站与三维可视化引擎,交互方式与NS3系统类似,实时通过组播接收所有无人系统节点的数据包,并进行统一显示。对于无人系统仿真软件,软件自身一般包含地面可视控制站和三维可视化引擎,与其交互属于进程间通信。当想对某一无人系统节点调配时,也可以直接通过地面可视控制站发送控制信息给该无人系统节点,控制其运动。
3、与外部其他接口、平台交互
每个无人系统节点都应具有向外收发数据的能力,各自为一个进程,能够向组播地址主机的接收端口发送数据,也能够接收来自组播地址主机发送端口发回的数据,从而建立与外部其他接口、平台的交互。
在一种可行的实施例中,无人系统节点与NS3系统通过如下方法实现通信:
对于无人系统节点,若无人系统节点为无人系统仿真软件创建的模拟节点,在电脑终端启动无人系统仿真软件,生成指定数目的无人系统节点,将每个节点控制信息打包成数据包,通过向外通信的接口程序,在局域网内以UDP方式定时组播所有节点的数据包,包括此时刻ID、时间戳、速度以及位置等信息。若无人系统节点为真实的系统节点,所有节点直接通过各自的数传模块与外界通信,同样以UDP方式定时组播数据包。
对于NS3系统,在NS3系统中创建一系列虚拟节点。令NS3系统中作为基站的虚拟节点绑定终端的物理网卡,该绑定为一对一绑定关系。绑定操作具体为:为NS3基站安装FdNetDevice网络设备,设定基站的IP、网关、子网掩码,将终端物理网卡的IP、网关、子网掩码设定与基站一致。经过基站与物理网卡绑定,该基站成为半实物节点,拥有与外界真实物理网络通信的能力。
最后,只要将该基站加入组播地址,接收所有无人系统节点发送端口的数据,就能通过UDP实现无人系统节点与NS3系统的通信。
在一种可行的实施例中,无人系统节点通过如下方式分布式控制NS3系统中虚拟映射节点:
NS3系统中作为数据集中汇总单元的基站实时监听局域网内其他无人系统节点发送的数据包。当基站监听到数据包后,解析该数据包。
根据ID,将解析后的数据分别对应传给各个虚拟映射节点,每个虚拟映射节点接收自己对应无人系统节点的数据,调用NS3系统中的移动模型,在NS3系统中不断调整自身运动速度以及位置,以此控制NS3系统中虚拟映射节点的移动与位置更新。
由于无人系统节点与NS3之间存在跨平台跨终端通信,有时间误差,从而使无人系统节点与虚拟映射节点的运动之间存在一定的位置误差,也即NS3系统在某一时刻接收到了无人系统节点的速度、位置等信息,该信息可能是无人系统节点前一时刻的速度、位置。所以,这就需要根据时间误差预测NS3系统中的运动位置。
预测位置的方法如下:
无人系统节点发送往NS3系统的数据里带有时间戳信息,包括无人系统节点当前
的时间戳,无人系统节点运行仿真时终端的初始时间戳(所有无人系统节点时间同步
后初始时间戳一致)。当NS3运行时,记录NS3仿真运行初始时间戳(所有NS3虚拟映射节点
初始时间戳一致);每当NS3收到一个数据包时,计算当前的时间戳。下标m代表第m个数据
包。
预测位置计算公式如下:
在一种可行的实施例中,NS3系统中链路通断的处理方法如下:
影响链路通断情况的因素是载具接收天线的功率,当接收功率小于某一阈值,则链路断开。在无线通信领域中,接收功率相对于发送功率会有很大程度的衰减,这是由于信道衰落造成的。
NS3中提供了多种信道衰落模型,为了演示信道随着距离变化而断开的情况,可以沿用NS3中的RangePropagationLossModel,它的功能如下:
当人为给定一个阈值后,当两个无人系统节点之间距离没有超过这个阈值,对应的虚拟映射节点之间距离将不会超过该阈值,接收功率相对发送功率没有任何衰减,而距离超过这个阈值,使接收功率功率骤减为无穷小,衰减为-1000db。
除此以外,NS3系统也有其他的信道衰落模型,如著名的自由空间衰落模(Friis)。当然,也可以在NS3系统中根据需要自行设计信道衰落模型进行信道建模。
在一种可行的实施例中,所述无人系统还包括可与多个无人系统节点进行交互的地面可视控制站,地面可视控制站用于向多个无人系统节点发送控制信息以控制多个无人系统节点运动,以及接收多个无人系统节点反馈的控制信息。地面可视控制站通过控制多个无人系统节点的运动进而实现控制虚拟映射节点的运动,从而在NS3系统中实现多个无人系统节点间通信链路通断的模拟。
在一种可行的实施例中,所述无人系统还包括可与多个无人系统节点进行交互的三维可视化引擎,三维可视化引擎用于接收多个无人系统节点发送的控制信息进行三维可视化展示。可以克服NS3系统的可视化接口界面PyViz仅支持二维的缺陷,可以观察无人系统节点在三维逼真的空间里运动。
基于上述提供的基于NS3的多无人系统分布式组网仿真系统,本发明实施例还提供了一种基于NS3的多无人系统分布式组网仿真方法,包括:
S1:构建多个无人系统节点;
S2:在NS3上创建基站及多个虚拟映射节点,所述多个虚拟映射节点与多个无人系统节点一一对应;
S3:对基站、多个虚拟映射节点进行网络配置,并创建信道衰落模型,模拟多个无人系统节点间的通信;
S4:基站通过物理网络接收多个无人系统节点发送的控制信息数据包并进行解析,并将解析后的控制信息发送给各自对应的虚拟映射节点;
S5:各虚拟映射节点调用NS3内的移动模型,根据接收的控制信息完成虚拟映射节点与无人系统节点的状态同步;
S6:根据各虚拟映射节点的状态及信道衰落模型实时判断各虚拟映射节点间的链路通断,实现多个无人系统节点间通信链路状态模拟。
其中,无人系统节点既可以是硬件组成的真实存在的无人系统,也可以是无人系统仿真软件模拟的无人系统。下面以无人系统仿真软件模拟的无人系统为例的实验对基于NS3的多无人系统分布式组网仿真方法做具体说明。
采用的是无人系统仿真软件模拟的无人系统节点与NS3虚拟映射节点通信。仿真过程在局域网环境为192.168.0.0下进行,采用了两台电脑终端,包括:Win10系统下运行的无人系统仿真软件,Ubuntu20.04系统下运行的NS3。
如图8所示的基于NS3的多无人系统分布式组网仿真方法实验流程图,首先在无人系统仿真软件上设计好载具模型和各个模块,模拟创建了多个仿真无人系统节点;在NS3上创建基站、虚拟映射节点。无人系统节点与基站通过UDP通信,基站接收到多个无人系统节点数据后将其分发给对应的虚拟映射节点,调用NS3的移动模型,完成无人系统节点与虚拟映射节点移动、位置同步。地面可视控制站可以控制无人系统节点移动,三维可视化引擎和NS3的二维可视化接口可以观察节点情况。选择信道衰落模型,本实验中使用了NS3中自带的RangePropagationLossModel模型,设定该模型阈值为50m,可以观察虚拟映射节点链路情况,从而判断无人系统节点的链路通断情况。
实验的具体实施步骤如下:
步骤1:建立NS3与无人系统仿真软件的物理连接。
由于通信位于不同的电脑终端上,所以需要经过物理网络,采用电脑终端有线连接的方式,能有效减小物理网络时延。
如图9所示,将路由器接入局域网环境下,用一根网线连接路由器的LAN口与交换机口,分别将Win10终端、Ubuntu20.04终端用网线连接到交换机口,使NS3电脑端与无人系统仿真软件电脑端处于同一局域网环境下,查看该局域网的IP为192.168.0.0。
关闭Win10终端和Ubuntu20.04终端防火墙,测试两台电脑是否能够ping通,直到能ping通为止。
步骤2:启动无人系统仿真软件。
如图10所示,在Win10终端启动无人系统仿真软件,利用该软件创建N个模拟的无人系统节点,利用NTP等工具可以将各个无人系统节点仿真的初始时间戳设置到同一起点,完成时间同步。打开仿真软件的地面可视控制站,可以通过该地面站控制无人系统节点的移动。打开仿真软件的三维可视化引擎,可以通过该可视界面观察无人系统节点模型的运动情况。
步骤3:NS3虚拟节点搭建与通信。
如图11所示为实验下NS3虚拟节点搭建与通信的示意图。在NS3上创建N+1个虚拟节点,其中令1个虚拟节点作为数据集中汇总的基站,假定初始化位置为(0,0,0),与外部无人系统仿真软件的无人系统节点通信,其他N个虚拟节点作为虚拟映射节点。
为该基站安装FdNetDevice网络设备,分配一个局域网中不存在且合法的虚拟IP地址,例如192.168.0.180,调整终端的物理网卡为混杂模式后,将终端物理网卡的IP、网关、子网掩码设定与基站一致。此时,基站与物理网卡绑定成为半实物节点,具有与外界真实物理网络通信的能力。为该基站安装应用程序,绑定端口号,例如20009,将IP192.168.0.180加入组播地址,令所有无人系统节点均向局域网内组播地址下20009端口实时发送数据包。
将其余N个虚拟映射节点安装NS3内部通信的网络设备,分配合法的虚拟IP地址。这些地址可以为任意合法IP地址,例如192.168.30.1~192.168.30.N,它们仅能在NS3内部做虚拟通信仿真。为了后续模拟链路通断情况,配置它们间的无线信道属性,均安装NS3内部通信网络设备,选择路由协议,传输协议采用UDP,并可自行调整网络参数。
步骤4:无人系统节点控制虚拟映射节点移动与位置更新。
NS3实时监听所有无人系统节点发送的数据包,当监听到带有控制信息的数据包到来时,解析该数据包,并根据数据包里的ID,将无人系统节点的速度、位置信息传给对应虚拟映射节点,同时,根据时间误差预测虚拟映射节点新的位置。有了速度、位置,虚拟映射节点调用NS3内置控制虚拟节点移动的ConstantVelocityMobilityModel模型,完成其移动与位置更新。
步骤5:测试无线链路的通断。
在NS3中能观察链路通断状态,以此模拟无人系统仿真软件中无人系统节点的链路通断情况。使用地面可视控制站控制各个无人系统节点向不同方向移动,此时NS3中虚拟映射节点将开始向不同方向移动,两者运动轨迹一致。在NS3中选择RangePropagationLossModel作为信道衰落模型,设定链路断开的阈值为50m。当无人系统仿真软件中任意两个无人系统节点间的距离超过该阈值,NS3中对应两虚拟映射节点间的链路断开,此时它们之间不能发生通信,如果此时在NS3中设置其中一个虚拟映射节点向对端虚拟映射节点发送数据包,则不可达。
实验测试:选取链路断开的距离阈值为50m测试,使用无人系统节点1与无人系统节点2,对应虚拟映射节点1和虚拟映射节点2。在NS3中分别为虚拟映射节点1(192.168.30.1)安装服务应用程序、虚拟映射节点2(192.168.30.2)安装发送应用程序。在虚拟映射节点2中发送一系列64B大小的数据包往虚拟映射节点1。在Win10电脑端地面站上控制无人系统节点1与无人系统节点2的距离小于50m,虚拟节点2不断发送一个64B大小的数据包给虚拟节点1,显示可达;地面站控制无人系统节点1与无人系统节点2的距离大于50m,虚拟节点2无法与虚拟节点1通信,发送的数据包不可达。实验测试的虚拟映射节点参数见表一,测试结果见表二。
可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种基于NS3的多无人系统分布式组网仿真方法,其特征在于,包括:
构建多个无人系统节点;
在NS3上创建基站及多个虚拟映射节点,所述多个虚拟映射节点与多个无人系统节点一一对应;
对基站、多个虚拟映射节点进行网络配置,并创建信道衰落模型,模拟多个无人系统节点间的通信;
基站通过物理网络接收多个无人系统节点发送的控制信息数据包并进行解析,并将解析后的控制信息发送给各自对应的虚拟映射节点;
各虚拟映射节点调用NS3内的移动模型,根据接收的控制信息完成虚拟映射节点与无人系统节点的状态同步;
根据各虚拟映射节点的状态及信道衰落模型实时判断各虚拟映射节点间的链路通断,实现多个无人系统节点间通信链路状态模拟。
2.根据权利要求1所述的基于NS3的多无人系统分布式组网仿真方法,其特征在于,还包括:
将多个无人系统节点与构建的地面可视控制站和三维可视化引擎进行交互;
地面可视化控制站向多个无人系统节点发送控制信息,以及接收多个无人系统节点反馈的控制信息;
三维可视化引擎接收多个无人系统节点发送的控制信息进行三维可视化展示。
3.根据权利要求1或2所述的基于NS3的多无人系统分布式组网仿真方法,其特征在于,多个无人系统节点与NS3中基站的通信方法如下:
若无人系统节点为无人系统仿真软件创建的模拟节点,通过无人系统仿真软件将每个无人系统节点的控制信息打包成数据包,通过向外通信的接口程序,在局域网内以UDP通信方式定时组播所有无人系统节点的数据包;
若无人系统节点为真实的系统节点,所有无人系统节点直接通过各自的数传模块与外界通信,同样在局域网内以UDP通信方式定时组播数据包;
为NS3中基站安装FdNetDevice网络设备,设定基站的IP、网关、子网掩码,将终端物理网卡的IP、网关、子网掩码设定与基站一致;将该基站加入组播网址,实现多个无人系统节点与NS3中基站的通信。
4.根据权利要求1或2所述的基于NS3的多无人系统分布式组网仿真方法,其特征在于,每个虚拟映射节点均安装NS3内部通信的网络设备,分配合法的虚拟IP地址,并配置多个虚拟映射节点间的无线信道属性,选择路由协议和传输协议。
5.根据权利要求1或2所述的基于NS3的多无人系统分布式组网仿真方法,其特征在于,控制信息至少包括ID、时间戳、速度、位置;解析后的控制信息根据ID发送给对应的虚拟映射节点。
6.根据权利要求5所述的基于NS3的多无人系统分布式组网仿真方法,其特征在于,还包括:
将所有的无人系统节点的仿真初始时间进行同步;
将所有的虚拟映射节点的仿真初始时间进行同步。
7.根据权利要求6所述的基于NS3的多无人系统分布式组网仿真方法,其特征在于,所述各虚拟映射节点调用NS3内的移动模型,根据接收的控制信息完成虚拟映射节点与无人系统节点的状态同步,包括:
根据接收的时间戳、速度、位置,计算位置偏差,估计预测位置,预测位置通过如下方法计算:
式中,tm为第m个控制信息数据包跨平台跨终端的时间误差,为各无人系统节点运行
仿真时的初始时间戳,为NS3运行仿真时的初始时间戳,为无人系统节点发送的第m个
控制信息数据包中的时间戳,为NS3收到第m个控制信息数据包时的时间戳;为第m个
控制信息数据包中的速度,为第m个控制信息数据包中的位置;
各虚拟映射节点调用NS3中的移动模型,根据接收的速度以及预测位置控制各虚拟映射节点的移动及位置更新。
8.一种基于NS3的多无人系统分布式组网仿真系统,其特征在于,包括多无人系统及NS3系统;
所述多无人系统包括多个无人系统节点,通过物理网络与NS3系统进行通信,以将控制信息数据包发送给NS3系统;
所述NS3系统内构建有基站及多个虚拟映射节点,并实现网络配置,所述多个虚拟映射节点与多个无人系统节点一一对应;基站用于接收控制信息数据包并进行解析,并将解析后的控制信息发送给各自对应的虚拟映射节点;多个虚拟映射节点间通过网络配置及创建的信道衰落模型模拟多个无人系统节点间的通信;各虚拟映射节点还用于在接收到控制信息时调用NS3系统内的移动模型,实现虚拟映射节点与无人系统节点的状态同步;NS3系统根据各虚拟映射节点的状态及信道衰落模型实时判断各虚拟映射节点间的链路通断并进行展示。
9.根据权利要求8所述的基于NS3的多无人系统分布式组网仿真系统,其特征在于,所述多无人系统还包括可与多个无人系统节点进行交互的地面可视控制站,地面可视控制站用于向多个无人系统节点发送控制信息以控制多个无人系统节点运动,以及接收多个无人系统节点反馈的控制信息。
10.根据权利要求8所述的基于NS3的多无人系统分布式组网仿真系统,其特征在于,所述多无人系统还包括可与多个无人系统节点进行交互的三维可视化引擎,三维可视化引擎用于接收多个无人系统节点发送的控制信息进行三维可视化展示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211616692.3A CN115623494B (zh) | 2022-12-16 | 2022-12-16 | 基于ns3的多无人系统分布式组网仿真方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211616692.3A CN115623494B (zh) | 2022-12-16 | 2022-12-16 | 基于ns3的多无人系统分布式组网仿真方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115623494A true CN115623494A (zh) | 2023-01-17 |
CN115623494B CN115623494B (zh) | 2023-03-14 |
Family
ID=84879773
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211616692.3A Active CN115623494B (zh) | 2022-12-16 | 2022-12-16 | 基于ns3的多无人系统分布式组网仿真方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115623494B (zh) |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016015311A1 (en) * | 2014-07-31 | 2016-02-04 | SZ DJI Technology Co., Ltd. | System and method for enabling virtual sightseeing using unmanned aerial vehicles |
CN105472632A (zh) * | 2015-11-18 | 2016-04-06 | 中国电子科技集团公司第三十研究所 | 一种模拟无线网络的构建方法、装置和系统 |
CN109217956A (zh) * | 2018-08-14 | 2019-01-15 | 南京航空航天大学 | 一种无人机电磁干扰通信环境半物理仿真方法及装置 |
CN111585665A (zh) * | 2020-05-11 | 2020-08-25 | 重庆惟觉科技有限公司 | 一种基于模拟终端的网络训练系统 |
EP3751755A1 (en) * | 2019-06-14 | 2020-12-16 | Dimetor GmbH | Apparatus and method for guiding unmanned aerial vehicles |
CN112327667A (zh) * | 2020-11-10 | 2021-02-05 | 南京大学 | 面向大规模无人集群网络的半实物仿真要素设计方法 |
CN112564767A (zh) * | 2020-11-30 | 2021-03-26 | 北京邮电大学 | 无人机网络中基于自组织优化协作的连续覆盖方法 |
CN112787737A (zh) * | 2020-12-31 | 2021-05-11 | 中国人民解放军海军工程大学 | 一种多移动节点组网通信信道建模系统 |
CN113219857A (zh) * | 2021-05-31 | 2021-08-06 | 中国人民解放军国防科技大学 | 一种无人系统集群网络通信仿真方法及装置 |
CN113301532A (zh) * | 2021-05-26 | 2021-08-24 | 中南大学 | 一种用于无人机辅助毫米波应急通信网的信道分配方法 |
CN114070439A (zh) * | 2021-11-15 | 2022-02-18 | 北京中科晶上科技股份有限公司 | 一种虚实结合的信道映射方法及装置、信道映射系统 |
CN114599069A (zh) * | 2022-03-04 | 2022-06-07 | 河北师范大学 | 一种基于能量自收集的水下无线传感器网络路由方法 |
CN114697248A (zh) * | 2022-03-30 | 2022-07-01 | 北京理工大学 | 无人机信息攻击半实物测试系统及方法 |
-
2022
- 2022-12-16 CN CN202211616692.3A patent/CN115623494B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016015311A1 (en) * | 2014-07-31 | 2016-02-04 | SZ DJI Technology Co., Ltd. | System and method for enabling virtual sightseeing using unmanned aerial vehicles |
CN105472632A (zh) * | 2015-11-18 | 2016-04-06 | 中国电子科技集团公司第三十研究所 | 一种模拟无线网络的构建方法、装置和系统 |
CN109217956A (zh) * | 2018-08-14 | 2019-01-15 | 南京航空航天大学 | 一种无人机电磁干扰通信环境半物理仿真方法及装置 |
EP3751755A1 (en) * | 2019-06-14 | 2020-12-16 | Dimetor GmbH | Apparatus and method for guiding unmanned aerial vehicles |
CN111585665A (zh) * | 2020-05-11 | 2020-08-25 | 重庆惟觉科技有限公司 | 一种基于模拟终端的网络训练系统 |
CN112327667A (zh) * | 2020-11-10 | 2021-02-05 | 南京大学 | 面向大规模无人集群网络的半实物仿真要素设计方法 |
CN112564767A (zh) * | 2020-11-30 | 2021-03-26 | 北京邮电大学 | 无人机网络中基于自组织优化协作的连续覆盖方法 |
CN112787737A (zh) * | 2020-12-31 | 2021-05-11 | 中国人民解放军海军工程大学 | 一种多移动节点组网通信信道建模系统 |
CN113301532A (zh) * | 2021-05-26 | 2021-08-24 | 中南大学 | 一种用于无人机辅助毫米波应急通信网的信道分配方法 |
CN113219857A (zh) * | 2021-05-31 | 2021-08-06 | 中国人民解放军国防科技大学 | 一种无人系统集群网络通信仿真方法及装置 |
CN114070439A (zh) * | 2021-11-15 | 2022-02-18 | 北京中科晶上科技股份有限公司 | 一种虚实结合的信道映射方法及装置、信道映射系统 |
CN114599069A (zh) * | 2022-03-04 | 2022-06-07 | 河北师范大学 | 一种基于能量自收集的水下无线传感器网络路由方法 |
CN114697248A (zh) * | 2022-03-30 | 2022-07-01 | 北京理工大学 | 无人机信息攻击半实物测试系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN115623494B (zh) | 2023-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Cheng et al. | A comprehensive simulation platform for space-air-ground integrated network | |
Baidya et al. | FlyNetSim: An open source synchronized UAV network simulator based on ns-3 and ardupilot | |
CN106571956B (zh) | 卫星组网路由协议仿真系统及方法 | |
CN112327667B (zh) | 面向大规模无人集群网络的半实物仿真要素设计方法 | |
Ahrenholz et al. | CORE: A real-time network emulator | |
CN110266368B (zh) | 基于云平台的天地一体化信息网络仿真方法 | |
Calvo-Fullana et al. | Ros-netsim: A framework for the integration of robotic and network simulators | |
Acharya et al. | Cornet: A co-simulation middleware for robot networks | |
CN112115589B (zh) | 基于VR-Force和OPNET的联合仿真系统及方法 | |
CN113219857B (zh) | 一种无人系统集群网络通信仿真方法及装置 | |
CN105357039A (zh) | 一种时延容忍网络的仿真方法及装置 | |
CN114697248B (zh) | 无人机信息攻击半实物测试系统及方法 | |
Wang et al. | Cloud‐Based Experimental Platform for the Space‐Ground Integrated Network | |
Ghosh et al. | Sdn-sim: Integrating a system-level simulator with a software defined network | |
CN114063468A (zh) | 一种适用于无线自组网半实物仿真系统的数据交互方法 | |
CN115623494B (zh) | 基于ns3的多无人系统分布式组网仿真方法及系统 | |
CN115378491B (zh) | 一种面向超密leo巨星座的轻量化网络仿真方法 | |
CN115242655B (zh) | 基于容器的星座网络仿真方法、装置、设备及存储介质 | |
CN116455448A (zh) | 一种适用于空间路由算法研究的轻量级软件仿真系统 | |
CN114071529B (zh) | 基于Exata与Docker的无线网络仿真方法 | |
CN114614917A (zh) | 一种无线通信链路模拟系统及方法 | |
Liang et al. | Research on simulation technology for space-ground integrated network | |
Ding et al. | Joint communication quality assurance algorithm for UAVs flying over urban LTE networks | |
Modares et al. | Realistic network simulation in the ub-anc aerial vehicle network emulator | |
Voronov et al. | Interactive test tool for interoperable C-ITS development |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |