组态王问题解答
| 组态王中如何精确计数? 在组态王中当使用时间进行精确计数时,由于系统问题,往往有一定误差,下面的程序可在一定程度上弥补该问 题。 组态王中定义三个内存整型变量:old、new是计算过去的时间,sum是进行计数。程序如下: if (old==100||new==100) { old=$秒; new=$秒; } new=$秒; if(new!=old) { if(new>old) {sum=sum +new-old;} else old=new; } 该段程序放在应用程序命令语言中,其执行周期越短越好,如100ms。 如何将开发环境中的工程画面拷贝到WORD文档中? 使用键盘上的PRINTSCREEN键,将画面粘贴到WINDOWS的“画板”程序中,然后再粘贴WORD中。 组态王的NETVIEW版本和普通版本有什么区别? NETVIEW是组态王运行环境TOUCHVIEW的一种版本,它与一般运行环境TOUCHVIEW的唯一区别在于NETVIEW不能直接连 接驱动程序,也即不能直接从工业现场采集数据,只可用于监测工业现场采集数据的变化。两者由硬件加密狗加以 区分。所以,运行NETVIEW的PC机只能作为网络客户机使用,而不能充当服务器。 VB与组态王进行DDE通讯时的操作方法 通常客户在用VB访问组态王按照手册中方法很难实现。步骤为:1、首先应将I/O变量的“允许DDE访问“复选框选 中;2、VB程序中有TEXT和IMAGE对象可被访问,一般采用TEXT,在TEXT属性列表中设置LINGMODE为:0- VBLINKNONE,LINKTOPIC设置为:VIEW|TAGNAME,LINKITEM设置为:(组态王中的)设备名.寄存器名,而且要注意 大小写正确。将LINKTIMEOUT的值设置的大一些。在FORM_LOAD()程序中的代码: sub form_load() text.linkmode=vblinknone text.linkmode=vblinkautomatic ... end sub **切不可先在属性中设置linkmode为 automatic。如果是VB作为源提供数据时,其应用程序名称一般为创建VB程序时的工程名称,可通过运行该程序, 在WINDOWS的任务列表中查找其应用程序名称。 关于组态王中的时间问题 计算机的时钟中断周期为不超过18.2次/秒,约54秒多。最长的时间间隔为64767毫秒,约64.8秒.若时间长度超过 这个间隔时,可设计代码来等待若干个间隔。 当系统执行一个长的循环、精确的计算、或驱动、网络、端口访问 等操作时,定时器事件就不能发生, 解决方法是:在需要时检查系统时钟(如$时间、$秒),来计算已过去的时 间。 关闭打印机后为什么会提示找不到加密锁? 1.在BIOS设置中将打印机设置为ECP模式. 2.比较老式的打印机是低电压的,关闭后呈低电位,而加密锁需要在高电 位下,只能让打印机开着. 3.有的新打印机的驱动比较新,有可能加密锁不能正常使用,用户可以采用USB接口打印 计算机启动时直接运行Touchvew的另一种设置 在"c:\windows\win.ini"下,"run="处写"run=C:\Progra~1\Kingview\Touchvew.exe"注意:路径为DOS路径。 DDE数据交换中到底如何写? 很多用户一直对组态王与应用程序间的数据交换很迷茫。应用程序中的linkitem应为:view|tagname!设备名.寄存 器名。而且设备名和寄存器名的大小写一定要正确,在不能通讯时,应重新建立DDE连接,或将DDE超时设置的长一 些。 如何在计算机启动时直接运行组态王? 在开始菜单的程序-启动中添加touchview.exe文件 由组态王2.0升级到5.1版本,需要注意哪些问题? 首先将原有2.0工程文件备份,以确保其安全性;在5.1版本下将2.0工程文件打开,按照帮助或手册说明在工程浏 览器中重新添加设备;修改变量属性。 使用PrintHT()函数打印历史曲线,打印机无反应 目前PrintHT()函数,PrintFile()函数,PrintScreen() 函数均已取消,打印函数只有PrintWindow(),ReportPrint() 可用,打印历史曲线可以通过PrintWindow()函数进行 |
