SlideShare a Scribd company logo
'HPRQVWUDWLRQ 
:HEEDVHGYLVXDOLVDWLRQDQG 
PRQLWRULQJRIVPDUWPHWHUVXVLQJ 
4(/6 
0D[LP.ROFKLQ, Dmitry Mouromtsev, Sergey Arustamov 
Laboratory ISST @ ITMO University, St.Petersburg, Russia 
7th International Workshop on Semantic Sensor Networks 2014 @ ISWC 2014, Italy
˛˵˽˿˾˻˸˳̀˰̄˼˰̈/30
❏ a small energy reseller in St. Petersburg 
with monthly consumption about ~ 500 MW 
❏ 70 smart electric meters 
❏ 4 electrical substations 
1
*ULGQHWZRUNRYHUYLHZ 
2
/30ZDQWVWR 
3 
❏ reduce electricity losses 
❏ identify misconfigurations of smart meters and 
network earlier 
❏ monitor smart meter readings in real-time
6WUHDPVRXUFHV 
4 
❏ Custom JSON model 
❏ Not integrated with background knowledge 
❏ Identifiers not globally unique
6WDWLFGDWD 
Currently at: http://lpmanalytics.tk/sparql 
❏ graph: http://192.168.134.114/SmartMetersDB/ 
All smart meters: 
PREFIX em: http://purl.org/NET/ssnext/electricmeters# . 
SELECT * { ?meter a em:ElectricMeter . } 
Example URI: http://purl.org/daafse/meters/mercury230_13534128 
5
6WUHDPLQJGDWD 
Published via a message bus (RabbitMQ) that implements AMQP protocol: 
❏ a continuous stream of RDF triples in Turtle format 
❏ amqp://lpmstreams.tk:15674 
Stream URI: 
❏ amqp://lpmstreams.tk:15674? 
exchangeName=meter_exchangeroutingKey=meter.location. 
mercury230_13534128 
6
2QWRORJLHV 
7
$UFKLWHFWXUH 
8
8,9LVXDOLVDWLRQLQUHDOWLPH 
9
8,$OHUWV 
10
([DPSOHToo high voltage value 
Notify when the voltage value on one of the phases on 
one of smart meters are higher than 220V + 5% = 231V 
11
([DPSOHToo high voltage value 
CONSTRUCT { 
?alert a http://purl.org/daafse/alerts#TooHighVoltageValue ; dul:hasEventDate ?time ; dul: 
involvesAgent ?meter . 
} FROM NAMED http://lpmanalytics.tk/sparql-graph-crud WHERE { 
GRAPH http://192.168.134.114/SmartMetersDB/ { 
?meter em:hasStream ?stream; em:complyWith ?requirement . 
?requirement em:maxVoltageValue ?maxvvalue .} 
STREAM ?stream [NOW] { 
?observation a em:PolyphaseVoltageObservation ; ssn:observationResultTime ?time ; ssn: 
observationResult ?output . 
?output a em:PolyphaseVoltageSensorOutput ; ssn:isProducedBy ?meter ; ssn:hasValue ?value . 
?value em:hasQuantityValue ?qvalue . 
} 
FILTER(?qvalue  ?maxvvalue) 
BIND(IRI(CONCAT(STR(?meter), '/alerts/', STR(?time))) AS ?alert) 
12 }
([DPSOHPower values is below zero 
Notify when the power value on one of the phases is 
below zero 
13
([DPSOHPower values is below zero 
CONSTRUCT { 
?alert a http://purl.org/daafse/alerts#PowerValueBelowZero; dul:hasEventDate ?time; dul: 
involvesAgent ?meter . 
} FROM NAMED http://lpmanalytics.tk/sparql-graph-crud WHERE { 
GRAPH http://192.168.134.114/SmartMetersDB/ { 
?meter em:hasStream ?stream; em:complyWith ?requirement . 
?requirement em:minPowerValue ?minpvalue . 
} 
STREAM ?stream [NOW] { 
?observation a em:PolyphaseVoltageObservation; ssn:observationResultTime ?time; ssn: 
observationResult ?output . 
?output ssn:isProducedBy ?meter; ssn:hasValue ?value . ?value em:hasQuantityValue ?qvalue . 
} 
FILTER(?qvalue  ?minPowerValue) 
BIND(IRI(CONCAT(STR(?meter), '/alerts/', STR(?time))) AS ?alert) 
14 }
([DPSOHDifferent voltages 
Voltage values measured by the meters at the same 
substation should be “almost the same”, e.g. ± 3%. 
15 
Unfortunately, it’s not possible to do with CQELS now.
RQFOXVLRQV 
❏ Web app that monitors and visualizes smart meter readings 
❏ Extensions for CQELS engine: BIND and remote SPARQL endpoint 
❏ RDF streams published via RabbitMQ 
Future work: 
❏ Implement missing aggregation functions in CQELS 
❏ Use one of binary RDF representations for the streams 
16 
The app is a very simple but practical example of applying RSP in Smart Grid 
domain

More Related Content

PDF
Capture and replay hardware behaviour for regression testing and bug reporting
DOCX
Lampiran 1.programdocx
PDF
RDF Stream Processing Models (SR4LD2013)
PPTX
It's a Streaming World! Reasoning upon Rapidly Changing Information (Milano, ...
PDF
RISC-V : Berkeley Boot Loader & Proxy Kernelのソースコード解析
PDF
Gpus graal
PDF
Hello I hope you are doing well Would you be able to combi.pdf
PDF
망고100 보드로 놀아보자 15
Capture and replay hardware behaviour for regression testing and bug reporting
Lampiran 1.programdocx
RDF Stream Processing Models (SR4LD2013)
It's a Streaming World! Reasoning upon Rapidly Changing Information (Milano, ...
RISC-V : Berkeley Boot Loader & Proxy Kernelのソースコード解析
Gpus graal
Hello I hope you are doing well Would you be able to combi.pdf
망고100 보드로 놀아보자 15

Similar to Web-based visualisation and monitoring of smart meters using CQELS (20)

PDF
Wall climbing-robot
PDF
Writing SOLID C++ [gbgcpp meetup @ Zenseact]
PDF
Brosur Thunder Scientific | Model 3900 | Humidity Generator
PDF
Open daylight and Openstack
PPTX
Gas leakage detection system
PDF
MaxBotix Code Examples
DOCX
# peripheral registers .equ PWR_BASE0x40007000 .equ PWR_CR0x00 .docx
PDF
Vlsi es-lab-manual
DOCX
#include LPC17xx.h#include Lights.h#include traffic_fo.docx
PDF
Runtime Code Generation and Data Management for Heterogeneous Computing in Java
PDF
Gaztea Tech Robotica 2016
PDF
Arduino uno basic Experiments for beginner
PDF
Presentation
DOCX
Embedded System Practical manual (1)
PDF
Using the Open Source OPC-UA Client and Server for Your IIoT Solutions | Jero...
PDF
How to make a high-quality Node.js app, Nikita Galkin
PDF
Introduction to eBPF and XDP
PDF
2019-09-25 Paris Time Series Meetup - Warp 10 - Advanced Time Series Technolo...
PDF
Analytics with Spark
PDF
Didactum SNMP Manual
Wall climbing-robot
Writing SOLID C++ [gbgcpp meetup @ Zenseact]
Brosur Thunder Scientific | Model 3900 | Humidity Generator
Open daylight and Openstack
Gas leakage detection system
MaxBotix Code Examples
# peripheral registers .equ PWR_BASE0x40007000 .equ PWR_CR0x00 .docx
Vlsi es-lab-manual
#include LPC17xx.h#include Lights.h#include traffic_fo.docx
Runtime Code Generation and Data Management for Heterogeneous Computing in Java
Gaztea Tech Robotica 2016
Arduino uno basic Experiments for beginner
Presentation
Embedded System Practical manual (1)
Using the Open Source OPC-UA Client and Server for Your IIoT Solutions | Jero...
How to make a high-quality Node.js app, Nikita Galkin
Introduction to eBPF and XDP
2019-09-25 Paris Time Series Meetup - Warp 10 - Advanced Time Series Technolo...
Analytics with Spark
Didactum SNMP Manual
Ad

Recently uploaded (20)

PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PDF
WOOl fibre morphology and structure.pdf for textiles
PDF
Getting Started with Data Integration: FME Form 101
PDF
1 - Historical Antecedents, Social Consideration.pdf
PDF
Univ-Connecticut-ChatGPT-Presentaion.pdf
PDF
DP Operators-handbook-extract for the Mautical Institute
PDF
Heart disease approach using modified random forest and particle swarm optimi...
PDF
Approach and Philosophy of On baking technology
PDF
Encapsulation theory and applications.pdf
PPTX
Programs and apps: productivity, graphics, security and other tools
PPTX
1. Introduction to Computer Programming.pptx
PDF
A novel scalable deep ensemble learning framework for big data classification...
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
A Presentation on Artificial Intelligence
PDF
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
WOOl fibre morphology and structure.pdf for textiles
Getting Started with Data Integration: FME Form 101
1 - Historical Antecedents, Social Consideration.pdf
Univ-Connecticut-ChatGPT-Presentaion.pdf
DP Operators-handbook-extract for the Mautical Institute
Heart disease approach using modified random forest and particle swarm optimi...
Approach and Philosophy of On baking technology
Encapsulation theory and applications.pdf
Programs and apps: productivity, graphics, security and other tools
1. Introduction to Computer Programming.pptx
A novel scalable deep ensemble learning framework for big data classification...
A comparative analysis of optical character recognition models for extracting...
MIND Revenue Release Quarter 2 2025 Press Release
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
Assigned Numbers - 2025 - Bluetooth® Document
Building Integrated photovoltaic BIPV_UPV.pdf
A Presentation on Artificial Intelligence
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
Ad

Web-based visualisation and monitoring of smart meters using CQELS

  • 1. 'HPRQVWUDWLRQ :HEEDVHGYLVXDOLVDWLRQDQG PRQLWRULQJRIVPDUWPHWHUVXVLQJ 4(/6 0D[LP.ROFKLQ, Dmitry Mouromtsev, Sergey Arustamov Laboratory ISST @ ITMO University, St.Petersburg, Russia 7th International Workshop on Semantic Sensor Networks 2014 @ ISWC 2014, Italy
  • 3. ❏ a small energy reseller in St. Petersburg with monthly consumption about ~ 500 MW ❏ 70 smart electric meters ❏ 4 electrical substations 1
  • 5. /30ZDQWVWR 3 ❏ reduce electricity losses ❏ identify misconfigurations of smart meters and network earlier ❏ monitor smart meter readings in real-time
  • 6. 6WUHDPVRXUFHV 4 ❏ Custom JSON model ❏ Not integrated with background knowledge ❏ Identifiers not globally unique
  • 7. 6WDWLFGDWD Currently at: http://lpmanalytics.tk/sparql ❏ graph: http://192.168.134.114/SmartMetersDB/ All smart meters: PREFIX em: http://purl.org/NET/ssnext/electricmeters# . SELECT * { ?meter a em:ElectricMeter . } Example URI: http://purl.org/daafse/meters/mercury230_13534128 5
  • 8. 6WUHDPLQJGDWD Published via a message bus (RabbitMQ) that implements AMQP protocol: ❏ a continuous stream of RDF triples in Turtle format ❏ amqp://lpmstreams.tk:15674 Stream URI: ❏ amqp://lpmstreams.tk:15674? exchangeName=meter_exchangeroutingKey=meter.location. mercury230_13534128 6
  • 13. ([DPSOHToo high voltage value Notify when the voltage value on one of the phases on one of smart meters are higher than 220V + 5% = 231V 11
  • 14. ([DPSOHToo high voltage value CONSTRUCT { ?alert a http://purl.org/daafse/alerts#TooHighVoltageValue ; dul:hasEventDate ?time ; dul: involvesAgent ?meter . } FROM NAMED http://lpmanalytics.tk/sparql-graph-crud WHERE { GRAPH http://192.168.134.114/SmartMetersDB/ { ?meter em:hasStream ?stream; em:complyWith ?requirement . ?requirement em:maxVoltageValue ?maxvvalue .} STREAM ?stream [NOW] { ?observation a em:PolyphaseVoltageObservation ; ssn:observationResultTime ?time ; ssn: observationResult ?output . ?output a em:PolyphaseVoltageSensorOutput ; ssn:isProducedBy ?meter ; ssn:hasValue ?value . ?value em:hasQuantityValue ?qvalue . } FILTER(?qvalue ?maxvvalue) BIND(IRI(CONCAT(STR(?meter), '/alerts/', STR(?time))) AS ?alert) 12 }
  • 15. ([DPSOHPower values is below zero Notify when the power value on one of the phases is below zero 13
  • 16. ([DPSOHPower values is below zero CONSTRUCT { ?alert a http://purl.org/daafse/alerts#PowerValueBelowZero; dul:hasEventDate ?time; dul: involvesAgent ?meter . } FROM NAMED http://lpmanalytics.tk/sparql-graph-crud WHERE { GRAPH http://192.168.134.114/SmartMetersDB/ { ?meter em:hasStream ?stream; em:complyWith ?requirement . ?requirement em:minPowerValue ?minpvalue . } STREAM ?stream [NOW] { ?observation a em:PolyphaseVoltageObservation; ssn:observationResultTime ?time; ssn: observationResult ?output . ?output ssn:isProducedBy ?meter; ssn:hasValue ?value . ?value em:hasQuantityValue ?qvalue . } FILTER(?qvalue ?minPowerValue) BIND(IRI(CONCAT(STR(?meter), '/alerts/', STR(?time))) AS ?alert) 14 }
  • 17. ([DPSOHDifferent voltages Voltage values measured by the meters at the same substation should be “almost the same”, e.g. ± 3%. 15 Unfortunately, it’s not possible to do with CQELS now.
  • 18. RQFOXVLRQV ❏ Web app that monitors and visualizes smart meter readings ❏ Extensions for CQELS engine: BIND and remote SPARQL endpoint ❏ RDF streams published via RabbitMQ Future work: ❏ Implement missing aggregation functions in CQELS ❏ Use one of binary RDF representations for the streams 16 The app is a very simple but practical example of applying RSP in Smart Grid domain
  • 19. 7KDQNRX Source code: ❏ The web app: http://github.com/ailabitmo/DAAFSE ❏ CQELS with extensions: http://github.com/KMax/cqels 17