一种基于CAN通讯的生产线工序控制管理方法与流程

文档序号:16663777发布日期:2019-01-18 23:08阅读:278来源:国知局

本发明涉及自动化控制技术领域,具体的说,是一种基于can通讯的生产线工序控制管理方法。



背景技术:

工业中一个成品的生产往往需要好几个工序加工,因此,需要进行工序的转换。传统生产中,需要人工干预工序转换或者采用外置的plc控制模块进行统筹控制实现转换工序。人工干预增加了人工成本,且存在不安全因素;外置plc统筹控制增加了设备成本,而且需聘请专业人员针对不同的生产工艺编程,增加了设计成本,人工成本,接线复杂。



技术实现要素:

本发明的目的在于提供一种基于can通讯的生产线工序控制管理方法,用于解决现有技术中人工控制工序转换不安全以及外置plc控制工序转换中成本高、接线复杂的问题。

本发明通过下述技术方案解决上述问题:

一种基于can通讯的生产线工序控制管理方法,包括:

步骤s100:将产线上的机器人通过can通讯连接,并设置其中一台机器人为中控机器人;

步骤s200:将所述中控机器人与产线上的设备建立伺服通讯,控制设备的启动、停止、报警复位以及伺服通讯;

步骤s300:中控机器人采集机器人的状态信息,并通过can通讯传递信号和控制机器人协同工作。

进一步地,所述步骤s300具体包括:

步骤s310:中控机器人发送循环针一和循环针二,所述循环针一用于监视每个机器人的状态和控制产线上设备的动作信号,所述循环针二用于轮询收集每台设备的状态信息;

步骤s320:中控机器人与其他的机器人通过can通讯交互状态信息;

步骤s330:产线上的每个机器人根据自身以及相邻两台机器人的状态信息进行协同工作。

进一步地,所述步骤s320包括:

步骤s321:机器人在动作节点预置中间继电器,用于实现对逻辑信号的控制;

步骤s322:中间继电器的信号通过can通讯传递,用于产线上的机器人交互状态信息。

进一步地,所述步骤s330具体为:机器人判断自身以及相邻机器人的状态信息,判断是否允许执行操作,如果允许,则执行操作并在操作完成后根据自身状态信息的改变通过can通讯改变相邻机器人的状态信息,如果不允许,则继续等待。

进一步地,所述步骤s310中产线上设备的动作信号联机状态、自动运行启动、自动运行停止、报警复位、伺服上电和伺服下电,所述动作信号由循环针一控制设备的m继电器输出实现。

进一步地,所述循环针一和循环针二采用不同的发送时间间隔。

进一步地,所述每台设备的状态信息整合成状态字,放在固定的地址区域,中控机器人采集每台设备的状态字后又将机器人的状态字放在对应的固定区域。

本发明与现有技术相比,具有以下优点及有益效果:

(1)本发明自带工序控制,自动采集数据,无需人工干预,无需增加控制设备,向上能反馈生产效率、产量统计及产线上每台机当前的状态;向下能控制产线启动、停止和报警复位等。

(2)本发明操作简单,智能化和信息化程度高,同时接线少,简单易上手,与车间管理上位机兼容性好,成本低。

(3)本发明利用can总线低成本、数据传输距离长、可根据指定的id决定接收或屏蔽该报文、可靠的错误处理和检错机制、发送的信息遭到破坏后可自动重发、同一端口既可发送数据又可接收数据等优点,将整个生产线上的机器人控制器联系起来,统一管理,实现数据共享和相互之间协同工作。

具体实施方式

下面结合实施例对本发明作进一步地详细说明,但本发明的实施方式不限于此。

实施例1:

一种基于can通讯的生产线工序控制管理方法,包括:

步骤s100:将产线上的机器人通过can通讯连接,并设置其中一台机器人为中控机器人;

步骤s200:将所述中控机器人与产线上的设备建立伺服通讯,控制设备的启动、停止、报警复位以及伺服通讯;

步骤s300:中控机器人采集机器人的状态信息,并通过can通讯传递信号和控制机器人协同工作,具体地,包括:

步骤s310:中控机器人采用不同的发送时间间隔发送循环针一和循环针二,所述循环针一用于监视每个机器人的状态和控制产线上设备的动作信号,所述循环针二用于轮询收集每台设备的状态信息,产线上设备的动作信号联机状态、自动运行启动、自动运行停止、报警复位、伺服上电和伺服下电,所述动作信号由循环针一控制设备的m继电器输出实现;所述每台设备的状态信息整合成状态字,放在固定的地址区域,中控机器人采集每台设备的状态字后又将机器人的状态字放在对应的固定区域;

步骤s320:中控机器人与其他的机器人通过can通讯交互状态信息;

步骤s321:机器人在动作节点预置中间继电器,用于实现对逻辑信号的控制;

步骤s322:中间继电器的信号通过can通讯传递,用于产线上的机器人交互状态信息。

步骤s330:产线上的每个机器人根据自身以及相邻两台机器人的状态信息进行协同工作,具体地,机器人判断自身以及相邻机器人的状态信息,判断是否允许执行操作,如果允许,则执行操作并在操作完成后根据自身状态信息的改变通过can通讯改变相邻机器人的状态信息,如果不允许,则继续等待。

将产线上的每个机器人控制器通过can通讯连接,产线上首尾的两台机分别称为首台机和尾台机,设置首台机具备中控功能,相当于整条产线的大脑,能控制整条产线的启动,停止,报警复位,伺服通讯等;同时首台机也定时采集其他机器人的状态信息,例如机器人对应编号,联机状态,伺服通讯状态,运行状态,故障状态,当前产量,生产效率等,并通过can通讯进行信号交互,方便机器人与其相邻的两台机器人之间进行协同工作,支撑工序之间的精密衔接和可靠配合。首台机以不同的间隔时间发送两条循环针,控制整条生产线动作以及收集产线上每台机的状态。循环针一控制生产线动作,通过这条循环针可直接省去上位机,首台机即可控制这条冲压线动作。循环针中主要控制以下信号:

联机状态(m893):监视产线上的每台机的联机状态,若哪台机断线,可在首台机报警提示哪台机断线

自动运行启动(m894):循环针会根据首台机的指令控制每台机的m894输出,来控制整条产线启动

同理:自动运行停止(m895),报警复位(m896),伺服上电(m897),伺服下电(m898)都是循环针会根据首台机的指令控制每台机的m继电器输出,来控制整条产线自动运行停止,报警复位,伺服上电,伺服下电

循环针二为轮询每台机的生产状态,因为生产状态实时性要求不高,故用循环周期较长的循环针来处理;同时也不会影响实时性要求高的循环针。

每台机的生产状态整合状态字,放在固定的地址区域。首台机采集后又将每台机械手的状态字放在对应的固定区域,方便上位机采集。以下是状态字的举例:

机器人编码:gi180;

产量低字:gi181,

产量高字:gi182;

生产效率:gi183;

机器人状态信息:gi184;

gi184高字节,从高位到低位的值依次为000000x15x8

gi184低字节,从高位到低位的值依次为:x11m829m830m880m889m20m21m128

x8:上台机冲床上死点

x11:冲床上死点

m829:冲压允许

m880:冲床的单次模式

m889:通信连接

m20:伺服使能

m21:运行中

m128:系统报警停止机器人。

实施例2:

在实施例1的基础上,以产线上除了首台机和尾台机外的中间机的搬运工序为例进行说明,中间机要做的动作即为从上一台冲床中取料出来,送至下一台冲床中冲压。如何和冲床以及其上下台的机器人配合好,都是靠信号交互的。就好似两个人之间的协作,冲床冲压完成后,告知机器人,可以取料了;机器人取走料,也会告知上一台机器人,我取走了,你可以重新放料了。

中间机的搬运程序如下:

1.movjp0;1取料待机点

2.doutm838=on激活plc提示回路:提示等取料超时

3.waitm885=ont=0等上一台取料允许

4.doutm838=off关闭plc提示回路

5.doutm887=off禁止上一台放料

6.doutm854=on逃跑开

7.*123;取料点上方标志

8.movjp2取料上方

9.movjp3取料点

10.jump*sfifm848=on选择无料运行,则跳过吸料

11.*sf

12.movjp4取料上方

13.movjp6取料安全点

14.doutm852=on吸料检测开

15.ifm828=on如果阀开的

16.ifm861=on如果没吸料

17.waitm806=on提示按键

18.doutm828=off关阀

19.doutm832=on标志,为了跳转

20.endif

21.endif

22.doutm852=off吸料检测关

23.jump*123ifm832=on跳转去重新取料

24.doutm887=on允许上一台放料信号

25.doutm853=on掉料检测开

26.doutm854=off逃跑检测关

27.movjpf0放料待机点

28.doutm836=on激活plc判断超时回路:判断等待允许放料信号是否超时

29.waitm886=ont=0等下一台放料允许

30.waitx11=offt=0等冲床上死点

31.doutm836=off关闭plc判断超时回路

32.doutm888=off禁止下一台取料

33.doutm853=off掉料检测关

34.doutm854=on逃跑检测开

35.movjpf2放料上方

36.movjpf3放料点

37.movjpf4放料上方

38.movjpf5冲压安全点

39.doutm840=on冲压安全点标志

40.doutm854=off逃跑检测关

上面的程序中在不同的动作节点预置中间继电器来实现重要信号逻辑的控制,这些中间继电器的信号交互都是通过can通讯传递的,如第3行,等待m885的有效信号,即为等待上一台机器人发来的信号“冲压正常完成,可以取料了”;第4行,输出m887为on,即为发送信号到上一台机器人,“我正在进来取料,你不能进来”;第24行,输出m887为off,即为发送信号到上一台机器人,“我已经取走料了,你可以进来放料了”;第29行,等待m886的有效信号,即为等待下一台机器人发来的信号“你可以进来放料了”;第32行,输出m888为off,即为发送信号到下一台机器人,“我进来放料了,你不要进来取料”。而发送给下一台机器人的信号m888为on,“冲压已正常完成,你可以进来取料”,是由plc判断冲压正常完成后发出的。

can通讯传递相邻两台机器人的交互逻辑信号:

上台允许取料信号m885(接收区)

下台允许放料信号m866(接收区)

允许上台放料信号m8870→1:强制上一台m886=1

m8871→0:强制上一台m886=0

允许下台取料信号m8880→1:强制下一台m885=1

m8881→0:强制下一台m885=0

每台机的本身的允许取料信号和允许放料信号是m885和m886;而m887和m888是本台机依据它们的电平变化,通过can通讯来改变上台机m886或下台机m885的状态,以此建立的信号交互和衔接

实施例3:

在实施例2的基础上,中间机在搬运工序中还包括判断等可取料可放料信号是否超时,取料是否成功,搬运料的途中掉料了如何处理,什么时候冲压,冲压是否正常,冲压异常了如何处理,都是plc线程结合程序判断控制的,如搬运程序第2、3、4行为等待取料的程序段,第28、29、30、31行为等待放料的程序段;结合plc的判断提示回路,t10,t11为等待时间的时间继电器,在t10的时间内,等到了m885,则程序正常运行;若没等到,则提示等待超时。同理等待放料。

搬运程序中有一段取料检测程序,如下,取料成功,则继续运行;取料失败,则跳转回去重新取料。取料是否成功,是plc判断的:

14.doutm852=on吸料检测开

15.ifm828=on如果阀开的

16.ifm861=on如果没吸料

17.waitm806=on提示按键

18.doutm828=off关阀

19.doutm832=on标志,为了跳转

20.endif

21.endif

22.doutm852=off吸料检测关

23.jump*123ifm832=on跳转去重新取料

m852是吸料检测开关,增加这个开关目的在于在什么位置检测吸料是否成功,一般并不希望在冲床内停留来检测吸料是否成功。当吸料检测开关开启,吸料电磁阀y11打开,则一直判断有没吸上料的信号x0,若x0无效,则吸料失败,m861有效,触发取料失败弹框。然后等待确认重新取料操作,跳转至取料点上方重新取料。如果x0有效,则取料成功,m851有效,触发掉料报警检测,直到放料。

机器人在冲压安全点启动冲压后,并不会停留,而是继续回上一台冲床中取料,本台冲床冲压是否正常全部交给了plc线程,plc线程判断冲压正常,就会输出m888有效,can通讯检测到m888电平变高,置位下一台机器人的m885有效,告知了下一台机器人可进来取料。若plc判断冲压异常,则不会输出m888有效,这样下台机会出现等取料超时提示;本台机器人会出现放料超时提示。

尽管这里参照本发明的解释性实施例对本发明进行了描述,上述实施例仅为本发明较佳的实施方式,本发明的实施方式并不受上述实施例的限制,应该理解,本领域技术人员可以设计出很多其他的修改和实施方式,这些修改和实施方式将落在本申请公开的原则范围和精神之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1