随笔分类 - C
摘要:以前测试用使用vbs往数据表添加纪录,今天尝试着c脚本实现同样的功能,c语言不是太熟,磕磕绊绊测试了较长时间,总算是实现了功能。假设在wincc附带的sql server管理器下的master数据库下有一个report表,表有flow1、flow2、flow3三个字段,数据库启用了sa用户。由于仅仅
阅读全文
摘要:如果想添加年、月、日、小时、分钟、秒钟信息,那么脚本这么写: #include "apdefap.h"void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName) { #pragma code("k
阅读全文
摘要:前面一片文章记录了如何在wincc中使用c脚本往一个excel文件中写入数据。通常情况下我们写入数据后还需要做一下排版,比如合并单元格,居中,边框线之类的操作,下面的脚本就是实现这个功能的。 #include "apdefap.h"void OnClick(char* lpszPictureNam
阅读全文
摘要:很久没有更新博客了,今天在wincc讨论群里面有网友说他写的c脚本无法实现往excel文件写数据,往excel写数据我使用过vbs,c我也没有使用过,这个网友还上传了他写的c脚本,我打开看了一下,思路和vbs的一致,我试着简化了一下他的脚本中复杂的功能,测试没有问题,于是把这小段脚本记下来,以便今后
阅读全文
摘要:前面的博客介绍了在wincc中设定权限,使web客户端不能轻易操作控件。但有时候我们也希望个别用户在web客户端可以通过登录来获得操作控件的权限而不需要到中控室来。我们就必须让web客户端也可以登录用户。假设有一个wincc项目已经像上一篇博客描述的那样建立了两个web用户,其中一个Guest用户具
阅读全文
摘要:今天看西门子的论坛,有人提问如何实现长时间无人操作计算机,自动关机节省电源。个人觉得这个需求透着一股怪怪的感觉,现场控制计算机怎么会长时间无人操作,生产人员不看数据吗?如果是停产,做一个关机的鼠标操作很费事吗?即便是很少有人使用的计算机,那点电费企业负担不起吗? 不过言归正传,这种需求wincc还是
阅读全文
摘要:我们在画面中使用用户归档控件可以显示归档记录,有时我们并不需要浏览所有记录而是希望查看其中一部分记录,当然我们可以在控件属性设定对话框中约束条件,我们还可以在外部使用脚本条件过滤。本文介绍如何使用vbs做用户归档控件的条件过滤。 比如我们希望只显示压力>30的归档记录。项目管理器已经建立了永辉归档,
阅读全文
摘要:我们在用户归档中得到数据之后,如果想导出到excel,思路是和把MSHFGrid数据导出类似的。网上有些文章是直接从后台数据表读取数据,本文介绍从数据归档控件导出数据。 1. 假设wincc项目已经创建了用户归档,画面上有一个用户归档控件,名字叫做UA,设置一个按钮,按钮点击事件添加以下vbs脚本
阅读全文
摘要:前面的博客介绍了使用复选框和脚本进行用户归档控件显示和隐藏,我们还可以使用单选框做列的升序和降序排列。 1. 先建立用户归档以及与PLC的连接,画面上设置一个用户归档控件UA,添加一个单选框名字修改为option。 在画面的打开事件中添加以下c脚本 #include "apdefap.h"void
阅读全文
摘要:前面的博客介绍了VBS脚本来显示和隐藏用户归档列,如果对vbs不熟悉,还可以使用c脚本实现同样的功能。 1. 页面打开的事件中写入以下c脚本 #include "apdefap.h"void OnOpenPicture(char* lpszPictureName, char* lpszObjectN
阅读全文
摘要:前面一篇博客介绍了用户归档的建立、与PLC的连接、使用控件的上载、下载、修改、删除方法(http://blog.sina.com.cn/s/blog_724246b90102woov.html)。有时候这些操作可能是定时的,或者在满足某个条件自动执行的,这种情况下我们就需要借助脚本来完成了。本文逐一
阅读全文
摘要:前面曾经写过c脚本调用外部程序,但是那种方法不能避免重复调用,有点小的缺点,其实稍作修改就能确保外部程序只打开一次。这个脚本的前提是打开的外部程序有窗口标题。 #include "apdefap.h"void OnClick(char* lpszPictureName, char* lpszObje
阅读全文
摘要:滑块是wincc中常用到的一个控件,滑块不能像输入输出域一样设置“操作员消息”,仍然只能依靠脚本实现。在画面上放置一个滑块,假设用于蒸汽量设定值修改,报警记录-消息表格新增一条,消息编号1102,消息等级“系统,无确认”,消息类别“操作员输入消息”,消息文本“操作员修改蒸汽量设定值”,观察文本库会同
阅读全文
摘要:前面博客介绍的是输入输出域等控件通过设置“操作员消息”属性为“是”从而在报警空间中做操作记录,但并非所有Wincc控件有这个属性,比如按钮。按钮是Wincc中使用率非常高的控件,这个控件经常用作重要操作,我们也非常希望可以知道什么时间点击过这个按钮,本文通过c脚本介绍如何实现按钮的操作记录。 在画面
阅读全文
摘要:可以在wincc运行时调用其它程序,调用其它程序可以用过动态想到自动生成c脚本,比如点击按钮打开计算器程序最终的代码就是这样子: #include "apdefap.h"void OnClick(char* lpszPictureName, char* lpszObjectName, char* l
阅读全文
摘要:在QQ群聊天时,一个群友遇到了一个写c脚本莫名其妙的问题,明明是其他计算机上正常运行的c脚本,拷贝到这台计算机上就有语法错误,明明只写了一两句简单语句而且确认没有语法错误,但是编译就是报错,难道这就要重新安装系统和西门子软件——多么痛苦的事情。查询西门子官网,有人说是x:\Program Files
阅读全文
摘要:我们在使用wincc时,有时需要写c脚本,我们先来看一段简单的c脚本: float a;a=2/3;SetTagFloat("C_C",a); 运行后,C_C变量值为0.0,但我们预计应该是0.66666666这样子才对。这是因为2/3首先是当成了整数除法,结果为0,再转换成float。我们稍作修改
阅读全文
摘要:我们在使用Wincc趋势控件的时候,有时候希望趋势的显示和隐藏不通过趋势控件的“组态对话框”来设定,而通过复选框进行设置,这样更加直观,便于操作。下面就介绍如何实现这种功能。 1. 假设一个趋势控件里面有32个变量的趋势要显示出来,那么我们先在趋势控件中添加进去这32个趋势,把数值轴时间轴设定好,还
阅读全文
摘要:Wincc V6.0,V6.2,V7.0版本 每个 C 脚本最多可以使用 64000 个字符。如果您需要更大的脚本,必须把它们分成多个项目函数,需要的时候可以调用。 https://support.industry.siemens.com/cs/document/493535/c脚本中最多能用多少个
阅读全文

浙公网安备 33010602011771号