首页 上一页 1 2 3 4 下一页 尾页

组态王的n个经典问题解答之一 点击:12660 | 回复:64



如火

    
  • 精华:172帖
  • 求助:0帖
  • 帖子:803帖 | 5249回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2005-11-16 12:09:00
楼主
1、变量设定中最大(小)值及最大(小)原始值的意义?
      最大(小)值是变量在现实中表达的工程值(如:温度、压力等)的大小,而最大(小)原始值是采集设备中[寄存器]数字量的最大(小)值(如板卡中的819-4095等)。一般对于板卡设备此值为物理量经AD转换之后的值,如12BitAD此值范围0~4096、16BitAD为0~65535,对于PLC、智能仪表、变频器,其本身已将物理值转换为工程值所以此时最大(小)值与最大(小)原始值在设置时是一致的.

2:组态完成后发现工程特别大,怎样把工程文件变小?
    可以删除*.AL2(报警信息文件),*.REC(历史记录文件),*.111文件(*.pic文件的备份文件)的文件。

3:在定义变量的基本属性时状态栏中的保存数值、保存参数是什么意思?
    保存参数:在系统运行时,修改变量的域的值(可读可写型), 系统自动保存这些参数值,系统退出后,其参数值不会发生变化。当系统再启动时,变量的域的参数值为上次系统运行时最后一次的设置值。无需用户再去重新定义 。
    保存数值:系统运行时,当变量的值发生变化后,系统自动保存该值。当系统退出后再次运行时,变量的初始值为上次系统运行过程中变量值最后一次变化的值。

4:如何不进入系统桌面环境而直接运行组态王工程如何实现(Win98系统)?
    编辑Win98系统下的System.ini文件,将shell=explorer.exe改为:
          path=c:\ProgramFiles\Kingview\
          shell=Touchvew.exe  即可

5:组态王里画面属性中覆盖式与替换式有何区别?
     覆盖式画面出现时,它重叠在当前画面之上,其他打开的画面还在运行,关闭后被覆盖的画面又可见。替换式画面出现时,所有与之相交的画面自动从屏幕和内存中删除,不再运行。

6:如何利用多个摄像头在组态王上显示多幅画面?
     用户需要增加硬件设备:矩阵转换器和画面分割器。视频采集后通过矩阵转换和画面分割再送进组态王中,例如需要显示16个画面,可选择16画面分割器。

7:如何将gif动画用在组态王画面中?
      在组态王画面中的工具箱内选折<画点位图 designtimesp=451>这一项并用鼠标在画面中画出一个点位图块,然后点击鼠标右键,在其下拉式菜单中选折〈从文件加载〉,选择所需的gif动画文件。

8:如何用组态王在启动一个应用程序时打开任意路径下的一个文件?
      一在组态王中定义一个内存字符串型变量,在StartApp函数调运之前,赋给该变量值,为:应用程序路径+一个或 两个空格+文件路径、文件名 、文件扩展名。接下来用StartApp函数,其参数为该变量名称。如用WordPad启动时打开一个.alg文件:定义“ 文件”问内存字符串型变量,命令语言为:文件="C:\Progra~1\Access~1\word.exe "+"C:\Progra~1\Kingview\Example\Kingdem~3\"+文件名; startapp(文件);/*文件名可以任意给定,如用列表框选择的结果等。[文件名为8.3格式]

9:事件命令语言和程序命令语言内容的长度是否能够加长?
   组态王命令语言的长度为20k,无法加长,但可以将一个命令语言分为几个事件命令语言。

10:为什么有些打印机在打印实时报警时打出的为乱码?
     为保证实时报警打印的实时性,组态王将实时报警信息直接送到打印端口(如LPT1)输出打印,而不是调用WINDOWS系统的打印,因为在打印时要求有字库的支持,而直接送端口打印没有调用任何系统的东西,所以就要求打印机提供这些字库。如果没有字库,则打印出来的东西肯定为乱码。现在市场上的打印机除了部分针式打印机(如EPSON LQ1600K系列、LQ1900等)具有硬字库外,其余的打印机,所以打印出来的实时报警很容易出现乱码。

11:为什么有些网络在报警窗中不出现登录和注销事件?
      登录和注销事件在组态王中是作为报警事件显示在报警窗中,这就要求作为登录服务器的机器必须有自己的报警服务器,因此建议用户将作为登录服务器的机器同时做为IO服务器,并选定一个报警服务器作为这台机器的报警服务器。

12:如何查询历史报警?
     1、打开组态王工程浏览器下的"报警配置"项,在其对话框的〈文件保存〉栏里输入报警信息存放的天数,并单击报警记录格式,其弹出的对话框里可以进行显示报警信息时间的设置。变量的报警信息是以*.al2文件的格式存放在指定的工程路径下面。 
     2、组态王工程浏览器下的"报警配置"项中选择将报警信息存入数据库,如需在组态王中查询可利用sql函数进行查询.

13:如何计算变化率报警?
     模拟量的值在固定时间内的变化超过一定量时产生的报警,即变量变化太快时产生的报警。当模拟量的值发生变化时,就计算变化率以决定是否报警。变化率的时间单位有三种:秒、分和时。变化率报警利用如下公式计算:((变量的当前值 - 变量上一次的值)*100)* 单位对应的值/((这一次产生值的时间-上一次产生值的时间)* (最大值 - 最小值)(注:如果是秒,为1;如果是分,为60,如果是时,为3600)) 取其整数部分的绝对值做为结果,若计算结果大于定义的变化率的值,则出现报警。

14:如何利用KVDBGrid控件根据日期条件查询历史报警?
    将数据库中表Alarm中的字段AlarmDate字段类型改为“日期型”,利用KVDBGrid进行条件查询,日期变量为:DateString,字符串类型
    历史报警查询.Where="AlarmDate={d '"+\\本站点\DateString+"'}";
    历史报警查询.FetchData();      
    历史报警查询.FetchEnd();   

15:如何利用KVDBGrid控件根据报警变量进行相似查询历史报警?
    历史报警查询.Where="VarName  like+'%"+\\本站点\报警变量+"%'";
    历史报警查询.FetchData();  
    历史报警查询.FetchEnd();   

16:如何利用KVDBGrid控件根据日期范围查询一段日期的历史报警?
    历史报警查询.Where="AlarmDate >={d'"+\\本站点\HTDate+"'} and  AlarmDate <={d'"+\\本站点\HTDate1+"'}";
    历史报警查询.FetchData();      
&n



mgq_1980

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 155回
  • 年度积分:0
  • 历史总积分:116
  • 注册:2012年10月25日
发表于:2018-04-23 14:53:31
61楼
非常有用,学习学习!

什么玩意12345

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 41回
  • 年度积分:0
  • 历史总积分:99
  • 注册:2018年5月11日
发表于:2018-05-11 09:26:44
62楼
谢谢老师分享,学习一下丰富自己

jingbaoquan

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 226回
  • 年度积分:0
  • 历史总积分:139
  • 注册:2011年6月14日
发表于:2018-06-15 09:54:10
63楼
太需要了!!!


赵伟东

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 36回
  • 年度积分:0
  • 历史总积分:51
  • 注册:2005年7月13日
发表于:2020-01-20 21:20:12
64楼

谢谢楼主的分享!多多学习。


热门招聘
相关主题

官方公众号

智造工程师
    首页 上一页 1 2 3 4 下一页 尾页