Equipment: Physics PE Sensor
|
Description
The Physics PE Sensor (Photo Eye) equipment detects when products pass through it.
Unlike standard PE Sensors, which are calculated when they are to trigger when a product is put on a conveyor, a Physics PE Sensor checks for collision between the ray and a product’s collision geometry every frame.
This allows for accurate detection of gaps and slopes in a product, or unique placement opportunities, that would be difficult with the standard sensor.
Unlike the standard PE Sensor, the Physics PE Sensor does not need to be on a supported piece of equipment to work. If a product visually blocks a Physics PE Sensor, then it will block.
Note: At present the Physics PE Sensor is for emulation only. Conveyor modes such as ‘Cascade’, ‘Window Reservation’, and so on will not use a Physics PE Sensor. Nor can components like a Diverter or X-Ray Machine use a Physics PE Sensor for their sensor. In addition, the Physics PE Sensor requires 3D rendering to be enabled to function.
Creation
Drag the Physics PE Sensor from the ‘Physics’ section of the toolbox onto the simulation. If it is dropped on to an equipment it will be attached to it.
Operation Notes
The sensor checks for collision in a line from the tip of the left diamond to the tip of the right diamond.
The sensor will not detect collisions if the product covers the sensor in its entirety. Please ensure that the sensor is larger than any collision that it needs to detect.
Custom Models
If a custom model is used as a product shape, the physics sensor will use that model for checking collisions. Holes in the model will unblock a sensor, slopes will trigger sensors at different heights at different types and so forth.
The more complex the 3D model the more CPU power will be required to determine if a sensor is blocked or not. If there are a lot of products or there are performance concerns using a simpler 3D model is recommended. Using the default cube is fastest of all. It is handled by special case code; the default cube will perform better than a 3D model of a cube, even if it looks identical.
Performance
Performing physics calculations every frame requires a lot more CPU power than the traditional Sym3 simulation. If there are any pieces of Physics equipment in a project, the simulation will use a lot of CPU while running.
For this reason, ensure that you are using the Physics PE Sensors in your projects; a single one will cause CPU usage to increase while the simulation is running, even if it is never blocked.
The amount of Physics PE Sensors and products that can be used before the simulation starts to become inaccurate varies between the hardware, operating system, models, available on your PC.
Time Warp
Increasing the simulation rate works as you would expect. However, as the position of the products is based on their rendered position, as speed increases there comes a point at which product will ‘skip’ over the sensor, and no block will be recorded.
Properties
Name | Description |
---|---|
Name | Name of PE. Has to be unique and is case sensitive. |
Free Position | Default = False Allows the PE to be freely positioned . If this value is true, X, Y, Z, Direction, Tilt and Roll and Length properties will be used to position the PE. Also, Path Distance is not used in this mode. The Z value can be used to detect product Height. |
Path Distance | The distance from the beginning of the Source component in the units chosen when the project was created (metres or feet) where the read occurs. This value is used only when Free Position is false. |
X | X position. |
Y | Y position. |
Z | Z position. |
Direction | Rotation angle around Z axis. |
Tilt | Rotation angle around Y axis. |
Roll | Rotation angle around X axis. |
Head size | Default = 1 Scale factor for the size of the Sensor head. The head doesn’t impact collision. |
Beam Width | Default = 1 Scale factor for the width of the Sensor beam. This doesn’t impact collision, only the visuals. |
Length | Default = 1.14 Length Of the PE (Indicators included). Read only except when the PE is in ‘Free Position’ mode. |
Beam | Allows the beam color to be set and whether it is visible. |
Indicators | Allows the indicator color to be set and whether it is visible. |
Bocked | True if the sensor is blocked, false otherwise. Read only from simulation script. If Override is true, it can be changed (from the property panel only – not simulation script). |
Override | Default = False and is not saved with the project. If true, the sensor will ignore the physics simulation and use the value of the blocked checkbox for the blocked state. This is intended for testing purposes. Note that checking and unchecking the blocked property when override is true will generate OnProductBlocking and OnProductUnblocking events, but the product property (second parameter) to those event callbacks will be null. |