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

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

3天内不再提示

用VARSTATE()可以询问变量的状态

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 作者:微笑应对 2022-10-26 09:51 次阅读

用 VARSTATE() 可以询问变量的状态。

VARSTATE() 是带有 VAR_STATE 类型返还值的函数。VAR_STATE 是在系统中如

下定义的计数类型:

ENUM VAR_STATE DECLARED(已声明), INITIALIZED(初始化), UNKNOWN(未发布)

VARSTATE 在系统中如下定义:

VAR_STATE VARSTATE(CHAR VAR_STR[80]:IN)

示例 1:

DEF PROG1()

INT MYVAR

...

IF VARSTATE("MYVAR")==#UNKNOWN THEN

$OUT[11]=TRUE

ENDIF

第一个 IF 条件为假,因为 MYVAR 已声明。不设定输出端 11。

...

IF VARSTATE("MYVAR")==#DECLARED THEN

$OUT[12]=TRUE

ENDIF

第二个 IF 条件为真,因为 MYVAR 已声明。设定输出端 12。

...

IF VARSTATE("ANYVAR")==#UNKNOWN THEN 变量未发布

$OUT[13]=TRUE

ENDIF

在 $CONFIG.DAT 中没有名称为 ANYVAR 的变量的情况下,第三个 IF 条件为真。设定输出端 13。

...

MYVAR=9

...

IF VARSTATE("MYVAR")==#DECLARED THEN 变量已经发布

$OUT[14]=TRUE

ENDIF

第四个 IF 条件为假,因为 MYVAR 不仅已声明,而且在该位置上已初始化。不设定输出端 14。

...

IF VARSTATE("MYVAR")==#INITIALIZED THEN 变量在初始化状态

$OUT[15]=TRUE

ENDIF

第五个 IF 条件为真,因为 MYVAR 已初始化。设定输出端 15。

...

END

DEF PROG2()

INT MYVAR

INT YOURVAR

DECL VAR_STATE STATUS

...

STATUS=VARSTATE("MYVAR")

UP()

...

STATUS=VARSTATE("YOURVAR")

UP()

...

END

在该示例中,间接即通过附加的变量询问状态。附加的变量必须为 VAR_STATE 类型。对于声明,不允许省略关键词 DECL。附加变量的名称为任意名称。在该示例中,名称为 STATUS。

在VASS标准中的使用-----例1

DEFFCTINT MAKRO0(ADV :IN)

IF VARSTATE ("ADV")<> #INITIALIZED THEN

如果变量"ADV"没有之行初始化,就让ADV=FALSE

ADV=FALSE

ENDIF

IF(NOT ADV)THEN 如果ADV=FALSE则开始执行MAKRO0里面的程序

;ENDFOLD

;ENDFOLD

…..

ENDIF

在VASS标准中的使用-----例2

USER程序中的一段

IF($softplcint[1]>0) AND $OUT[O_SZ1_FRG] AND (Varstate("act_P1")==#initialized)THEN

$softplcint[1]=7焊钳外部轴基数=7,A715焊枪控制,act_P1激活的轨迹步变量如果被初始化

IF($softplcint[1]==7)THEN焊钳外部轴基数=7

$FLAG[F_SZ1_Oeff_iO]=(act_P1.E1>=$COUNT_I[60])

E1值大于I60的值F745偏差合格

ENDIF

IF($softplcint[1]==8)THEN焊钳外部轴基数=8

$FLAG[F_SZ1_Oeff_iO]=(act_P1.E2>=$COUNT_I[60])

E2值大于I60的值F745偏差合格

ENDIF

ELSE 如果没有激活的话就关闭F745

$FLAG[F_SZ1_Oeff_iO]=FALSE

ENDIF

IF Varstate("SZNr")==#initialized then 如果SZNr焊钳号变量已经初始化赋值

SWITCH SZNr 选择焊钳是多少进行选择程序

CASE 1 钳号1

Par[1] = { Par_type #Value , Par_int 1 }

………

ELSE如果SZNr焊钳号变量没赋值

Par[1]= { Par_type #Value, Par_txt[] " " }

ENDIF






审核编辑:刘清

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

    关注

    211

    文章

    28418

    浏览量

    207098

原文标题:KUKA 机器人C4 中VARSTATE()函数的作用-w

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

收藏 人收藏

    评论

    相关推荐

    IOCTL函数可以询问机器人控制系统的节能模式?

    如果生产歇工很短,为了使用状态驱动总线关闭,则可以用状态制动器已制动节能。但是,只有在机器人控制系统处于编程停止状态下时,才能激活状态制动器
    的头像 发表于 06-28 10:43 2930次阅读

    OpenHarmony页面级变量状态管理

    @State、@Prop、@Link、@Provide、Consume、@ObjectLink、@Observed和@Watch用于管理页面级变量状态
    的头像 发表于 12-07 08:58 2691次阅读

    Harmony 鸿蒙页面级变量状态管理

    组件实例时,可以通过变量名显式指定@State状态变量的初始值。 示例: 在下面的示例中: 用户定义的组件MyComponent定义了@State状态变量count和title。如果c
    发表于 01-24 20:04

    系统的状态变量分析

    系统的状态变量分析:状态变量法具有以下主要优点:(1) 可以有效地提供系统内部的信息,使人们较为容易地处理那    &
    发表于 09-10 11:38

    动态电路的状态变量分析

    动态电路的状态变量分析􀂄 7.1 电路的状态状态变量􀂄 7.2 状态方程及其列写􀂄 7.3
    发表于 12-04 18:01 0次下载
    动态电路的<b class='flag-5'>状态变量</b>分析

    状态变量滤波器,状态变量滤波器原理是什么?

    状态变量滤波器,状态变量滤波器原理是什么? 状态变量滤波器,又称多态变量滤波器,它可以分别从不同的点同时输出高通、带通、低通等,且
    发表于 03-24 14:24 6633次阅读

    浅析KUKA机器人C4中VARSTATE()函数的作用

    VARSTATE() 可以询问变量状态VAR
    的头像 发表于 03-18 09:15 3987次阅读

    MT-208: 数字编程状态 变量滤波器

    MT-208: 数字编程状态 变量滤波器
    发表于 03-21 10:28 3次下载
    MT-208: 数字编程<b class='flag-5'>状态</b>  <b class='flag-5'>变量</b>滤波器

    数字编程状态变量滤波器

    状态变量滤波器具有吸引力的一项特点是其参数(增益、截止频率和Q)可以单独调节。我们可以利用这种属性以数字方式控制这些参数。
    发表于 03-22 17:43 2次下载
    数字编程<b class='flag-5'>状态变量</b>滤波器

    DGUS组态软件中位变量图标该怎么

    变量图标显示功能是把一个数据变量的每个位(bit)的 0/1 状态对应 8 种不同显示方案中的两种, ICON 图 标(或图标动画)来对应显示。多用于开关
    发表于 01-16 15:02 930次阅读
    DGUS组态软件中位<b class='flag-5'>变量</b>图标该怎么<b class='flag-5'>用</b>

    KUKA机器人系统函数:VARSTATE()

    VARSTATE() 可以询问变量状态
    的头像 发表于 11-23 11:51 1634次阅读

    VARSTATE()可以询问变量状态

    ARSTATE() 是带有 VAR_STATE 类型返还值的函数。VAR_STATE 是在系统中如下定义的计数类型
    的头像 发表于 02-02 16:01 449次阅读

    VARSTATE()询问变量状态

    ARSTATE() 是带有 VAR_STATE 类型返还值的函数。VAR_STATE 是在系统中如下定义的计数类型
    的头像 发表于 03-17 18:06 682次阅读
    <b class='flag-5'>用</b><b class='flag-5'>VARSTATE</b>()<b class='flag-5'>询问</b><b class='flag-5'>变量</b>的<b class='flag-5'>状态</b>

    Harmony 鸿蒙应用级变量状态管理

    应用级变量状态管理 在前面的章节中,已经讲述了如何管理页面级变量状态,本章将说明如何管理应用级变量
    的头像 发表于 01-24 21:30 501次阅读
    Harmony 鸿蒙应用级<b class='flag-5'>变量</b>的<b class='flag-5'>状态</b>管理

    Harmony 鸿蒙页面级变量状态管理

    页面级变量状态管理 @State、@Prop、@Link、@Provide、@Consume、@ObjectLink、@Observed和@Watch用于管理页面级变量状态。 @S
    的头像 发表于 01-25 10:42 596次阅读
    Harmony 鸿蒙页面级<b class='flag-5'>变量</b>的<b class='flag-5'>状态</b>管理