This page provides a detailed overview about the Pattern Node.
Contents
Node Description
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
- 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
- VALIDATE
Validates that the chosen poses will move without hindrance. Shows following Window if successful.
- ADJUST ENDPOINTS
Go here to adjust any poses in your grid
- Comments
User editable - add comments about this node.
Node Inspector after Validation
- 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
- Zigzag pattern
Choose this sequence of movements for the arm to follow
- Comments
User editable - add comments about this node.
Example
Follow the steps below to add a Pattern Node to a behavior tree.
- Select the Pattern Node icon to add it to the Behavior Tree
- Create all necessary children nodes of the pattern needed to create your robot action (ie. Move to, Wait, Set Values)
- Select the Pattern Node on the behavior tree and select the Node Inspector
- 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)
- Press "Set in Workspace"
- The Pattern Workspace window will appear. Move the arm to the first corner of the grid and select Corner Location #1 "Set Location" button.
- Move the arm to the second corner and press Corner Location #2 "Set Location" button.
- Repeat this method for the 3rd and 4th corners.
- 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."
- If no errors appear, the user will get a message that says "This pattern and all its children have valid joint angles."
- Set the parent frame of all Move To nodes to pattern moving frame
Note: If the Move to node is added to a validated Pattern node, the parent frame of the Move To node would by default be the Pattern node fixed frame. Otherwise, if the Move To node is added to an invalid Pattern node, the parent frame of the Move To node would by default be the base frame. This can be changed to the Pattern node fixed frame after it has been validated.
Follow Steps below to adjust specific poses for a Pattern Index.
- On the Pattern Node Inspector, select Adjust Poses.
- 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.
- Select the Index that you wish to make a modification for.
- 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.
- In Zero-G, move the arm to the new pose and select "Use Current Joint Pose" to update the pose.
- Press "Save + Return"