用户登陆 用户注册
您的位置:首页> 技术文章>内容正文
PLC与触摸屏实现翻页
[正文]:近段时间开发一种机器系统,其中有一项功能是将每天的机器工作数目在触摸屏中显示出来,天数要两年;并且只要输入日期,触摸屏上就可以将任意时间的数目进行统计。
我自己设计了一个程序,愿与大家分享。
如有问题请指正。
    画面讲述     本系统用的是omron的cqm1h-51的plc,触摸屏用的是pro-face的gp577r。
其画面如下图1-a所见。
  图中所示的b1按下后,就可以设置统计日期;设置完后,再按一下b2,就会统计两年内任意日期内的工件数。
a1下的是指示数,从1~730,a2下的是年月日,如(030528)指的是03年05月28日。
a3即每天的工件数。
c1是向上翻页键,c2是向上翻行键,c3是向下翻页键,c4是向下翻行键。
  


点击查看大图片
  地址分布     触摸屏的系统地址从dm500开始。
   a1下的数字用的是一个触摸屏中的n标签,其功能如图2-a所示。
地址是触摸屏的内部地址区域,我用的是ls2000; n标签上有一个运算,从上到下分别是ls2000+1~ls2000+10。
   a2下的数字用的是一个触摸屏中的两位e标签,其功能如图2-b所示。
地址是plc的内部地址区域,我用的是dm1000~1001。
从上到下分别是dm1000~dm1018。
   a3下的数字用的也是一个触摸屏中的两位e标签,其功能如图2-c所示。
地址是plc的内部地址区域,我用的是dm2000~2001。
从上到下分别是dm2000~dm2018。
   b1是触摸键,用来设定起始日期和终止日期日期。
b2=22915,用来触发统计总的工件数。
   c1~c4用的是一个触摸屏中的t标签,其功能如图2-d所示。
地址是触摸屏的内部地址区域,c1=ls50102,c2=ls50103,c3=ls50100 ,c4=ls50101。
       触摸屏程序    pro-face的触摸屏有d-script editor功能,请大家看以下的程序。
     id : 0000   trigger : bit rising , edge bit address : ls050100   formula :    if ([w:ls1000]<=758)    123;[w:ls1000]=[w:ls1000]+2   125;   endif   date type : bcd data length : 16 bit   此程序的是用来向下翻行,即指示值(a1)小于758时,将画面向下翻一行。
   id : 0001   trigger : bit rising , edge bit address : ls050101   formula :    if ([w:ls1000]<=720)    123;[w:ls1000]=[w:ls1000]+40   125;   endif   date type : bcd data length : 16 bit   此程序的是用来向下翻页,即指示值(a1)小于720时,将画面向下翻一页。
   id : 0002   trigger : bit rising , edge bit address : ls050102   formula :    if ([w:ls1000]>=40)   123;[w:ls1000]=[w:ls1000]-40   125;   endif   date type : bcd data length : 16 bit   此程序的是用来向上翻页,即指示值(a1)大于等于40时,将画面向上翻一页。
   id : 0003   trigger : bit rising , edge bit address : ls050103   formula :    if ([w:ls1000]>=2)   123;[w:ls1000]=[w:ls1000]-2   125;   endif   date type : bcd data length : 16 bit   此程序的是用来向上翻行,即指示值(a1)大于等于2时,将画面向上翻一行。
   id : 0004   trigger : timer fn , timer duration : 1   formula :    [w:ls2000]=[w:ls1000]/2   date type : bcd data length : 16 bit   此程序的显示指示数a1。
    plc程序    [network]   name="calendar"(本段是将每天的日期转换到触摸屏中)  [statementlist]   ld 253.13    out tr0    cmp dm0502 hr92 //dm0502是系统的年   and not 255.06    ld tr0    and 049.02    or ld    and not tim252    and not 049.03    and not 049.04    out 049.02    tim 252 #0010    ld tr0    mov dm0502 hr92    cmp dm0503 hr93 //dm0503是系统的月   and not 255.06    ld tr0    and 049.03    or ld    and not tim253    and not 049.04    out 049.03    tim 253 #0010    ld tr0    mov dm0503 hr93    cmp dm0504 hr94 //dm0504是系统的日   and not 255.06    out 049.04    ld tr0    mov dm0504 hr94    and tim252    ld tr0    and tim253    or ld    ld tr0    and 049.04    or ld    out tr1    add #0002 dm0070 dm0070 //dm0070是指针字   cmp dm0070 #0800    and 255.05    ld tr1    and 255.06    or ld    mov #0000 dm0070    ld tr1    add dm0070 #2000 dm0076 //间接寻址,dm2000   add dm0070 #2001 dm0077 //间接寻址,dm2001   add dm0070 #1000 dm0074 //间接寻址,dm1000   bset #0000 *dm0076 *dm0077    mcro 10 dm0502 dm0626 //子程序入口   xfer #0002 dm0628 *dm0074 //日期写入触摸屏    [network]   name="count&reset"(本段是程序记数与复位)  [statementlist]   ld 253.13    out tr0    and 228.10 //触摸屏上清零键   difu 080.10    ld tr0    and 080.10    bset #0000 dm0066 dm0067 //dm0066~67位计数值   ld tr0    and 081.15 //计数角度微分   and hr64.04 //计数角度位置   out tr1    inc dm0066 //工件数的低位   and 255.06    inc dm0067 //工件数的高位   ld tr1    inc *dm0076 //每天工件数的低位   and 255.06    inc *dm0077 //每天工件数的高位    [network]   name="sum"(本段是程序统计)  [statementlist]   ld 253.13    out tr0    and 229.15 //触摸屏上统计键   difu 080.15    ld tr0    and 080.15    set hr70.00 //统计开始标志   mcro 10 dm0602 dm0606 //触摸屏设定起始日期   mcro 10 dm0612 dm0616 //触摸屏设定终止日期   bset #0000 dm0080 dm0083 //指针2   ld tr0    and hr70.00    out tr1    add dm0080 #2000 dm0086 //间接寻址,dm2000   add dm0080 #1000 dm0084 //间接寻址,dm1000   cmpl *dm0084 dm0608    and 255.05    ld tr1    and 255.06    or ld    out 048.01    ld tr1    cmpl *dm0084 dm0618    and 255.07    ld tr1    and 255.06    or ld    out 048.02    ld tr1    and 048.01    and 048.02    addl *dm0086 dm0081 dm0081    and 255.04    inc dm0083    ld tr1    add dm0080 #0002 dm0080    cmp dm0080 #0800    and 255.05    ld tr1    and 255.06    or ld    rset hr70.00    xfer #0003 dm0081 dm0091   

点击查看大图片

点击查看大图片
    


网站首页 培训课程 维修指南
技术文章 家电专栏 供应信息
求购信息 培训资讯 展会信息
电脑专栏 教程下载 资料下载
常用软件 PLC教程 PLC资料
变频伺服 低压电器 维修资料
人机界面 自控仪表 工控机类
文章标题: 搜文章
中国工控资源网手机版 2012
电话:010-67577139 13811659603
培训咨询QQ:657167934 471895637 销售咨询QQ:623769457
联系邮箱:zggkzyw@163.com
 京ICP备11002135号
报时(2026-04-07 14:43:28) 流量统计