0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

从FOLGEN程序中如何实现自动回到CELL程序/开始执行FOLGEN程序

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 2023-05-05 10:20 次阅读

60e25cec-eacb-11ed-90ce-dac502259ad0.png

在自动循环过程中:

6104778c-eacb-11ed-90ce-dac502259ad0.png

611b40a2-eacb-11ed-90ce-dac502259ad0.png

IF($OUT[PF0]AND VW_CALL_CELL AND ( NOT $PRO_MOVE) AND ($MODE_OP==#EX))THEN

机器人在原位(A15),执行了CALL程序,机器人没有程序执行,处在外部自动状态

CWRITE($CMD,STAT,MODE,"STOP 1") 直接对当前成程序进行控制,程序停止。

CWRITE($CMD,STAT,MODE,"CANCEL 1") 直接对当前成程序进行控制,程序退出。

P_OLD=P_SELECT

CWRITE($CMD,STAT,MODE,"RUN /R1/CELL ()")执行CELL程序

ENDIF

这短语是用来实现执行完Folge程序后由自动回到CELL的功能。

......

------------------------------------------------------

6132466c-eacb-11ed-90ce-dac502259ad0.png

VW (#VW_AUE_WAIT,TRUE)

AUE_WAIT()

BOOL SIMU_START

INT P

$ADVANCE=DEF_ADVANCE –系统规定DEF_ADVANCE=1-因此预执行只能执行1步

IF(VW_INB AND$EXTSTARTTYP)THEN –此处正常不执行

-在CELL中将VW_INB关闭-$EXTSTARTTYP外部启动的状态TRUE/FALSE

N_VW=FALSE

RETURN

ENDIF

$H_POS=$AXIS_ACT-当前轨迹在HOME位

$LOOP_CONT=TRUE –激活模拟功能

$LOOP_MSG[]="KeyWord_WarteFolgestartSRB 发出提示信息:等待Folgestart"

REPEAT –开始执行循环指令

P0_MERKER=TRUE –机器人在HOME位

BITSHIFT=1

P=0

N_VW=FALSE

IF VW_CBY_CELL THEN –在CELL中激活VW_CBY_CELL=TRUE

IF(P_TYPE == 0)THEN -程序控制类型=0 整数控制方式

P = PRG_NR

ELSE

P = LOG_2(PRG_NR) -用于2进制程序号计算

ENDIF

ENDIF

IF(P<>P_OLD)THEN

–给入程序号与经过VW (#VW_AUE_INIT,TRUE)程序后的保存程序号P_OLD是否相同

N_VW=TRUE -不同FOLGEN程序会跳到最后一步

ELSE -相同没有变化

PRG_NR_REFL = PRG_NR -给入程序号发并发出反馈给PLC程序号

ENDIF

IF(P==0) AND VW_INB AND (($MODE_OP==#T1) OR ($MODE_OP==#T2))THEN

-没有给入程序号-在手动模式选择FOLGEN程序时,进行模拟才能启动FOLGEN程序

- VW_INB被在config.dat文件被设定为FALSE

N_VW=FALSE

SIMU_START=TRUE -启动

ELSE

SIMU_START=FALSE

ENDIF

IF((P==0) OR (P==P_OLD)) AND NOT ($LOOP_CONT) AND (($MODE_OP==#T1) OR ($MODE_OP==#T2))THEN

-如果没有程序号给入-或程序号与原来程序号相同 –没有$LOOP_CONT开启模拟-手动状态

N_VW=FALSE

SIMU_START=TRUE 启动模拟

ENDIF

--------

IS_CELL () –显示选择的程序名称是否是从CELL程序中执行跳过来的.

--------

IF NOT VW_CBY_CELL THEN

-如果不是CELL程序执行跳过来的–用于直接选择FOLGEN程序,而没有选择CELL

IF($MODE_OP==#T1) OR ($MODE_OP==#T2)THEN –在手动状态时

N_VW=FALSE

ELSE

VW_CALL_CELL=TRUE

$LOOP_MSG[]="KeyWord_FuerAutomatikCellAnwaehlen " -提示:选择执行CELL程序

WHILE NOT (($MODE_OP==#T1) OR ($MODE_OP==#T2)) -如果恢复到自动模式时才能下行

WAITSEC 0.1 -等待0.1秒

ENDWHILE

$LOOP_MSG[]="KeyWord_WarteFolgestartSRB" -提示: 等待程序启动

ENDIF

ENDIF

---------

OUT_WSLAV=TRUE

OUT_WPROZ=FALSE

WAITSEC 0.001

UNTIL((($IN[SRB]==TRUE) AND (P>0)) OR (N_VW==TRUE)) OR SIMU_START

一直到有E9PLC给出程序启动,有P程序号大于0, SIMU_START模拟才能跳出循环质量

-N_VW==TRUE -程序号发生变化程序号与之前CELL给入的程序号不同

退出循环指令—前提是程序启动给入,没有程序启动就得给模拟。

---------

$LOOP_MSG[]=" "提示空信息

OUT_WSLAV=FALSE

OUT_WPROZ=FALSE

------

IF N_VW==TRUE THEN –有N_VW没有反馈程序号

PRG_NR_REFL = 0

ELSE

P0_MERKER=FALSE

ENDIF

------

$LOOP_CONT=TRUE ---恢复模拟作准备

CHECK_EMI()-----获取EMI记录的内部状态

END

----------------------------------

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器人
    +关注

    关注

    206

    文章

    27052

    浏览量

    201437
  • Call
    +关注

    关注

    0

    文章

    9

    浏览量

    8249
  • 程序
    +关注

    关注

    114

    文章

    3631

    浏览量

    79554

原文标题:从FOLGEN程序中如何实现自动回到CELL程序/开始执行FOLGEN程序

文章出处:【微信号:gh_a8b121171b08,微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    LWIP DHCP回到程序定义的静态IP地址

    情况是这样的:在开启LWIP DHCP功能自动路由器获取IP地址。开始开发板正确路由器上获取了IP地址。但是后来发现,大概过一分钟,又回到
    发表于 03-11 02:11

    怎么应用程序回到引导程序

    主要是由于协议差异(包括最大包大小/缓冲),我想从主应用程序跳回Bootloader的CAMS部分。我试图避免发出软重置,因为我希望不同的功能,而不是自动回到应用程序。是否有一种方法
    发表于 04-06 07:06

    状态机执行途中,停止了程序,有没有什么办法弄个按钮让它回到第一步重新开始执行?类似复位程序

    用的状态机结构,有时候测试的时候在中途想让状态机程序复位,重新回到第一步开始执行,因为还有跟状态机程序并行的一些循环,而我想让状态机
    发表于 07-10 09:49

    程序main函数执行的吗

    程序main函数执行的吗?汇编程序的第一条代码哪里开始运行的呢?
    发表于 11-29 08:06

    mfc程序执行流程小结,MFC程序执行顺序

     摘要:本文章主要以MFC程序执行流程、执行顺序等执行过程的剖析做出的结论,下面一起来看看原文的具体介绍。
    发表于 12-08 15:48 9226次阅读
    mfc<b class='flag-5'>程序</b><b class='flag-5'>执行</b>流程小结,MFC<b class='flag-5'>程序</b>的<b class='flag-5'>执行</b>顺序

    ARM程序执行过程详解

    本文主要详解ARM程序执行过程,首先介绍了ARM程序的组成及ARM映像文件的组成,其次阐述了ARM程序执行过程,最后介绍了RO、RW、Z
    发表于 04-26 11:34 6957次阅读

    KUKA CELL()程序的分析解读

    CELL的功能:只能检测是否在原点,PLC给入的程序号是否正确,打开FOLGEN程序
    的头像 发表于 05-11 09:15 1148次阅读

    一文解析KUKA CELL程序

    只能检测是否在原点,PLC给入的程序号是否正确,打开FOLGEN程序
    的头像 发表于 09-03 14:09 2892次阅读

    单片机的主程序是如何执行

    我们从单片机的工作原理可以看出单片机是执行程序来完成我们所要求的任务的,在单片机中有很多子程序,单片机根据外部的不同执行条件去调用不同的子程序,因而就完成了不同的任务了。
    的头像 发表于 10-30 17:28 9688次阅读
    单片机的主<b class='flag-5'>程序</b>是如何<b class='flag-5'>执行</b>的

    浅谈RAM 执行应用程序

    许多应用程序需要从 RAM 中执行代码,例如出于安全原因或例如在引导加载程序用于闪存自编程的情况下。通常这样的应用程序必须分为两部分: 将从闪存执行
    的头像 发表于 06-20 18:22 2819次阅读
    浅谈RAM <b class='flag-5'>执行</b>应用<b class='flag-5'>程序</b>

    KUKA CELL()程序的分析解读

    号 -CELL的功能:只能检测是否在原点,PLC给入的程序号是否正确,打开FOLGEN程序。 AUTOMATIK EXTERN  -外部自动
    的头像 发表于 12-23 18:05 2688次阅读

    单片机程序是如何执行的?指令数据写哪了?

    单片机的运行需要执行程序,同时硬件也是必不可少的,二者缺一不可。大家都知道单片机的运行需要执行写好的程序,但是单片机的指令数据都被写在了哪里?在哪读取指令?让我们从最开始的环节讲起。在
    发表于 11-23 17:51 9次下载
    单片机<b class='flag-5'>程序</b>是如何<b class='flag-5'>执行</b>的?指令数据写哪了?

    单片机程序是如何执行的:指令数据写哪了

    ;nbsp;让我们从最开始的环节讲起。在单片机上电的瞬间,MCU的程序指针PC会被初始化为上电复位时的地址,从哪个地址处读取将要执行的指令,由此程序在MCU上
    发表于 12-01 16:06 7次下载
    单片机<b class='flag-5'>程序</b>是如何<b class='flag-5'>执行</b>的:指令数据写哪了

    C语言——程序的编译

    程序的翻译环境和执行环境在ANSI C的任何一种实现中,存在两个不同的环境。翻译环境:在这个环境中源代码被转换为可执行的机器指令。执行环境:
    发表于 01-13 15:19 4次下载
    C语言——<b class='flag-5'>程序</b>的编译

    KUKA CELL()程序的分析解读

    CELL的功能:只能检测是否在原点,PLC给入的程序号是否正确,打开FOLGEN程序
    的头像 发表于 03-11 14:05 2281次阅读