Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
Added API description
  • Loading branch information
EinEinfach authored Jun 27, 2024
1 parent 6fbc80f commit 39c84fd
Showing 1 changed file with 48 additions and 0 deletions.
48 changes: 48 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -268,6 +268,54 @@ Select “App” under Settings. Here you have the option to configure some fron

5. Voltage to SoC: Conversion of voltage to state of charge (simple linear interpolation). The recommended voltage min (0%) is the shutdown voltage from the config.h of your sunray FW +0.5V. The recommended voltage max (100%) is the final charging voltage from the config.h of your sunray FW -0.5V. The SoC display has no controlling function and only serves as an overview on the home page.

### Api
To control CaSSAndRA without UI an API can be activated. To set it up, go to Settings, then select API, click on MQTT, enter your data, save, and restart the backend server.
If everything is entered correctly, you should see the following messages:
status
robot
maps
tasks
mow parameters
map
coords (only on request)
The commands are sent to the "api_cmd" topic:
You can find available names in the "maps" and "tasks" topics.
1. Switch map:
```{"maps": {"command": "load", "value": ["map name"]}}```

2. Select task:
```{"tasks": {"command": "select", "value": ["task name"]}}```

3. Mow (all):
```{"robot":{"command": "mow", "value": ["all"]}}```

Mow (task):
```{"robot":{"command": "mow", "value": ["task"9}}```

Mow (selection):
```{"robot":{"command": "mow", "value": ["selection"]}}```

4. Stop:
```{"robot":{"command": "stop"}}```

5. Dock:
```{"robot":{"command": "dock"}}```

6. Change mow parameters:
```{"mow parameters":{"pattern": "squares", "width": "0.20", "angle": 160, "distancetoborder": 5, "mowarea": true, "mowborder": 3, "mowexclusion": false, "mowborderccw": true}}```

7. Set selection:
```{"map":{"command":"set selection", "value":{"x": [0, 1, 1], "y": [0, 1, 0]}}}```

8. Robot move (command should be sent continuously approx. every 0.1s):
```{"robot":{"command":"move", "value":[value for linear speed, value for angular speed]}}```

9. Get coordinates of current map:
```{"coords":{"command":"update", "value":["current map"]}}```

after that CaSSAndRA will publish coordinates of current map in GeoJSON format (coords topic)


## Mapping
A new map or existing map can be created/modified on the "Mapping" page.

Expand Down

0 comments on commit 39c84fd

Please sign in to comment.