Uses old Rust 2015
1.0.1 |
|
---|
#21 in #angle
10KB
170 lines
libsweep-rs
This is a Rust wrapper for the Sweep SDK for interacting with the Scanse Sweep LIDAR unit.
Usage
let port = String::from("/dev/ttyUSB0");
let sweep = Sweep::new(port).unwrap();
sweep.start_scanning().unwrap();
let scan = sweep.scan().unwrap();
for sample in &scan {
println!("Angle {}, Distance {}, Signal Strength: {}",
sample.angle, sample.distance, sample.signal_strength);
}
sweep.stop_scanning().unwrap();
Instructions
This crate relies on the Sweep SDK (https://github.com/scanse/sweep-sdk) being installed.
Connect the LIDAR unit and find out which port it is using. On Raspberry Pi it is likely /dev/ttyUSB0
or similar. On Mac it is likely somthing like /dev/tty.usbserial-DM00KC6Z
.
Run the example using this syntax, passing the port as a command-line parameter.
cargo run --example scan /dev/ttyUSB0
You should see output like:
Version 1.2
ABI compatible: true
Motor speed: 5
Sample rate: 500
Starting scan ...
Angle 349375, Distance 67, Signal Strength: 191
Angle 352125, Distance 44, Signal Strength: 191
Angle 354687, Distance 40, Signal Strength: 191
Angle 357437, Distance 40, Signal Strength: 199
Dependencies
~44KB