Jump to: navigation , search

Node Description

Pattern 5 1.png

Pattern Node

A Pattern Node is used to create grids in the robot's workspace. Patterns enable a behavior tree to move through a defined set of indexes that the user creates. Every pattern has a frame which is automatically created when the Pattern Node is created and set in the workspace. On each index of the Pattern Node, the frame’s position is updated so that it is coincident with the next location in the Pattern.

By making the pattern’s moving frame be the frame for the set of Move To nodes that define the movement that should occur at each location, the user can define just a single set of Move To nodes, rather than a set of unique Move To nodes for each location.


Node Type

Composite - has 0 or more children, and is typically used to control the logical flow of execution of the tree.

Node Inspector

Pattern Node Inspector Pre.png

  • ID
Not editable
  • name
Auto generated and user editable
  • catch errors
See description of Error Handling. Default off.
  • stop on failure
If failure detected, will stop the task on this node.
  • pattern type
Default grid, can choose user defined
  • dimensions
Number of rows, columns, and stacks in the desired Grid pattern
  • SET IN WORKSPACE
Opens the Pattern Workspace Window. Set the 4 corners of your pattern

Pattern Workspace Node Inspector.png

  • VALIDATE
Validates that the chosen poses will move without hindrance. Shows following Window if successful.

Validate Pattern Success.png

  • ADJUST ENDPOINTS
Go here to adjust any poses in your grid
  • Comments
User editable - add comments about this node.

Node Inspector after Validation

Pattern Node Inspector Post.png

  • parent frame
Choose the frame for this grid
  • user variable control
May be used in conjunction with a variable to tell the robot which pattern point to go to
  • current pattern point
Not editable; shows the current pattern point shown on the 3D View
  • Snake pattern
Choose this sequence of movements for the arm to follow

ICONS SNAKE.png

  • Zigzag pattern
Choose this sequence of movements for the arm to follow

ICONS ZIGZAG.png

  • Comments
User editable - add comments about this node.


Example

Follow the steps below to add a Pattern Node to a behavior tree.

  1. Select the Pattern Node icon to add it to the Behavior Tree
  2. Create all necessary children nodes of the pattern needed to create your robot action (ie. Move to, Wait, Set Values)
  3. Select the Pattern Node on the behavior tree and select the Node Inspector
  4. On the Node Inspector, enter the X, Y, and Z values of the array you need to create (ie. 2x2x1 will give you 4 points in the array)
  5. Press "Set in Workspace"
  6. The Pattern Workspace window will appear. Move the arm to the first corner of the grid and select Corner Location #1 "Set Location" button.
  7. Move the arm to the second corner and press Corner Location #2 "Set Location" button.
  8. Repeat this method for the 3rd and 4th corners.
  9. Press "validate" to make sure all of the Move To nodes are valid for the entire pattern. If an error message appears, follow the steps below to "Adjust Poses."
  10. If no errors appear, the user will get a message that says "This pattern and all its children have valid joint angles."


Follow Steps below to adjust specific poses for a Pattern Index.

  1. On the Pattern Node Inspector, select Adjust Poses.
  2. An Edit Poses window will appear. In this window, all of the "indexes" of the pattern are shown.
    • Note - Indexes that contain an invalid pose will be red.
  3. Select the Index that you wish to make a modification for.
  4. Select the particular move that you need to edit and click the pencil edit icon.
    • Node - Specific move poses that are invalid will be red.
  5. In Zero-G, move the arm to the new pose and select "Use Current Joint Pose" to update the pose.
  6. Press "Save + Return"