summaryrefslogtreecommitdiff
path: root/ma
diff options
context:
space:
mode:
Diffstat (limited to 'ma')
-rw-r--r--ma/resources/nbexport.tplx14
-rw-r--r--ma/safety_reset.bib56
-rw-r--r--ma/safety_reset.tex52
3 files changed, 104 insertions, 18 deletions
diff --git a/ma/resources/nbexport.tplx b/ma/resources/nbexport.tplx
index a279827..f3f47bc 100644
--- a/ma/resources/nbexport.tplx
+++ b/ma/resources/nbexport.tplx
@@ -9,5 +9,17 @@
((*- endblock header -*))
-((* block maketitle *))\vspace*{3cm}((* endblock maketitle *))
+((* block maketitle *))\vspace*{1cm}((* endblock maketitle *))
+
+((* block stream *))
+ ((*- if output.name != 'stderr' -*))
+ ((( super() )))
+ ((*- endif -*))
+((* endblock stream *))
+
+((* block data_text *))
+ ((*- if 'application/vnd.jupyter.widget-view+json' not in output.data -*))
+ ((( super() )))
+ ((*- endif -*))
+((* endblock data_text *))
diff --git a/ma/safety_reset.bib b/ma/safety_reset.bib
index cbec74b..1614345 100644
--- a/ma/safety_reset.bib
+++ b/ma/safety_reset.bib
@@ -472,14 +472,14 @@
x-color = {#cc3300},
year = {2018}
}
-
-@techreport{entsoe01,
- author = {ENTSO-E System Protection Dynamics and WG},
- month = mar,
- title = {Oscillation Event 03.12.2017},
- url = {https://docstore.entsoe.eu/Documents/SOC%20documents/Regional_Groups_Continental_Europe/OSCILLATION_REPORT_SPD.pdf},
- year = {2018}
-}
+
+@TechReport{entsoe01,
+ author = {{ENTSO-E System Protection Dynamics and WG}},
+ title = {Oscillation Event 03.12.2017},
+ url = {https://docstore.entsoe.eu/Documents/SOC%20documents/Regional_Groups_Continental_Europe/OSCILLATION_REPORT_SPD.pdf},
+ month = mar,
+ year = {2018},
+}
@article{leveson01,
author = {Nancy G. Leveson and Clark S. Turner},
@@ -540,14 +540,14 @@
title = {Smart meters in smart grid: An overview},
year = {2013}
}
-
-@techreport{cenelec01,
- author = {The CEN/CENELEC/ETSI Joint Working Group Standards Smart on for Grids},
- month = may,
- organization = {CEN/CENELEC/ETSI},
- title = {Final report of the CEN/CENELEC/ETSI Joint Working Group on Standards for Smart Grids},
- year = {2011}
-}
+
+@TechReport{cenelec01,
+ author = {{The CEN/CENELEC/ETSI Joint Working Group Standards Smart on for Grids}},
+ title = {Final report of the CEN/CENELEC/ETSI Joint Working Group on Standards for Smart Grids},
+ month = may,
+ organization = {CEN/CENELEC/ETSI},
+ year = {2011},
+}
@techreport{pariente01,
author = {Dillon Pariente and Emmanuel Ledinot},
@@ -820,4 +820,28 @@
year = {2016},
}
+@Article{perrin01,
+ author = {Perrin, Trevor},
+ title = {The Noise protocol framework, 2015},
+ journal = {URL http://noiseprotocol. org/noise. pdf},
+ year = {2016},
+}
+
+@Article{kabalci01,
+ author = {Yasin Kabalci},
+ title = {A survey on smart metering and smart grid communication},
+ doi = {10.1016/j.rser.2015.12.114},
+ issn = {1364-0321},
+ pages = {302-318},
+ volume = {57},
+ year = {2016},
+}
+
+@Thesis{gasior02,
+ author = {Gasior, Marek},
+ title = {{Improving frequency resolution of discrete spectra: algorithms of three-node interpolation}},
+ url = {https://cds.cern.ch/record/1346070},
+ year = {2006},
+}
+
@Comment{jabref-meta: databaseType:biblatex;}
diff --git a/ma/safety_reset.tex b/ma/safety_reset.tex
index a292458..f8c97f6 100644
--- a/ma/safety_reset.tex
+++ b/ma/safety_reset.tex
@@ -889,7 +889,7 @@ despite numerous distortions.
\begin{figure}
\centering
\includegraphics{../lab-windows/fig_out/mains_voltage_spectrum}
- \caption{Fourier transform of an 8 hour capture of mains voltage. Data was captured using our frequency measurement
+ \caption{Fourier transform of a 24 hour capture of mains voltage. Data was captured using our frequency measurement
sensor described in section \ref{sec-fsensor} and FFT'ed after applying a blackman window. Vertical lines indicate
$50 \text{Hz}$ and odd harmonics.}
\label{mains_voltage_spectrum}
@@ -1055,6 +1055,44 @@ interface and its good tolerance of system resets due to unexpected power loss.
\subsection{Frequency sensor measurement results}
+\begin{figure}
+ \centering
+ \includegraphics{../lab-windows/fig_out/freq_meas_trace_24h}
+ \caption{Trace of grid frequency over a 24 hour window. One clearly visible feature are large positive and negative
+ transients at full hours. Times shown are UTC. Note that the european continental synchronous area that this
+ sensor is placed in covers several time zones which may result in images of daily load peaks appearing in 1 hour
+ intervals. Fig.\ \ref{freq_meas_trace_mag} contains two magnified intervals from this plot.}
+ \label{freq_meas_trace}
+\end{figure}
+\begin{figure}
+ \begin{subfigure}{\textwidth}
+ \centering
+ \includegraphics{../lab-windows/fig_out/freq_meas_trace_2h_1}
+ \caption{A 2 hour window around 00:00 UTC.}
+ \end{subfigure}
+ \begin{subfigure}{\textwidth}
+ \centering
+ \includegraphics{../lab-windows/fig_out/freq_meas_trace_2h_2}
+ \caption{A 2 hour window around 18:30 UTC.}
+ \end{subfigure}
+ \caption{Two magnified 2 hour windows of the trace from fig.\ \ref{freq_meas_trace}.}
+ \label{freq_meas_trace_mag}
+\end{figure}
+
+\begin{figure}
+ \centering
+ \includegraphics{../lab-windows/fig_out/freq_meas_spectrum}
+ \caption{Fourier transform of the 24 hour grid frequency trace in fig. \ref{freq_meas_trace} with some notable peaks
+ annotated with the corresponding period in seconds. The $\frac{1}{f}$ line indicates a pink noise spectrum. We can
+ clearly see the noise spectrum flattens below some frequency around $\frac{1}{120 \text{s}}$. This effect is due to
+ primary control actively regulating grid frequency over such time intervals. Beyond the $\frac{1}{f}$ slope starting
+ at around $1 \text{Hz}$ we can make out a white noise floor in the order of $\frac{\mu\text{Hz}}{\text{Hz}}$.
+ % TODO: where does this noise floor come from? Is it a fundamental property of the grid? Is it due to limitations of
+ % our measurement setup (such as ocxo stability/phase noise) ???
+ }
+ \label{freq_meas_spectrum}
+\end{figure}
+
Captured raw waveform data is processed in the Jupyter Lab environment\cite{kluyver01} and grid frequency estimates are
extracted as described in sec. \ref{frequency_estimation} using the \textcite{gasior01} technique. Appendix
\ref{grid_freq_estimation_notebook} contains the Jupyter notebook we used for frequency measurement.
@@ -1063,6 +1101,16 @@ extracted as described in sec. \ref{frequency_estimation} using the \textcite{ga
\section{Channel simulation and parameter validation}
+To validate all layers of our communication stack from modulation scheme to cryptography we built a prototype
+implementation in python. Implementing all components in a high-level language builds up familiartiy with the concepts
+while taking away much of the implementation complexity. For our demonstrator we will not be able to use python since
+our target platform is a cheap low-end microcontroller. Our demonstrator firmware will have to be written in a low-level
+language such as C or rust. For prototyping these languages lack flexibility compared to python.
+% FIXME introduce project outline, specs -> proto -> demo above!
+
+To validate our modulation scheme we performed a series of simulations. We produced modulated frequency data that we
+superimposed with either of simulated pink noise or an actual grid frequency measurement series.
+% FIXME do test series with simulated noise emulating measured noise spectrum
\section{Implementation of a demonstrator unit}
@@ -1070,6 +1118,8 @@ extracted as described in sec. \ref{frequency_estimation} using the \textcite{ga
\section{Lessons learned}
+
+
\chapter{Future work}
\section{Technical standardization}
The description of a safety reset system provided in this work could be translated into a formalized technical standard