Difference between revisions of "Rest api"

From RobotinoWiki
(PUT)
(/data/bumper)
Line 60: Line 60:
 
</pre>
 
</pre>
 
value being true or false.
 
value being true or false.
 +
 +
===/data/scan0===
 +
Data of the first Laser ranefinder.
 +
<pre>
 +
{
 +
  "seq" : sequence number,
 +
  "stamp" : time stamp,
 +
  "angle_min" : minimum angle,
 +
  "angle_max" : maximum angle,
 +
  "angle_increment" : angle increment,
 +
  "time_increment" : time increment,
 +
  "scan_time" :  scan time,
 +
  "range_min" : minimum range,
 +
  "range_max" : maximum range,
 +
  "ranges" : [],
 +
  "intensities" : []
 +
}
 +
</pre>
  
 
==PUT or POST==
 
==PUT or POST==

Revision as of 10:48, 14 March 2019

Installation

Robotino rest icon 64.png REST-API is already running at http://RobotinoIP.

Package links

The restapid is part of robotino-daemons package.

GET

/cam0

Get camera image from cam0. The response is image/jpeg.

/data/festoolcharger

Get data from Festool Li-Ion batteries.

/data/powermanagement

Get information about voltage and system current.

/data/charger0

Data for build in charger 0

/data/charger1

Data for build in charger 1

/data/controllerinfo

HW and SW version.

/data/services

Data of Robotino specific services.

/data/servicestatus/xxx

Status of service xxx.

/data/analoginputarray

Data of all analog inputs.

{
  [val0,val1,val2,...,val7]
}

/data/digitalinputarray

Data of all digital inputs.

{
  [val0,val1,val2,...,val7]
}

values being true or false

/data/bumper

Status of Robotinos bumper

{
  "value" : value
}

value being true or false.

/data/scan0

Data of the first Laser ranefinder.

{
  "seq" : sequence number,
  "stamp" : time stamp,
  "angle_min" : minimum angle,
  "angle_max" : maximum angle,
  "angle_increment" : angle increment,
  "time_increment" : time increment,
  "scan_time" :  scan time,
  "range_min" : minimum range,
  "range_max" : maximum range,
  "ranges" : [],
  "intensities" : []
}

PUT or POST

/data/omnidrive

Set forwward and rotational velocity. You have to send data periodically at least every 200ms. If no data is received for more than 200ms Robotino will stop.

{
  "vx": "x-vel in m/s",
  "vy" : "y-vel in m/s",
  "omega" : "rot-vel in rad/s"
}

Matlab example

webwrite('http://192.168.1.192/data/omnidrive',jsonencode(struct('vx',0.1,'vy',0,'omega',0)))

/data/digitaloutputarray

{
  [val0,val1,....val7]
}

value being true or false

/data/relayarray

{
  [val0,val1]
}

val0,val1 being false or true

/data/uploadProgram

Upload Robotino View program to /home/robotino/programs.

{
  "name" : "filename with extension",
  "size" : size of raw (unencoded) binary data,
  "data" : file data base64 encoded
}

Response

{
  "message" : "message what happend on the server",
  "success" : boolean showing if operation was successfull
}