项目背景

现代大型风力发电机组的轮毂高度一般均超过80米,由风力、地质沉降、以及塔筒本身基础微小的变化造成的不均匀沉降量将引起塔筒倾斜,塔筒的开裂、变形、基础环松动、基础严重地的不均匀沉降,将引起风机发生明显的倾斜,甚至诱发倒塔事故的发生。

天鹤集成传感器技术,信号处理技术,计算机技术,对风机电机组的安全进行实时连续监控。包括:风机发电组齿轮箱振动监测、风机叶片健康状态监测和风机塔筒沉降倾斜监测。在系统监测到任何设备异常时,可及时给出报警,避免因塔筒及基础的故障造成风机主体结构的破坏,给风电运营商造成的巨大经济损失,保证风电机组的安全稳定运转。

fan_img1
fan_img2
主要功能

主要功能按要求概述如下:

    1. 风场/风机定位展示
    2. 风机塔筒状态监测
    3. 风机状态可视化展示
    4. 塔筒晃动数据监测与可视化展示
    5. 塔筒刚度圆计算分析与可视化展示
    6. 塔筒晃动趋势图展示以及沉降点堆积图展示
    7. 风险预警/报警设定、通知与报表导出
    8. 风机运行分析报告生成和导出
cold_chain_icon1
logistics_icon2
industry_icon3
industry_icon6
hydropower_icon1
construction_icon4
我们的解决方案
1.技术架构

塔筒监测系统有四个功能模块,一个消息队列中间件和两个数据库组成,两个数据库分别是一个关系型数据库和一个时序数据库,下图解释了各个模块之间的关系:

网页端模块基于前端框架(Angular)实现,其余三个模块都统一采用Python语言实现,这样可以降低系统复杂度,方便系统部署和后续的升级维护。
消息队列中间件拟采用业界广泛使用的RabbitMQ,消息队列的使用可以很好的降低各个模块之间的耦合度,同时提高系统稳定性。
采用两种不同的数据库是为了存储系统种的两类不同业务数据,其中一类数据就是从传感器采集到的原始数据和讲过计算后的数据,这一类数据都和具体的一个时间点有关系,而且数据量很大,后续的很多报表分析也需要基于这类数据进行查询统计,所以采用一个时序数据库用来专门保存这一类数据。另外一类数据就是支持系统运行的各种配置信息,风机的基本信息,组织机构以及人员权限等基础数据,这类数据用一个典型的关系型数据库来存储。

2. 数据采集模块

通过光纤环网和每个风机的两个传感器进行通信,将采集到的原始数据直接发送到消息队列,同时还要监测风机的两个传感器以及通信模块是否工作正常,一旦出现通信故障则触发通信异常消息并发送到消息队列。
采集传感器数据有两种方式,一种是自动采集:按照设置好的频率从服务器端发起轮询每次采集一次数据;另外一种是手动实时采集:由操作员在网页端发起实时采集命令,采集模块开始对指定的风机持续采集数据。
系统开始运行后会为每个风机启用一个独立的任务执行自动采集工作,并自动启动,采集频率从关系数据库读取,一旦当前风机的配置信息发生修改,自动采集任务会从消息队列获得通知,然后自动采集任务会从数据库重新加载配置信息并重新启动。

3. 数据计算引擎模块

塔筒监测系统最终是要通过塔筒的倾斜方位、倾斜角度、不均匀沉降量、塔筒刚度圆等数据来判断塔筒是否安全,所有这些数据都要依据从传感器采集到的原始数据经过专门的算法计算后得出。
计算引擎通过订阅方式从消息队列获得每一个新采集的传感器数据,结合塔筒高度和塔底基础半径就可以计算出倾斜方位、倾斜角度、不均匀沉降量等数据。
如果获得的传感数据是自动采集任务采集到的,则把计算后的数据和原始数据合并在一起保存到时序数据库。
如果获得的传感数据是实时采集任务采集到的,则把计算后的数据和原始数据合并在一起变成一个新的消息发送到消息队列中,这些消息或被网页端订阅并实时显示给操作员。

系统界面展示
Web端管理系统