接到某同事B的电话,说是一段Wincc里面的VBS脚本出现了问题:A按钮和B按钮,要求A按钮点击后,对plc某变量写1并等待5s后写0,在这5s期间如果点击B按钮,同样是对另外一个变量如此操作,则plc在5s内检测到两个变量都为1就执行一个逻辑。而同事采用了一段vbs脚本来实现5s的延时,大致如下:

其实之前我大致听闻过B同事的这件事,因为有同事K劝他用c脚本的sleep函数来实现,但是B同事说自己只会vbs不会c,于是同事K从网上搜来这段do until的代码给了他用。但是k同事也劝B同事模拟仿真测试一下,结果B同事不听,然后昨天到了现场就发现情况不对了,于是四处电话求救了。

我问了B同事的具体需求,先是建议他修改plc,把定时功能放在plc里面做,但是B同事说plc程序是老程序,不好动。

我又建议他用一个周期执行(譬如1s周期)来检测所有涉及的变量,如果有变量为1则开始计数(需要为每个变量定义一个wincc内部的整形变量用来计数),如此计数满了就算时间到。但是B同事说工作量太大....

最后我想到vbs和c脚本的进程其实是两个,于是建议他把另外一半的按钮改为c脚本。没想到后来B同事就去找了J同事,让人家帮他改C脚本。J同事给他写了一段样例,到了晚上,B同事照着样例改了一段正式的代码,又来找我,让我给他确认对不对!我说你在自己笔记本上仿真测试一下即可,我在手机上不能给你所谓“确认”代码的正确性!

今天我在自己笔记本上测试了一下c脚本和vbs脚本:

其实我还想建议他写个函数直接调用,但是想想他的情况,那就算了吧,

vbs脚本延时_Wincc的脚本进程执行问题相关推荐

  1. vbs脚本在服务器上虚拟按键,iisvdir.vbs iis虚拟目录管理脚本使用介绍

    IIS管理器也是通过调用iisvdir.vbs来实现虚拟目录的创建和删除的.我们可以通过命令行的方式来执行iisvdir.vbs脚本 1)创建虚拟目录: cscript c:\windows\syst ...

  2. python脚本如何监听终止进程行为,如何通过脚本名获取pid

    文章目录 一.前言 二.最初的想法:直接获取脚本中的变量值 1.获取运行中py脚本的变量值 2.换一种方式 3.为什么不能获取脚本中的变量 4.下下策,使用使用python的gdb调试工具 三.pyt ...

  3. linux 脚本 获取pid,Shell脚本中获取进程ID的方法

    提问: 我想要知道运行中脚本子shell的进程id.我该如何在shell脚本中得到PID. 当我在执行shell脚本时,它会启动一个叫子shell的进程.作为主shell的子进程,子shell将she ...

  4. 解决paramiko获取远程脚本延时返回数据的问题

    解决paramiko获取远程脚本延时返回数据的问题 参考文章: (1)解决paramiko获取远程脚本延时返回数据的问题 (2)https://www.cnblogs.com/liushi-Oscar ...

  5. 在 Shell 脚本中跟踪调试命令的执行

    文章目录 shell 脚本调试系列 概述 shell 跟踪执行的重要性 shell 脚本调试系列 本系列的前面部分清晰地阐明了另外两种 shell 脚本调试模式:详细模式和语法检查模式,并用易于理解的 ...

  6. linux shell 计算器 除0,用shell写一个简易计算器,可以实现加、减、乘、除运算,假如脚本名字为1.sh,执行示例:./1....

    用shell写一个简易计算器,可以实现加.减.乘.除运算,假如脚本名字为1.sh,执行示例:./1.sh 1 + 2#!/bin/bash if [ $# -ne 3 ] then echo &quo ...

  7. python脚本调度程序_Windows 任务调度程序定时执行Python脚本

    Windows 任务调度程序(Task Scheduler)可以定时执行程序,本文分享使用Task Scheduler定时执行Python脚本的两种方法. 在控制面版->管理员工具中打开 Tas ...

  8. 【Linux】23.ubuntu定时执行脚本/etc/crontab 和 定时任务不执行的解决办法

    ubuntu定时执行脚本/etc/crontab 和 定时任务不执行的解决办法 定时任务失效的问题: 如果发现/etc/crontab中的定时任务没执行,可以使用/etc/init.d/cron st ...

  9. asp服务器端作用,ASP中的服务器端脚本代码由()解释执行。 - 问答库

    问题: [单选] ASP中的服务器端脚本代码由()解释执行. A . WEB服务器 B . 应用程序服务器 C . 浏览器 D . 专用的浏览器插件程序 Cookie的应用是通过()对象和()对象来实 ...

最新文章

  1. Linux nethack
  2. ubuntu14.04中安装opencv2.4.13
  3. 安卓高手之路之(架构设计)
  4. 如何成为一个合格的 Java程序员
  5. (二)线程同步_3---在类中使用相互独立的属性同步
  6. Android SimpleAdapter的参数
  7. 工业定焦镜头的选型公式
  8. 打游戏要存进度-备忘录模式
  9. javaScript学习笔记之运算符
  10. java form 上传文件_java通过表单进行文件上传的几种方法
  11. Mysql物化视图应用
  12. jquery-修改、回退结果集
  13. edup网卡 linux,应用笔记--使用USB WiFi网卡
  14. html5 canvas画椭圆形
  15. 电影之记忆1:V字仇杀队
  16. Linux技巧之Ubuntu11.04下安装极点五笔输入法
  17. GeoServer使用WFS服务时出414 URI Too Long错误
  18. 如何一小时爬取百万知乎用户信息,并做简单的可视化分析?
  19. Python 写入XLSX文件的几种方法
  20. shell 知:bash

热门文章

  1. 华为系统鸿蒙优势,华为鸿蒙2.0可以替代安卓吗,华为鸿蒙2.0优势在哪
  2. ip地址合不合法怎么看_电子印章合不合法?两部门再发意见认定
  3. Springboot源码——应用程序上下文分析
  4. Nginx配置以及域名转发
  5. n个结点,不同形态的二叉树(数目+生成)
  6. mysql 过程和函数_MySQL:存储过程和函数
  7. android区域截图app,【干货】最新App应用市场截图尺寸大全
  8. mysql修改表的字段_mysql修改表字段学习笔记
  9. php十六进制字符串转成字节数组_10 天 5 千 Star!21 岁本科生给程序员开发的十六进制编辑器...
  10. java期末考试2013及答案_java笔试经典(题及答案)2013.doc