From e66e066931baf9bf0a7d02c791d8b1edd3e4c71d Mon Sep 17 00:00:00 2001 From: Yannic Staudt Date: Fri, 14 Jul 2017 09:42:43 +0200 Subject: [PATCH] Added Nuget badges to README and fixed a lot of typos --- LICENCE => LICENSE | 0 README.md | 35 ++++++++++--------- .../README.md | 7 ++-- src/Staudt.Engineering.LidaRx.sln | 1 + 4 files changed, 24 insertions(+), 19 deletions(-) rename LICENCE => LICENSE (100%) diff --git a/LICENCE b/LICENSE similarity index 100% rename from LICENCE rename to LICENSE diff --git a/README.md b/README.md index a285863..8d5c366 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ -Staudt Engineering / lidaRx -=========================== +LidaRx +====== [![Build status](https://ci.appveyor.com/api/projects/status/sy2l3c91cvlnd1p6?svg=true)](https://ci.appveyor.com/project/pysco68/lidarx) [![NuGet](https://img.shields.io/nuget/v/Staudt.Engineering.LidaRx.svg)](https://www.nuget.org/packages/Staudt.Engineering.LidaRx/) @@ -12,10 +12,10 @@ samples received by the scanner. Features -------- -- Unified data processing +- Unified data processing with all the power of [Rx.NET](http://reactivex.io/) at your fingertip - 3D coordinates - Configurable sensor position and orientation - - Sensor position and orientation updatable at runtime (== your sensor can move, scanned coordinates will be transformed accordingly) + - Sensor position and orientation updatable at runtime - Vendor agnostic sensor fusion (join data streams from multiple scanners) - Comprehensive API an helpers: [LidaRx readme](src/Staudt.Engineering.LidaRx/README.md) - Unified base API for scanners: connect/disconnect, start/stop scanning and simple status information @@ -24,13 +24,12 @@ Features - `PointsInDistanceRange` - `RadiusRangeMinDistance` - `RadiusRangeMaxDistance` - - Carthesian coordinates filters + - Cartesian coordinates filters - `PointsInBox` - Grouping/Transforming operators - `BufferByScan` -- Plus all the power of Rx.NET at your fingertip - Fully async -- Cross plattform support: +- Cross platform support: - .NET Standard 1.5 / .NET Core 1.0 - .NET Standard 2.0 / .NET Core 2.0 - .NET 4.6+ @@ -38,15 +37,17 @@ Features Supported devices ----------------- +These device are officially supported by LidaRx: + - Scanse.io SWEEP [Readme](src/Staudt.Engineering.LidaRx.Drivers.Sweep/README.md) -- Pepperl+Fuchs OMDxxx-R2000 device familly (HD and UHD) [Readme](src/Staudt.Engineering.LidaRx.Drivers.R2000/README.md) +- Pepperl+Fuchs OMDxxx-R2000 device family (HD and UHD) [Readme](src/Staudt.Engineering.LidaRx.Drivers.R2000/README.md) Show me some code! ------------------ Here's a simple example using a Scanse.io Sweep sensor. -Basically the programm connects to the Sweep on `Com1`, set the motor speed to 10Hz and the sample rate to 1kHz +Basically the program connects to the Sweep on `Com1`, set the motor speed to 10Hz and the sample rate to 1kHz ```csharp using (var sweep = new SweepScanner("COM1")) @@ -58,7 +59,7 @@ using (var sweep = new SweepScanner("COM1")) await sweep.StartScanAsync(); ``` -...then the programm registers for `LidarStatusEvent` with the `LidarStatusLevel.Error` and logs the +...then the program registers for `LidarStatusEvent` with the `LidarStatusLevel.Error` and logs the messages to the console. ```csharp @@ -69,7 +70,7 @@ messages to the console. }); ``` -Next, the programm takes the LIDAR point stream and filters away all the points that are outside of the distance +Next, the program takes the LIDAR point stream and filters away all the points that are outside of the distance range 40cm to 100cm (imagine two concentric circles around the scanner; only points between them propagate in the resulting `Observable` stream) @@ -83,7 +84,7 @@ resulting `Observable` stream) Finally we use the restrained stream as source for a Rx `Buffer()` which collects all the points into consecutive "1 second long" buffers. In the second part the program uses the `pointsBetween400and1000mm` stream and restricts -it further to points in the azimut range of -45 to +45 degree. +it further to points in the azimuth range of -45 to +45 degree. ```csharp // buffer in 1second long samples @@ -126,22 +127,22 @@ the code above it buffers by scan (basically per scanner head revolution). Roadmap ------- -- Usable implementation of 3D colision test (think of `PointsIn3DModel(string pathToStlFile)` ) +- Usable implementation of 3D collision test (think of `PointsIn3DModel(string pathToStlFile)` ) - Points to object matching -- Point agglomeration tracking +- Point and motion tracking License ------- -lidaRx is dual licenced. Unless you've made a separate licence agreement with Staudt +lidaRx is dual licensed. Unless you've made a separate licence agreement with Staudt Engineering (for example because you can't stand the LGPL / use contact form on http://www.staudt-engineering.com) you can use lidaRx under the GNU Lesser General -Public License v3.0. The full licence text is available in this repository: [LICENCE](LICENCE) +Public License v3.0. The full licence text is available in this repository: [LICENSE](LICENSE) Support & Contribution ---------------------- -Commercial support and device driver developement service is available, support +Commercial support and device driver development service is available, support for open source usage is limited on a "free time available" basis, but please feel free to open issues or pull requests if you can think of something that would make this library more awesome :) \ No newline at end of file diff --git a/src/Staudt.Engineering.LidaRx.Drivers.R2000/README.md b/src/Staudt.Engineering.LidaRx.Drivers.R2000/README.md index e025b91..ea93a85 100644 --- a/src/Staudt.Engineering.LidaRx.Drivers.R2000/README.md +++ b/src/Staudt.Engineering.LidaRx.Drivers.R2000/README.md @@ -1,18 +1,21 @@ LidaRx driver for Pepperl+Fuchs OMDxxx-R2000 devices ==================================================== +[![NuGet](https://img.shields.io/nuget/v/Staudt.Engineering.LidaRx.Drivers.R2000.svg)](https://www.nuget.org/packages/Staudt.Engineering.LidaRx/) +[![NuGet](https://img.shields.io/nuget/vpre/Staudt.Engineering.LidaRx.Drivers.R2000.svg)](https://www.nuget.org/packages/Staudt.Engineering.LidaRx/) + This device driver adds support for Pepperl+Fuchs OMDxxx-R2000 family 2D scanners. Features -------- -- Support for Firmwares 0.97+ (PFSDP protocol v1.00 to v1.02) (automatic handling of protocol differences) +- Support for firmware 0.97+ (PFSDP protocol v1.00 to v1.02) (automatic handling of protocol differences) - Support both HD and UHD models - TCP wire protocol for data stream - Discards invalid data points - Driver periodically fetches device status - Automatic data stream watchdog reset (driver selects optimal reset method based on firmware version) -- Stronly typed settings API for motor speed and sample rate (includes validation of supplied parameters) +- Strongly typed settings API for motor speed and sample rate (includes validation of supplied parameters) Roadmap ------- diff --git a/src/Staudt.Engineering.LidaRx.sln b/src/Staudt.Engineering.LidaRx.sln index d4acf48..1ecda33 100644 --- a/src/Staudt.Engineering.LidaRx.sln +++ b/src/Staudt.Engineering.LidaRx.sln @@ -13,6 +13,7 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Staudt.Engineering.LidaRx.D EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{285C6B76-63D0-4BAE-9AF3-2E30D6179A49}" ProjectSection(SolutionItems) = preProject + ..\appveyor.yml = ..\appveyor.yml ..\LICENSE = ..\LICENSE ..\README.md = ..\README.md EndProjectSection