台达PLC程序,新手求教,提示下也是巨大帮助,谢谢了。。 点击:667 | 回复:13



丶努力

    
  • 精华:0帖
  • 求助:6帖
  • 帖子:10帖 | 39回
  • 年度积分:0
  • 历史总积分:366
  • 注册:2012年6月26日
发表于:2012-11-12 12:01:54
楼主
两个按钮X1、X2,Y1、Y2、Y3、Y4四个输出:
                   1、按一下X1,输出Y1;再按X1,输出Y2;再按X1,输出Y3;再按X1,输出Y4。
                   2、按一下X2,关闭Y4;再按X2,关闭Y3;再按X2,关闭Y2;再按X2,关闭Y1。
                   3、按下X1,输出Y1;按下X2,关闭Y1;再按下X1,输出Y1。
                   4、按一下X1,输出Y1;再按X1,输出Y2;按一下X2,关闭Y2;再按下X1,输出Y2。
                   5、以下类似。
                   6、循环。

主要是第三第四步,我凌乱了。。



芳季

  • [版主]
  • 精华:5帖
  • 求助:5帖
  • 帖子:86帖 | 5336回
  • 年度积分:0
  • 历史总积分:20165
  • 注册:2003年1月31日
发表于:2012-11-12 12:22:45
1楼

这是因为这两步使用了相同的输入条件。使得你一按就已经跳到第四步了。

你可以自己加一个条件插在中间,这个条件是第一次的按钮必须松手。

afei5645

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 7回
  • 年度积分:0
  • 历史总积分:18
  • 注册:2005年6月06日
发表于:2012-11-12 12:26:43
2楼
这是面试题吧.用循环移位指令即可.X1向左移一位,X2向右移一位

dayan1104

  • 精华:0帖
  • 求助:11帖
  • 帖子:18帖 | 169回
  • 年度积分:76
  • 历史总积分:2106
  • 注册:2009年9月17日
发表于:2012-11-12 13:02:17
3楼

2楼讲的对,用移位指令就可以了

 

丶努力

  • 精华:0帖
  • 求助:6帖
  • 帖子:10帖 | 39回
  • 年度积分:0
  • 历史总积分:366
  • 注册:2012年6月26日
发表于:2012-11-12 14:07:05
4楼
谢谢大家的回答,如果我只用计数指令和比较指令,写第四步的时候,是不是写不了。。

wyb2866255---王者之师

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2012-11-12 14:18:07
5楼

可以这样编程:

    1、按一下X1,X1=1的前沿,使一字节存储器(如M)左移一位再加1,这样第一次按X1,其M存储器内容=0000_0001,第二次按X1,其M存储器内容=0000_0011,第三次按X1,其M存储器内容=0000_0111,第四次按X1,其M存储器内容=0000_1111,将M的第一位(即最低位)送Y1,第二位送Y2,第三位送Y3,第四位送Y4。

   2、按一下X2,X2=1的前沿,使一字节存储器(如M)右移一位,如存储器M内容为0000_1111,即Y1~Y4皆1,如此时按一下X2,X2=1的前沿使M右移一位,M=0000——0111,即Y4=0,再按X2,其M=0000_0011,即Y3、Y4都=0.

   按上面1、2二点编程,即可满足你的1~6的控制要求。

秦君_1

  • 精华:8帖
  • 求助:22帖
  • 帖子:148帖 | 4867回
  • 年度积分:1651
  • 历史总积分:39896
  • 注册:2005年6月28日
发表于:2012-11-13 12:03:44
6楼

要求严格按照1-4步操作的话,你可以采用笨办法每一步都用一个标志位,这个标志位存在,就执行这一步逻辑,完成后清除本步逻辑置位下一步标志位,依次循环。这样不管你再怎么操作,每一部执行都不会受到其他步影响。

丶努力

  • 精华:0帖
  • 求助:6帖
  • 帖子:10帖 | 39回
  • 年度积分:0
  • 历史总积分:366
  • 注册:2012年6月26日
发表于:2012-11-13 12:07:05
7楼
谢谢大家都帮助,我想到了个办法,用加减计数来实现。。

人生路上

  • 精华:0帖
  • 求助:6帖
  • 帖子:25帖 | 123回
  • 年度积分:1
  • 历史总积分:560
  • 注册:2002年4月14日
发表于:2012-11-13 12:42:09
8楼
你用计数器指令也可以阿,但是必须是加减计数器才好

wyb2866255---王者之师

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2012-11-14 13:08:32
9楼
7楼:用加减计数不妥,加法从1+1=2,此时Y2=1,而Y1=0,,由3加1=4,其结果只有Y4=1,而Y1、Y2、Y3却=0,减法也是一样,由4-1=3,其存储器内容是:0000_0100 变为 0000_0011

丶努力

  • 精华:0帖
  • 求助:6帖
  • 帖子:10帖 | 39回
  • 年度积分:0
  • 历史总积分:366
  • 注册:2012年6月26日
发表于:2012-11-14 14:56:01
10楼
回复内容:
对:wyb2866255---王者之师关于 7楼:用加减计数不妥,加法从1+1=2,此时Y2=1,而Y1=0,,由3加1=4,其结果只有Y4=1,而Y1、Y2、Y3却=0,减法也是一样,由4-1=3,其存储器内容是:0000_0100 变为 0000_0011 内容的回复:

单单加减计数是不行,加上比较指令就可以了。。谢谢您。

xingmtv

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 7回
  • 年度积分:0
  • 历史总积分:11
  • 注册:2006年5月29日
发表于:2012-11-28 16:32:24
11楼
用位 移位指令就OK了

charil1

  • 精华:0帖
  • 求助:2帖
  • 帖子:5帖 | 25回
  • 年度积分:0
  • 历史总积分:100
  • 注册:2009年4月08日
发表于:2012-12-01 22:48:14
12楼

有现成的例程。找到就OK了

 

xinglinxuetong

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 4回
  • 年度积分:0
  • 历史总积分:14
  • 注册:2012年11月12日
发表于:2012-12-09 22:46:28
13楼

哪位大侠给出个T形图出来呢,谢谢!


热门招聘
相关主题

官方公众号

智造工程师