摘要:
今天在群里有人询问wincc脚本操作一个已经存在的excel文件时,怎么避免重复打开一个文件,其实这个很好实现的。按钮的vbs脚本如下: Sub OnClick(ByVal Item) Dim path,xlApppath= "c:\myxls.xlsx"Set xlApp=CreateObject 阅读全文
摘要:
西门子官网有一个“跟我做”教学,介绍了利用折线来模拟管道内水流的动画效果,还可以控制水流快慢,顺流逆流。但是有一个群友反映说V7.3中使用教学里面的代码不好使。我看了一下教学,按照思路做了一下,也稍稍修改了一下vbs代码,亲测在wincc v7.3好使。西门子官方教学的地址如下: http://ww 阅读全文
摘要:
有一个群友咨询在画面上打开一个画面窗口控件时,如何让画面窗口自动获取焦点。虽然这个问题没有什么实际意义,通常打开画面窗口后,再点击画面窗口类的内容,画面窗口就自然会获取焦点,如果你只是需要看看什么也不操作,那么画面窗口有没有获取焦点,其实一点关系也没有。不过为了探寻究竟,还是尝试着使用脚本功能完成这 阅读全文
摘要:
我在使用浙江中控ECS100系统时,需要鼠标点击发一个脉冲的时候,如果设置鼠标按下tag=ON,鼠标弹起tag=OFF,理论上应该可行,但实际测试没有任何效果。这应该是鼠标点击的按下弹起时间太短,根本没有被检测到造成的。这种情况下只能设置鼠标按下tag=ON,弹起时不做任何设置,在程序中使用TP块, 阅读全文
摘要:
今天在群里看到有人问怎么实现趋势控件坐标轴标签文字纵向显示,这是一个有意思的问题,以前也没注意到,反复尝试,始终不行,哪怕想通过脚本在文本中插入回车换行的ascii码都不行。趋势控件的纵坐标文字ValueAxisLabel和label一样,是不支持换行的。 这个需求是一个群友的业主提出来的,我不知道 阅读全文
摘要:
我在使用ECS100系统时,生产作业区有这样的需求,需要在整点和每日零时做一些数据处理。使用条形图或者功能块,无法取CPU时间,经过测试可以用ST语句做一个自定义功能块,在需要的时候引用就是了,ST功能块语句如下: Function_Block MyBlock VAR_INPUT IN1:INT; 阅读全文
摘要:
今天在现场对中控ECS100的一个系统做程序修改,需要对模拟量输入的数据做一些统计处理。我知道AI在硬件配置时候指定了量程范围,程序中是半浮点数,我使用了类型转换将其转成浮点数,满以为转换后还是测量值,结果在线一看是一个纯小数,还需要乘上量程范围才行。看来硬件配置那里设置变量名和量程,实际上只是省掉 阅读全文
摘要:
以前使用unity软件的时候,在家做了修改拿到现场后,连线总是提示需要完全下载,PLC会停机。与施耐德技术交流后,对方建议这种你先修改,可以保存在本地硬盘上,但是不要做编译。拿到现场后,连线,再做增量编译然后下载,就会只对修改部分下载不会造成PLC停机了。当然硬件配置、网络拓扑的修改还是需要完全下载 阅读全文
摘要:
现场有unity架构的quantum PLC 冗余系统,使用一段后,发现CPU面板提示不在冗余状态了,一直以为是模板的冗余部件或者之间的光纤出了问题。后来与施耐德技术交流,得知使用过程中如果出现了程序修改,需要再给传输给standby plc。传输有两种方式,一种是通过面板按钮,一种是通过unity 阅读全文
摘要:
现场有一套quantum plc系统,冗余架构,cpu为140CPU43412。下位机使用concept开发。前段时间CPU模板坏了一个,这个型号的CPU官方通知已经停产多年,从代理商手上买备件又担心买到二手的返修货,于是下决心升级到unity架构,CPU升级到140CPU67160,使用unity 阅读全文
摘要:
有时候我们需要将数据库条件查询的结果显示在表格控件中,前面的博客记录过VBS的方法,本篇记录使用c脚本实现同样的功能。 在画面上放置一个microsoft date and time picker,名字修改为DT,放置一个microsoft Hierarchical flex control,名字修 阅读全文
摘要:
前面一片博客记录了怎么使用c脚本分别提取date and time picker控件的年、月、日,有时候我们需要提取选择的日期,还需要把这个日期按照YYYY-MM-DD这样的格式进行显示。在wincc画面上放置一个date and time picker控件,名字修改为DT,放置一个按钮,按钮的鼠标 阅读全文
摘要:
有时候我们打开一个从别的计算机上拷贝过来的项目,wincc提示“当前不允许访问该项目”,应该这样解决:找到这个项目文件夹,删除projectopend.lck文件即可。这应该是在源计算机上做项目复制的时候,项目没有关闭退出,造成复制的项目被锁住了。 阅读全文
摘要:
microsoft data and time picker我们会使用到,尤其是在有关日期选择的操作上。我们选取了一个日期后,有时候需要分别提取年、月、日或者日期数值,用于其他操作(比如数据库查询),以前用vbs很好做,也有博客记录脚本。今天使用c脚本来实现同样的功能。 在wincc建立year、m 阅读全文
摘要:
有时候我们需要定期往一个sql数据表添加纪录,以前尝试过vbs脚本,今天通过c脚本实现同样的功能。假设有一个sql数据库Report,下面有一个数据表,有以下几个字段: CurNo 表示序号,bigint数据类型,主键,自动递加1;CurDate,字符串,纪录当前日期;CurTime 字符串,记录当 阅读全文
摘要:
本来这篇博客是要记录c脚本报表功能的,这里先插入一篇纪录获取系统日期时间的方法。系统的力气和时间我们会经常用到,单独写出来以便今后查阅。 在按钮的点击事件中插入以下c脚本: #include "apdefap.h"void OnClick(char* lpszPictureName, char* l 阅读全文
摘要:
以前的博客记录了使用vbs脚本来添加和删除数据表,今天尝试使用c脚本实现同样的功能。假设有一个数据库DB,我们希望在下面新建/删除一个数据表Mytable,这张表有三个字段: Curindex 这是一个整型变量,是主键,不允许为空,会自动加1;stuno是char变量;,不允许为空;name是cha 阅读全文
摘要:
以前的博客记录了使用vbs脚本判断数据库下是否有某个数据表的方法,今天测试了使用c脚本实现同样的功能。在按钮的点击事件中添加以下c脚本,判断数据库MyDB下面是不是有数据表Mytable: #include "apdefap.h"void OnClick(char* lpszPictureName, 阅读全文
摘要:
以前测试过vbs脚本新增和删除数据库的脚本,今天是用c脚本做一次。假设sql server平台已经启用了sa用户,我们先判断一个数据库NewDB是否存在,如果不存在就创建它。在按钮的点击事件中添加以下脚本: #include "apdefap.h"void OnClick(char* lpszPi 阅读全文
摘要:
前面我使用vbs做过判断数据库是否存在的脚本,今天使用c脚本做了一个练习也实现了功能,假设数据库sa用户已经开放使用,在按钮的点击事件中添加以下脚本: #include "apdefap.h" void OnClick(char* lpszPictureName, char* lpszObject 阅读全文