技术论坛

[WinCC OA 学习分享][七]Ctrl 脚本操作Para

作者 主题
游民

经验值: 133
发帖数: 9
精华帖: 1
主题:[WinCC OA 学习分享][七]Ctrl 脚本操作Para


只看楼主 楼主 2021-05-12 14:19:35

之前的简单的例子,我们已经简单的使用了dpConnect()/dpGet()函数,

在WinCC OA 中 以dpXxxx开头的函数都与数据点(Datapoint)操作相关的函数

Datapoint 连接了驱动与系统的数据,在WinCC OA中非常重要,对Datapoint的配置可以直接在Para图形界面中逐一配置 也可以使用CTRL脚本对其进行配置

Para模块

Para模块 由数据类型DataPoint Type 数据点 DataPoint 及其配置组成;

Para模块负责整套系统的 数据点创建/配置,将驱动的数据通过para的配置 与系统的功能关联起来.

Para的主要功能用于保存配置信息, 其实其底层实现就是一个嵌入式数据库(Raima),WinCC OA 将大部分配置类信息都保存在Raima数据库中


对Para模块的深入理解

站在软件工程师的视角:

在Para里新建一个数据点类型 可以理解为新建一张表

往特定数据类型里添加一个数据点 可以理解为往这个表里插入一行,但是这个数据点的名字是全局唯一的

西门子赋予Gedi Para新的理解:

将Gedi Para 与面向对象关联起来

新增一个datapoint ,将其传递给UI层的显示界面 相当于实例化了一个的显示对象,这个对象有自己的属性(para),跟行为(GEDI 组态界面显示),这也是面向对象的组态的粗浅理解


接下来我们一起动手操作一番

创建数据类型PumpStation 如图示 (属性节点相当于数据库里的字段)


手动创建新datapoint

手动操作Para界面非常简单 对数据点类型鼠标右键就可以弹出创建菜单

*****重点******

本篇文章带着大家使用脚本实现相应的操作,翻开官方文档,我们可以看到有很多关于dp操作的函数(dpXxxxxx()函数…)


步骤1:

我们新建一个Panel么,实现如下组态

拖拽三个按钮  一个Multiline TextEdit


步骤2:

在Panel 的ScopeLib中定义一个该panel的全局计数变量

步骤3:

对新增dp 按钮的Clicked Event 进行编码

main(mapping event)

{

        string dpName = "station"+pumpStationCount;

        // 判断数据点是否存在

        if(dpExists(dpName)) {

        DebugN("datapoint already exists");

        }else{

        //创建数据点

        dpCreate(dpName,"PumpStation");

        }

        pumpStationCount++;

}

步骤4:

对查找dps 按钮进行编码

main(mapping event)

{

    dyn_string dps;

    dps = dpNames("station*");

    string tempString;

     

    for(int i = 1;i<=dps.count();i++)

    {

        tempString += dps[i]+'';

    }

    TEXT_EDIT1.text(tempString);

 

}


步骤5:

同样对删除按钮进行编码

步骤6:

运行测试

Tips:

当开发一些小型系统的时候dpXxxxx系列的函数使用频率可能不会很高,遇到大型系统,datapoint的点数非常多管理起来就比较麻烦了,尤其是靠人工进行录入管理,特别容易出错,这样使用脚本区实现一个配置页面,把一些容易出错的环节给代码化,会大大增加效率



WinCC OA 玩家..
以下网友喜欢您的帖子:

  
重要声明:

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1695360&b_id=65&s_id=0&pno=0

至圣

经验值: 18405
发帖数: 2409
精华帖: 1
回复:[WinCC OA 学习分享][七]Ctrl 脚本操作Para


只看楼主 1楼 2021-05-13 12:47:49

跟着你看看


 
以下网友喜欢您的帖子:

  
至圣

经验值: 18890
发帖数: 2107
精华帖: 0
回复:[WinCC OA 学习分享][七]Ctrl 脚本操作Para


只看楼主 2楼 2021-05-13 13:31:07

例子很详细,学习


 
以下网友喜欢您的帖子:

  
  • 上一页
  • 1
  • 下一页
收起
[WinCC OA 学习分享][七]Ctrl 脚本操作Para
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。