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. 5. Moving a Robotwith Robot Language

5.1 Pose

Previous5. Moving a Robotwith Robot LanguageNext5.2 Shift

Last updated 3 years ago

Was this helpful?

Pose is an object type embedded in the Hi6 Controller and represents each axis of the robot or the Cartesian coordinates and direction of the tool tip.

Poses are created by calling the constructor function Pose( ). All function parameters are position parameters. Meanwhile, crd and cfg are string types, and the rest are number types.

The cfg element specifies the robot configuration. For more information, refer to "" in the Hi6 Robot Controller Operation Manual.

var <pose variable name> = Pose(j1, j2, j3, …)					# axis coordinate
var <pose variable name> = Pose(x, y, z, rx, ry, rz, j7, j8,…, crd, cfg)		# base coordinate

Refer to the following examples of creating the poses for 6 axes + 1 additional axis and for Cartesian + 1 additional axis.

var po1 = Pose(10, 90, 0, 0, -30, 0, -1240.8)				# axis coordinate
var po2 = Pose(1850, 0, 2010.5, 0, -90, 0, -1240.8, "base", "fl;r2")	# base coordinate

Alternatively, the pose constructor function may be called using a single array or string parameter. With this, files or data may be converted into poses, acquired through remote communication, and used.

var <pose variable name> = Pose(array)
var <pose variable name> = Pose(string)

Refer to the following example.

var arr = [10, 90, 0, 0, -30, 0, -1240.8]
var str = "[1850, 0, 2010.5, 0, -90, 0, -1240.8, \"base\", \"fl;r2\"]"
var po3 = Pose(arr)
var po4 = Pose(str)

Elements of the pose object can be accessed with the following keys.

  1. For V60.06-06 or older versions, fl is non-fl.

The pose element values can be accessed as shown in the following example.

po1.j2 = po1.j2 + 5
print po2.z, po2.cfg

2.3.2.2 Base and Robot Recording Coordinates