Pingum Logo
Pingum

Pingum Sensors Monitor Your Machine and IoT Time Series Data

Send your machine and IoT time series data into Pingum sensors and get notified of data trend and condition changes.

  • Andrew Severson

    1/3/2020

  • If you own machinery, IoT devices, or other sensor enabled equipment, you probably have struggled with collecting, monitoring, and gaining insights from the time series data getting emitted off those assets. You might have even considered purchasing an OEE solution, but found it too expensive and complicated for your use case. For those organizations needing a solution to simply monitor time series data and get notified when that data trends out of a quality condition, then the Pingum sensor feature is perfect for you.

    Pingum sensors make it easy for anyone to send their time series data into “Sensor Collections” and define “Conditions” on that data in order to get notified and view data trends that are out of spec. You can enable a sensor, start sending data to your collection, and have Pingum monitor that data in as little as 10 minutes.

    Time Series Data

    What is Time Series Data?

    Wikipedia says a time series is a series of data points indexed (or listed or graphed) in time order. Most commonly, a time series is a sequence taken at successive equally spaced points in time. Thus it is a sequence of discrete-time data.

    From a Pigum data structure perspective, sensor time series data consists of 3 properties: Timestamp in milliseconds, Value as a numeric, and a Tag or Collection associating the datapoint to a sensor or collection.

    Example Use Cases

    If you have data that meets the above definition of a time series, you can use Pingum sensors. Here are just a few examples of sensors and conditions to get your thinking:
    • Temperate off a furnace – alert when the average value exceeds 250 degrees Celsius
    • Humidity in a clean room – alert when the average humidity exceeds 75%
    • Emergency machine stop – alert when an emergency stop event occurs
    • Disk utilization of hardware – alert when over 80% of disk is utilized
    • Combined sensors – alert when the temperature is under 60 degrees Celsius and humidity is under 50%

    Prerequisites

    To start using Pingum sensors, you will need some way to access your timeseries data and send that data to Pingum. Data is sent to Pingum via http post requests so you will need internet access from the software you write that integrates with Pingum.

    Setup Sensor Collections

    Every sensor or time series tag you want to collect data for will need to be setup in Pingum as a Sensor Collection. The sensor collection is simply the collection or repository where your data will be streamed, stored, and monitored from. To create each sensor collection, you will define the following properties:
    • Name - what you want to call the sensor collection
    • Select Tags (optional) - map your sensor collection to a Pingum tag
    • Alternative ID (optional) - define an alternative ID to associate with this sensor collection (often the ID of the associated sensor in your internal system)
    • Unit (optional) - a label for the time series data being inserted into the sensor collection (ex: Celsuis, Humidity, RPM)
    • Insufficient Data Check (optional) - specify whether or not you want to get notified when no data is streamed into the sensor collection for a period of time. You specify the amount of time allowed without data and select the Pingum event template to create when insufficient data occurs.
    Add Collection Modal

    Send Data Into Sensor Collection

    Once you have created your sensor collections, you can start to send data into it. Data is inserted into each sensor collection via an http post request. You can send data into individual sensor collections or into multiple collections via our APIs. When you select your sensor collection from the list displayed on the sensor collection page, you will see documentation on how to invoke the API and send data into the collection. You need 3 pieces of information to invoke the APIs: The ID of the sensor collection, the timeseries data (timestamp and value) from your sensor, and the API URL.


    API URL and curl example for direct data insertion into collection (COLLECTION_ID is your sensor collection ID)
    https://datapoint-api.pingum.io/api/v1/collections/COLLECTION_ID/datapoints
    curl -X POST 'https://datapoint-api.pingum.io/api/v1/collections/COLLECTION_ID/datapoints' 
    
              -H 'Authorization: XXXXXXXXXXXX' -H 'Content-Type: application/json' -H 'X-Tenant: my-tenant' 
    
              -d '[
              {
                "timestamp": 1578084763996,
                "value": 1.1
              },{
                "timestamp": 1578084773996,
                "value": 1.2
              }
            ]'

    API URL and curl example for multiple sensor collection insertion
    https://datapoint-api.pingum.io/api/v1/datapoints
    curl -X POST 'https://datapoint-api.pingum.io/api/v1/datapoints' 
    
              -H 'Authorization: XXXXXXXXXXXX' -H 'Content-Type: application/json' -H 'X-Tenant: my-tenant' 
    
              -d '
              {
                "COLLECTION_ID_1": [
                  { "value": 80, "timestamp": 1576263227323 }
                ],
                "ALT_COLLECTION_ID": [
                  { "value": 5, "timestamp": 1576263227323 }
                ],
                "COLLECTION_ID_5": [
                  { "value": 80, "timestamp": 1576263227323 },
                  { "value": 88, "timestamp": 1576263237323 }
                ]
              }'

    View Collection

    Monitor and Set Conditions

    Once your data is streaming into sensor collections, we can create any number of conditions on those collections. A condition is a set of rules on time series data in one or many collections that tell you when to take action. Pingum will monitor the data and rules defined in the condition and automatically create and complete events for you.

    You will will need to name your condition so you know what rule or check it is you are performing.

    Name Condition

    Next you will select the sensor collections to monitor and the rules you want to set for this condition.

    Condition Rules

    You will need to tell Pingum how you want to handle a met condition. If Pingum determines your condition is met and active, you can specify a Pingum event template to be created.

    Condition Events

    Finally, review and confirm that the condition is defined correctly. Once submitted, Pingum will begin monitoring the time series data in the collection against the condition.

    Condition Review

    Next Steps

    In order to use the Pingum sensors feature, your organization must be on a paid plan. If your organization is still using the free subscription, you will need to upgrade first. Once on a paid plan, you can purchase any number of “Sensor Packs” from the billing page. One sensor pack will give you access to 5 sensor collections. An organization owner will need to make this purchase. Once purchased, the sensors page on the left hand navigation will now allow you to access sensor collections and conditions.

    If you have any questions or want to discuss more about your organizations use cases, please contact us.