变电站无人机自主巡检仿真系统设计与搭建

2022-08-18 08:07付国萍田小壮刘家辛王伟光王正武高小伟
电力学报 2022年3期
关键词:栅格变电站节点

付国萍,田小壮,刘家辛,王伟光,王正武,李 松,高小伟,王 祝

(1.国网新疆电力有限公司 超高压分公司,乌鲁木齐 830001;2.北京御航智能科技有限公司,北京 100193;3.华北电力大学 自动化系,河北 保定 071003)

0 引言

电力系统的稳定与国民经济的正常运作密切相关,运维工作对保证电力系统稳定具有重要意义。随着无人机及传感技术的发展,无人机巡检开始被应用于变电站、输配电线路等实际环境中[1]。其中,如何实现安全、自主、快速的巡检,是变电站巡检无人机研究的核心问题。文献[2]分析了当前变电站巡检存在的问题,对变电站无人机巡检模式进行了探讨;文献[3]开展了变电站三维重建技术研究,为变电站运维提供了三维可视化支撑;文献[4]提出了一种基于编码标志的自主定位方法,实现了厘米级定位,为巡检无人机自主避障提供了支撑;文献[5]开展了边缘计算框架设计和资源调度方法研究,可以在计算资源约束下快速发现设备缺陷。

变电站无人机巡检技术当前主要集中在对应用方案的探讨以及定位导航、任务调度等算法的研究上,由于试验条件的限制,相关技术研究难以开展实际测试。为了便于对变电站无人机巡检系统相关功能、模式、算法进行验证,本文基于ROS(Robot Operating System)、PX4 和Gazebo 平台搭建变电站无人机自主巡检仿真系统,实现对无人机建图定位、路径规划、飞行控制等功能的仿真测试,以降低无人机巡检系统用于实际任务时的风险。

1 仿真系统架构设计

变电站无人机自主巡检仿真系统的系统架构如图1 所示,其主要由ROS 导航仿真模块、PX4 无人机控制软件的在环仿真(Software in the Loop,SITL)模块、Gazebo 三维物理仿真模块三个部分组成。其中,ROS仿真模块主要包括状态估计节点以及路径规划节点;Gazebo 仿真模块主要包括变电站三维环境模型、无人机运动仿真模型和传感器仿真模型;PX4_SITL 模块主要包括无人机的姿态控制器、位置控制器和路径导航控制器。

图1 变电站无人机自主巡检仿真系统架构Fig.1 Simulation system structure of autonomous quadrotor inspection for substations

仿真系统中不同模块间的信息交互关系如图2 所示。其中,ROS 模块和PX4_SITL 模块之间利用mavlink 和mavros 实现数据交互;PX4_SITL 模块和Gazebo 模块之间利用simulator_mavlink 和mavlink_API 实现数据交互;ROS 模块和Gazebo 模块之间通过Gazebo_ROS_API 实现数据交互。

图2 仿真系统各模块间的信息交互关系Fig.2 Communications among different modules of the simulation system

变电站无人机自主巡检仿真系统运行时,各模块间的数据交互情况如下。Gazebo 中的无人机运动仿真模型和传感器仿真模型提供无人机位姿和激光雷达等传感器数据。其中,位姿估计值通过mavlink_API 发送给PX4_SITL,位姿真实值和雷达数据通过Gazebo_ROS_API 发送给ROS。ROS 中的状态估计节点订阅“/gazebo”节点发布的无人机位置与“/mavros”节点发布的无人机IMU(Inertial Measurement Unit)数据进行状态估计;路径规划节点订阅“/gazebo”节点发布的传感器数据,构建环境栅格地图;同时,订阅状态估计节点发布的无人机姿态规划出无人机的巡检路径。PX4_SITL 模块通过mavlink 接收ROS 发送的路径规划结果和Gazebo 发送的无人机位姿,解算电机转速形成控制指令,并将此指令通过simulator_mavlink 发送至Gazebo 的无人机运动仿真模型,改变无人机电机转速,进而实现无人机在Gazebo 中自主巡检飞行。

2 主要模块的功能与方案

本节对变电站无人机巡检仿真系统的主要组成模块进行阐述,包括各模块的功能、内部组成、接口关系和实现方案等。

2.1 基于ROS 的无人机导航仿真模块

为了实现导航仿真模块的快速搭建、提高该模块的兼容性,采用ROS 提供的导航工具包,实现无人机变电站巡检过程的自主导航。ROS 是一个适用于机器人开发的开源元操作系统,在无人机、无人车、机械臂等机器人领域得到了广泛应用[6]。ROS 采用分布式的设计架构,将机器人的功能模块封装成节点(Node),不同节点之间通过消息(Topic)、服务(Service)、动作(Action)实现信息交互。在变电站无人机自主巡检仿真系统中,设计的无人机导航仿真模块主要包括状态估计节点和路径规划节点。

(1)状态估计节点。

状态估计节点根据获取的传感器数据,估计出无人机在环境中的位置和姿态信息。例如,可利用GPS(Global Positioning System,GPS)估计无人机的绝对位置,也可以根据相机、激光雷达等传感器数据估计无人机在环境中的相对位置;无人机的姿态信息可通过惯性传感器测量得到,也可根据相机或雷达数据通过状态估计获得。在构建的巡检仿真系统中,基于Gazebo 平台提供的真实数据和无人机IMU 的数据,通过滤波融合估计出无人机的位置和姿态。状态估计节点为了获得无人机状态融合的输入数据,可利用Gazebo 的Truth 插件获得无人机在Gazebo 世界中的真实位置,同时订阅mavros 节点所发布的“/mavros/imu/data”话题获得无人机的姿态四元数数据,最后将状态估计节点对位置与姿态数据进行滤波融合,并将结果发布至mavros 节点的“/mavros/vision_pose/pose”话题。

(2)路径规划节点。

路径规划节点的功能主要包括地图构建和路径搜索。环境地图是无人机进行自主导航的基础,目前常见的地图类型有点云地图、栅格地图和拓扑地图等。在构建的巡检仿真系统中,通过构建栅格地图对环境进行描述。仿真系统中构建栅格地图的步骤如下。

第一步:初始化栅格空间。根据变电站的尺寸和实际任务要求,设定合适的分辨率R,构建均匀分割的三维栅格空间,并将各个栅格对应的占据状态初始化为0。

第二步:构建栅格地图。根据激光雷达获取的变电站点云信息,为栅格空间的各个单元进行赋值,完成占据栅格地图的构建。即根据点云在栅格地图的投影,将有点云投影存在的栅格占据状态更新为1,表示此单元被障碍物所占据。

第三步:变电站设备所占空间膨胀。考虑到无人机与变电站设备间的安全距离要求,为了保证无人机的飞行安全,在前述栅格地图结果上,对设备所占据空间进行膨胀处理,即将设备周围的栅格占据状态也赋值为1,使得无人机的飞行路径与设备实际占据空间保留一定的安全距离。

在完成地图构建的基础上,为了避免无人机在巡检过程中与设备相撞,且尽可能使得巡检路径最短,需要利用路径搜索算法规划从起点到目标点的可行路径。本文中基于A*算法实现路径规划,A*算法是一种启发式搜索算法,它通过启发式函数来引导搜索方向,使得扩展节点规模下降,同时找到全局最优路径。A*算法的代价函数f(n)由g(n)和h(n)两部分组成,g(n)表示起始节点到节点n的真实代价,h(n)表示节点n到目标节点的估计代价。在仿真系统中,g(n)和h(n)分别使用欧式距离公式和对角距离公式计算得到。规划起点即无人机当前位置通过订阅状态估计节点得到,路径规划结果则通过向“mavros/setpoint_position/local”话题发布期望位置信息传递给mavros 节点。

2.2 基于PX4_SITL 的无人机控制仿真模块

无人机控制器仿真基于PX4_SITL 实现,PX4_SITL 内部使用PX4 作为无人机的控制软件。PX4 是一款开源的专业级飞控软件,其结构主要包括两层:(1)用于状态估计和控制的飞行控制栈;(2)处理输入/输出通信和硬件集成的中间件[7]。PX4 采用响应式设计,不同功能被分割成可替换、可复用的部件,系统异步并行运行,能够适应不同的负载情况。由于PX4_SITL 采用PX4 作为控制内核,而PX4 可以直接应用于实际的无人机飞行控制,因此基于PX4_SITL 搭建控制仿真模块,能够很好地模拟实际无人机飞行时的控制性能[8]。

无人机控制仿真主要利用了PX4_SITL 的姿态控制、位置控制和路径控制功能。路径控制器根据A*路径规划得到的路径和无人机实时位置,生成无人机当前的期望位置指令。位置控制器根据期望位置指令以及实时位置与速度等状态,生成期望姿态指令。姿态控制器根据期望姿态指令和实时姿态,生成期望电机转速指令,从而控制桨叶旋转,达到无人机按期望路径巡检的目的。在数据交互方面,PX4_SITL 通过mavlink 接收ROS 发送的无人机路径规划结果;通过simulator_mavlink 接收无人机Gazebo 发送的位置、速度、加速度、姿态等状态信息;同时PX4_SITL 通过simulator_mavlink 将生成的电机指令发送至Gazebo 中的无人机运动仿真模型。

2.3 基于Gazebo 的物理仿真模块

Gazebo 是一款广泛应用的三维动态仿真器,其提供了高逼真度的物理模拟引擎,集成了多种不同的机器人仿真模型和典型的传感器仿真模型[9]。同时,Gazebo 也是开源仿真平台,开发人员可以根据仿真需求构建自己的机器人动力学、传感器等模型,因此利用Gazebo 能够方便快速地完成无人机仿真系统的定制搭建[10]。

在构建的仿真系统中,基于Gazebo 的物理仿真模块主要包括无人机飞行场景即变电站的三维模型和无人机以及其传感器的仿真模型。其中,变电站模型为静态模型,主要用于巡检环境显示、无人机碰撞检测、传感器测量对象;无人机及其传感器模型均为动态模型,通过底层的数学模型驱动实现对真实无人机运动和传感器测量的模拟。图3(a)为变电站三维模型示例,该变电站模型包含变压器、导线、绝缘子、互感器和避雷针等典型设备。三维变电站模型可以利用SoildWorks 软件绘制而成,然后导出对Gazebo 支持的URDF 模型文件,从而可实现模型在Gazebo 中的打开和操作。图3(b)为选用的是3DR-IRIS 无人机模型,其尺寸为0.47 m×0.47 m×0.11 m。在无人机模型集成的IMU、GPS 传感器基础上,为其配置16 线激光雷达以实现环境地图构建。

图3 Gazebo 中变电站和无人机模型Fig.3 Subsation model and UAV model in Gazebo

在巡检仿真系统中,无人机的PID 控制器参数设置如表1 所示。

表1 无人机PID 控制器参数设定值Tab.1 Parameter settings of UAV PID controllers

Gazebo 仿真模块通过模型插件的方式实现仿真数据的发送。在无人机模型文件中定义对应参数的插件后,可以通过Gazebo_ROS_API 将无人机的位置和激光雷达数据发送给ROS 模块的“/gazebo”节点,可以通过mavlink_API 插件将IMU、加速度计等传感器数据发送给PX4_SITL 模块。

3 仿真试验

本节基于已构建的变电站无人机自主巡检仿真系统,开展自主巡检飞行仿真试验,以验证仿真系统的有效性,仿真试验在Ubuntu 18.04 系统下进行。

基于图3 所示的变电站三维模型和无人机模型实例,通过激光雷达扫描获得点云数据,并构建变电站的三维栅格地图,结果如图4 所示。由图4 可知,无人机及传感器仿真模型能够通过激光雷达测量完成对三维变电站模型的有效扫描,通过对比栅格地图和三维虚拟模型可知,构建的栅格地图能够反映变电站的设备位置,进而可以为无人机导航提供准确的环境信息。

图4 无人机导航的变电站栅格地图Fig.4 Grid map of substation for UAV navigation

在完成环境栅格地图构建的基础上,设置待检测点的位置,然后由路径规划节点生成检测点间的飞行路径,将路径发送给无人机控制模块进行路径跟踪飞行仿真。无人机巡检飞行路径的俯视图如图5 所示,图中圆点为设定的检测点,实线为无人机的实际飞行路径。无人机从位置点a起飞,依次经过检测点1 至点13,最后回到检测点1。由图5 可知,仿真系统能够为无人机规划生成满足任务需要的巡检路径,且因对设备占据空间进行了膨胀处理,所以规划出的路径能够远离变电站设备,保障巡检安全。

图5 无人机巡检路径俯视图Fig.5 Top view of UAV inspection path

图6 为Gazebo 环境下的无人机巡检仿真效果图,利用Gazebo 仿真引擎可以直观地观测无人机的运动过程是否满足约束条件,也可以检测无人机的巡检飞行过程是否满足任务需求。构建的变电站无人机自主巡检仿真系统,可以集成自研的无人机建图导航、路径规划、视觉识别、故障检测等功能模块,通过开展完整的无人机巡检仿真飞行对各个模块功能进行仿真测试,能够为变电站无人机自主巡检相关技术的验证提供一种直观的仿真验证手段。

图6 基于Gazebo 的巡检无人机飞行仿真Fig.6 Flight simulation of inspection UAV based on Gazebo

4 结论

本文设计和搭建了一套基于ROS、PX4 和Gazebo 的变电站无人机自主巡检仿真系统。其中,ROS 主要实现环境建图、无人机状态估计和路径规划等功能,为无人机自主导航提供支撑;PX4 用于模拟真实无人机的飞行控制模块;Gazebo 用于对无人机运动模型的仿真和整个场景的可视化仿真。在完成仿真系统搭建的基础上,开展了变电站无人机自主巡检仿真试验。试验结果表明,搭建的仿真系统能够模拟无人机对变电站的巡检过程,可以用作无人机巡检任务制定、路径规划、自主导航等技术研究的仿真测试平台,能够为变电站环境下实现无人机自主巡检提供技术支持。

猜你喜欢
栅格变电站节点
栅格环境下基于开阔视野蚁群的机器人路径规划
解析变电站复杂地形及特殊地基的处理
基于图连通支配集的子图匹配优化算法
超声速栅格舵/弹身干扰特性数值模拟与试验研究
变电站五防系统临时接地桩的设置
智能箱式变电站的应用探讨
一种基于链路稳定性的最小MPR选择算法
结合概率路由的机会网络自私节点检测算法
基于点权的混合K-shell关键节点识别方法
反恐防暴机器人运动控制系统设计