SICKAG / sick_safetyscanners_base

CPP (C++) Driver for SICK safety laser scanners
https://www.sick.com/de/en/opto-electronic-protective-devices/safety-laser-scanners/c/g187225
Apache License 2.0
14 stars 32 forks source link

Reading "Ethernet Packet - SICK output" bytes #6

Closed scotthea-amazon closed 3 years ago

scotthea-amazon commented 3 years ago

Hello,

I am trying to read the "Ethernet Packet - SICK output" bytes from a SICK CPU (see image below). Is there a way to read those bytes using the API provided by this project? If not, can someone point me to a description of the commands that would be needed to read them?

SICK_output_bytes

lenpuc commented 3 years ago

Hi, I am not entirely sure where this data would bet. If the data you are looking for ist in the UDP Protocoll oder in the Cola2 variables they are readable. Have a look here: https://cdn.sick.com/media/docs/1/01/701/Technical_information_microScan3_outdoorScan3_en_IM0083701.PDF

Possibly your application is setting the output paths? If so the data is in the UDP protocol in the application outputs. You can receive them by calling the receive function of the synchronous API. The data package then contains the application outputs.

However, if its no where in the manual, it might be a safety related output which is not given by the protocol. Then this driver will not pick it up. Hope that helps.

scotthea-amazon commented 3 years ago

Thank you for the quick and helpful response!

If these values are in the ApplicationOutputs, would you expect them to be found in the monitoring case vector?

lenpuc commented 3 years ago

Might be possible. I am not entirely sure how the side of these applications gives the output to cola2 or the UDP protocol. But yes this would be the first place I would check. But I can not give you a definite answer on this. Maybe the support of SICK can give you more feedback on this.

lenpuc commented 3 years ago

Closing this. If you got more answers please post them here.