一个分拣程序的编写 点击:1343 | 回复:8



zmddhbe2

    
  • 精华:0帖
  • 求助:1帖
  • 帖子:1帖 | 2回
  • 年度积分:0
  • 历史总积分:11
  • 注册:2013年8月10日
发表于:2013-08-10 09:23:55
楼主

就是浙江天煌科技那种光机电气一体化试验台,有金属零件,白色尼龙零件,黑色尼龙零件。要求A出口的零件按金属、白色、金属、白色的顺序排列,B出口的零件按白色、黑色、黑色排列,同时满足A出口和B出口的零件优先进入A出口,不满足组合排列关系的零件进入C出口。

实在是不知道如何下手,求大神给分析一下这个程序用该怎么编写,都需要用什么指令。





wyb2866255---王者之师

  • 精华:57帖
  • 求助:0帖
  • 帖子:148帖 | 2872回
  • 年度积分:1
  • 历史总积分:31450
  • 注册:2010年7月01日
发表于:2013-08-10 15:27:10
1楼

  回复:要想编写这个程序,首先要按AB口的排列顺序总结出分选模型:

1、动作安排:3种零件移到分拣处时,由3种传感器进行分选判断:如是白色零件,传感器1 将使I0.0=1,如是黑色零件,传感器2 将使I0.1=1,如是金属零件,传感器3 将使I0.2=1,(即分选出不同的零件是用3个传感器完成,具体工作原理这里不做说明)。

  2、A口拨出装置为Q0.0,其动作时间=1秒,B口拨出装置为Q0.1,动作时间=1秒,C口拨出装置为Q0.2,动作时间=1秒,

  3、分选:借用2个存储器MB0、MB1作加1计数器,并利用它们的计数状态进行分选:

(1)白色零件分选:如I0.0=1,说明到分拣处的零件为白色,如此时M0.0=0,则使Q0.0=1,即将零件拨入A口。如此时M0.0=1,且MB1=0时,则使Q0.1=1,即将零件拨入B口,如此时M0.0=1,且MB1≠0时,则使Q0.2=1,即将零件拨入C口。

A、B、C 口拨入动作时间均为1秒,1秒后各自复位,其A口复位时将MB0加1,其B口复位时将MB1加1,并立即对MB1值进行判断:如MB1≥3,立即使MB1清零(即MB1=0,运行中MB1值始终为0、1、2)。

(2)、黑色零件分选:如I0.1=1,说明到分拣处的零件为黑色,如此时MB1≥1,则使Q0.1=1,即将零件拨入B口。如此时MB1=0,则使Q0.2=1,即将零件拨入C 口。其B口动作1秒后复位,且使MB1加1,再判断MB1值。如MB1≥3,则使MB1=0,其C口动作1秒后复位。

(3)、金属零件分选:如I0.2=1,说明到分拣处的零件为金属零件,如此时 M0.0=1, 则使Q0.0=1,即将零件拨入A口,如此时 M0.0=0, 则使Q0.2=1,即将零件拨入C口, A口与C口各动作时间均为1秒,其A口复位后将使MB0加1。

   按上述分选原则,你再仔细琢磨一下,看能否编出分拣程序。


zmddhbe2

  • 精华:0帖
  • 求助:1帖
  • 帖子:1帖 | 2回
  • 年度积分:0
  • 历史总积分:11
  • 注册:2013年8月10日
发表于:2013-08-11 16:05:13
2楼

听了你的讲解,真是茅塞顿开。谢谢了,老鸟。

fyc871356965

  • 精华:1帖
  • 求助:3帖
  • 帖子:14帖 | 1802回
  • 年度积分:0
  • 历史总积分:2312
  • 注册:2012年1月09日
发表于:2013-08-13 22:20:54
3楼

引用 wyb2866255---王者之师 的回复内容:    回复:要想编写这个程序,首先要按AB口的排列顺序...


厉害啊  、、、、

#天涯-工控人生军团

  • 精华:0帖
  • 求助:3帖
  • 帖子:100帖 | 2953回
  • 年度积分:0
  • 历史总积分:8816
  • 注册:2005年3月02日
发表于:2013-08-14 09:37:33
4楼

分析的真透彻!    

wwcsqwww

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 129回
  • 年度积分:0
  • 历史总积分:0
  • 注册:1900年1月01日
发表于:2013-08-18 11:06:15
5楼

想要完成这个编程首先需要找到相应的传感器。

关于编程方法到有多种方法,简单的就是利用置位、复位。

思路:当金属类传感器检查到金属物体时,置位一个中间变量。当物体移动到相应的出料位置比如3(移动3步),这样二个条件满足累加出金属物体,同时复位这个中间变量。以此类推。

haliluya

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 1回
  • 年度积分:0
  • 历史总积分:0
  • 注册:2016年6月16日
发表于:2016-06-16 16:25:57
6楼

回复内容:

对:wyb2866255---王者之师   回复:要想编写这个程序,首先要按AB口的排列顺序总结出分选模型: 1、动作安排:3种零件移到分拣处时,由3种传感器进行分选判断:如是白色零件,传感器1 将使I0.0=1,如是黑色零件,传感器2 将使I0.1=1,如是金属零件,传感器3 将使I0.2=1,(即分选出不同的零件是用3个传感器完成,具体工作原理这里不做说明)。   2、A口拨出装置为Q0.0,其动作时间=1秒,B口拨出装置为Q0.1,动作时间=1秒,C口拨出装置为Q0.2,动作时间=1秒,   3、分选:借用2个存储器MB0、MB1作加1计数器,并利用它们的计数状态进行分选:(1)白色零件分选:如I0.0=1,说明到分拣处的零件为白色,如此时M0.0=0,则使Q0.0=1,即将零件拨入A口。如此时M0.0=1,且MB1=0时,则使Q0.1=1,即将零件拨入B口,如此时M0.0=1,且MB1≠0时,则使Q0.2=1,即将零件拨入C口。A、B、C 口拨入动作时间均为1秒,1秒后各自复位,其A口复位时将MB0加1,其B口复位时将MB1加1,并立即对MB1值进行判断:如MB1≥3,立即使MB1清零(即MB1=0,运行中MB1值始终为0、1、2)。(2)、黑色零件分选:如I0.1=1,说明到分拣处的零件为黑色,如此时MB1≥1,则使Q0.1=1,即将零件拨入B口。如此时MB1=0,则使Q0.2=1,即将零件拨入C 口。其B口动作1秒后复位,且使MB1加1,再判断MB1值。如MB1≥3,则使MB1=0,其C口动作1秒后复位。(3)、金属零件分选:如I0.2=1,说明到分拣处的零件为金属零件,如此时 M0.0=1, 则使Q0.0=1,即将零件拨入A口,如此时 M0.0=0, 则使Q0.2=1,即将零件拨入C口, A口与C口各动作时间均为1秒,其A口复位后将使MB0加1。    按上述分选原则,你再仔细琢磨一下,看能否编出分拣程序。     内容的回复:

可是M0.0什么作用呢?

longfafu

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 267回
  • 年度积分:61
  • 历史总积分:118
  • 注册:2012年10月28日
发表于:2016-06-24 22:35:17
7楼

WERTYUIOP[

;L

wangchen328204

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 13回
  • 年度积分:1
  • 历史总积分:7
  • 注册:2012年7月28日
发表于:2016-08-25 08:18:10
8楼

顶顶顶顶顶顶顶顶顶顶顶顶顶顶大大大


热门招聘
相关主题

官方公众号

智造工程师