2019-03-25 11:35:23 +08:00
|
|
|
|
注意事项:
|
|
|
|
|
1、针对G+R架构下Gazebo7.14上运行30架Hector四旋翼无人机达不到1的情况,基于程序插桩技术,得到Gazebo仿真运行瓶颈——模型预处理模块,该模块由Gazebo事件机制实现。
|
|
|
|
|
2、针对该模块采用并行技术进行优化,并行手段包括OpenMp、TBB、线程池、C++11Thtead。在sdformat包中增加<parallel method=1 numbers_of_thread=20 size_of_block=0 type=0 />标签用于设置并行参数。其中parallel标签各属性含义如下:
|
|
|
|
|
numbers_of_thread: 使用OpenMp、C++11Thread、线程池优化时指定的线程数量
|
|
|
|
|
method:
|
|
|
|
|
0 串行
|
|
|
|
|
1至5 OPENMP优化(设置为1即可)
|
|
|
|
|
6 线程池优化(该功能暂时屏蔽)
|
|
|
|
|
7 使用C++11线程进行并行
|
|
|
|
|
8 使用TBB进行并行,此时size_of_block表示TBB分块参数,type表示分类器(0:auto_partitioner 1: affinity_partitioner 2: simple_partitioner)
|
|
|
|
|
3、针对Gazebo仿真图像感知功能对Gazebo仿真仿真性能产生较大影响的情况,将Gazebo仿真计算与Gazebo图像感知分离,增加<distributed type=0 ip="192.168.1.4" port=8888 flag=0 />标签,用于设置分布式架构下仿真同步参数。其中distributed标签各属性含义如下:
|
|
|
|
|
flag:
|
|
|
|
|
0 不启用图像感知分离功能
|
|
|
|
|
1 启用图像感知分离功能
|
|
|
|
|
type:
|
|
|
|
|
0 gazebo为仿真计算端
|
|
|
|
|
1 gazebo为图像感知端
|
|
|
|
|
ip: 图像感知分离情况下远端的IP
|
|
|
|
|
port: 图像感知分离情况下远端的端口
|
|
|
|
|
4、编译安装sdformat包后,需要将sdformat包下sdf文件夹下1.*(1.0、1.2、1.3、1.4、1.5、1.6)标签库拷贝到/usr/share/sdformat目录下。
|
|
|
|
|
5、利用cmake编译gazebo期间,可能会出现依赖库缺失的情况,需利用sudo apt install或源码方式进行缺失依赖库的安装。
|