LandingLens | LandingLens on Snowflake |
---|---|
Input | Description | Paired Output | Data Type |
---|---|---|---|
Trigger | Takes images immediately when the Trigger goes from Low to High (False to True). | Trigger Ready | Bool |
Results Ack | Configure the PLC to set this setting to High (True) to indicate results and errors from LandingEdge have been received. When LandingEdge receives this signal, it resets the result signals and is ready to start the cycle again. | Results Ready, Error | Bool |
Request Sub-Configuration Index | The PLC can tell LandingEdge to change to a different Inspection Point configuration. Use the configuration Index, and not the configuration name. If you’re not using multiple configurations for an Inspection Point, leave this blank. Available in LandingEdge v2.6.45 and later. | Current Sub-Configuration Index | Dint |
Custom | Set up a custom signal that the PLC sends to LandingEdge. For example, this can be the “lot name” for a batch of images. Available in LandingEdge v2.10.x and later. | N/A | Must match the data type set in the PLC application |
Output | Description | Paired Input | Data Type |
---|---|---|---|
Trigger Ready | Indicates LandingEdge is ready to receive the trigger to capture and process an image. | Trigger | Bool |
Results Ready | Indicates inference is complete and results are ready on the output signals to be read by the PLC. | Results Ack | Bool |
Results OK | Indicates the image is good. This is the default result if you are running a Classification Model. | N/A | Bool |
Results NG | Indicates that the image is not good. An Error output will also be present. | N/A | Bool |
Classification | This option is only for Classification Models. Indicates the predicted Class ID. If there is no image, the value is -1. | N/A | Dint |
Error | Indicates an error occurred during acquisition or processing. Check the Error Code for more details. A Results NG output will also be present. To clear the error, assert the Results Ack input. | Results Ack | Bool |
Error Code | Indicates what kind of error occurred in the DINT data type.
| N/A | Dint |
Online/Ready | Indicates LandingEdge is running. | N/A | Bool |
Heartbeat | LandingEdge toggles the value from True to False every 1 second. This allows the PLC to check if LandingEdge is still functioning and that the connection between the PLC and LandingEdge still exists. | N/A | Bool |
Busy | Indicates LandingEdge is processing. | N/A | Bool |
Current Sub-Configuration Index | LandingEdge tells the PLC the Index of the Inspection Point configuration that is currently running. If you’re not using multiple configurations for an Inspection Point, leave this blank. Available in LandingEdge v2.6.45 and later. | Request Sub-Configuration Index | Dint |
Custom | Set up a custom signal that LandingEdge sends to the PLC. For example, this can be the x and y coordinates of a bounding box. Available in LandingEdge v2.10.x and later. | N/A | Must match the data type set in the PLC application |
Input | Set Up |
---|---|
Trigger | ✓ |
Results Ack | ✓ |
Request Sub-Configuration Index | ✖ |
Output | Set Up |
---|---|
Trigger Ready | ✓ |
Results Ready | ✓ |
Results OK | ✓ |
Results NG | ✓ |
Classification | ✓ (if using a Classification model) |
Error | ✓ |
Error Code | ✖ |
Online/Ready | ✓ |
Heartbeat | ✖ |
Busy | ✓ |
Current Sub-Configuration Index | ✖ |
ReadInput
and WriteOutput
methods to customize processing based on custom signals defined in the Inputs and Outputs.
The scripts in this section show examples of how you can use these methods:
ReadInput
: Save inferenced images to directories and filenames based on custom signals defined in the Inputs and Outputs.WriteOutput
: Send the X and Y coordinates of bounding boxes of predicted objects to the PLC (applicable when using an Object Detection model).lot
: This is the lot number for a set of products, and is defined in the PLC.batch
: This is the batch number for a set of products, and is defined in the PLC.x
: This is the x coordinate of the bounding box for a predicted object of interest.y
: This is the y coordinate of the bounding box for a predicted object of interest.ReadInput
), LandingEdge will use the values the PLC application sent the last time that you acquired an image. If you change a value in the PLC application, you must capture another image to send the updated value to LandingEdge.
For example, let’s say you create a lot
tag in the PLC application and set its value to 40. You then capture an image. At this point, the lot
value in LandingEdge is 40. Let’s say that you now change the lot
value in the PLC application to 50. If you run the Results Processing script in LandingEdge again without capturing an image, the value will still be 40. Once you capture another image, the value will change to 50.