z_laser_projector: z_laser_gui | z_laser_msgs | z_laser_viz | z_laser_zlp1

Package Summary

The z_laser_projector stack is a set of tools that allow the user to operate the Z-LASER Projector ZLP1 and simplify the task of developing further advanced features, such as augmented reality applications. The stack provides a ROS API to control the device via topics and services, a visualizer for laser projections and a graphical interface.

  • Maintainer status: maintained
  • Maintainer: Rafael Luque <rluque AT catec DOT aero>, Ines M. Lara <imlara AT catec DOT aero>
  • Author: Rafael Luque <rluque AT catec DOT aero>, Ines M. Lara <imlara AT catec DOT aero>
  • License: Apache 2.0
  • Source: git https://github.com/fada-catec/z_laser_projector.git (branch: melodic)

Overview

  • ZLP1.png

The ZLP1 is an eye-safe laser projector (laser class 2M). The system projects figures and patterns as an optical guidance system for human operator tasks. Such guidance can be used in industrial production processes like pick-and-place, logistics, and workstations, helping and optimizing the production workflows.

  • zlaser_applic.png

The z_laser_projector stack aims to promote the development of advanced applications in factories facilities and to motivate the ROS-Industrial community growth.

Getting started

The z_laser_projector stack consists of:

  • z_laser_msgs: defines the ROS messages used to interact with the z_laser_projector stack.

  • z_laser_zlp1: this package is a ROS wrapper that provides a ROS API for the communication and control of the ZLP1 Z-LASER Projector making it fully compatible with all available sensors and devices running over the ROS-Industrial project.

  • z_laser_viz: provides a visualizer for laser projections in RViz and locates reference systems. This package is used in combination with z_laser_zlp1 to ease the use and configuration of the projector.

  • z_laser_gui: supplies a graphical interface that improves the user interaction with the ROS API. It wraps the messages publication and services call which have been arranged to run the functionalities of the device.

  • stack_scheme.png

Usage

Projector node

You can launch the projector node and operate the device throughout the ROS API provided. Set argument load_user_coordinate_system to true for loading initial values of the reference system from configuration files (.yaml):

  •  roslaunch z_laser_projector projector_zlp1.launch

Projector node + Visualizer

You can launch the projector node together with visualizer node. Note: the projector node launch is included in z_laser_viz:

  •  roslaunch z_laser_projector projector_viz.launch

GUI node

Additionally, you can also launch the GUI node:

  •  roslaunch z_laser_gui projector_gui.launch

Projector node + Visualizer

On the other hand, if you prefer to include some projector functionalities into your custom node or application, import the libraries instead:

  •  #!/usr/bin/env python3
     import z_laser_zlp1.zlp_projector_manager 

Licensing the projector

A device-key license to check the purchase of the device is always required to use the ZLP software. Please, contact your Z-LASER supplier to get a valid license. Save the license file under <package_directory>/lic folder. Then, indicate the license file name on the configuration file config/communication_settings.yaml.

Demonstration Video

Acknowledgement

ROSIN Logo

Supported by ROSIN - ROS-Industrial Quality-Assured Robot Software Components.
More information: rosin-project.eu

EU Flag

This project has received funding from the European Union’s Horizon 2020
research and innovation programme under grant agreement No. 732287.

Wiki: z_laser_projector (last edited 2020-12-03 12:04:38 by Fada_Catec)