在FANUC机器人中使用后台运行逻辑实现PLC功能
后台逻辑概念
PLC是工业自动化领域常用的一种逻辑控制产品,以其性能稳定、兼容性好、可扩展性强、体积小、性价比高而被广泛应用。在机器人产品中,为了降低系统集成的难度,很多机器人产品自身也会在控制系统中嵌入一款小型的PLC系统,FANUC机器人也不例外,只是在机器人中它不在被称为PLC,而是被称为后台逻辑功能。
顾名思义,后台逻辑就是机器人前台运动程序运行过程中,同时后台也在运行的一种用于处理信号逻辑关系的控制程序,二者在运行关系上相互独立。后台逻辑程序可以监视前台的运行状态,同时也可以向前台发送控制信号。当然后台逻辑也可以通过I/O通信,与外部设备连接对机器人周边设备进行运行监视与控制。
后台逻辑功能特点
FANUC机器人后台逻辑功能具有以下特点:
使用后台逻辑时,可以在后台执行只包含对应后台逻辑指令的TP程序,程序从头至尾周而复始的循环扫描,这一点与PLC的运行模式一致的。后台逻辑执行过程中不受急停、暂停、报警的影响。可同时执行8个TP程序作为后台逻辑,优先运行模式下,程序数目超过最大值时,程序停止执行,并发出错误报警。在后台逻辑程序执行期间,不能编辑该程序,不能作为通常的任务来执行。尚未开启后台运行的程序,可以将该程序作为通常的任务来执行。在后台执行程序时,不能通过改写相同名称的程序来加载。电源切断后,在下次通电时,后台逻辑程序将以相同的执行模式被自动执行。后台逻辑运行模式与扫描时间
FANUC机器人后台逻辑功能具有两种运行模式:通常运行模式与优先运行模式。
通常运行模式下,可以在后台逻辑程序中执行所有复合运算指令。对每一个ITP(机器人扫描周期,通常为8ms),可扫描600个程序数据或者逻辑运算符。数目超过600时,扫描时间延长。比如,一个具有1600个操作逻辑,处理时间大约需要24ms。但是,如果优先运行模式的程序已经在后台执行时,每个ITP中执行的逻辑操作数量是:600 -优先运行模式的逻辑操作数的合计。
优先运行模式下,可以在后台执行所有复合运算指令。在优先运行模式下,可以保证每个机器人ITP内后台逻辑程序都可以被执行一次。优先模式下的最大逻辑操作数为540个。对需要高周期执行的指令,其将分割为若干个通常模式的后台逻辑,然后在优先运行模式下执行。
后台逻辑程序可运行指令
机器人后台逻辑程序对指令与数据有一定的要求,与普通的TP程序不同,其不能控制任何运动轴。因此在编程时不能含有任何机器人轴运动指令,比如Joint、Linear、Circular等指令。后台逻辑程序中可运行的指令与数据如下表所示。
后台逻辑程序在使用这些指令与数据时,应注意以下几点要求:
不能将数据M[]指定为后台逻辑赋值语句等号左边部分。程序中包含有可运行的指令以外的指令时,在执行时会发生错误报警。在后台逻辑程序中不能使用脉冲指令,这点和PLC指令有所不同。后台逻辑,可以执行具有条件表达式的赋值语句,条件表达式为OFF的情况下,赋值语句不予执行。如指令IF(DI[1]),DO[1]=(DI[2]),程序被执行时,当Dl[l]为ON时,DI[2]被赋值给DO[1];当DI[1]为OFF时,DO[1]不会改变。使用JMP、 LBL指令时,请指定比JMP指令更后面行的LBL,指定前面行的LBL时,程序执行时系统会发生错误报警。执行包含JMP指令的程序时,由于程序具有分支,因此扫描时间会有变动。编写的条件表达式务必要用括弧圈起来,没有用括弧圈起来的将不被执行。例如普通TP程序中的条件表达式IF DI[1] =ON,JMP LBL[I],在后台逻辑程序中要修改为IF (DI[1]=ON,JMP LBL[1],才能被执行。对于在后台逻辑程序中使用RUN指令执行的程序,要求其暂停时,该程序不会暂停而结束。后台逻辑中执行了用户报警指令时,后台逻辑的程序不会停止。后台逻辑实现方法
FANUC机器人后台逻辑功能的实现还是比较简单的,首先创建一个TP程序,名称可随意命名,如这里使用EXIO1。然后在程序详细信息中,将程序的组掩码全部设置为“*”,即在后台逻辑程序中将机器人运动轴(运动指令)全部屏蔽,只保留逻辑控制功能,这是使用后台逻辑的基本条件。
在创建的TP程序中添加需要的后台运行指令,如下图所示的指令。指令含义:如果后台扫描到信号DO[1]为ON,那么数值寄存器R[1]执行累加1;当DO[1]为OFF程序停止执行。如果扫描到DO[1]为ON时,那么数值寄存器R[1]被重置为0。
后台程序编写完成后,示教器的操作面板中按“MENU”按钮,然后依此选择“6 设置”→“1 后台逻辑”。
在打开的后台逻辑界面中,程序列下使用“[选择]”键选择需要后台运行的TP程序,如EXIO1。然后按“[运行]”键,将后台运行程序激活运行。
示教器界面中依次打开I/O数字输出窗口与数值寄存器窗口,在I/O数字输出窗口中使用“ON”、“OFF”键分别置位与复位数字量输出信号DO[1]、DO[2],可以看到数字寄存器R[1]进行累加1操作、停止累加操作、被重置为0。
返回后台逻辑界面,重新将后台运行程序EXIO1置为停止状态。再次切换到I/O数字输出窗口与数值寄存器窗口,重复上述步骤,可以发现,数值寄存器R[1]不在发生变化。
综上,可以看出,机器人后台运行逻辑功能非常类似于独立运行在机器人外部设备中的PLC,只要机器人处于开机状态,运行状态中的后台逻辑程序就会自动循环运行,来完成一些简单的信号监视与控制之类的逻辑功能。
The End
上一篇:Roboguide软件:基于I/O信号的机器人行走轴添加与配置
很简单的PLC入门文档-FANUC数控机床
第一部分
一、问题: 1、如何用按钮去控制排屑器的正转、反转、停止?
2、如何用急停开关和硬限位开关触发系统急停?
3、如何用M08/M09代码实现冷却电机的控制?
4、如何用一个按钮去控制冷却泵的启动,停止?
5、输出信号的置位复位与自锁的特点。
6、选择停功能在FANUC系统的PMC上如何实现?
二、什么是PMC?
PMC是FANUC数控系统内置的可编程控制器,它主要用于机床的顺序控制,包括主轴旋转、刀具交换、机床操作面板控制等。
所谓顺序控制,是指按预先确定的顺序或按照一定的逻辑有序的执行一系列动作。数控机床完成顺序控制的程序被称为顺序程序。通常,该顺序程序使用梯形图编程。
三、PMC执行步骤:
1、扫描
2、计算处理,执行一系列操作
3、输出
这三个步骤连起来执行一次称做一个周期。如此反复的进行循环。
四、FANUC PMC的信号地址。
F:从CNC到PMC的输入信号
比如F7.0, M功能选通信号 ;F10 M功能代码信号
G:从PMC输出到CNC的输出信号
比如G8.4急停信号,G4.3结束信号
X:从机床侧到PMC的输入信号
Y:从PMC输出到机床侧的输出信号
R:内部继电器
A:信息显示请求信号
五、PMC控制外围设备基本原理,以排屑器为例
输出Y信号→继电器→(断路器)接触器→排屑器电机
第二部分
一、回到问题上来
1、如何用按钮去控制排屑器的正转、反转、停止?
要求:(1)正转按钮按下,排屑器正转启动,松开按钮排屑器仍在正转。
(2)反转按钮按下,排屑器反转启动,松开按钮排屑器停止反转。
(3)排屑器旋转时,按下停止按钮,排屑器停止转动。
(4)排屑器正在正转时,按下反转按钮,仍要继续正转,不能反转;排屑器正在反转时,按下正转按钮,仍要继续反转,不能正转;
梯图如下:
2、如何用急停开关和硬限位开关触发系统急停?
知识点:
(1)我们通过外部的信号触发急停,系统检测到G8.4急停信号异常后会通过CNC→驱动→电机,立即停止伺服电机的运动。而我们也通过急停信号处理PMC,停止机床上外围的旋转和运动部件。
(2)FANUC系统PMC的急停触发信号G8.4当为0,也就是没有导通时,系统进入急停状态
要求:(1)当急停按钮按下时(接常闭点,X8.4),急停生效
(2)当X Z硬限位时,急停生效。
(3)当急停生效时,排屑器不能旋转。
3、如何用M08/M09代码实现冷却电机的控制?
(1)M代码
用加工程序指令M功能时,M代码用4字节(32位)的二进制数输出:
M08→F11.0 M09→F11.1
(2)M代码的执行
在MDI或自动方式下输入M08,系统会自动使对应F11.0信号为1,当我们在PMC中接收到F11.0为1时,就标示当前的M代码是M08,然后去执行需要的PMC动作。
(3)M代码的结束
M代码执行结束后,把辅助功能信号(FIN G4.3)送至CNC,CNC就执行下一句程序。
要求:M08冷却开,M09冷却关。
4、如何用一个按钮去控制冷却泵的启动,停止?
利用一个按键去实现冷却泵的启动停止有许多种编写方法,这里讲我们CK上使用的方法。
要求:(1)利用一个按键实现冷却泵的启停
(2)将M08、M09和按键来共同控制冷却泵的启停
(3)当急停发生时,冷却停止
(4)当机床复位按键按下时,冷却停止
5、输出信号的置位复位与自锁的特点。
6、选择停功能在FANUC系统的PMC上如何实现?
看后思考。
(不妥之处,请批评指正)
相关问答
fanucplc是高电平输入吗?
FanucPLC是一种可编程逻辑控制器,它可以接受高电平输入信号。高电平输入是指输入信号的电压高于特定阈值,通常为5V或24V。FanucPLC可以通过输入模块接收高电...
发那科导出PLC参数步骤?
发那科导出PLC参数的步骤如下:1.连接到发那科机器人控制器:使用以太网或串口连接到机器人控制器。2.打开FANUCrobotteachpendant:在机器人控制...
fanuc机器人怎么把速度转换成信号发给plc?
1.Fanuc机器人可以通过将速度转换成信号来与PLC进行通信。2.这是因为Fanuc机器人在运动过程中会生成速度信号,通过编码器等装置将机器人的运动速度转换成电...
加工中心发那科系统的PLC用什么编程软件好?
[捂脸]看到前面的回答不知道该怎么说。对于PLC厂家来说,目前硬件厂家都是配自己的PLC编程软件的。既然你的系统是发那科的那就只能用发那科官方针对加工中心用...
FANUCLADDER-III如何传输0I-MD系统PLC?
你是想利用这个软件来传到系统还是说用这个软件编好后的程序传到系统呢,说的不是清楚,不过前都肯定是不行的,后者的话可以CF卡或者用RS232口就行了。具体么就...
请问FANUCPLC里面的SUB是怎么用的?详细点,谢谢?
SUB只是个功能代码号,比如定时器是24上升下降沿是5758等。SUB只是个功能代码号,比如定时器是24上升下降沿是5758等。
参数应该设置成什么?FANUC-0M系统里?
修改fanuc-0mPLC参数:MDI方式OFF/SETTING的设置画面参数写入设1(可写)SYSTEM的参数画面输入参数号执行NO检索找到参数修...2.采用全字符键盘,可用B类...
FANUCPLC里面A是信息请求指令,具体是什么意思了?
在梯图里先编一条SUB41DISPB功能指令(信息显示请求).然后根据需要显示的报警,编制报警显示梯图(A地址)和报警显示信息.例如:线圈A0.0编到梯图里,A0.0报警所...
plc好还是数控编程好,-ZOL问答
PLC编程和数控编程是两个问题1,PLC是可编程器的英文缩写,是自动化中常用的控制器之一,是属于电器控制中电工要掌握的东西。2,数控机床顾名思义是用数字控制...
PLC编程软件中的常开点和常闭点?
你接线接的常开的话,那么你程序的这个点的地址是常开,这种情况程序这点开闭状态就和你外接的开关的状态一样,你程序的这个点的地址是常闭,那么这点的状态就和...