Skip to content

Commit

Permalink
add blaser_ros & camera_model
Browse files Browse the repository at this point in the history
  • Loading branch information
Flowerst-0416 authored Nov 21, 2022
1 parent 17a1129 commit de0d70e
Show file tree
Hide file tree
Showing 117 changed files with 30,284 additions and 0 deletions.
50 changes: 50 additions & 0 deletions blaser_ros/BlaserCommandsReadMe.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@

# Blaser Commands Readme

## -------Quick start Method--------

### Step 0: Plug in Blaser's USB3 and USB2 cable to NUC
You will see the LED and Blue laser pulse once, then Blue laser turns on, then the sensor is ready!

### Short-Step 1: Bring up Blaser sensor
`roslaunch blaser_ros bring_up_blaser.launch`

### Short-Step 2: Start up Blaser SLAM backend and Mapping GUI
`roslaunch blaser_ros trl6_slam.launch`

## -------Step-by-Step Method--------

### Step 0: Plug in Blaser's USB3 and USB2 cable to NUC
You will see the LED and Blue laser pulse once, then Blue laser turns on, then the sensor is ready!

### Step 1: open roscore at terminal #1
`roscore`

### Step 2: Allow port access for Blaser low-level control
`sudo chmod 666 /dev/ttyACM0`

### Step 3: Turn on Blaser Camera device driver
`rosrun blaser_pcl_core handheld_blaser_v30_node --lexp_val 50`

### Step 4: Start up Blaser Machine Vision frontend
`roslaunch blaser_ros trl6_sensor_proc.launch`

### Step 5: Start up Blaser SLAM backend and Mapping GUI
`roslaunch blaser_ros trl6_slam.launch`

## -------How to stitch point cloud--------

### To use mapping GUI:
### You need to change the "Mapping status" Slider/Parameter:
### - 0: Stop Map Generation
### - 1: Start Stitching Point Cloud Map
### - 2: Clear Map

### Always start from 0(stop) stage, when Blaser initialized, then trun on 1(start) to stitch point cloud, and end with move back to 0 to stop.
### you can also slide it to 2(Clear map).

## -------How to Save point cloud--------

### Save pointcloud (colorized, accumulated)
`rosrun pcl_ros pointcloud_to_pcd input:=/slam_estimator/laser_pcd`
`rosrun pcl_ros pointcloud_to_pcd input:=/laser_detector/laser_points`
100 changes: 100 additions & 0 deletions blaser_ros/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
cmake_minimum_required(VERSION 2.8.3)
project(blaser_ros)

set(CMAKE_BUILD_TYPE Release)

execute_process(COMMAND lsb_release -cs
OUTPUT_VARIABLE LSB_RELEASE_ID_SHORT
)

if(${LSB_RELEASE_ID_SHORT} MATCHES "bionic")
set(CMAKE_CXX_STANDARD_REQUIRED 11)
message("-- Systemm version: ${LSB_RELEASE_ID_SHORT}, set to C++11")
elseif(${LSB_RELEASE_ID_SHORT} MATCHES "focal")
set(CMAKE_CXX_STANDARD_REQUIRED 11)
message("-- Systemm version: ${LSB_RELEASE_ID_SHORT}, set to C++14")
endif()

set(CMAKE_CXX_FLAGS_RELEASE "-O3 -Wall -g")

find_package(catkin REQUIRED COMPONENTS
geometry_msgs
pcl_conversions
pcl_ros
roscpp
sensor_msgs
std_msgs
cv_bridge
camera_model
dynamic_reconfigure
)

find_package(OpenCV REQUIRED)
find_package(Eigen3 REQUIRED)
find_package(PythonLibs 2.7)

generate_dynamic_reconfigure_options(
cfg/LaserDetector.cfg
)

catkin_package(
INCLUDE_DIRS include
LIBRARIES laser_stripe
CATKIN_DEPENDS geometry_msgs pcl_conversions pcl_ros roscpp sensor_msgs std_msgs
dynamic_reconfigure
# DEPENDS system_lib
)

###########
## Build ##
###########

## Specify additional locations of header files
## Your package locations should be listed before other locations
include_directories(
include
${catkin_INCLUDE_DIRS}
${EIGEN3_INCLUDE_DIR}
/usr/include/python3.8
)

## Declare a C++ library
add_library(laser_stripe
src/laser_stripe_detector.cpp
src/laser_geometry_utils.cpp
)
target_link_libraries(laser_stripe ${catkin_LIBRARIES} ${OpenCV_LIBS})

add_executable(laser_stripe_detector_test
src/test/laser_stripe_detector_test.cpp
src/laser_stripe_detector.cpp)
target_link_libraries(laser_stripe_detector_test ${catkin_LIBRARIES} ${OpenCV_LIBS})

add_executable(laser_calib
src/laser_calib.cpp
src/laser_calib_node.cpp
src/laser_stripe_detector.cpp
src/util/cv_click_handler.cpp)
target_link_libraries(laser_calib ${catkin_LIBRARIES} ${OpenCV_LIBS}
${PYTHON_LIBRARIES})


add_executable(laser_detector
src/laser_detector.cpp
src/laser_detector_node.cpp
src/laser_geometry_utils.cpp
src/laser_stripe_detector.cpp
)
add_dependencies(laser_detector ${PROJECT_NAME}_gencfg)
target_link_libraries(laser_detector ${catkin_LIBRARIES} ${OpenCV_LIBS})

add_executable(laser_rgb_estimator
src/laser_rgb_estimator.cpp
src/util/geometry_util.cpp
src/laser_rgb_estimator_node.cpp)
target_link_libraries(laser_rgb_estimator ${catkin_LIBRARIES} ${OpenCV_LIBS})

add_executable(resolution_analyser
src/resolution_analyser.cpp)
target_link_libraries(resolution_analyser ${catkin_LIBRARIES} ${OpenCV_LIBS}
${PYTHON_LIBRARIES})
Loading

0 comments on commit de0d70e

Please sign in to comment.