We’ve made a lot of updates and improvements to the Visual Components Works Library in Works v5.3, including:
- Improved resource location control and material flow visualization
- Improved robot motion control
- Additional properties in “Advanced“, “Optimization” and “Monitor” for fine-tuning robot movements
- Improved resource location control
- 5 new tasks and 3 task updates
Continue reading to learn more about what’s new in Works v5.3!
Works Process – Resource Location Types & Keep Product Orientation
Improved resource location control and material flow visualization:
- Resource Location “ResourceLocationFrame”: Resources will move to the location defined by the “ResourceLocation” frame.
- Resource Location “RelativeToProduct”: Resources will move to the location defined by the product origin with the offset given by the “ResourceLocation” frame and the Works Process component origin.
- Resource Location “NearestGrid”: Resources will move to nearest grid relative to the product on the Pathway Area.
- Keep Product Orientation “KeepProdOrientation”: Resources will keep the product orientation when picking and placing products.
Works Robot Controller – Motion Path Control
Improved robot motion control – MotionPath tab can be used to control robot movements during the pick & place operations.
- OptimizeCycle: The property defines if the controller tries to find optimized pick & place strategy with optimized values in addition to avoiding collisions.
- ScrunchFactor: ScrunchFactor defines the distance between a robot and the product during the movements.
- FlyByRounding: This property defines the amount of rounding done for the movements.
- MaintainHeight: The property defines if the same height is maintained during the movements excluding approach and depproach.
Additional properties in “Advanced“, “Optimization” and “Monitor” can be used to fine tune the robot movements.
- Advanced Properties:
- MinJ1Delta is the min amount of movement of j1 required to use a strategy. If a move is shorter, motion path is not needed.
- Optimization Properties: “Optimization” uses a Genetic Algorithm to find the best solution. The ‘best’ or ‘fittest’ solution has the fewest collisions (ideally 0) and lowest cycle-time. Top ranked solutions move to the next generation and new solutions are generated by cross-breeding top solutions and testing the results.
- Population is the number of solutions that are in each successive generation.
- StartPopulationFactor defines initial population of random solutions when this value is multiplied with the Population.
- Elites defines the percentage of solutions that automatically go into the next generation.
- Mates defines the percentage of the remaining population that are crossbred with the top breeding population.
- MutationRate tweaks the mate properties when creating a new solution.
- Generations defines the amount of iterations after the optimization ends.
- TestInterval defines the collision checking interval.
- CollisionTolerance can be set if non-exact collisions are desired (near-miss).
- ExcludeWorks exludes works components from collision check.
- Monitor Properties: These properties are used to monitor the optimization process during the simulation.
Works Shelf Buffer
Improved resource location control: Resource location is now supported. “ResourceLocation” type is by default “RelativeToProduct”. In addition, offset, side and rotation are supported.
New Task – “ReserveResource” & “ReleaseResource”
Resources can be reserved for tasks specified by the user.
- Binds a single resource to a process for the duration of given tasks. A resource to be reserved can be selected automatically (first arriving resource, Recommended) or named.
- Reserving overrides any active/previous reserver, release can be done only by the active reserver (works process)
- Reserved resource can’t be used by any other process. Resource needs to be released first. Reserved resources have highest priority (e.g. over the Nearest) in Task Control
- Applied to all tasks requiring resource interaction: “Feed”, “Need”, “HumanProcess”, “RobotProcess”, “Pick”, “Place”
- In “ReserveFirst“: Once a resource receives a transport task, it checks first if it needs to be reserved to the destination process. Without “ReserveFirst“: Once next task e.g. “Need” is completed the process reserves the named resource until “ReleaseResource” is called (with the same ResourceName)
New Task – “TransportInPattern”
Support for patterns:
- Patterns can now be created from the line input.
New Tasks – “WaitProductPick” & “WaitProductPlace”
- “WaitProductPick” waits until the product is picked from the works process.
- “WaitProductPlace” waits until the product is placed to the works process.
These tasks don’t define how products are picked/placed or by whom. For example, a robot program could be used to pick & place the products with grasp and release.
Task Update – “Feed”
Property reading with “#” in ToolName:
- Supports for property reading with “#” in ToolName. This property is only read from the active product (that is fed).
- If “#” is used, all TCPs found in the World are listed for selection.
Task Update – “Loop”
UserVariables in Count & break affects immediately:
- Support for UserVariables in Count.
- Support for breaking out of the loop immediately when break property changes.
Task Update – “Delay”
Support for distribution UserVariables:
- Distribution UserVariables are now supported.