Repository Summary
Checkout URI | https://github.com/PilzDE/psen_scan_v2.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2021-04-05 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Packages
Name | Version |
---|---|
psen_scan_v2 | 0.2.0 |
README
PILZ safety laser scanner PSENscan
Package: psen_scan_v2
The psen_scan_v2 package is a ROS integration driver for the PSENscan safety laser scanner product. It lets you integrate the laser scanner data into your ROS Environment easily. Using the standard [sensor_msgs/LaserScan][] message format ensures compatibility with other laserscan-post-processing nodes such as [gmapping][]. For a general overview, link collection and tutorials we refer to the ROS wiki page.
PSENscan firmware >= 3.1.0 is supported on the following models:
Type | Features | Order number |
---|---|---|
Common features:
|
||
Light versions Additional features: Muting, EDM, Override | ||
PSEN sc L 3.0 08-12 3.0 m | safety zone, 8 or 12-pin exchangeable memory module | 6D000012 |
PSEN sc L 5.5 08-12 5.5 m | safety zone, 8 or 12-pin exchangeable memory module | 6D000013 |
Master versions Additional features: Muting, EDM, Override, restart in accordance with EN ISO 61496-3, vertical applications | ||
PSEN sc M 3.0 08-12 3.0 m | safety zone, 8 or 12-pin exchangeable memory module | 6D000016 |
PSEN sc M 5.5 08-12 5.5 m | safety zone, 8 or 12-pin exchangeable memory module | 6D000017 |
C++ standalone library
If you are interested in using the PSENscan safety laser scanner without ROS, please take a look at our C++ standalone library. You can read more about it in the standalone
folder
Table of Contents
Installation
Needed Equipment: - PSENscan safety laser scanner - ROS Machine
To use the package, you can install prebuilt packages with
sudo apt install ros-$ROS_DISTRO-psen-scan-v2
Usage
To start reading data from the safety laser scanner and publishing scans execute roslaunch psen_scan_v2 psen_scan_v2.launch
in a command line. This will launch the ROS Node with the default configuration.
If you wish to set parameters from the command line, add them to the end of the command as parameter:=value
, separated by spaces.
roslaunch psen_scan_v2 psen_scan_v2.launch sensor_ip:=192.168.0.10
This example configures the safety laser scanner at 192.168.0.10 to send it´s frames to 192.168.0.20:3050.
The tutorials describe how to create an application package with your own launch file, where you can easily adjust the configuration parameters.
Parameters
sensor_ip (string, default: "192.168.0.10")
IP-Address of safety laser scanner.
Optional Parameters
prefix (string, default: "laser_1")
Name of this scanner that can be changed to differentiate between multiple devices.
angle_start (double, default: -2.40 (= -137.5 deg))
Start angle of measurement. (Radian)
angle_end (double, default: 2.40 (= 137.5 deg))
End angle of measurement. (Radian)
Expert Parameters (optional)
host_ip (string, default: "auto")
IP-Address of host machine. The IP of the local machine is used by default.
host_udp_port_data (int, default: 55115)
UDP Port on which monitoring frames (scans) should be received.
host_udp_port_control (int, default: 55116)
UDP Port used to send commands (start/stop) and receive the corresponding replies.
fragmented_scans (bool, default: false)
Publish scan data as soon as a UDP packet is ready, do not wait for a full scan.
Published Topics
/laser_scanner/scan ([sensor_msgs/LaserScan][])
- If fragmented_scans is set to false (default) the driver will publish complete scan rounds from the PSENscan safety laser scanner as a single message.
- If fragmented_scans is enabled the driver will send the measurement data as soon as they arrive, instead of waiting for the scan round to be completed. This way the scan data is received sooner but is split into several sensor messages.
Hint 1: Scan rounds and fragments that contain no measurement data are not published. This can happen with smaller scan ranges.
Hint 2: Frequency of the laser scan messages is about 33hz for the combined and 200hz for the fragmented scans.
TF Frames
The location of the TF frames is shown in the image below.
These names are defined by the aforementioned launchfile parameter prefix
.
Changing them is necessary for instance when running multiple scanners.
Defining the scan range
You can adjust the scan field to your needs by changing angle_start and angle_end. The published ([sensor_msgs/LaserScan][]) will only contain data within the given angle limits. Both limits are defined within the laser_1_scan frame as shown in the image below.
Developer Information
Build Status
Platform | Melodic | Noetic |
---|---|---|
CI | ||
Buildfarm src | ||
Buildfarm bin |
Branching model
main
is considered to be the active development branch, it targets the ROS distributions melodic
and noetic
.
Test concept
Migration
To update your ROS environment from the former psen_scan
package (which supported firmware versions up to 3.0), please execute the following steps:
1. Update scanner firmware using PSENscan Configurator (unless the device has firmware 3.1 already)
2. Install the new ROS package
sudo apt install ros-$ROS_DISTRO-psen-scan-v2
3. Replace the launch file arguments:
* password
and x_axis_rotation
are obsolete and should be dropped
* angle_start
and angle_end
are now in radians, in direction of the x axis of the scanner tf frame
4. In your application launch file / roslaunch command: replace all occurrences of psen_scan
with psen_scan_v2
You need further information?
Our international hotline staff will support you individually about our ROS packages at ros@pilz.de
Find more information about the PILZ safety laser scanner on the product website.
Visit us at pilz.com
PILZ is an international-scale, innovative automation technology company. PILZ uses its solutions to create safety for man, machine and the environment. In addition to head office in Ostfildern near Stuttgart, the family business is represented over 2,400 employees at 42 subsidiaries and branches on all continents.
The company’s products include sensor technology, electronic monitoring relays, safety relays, configurable and programmable control systems, automation solutions with motion control, systems for industrial communication as well as visualization solutions and operator terminals.
PILZ solutions can be used in all areas of mechanical engineering, including the packaging and automotive sector, plus the railway technology, press and wind energy sectors. These solutions ensure that baggage handling systems run safely at airports and funiculars or roller coasters travel safely; they also guarantee fire protection and energy supply in buildings.
[sensor_msgs/LaserScan]: http://docs.ros.org/noetic/api/sensor_msgs/html/msg/LaserScan.html [gmapping]: http://wiki.ros.org/gmapping
CONTRIBUTING
Repository Summary
Checkout URI | https://github.com/PilzDE/psen_scan_v2.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2021-04-05 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Packages
Name | Version |
---|---|
psen_scan_v2 | 0.2.0 |
README
PILZ safety laser scanner PSENscan
Package: psen_scan_v2
The psen_scan_v2 package is a ROS integration driver for the PSENscan safety laser scanner product. It lets you integrate the laser scanner data into your ROS Environment easily. Using the standard [sensor_msgs/LaserScan][] message format ensures compatibility with other laserscan-post-processing nodes such as [gmapping][]. For a general overview, link collection and tutorials we refer to the ROS wiki page.
PSENscan firmware >= 3.1.0 is supported on the following models:
Type | Features | Order number |
---|---|---|
Common features:
|
||
Light versions Additional features: Muting, EDM, Override | ||
PSEN sc L 3.0 08-12 3.0 m | safety zone, 8 or 12-pin exchangeable memory module | 6D000012 |
PSEN sc L 5.5 08-12 5.5 m | safety zone, 8 or 12-pin exchangeable memory module | 6D000013 |
Master versions Additional features: Muting, EDM, Override, restart in accordance with EN ISO 61496-3, vertical applications | ||
PSEN sc M 3.0 08-12 3.0 m | safety zone, 8 or 12-pin exchangeable memory module | 6D000016 |
PSEN sc M 5.5 08-12 5.5 m | safety zone, 8 or 12-pin exchangeable memory module | 6D000017 |
C++ standalone library
If you are interested in using the PSENscan safety laser scanner without ROS, please take a look at our C++ standalone library. You can read more about it in the standalone
folder
Table of Contents
Installation
Needed Equipment: - PSENscan safety laser scanner - ROS Machine
To use the package, you can install prebuilt packages with
sudo apt install ros-$ROS_DISTRO-psen-scan-v2
Usage
To start reading data from the safety laser scanner and publishing scans execute roslaunch psen_scan_v2 psen_scan_v2.launch
in a command line. This will launch the ROS Node with the default configuration.
If you wish to set parameters from the command line, add them to the end of the command as parameter:=value
, separated by spaces.
roslaunch psen_scan_v2 psen_scan_v2.launch sensor_ip:=192.168.0.10
This example configures the safety laser scanner at 192.168.0.10 to send it´s frames to 192.168.0.20:3050.
The tutorials describe how to create an application package with your own launch file, where you can easily adjust the configuration parameters.
Parameters
sensor_ip (string, default: "192.168.0.10")
IP-Address of safety laser scanner.
Optional Parameters
prefix (string, default: "laser_1")
Name of this scanner that can be changed to differentiate between multiple devices.
angle_start (double, default: -2.40 (= -137.5 deg))
Start angle of measurement. (Radian)
angle_end (double, default: 2.40 (= 137.5 deg))
End angle of measurement. (Radian)
Expert Parameters (optional)
host_ip (string, default: "auto")
IP-Address of host machine. The IP of the local machine is used by default.
host_udp_port_data (int, default: 55115)
UDP Port on which monitoring frames (scans) should be received.
host_udp_port_control (int, default: 55116)
UDP Port used to send commands (start/stop) and receive the corresponding replies.
fragmented_scans (bool, default: false)
Publish scan data as soon as a UDP packet is ready, do not wait for a full scan.
Published Topics
/laser_scanner/scan ([sensor_msgs/LaserScan][])
- If fragmented_scans is set to false (default) the driver will publish complete scan rounds from the PSENscan safety laser scanner as a single message.
- If fragmented_scans is enabled the driver will send the measurement data as soon as they arrive, instead of waiting for the scan round to be completed. This way the scan data is received sooner but is split into several sensor messages.
Hint 1: Scan rounds and fragments that contain no measurement data are not published. This can happen with smaller scan ranges.
Hint 2: Frequency of the laser scan messages is about 33hz for the combined and 200hz for the fragmented scans.
TF Frames
The location of the TF frames is shown in the image below.
These names are defined by the aforementioned launchfile parameter prefix
.
Changing them is necessary for instance when running multiple scanners.
Defining the scan range
You can adjust the scan field to your needs by changing angle_start and angle_end. The published ([sensor_msgs/LaserScan][]) will only contain data within the given angle limits. Both limits are defined within the laser_1_scan frame as shown in the image below.
Developer Information
Build Status
Platform | Melodic | Noetic |
---|---|---|
CI | ||
Buildfarm src | ||
Buildfarm bin |
Branching model
main
is considered to be the active development branch, it targets the ROS distributions melodic
and noetic
.
Test concept
Migration
To update your ROS environment from the former psen_scan
package (which supported firmware versions up to 3.0), please execute the following steps:
1. Update scanner firmware using PSENscan Configurator (unless the device has firmware 3.1 already)
2. Install the new ROS package
sudo apt install ros-$ROS_DISTRO-psen-scan-v2
3. Replace the launch file arguments:
* password
and x_axis_rotation
are obsolete and should be dropped
* angle_start
and angle_end
are now in radians, in direction of the x axis of the scanner tf frame
4. In your application launch file / roslaunch command: replace all occurrences of psen_scan
with psen_scan_v2
You need further information?
Our international hotline staff will support you individually about our ROS packages at ros@pilz.de
Find more information about the PILZ safety laser scanner on the product website.
Visit us at pilz.com
PILZ is an international-scale, innovative automation technology company. PILZ uses its solutions to create safety for man, machine and the environment. In addition to head office in Ostfildern near Stuttgart, the family business is represented over 2,400 employees at 42 subsidiaries and branches on all continents.
The company’s products include sensor technology, electronic monitoring relays, safety relays, configurable and programmable control systems, automation solutions with motion control, systems for industrial communication as well as visualization solutions and operator terminals.
PILZ solutions can be used in all areas of mechanical engineering, including the packaging and automotive sector, plus the railway technology, press and wind energy sectors. These solutions ensure that baggage handling systems run safely at airports and funiculars or roller coasters travel safely; they also guarantee fire protection and energy supply in buildings.
[sensor_msgs/LaserScan]: http://docs.ros.org/noetic/api/sensor_msgs/html/msg/LaserScan.html [gmapping]: http://wiki.ros.org/gmapping