Hi6 Robot Controller Manual - Robot Language HRScr
English
English
  • Hi6 Robot Controller Function Manual - Robot Language HRScript
  • 1. Overview
    • 1.1 Introduction of HRScript
  • 2. Basic Syntax
    • 2.1 Statements
    • 2.2 Identifiers
    • 2.3 Types of Statements
      • 2.3.1 Procedures
      • 2.3.2 Assignment Statements
      • 2.3.3 Comment Statements
      • 2.3.4 Labels
    • 2.4 First Program – Hello, World!
    • 2.5 Data Type
      • 2.5.1 String Data Type
      • 2.5.2 Number Data Type
      • 2.5.3 Boolean Data Type
      • 2.5.4 Array Type and Object Type
    • 2.6 Variables
    • 2.7 Binary and Hexadecimal
    • 2.8 Operators and Expressions
    • 2.9 Functions
      • 2.9.1 Math Functions
      • 2.9.2 String Functions
      • 2.9.3 Date and Time Functions
      • 2.9.4 Constructor Functions
      • 2.9.5 Other Functions
  • 3. Flow-Control Statements and Sub-Program
    • 3.1 Address
    • 3.2 Stop or Wait Statement
      • 3.2.1 stop
      • 3.2.2 end
      • 3.2.3 delay
      • 3.2.4 wait
    • 3.3 Branch Statement
      • 3.3.1 goto
    • 3.4 Conditional Statements
      • 3.4.1 Single-Line if
      • 3.4.2 if-endif
      • 3.4.3 if-else-endif Statement
      • 3.4.4. if-elseif-else-endif
      • 3.4.5 switch-case-break-end_switch
    • 3.5. Nested Flow-Control Statements
    • 3.6 Loop Statements
      • 3.6.1 for-next
    • 3.7 Call, Jump Statement and Subprograms
      • 3.7.1 call
      • 3.7.2 Parameters and param, return
      • 3.7.3 jump
    • 3.8 Local Variables and Global Variables
      • 3.8.1 Local Variables
      • 3.8.2 Global Variables
      • 3.8.3 Precedence
  • 4. Arrays and Objects
    • 4.1 Arrays
      • 4.1.1 Arrays
      • 4.1.2 Multidimensional Arrays
      • 4.1.3 Array Constructor Function
    • 4.2 Object
    • 4.3 Copied assignment of arrays and objects
    • 4.4 Call-by-reference and call-by-value
  • 5. Moving a Robotwith Robot Language
    • 5.1 Pose
    • 5.2 Shift
    • 5.3 Pose Expression
    • 5.4 move
    • 5.5 User Coordinate System (UCS)
  • 6. Communicating with External Devices
    • 6.1 FB Object: Digital I/O
      • 6.1.1 Input/Output Variables
      • 6.1.2 Examples
    • 6.2 ENet Module: Ethernet TCP/UDP Communication
      • 6.2.1 Constructor
      • 6.2.2 Member Variables
      • 6.2.3 Member Procedures
        • open
        • connect
        • send
        • recv
        • close
      • 6.2.4 Member Function
        • state
      • 6.2.5 Examples of TCP and UDP Communication
    • 6.3 Http_Cli Module: HTTP Client
      • 6.3.1 Constructor
      • 6.3.2 Member Variables
      • 6.3.3 Member Procedure
        • get
        • put
        • post
        • delete
      • 6.3.4 Examples of HTTP Client Communication
    • 6.4 Getting input from console bar
      • 6.4.1 input
Powered by GitBook
On this page

Was this helpful?

Edit on Git
  1. 4. Arrays and Objects

4.2 Object

As previously seen, it was found that an array could store multiple element values and are accessed by index.

Objects are like arrays in that they store multiple element values. The difference is that an object is accessed by a key, not with an index. Moreover, the key is a string, not a number.

Objects are defined as var or global, like any other variables. The definition of an object and format of its access are as follows.

Definition

var object name = { key : value, key : value, …}

Access

Object name key

The following shows an example of defining and accessing an object.

0001.job

var gap = { x:200, y:152.6 }

gap.x = gap.x + 10

print gap.x, gap.y

Result

210 152.6

The object’s key must be in the format of an identifier, but the element’s value can be of any type and can also be of different types.

An object can contain other objects or arrays as its elements. Likewise, an array can also contain other arrays or objects as its elements. In the following example, “work,” which is an object, contains “size,” which is an object, and “heights,” which is an array.

0001.job

var work = { part_no:3, name: "gear", tested : false

, size : { x : 150, y : 80 }

, heights : [ 72.89, 74.91, 81.03, 87.60, 87.11 ] }

print work.tested, work.size.y, work.heights[3]

Result

false, 80, 87.600000

Previous4.1.3 Array Constructor FunctionNext4.3 Copied assignment of arrays and objects

Last updated 3 years ago

Was this helpful?