====== Short Course: LIDAR ====== **Author:** [[:unlv_hament|Blake Hament]] Email: [[blakehament@gmail.com]] \\ **Date:** Last modified on 03/20/2017 \\ **Keywords:** tutorial, rangefinder, webcam, laser, LIDAR \\ This page outlines the content for a short course on sensors that use light to approximate distance, commonly known as Light Detection and Ranging or LIDAR. {{:short_course:lidarstreetpointcloud.jpg|}} \\ image from http://www.alfoldron.hu/ \\ {{:short_course:lidarpeople.jpg|}} \\ image from NASA \\ ===== Motivation and Audience ===== This course is designed for engineering students with an interest in robotics. Recent developments in autonomous driving technologies have driven down the cost and size of LIDAR sensors, even while their performance has drastically improved. LIDAR data can be used for navigation and object identification in a wide range of autonomous applications. The course will cover everything from the theory of operation behind LIDAR to reading data from a LIDAR sensor. I assume the reader has the following background and interests: * Basic proficiency in CPP, Python, or other programming language * Trigonometry proficiency * Interest in engineering and autonomous systems The rest of the course is organized as follows: - Week 1: 1D Rangefinding - Week 2: 2D Rangefinding - Week 3: 3D Rangefinding - Week 4: Visualizing Data in rviz (ROS) - Final ===== Week 1: 1D Rangefinding ===== Theory of Operation: [[:building_a_webcam-based_laser_rangefinder|DIY Laser/Webcam Rangefinder]] \\ [[https://docs.google.com/document/d/18iRa8swSb3dYpnFagQycu7rpIvZMyFk-xfkgvITp0YY/edit?usp=sharing|Trig Practice Problems]] /*****[[http://www.analyzemath.com/high_school_math/grade_10/trigonometry.html|Practice Problems]]*****/ Theory of Operation: Time-of-Flight Laser Rangefinder \\ [[:trig_practice_1|HW: Light Practice Problems]] ===== Week 2: 2D Rangefinding ===== Theory of Operation: 2D LIDAR [[:using_ros_to_read_data_from_a_hokuyo_scanning_laser_rangefinder|Intro to Hokuyo]]/LMS SICK LIDAR Data Structures HW: Interpret instances of digital output from LIDAR sensor Point Clouds, Reference Points, Control Points, Mesh HW: Import a point cloud, Mesh, Export as .STL ===== Week 3: 3D Rangefinding ===== Theory of Operation: 3D LIDAR Frames of Reference, Quaternions [[:scanning_with_the_riegl_lms-z210|Intro to Riegl LMS-Z210]] HW: Rotation practice problems ===== Week 4: Visualizing Data in rviz (ROS) ===== [[http://wiki.ros.org/indigo/Installation/Ubuntu|Installing & Configuring ROS]] Basic ROS Commands Nodes, Topics, Publishers, Subscribers [[:drc_hubo_hokuyo_scan|Visualizing LIDAR data in rviz]] HW: Write out step-by-step instructions for reading data from a Hokuyo and visualizing in rviz ===== Final ===== The final exam consists of multiple choice questions on the above topics and a practical portion in which students demonstrate how to connect to and visualize data from a LIDAR sensor.