Java Shell
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
examples
gradle/wrapper
lib/processing/core/library
native
readme
src
.gitignore
.travis.yml
README.md
appveyor.yml
build.gradle
gradlew
gradlew.bat
library.properties
release.sh
settings.gradle

README.md

Sweep for Processing Build Status Build status codebeat badge

Use the Scanse Sweep LIDAR with processing.

Introduction

Sweep for Processing is a port of the Scanse Sweep LIDAR library for processing. It gives you full access to the C API and adds some processing specfic methods to it.

Currently it is still under development and ONLY tested on MacOS.

LIDAR Example

Example of the LIDAR with FX2D

Example

Basic

To get sample data from the LIDAR sensor, you have to create a new SweepSensor and call the start method. The start method needs the path to the Sweep COM port.

import ch.bildspur.sweep.*;

SweepSensor sweep;

void setup()
{
  size(600, 300, FX2D);

  sweep = new SweepSensor(this);
  sweep.start("/dev/tty.usbserial-DO004HM4");
}

In draw you then just have to read the new samples from the device.

void draw()
{
	// do your stuff
	
	// read samples
	List<SensorSample> samples = sweep.getSamples()
	
	// do drawing
}

It is recommended to save the reference to the list of samples in a own variable and only use getSamples() once in a draw loop. Otherwise it is not guaranteed, that the samples are from the same scan (Concurrency).

Based on BasicExample

Asynchronous

With version 0.3 it is possible to start the device asynchronous and set the set the motor speed and sample rate through the constructor (thanks to @felixerdy).

import ch.bildspur.sweep.*;

SweepSensor sweep;

void setup()
{
  size(600, 300, FX2D);

  sweep = new SweepSensor(this);
  sweep.startAsync("/dev/tty.usbserial-DO004HM4", 5, 500);
}

It is recommended to use this method if the processing main thread should not be blocked by the start of the sweep device.

Based on AsyncExample