240 likes | 438 Views
Nodding LIDAR. For Applied Research Associates By Roscoe Kane and John Barton. Overview. Background Solution Design Software Project Management. Background. LIDAR stands for Li ght D etection A nd R anging
E N D
Nodding LIDAR For Applied Research Associates By Roscoe Kane and John Barton
Overview • Background • Solution • Design • Software • Project Management
Background • LIDAR stands for Light Detection And Ranging • Emits a pulsed laser beam and measures the time between emission and return to determine distance • Most systems are at best 2 dimensional, with 1 axis of sweep that returns 1 dimension of range
Problem Statement • Develop a system to adapt a 2 dimensional LIDAR system into a 3 dimensional LIDAR system by adding a second axis of rotation • Do this by nodding the system up and down in a sinusoidal pattern
Specs • 30º minimum sweep angle • .5hz minimum scan rate • Capable of any orientation • Capable of being disabled • Safety for both humans and robot • Bolts to table for display
Specs Down 30 deg. In ≤ 1 sec Up 30 deg. In ≤ 1 sec Works if mounted in any orientation Bolts for mount to table
Our Solution • Move the entire system about it’s center of gravity • Use a resonant spring oscillator to generate an constant frequency and allow for a smaller motor • Use a Maxon motor and motor controller to start, stop and maintain oscillation
Movement of LIDAR Unit Axis of Scan Axis of Sweep More then 30 scans per sweep Sweep is primary axis
System Diagram 24V Power Supply Spring LIDAR Motor Encoder Power Flow Motor Controller PC Data Flow Mechanical Drive
Mechanical Design • There were 2 parts to our mechanical design: • The bracket to hold the LIDAR system • A base for the LIDAR to rotate relative to • The system needs to be rigid so as to reduce shock on the system and unnecessary damping. • The moment of inertia of the bracket should be minimal • The center of rotation should be through the center of mass of the bracket with the LIDAR attached • LIDAR unit weighs 9Kg and is 351mm wide and 265mm tall with a 4 bolt mounting pattern on the back
Mechanical Design The LIDAR bracket mounts the LIDAR system and rotates with it. The base holds the bracket up and serves as a referenced for both the motor and spring to act on.
Resonant Spring Oscillator • The mass must be: • accelerated from rest • moved 30 deg. • stopped • This must be repeated every second • A spring is used to cause this motion to occur naturally • The system is excited by the motor • This kind of system is called a “forced torsional resonant spring oscillator”
Spring Sizing • The model for our mechanical system is shown below, where the arrow shows our motor input • Higher spring constant increases frequency of oscillation • Higher moment of inertia decreases frequency of oscillation
Each cycle some energy is lost in friction • Energy is added to the system by motor to make up for what is lost
Spring Sizing • There are many ways to design a spring for a system • Springs are not sold by spring constant • Calculations of physical dimensions of springs did not yield useful results • Several smaller springs were ordered • Desired spring constant can be achieved by varying number of springs used
Electrical Design • Motor controller includes power supply for motor • All components run on 24V power • LIDAR and motor controller are only components that require a power supply
Software Development • We were provided a motor and motor controller with position, velocity and acceleration control • A DLL file with functions to send commands to the motor controller was provided by manufacturer • The functions can also control velocity and position in a profile, either trapezoidal or sinusoidal
Functions in a DLL • The functions to control our motor are inside a managed DLL • The code to use functions inside a DLL was difficult to find
Data Correlation • Motor encoder data is time stamped and saved • LIDAR data is correlated with the encoder data based on the timestamp
Data Correlation Data from encoder may not be available as frequently This is not a problem, interpolation can be used assuming constant velocity between encoder readings