libsweep

Crates.iolibsweep
lib.rslibsweep
version1.0.1
sourcesrc
created_at2017-09-14 02:10:06.125698
updated_at2017-09-17 01:37:18.410832
descriptionRust library for the Scanse Sweep LIDAR module
homepagehttps://github.com/andygrove/libsweep-rs
repositoryhttps://github.com/andygrove/libsweep-rs
max_upload_size
id31668
size10,229
Andy Grove (andygrove)

documentation

https://github.com/andygrove/libsweep-rs

README

libsweep-rs

Version Docs

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
Commit count: 29

cargo fmt