Skip to content
  • 版块
  • 最新
  • 标签
  • 热门
  • 用户
  • 群组
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(不使用皮肤)
  • 不使用皮肤
折叠
品牌标识

AIRIOT智慧系统搭建平台经验交流

  1. 主页
  2. 设备接入
  3. 测点某个时刻为null问题

测点某个时刻为null问题

已定时 已固定 已锁定 已移动 设备接入
帖子 发布者 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • Zhang书书Z 离线
    Zhang书书Z 离线
    Zhang书书
    写于 最后由 编辑
    #3
    此回复已被删除!
    1 条回复 最后回复
    0
  • S 离线
    S 离线
    Sunny
    在 中回复了 12345 最后由 编辑
    #4

    @12345
    这样做存在一个问题,如果在【前项数据】节点中绑定前一、二、三项数据,在【写入数据点】中并不会显示三个前项数据以供选择,在分支条件中有列出,【前项数据】只绑定前一项数据,也是一样的结果

    03c8eb6e-b613-4384-860a-6158ccb54457-image.png

    f2b10d5b-275e-46e9-b124-4bcc1644d5a0-image.png

    e726acb9-c71f-47f1-ac15-517d56629465-image.png

    1 条回复 最后回复
    0
  • 1 离线
    1 离线
    12345
    写于 最后由 编辑
    #5

    可以把分支节点放在设备数据事件和前项数据之间试一下,您的需求是不是数据点的值为null,然后此时的点取前项值,可以再取前向值前设置判定条件

    S 1 条回复 最后回复
    0
  • S 离线
    S 离线
    Sunny
    在 中回复了 12345 最后由 编辑
    #6

    @12345

    这么改,【写入数据点】是默认选择目标数据点的前一项数据吗?
    e0909010-07f3-4136-9cb7-9165499fbacb-image.png

    cfcc8e3c-90c8-4b68-98f4-0c557b662d89-image.png

    1 条回复 最后回复
    0
  • 1 离线
    1 离线
    12345
    写于 最后由 编辑
    #7

    写入数据点的写入值选择前项数据的值就可以实现

    S 1 条回复 最后回复
    0
  • S 离线
    S 离线
    Sunny
    在 中回复了 12345 最后由 编辑
    #8

    @12345

    如果在9:00:00测点的值为100,9:00:01~9:00:10这十秒内测点的值都为null,9:00:11测点值为120,那么在9:00:11这个时刻取的前一项值是null还是100

    1 条回复 最后回复
    0
  • 1 离线
    1 离线
    12345
    写于 最后由 编辑
    #9

    条件是怎么配置的,可以将判定条件设置为当数据点为null时才会继续进行流程,那么当数据点的值是null就会显示前项数据,当不是就不会触发整个流程,显示的还是数据点正常上数的值

    S 1 条回复 最后回复
    0
  • 1 离线
    1 离线
    12345
    写于 最后由 编辑
    #10

    这个null的意思是数据点的值是0还是说此时不上数

    1 条回复 最后回复
    0
  • S 离线
    S 离线
    Sunny
    在 中回复了 12345 最后由 编辑
    #11

    @12345
    取前项数据的已经实现。
    现在是要取个平均值,流程每1秒触发,例如现在的时间是9:00:01,测点在9:00:00为null,测点在8:59:59和9:00:01的值不为null,此时可以取该时刻的前两项数据(8:59:59时刻数据)与现在的实时数据计算出平均值,该平均值作为9:00:00的值,这种流程跑通的前提条件是8:59:59(前两项数据)和9:00:01(当前时刻)的值都不为null。

    现在前提条件不变,即前两项数据和当前时刻数据不为null,如果上面这种情况改成当前时间是9:00:05,8:59:59时刻有值,9:00:00~9:00:04的值为null,到9:00:05才有值,这种情况下有没有办法取到8:59:59的值,将8:59:59的值与当前时刻的值做平均值作为9:00:00的数据

    null是这种情况:
    4904cc97-bd62-4bf3-9d83-b964100ee1aa-image.png

    1 条回复 最后回复
    0
  • 1 离线
    1 离线
    12345
    写于 最后由 编辑
    #12

    image.png可以考虑一下计算节点中的统计值,计算方式选择平均值,然后在流程中也能够拿到计算节点的值,看下你的数据上数情况能不能用这种方式

    S 1 条回复 最后回复
    0
  • S 离线
    S 离线
    Sunny
    在 中回复了 12345 最后由 编辑
    #13

    @12345 使用此功能计算平均值无法灵活变化统计周期,因为测点为null的情况无法确定时刻,为null有可能只有1秒,也有可能是3秒,对于我这边的数据处理,只有取离null值最近两端的有效值才能最大程度地减少误差

    1 条回复 最后回复
    0
  • 1 离线
    1 离线
    12345
    写于 最后由 编辑
    #14

    你想这样操作是想解决数据不上数的问题吗

    S 1 条回复 最后回复
    0
  • S 离线
    S 离线
    Sunny
    在 中回复了 12345 最后由 编辑
    #15

    @12345
    是的,项目现场情况复杂,无法避免设备不上数的情况,所以想在软件中处理,保证测点数据的连续性,方便后续的取值计算操作。

    例如现有一个电表,电表数据实时采集,采集频率为1秒,现需计算昨天9:00:00~9:59:59这个时间段的充/放电量(此时段不固定,需要每月进行手动更新),需要取9:00:00和9:59:59这两个时间点对应的数据做差值,如果这两个其中有一个为null,计算将无法进行

    1 条回复 最后回复
    0
  • 1 离线
    1 离线
    12345
    写于 最后由 编辑
    #16

    你做这种计算是想用咱们平台的时段差吗,平台时段差的计算是如果9:00:00是null那么就会取9:00:01的值,会取他前一个时间单位的值,计算是能进行的

    1 条回复 最后回复
    0

  • 登录

  • 没有帐号? 注册

  • 登录或注册以进行搜索。
  • 第一个帖子
    最后一个帖子
0
  • 版块
  • 最新
  • 标签
  • 热门
  • 用户
  • 群组