Robot Mower Communications Standard: Unterschied zwischen den Versionen
Aus www.wiki.ardumower.de
(→Actor and sensor control) |
(→Actor and sensor control) |
||
Zeile 50: | Zeile 50: | ||
==Actor and sensor control== | ==Actor and sensor control== | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
*$RMMOV: Rotate by x degrees and move with speed y RPM until sensor trigger | *$RMMOV: Rotate by x degrees and move with speed y RPM until sensor trigger | ||
*$RMMOV: Keep ongoing action (mower communications saftety) | *$RMMOV: Keep ongoing action (mower communications saftety) |
Version vom 7. Januar 2017, 19:48 Uhr
Describes message format used to externally control a robot mower (e.g. Ardumower-based).
Inhaltsverzeichnis
Requirements
- Serial interface (or serial USB)
- ...
Message format
Not defined yet (ideas: NMEA 0183, SAE J1939, ...)
Messages
System control
- Get implemented message types:
- application control
- actor and sensor control
- propriertary
Application control
- Set mowing state (start mowing, stop mowing, go to docking station)
- Robot state event (robot state, errors, battery)
- Robot sensor event (sensor values, sensor trigger counters)
Start mowing
$RMMOW,s<cr><lf>
- s: stop mowing (0), start mowing (1), go to docking station (2)
Robot state event (robot state, errors, battery)
$RMSTAT,s,e,b<cr><lf>
- s: stopped (0), mowing (1)
- e: error
- b: batteryPercent
Robot sensor event (sensor values, sensor trigger counters)
$RMSENS,bl,br,bc,pfl,pfr,pfc,prl,prr,prc,ih,ip,ir,ga,go<cr><lf>
- bl: bumperLeft
- br: bumperRight
- bc: bumperCenter
- pfl: perimeterFrontLeft
- pfr: perimeterFrontRight
- pfc: perimeterFrontCenter
- prl: perimeterRearLeft
- prr: perimeterRearRight
- prc: perimeterRearCenter
- ih: IMUcompassHeading
- ip: IMUpitch
- pr: IMUroll
- ga: GPSlatitude
- go: GPSlongitude
Actor and sensor control
- $RMMOV: Rotate by x degrees and move with speed y RPM until sensor trigger
- $RMMOV: Keep ongoing action (mower communications saftety)
Rotate and move
$RMMOV,d,r<cr><lf>
- d: rotate degrees
- r: move rpm
=Keep ongoing action
$RMCOA<cr><lf>
Proprietary
- Any proprietary messages not defined by this protocol