RobotStudio event

Robot Web Services in RobotWare 6.0

Kjell
Kjell
edited February 2021 in Developer Tools

Robot Web Services

Robot Web Services is released in RobotWare 6.0.  Robot Web Services is a REST API using HTTP methods and returns resource state in either XML or JSON formats which makes it simple to use with any major programming language on any major platform. No license and no ABB Robotics libraries are required on the client to use the Robot Web Services API. Works on both real controller and virtual controller.

 

The API supports:

IO – Read/write/subscribe IO-signals, IO-devices and IO-networks

RAPID - Read/write/subscribe on rapid variables. Load/unload program/modules, Start/stop program.

File service – Upload/download files. Create/delete directories.

CFG – Read/write CFG data

Elog – Event log events

Controller – Restart, get/set clock.

Plus some more.

 

API Documentation:

The API is documented in Robot Web Services.chm which is installed together with PC SDK 6.0 documentation. There are some small examples within the documentation.

 

Basic tutorials on what REST is:

http://www.andrewhavens.com/posts/20/beginners-guide-to-creating-a-rest-api/
http://www.drdobbs.com/web-development/restful-web-services-a-tutorial/240169069

Post edited by Maxim Riabichev on

Comments

  • Are these fully up and running in the current RobotWare 6.00 releases? 

    I'm having issues getting the server (VC) to accept the cookies it just generated when passing from a request to a websocket, in that it just refuses them and sends me another 401 meaning that I have to reauthenticate when I start my websocket (which is a whole other issue). If that's how the embedthis server is designed to work with digest fine but I just want to ensure it's my issue.
  • No, the server shall not refuse the cookie and send another 401. 

    What kind of client library are you using?

    If you can; build the C# example Elog subscriber from the documentation and compare.

  • Is there a good tutorial of how to use JSON to make a additional menu on the Flexpendant. 

    Or just some files that show how it works. I only can find partial examples of sub sections but none explain how to get the start and how to add it to the functionality.
  • graafderk
    graafderk
    edited April 2015
    For FlexPendant applications, you should use the FlexPendant SDK. As far as I know the web services do not provide more capabilities than present in the FlexPendant SDK (please correct me if I'm wrong!).
    In my opinion, the web services are there to enable remote communications with the robot controller (hence the name 'web services'), whereas you could argue that the FlexPendant is a local device. If you develop for the FlexPendant, you will need to use the FlexPendant SDK anyway, so why add additional complexity by adding another communication platform?

    P.S. Nieuwe baan gevonden AVZA?
  • graafderk is right.

    Proceed with PC/FP SDK as long as your application does not need to run on other platforms than windows/wince. Robot Web Services is a bit more complex to use than PC/FP SDK.