Get lidar to a working state, add errors, example.

This commit is contained in:
Piv
2020-09-19 19:50:56 +09:30
parent 761eb0bc1a
commit ef84c19f92
5 changed files with 120 additions and 77 deletions

View File

@@ -0,0 +1,30 @@
import SwiftRPLidar
import SwiftSerial
do {
try main()
}
catch {
print("Unexpected Error \(error)")
}
func main() throws {
let serialPort = SerialPort(path: "/dev/cu.usbserial-0001")
let lidar = try SwiftRPLidar(onPort: serialPort)
try lidar.iterMeasurements { measurement in
print("Quality: ",measurement.quality, ", Angle: ", measurement.angle, ", Distance: ", measurement.distance)
return true
}
}
extension SerialPort: LidarSerial{
public func setBaudrate(baudrate: Int) {
// TODO: handle different baudrates. Only need this for now.
switch baudrate{
default:
setSettings(receiveRate: .baud115200, transmitRate: .baud115200, minimumBytesToRead: 3, timeout: 1)
}
}
}