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

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

3天内不再提示

深入探索KUKA KRL中的数组应用

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 2024-04-18 10:37 次阅读

数组的声明

程序中数组的声明:

数据类型名称 1 [Dimension1 <, ..., Dimension3> ] <, ...,NameN [DimensionN1 <,..., DimensionN3>] >

数据列表中数组的声明:

数据类型名称 1 [Dimension1 <, ..., Dimension3> ] <, ..., NameN [DimensionN1 <,..., DimensionN3>] >

为了用同时初始化声明数组或数据列表中的常数数组:

 不允许在一个行中进行声明和初始化。但是,必须直接在带声明的行上进行初始化。在此之间不允许有行,也不允许空行。

 如果要初始化一个数组的多个元素,则必须按照数组下标升序 (从右侧的数组下标开始)指定元素。

 如果 CHAR 类型数组的所有数组元素都拥有相同的字符串,则不必单独初始化每个数组元素。忽略右侧的数组下标。(对于一维数组下标,不写下标。)

声明数据列表中的数组,同时初始化:

数据类型名称 [Dimension1 <,..., Dimension3> ]

名称 [1 <, 1, 1> ] = 值 1

< 名称 [1 <, 1, 2> ] = 值 2>

...

名称 [Dimension1 <, Dimension2, Dimension3> ] = 值 N

声明数据列表中的常数数组,同时初始化:

DECL CONST 数据类型名称 [Dimension1 <,..., Dimension3> ]

名称 [1 <, 1, 1> ] = 值 1

< 名称 [1 <, 1, 2> ] = 值 2>

...

名称 [Dimension1 <, Dimension2, Dimension3> ] = 值 N

带有预定义数据类型的声明。也可以删去关键词 DECL。

DECL INT X

DECL INT X1, X2

DECL REAL ARRAY_A[7], ARRAY_B[5], A

通过同时初始化声明数组 (只在数据列表中可行)。

INT A[7]

A[1]=27

A[2]=313

A[6]=11

CHAR TEXT1[80]

TEXT1[]="message"

CHAR TEXT2[2,80]

TEXT2[1,]="first message"

TEXT2[2,]="second message"

FOR Counter = Start TO End

Statement

ENDFOR

DEF INIT_OUTPUTS ( )

DECL INT COUNTER

INI

FOR COUNTER=1 TO 10

;Set output 1-10 to FALSE

$OUT[counter]=FALSE

ENDFOR

...

END

DEF INIT_OUTPUTS ( )

DECL INT COUNTER

INI

FOR COUNTER=1 TO 10

;Set output 1-10 to FALSE

$OUT[counter]=FALSE

ENDFOR

...

END

d830f738-fcca-11ee-a297-92fbcf53809c.png

d84e5fa8-fcca-11ee-a297-92fbcf53809c.png

d85eff70-fcca-11ee-a297-92fbcf53809c.png

d870b9e0-fcca-11ee-a297-92fbcf53809c.png

DEF MAIN_PROGRAM( )

DECL INT MEAS_VALUE [2,4]

DECL INT ROW,COLUMN

INI

; --- Pre-assignment of an array ---

FOR ROW = 1 TO 2

FOR COLUMN = 1 TO 4

MEAS_VALUE [ROW,COLUMN] = 0

ENDFOR

...

END

DEF MAIN_PROGRAM( )

DECL INT MEAS_VALUE [2,4]

DECL INT ROW,COLUMN

INI

; --- Pre-assignment of an array ---

FOR ROW = 1 TO 2

FOR COLUMN = 1 TO 4

MEAS_VALUE [ROW,COLUMN] = 0

ENDFOR

...

END

d87e7cc4-fcca-11ee-a297-92fbcf53809c.png

BOOL MATRIX [3, 3, 3]

DEF MAIN_PROGRAM( )

BOOL MATRIX [3,3,3]

INT ROW, COLUMN, LEVEL

INI

FOR LEVEL = 1 TO 3

FOR COLUMN = 1 TO 3

FOR ROW = 1 TO 3

MATRIX [ROW, COLUMN, LEVEL] = FALSE

ENDFOR

ENDFOR

...

END

DEF MAIN_PROGRAM( )

BOOL MATRIX [3,3,3]

INT ROW, COLUMN, LEVEL

INI

FOR LEVEL = 1 TO 3

FOR COLUMN = 1 TO 3

FOR ROW = 1 TO 3

MATRIX [ROW, COLUMN, LEVEL] = FALSE

ENDFOR

ENDFOR

...

END

d88503f0-fcca-11ee-a297-92fbcf53809c.png

在声明简单数据类型时,也可以省略关键字“DECL”。

审核编辑:黄飞

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

    关注

    1

    文章

    552

    浏览量

    20151
  • 数组
    +关注

    关注

    1

    文章

    409

    浏览量

    25597
  • KUKA
    +关注

    关注

    3

    文章

    216

    浏览量

    16267

原文标题:KUKA KRL:Arrays 数组

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

收藏 人收藏

    评论

    相关推荐

    Labview 深入探索

    Labview深入探索的很好资料哦
    发表于 04-27 21:29

    LabVIEW_深入探索

    `LabVIEW_深入探索`
    发表于 08-19 13:38

    LabVIEW_深入探索

    LabVIEW_深入探索
    发表于 08-31 13:53

    Labview 深入探索

    Labview 深入探索
    发表于 04-11 18:09

    KUKA重型机器人

    这个是KUKA重型机器人处理和测量混凝土轨枕的视频。处理得相当精细。真心值得爱好机器者和爱国者研究研究。
    发表于 02-03 15:18

    LabVIEW 深入探索

    LabVIEW 深入探索
    发表于 07-01 10:54

    KUKA库卡机器人伺服驱动器相关型号举例

    KUKA库卡机器人伺服驱动器(Servo Drive)是KUKA运动控制的重要组成部分,被普遍应用于工业机器人及数控加工中心等自动化设备。是用来控制伺服电机的一种控制器,其作用类似于变频器作用于
    发表于 09-08 16:30

    数组是什么

    数组是由具有相同类型的数据元素组成的有序集合。数组是由数组名来表示的,数组的数据由特定的下标来唯一确定。引入
    发表于 07-14 07:02

    单片机C语言中数组的用法

    数组与普通变量一样,也必须先定义,后使用。数组在C51语言的地位举足轻重,因此深入地了解数组是很有必要的。下面就对数组进行详细的介绍
    发表于 10-10 11:33 1.5w次阅读

    KUKA.Ethernet KRL.学习心得

    EhternetKRL是KUKA提供的一个以太网通信功能的软件包,支持TCP和UDP协议.首先是软件包的安装,软件包的安装有两种方式,一种是操作示教器安装(常用的方法),另一种是通过WorkVisual安装,通过示教器安装是常用的方法,
    的头像 发表于 07-07 10:52 1334次阅读

    二维数组数组指针以及指针数组

    二维数组数组指针以及指针数组
    的头像 发表于 08-16 09:02 2262次阅读

    KUKA:简单数据和数组的使用V1.24

    使用KRL对机器人进行编程时,在程序中使用的数据会有相应的类型来处理这些数据,变量就是用来保存这些数据的容器,每个变量都属于一个专门的数据类型,在使用前必须声明数据类型。
    发表于 01-29 09:35 1631次阅读

    KUKA机器人结构化机器人程序分析

    KRL 是一种类似PASCAL的高级编程语言,利用KRL语言编程能够实现结构化编程处理复杂的任务。
    的头像 发表于 02-02 09:36 1693次阅读

    KUKA机器人的算术运算符介绍

    所有 4 个基本计算种类在 KRL 中都允许。
    发表于 07-25 14:33 938次阅读

    深入探索感应马达的生产过程

    本文将深入探索感应马达的生产过程。尽管各厂商的马达细节设计有所异同,我们还是将以最基础的生产模式为主要脉络来进行阐述。
    的头像 发表于 08-16 16:23 909次阅读
    <b class='flag-5'>深入</b><b class='flag-5'>探索</b>感应马达的生产过程