Skip to content

Commit 17cdaf2

Browse files
velodynevlslianglia-apollo
authored andcommitted
ROS driver for Velodyne VLS-128 added
1 parent d85816e commit 17cdaf2

File tree

115 files changed

+13681
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

115 files changed

+13681
-0
lines changed

modules/drivers/velodyne_vls/COPYING

+41
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
2+
Copyright (C) 2010-2013 Austin Robot Technology, and others
3+
All rights reserved.
4+
5+
6+
All code in this repository is released under the terms of the
7+
following Modified BSD License.
8+
9+
10+
Modified BSD License:
11+
--------------------
12+
13+
Redistribution and use in source and binary forms, with or without
14+
modification, are permitted provided that the following conditions
15+
are met:
16+
17+
* Redistributions of source code must retain the above copyright
18+
notice, this list of conditions and the following disclaimer.
19+
20+
* Redistributions in binary form must reproduce the above
21+
copyright notice, this list of conditions and the following
22+
disclaimer in the documentation and/or other materials provided
23+
with the distribution.
24+
25+
* Neither the names of the University of Texas at Austin, nor
26+
Austin Robot Technology, nor the names of other contributors may
27+
be used to endorse or promote products derived from this
28+
software without specific prior written permission.
29+
30+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
31+
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
32+
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
33+
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
34+
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
35+
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
36+
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
37+
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
38+
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
39+
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
40+
ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
41+
POSSIBILITY OF SUCH DAMAGE.
+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# ros-velodyne-vls128-driver
2+
3+
Repository for Velodyne releases for Baidu
+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
Overview
2+
========
3+
4+
Velodyne_ is a collection of ROS_ packages supporting `Velodyne high
5+
definition 3D LIDARs`_.
6+
7+
**Warning**::
8+
9+
The master branch normally contains code being tested for the next
10+
ROS release. It will not always work with every previous release.
11+
12+
The current ``master`` branch works with ROS Kinetic, Jade, and
13+
Indigo. It may work with Hydro and Groovy, but that has not been
14+
tested recently. To build for Fuerte from source, check out the
15+
``rosbuild`` branch instead of ``master``.
16+
17+
.. _ROS: http://www.ros.org
18+
.. _Velodyne: http://www.ros.org/wiki/velodyne
19+
.. _`Velodyne high definition 3D LIDARs`: http://www.velodynelidar.com/lidar/lidar.aspx
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
Change history
2+
==============
3+
4+
1.3.0 (2017-11-10)
5+
------------------
6+
* Merge pull request `#110 <https://github.com/ros-drivers/velodyne/issues/110>`_ from kmhallen/master
7+
Added velodyne_laserscan package
8+
* Added velodyne_laserscan package and inserted into existing launch files
9+
* Contributors: Jack O'Quin, Joshua Whitley, Kevin Hallenbeck
10+
11+
1.2.0 (2014-08-06)
12+
------------------
13+
14+
1.1.2 (2013-11-05)
15+
-------------------
16+
17+
1.1.1 (2013-07-30)
18+
------------------
19+
20+
1.1.0 (2013-07-16)
21+
------------------
22+
23+
1.0.1 (2013-06-15)
24+
------------------
25+
26+
1.0.0 (2013-06-14)
27+
------------------
28+
29+
* Convert to catkin (`#1`_).
30+
* Release to Hydro.
31+
32+
0.9.2 (2013-07-08)
33+
------------------
34+
35+
0.9.1 (2012-06-05)
36+
------------------
37+
38+
0.9.0 (2012-04-03)
39+
------------------
40+
41+
* Completely revised API, anticipating a 1.0.0 release.
42+
* New velodyne_driver and velodyne_pointcloud packages.
43+
* Old velodyne_common and velodyne_pcl packages no longer included.
44+
* Released to Electric, Fuerte and Groovy.
45+
46+
0.2.6 (2011-02-23)
47+
------------------
48+
49+
0.2.5 (2010-11-19)
50+
------------------
51+
52+
* Initial implementation of new 0.3 interfaces.
53+
54+
0.2.0 (2010-08-17)
55+
------------------
56+
57+
* Initial release to ROS C-turtle.
58+
59+
.. _`#1`: https://github.com/ros-drivers/velodyne/issues/1
60+
.. _`#4`: https://github.com/ros-drivers/velodyne/issues/4
61+
.. _`#7`: https://github.com/ros-drivers/velodyne/issues/7
62+
.. _`#8`: https://github.com/ros-drivers/velodyne/pull/8
63+
.. _`#9`: https://github.com/ros-drivers/velodyne/issues/9
64+
.. _`#10`: https://github.com/ros-drivers/velodyne/issues/10
65+
.. _`#11`: https://github.com/ros-drivers/velodyne/issues/11
66+
.. _`#12`: https://github.com/ros-drivers/velodyne/pull/12
67+
.. _`#13`: https://github.com/ros-drivers/velodyne/issues/13
68+
.. _`#14`: https://github.com/ros-drivers/velodyne/pull/14
69+
.. _`#17`: https://github.com/ros-drivers/velodyne/issues/17
70+
.. _`#18`: https://github.com/ros-drivers/velodyne/issues/18
71+
.. _`#20`: https://github.com/ros-drivers/velodyne/issues/20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
cmake_minimum_required(VERSION 2.8.3)
2+
project(velodyne)
3+
find_package(catkin REQUIRED)
4+
catkin_metapackage()
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
<package>
2+
3+
<name>velodyne</name>
4+
<version>1.3.0</version>
5+
<description>
6+
Basic ROS support for the Velodyne VLS3D LIDARs.
7+
</description>
8+
<maintainer email="[email protected]">Nitinkumar Barot</maintainer>
9+
<author> Jack O'Quin</author>
10+
<license>BSD</license>
11+
<!--
12+
<review status="API reviewed" notes="2012-02-02"/>
13+
-->
14+
15+
<buildtool_depend>catkin</buildtool_depend>
16+
17+
<run_depend>velodyne_driver</run_depend>
18+
<run_depend>velodyne_laserscan</run_depend>
19+
<run_depend>velodyne_msgs</run_depend>
20+
<run_depend>velodyne_pointcloud</run_depend>
21+
22+
<export>
23+
<metapackage/>
24+
</export>
25+
26+
</package>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,141 @@
1+
Change history
2+
==============
3+
4+
1.3.0 (2017-11-10)
5+
------------------
6+
* Merge pull request `#129 <https://github.com/ros-drivers/velodyne/issues/129>`_ from kmhallen/pluginlib_macro
7+
Modern pluginlib macro
8+
* Update to use non deprecated pluginlib macro
9+
* add launch args to support multiple devices (`#108 <https://github.com/ros-drivers/velodyne/issues/108>`_)
10+
* Merge pull request `#101 <https://github.com/ros-drivers/velodyne/issues/101>`_ from teosnare/master
11+
velodyne_driver/src/lib/input.cc : fix for device_ip filter
12+
* Merge pull request `#104 <https://github.com/ros-drivers/velodyne/issues/104>`_ from altrouge/launch_options
13+
Add more options in launch files.
14+
* Rearranged alphabetically.
15+
* Add more options in launch files.
16+
- rpm, device_ip, port, read_once, read_fast, repeat_delay
17+
* velodyne_driver/src/lib/input.cc : fix for device_ip filter
18+
Fix for device_ip filter in InputSocket: initialization of devip\_ for correct ip filtering in InputSocket::getPacket.
19+
* velodyne_driver: credit @priyankadey for VLP-16 bug fix (`#96 <https://github.com/ros-drivers/velodyne/issues/96>`_)
20+
* Merge pull request `#96 <https://github.com/ros-drivers/velodyne/issues/96>`_ from priyankadey/master
21+
updated VLP-16 packet rate from user manual.
22+
* updated VLP-16 packet rate from user manual.
23+
Also verified with sensor. It reduced overlap in the pointcloud
24+
* update change history
25+
* Merge pull request `#94 <https://github.com/ros-drivers/velodyne/issues/94>`_ from ros-drivers/pcap_port
26+
velodyne_driver: use port number for PCAP data (`#46 <https://github.com/ros-drivers/velodyne/issues/46>`_, `#66 <https://github.com/ros-drivers/velodyne/issues/66>`_)
27+
* fix g++ 5.3.1 compile errors (`#94 <https://github.com/ros-drivers/velodyne/issues/94>`_)
28+
* merge current master (`#94 <https://github.com/ros-drivers/velodyne/issues/94>`_)
29+
* Merge pull request `#91 <https://github.com/ros-drivers/velodyne/issues/91>`_ from chukcha2/master
30+
update velodyne_driver package description to include all models
31+
* update velodyne_driver package description to include all models
32+
* Merge pull request `#89 <https://github.com/ros-drivers/velodyne/issues/89>`_ from Tones29/feat_dynrec_driver
33+
Add dynamic latency configuration to velodyne_driver
34+
* velodyne_driver: Add dynamic_reconfigure and time_offset correction
35+
The value of time_offset is added to the calculated time stamp in live mode for each packet.
36+
* velodyne_driver: Make input destructors virtual
37+
* prepare change history for coming Indigo release (`#59 <https://github.com/ros-drivers/velodyne/issues/59>`_)
38+
* velodyne_driver: use port number for PCAP data (`#66 <https://github.com/ros-drivers/velodyne/issues/66>`_)
39+
* Merge pull request `#39 <https://github.com/ros-drivers/velodyne/issues/39>`_ from zooxco/multivelodyne
40+
support for multiple velodynes
41+
* Merge pull request `#44 <https://github.com/ros-drivers/velodyne/issues/44>`_ from SISegwayRmp/master
42+
adding driver and pointcloud support for the VLP16
43+
* adding the VLP16 test scripts and updating the CMakeLists to include the test file from http://download.ros.org/data/velodyne/vlp16.pcap
44+
* adding support for the VLP16
45+
* parameters to set the udp port
46+
* fixed missing header
47+
* cleanup debug line
48+
* parameter and code added for working with multiple velodynes
49+
* Contributors: Andreas Wachaja, Brice Rebsamen, Daniel Jartoux, Denis Dillenberger, Gabor Meszaros, Ilya, Jack O'Quin, Joshua Whitley, Kevin Hallenbeck, Matteo Murtas, Micho Radovnikovich, Priyanka Dey, William Woodall, jack.oquin, junior, phussey
50+
51+
1.2.0 (2014-08-06)
52+
------------------
53+
* Fixed bug in diagnostic rate for driver (`#16
54+
<https://github.com/ros-drivers/velodyne/issues/16>`_)
55+
* Contributors: Brice Rebsamen, Jack O'Quin
56+
57+
1.1.2 (2013-11-05)
58+
-------------------
59+
60+
* Move unit test data to download.ros.org (`#18`_).
61+
* Install missing vdump script (`#17`_).
62+
63+
1.1.1 (2013-07-30)
64+
------------------
65+
66+
* Add support for HDL-64E S2 and S2.1 models, which were not working before (`#11`_), thanks to Gabor Meszaros (`#12`_).
67+
* Add additional parameters to launch files (`#14`_).
68+
69+
1.1.0 (2013-07-16)
70+
------------------
71+
72+
* Fix build problems due to PCL 1.7 API incompatibilities (`#8`_),
73+
thanks to William Woodall. This version also works with Groovy, as
74+
long as the correct ``pcl_conversions`` is installed.
75+
* Fix errors with Mac OSX compiler (`#8`_).
76+
* Install ``pluginlib`` XML files (`#9`_).
77+
* Install some launch and parameter files.
78+
* Enable unit tests when ``CATKIN_ENABLE_TESTING`` is set (`#10`_).
79+
80+
1.0.1 (2013-06-15)
81+
------------------
82+
83+
* Declare explicit ``pluginlib`` dependency (`#4`_).
84+
85+
1.0.0 (2013-06-14)
86+
------------------
87+
88+
* Convert to catkin (`#1`_).
89+
* Release to Hydro.
90+
91+
0.9.2 (2013-07-08)
92+
------------------
93+
94+
* Fix Groovy build problem (`#7`_).
95+
96+
0.9.1 (2012-06-05)
97+
------------------
98+
99+
* Driver socket read path improvements.
100+
* Add unit tests with 32E data.
101+
* Released to Electric, Fuerte and Groovy.
102+
103+
0.9.0 (2012-04-03)
104+
------------------
105+
106+
* Completely revised API, anticipating a 1.0.0 release.
107+
* HDL-32E device support.
108+
* New velodyne_driver and velodyne_pointcloud packages.
109+
* Old velodyne_common and velodyne_pcl packages no longer included.
110+
* Released to Electric, Fuerte and Groovy.
111+
112+
0.2.6 (2011-02-23)
113+
------------------
114+
115+
* Label all timing-dependent tests "realtime" so they do not run by
116+
default on the build farm machines.
117+
118+
0.2.5 (2010-11-19)
119+
------------------
120+
121+
* Initial implementation of new 0.3 interfaces.
122+
* Support for ROS 1.3 `std_msgs::Header` changes.
123+
124+
0.2.0 (2010-08-17)
125+
------------------
126+
127+
* Initial release to ROS C-turtle.
128+
129+
.. _`#1`: https://github.com/ros-drivers/velodyne/issues/1
130+
.. _`#4`: https://github.com/ros-drivers/velodyne/issues/4
131+
.. _`#7`: https://github.com/ros-drivers/velodyne/issues/7
132+
.. _`#8`: https://github.com/ros-drivers/velodyne/pull/8
133+
.. _`#9`: https://github.com/ros-drivers/velodyne/issues/9
134+
.. _`#10`: https://github.com/ros-drivers/velodyne/issues/10
135+
.. _`#11`: https://github.com/ros-drivers/velodyne/issues/11
136+
.. _`#12`: https://github.com/ros-drivers/velodyne/pull/12
137+
.. _`#13`: https://github.com/ros-drivers/velodyne/issues/13
138+
.. _`#14`: https://github.com/ros-drivers/velodyne/pull/14
139+
.. _`#17`: https://github.com/ros-drivers/velodyne/issues/17
140+
.. _`#18`: https://github.com/ros-drivers/velodyne/issues/18
141+
.. _`#20`: https://github.com/ros-drivers/velodyne/issues/20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
cmake_minimum_required(VERSION 2.8.3)
2+
project(velodyne_driver)
3+
4+
set(${PROJECT_NAME}_CATKIN_DEPS
5+
diagnostic_updater
6+
dynamic_reconfigure
7+
nodelet
8+
roscpp
9+
tf
10+
velodyne_msgs)
11+
12+
find_package(catkin REQUIRED COMPONENTS ${${PROJECT_NAME}_CATKIN_DEPS})
13+
14+
# This driver uses Boost threads
15+
find_package(Boost REQUIRED COMPONENTS thread)
16+
17+
# libpcap provides no pkg-config or find_package module:
18+
set(libpcap_LIBRARIES -lpcap)
19+
20+
include_directories(include ${Boost_INCLUDE_DIR} ${catkin_INCLUDE_DIRS})
21+
22+
# Generate dynamic_reconfigure server
23+
generate_dynamic_reconfigure_options(cfg/VelodyneNode.cfg)
24+
25+
# objects needed by other ROS packages that depend on this one
26+
catkin_package(CATKIN_DEPENDS ${${PROJECT_NAME}_CATKIN_DEPS}
27+
INCLUDE_DIRS include
28+
LIBRARIES velodyne_input)
29+
30+
# compile the driver and input library
31+
add_subdirectory(src/lib)
32+
add_subdirectory(src/driver)
33+
34+
install(DIRECTORY include/${PROJECT_NAME}/
35+
DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION})
36+
install(FILES nodelet_velodyne.xml
37+
DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})
38+
install(DIRECTORY launch/
39+
DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}/launch)
40+
install(PROGRAMS src/vdump
41+
DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION})
42+
43+
if (CATKIN_ENABLE_TESTING)
44+
45+
# these dependencies are only needed for unit testing
46+
find_package(roslaunch REQUIRED)
47+
find_package(rostest REQUIRED)
48+
49+
# Download packet capture (PCAP) files containing test data.
50+
# Store them in devel-space, so rostest can easily find them.
51+
catkin_download_test_data(
52+
${PROJECT_NAME}_tests_class.pcap
53+
http://download.ros.org/data/velodyne/class.pcap
54+
DESTINATION ${CATKIN_DEVEL_PREFIX}/${CATKIN_PACKAGE_SHARE_DESTINATION}/tests
55+
MD5 65808d25772101358a3719b451b3d015)
56+
catkin_download_test_data(
57+
${PROJECT_NAME}_tests_32e.pcap
58+
http://download.ros.org/data/velodyne/32e.pcap
59+
DESTINATION ${CATKIN_DEVEL_PREFIX}/${CATKIN_PACKAGE_SHARE_DESTINATION}/tests
60+
MD5 e41d02aac34f0967c03a5597e1d554a9)
61+
catkin_download_test_data(
62+
${PROJECT_NAME}_tests_vlp16.pcap
63+
http://download.ros.org/data/velodyne/vlp16.pcap
64+
DESTINATION ${CATKIN_DEVEL_PREFIX}/${CATKIN_PACKAGE_SHARE_DESTINATION}/tests
65+
MD5 f45c2bb1d7ee358274e423ea3b66fd73)
66+
67+
# unit tests
68+
add_rostest(tests/pcap_node_hertz.test)
69+
add_rostest(tests/pcap_nodelet_hertz.test)
70+
add_rostest(tests/pcap_32e_node_hertz.test)
71+
add_rostest(tests/pcap_32e_nodelet_hertz.test)
72+
add_rostest(tests/pcap_vlp16_node_hertz.test)
73+
add_rostest(tests/pcap_vlp16_nodelet_hertz.test)
74+
75+
# parse check all the launch/*.launch files
76+
roslaunch_add_file_check(launch)
77+
78+
endif (CATKIN_ENABLE_TESTING)

0 commit comments

Comments
 (0)