WINCC对于sql读写过程中,怎样才能做到错位相减?

已锁定

工作狂人

  • 帖子

    262
  • 精华

    5
  • 被关注

    28

论坛等级:侠士

注册时间:2011-04-20

普通 普通 如何晋级?

WINCC对于sql读写过程中,怎样才能做到错位相减?

990

9

2019-05-17 15:27:07

现在有这样一个情况,比如水量是累计计算,通过wincc vb脚本写入sql中,每小时写入一次,但是如果要是计算每小时的水量,需要用现在的水量减去前一小时的水量。这样大家有什么好的办法吗?我想到的是用中间变量,每小时计一次,计算差值,写入数据库。

Dim LocalMinute,LocalSecond,i
LocalMinute=Minute(Now)
LocalSecond=Second(Now)
For i = 1 To 30
If  LocalMinute=1 And LocalSecond<20 Then

    HMIRuntime.Tags("S"&Trim(i)&"_daliy_water_volume").Write 0
'    Msgbox "OK0"
    HMIRuntime.Tags("S"&Trim(i)&"_yesterday_water_volume").Write HMIRuntime.Tags("S"&Trim(i)&"_Md_QF_R1BSB_F_Sum").Read
Else
    HMIRuntime.Tags("S"&Trim(i)&"_daliy_water_volume").Write HMIRuntime.Tags("S"&Trim(i)&"_Md_QF_R1BSB_F_Sum").Read-HMIRuntime.Tags("S"&Trim(i)&"_yesterday_water_volume").Read

但这样有个问题,不敢在整点整分这样执行,怕数据库记录存在问题,这样的坏处就是存在一段时间内的总量和每小时的和对不起来。

大家有什么办法使得用数据库的后一条数据减去前一条数据吗?


WINCC对于sql读写过程中,怎样才能做到错位相减? 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC WinCC / Panel

共有32673条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。