summaryrefslogtreecommitdiff
path: root/ma
diff options
context:
space:
mode:
Diffstat (limited to 'ma')
-rw-r--r--ma/safety_reset.tex28
1 files changed, 20 insertions, 8 deletions
diff --git a/ma/safety_reset.tex b/ma/safety_reset.tex
index f8c97f6..e403368 100644
--- a/ma/safety_reset.tex
+++ b/ma/safety_reset.tex
@@ -48,6 +48,7 @@
%\usepackage[pdftex]{graphicx,color}
\usepackage{epstopdf}
\usepackage{pdfpages}
+\usepackage{minted} % pygmentized source code
% Needed for murks.tex
\usepackage{setspace}
\usepackage[draft=false,babel,tracking=true,kerning=true,spacing=true]{microtype} % optischer Randausgleich etc.
@@ -634,13 +635,24 @@ number of $0$ and $1$ bits the correlation between the sequence and uncorrelated
contribution of the $+1$ terms of the correlation template approximately cancel out with the $-1$ terms when multiplied
with an uncorrelated signal such as white gaussian noise or another pseudo-random sequence.
-The longer the pseudo-random sequence the lower its cross-correlation with noise or other pseudorandom sequences of the
-same length. Choosing a long sequence we increase modulation gain while decreasing bandwidth. For any given application
-the sweet spot will be the shortest sequence that is long enough to yield sufficient SNR for subsequent processing
-layers such as channel coding.
-
-Prototyping demodulation algorithms we have experimented by overlaying a modulated signal with actual grid frequency
-measurements. At chip rates in the order of 1 chip per second we got useful results from 5 and 6 bit sequences already.
+By using a family of pseudo-random sequences with low cross-correlation channel capacity can be increased. Either the
+transmitter can encode data in the choice of sequence or multiple transmitters can use the same channel at once. The
+longer the pseudo-random sequence the lower its cross-correlation with noise or other pseudorandom sequences of the same
+length. Choosing a long sequence we increase modulation gain while decreasing bandwidth. For any given application the
+sweet spot will be the shortest sequence that is long enough to yield sufficient SNR for subsequent processing layers
+such as channel coding.
+
+A popular code used in many DSSS systems are Gold codes. A set of Gold codes has small cross-correlations. For some
+value $n$ a set of Gold codes contains $2^n + 1$ sequences of length $2^n - 1$. Gold codes are generated from two
+different maximum length sequences generated by linear feedback shift registers (LFSRs). For any bit count $n$ there are
+certain empirically determined preferred pairs of LFSRs that produce Gold codes with especially good cross-correlation.
+The $2^n + 1$ gold codes are defined as the XOR sum of both LFSR sequences shifted from $0$ to $2^n-1$ bit as well as
+the two individual LFSR sequences. Given LFSR sequences \texttt{a} and \texttt{b} in numpy notation this is
+\mintinline{python}{[a, b] + [ a ^ np.roll(b, shift) for shift in len(b) ]}.
+
+In DSSS modulation the individual bits of the DSSS sequence are called \emph{chips}. Chip duration determines modulation
+bandwidth\cite{goiser01}. In our system we are directly modulating DSSS chips on mains frequency without an underlying
+modulation such as BPSK as it is commonly used in DSSS systems.
\subsection{Error-correcting codes}
@@ -1109,7 +1121,7 @@ language such as C or rust. For prototyping these languages lack flexibility com
% 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.
+superimposed with an actual grid frequency measurement series.
% FIXME do test series with simulated noise emulating measured noise spectrum
\section{Implementation of a demonstrator unit}