自锁线路 点击:4489 | 回复:108



GiGi217

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:8帖 | 57回
  • 年度积分:0
  • 历史总积分:237
  • 注册:2006年4月06日
发表于:2006-04-08 10:26:00
楼主
PLC基本知识,自锁线路程序如下:
LD X0
OR Y0
ANI X1
OUT Y0
END



Yorktown

  • 精华:1帖
  • 求助:0帖
  • 帖子:13帖 | 532回
  • 年度积分:0
  • 历史总积分:768
  • 注册:2002年6月28日
发表于:2006-04-30 16:17:00
61楼
讲得好,浅显易懂,分析透彻。谢谢啊!

云锋

  • 精华:1帖
  • 求助:4帖
  • 帖子:252帖 | 5541回
  • 年度积分:0
  • 历史总积分:30376
  • 注册:2005年6月24日
发表于:2006-05-01 11:55:00
62楼
[color=#0000FF]ALTP[/color]是什么指令?

云锋

  • 精华:1帖
  • 求助:4帖
  • 帖子:252帖 | 5541回
  • 年度积分:0
  • 历史总积分:30376
  • 注册:2005年6月24日
发表于:2006-05-01 11:56:00
63楼
各位,不好意思,没看完第二页。。 :( 

  :)

云锋

  • 精华:1帖
  • 求助:4帖
  • 帖子:252帖 | 5541回
  • 年度积分:0
  • 历史总积分:30376
  • 注册:2005年6月24日
发表于:2006-05-01 12:51:00
64楼
ALTP指令,所有型号都支持吗?

611

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 76回
  • 年度积分:0
  • 历史总积分:85
  • 注册:2006年4月06日
发表于:2006-05-09 15:27:00
65楼
顶一下!借这个平台可以讨论讨论别的技术方面的问题嘛!

9515136

  • 精华:0帖
  • 求助:40帖
  • 帖子:305帖 | 1715回
  • 年度积分:0
  • 历史总积分:6747
  • 注册:2004年9月09日
发表于:2006-05-09 15:48:00
66楼
ld x0
ld x1
keep y0
end
行不行啊

wanggq

  • 精华:2帖
  • 求助:0帖
  • 帖子:24帖 | 5342回
  • 年度积分:0
  • 历史总积分:10407
  • 注册:2004年8月21日
发表于:2006-05-09 18:52:00
67楼
回复“云中跃”网友:

  我只用过三菱PLC中的FX系列,故只能在这一范围内回答你的问题。“ALTP”命令适用机型为:FX1s、FX1n、FX2n、FX2nc 。而FX0s机型只适用于“ALT”命令,所以要配合“PLS”命令或“PLF”命令来使用。

wanggq

  • 精华:2帖
  • 求助:0帖
  • 帖子:24帖 | 5342回
  • 年度积分:0
  • 历史总积分:10407
  • 注册:2004年8月21日
发表于:2006-05-09 19:07:00
68楼
    回复“9515136”网友:

  三菱FX系列的PLC没有“KEEP”(“保持”命令)。这一命令可在OMRON或其它PLC中使用。

  在FX系列的PLC中用“SET”和“RST”两条命令来实现你的那个功能。如下述程序例:

   LD  X0

   SET  Y0

   LD  X1

   RST  Y0

   END

611

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 76回
  • 年度积分:0
  • 历史总积分:85
  • 注册:2006年4月06日
发表于:2006-05-10 08:34:00
69楼
在三菱FX系列的编程教材中说到:将触点状态变化边沿检测指令用于辅助继电器时,M0-M2799和M2800-M3071两组电器动作有差异。但具体的规则又是什么呢?"wanggq"大哥能指点小弟一下吗?

wanggq

  • 精华:2帖
  • 求助:0帖
  • 帖子:24帖 | 5342回
  • 年度积分:0
  • 历史总积分:10407
  • 注册:2004年8月21日
发表于:2006-05-11 18:28:00
70楼
下面引用由611在 2006-5-10 8:34:00 发表的内容:
  在三菱FX系列的编程教材中说到:将触点状态变化边沿检测指令用于辅助继电器时,M0-M2799和M2800-M3071两组…
--------------------------------------------------------------------------------------------
    回复“611”网友:
  
  很抱歉!你说的编程教材我没看过。我想这一教材把辅助继电器分成两组可能是说分成“一般用继电器”和“保持用继电器”。但是,我查看了一些FX系列PLC的随硬件附带的《使用手册》关于辅助继电器的划分情况如下:
 一、FX2/FX2c
  一般用:M0~M499 共500点;
  保持用:M500~M1023 共524点(可通过设置改变为非保持区域);
  保持用:M1024~M1535 共512点(不可通过设置来改变区域);
  特殊用:M8000~M8255 共256点。 
 二、FX1
  M0~M1023 共计1024点[有的资料中记载为(M0~M1024)。并且“保持”和“非保持”区域划分不详];
  特殊用:M8000~M8255
 三、FX0s
  一般用:M0~M495 共496点
    保持用:M496~M511 共16点
  特殊用:M8000~M8254 其中的57点
 四、FX1s
  一般用:M0~M383 共384点;
  保持用:M384~M511 共128点;
  特殊用:M8000~M8255 [《使用手册(Y992D87601A)》第13页标称是256点,但我统计只有其中104点才是定义了功能的]
 五、FX1n
    一般用:M0~M383 共384点;
  保持用:M384~M1535 共1152点;
  特殊用:M800~M8255 [《使用手册(Y992D89801A)》第22页标称共256点,但其中也有很多未定义的特殊继电器,这些未定义的继电器也是不能用的!]
 六、FX2n
  一般用:M0~M499 共500点;
  保持用:M500~M1023   524点(可设置变更为非保持区域);
  保持用:M1024~M3071  2048点(不可设置变更为非保持区域);
    特殊用:M8000~M8255   其中156点[摘自《使用手册(Y992D69401)》第16页]
 
   可见,上述划分与你提供的划分(M0-M2799和M2800-M3071两组)有很大区别!且FX系列中的分系列有各自的划分区域范围。

  辅助继电器用于“PLS”和“PLF”两条命令时,一般适用于“非保持型”的“一般用继电器”。如果使用“保持继电器”在某些特殊条件下可能会发生错误。

古代人

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 64回
  • 年度积分:0
  • 历史总积分:74
  • 注册:2006年5月01日
发表于:2006-05-11 20:57:00
71楼
想请问一下:FX1N中的SFTR指令在编程时如何设置其参数?上楼的大侠!

611

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 76回
  • 年度积分:0
  • 历史总积分:85
  • 注册:2006年4月06日
发表于:2006-05-12 09:53:00
72楼
谢谢你的回答,关于你说的这种分类,我也知道的。其实我想说的是M对于边沿触发指令的反应,像下面这个程序:
0 LDP M2900
2 SET M20
3 LDP M2900
5 SET M21
6 LD X010
7 OR M2900
9 ANI X011
10 OUT M2900
12 LDP M2900
14 SET M22
15 LDP M2900
17 SET M23
18 LDF M2900
20 SET M24
21 LDP M2900
23 SET M25
24 LDF M2900
26 SET M27
27 LD M2900
29 OUT M7
30 END
它所执行的结果就是当X10为ON时,第0、12、27步的M2900动作,断开X11时,18、27的M2900动作。可另一本教材上说应该只有线圈后面的一个边沿指令动作(我测试发现第0步的上升沿确实动作的)。所以我想问一下大哥,这具体应该是一个什么样的规则?

灵悟

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 54回
  • 年度积分:0
  • 历史总积分:72
  • 注册:2006年3月29日
发表于:2006-05-12 13:29:00
73楼
谢谢,看了这文章,学会了一个指令ALT,值得

wanggq

  • 精华:2帖
  • 求助:0帖
  • 帖子:24帖 | 5342回
  • 年度积分:0
  • 历史总积分:10407
  • 注册:2004年8月21日
发表于:2006-05-12 14:15:00
74楼
   回复“611”网友:

   M2900处在停电保持区域,它与非保持区域的继电器在PLC正常运行时的功能是没有区别的!只有在PLC从“RUN”到“STOP”(或停电)再到“RUN”时才表现出它们的区别来。

wanggq

  • 精华:2帖
  • 求助:0帖
  • 帖子:24帖 | 5342回
  • 年度积分:0
  • 历史总积分:10407
  • 注册:2004年8月21日
发表于:2006-05-12 14:30:00
75楼
回复“古代人”网友:

  我看过你关于使用“SFTR”命令的一段程序。现在我把它复制到这里,并对此做一个点评。你的程序如下:

   LDI: M4
   LD:  SFTR   MO   M15   K4   K4
      LD:   M0
      OUT:  Y0
      LD:   M1
      OUT:  Y1
       -
       -
      LD:   M3
      OUT:  Y3


   点评:

    1、你这个程序的第二行不应当用“LD”语句,这是因为“SFTR”命令是一个“执行命令”(或称“右手命令”),而“LD”以及“AND”、“OR”等命令只是用于“执行条件”的一类命令,它们不能用于“执行命令”。

  你可以把原第二行的“LD”语句删除,使程序成下述样子:

    LD   M4
    SFTR  M0  M15  K4  K4

  2、“SFTR”叫“位右移”命令,它有四个“操作数”依次叫做:①“源”、②“目标”、③“常数1”(可称为n1)、④“常数2”(可称为n2 )。

  “源”和“目标”都是“变量”,而第③个和第④个操作数都是“常量”所以称之为“常数”。

  第③个操作数定义“移位寄存器”的“长度”(即“位数”);第④个操作数定义“SFTR”命令每被执行一次时产生“移位”的“位数”。

  在“SFTR”命令被执行时,第①个操作数“源”的内容被复制到第②个操作数“目标”中最左的n2 个“位”中去,而“目标”中原有的内容以n2个“位”划分为“节”依次向右移动,最右的一个“节”原有的内容则被相邻左边的一个“节”原有的内容给挤出而“丢失”(或称之为“溢出”)。

  3、“SFTR”命令的参数要求:“源”和“目标”都只能用“位元件”,而不能使用“字元件”。


  上工的时间到了,我有空再来接着和你谈!

611

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 76回
  • 年度积分:0
  • 历史总积分:85
  • 注册:2006年4月06日
发表于:2006-05-12 18:17:00
76楼
我的意思是说,M2800以前的在其从OFF变为ON时,它所有的上升沿都会动作,而M2800-M3071则是部分上升沿动作的。你若通过上个程序的测试也可以看出来的。

611

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 76回
  • 年度积分:0
  • 历史总积分:85
  • 注册:2006年4月06日
发表于:2006-05-12 18:25:00
77楼
 wanggq大哥对于我们这些小弟们的问题不管简单与否都耐心解答,真是很感激!

wanggq

  • 精华:2帖
  • 求助:0帖
  • 帖子:24帖 | 5342回
  • 年度积分:0
  • 历史总积分:10407
  • 注册:2004年8月21日
发表于:2006-05-12 20:45:00
78楼
   回复“611”网友:

   你说的这个问题我注意到了。我抽空在FX2n上实践一下再给你答复。

wanggq

  • 精华:2帖
  • 求助:0帖
  • 帖子:24帖 | 5342回
  • 年度积分:0
  • 历史总积分:10407
  • 注册:2004年8月21日
发表于:2006-05-13 14:14:00
79楼
   回复“611”网友的问题:

  用于“微分条件命令”中作操作数时,M0~M2799与M2800~M3071这两组继电器之间的区别是:

  对于“用‘后一组继电器’作操作数的‘同一个微分条件命令’”,PLC程序不但只对其执行一个周期,并且在一个周期里只执行扫描过程中遇到的第一个“微分命令”。

  例如你所给的那个程序:

  当你按动“X10”使“M2900”得电并保持,程序扫描至第12步时,“LDP M2900”有效,“M22”被“置位”。之后的第15步无效,“M23”不能被“置位”。同理,第21步也无效“M25”也不能被“置位”。

  但是,第0步却能有效,使“M20”也被“置位”!这是什么原因呢?这是因为在“M2900”得电的那一个周期里,程序扫描第0步时,处在第0步的“M2900触点”还不是“1”,到次一个周期扫描至第0步时,处在第0步的“M2900触点”已由“0”变化成“1”因此符合“前微分”的定义并且它又是这一周期程序扫描遇到的第一个“用‘M2800~M3071中的继电器’作操作数的‘同一个微分条件命令’”,故这一步的“微分命令”在这一周期有效,“M20”也被“置位”。而随后的第3步,因这一周期程序已执行了一次“用‘M2800~M3071中的继电器’作操作数的‘同一个微分条件命令’”所以无效!

  我们凭感觉来看,当一按动“X10”时,我们就看到“M20”和“M22”同时被“置位”,这是因为我们的视觉反应不够快的缘故,我们只要用逻辑推理的方法就可以知道“M22”在前一周期被“置位”,而“M20”则要在次一个周期才能被“置位”。

wanggq

  • 精华:2帖
  • 求助:0帖
  • 帖子:24帖 | 5342回
  • 年度积分:0
  • 历史总积分:10407
  • 注册:2004年8月21日
发表于:2006-05-13 14:29:00
80楼
感谢“611”网友提出了以前被我疏忽了的问题!

  帮助别人的过程同时也是自己学习的过程。

热门招聘
相关主题

官方公众号

智造工程师