Tag Archives: continuous monitoring

RMS integration with Met Office DataPoint. An experiment with APIs…

The latest Rotronic Monitoring System software has been designed specifically for the IoT and IIoT world. We have a wide and growing range of sensors, loggers as well as input and output modules but we will never keep up with the unique demands of our customers. That’s where integration is key for any successful continuous monitoring system!

iot

Hardware can already be integrated via analogue input modules such as our 8ADC and digital devices can be integrated via our RMS-Convertor that can be programmed with custom protocols and functions operate with virtually any device.

Want to cut out the waffle… login and see the live data now using the details below:

https://rms.rotronic.com/rms/
Company Name: Rotronic demo-cloud
User: Weather
Password: guest1234

In addition to hardware, software integration is a must, and not easy when we consider RMS is a fully Gamp6 compliant system and therefore security and traceability is key.

Why not access the SQL DB?

All data on RMS is stored within an SQL database which with suitable rights can be queried easily to pull data out. However injecting data whilst possible triggers our system to report data manipulation. Also direct access to the database presents a security risk and uncontrolled changes to the system, and of course its not possible on shared systems.

That is why we also offer a Restful API through which data can be posted only when configured by users with appropriate permissions and each data stream is securely linked to a onetime token, by no means the best security but suitable for many applications (and of course the whole API function can be disabled if preferred). We of course have software wizards at our HQ that can develop professional integration solutions but as a hobbyist I wanted to see what I could achieve.

 

 

Example API Report

So my plan was to use Python and pull data from the Met Office DataPoint service and inject it directly into our RMS server software so it could visualised, reported and analysed accordingly. Just a few simple steps…

  • Step 1 Get the data from Met Office API
  • Step 2 Create API device in RMS and send your data
  • Step 3 Enjoy graphs, reports and custom alarms

Step 1 – Get the data from Met Office API.

The Met Office API is great you simply need to register to get an api key then get your head around the commands. Once you have that you can request the data you need via a simple url and the information is returned in xml or json format.

API Example
Met Office Datapoint API Response in XML

In Python requesting the last 24 hours of hourly data from location 3212 (Keswick) looks something like this…

Import json, requests
url = ‘http://datapoint.metoffice.gov.uk/public/data/val/wxobs/all/json/3212?res=hourly&key=YOURKEY’ #replace with your Met Office API key!
r = requests.get(url)
metoffice_data = json.loads(r.text)

This gives a Python dictionary with all the json data from which we can request specific values easily for example the latest conditions (no doubt there are more elegant solutions but this works for me).

Hum = (metoffice_data[‘SiteRep’][‘DV’][‘Location’][‘Period’][1][‘Rep’][-1][‘H’])
Temp = (metoffice_data[‘SiteRep’][‘DV’][‘Location’][‘Period’][1][‘Rep’][-1][‘T’])
Pres = (metoffice_data[‘SiteRep’][‘DV’][‘Location’][‘Period’][1][‘Rep’][-1][‘P’])
DewP = (metoffice_data[‘SiteRep’][‘DV’][‘Location’][‘Period’][1][‘Rep’][-1][‘Dp’])

Next we need to create our API device within RMS so it will accept our data

Step 2 – Create API device in RMS

Adding new API device in RMS is simple process, we create the device and define the Name and Serial number.

At this point RMS awaits an Post command in which the additional details are included. Using the Python code below I am able to create a device with 4 measurement points (measured values); Humidity, Temp; Pressure and Dew Point.

import json, requests

url = ‘http://rms.rotronic.com/rmsService/wService3.DeviceService.svc/UpdateDataJson’
headers = {‘Content-Type’ : ‘Application/json’, ‘Expect’ : ‘100-continue’, ‘Connnection’ : ‘Close’, ‘Host’ : ‘rms.rotronic.com’}

payload = {‘Name’:’API_Test’,’Serial’:’12345′,’Values’:[{‘Index’:’1′,’Typ’:’1′,’Value’:’50’},{‘Index’:’2′,’Typ’:’2′,’Value’:’23’},\
{‘Index’:’3′,’Typ’:’16’,’Value’:’5′},{‘Index’:’4′,’Typ’:’48’,’Value’:’1000′}]}
print (payload)
r = requests.post(url, headers=headers, data =json.dumps (payload))

Finally RMS gives us the device ID and API token which must be included in any future post commands.

Combining Step 1 and Step 2 allows us to simply replace my example values above with the real Met Office API data! Run the script hourly or permanently with an hour delay and we have a simple tool proving live data weather data!

Step 3 – Enjoy graphs, reports and custom alarms

With the data in RMS we can easily graph values and create email, sms or phone alarms. Taking the API further I it is possible download live satellite imagery and dynamically update the layouts in RMS!

Example Report

So it turns-out getting data into RMS via the API is simple with a bit of basic code. Of course Met Office data is just an example in modern industrial applications there is so much unique data from devices or software that might be of use and RMS aims to offer a complete monitoring solution not simply for our products!

Be sure to get in touch if you have any questions on the above or have any monitoring requirements. Use the demo login above or visit out RMS website for more details.

Dr Jeremy Wingate
Rotronic UK

 

What is the latest monitoring system from Rotronic? A practical answer and a technical answer.

The Rotronic Monitoring System (RMS) has now been officially launched globally for 12 months and in use at some key clients for over two years.

RMS is a modern continuous monitoring system that embraces open architecture and interoperability as well as providing a compliant system for validated applications.

But how is this achieved and what exactly is RMS. There are two ways I find myself answering this…

  • The technical answer – for IT project managers, system integrators and cyber security managers.
  • The practical answer – for end users, project managers and smaller organisations.

What is RMS – The Practical Answer…

The practical answer is more visible via our online demonstration (request guest access here) and via the details on our RMS satellite website.

In short RMS provides a modern and complete monitoring system with a detailed web interface. The system provides users with ease of access to data, reliable and manageable alarms and extensive reporting. Importantly RMS can support existing hardware and interact with other software/hardware platforms.

RMS can be provided as a hosted cloud service or using a traditional licence whereby the client installs the system on their servers (local or cloud).

In summary RMS provides amongst other things…

  • Live interactive charts
  • Full reporting and automated/scheduled report generation
  • Complete event logging in line with GxP requirements
  • Full alarming with logic and time schedules
  • Email, phone, sms, relay and custom protocol alarm outputs
  • Auto back fill and retrospective alarms (ideal for transport logging)
  • Interactive layouts
  • Complete user rights management
  • Compliant to GxP designed around ease of validation

This slideshow requires JavaScript.

Core RMS hardware includes Ethernet, WiFi, industrial wireless and RS485 devices as well as full support for existing Rotronic devices, 3rd party analogue devices and 3rd party digital devices using any of the above interfaces. The below graphic outlines the wide range of options available.

06 RMS Graphic

Contact us for further information or visit our website

What is RMS – The Technical Answer…

Let’s now go a bit deeper. For many organisations once end-users approve of a system the challenge is getting the system approved and installed in line with wider corporate policies and security. So far we have found that in discussions with IT project managers and cyber security managers, RMS has met their requirements – usually much to the surprise of the end users who perhaps initially expect a protracted battle! Typically for larger more secure organisations software is required to be installed within their network rather than using the Rotronic Cloud service. Below we discuss the main elements of this type of RMS installation.

RMS has two core elements.

1. Webservice; This is software aspect of RMS. The webservice provides the interactive webpage to present data for end users and allow system configuration. The webservice also works in the background to interact with hardware and the database. Typically the webpage will be part of the local intranet with an address like rms.yourorganisation.com, optionally the webpage can also be made accessible from the internet outside your organisation (like our cloud service which is available at http://rms.rotronic.com/rms – request guest access to the demo system here). For the clients (end users) no special software or plugins are required just a standard web-browser.

More technically the RMS webservice is built around ASP.Net framework and runs under Windows IIS (internet information services). The webservice therefore requires a Windows Server (2008, 2012 or 2016). The RMS software can be run on a standard PC with IIS enabled but this is not usually advised except for specific applications.

A note on RMS hardware; All Rotronic hardware initiates communication with the webservice via port 80. For cloud applications this means only port 80 must be opened outbound to allow the devices to initiate outbound communications to the server. All gateways have standard IP configurations (DHCP or fixed).

2. SQL Database; The second part of the RMS is its database. All device, configuration, user and measured data is stored within a standard MS-SQL database. The database is accessed by the webservice to store and read data as required. An existing SQL server can be used if available otherwise SQL-Express is free to install.

More technically the RMS database requires Microsoft-SQL Express or higher, the database can be on the same server as the webservice or a separate machine.

As RMS is built around standard server based systems, there is full support for load balancing and failover, as such should a webserver or sql server fail a redundant/spare can take over. This is standard procedure for larger IT systems.

Some other technical points about RMS.

  • Supports LDAP (so you can use windows login and password)
  • No personal data stored outside SQL database (hardware only stores unique serial code, date, time and measured values – as such no private data passes between hardware and software).
  • Webpage data is binary coded and authentication uses AES128 encryption.
  • Key exchange uses diffie-hellman key alogrithm.
  • 3rd party data / device support is possible via RESTful API or direct interaction with SQL database.

An overview of the RMS communication can be seen here.

08 RMS Communication

For many projects clearly we go much deeper but hopefully this provides an overview. Our experience to date has shown that RMS is closely inline with what our clients expect in terms of operations and security. Further developments are always underway, lead by our customers and their requirements.

Please contact us if you wish to discuss a project or gather further information.

Dr Jeremy Wingate
Rotronic UK