profilerStreamer is a small project to combine 2D laser profiler data from Baumer with 1D sick distance sensor to recreate 3D point cloud of timber pieces in a CNC.
Note
This repository aims at creating a small grasshopper plugin for Rhino8. It is currently only a c++ library with binding and is still work in progress.
The hardware used in this instance is:
The setup is illustrated hereunder:
To communicate with the profiler's web socket and IO-Link master's OPC-UA server, connect your computer to local network (the one in which the profiler is present), which likely implies connecting an ethernet cable. Then modify your computer's settings as follows:
Once this setup specified, you can turn the profiler and IO-Link master ON, and the connection should work fine.
To run the code successfully, you must know:
-
The IP adresses of:
- the Baumer profiler
- the IO-Link master
[!NOTE] [TO BE FIXED] For now hard-coded in the c++ code, but as parameter in the python binding:
std::string OPCUAHost = "opc.tcp://192.168.0.64:4840"; -
The NamespaceIndex and Identifier of the port 4 of the IO-Link device in the OPC-UA server of the IO-Link master.
[!NOTE] [TO BE FIXED] For now hard-coded in the c++ code, but as parameter in the python binding:
ProfilerStreaming::Communicate::OPCUACommunicator opcuaCommunicator(OPCUAHost, ProfilerStreaming::Device::DeviceType::IO_LINK, {6, 229916}); // The NamespaceIndex and Identifier
These parameters can be found using the UaExpert software:
The code developped here is intended to be developped into a grasshopper component. In the mean time, to use this code in its current form, checkout the USAGE.md file in this repository.


