Project

General

Profile

velodyne component

Provides corrected scans from Velodyne sensors.

Ports

robot_pose (in)

Data structure
  • struct ::or_pose_estimator::state robot_pose

    • struct ::or::time::ts ts

      • long sec

      • long nsec

    • boolean intrinsic

    • optional< struct ::or::t3d::pos > pos

      • double x

      • double y

      • double z

    • optional< struct ::or::t3d::att > att

      • double qw

      • double qx

      • double qy

      • double qz

    • optional< struct ::or::t3d::vel > vel

      • double vx

      • double vy

      • double vz

    • optional< struct ::or::t3d::avel > avel

      • double wx

      • double wy

      • double wz

    • optional< struct ::or::t3d::acc > acc

      • double ax

      • double ay

      • double az

    • optional< struct ::or::t3d::aacc > aacc

      • double awx

      • double awy

      • double awz

    • optional< struct ::or::t3d::pos_cov > pos_cov

      • double cov[6]

    • optional< struct ::or::t3d::att_cov > att_cov

      • double cov[10]

    • optional< struct ::or::t3d::att_pos_cov > att_pos_cov

      • double cov[12]

    • optional< struct ::or::t3d::vel_cov > vel_cov

      • double cov[6]

    • optional< struct ::or::t3d::avel_cov > avel_cov

      • double cov[6]

    • optional< struct ::or::t3d::acc_cov > acc_cov

      • double cov[6]

    • optional< struct ::or::t3d::aacc_cov > aacc_cov

      • double cov[6]


sensor_pose (in)

Data structure
  • struct ::or_pose_estimator::state sensor_pose

    • struct ::or::time::ts ts

      • long sec

      • long nsec

    • boolean intrinsic

    • optional< struct ::or::t3d::pos > pos

      • double x

      • double y

      • double z

    • optional< struct ::or::t3d::att > att

      • double qw

      • double qx

      • double qy

      • double qz

    • optional< struct ::or::t3d::vel > vel

      • double vx

      • double vy

      • double vz

    • optional< struct ::or::t3d::avel > avel

      • double wx

      • double wy

      • double wz

    • optional< struct ::or::t3d::acc > acc

      • double ax

      • double ay

      • double az

    • optional< struct ::or::t3d::aacc > aacc

      • double awx

      • double awy

      • double awz

    • optional< struct ::or::t3d::pos_cov > pos_cov

      • double cov[6]

    • optional< struct ::or::t3d::att_cov > att_cov

      • double cov[10]

    • optional< struct ::or::t3d::att_pos_cov > att_pos_cov

      • double cov[12]

    • optional< struct ::or::t3d::vel_cov > vel_cov

      • double cov[6]

    • optional< struct ::or::t3d::avel_cov > avel_cov

      • double cov[6]

    • optional< struct ::or::t3d::acc_cov > acc_cov

      • double cov[6]

    • optional< struct ::or::t3d::aacc_cov > aacc_cov

      • double cov[6]


point_cloud (out)

Data structure
  • struct ::or::pcl point_cloud

    • struct ::or::time::ts timeStamp

      • long sec

      • long nsec

    • unsigned short msgVersion

    • string sensorId

    • string frameId

    • boolean isRegistered

    • boolean isOrdered

    • unsigned long height

    • unsigned long width

    • boolean hasFixedTransform

    • struct ::or::transform pose_robotFrame_sensorFrame

      • struct ::or::t3d::pos translation

        • double x

        • double y

        • double z

      • struct ::or::t3d::att orientation

        • double qw

        • double qx

        • double qy

        • double qz

      • struct ::or::t3d::pos_cov tcov

        • double cov[6]

      • struct ::or::t3d::att_cov ocov

        • double cov[10]

      • struct ::or::t3d::att_pos_cov tocov

        • double cov[12]

    • struct ::or::transform pose_fixedFrame_robotFrame

      • struct ::or::t3d::pos translation

        • double x

        • double y

        • double z

      • struct ::or::t3d::att orientation

        • double qw

        • double qx

        • double qy

        • double qz

      • struct ::or::t3d::pos_cov tcov

        • double cov[6]

      • struct ::or::t3d::att_cov ocov

        • double cov[10]

      • struct ::or::t3d::att_pos_cov tocov

        • double cov[12]

    • sequence< struct ::or::t3d::pos > points

      • double x

      • double y

      • double z

    • sequence< struct ::or::color > colors

      • double r

      • double v

      • double b

    • sequence< short > intensity


point_cloud2 (out)

Data structure
  • struct ::pcl2::sensor_msgs_PointCloud2 point_cloud2

    • struct ::pcl2::std_msgs_header header

      • unsigned long seq

      • struct ::pcl2::msgs_time stamp

        • unsigned long sec

        • unsigned long nsec

      • string frame_id

    • unsigned long height

    • unsigned long width

    • sequence< struct ::pcl2::sensor_msgs_PointField > fields

      • string name

      • unsigned long offset

      • octet datatype

      • unsigned long count

    • boolean is_bigendian

    • unsigned long point_step

    • unsigned long row_step

    • sequence< octet > data

    • boolean is_dense


Services

SetVerbose (function)

Inputs
  • long verbose_level (default "0") Verbose level

Set the verbose level.


SetDelay (attribute)

Inputs
  • long usec_delay (default "1000000")

Set the delay in usec we will delay port update (to test the BIP monitor).


SetPCL2PubCyle (attribute)

Inputs
  • long pcl2_pub_cycle (default "10")

Set the number of cycle of regular pcl saving we push pcl2 (which is just used for display).


StartAcquisition (activity)

Throws
  • exception ::velodyne::e_mem

    • string<256> what

  • exception ::velodyne::e_grabber

    • string<256> what

  • exception ::velodyne::e_sys

    • string<256> what

  • exception ::velodyne::e_interface

    • string<256> what

  • exception ::velodyne::e_runtime

    • string<256> what

  • exception ::velodyne::e_not_implemented

    • string<256> what

Context

Starts the data acquisition


StopAcquisition (function)

Context

Stop the data acquisition


Init (activity)

Inputs
  • enum ::velodyne::Mode mode Connect to the sensor or a file ? ∈ { LIVE, FROM_FILE, READ }

  • enum ::velodyne::Model model Which model? ∈ { VLP16, HDL32, HDL64 }

  • string<128> inputFileName tcpdump file to read

  • boolean enableOrganization Enable 3D image organization?

Throws
  • exception ::velodyne::e_mem

    • string<256> what

  • exception ::velodyne::e_grabber

    • string<256> what

  • exception ::velodyne::e_params

    • string<256> what

  • exception ::velodyne::e_interface

    • string<256> what

Context
  • In task scan (frequency 100.0 Hz)

Opens the interface .


GetOneScan (activity)

Inputs
  • double firstAngle First angle of the scan (in degrees)

  • double lastAngle Last angle of the scan (in degrees)

  • double timeout Timeout used when stamping packets

Throws
  • exception ::velodyne::e_mem

    • string<256> what

  • exception ::velodyne::e_grabber

    • string<256> what

  • exception ::velodyne::e_params

    • string<256> what

  • exception ::velodyne::e_runtime

    • string<256> what

  • exception ::velodyne::e_interface

    • string<256> what

  • exception ::velodyne::e_not_implemented

    • string<256> what

  • exception ::velodyne::e_port

    • string<256> what

  • exception ::velodyne::e_timeout

    • string<256> what

Context

Acquire a full scan from the velodyne sensor


GetScans (activity)

Inputs
  • double firstAngle First angle of the scan (in degrees)

  • double lastAngle Last angle of the scan (in degrees)

  • double period Time in between scan acquisitions

  • double timeout Timeout used when stamping packets

Throws
  • exception ::velodyne::e_mem

    • string<256> what

  • exception ::velodyne::e_grabber

    • string<256> what

  • exception ::velodyne::e_params

    • string<256> what

  • exception ::velodyne::e_runtime

    • string<256> what

  • exception ::velodyne::e_interface

    • string<256> what

  • exception ::velodyne::e_not_implemented

    • string<256> what

  • exception ::velodyne::e_port

    • string<256> what

  • exception ::velodyne::e_timeout

    • string<256> what

Context

Acquire full scans from the velodyne sensor periodically


EnableScanAutoSaving (function)

Inputs
  • string<128> pcd_prefix

Enable auto saving scans as .pcd files


DisableScanAutoSaving (function)

Disable auto saving scans as .pcd files


StopGetScans (function)

Context

Stop the periodic acquisition of full scans


SavePCD (activity)

Inputs
  • string<128> pcdFileName

  • boolean binary_mode (default "1")

Throws
  • exception ::velodyne::e_mem

    • string<256> what

  • exception ::velodyne::e_grabber

    • string<256> what

  • exception ::velodyne::e_runtime

    • string<256> what

Context

Save a full scan from the velodyne sensor as a PCD file


SetupPoseProcessing (function)

Inputs
  • unsigned long pose_buffer_size

Context

Setup the processing of poses


StartPoseProcessing (activity)

Throws
  • exception ::velodyne::e_port

    • string<256> what

  • exception ::velodyne::e_runtime

    • string<256> what

Context

Starts the processing of poses coming from input ports


StopPoseProcessing (function)

Context

Stop the processing of poses coming from input ports


SetFixedSensorPose (activity)

Inputs
  • double x

  • double y

  • double z

  • double yaw

  • double pitch

  • double roll

  • string<128> parent_frame_id

  • string<128> child_frame_id

Context
  • In task pose (frequency 100.0 Hz)

Set a fixed pose for the velodyne sensor in the robot main frame


Tasks

acquisition

Context
  • Free running

Throws
  • exception ::velodyne::e_mem

    • string<256> what

  • exception ::velodyne::e_grabber

    • string<256> what


scan

Context
Throws
  • exception ::velodyne::e_mem

    • string<256> what

  • exception ::velodyne::e_grabber

    • string<256> what


pose

Context
  • Frequency 100.0 Hz