@ -1 +0,0 @@ | |||||
,layoutdev,layoutmach,01.05.2019 10:47,file:///home/layoutdev/.config/libreoffice/4; |
@ -0,0 +1 @@ | |||||
,layoutdev,layoutmach,10.11.2019 23:13,file:///home/layoutdev/.config/libreoffice/4; |
@ -0,0 +1,3 @@ | |||||
\relax | |||||
\@writefile{toc}{\contentsline {section}{\numberline {1}Overview}{1}} | |||||
\@writefile{toc}{\contentsline {section}{\numberline {2}Work Log}{1}} |
@ -0,0 +1,194 @@ | |||||
This is pdfTeX, Version 3.14159265-2.6-1.40.17 (TeX Live 2016/Debian) (preloaded format=pdflatex 2019.8.17) 10 NOV 2019 00:52 | |||||
entering extended mode | |||||
restricted \write18 enabled. | |||||
%&-line parsing enabled. | |||||
**/home/layoutdev/Desktop/code/documentation_general/Electronics_Projects_2019/ | |||||
ZMHW_Modector/docs/1.tex | |||||
(/home/layoutdev/Desktop/code/documentation_general/Electronics_Projects_2019/Z | |||||
MHW_Modector/docs/1.tex | |||||
LaTeX2e <2017/01/01> patch level 3 | |||||
Babel <3.9r> and hyphenation patterns for 3 language(s) loaded. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/article.cls | |||||
Document Class: article 2014/09/29 v1.4h Standard LaTeX document class | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/size11.clo | |||||
File: size11.clo 2014/09/29 v1.4h Standard LaTeX file (size option) | |||||
) | |||||
\c@part=\count79 | |||||
\c@section=\count80 | |||||
\c@subsection=\count81 | |||||
\c@subsubsection=\count82 | |||||
\c@paragraph=\count83 | |||||
\c@subparagraph=\count84 | |||||
\c@figure=\count85 | |||||
\c@table=\count86 | |||||
\abovecaptionskip=\skip41 | |||||
\belowcaptionskip=\skip42 | |||||
\bibindent=\dimen102 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty | |||||
Package: graphicx 2014/10/28 v1.0g Enhanced LaTeX Graphics (DPC,SPQR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty | |||||
Package: keyval 2014/10/28 v1.15 key=value parser (DPC) | |||||
\KV@toks@=\toks14 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty | |||||
Package: graphics 2016/10/09 v1.0u Standard LaTeX Graphics (DPC,SPQR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty | |||||
Package: trig 2016/01/03 v1.10 sin cos tan (DPC) | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics-cfg/graphics.cfg | |||||
File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration | |||||
) | |||||
Package graphics Info: Driver file: pdftex.def on input line 99. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics-def/pdftex.def | |||||
File: pdftex.def 2017/01/12 v0.06k Graphics/color for pdfTeX | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/infwarerr.sty | |||||
Package: infwarerr 2016/05/16 v1.4 Providing info/warning/error messages (HO) | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ltxcmds.sty | |||||
Package: ltxcmds 2016/05/16 v1.23 LaTeX kernel commands for general use (HO) | |||||
) | |||||
\Gread@gobject=\count87 | |||||
)) | |||||
\Gin@req@height=\dimen103 | |||||
\Gin@req@width=\dimen104 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/caption/caption.sty | |||||
Package: caption 2016/02/21 v3.3-144 Customizing captions (AR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/caption/caption3.sty | |||||
Package: caption3 2016/05/22 v1.7-166 caption3 kernel (AR) | |||||
Package caption3 Info: TeX engine: e-TeX on input line 67. | |||||
\captionmargin=\dimen105 | |||||
\captionmargin@=\dimen106 | |||||
\captionwidth=\dimen107 | |||||
\caption@tempdima=\dimen108 | |||||
\caption@indent=\dimen109 | |||||
\caption@parindent=\dimen110 | |||||
\caption@hangindent=\dimen111 | |||||
) | |||||
\c@ContinuedFloat=\count88 | |||||
) (./1.aux) | |||||
\openout1 = `1.aux'. | |||||
LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
(/usr/share/texlive/texmf-dist/tex/context/base/mkii/supp-pdf.mkii | |||||
[Loading MPS to PDF converter (version 2006.09.02).] | |||||
\scratchcounter=\count89 | |||||
\scratchdimen=\dimen112 | |||||
\scratchbox=\box26 | |||||
\nofMPsegments=\count90 | |||||
\nofMParguments=\count91 | |||||
\everyMPshowfont=\toks15 | |||||
\MPscratchCnt=\count92 | |||||
\MPscratchDim=\dimen113 | |||||
\MPnumerator=\count93 | |||||
\makeMPintoPDFobject=\count94 | |||||
\everyMPtoPDFconversion=\toks16 | |||||
) (/usr/share/texlive/texmf-dist/tex/generic/oberdiek/pdftexcmds.sty | |||||
Package: pdftexcmds 2016/05/21 v0.22 Utility functions of pdfTeX for LuaTeX (HO | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifluatex.sty | |||||
Package: ifluatex 2016/05/16 v1.4 Provides the ifluatex switch (HO) | |||||
Package ifluatex Info: LuaTeX not detected. | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifpdf.sty | |||||
Package: ifpdf 2016/05/14 v3.1 Provides the ifpdf switch | |||||
) | |||||
Package pdftexcmds Info: LuaTeX not detected. | |||||
Package pdftexcmds Info: \pdf@primitive is available. | |||||
Package pdftexcmds Info: \pdf@ifprimitive is available. | |||||
Package pdftexcmds Info: \pdfdraftmode found. | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty | |||||
Package: epstopdf-base 2016/05/15 v2.6 Base part for package epstopdf | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty | |||||
Package: grfext 2016/05/16 v1.2 Manage graphics extensions (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvdefinekeys.sty | |||||
Package: kvdefinekeys 2016/05/16 v1.4 Define keys (HO) | |||||
)) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty | |||||
Package: kvoptions 2016/05/16 v3.12 Key value format for package options (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvsetkeys.sty | |||||
Package: kvsetkeys 2016/05/16 v1.17 Key value parser (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/etexcmds.sty | |||||
Package: etexcmds 2016/05/16 v1.6 Avoid name clashes with e-TeX commands (HO) | |||||
Package etexcmds Info: Could not find \expanded. | |||||
(etexcmds) That can mean that you are not using pdfTeX 1.50 or | |||||
(etexcmds) that some package has redefined \expanded. | |||||
(etexcmds) In the latter case, load this package earlier. | |||||
))) | |||||
Package epstopdf-base Info: Redefining graphics rule for `.eps' on input line 4 | |||||
38. | |||||
Package grfext Info: Graphics extension search list: | |||||
(grfext) [.png,.pdf,.jpg,.mps,.jpeg,.jbig2,.jb2,.PNG,.PDF,.JPG,.JPE | |||||
G,.JBIG2,.JB2,.eps] | |||||
(grfext) \AppendGraphicsExtensions on input line 456. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg | |||||
File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Liv | |||||
e | |||||
)) | |||||
Package caption Info: Begin \AtBeginDocument code. | |||||
Package caption Info: End \AtBeginDocument code. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <12> on input line 11. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <8> on input line 11. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <6> on input line 11. | |||||
(./1.toc) | |||||
\tf@toc=\write3 | |||||
\openout3 = `1.toc'. | |||||
Overfull \hbox (11.59073pt too wide) in paragraph at lines 16--17 | |||||
\OT1/cmr/m/n/10.95 stal-la-tions. These sen-sors use ZMTrig-ger.pl (wiki.zonemi | |||||
nder.com/ZMTrigger) | |||||
[] | |||||
[1 | |||||
{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}] (./1.aux) ) | |||||
Here is how much of TeX's memory you used: | |||||
2560 strings out of 494945 | |||||
40845 string characters out of 6181032 | |||||
93817 words of memory out of 5000000 | |||||
5856 multiletter control sequences out of 15000+600000 | |||||
7887 words of font info for 28 fonts, out of 8000000 for 9000 | |||||
14 hyphenation exceptions out of 8191 | |||||
39i,6n,38p,561b,189s stack positions out of 5000i,500n,10000p,200000b,80000s | |||||
</usr/share/tex | |||||
live/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx12.pfb></usr/share/texlive/t | |||||
exmf-dist/fonts/type1/public/amsfonts/cm/cmr10.pfb></usr/share/texlive/texmf-di | |||||
st/fonts/type1/public/amsfonts/cm/cmr12.pfb> | |||||
Output written on 1.pdf (1 page, 38152 bytes). | |||||
PDF statistics: | |||||
20 PDF objects out of 1000 (max. 8388607) | |||||
13 compressed objects within 1 object stream | |||||
0 named destinations out of 1000 (max. 500000) | |||||
1 words of extra memory for PDF output out of 10000 (max. 10000000) | |||||
@ -0,0 +1,33 @@ | |||||
\documentclass[11pt]{article} | |||||
%Gummi|065|=) | |||||
\usepackage{graphicx} | |||||
\usepackage{caption} | |||||
\title{\textbf{ZMHW Modector}} | |||||
\author{Steak Electronics} | |||||
\date{} | |||||
\begin{document} | |||||
\maketitle | |||||
\tableofcontents | |||||
\section{Overview} | |||||
Making and deploying a Motion Sensor for Zoneminder CCTV software installations. These sensors use ZMTrigger.pl (wiki.zoneminder.com/ZMTrigger) to activate an alarm on a camera for a period of time. The advantage of hardware motion sensors over the software detection of Zoneminder, is that the hardware motion sensors avoid some of the problems inherent in software detection, such as false positives from day-to-night, bugs, missed detections, and others. | |||||
\section{Work Log} | |||||
%\includegraphics[scale=0.8]{../pics/resistances.png} | |||||
%\captionof{figure}{Application Note resistance table} | |||||
\end{document} | |||||
@ -0,0 +1,63 @@ | |||||
\documentclass[11pt]{article} | |||||
%Gummi|065|=) | |||||
\usepackage{graphicx} | |||||
\usepackage{caption} | |||||
\title{\textbf{Flammable Gas Sensor}} | |||||
\author{Steak Electronics} | |||||
\date{} | |||||
\begin{document} | |||||
\maketitle | |||||
\tableofcontents | |||||
\section{Overview} | |||||
Shop needs a flammable gas sensor, for safety. | |||||
\section{Chip Hunting} | |||||
I'm looking at the following: | |||||
\begin{itemize} | |||||
\item SGAS711 | |||||
\item 200K fixed resistor | |||||
\item 1M potentiometer | |||||
\item Arduino Nano (for speed) | |||||
\item Ample Power Supply They are recommending 7 Volts for the heater. So, one rated for 1A. | |||||
\item led notifiers | |||||
\item | |||||
\end{itemize} | |||||
\subsection{Gas Sensor Tuning} | |||||
The flammable gas sensor has different sensitivities for different gases (see data sheet, Figure 8). I'm going to need to test for something specific, i.e. if the shop needs to watch out for acetone, I should test acetone. Of course, if enough of a flammable gas is in the air, it will set it off no matter what, but I should focus on what the danger is for calibrating. | |||||
Based on the resistance chart, I'm going to use a fixed 200K and a 1M pot. Pots are to be avoided, but here we need to calibrate over time. For the response of the v divider, the sensor is not linear, but closer (though not quite) logarithmic. So what I will do, is have to use some math on the micro, and use the formula they give in the Datasheet, to get a logarithmic output that appears linear (figure 5). For my needs, it is good enough. | |||||
\includegraphics[scale=0.8]{../pics/resistances.png} | |||||
\captionof{figure}{Application Note resistance table} | |||||
\subsubsection{Fixed resistors} | |||||
If these sensors are consistent enough, possibly I could use fixed resistors later. | |||||
\subsubsection{Gas Sensor Power Usage} | |||||
Rated at 900mW for 7V, so about 150mA (128mA). I know from prior experience these things heat up, so we need plenty of power. | |||||
\subsubsection{PCB Layout} | |||||
The gas sensor must be sideways, as there is excessive dust in the shop so, the holes will be on the side. I will do a 90 degree edge mount pcb. | |||||
\subsection{Switcher} | |||||
STS1024S6V5 Seems like a fair option for now. Output is 6.5 volts which is enough. Will use a module. Need to make a footprint. | |||||
\subsection{Enclosure} | |||||
We need a box that is tall enough to be a cube. Also want square, not rectangular. I plan to have the leds light from the back of the pcb. The pcb will be the top cover / front. The top cover / front will be the box, put on its side, so dust doesn't collect on the leds. Need a cube. | |||||
\end{document} | |||||
@ -0,0 +1,2 @@ | |||||
\contentsline {section}{\numberline {1}Overview}{1} | |||||
\contentsline {section}{\numberline {2}Work Log}{1} |
@ -0,0 +1,3 @@ | |||||
\relax | |||||
\@writefile{toc}{\contentsline {section}{\numberline {1}Overview}{1}} | |||||
\@writefile{toc}{\contentsline {section}{\numberline {2}Parts List}{1}} |
@ -0,0 +1,195 @@ | |||||
This is pdfTeX, Version 3.14159265-2.6-1.40.17 (TeX Live 2016/Debian) (preloaded format=pdflatex 2019.8.17) 10 NOV 2019 00:54 | |||||
entering extended mode | |||||
restricted \write18 enabled. | |||||
%&-line parsing enabled. | |||||
**/home/layoutdev/Desktop/code/documentation_general/Electronics_Projects_2019/ | |||||
ZMHW_Modector/docs/2.tex | |||||
(/home/layoutdev/Desktop/code/documentation_general/Electronics_Projects_2019/Z | |||||
MHW_Modector/docs/2.tex | |||||
LaTeX2e <2017/01/01> patch level 3 | |||||
Babel <3.9r> and hyphenation patterns for 3 language(s) loaded. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/article.cls | |||||
Document Class: article 2014/09/29 v1.4h Standard LaTeX document class | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/size11.clo | |||||
File: size11.clo 2014/09/29 v1.4h Standard LaTeX file (size option) | |||||
) | |||||
\c@part=\count79 | |||||
\c@section=\count80 | |||||
\c@subsection=\count81 | |||||
\c@subsubsection=\count82 | |||||
\c@paragraph=\count83 | |||||
\c@subparagraph=\count84 | |||||
\c@figure=\count85 | |||||
\c@table=\count86 | |||||
\abovecaptionskip=\skip41 | |||||
\belowcaptionskip=\skip42 | |||||
\bibindent=\dimen102 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty | |||||
Package: graphicx 2014/10/28 v1.0g Enhanced LaTeX Graphics (DPC,SPQR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty | |||||
Package: keyval 2014/10/28 v1.15 key=value parser (DPC) | |||||
\KV@toks@=\toks14 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty | |||||
Package: graphics 2016/10/09 v1.0u Standard LaTeX Graphics (DPC,SPQR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty | |||||
Package: trig 2016/01/03 v1.10 sin cos tan (DPC) | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics-cfg/graphics.cfg | |||||
File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration | |||||
) | |||||
Package graphics Info: Driver file: pdftex.def on input line 99. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics-def/pdftex.def | |||||
File: pdftex.def 2017/01/12 v0.06k Graphics/color for pdfTeX | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/infwarerr.sty | |||||
Package: infwarerr 2016/05/16 v1.4 Providing info/warning/error messages (HO) | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ltxcmds.sty | |||||
Package: ltxcmds 2016/05/16 v1.23 LaTeX kernel commands for general use (HO) | |||||
) | |||||
\Gread@gobject=\count87 | |||||
)) | |||||
\Gin@req@height=\dimen103 | |||||
\Gin@req@width=\dimen104 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/caption/caption.sty | |||||
Package: caption 2016/02/21 v3.3-144 Customizing captions (AR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/caption/caption3.sty | |||||
Package: caption3 2016/05/22 v1.7-166 caption3 kernel (AR) | |||||
Package caption3 Info: TeX engine: e-TeX on input line 67. | |||||
\captionmargin=\dimen105 | |||||
\captionmargin@=\dimen106 | |||||
\captionwidth=\dimen107 | |||||
\caption@tempdima=\dimen108 | |||||
\caption@indent=\dimen109 | |||||
\caption@parindent=\dimen110 | |||||
\caption@hangindent=\dimen111 | |||||
) | |||||
\c@ContinuedFloat=\count88 | |||||
) (./2.aux) | |||||
\openout1 = `2.aux'. | |||||
LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
(/usr/share/texlive/texmf-dist/tex/context/base/mkii/supp-pdf.mkii | |||||
[Loading MPS to PDF converter (version 2006.09.02).] | |||||
\scratchcounter=\count89 | |||||
\scratchdimen=\dimen112 | |||||
\scratchbox=\box26 | |||||
\nofMPsegments=\count90 | |||||
\nofMParguments=\count91 | |||||
\everyMPshowfont=\toks15 | |||||
\MPscratchCnt=\count92 | |||||
\MPscratchDim=\dimen113 | |||||
\MPnumerator=\count93 | |||||
\makeMPintoPDFobject=\count94 | |||||
\everyMPtoPDFconversion=\toks16 | |||||
) (/usr/share/texlive/texmf-dist/tex/generic/oberdiek/pdftexcmds.sty | |||||
Package: pdftexcmds 2016/05/21 v0.22 Utility functions of pdfTeX for LuaTeX (HO | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifluatex.sty | |||||
Package: ifluatex 2016/05/16 v1.4 Provides the ifluatex switch (HO) | |||||
Package ifluatex Info: LuaTeX not detected. | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifpdf.sty | |||||
Package: ifpdf 2016/05/14 v3.1 Provides the ifpdf switch | |||||
) | |||||
Package pdftexcmds Info: LuaTeX not detected. | |||||
Package pdftexcmds Info: \pdf@primitive is available. | |||||
Package pdftexcmds Info: \pdf@ifprimitive is available. | |||||
Package pdftexcmds Info: \pdfdraftmode found. | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty | |||||
Package: epstopdf-base 2016/05/15 v2.6 Base part for package epstopdf | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty | |||||
Package: grfext 2016/05/16 v1.2 Manage graphics extensions (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvdefinekeys.sty | |||||
Package: kvdefinekeys 2016/05/16 v1.4 Define keys (HO) | |||||
)) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty | |||||
Package: kvoptions 2016/05/16 v3.12 Key value format for package options (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvsetkeys.sty | |||||
Package: kvsetkeys 2016/05/16 v1.17 Key value parser (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/etexcmds.sty | |||||
Package: etexcmds 2016/05/16 v1.6 Avoid name clashes with e-TeX commands (HO) | |||||
Package etexcmds Info: Could not find \expanded. | |||||
(etexcmds) That can mean that you are not using pdfTeX 1.50 or | |||||
(etexcmds) that some package has redefined \expanded. | |||||
(etexcmds) In the latter case, load this package earlier. | |||||
))) | |||||
Package epstopdf-base Info: Redefining graphics rule for `.eps' on input line 4 | |||||
38. | |||||
Package grfext Info: Graphics extension search list: | |||||
(grfext) [.png,.pdf,.jpg,.mps,.jpeg,.jbig2,.jb2,.PNG,.PDF,.JPG,.JPE | |||||
G,.JBIG2,.JB2,.eps] | |||||
(grfext) \AppendGraphicsExtensions on input line 456. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg | |||||
File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Liv | |||||
e | |||||
)) | |||||
Package caption Info: Begin \AtBeginDocument code. | |||||
Package caption Info: End \AtBeginDocument code. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <12> on input line 11. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <8> on input line 11. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <6> on input line 11. | |||||
(./2.toc) | |||||
\tf@toc=\write3 | |||||
\openout3 = `2.toc'. | |||||
Overfull \hbox (11.59073pt too wide) in paragraph at lines 16--17 | |||||
\OT1/cmr/m/n/10.95 stal-la-tions. These sen-sors use ZMTrig-ger.pl (wiki.zonemi | |||||
nder.com/ZMTrigger) | |||||
[] | |||||
[1 | |||||
{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}] (./2.aux) ) | |||||
Here is how much of TeX's memory you used: | |||||
2562 strings out of 494945 | |||||
40869 string characters out of 6181032 | |||||
94817 words of memory out of 5000000 | |||||
5857 multiletter control sequences out of 15000+600000 | |||||
8195 words of font info for 29 fonts, out of 8000000 for 9000 | |||||
14 hyphenation exceptions out of 8191 | |||||
39i,6n,38p,561b,189s stack positions out of 5000i,500n,10000p,200000b,80000s | |||||
</usr/share/tex | |||||
live/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx10.pfb></usr/share/texlive/t | |||||
exmf-dist/fonts/type1/public/amsfonts/cm/cmbx12.pfb></usr/share/texlive/texmf-d | |||||
ist/fonts/type1/public/amsfonts/cm/cmr10.pfb></usr/share/texlive/texmf-dist/fon | |||||
ts/type1/public/amsfonts/cm/cmr12.pfb> | |||||
Output written on 2.pdf (1 page, 50271 bytes). | |||||
PDF statistics: | |||||
24 PDF objects out of 1000 (max. 8388607) | |||||
16 compressed objects within 1 object stream | |||||
0 named destinations out of 1000 (max. 500000) | |||||
1 words of extra memory for PDF output out of 10000 (max. 10000000) | |||||
@ -0,0 +1,35 @@ | |||||
\documentclass[11pt]{article} | |||||
%Gummi|065|=) | |||||
\usepackage{graphicx} | |||||
\usepackage{caption} | |||||
\title{\textbf{ZMHW Modector}} | |||||
\author{Steak Electronics} | |||||
\date{} | |||||
\begin{document} | |||||
\maketitle | |||||
\tableofcontents | |||||
\section{Overview} | |||||
Making and deploying a Motion Sensor for Zoneminder CCTV software installations. These sensors use ZMTrigger.pl (wiki.zoneminder.com/ZMTrigger) to activate an alarm on a camera for a period of time. The advantage of hardware motion sensors over the software detection of Zoneminder, is that the hardware motion sensors avoid some of the problems inherent in software detection, such as false positives from day-to-night, bugs, missed detections, and others. | |||||
I've tried different motion sensors. Let's start with the Infrared Laser Diode. | |||||
\section{Parts List} | |||||
%\includegraphics[scale=0.8]{../pics/resistances.png} | |||||
%\captionof{figure}{Application Note resistance table} | |||||
\end{document} | |||||
@ -0,0 +1,33 @@ | |||||
\documentclass[11pt]{article} | |||||
%Gummi|065|=) | |||||
\usepackage{graphicx} | |||||
\usepackage{caption} | |||||
\title{\textbf{ZMHW Modector}} | |||||
\author{Steak Electronics} | |||||
\date{} | |||||
\begin{document} | |||||
\maketitle | |||||
\tableofcontents | |||||
\section{Overview} | |||||
Making and deploying a Motion Sensor for Zoneminder CCTV software installations. These sensors use ZMTrigger.pl (wiki.zoneminder.com/ZMTrigger) to activate an alarm on a camera for a period of time. The advantage of hardware motion sensors over the software detection of Zoneminder, is that the hardware motion sensors avoid some of the problems inherent in software detection, such as false positives from day-to-night, bugs, missed detections, and others. | |||||
\section{Work Log} | |||||
%\includegraphics[scale=0.8]{../pics/resistances.png} | |||||
%\captionof{figure}{Application Note resistance table} | |||||
\end{document} | |||||
@ -0,0 +1,2 @@ | |||||
\contentsline {section}{\numberline {1}Overview}{1} | |||||
\contentsline {section}{\numberline {2}Parts List}{1} |
@ -0,0 +1,6 @@ | |||||
\relax | |||||
\@writefile{toc}{\contentsline {section}{\numberline {1}Overview}{1}} | |||||
\@writefile{toc}{\contentsline {section}{\numberline {2}Parts List}{1}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {2.1}Other Sensors}{2}} | |||||
\@writefile{toc}{\contentsline {section}{\numberline {3}Work Log}{2}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.1}Sick Motion Sensor}{2}} |
@ -0,0 +1,205 @@ | |||||
This is pdfTeX, Version 3.14159265-2.6-1.40.17 (TeX Live 2016/Debian) (preloaded format=pdflatex 2019.8.17) 10 NOV 2019 01:03 | |||||
entering extended mode | |||||
restricted \write18 enabled. | |||||
%&-line parsing enabled. | |||||
**/home/layoutdev/Desktop/code/documentation_general/Electronics_Projects_2019/ | |||||
ZMHW_Modector/docs/3.tex | |||||
(/home/layoutdev/Desktop/code/documentation_general/Electronics_Projects_2019/Z | |||||
MHW_Modector/docs/3.tex | |||||
LaTeX2e <2017/01/01> patch level 3 | |||||
Babel <3.9r> and hyphenation patterns for 3 language(s) loaded. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/article.cls | |||||
Document Class: article 2014/09/29 v1.4h Standard LaTeX document class | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/size11.clo | |||||
File: size11.clo 2014/09/29 v1.4h Standard LaTeX file (size option) | |||||
) | |||||
\c@part=\count79 | |||||
\c@section=\count80 | |||||
\c@subsection=\count81 | |||||
\c@subsubsection=\count82 | |||||
\c@paragraph=\count83 | |||||
\c@subparagraph=\count84 | |||||
\c@figure=\count85 | |||||
\c@table=\count86 | |||||
\abovecaptionskip=\skip41 | |||||
\belowcaptionskip=\skip42 | |||||
\bibindent=\dimen102 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty | |||||
Package: graphicx 2014/10/28 v1.0g Enhanced LaTeX Graphics (DPC,SPQR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty | |||||
Package: keyval 2014/10/28 v1.15 key=value parser (DPC) | |||||
\KV@toks@=\toks14 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty | |||||
Package: graphics 2016/10/09 v1.0u Standard LaTeX Graphics (DPC,SPQR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty | |||||
Package: trig 2016/01/03 v1.10 sin cos tan (DPC) | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics-cfg/graphics.cfg | |||||
File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration | |||||
) | |||||
Package graphics Info: Driver file: pdftex.def on input line 99. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics-def/pdftex.def | |||||
File: pdftex.def 2017/01/12 v0.06k Graphics/color for pdfTeX | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/infwarerr.sty | |||||
Package: infwarerr 2016/05/16 v1.4 Providing info/warning/error messages (HO) | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ltxcmds.sty | |||||
Package: ltxcmds 2016/05/16 v1.23 LaTeX kernel commands for general use (HO) | |||||
) | |||||
\Gread@gobject=\count87 | |||||
)) | |||||
\Gin@req@height=\dimen103 | |||||
\Gin@req@width=\dimen104 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/caption/caption.sty | |||||
Package: caption 2016/02/21 v3.3-144 Customizing captions (AR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/caption/caption3.sty | |||||
Package: caption3 2016/05/22 v1.7-166 caption3 kernel (AR) | |||||
Package caption3 Info: TeX engine: e-TeX on input line 67. | |||||
\captionmargin=\dimen105 | |||||
\captionmargin@=\dimen106 | |||||
\captionwidth=\dimen107 | |||||
\caption@tempdima=\dimen108 | |||||
\caption@indent=\dimen109 | |||||
\caption@parindent=\dimen110 | |||||
\caption@hangindent=\dimen111 | |||||
) | |||||
\c@ContinuedFloat=\count88 | |||||
) (./3.aux) | |||||
\openout1 = `3.aux'. | |||||
LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
(/usr/share/texlive/texmf-dist/tex/context/base/mkii/supp-pdf.mkii | |||||
[Loading MPS to PDF converter (version 2006.09.02).] | |||||
\scratchcounter=\count89 | |||||
\scratchdimen=\dimen112 | |||||
\scratchbox=\box26 | |||||
\nofMPsegments=\count90 | |||||
\nofMParguments=\count91 | |||||
\everyMPshowfont=\toks15 | |||||
\MPscratchCnt=\count92 | |||||
\MPscratchDim=\dimen113 | |||||
\MPnumerator=\count93 | |||||
\makeMPintoPDFobject=\count94 | |||||
\everyMPtoPDFconversion=\toks16 | |||||
) (/usr/share/texlive/texmf-dist/tex/generic/oberdiek/pdftexcmds.sty | |||||
Package: pdftexcmds 2016/05/21 v0.22 Utility functions of pdfTeX for LuaTeX (HO | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifluatex.sty | |||||
Package: ifluatex 2016/05/16 v1.4 Provides the ifluatex switch (HO) | |||||
Package ifluatex Info: LuaTeX not detected. | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifpdf.sty | |||||
Package: ifpdf 2016/05/14 v3.1 Provides the ifpdf switch | |||||
) | |||||
Package pdftexcmds Info: LuaTeX not detected. | |||||
Package pdftexcmds Info: \pdf@primitive is available. | |||||
Package pdftexcmds Info: \pdf@ifprimitive is available. | |||||
Package pdftexcmds Info: \pdfdraftmode found. | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty | |||||
Package: epstopdf-base 2016/05/15 v2.6 Base part for package epstopdf | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty | |||||
Package: grfext 2016/05/16 v1.2 Manage graphics extensions (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvdefinekeys.sty | |||||
Package: kvdefinekeys 2016/05/16 v1.4 Define keys (HO) | |||||
)) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty | |||||
Package: kvoptions 2016/05/16 v3.12 Key value format for package options (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvsetkeys.sty | |||||
Package: kvsetkeys 2016/05/16 v1.17 Key value parser (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/etexcmds.sty | |||||
Package: etexcmds 2016/05/16 v1.6 Avoid name clashes with e-TeX commands (HO) | |||||
Package etexcmds Info: Could not find \expanded. | |||||
(etexcmds) That can mean that you are not using pdfTeX 1.50 or | |||||
(etexcmds) that some package has redefined \expanded. | |||||
(etexcmds) In the latter case, load this package earlier. | |||||
))) | |||||
Package epstopdf-base Info: Redefining graphics rule for `.eps' on input line 4 | |||||
38. | |||||
Package grfext Info: Graphics extension search list: | |||||
(grfext) [.png,.pdf,.jpg,.mps,.jpeg,.jbig2,.jb2,.PNG,.PDF,.JPG,.JPE | |||||
G,.JBIG2,.JB2,.eps] | |||||
(grfext) \AppendGraphicsExtensions on input line 456. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg | |||||
File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Liv | |||||
e | |||||
)) | |||||
Package caption Info: Begin \AtBeginDocument code. | |||||
Package caption Info: End \AtBeginDocument code. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <12> on input line 11. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <8> on input line 11. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <6> on input line 11. | |||||
(./3.toc | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <10.95> on input line 3. | |||||
) | |||||
\tf@toc=\write3 | |||||
\openout3 = `3.toc'. | |||||
Overfull \hbox (11.59073pt too wide) in paragraph at lines 16--17 | |||||
\OT1/cmr/m/n/10.95 stal-la-tions. These sen-sors use ZMTrig-ger.pl (wiki.zonemi | |||||
nder.com/ZMTrigger) | |||||
[] | |||||
LaTeX Font Info: Try loading font information for OMS+cmr on input line 21. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/omscmr.fd | |||||
File: omscmr.fd 2014/09/29 v2.5h Standard LaTeX font definitions | |||||
) | |||||
LaTeX Font Info: Font shape `OMS/cmr/m/n' in size <10.95> not available | |||||
(Font) Font shape `OMS/cmsy/m/n' tried instead on input line 21. | |||||
[1 | |||||
{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}] [2] [3] (./3.aux) ) | |||||
Here is how much of TeX's memory you used: | |||||
2583 strings out of 494945 | |||||
41233 string characters out of 6181032 | |||||
96817 words of memory out of 5000000 | |||||
5875 multiletter control sequences out of 15000+600000 | |||||
9118 words of font info for 32 fonts, out of 8000000 for 9000 | |||||
14 hyphenation exceptions out of 8191 | |||||
39i,6n,38p,561b,189s stack positions out of 5000i,500n,10000p,200000b,80000s | |||||
</usr/s | |||||
hare/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx10.pfb></usr/share/t | |||||
exlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx12.pfb></usr/share/texlive | |||||
/texmf-dist/fonts/type1/public/amsfonts/cm/cmr10.pfb></usr/share/texlive/texmf- | |||||
dist/fonts/type1/public/amsfonts/cm/cmr12.pfb></usr/share/texlive/texmf-dist/fo | |||||
nts/type1/public/amsfonts/cm/cmsy10.pfb> | |||||
Output written on 3.pdf (3 pages, 68471 bytes). | |||||
PDF statistics: | |||||
34 PDF objects out of 1000 (max. 8388607) | |||||
23 compressed objects within 1 object stream | |||||
0 named destinations out of 1000 (max. 500000) | |||||
1 words of extra memory for PDF output out of 10000 (max. 10000000) | |||||
@ -0,0 +1,64 @@ | |||||
\documentclass[11pt]{article} | |||||
%Gummi|065|=) | |||||
\usepackage{graphicx} | |||||
\usepackage{caption} | |||||
\title{\textbf{ZMHW Modector}} | |||||
\author{Steak Electronics} | |||||
\date{} | |||||
\begin{document} | |||||
\maketitle | |||||
\tableofcontents | |||||
\section{Overview} | |||||
Making and deploying a Motion Sensor for Zoneminder CCTV software installations. These sensors use ZMTrigger.pl (wiki.zoneminder.com/ZMTrigger) to activate an alarm on a camera for a period of time. The advantage of hardware motion sensors over the software detection of Zoneminder, is that the hardware motion sensors avoid some of the problems inherent in software detection, such as false positives from day-to-night, bugs, missed detections, and others. | |||||
I've tried different motion sensors. Let's start with the Infrared Laser Diode. | |||||
\section{Parts List} | |||||
\begin{itemize} | |||||
\item Arduino Uno (official recommended)(DIP recommended) | |||||
\item ENC28J60 ethernet module | |||||
\item Passive PoE adaptors for IP Cameras | |||||
\item Series 1A fuse | |||||
\item Sick WS15-D1130 Infrared Laser Diode Motion Sensor | |||||
\item General Purpose Diode (I used 1N4818 diode) (may also use transistor, per data sheet for Sick) | |||||
\item Jumper Wires | |||||
\item Copper Wire (22-26 gauge) | |||||
\item Enclosure | |||||
\item Ethernet Wire | |||||
\item (optional) Low Profile one and two gang wall outlet | |||||
\item (optional) Blank cover plate, for one and two wall gang wall outlet | |||||
\item (optional) Electrical tape (I prefer halfway decent electrical tape) | |||||
\item (optional) piezo speaker | |||||
\item (optional) extras of everything, in case anything fails | |||||
\end{itemize} | |||||
Later on we will try a different sensor. The HFS-DC06H. This sensor is a combination of an HB100 radio, with a decoding board that will read the signal and output a logic high or low. You may also want to try PIR sensors. | |||||
\subsection{Other Sensors} | |||||
\begin{itemize} | |||||
\item HFS-DC06H | |||||
\item PIR Sensor | |||||
\item Any other Laser Diode Sensor you like | |||||
\item Reflective tape | |||||
\end{itemize} | |||||
%\includegraphics[scale=0.8]{../pics/resistances.png} | |||||
%\captionof{figure}{Application Note resistance table} | |||||
\section{Work Log} | |||||
\subsection{Sick Motion Sensor} | |||||
The first tests were with the Sick diode sensor and receiver. This device is good for a doorway, where the door must be opened in order for people to pass. Putting it in the way of the door ensures that it will activate. It has a distance of at a max 15 feet or 3 meters. It is a laser type tripwire, which means it can be avoided, if someone knows where it is. | |||||
Device was assembled and using the ZMHW Modector source code. This is simply an Arduino sketch with UIPEthernet (to use the ENC28J60) (make sure CS is pin 10 on Uno). For more details see source code. Explaining the details is out of the spec of this doc. Simply put, the ENC28J60 is connected, the Sick sensor black wire is connected to Analog input 1, and a speaker is connected. | |||||
Of importance, Figure 1 shows two things, first off a diode connected in series with the output of the Sick sensor, and also the orange LED on the top of the sensor. The orange led will be green when there is no connection between the diodes and orange when the Diodes (or LEDs) are lined up correctly. When someone moves across the field of their vision, the orange LED will change to green. | |||||
\end{document} | |||||
@ -0,0 +1,35 @@ | |||||
\documentclass[11pt]{article} | |||||
%Gummi|065|=) | |||||
\usepackage{graphicx} | |||||
\usepackage{caption} | |||||
\title{\textbf{ZMHW Modector}} | |||||
\author{Steak Electronics} | |||||
\date{} | |||||
\begin{document} | |||||
\maketitle | |||||
\tableofcontents | |||||
\section{Overview} | |||||
Making and deploying a Motion Sensor for Zoneminder CCTV software installations. These sensors use ZMTrigger.pl (wiki.zoneminder.com/ZMTrigger) to activate an alarm on a camera for a period of time. The advantage of hardware motion sensors over the software detection of Zoneminder, is that the hardware motion sensors avoid some of the problems inherent in software detection, such as false positives from day-to-night, bugs, missed detections, and others. | |||||
I've tried different motion sensors. Let's start with the Infrared Laser Diode. | |||||
\section{Parts List} | |||||
%\includegraphics[scale=0.8]{../pics/resistances.png} | |||||
%\captionof{figure}{Application Note resistance table} | |||||
\end{document} | |||||
@ -0,0 +1,5 @@ | |||||
\contentsline {section}{\numberline {1}Overview}{1} | |||||
\contentsline {section}{\numberline {2}Parts List}{1} | |||||
\contentsline {subsection}{\numberline {2.1}Other Sensors}{2} | |||||
\contentsline {section}{\numberline {3}Work Log}{2} | |||||
\contentsline {subsection}{\numberline {3.1}Sick Motion Sensor}{2} |
@ -0,0 +1,8 @@ | |||||
\relax | |||||
\@writefile{toc}{\contentsline {section}{\numberline {1}Overview}{1}} | |||||
\@writefile{toc}{\contentsline {section}{\numberline {2}Parts List}{1}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {2.1}Other Sensors}{2}} | |||||
\@writefile{toc}{\contentsline {section}{\numberline {3}Work Log}{2}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.1}Sick Motion Sensor}{2}} | |||||
\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces Testing the Sick IR Diode Tripwire \relax }}{3}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.2}Diode on Output of Sick Sensor}{4}} |
@ -0,0 +1,223 @@ | |||||
This is pdfTeX, Version 3.14159265-2.6-1.40.17 (TeX Live 2016/Debian) (preloaded format=pdflatex 2019.8.17) 10 NOV 2019 01:10 | |||||
entering extended mode | |||||
restricted \write18 enabled. | |||||
%&-line parsing enabled. | |||||
**/home/layoutdev/Desktop/code/documentation_general/Electronics_Projects_2019/ | |||||
ZMHW_Modector/docs/4.tex | |||||
(/home/layoutdev/Desktop/code/documentation_general/Electronics_Projects_2019/Z | |||||
MHW_Modector/docs/4.tex | |||||
LaTeX2e <2017/01/01> patch level 3 | |||||
Babel <3.9r> and hyphenation patterns for 3 language(s) loaded. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/article.cls | |||||
Document Class: article 2014/09/29 v1.4h Standard LaTeX document class | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/size11.clo | |||||
File: size11.clo 2014/09/29 v1.4h Standard LaTeX file (size option) | |||||
) | |||||
\c@part=\count79 | |||||
\c@section=\count80 | |||||
\c@subsection=\count81 | |||||
\c@subsubsection=\count82 | |||||
\c@paragraph=\count83 | |||||
\c@subparagraph=\count84 | |||||
\c@figure=\count85 | |||||
\c@table=\count86 | |||||
\abovecaptionskip=\skip41 | |||||
\belowcaptionskip=\skip42 | |||||
\bibindent=\dimen102 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty | |||||
Package: graphicx 2014/10/28 v1.0g Enhanced LaTeX Graphics (DPC,SPQR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty | |||||
Package: keyval 2014/10/28 v1.15 key=value parser (DPC) | |||||
\KV@toks@=\toks14 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty | |||||
Package: graphics 2016/10/09 v1.0u Standard LaTeX Graphics (DPC,SPQR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty | |||||
Package: trig 2016/01/03 v1.10 sin cos tan (DPC) | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics-cfg/graphics.cfg | |||||
File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration | |||||
) | |||||
Package graphics Info: Driver file: pdftex.def on input line 99. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics-def/pdftex.def | |||||
File: pdftex.def 2017/01/12 v0.06k Graphics/color for pdfTeX | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/infwarerr.sty | |||||
Package: infwarerr 2016/05/16 v1.4 Providing info/warning/error messages (HO) | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ltxcmds.sty | |||||
Package: ltxcmds 2016/05/16 v1.23 LaTeX kernel commands for general use (HO) | |||||
) | |||||
\Gread@gobject=\count87 | |||||
)) | |||||
\Gin@req@height=\dimen103 | |||||
\Gin@req@width=\dimen104 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/caption/caption.sty | |||||
Package: caption 2016/02/21 v3.3-144 Customizing captions (AR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/caption/caption3.sty | |||||
Package: caption3 2016/05/22 v1.7-166 caption3 kernel (AR) | |||||
Package caption3 Info: TeX engine: e-TeX on input line 67. | |||||
\captionmargin=\dimen105 | |||||
\captionmargin@=\dimen106 | |||||
\captionwidth=\dimen107 | |||||
\caption@tempdima=\dimen108 | |||||
\caption@indent=\dimen109 | |||||
\caption@parindent=\dimen110 | |||||
\caption@hangindent=\dimen111 | |||||
) | |||||
\c@ContinuedFloat=\count88 | |||||
) (./4.aux) | |||||
\openout1 = `4.aux'. | |||||
LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
(/usr/share/texlive/texmf-dist/tex/context/base/mkii/supp-pdf.mkii | |||||
[Loading MPS to PDF converter (version 2006.09.02).] | |||||
\scratchcounter=\count89 | |||||
\scratchdimen=\dimen112 | |||||
\scratchbox=\box26 | |||||
\nofMPsegments=\count90 | |||||
\nofMParguments=\count91 | |||||
\everyMPshowfont=\toks15 | |||||
\MPscratchCnt=\count92 | |||||
\MPscratchDim=\dimen113 | |||||
\MPnumerator=\count93 | |||||
\makeMPintoPDFobject=\count94 | |||||
\everyMPtoPDFconversion=\toks16 | |||||
) (/usr/share/texlive/texmf-dist/tex/generic/oberdiek/pdftexcmds.sty | |||||
Package: pdftexcmds 2016/05/21 v0.22 Utility functions of pdfTeX for LuaTeX (HO | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifluatex.sty | |||||
Package: ifluatex 2016/05/16 v1.4 Provides the ifluatex switch (HO) | |||||
Package ifluatex Info: LuaTeX not detected. | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifpdf.sty | |||||
Package: ifpdf 2016/05/14 v3.1 Provides the ifpdf switch | |||||
) | |||||
Package pdftexcmds Info: LuaTeX not detected. | |||||
Package pdftexcmds Info: \pdf@primitive is available. | |||||
Package pdftexcmds Info: \pdf@ifprimitive is available. | |||||
Package pdftexcmds Info: \pdfdraftmode found. | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty | |||||
Package: epstopdf-base 2016/05/15 v2.6 Base part for package epstopdf | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty | |||||
Package: grfext 2016/05/16 v1.2 Manage graphics extensions (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvdefinekeys.sty | |||||
Package: kvdefinekeys 2016/05/16 v1.4 Define keys (HO) | |||||
)) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty | |||||
Package: kvoptions 2016/05/16 v3.12 Key value format for package options (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvsetkeys.sty | |||||
Package: kvsetkeys 2016/05/16 v1.17 Key value parser (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/etexcmds.sty | |||||
Package: etexcmds 2016/05/16 v1.6 Avoid name clashes with e-TeX commands (HO) | |||||
Package etexcmds Info: Could not find \expanded. | |||||
(etexcmds) That can mean that you are not using pdfTeX 1.50 or | |||||
(etexcmds) that some package has redefined \expanded. | |||||
(etexcmds) In the latter case, load this package earlier. | |||||
))) | |||||
Package epstopdf-base Info: Redefining graphics rule for `.eps' on input line 4 | |||||
38. | |||||
Package grfext Info: Graphics extension search list: | |||||
(grfext) [.png,.pdf,.jpg,.mps,.jpeg,.jbig2,.jb2,.PNG,.PDF,.JPG,.JPE | |||||
G,.JBIG2,.JB2,.eps] | |||||
(grfext) \AppendGraphicsExtensions on input line 456. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg | |||||
File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Liv | |||||
e | |||||
)) | |||||
Package caption Info: Begin \AtBeginDocument code. | |||||
Package caption Info: End \AtBeginDocument code. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <12> on input line 11. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <8> on input line 11. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <6> on input line 11. | |||||
(./4.toc | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <10.95> on input line 3. | |||||
) | |||||
\tf@toc=\write3 | |||||
\openout3 = `4.toc'. | |||||
Overfull \hbox (11.59073pt too wide) in paragraph at lines 16--17 | |||||
\OT1/cmr/m/n/10.95 stal-la-tions. These sen-sors use ZMTrig-ger.pl (wiki.zonemi | |||||
nder.com/ZMTrigger) | |||||
[] | |||||
LaTeX Font Info: Try loading font information for OMS+cmr on input line 21. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/omscmr.fd | |||||
File: omscmr.fd 2014/09/29 v2.5h Standard LaTeX font definitions | |||||
) | |||||
LaTeX Font Info: Font shape `OMS/cmr/m/n' in size <10.95> not available | |||||
(Font) Font shape `OMS/cmsy/m/n' tried instead on input line 21. | |||||
[1 | |||||
{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}] [2] | |||||
<../pics/DSCN0207.JPG, id=14, 803.0pt x 602.25pt> | |||||
File: ../pics/DSCN0207.JPG Graphic file (type jpg) | |||||
<use ../pics/DSCN0207.JPG> | |||||
Package pdftex.def Info: ../pics/DSCN0207.JPG used on input line 53. | |||||
(pdftex.def) Requested size: 321.1943pt x 240.89572pt. | |||||
Package caption Warning: \captionsetup{type*=...} or \captionof | |||||
(caption) outside box or environment on input line 54. | |||||
See the caption package documentation for explanation. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <9> on input line 56. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <5> on input line 56. | |||||
[3 <../pics/DSCN0207.JPG>] [4] (./4.aux) ) | |||||
Here is how much of TeX's memory you used: | |||||
2602 strings out of 494945 | |||||
41501 string characters out of 6181032 | |||||
96817 words of memory out of 5000000 | |||||
5888 multiletter control sequences out of 15000+600000 | |||||
10030 words of font info for 35 fonts, out of 8000000 for 9000 | |||||
14 hyphenation exceptions out of 8191 | |||||
39i,8n,39p,657b,189s stack positions out of 5000i,500n,10000p,200000b,80000s | |||||
</usr/share/texlive/texmf-dist/fonts/ | |||||
type1/public/amsfonts/cm/cmbx10.pfb></usr/share/texlive/texmf-dist/fonts/type1/ | |||||
public/amsfonts/cm/cmbx12.pfb></usr/share/texlive/texmf-dist/fonts/type1/public | |||||
/amsfonts/cm/cmr10.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/amsfon | |||||
ts/cm/cmr12.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/c | |||||
mr6.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmr8.pfb> | |||||
</usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmr9.pfb></usr/sh | |||||
are/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy10.pfb> | |||||
Output written on 4.pdf (4 pages, 251895 bytes). | |||||
PDF statistics: | |||||
50 PDF objects out of 1000 (max. 8388607) | |||||
34 compressed objects within 1 object stream | |||||
0 named destinations out of 1000 (max. 500000) | |||||
6 words of extra memory for PDF output out of 10000 (max. 10000000) | |||||
@ -0,0 +1,74 @@ | |||||
\documentclass[11pt]{article} | |||||
%Gummi|065|=) | |||||
\usepackage{graphicx} | |||||
\usepackage{caption} | |||||
\title{\textbf{ZMHW Modector}} | |||||
\author{Steak Electronics} | |||||
\date{} | |||||
\begin{document} | |||||
\maketitle | |||||
\tableofcontents | |||||
\section{Overview} | |||||
Making and deploying a Motion Sensor for Zoneminder CCTV software installations. These sensors use ZMTrigger.pl (wiki.zoneminder.com/ZMTrigger) to activate an alarm on a camera for a period of time. The advantage of hardware motion sensors over the software detection of Zoneminder, is that the hardware motion sensors avoid some of the problems inherent in software detection, such as false positives from day-to-night, bugs, missed detections, and others. | |||||
I've tried different motion sensors. Let's start with the Infrared Laser Diode. | |||||
\section{Parts List} | |||||
\begin{itemize} | |||||
\item Arduino Uno (official recommended)(DIP recommended) | |||||
\item ENC28J60 ethernet module | |||||
\item Passive PoE adaptors for IP Cameras | |||||
\item Series 1A fuse | |||||
\item Sick WS15-D1130 Infrared Laser Diode Motion Sensor | |||||
\item General Purpose Diode (I used 1N4818 diode) (may also use transistor, per data sheet for Sick) | |||||
\item Jumper Wires | |||||
\item Copper Wire (22-26 gauge) | |||||
\item Enclosure | |||||
\item Ethernet Wire | |||||
\item (optional) Low Profile one and two gang wall outlet | |||||
\item (optional) Blank cover plate, for one and two wall gang wall outlet | |||||
\item (optional) Electrical tape (I prefer halfway decent electrical tape) | |||||
\item (optional) piezo speaker | |||||
\item (optional) extras of everything, in case anything fails | |||||
\end{itemize} | |||||
Later on we will try a different sensor. The HFS-DC06H. This sensor is a combination of an HB100 radio, with a decoding board that will read the signal and output a logic high or low. You may also want to try PIR sensors. | |||||
\subsection{Other Sensors} | |||||
\begin{itemize} | |||||
\item HFS-DC06H | |||||
\item PIR Sensor | |||||
\item Any other Laser Diode Sensor you like | |||||
\item Reflective tape | |||||
\end{itemize} | |||||
%\includegraphics[scale=0.8]{../pics/resistances.png} | |||||
%\captionof{figure}{Application Note resistance table} | |||||
\section{Work Log} | |||||
\subsection{Sick Motion Sensor} | |||||
The first tests were with the Sick diode sensor and receiver. This device is good for a doorway, where the door must be opened in order for people to pass. Putting it in the way of the door ensures that it will activate. It has a distance of at a max 15 feet or 3 meters. It is a laser type tripwire, which means it can be avoided, if someone knows where it is. | |||||
Device was assembled and using the ZMHW Modector source code. This is simply an Arduino sketch with UIPEthernet (to use the ENC28J60) (make sure CS is pin 10 on Uno). For more details see source code. Explaining the details is out of the spec of this doc. Simply put, the ENC28J60 is connected, the Sick sensor black wire is connected to Analog input 1, and a speaker is connected. | |||||
\includegraphics[scale=0.4]{../pics/DSCN0207.JPG} | |||||
\captionof{figure}{Testing the Sick IR Diode Tripwire } | |||||
Figure 1 shows two things, first off a diode connected in series with the output of the Sick sensor, and also the orange LED on the top of the sensor. The orange led will be green when there is no connection between the diodes and orange when the Diodes (or LEDs) are lined up correctly. When someone moves across the field of their vision, the orange LED will change to green.\footnote{This will later become important when installing the IR diode and receiver, as they must be lined up correctly.} | |||||
\subsection{Diode on Output of Sick Sensor} | |||||
Some IR diode / receiver pairs output a high or low. Some, like the Sick sensor, output a high or low (depending on whether you connect to white or black wire), however they are meant to be connected to a transistor, and thus if you connect it directly to a micro expecting it to go high or low, it will not. Being lazy, and seeking a quick solution, I put a 1N4819 in series with the output of the Sick sensor. | |||||
TODO: pictures showing waveforms | |||||
\footnote{This is possibly an issue of output impedance, but I will admit, at the time, I didn't bother to check.} | |||||
Using the black wire, it will be normally low and go high when motion is detected (the white wire is the opposite). If you connect to a micro it will fail to go high (why?). If you put a diode on the end in series, it will turn the normally low to a noisy normally low, and sometimes it will go between 2.5-5 volts in spikes. This allows us to use the ADC to read the Sick sensor, and avoid the use of adding a transistor in. The transistor would allow for a digitalRead to be used, but we have plenty of Analog inputs to use, so let's use one of those. | |||||
It's important to line up these sensors. If they are not lined up precisely, they will not get a sync, and the motion detection will fail. | |||||
\end{document} | |||||
@ -0,0 +1,58 @@ | |||||
\documentclass[11pt]{article} | |||||
%Gummi|065|=) | |||||
\usepackage{graphicx} | |||||
\usepackage{caption} | |||||
\title{\textbf{ZMHW Modector}} | |||||
\author{Steak Electronics} | |||||
\date{} | |||||
\begin{document} | |||||
\maketitle | |||||
\tableofcontents | |||||
\section{Overview} | |||||
Making and deploying a Motion Sensor for Zoneminder CCTV software installations. These sensors use ZMTrigger.pl (wiki.zoneminder.com/ZMTrigger) to activate an alarm on a camera for a period of time. The advantage of hardware motion sensors over the software detection of Zoneminder, is that the hardware motion sensors avoid some of the problems inherent in software detection, such as false positives from day-to-night, bugs, missed detections, and others. | |||||
I've tried different motion sensors. Let's start with the Infrared Laser Diode. | |||||
\section{Parts List} | |||||
\begin{itemize} | |||||
\item Arduino Uno (official recommended)(DIP recommended) | |||||
\item ENC28J60 ethernet module | |||||
\item Passive PoE adaptors for IP Cameras | |||||
\item Series 1A fuse | |||||
\item Sick WS15-D1130 Infrared Laser Diode Motion Sensor | |||||
\item General Purpose Diode (I used 1N4818 diode) (may also use transistor, per data sheet for Sick) | |||||
\item Jumper Wires | |||||
\item Copper Wire (22-26 gauge) | |||||
\item Enclosure | |||||
\item Ethernet Wire | |||||
\item (optional) Low Profile one and two gang wall outlet | |||||
\item (optional) Blank cover plate, for one and two wall gang wall outlet | |||||
\item (optional) Electrical tape (I prefer halfway decent electrical tape) | |||||
\item (optional) piezo speaker | |||||
\item (optional) extras of everything, in case anything fails | |||||
\end{itemize} | |||||
Later on we will try a different sensor. The HFS-DC06H. This sensor is a combination of an HB100 radio, with a decoding board that will read the signal and output a logic high or low. You may also want to try PIR sensors. | |||||
\subsection{Other Sensors} | |||||
\begin{itemize} | |||||
\item HFS-DC06H | |||||
\item PIR Sensor | |||||
\item Any other Laser Diode Sensor you like | |||||
\item Reflective tape | |||||
\end{itemize} | |||||
%\includegraphics[scale=0.8]{../pics/resistances.png} | |||||
%\captionof{figure}{Application Note resistance table} | |||||
\section{Work Log} | |||||
\subsection{Sick Motion Sensor} | |||||
The first tests were with the Sick diode sensor and receiver. This device is good for a doorway, where the door must be opened in order for people to pass. Putting it in the way of the door ensures that it will activate. It has a distance of at a max 15 feet or 3 meters. It is a laser type tripwire, which means it can be avoided, if someone knows where it is. | |||||
Device was assembled and using the ZMHW Modector source code. This is simply an Arduino sketch with UIPEthernet (to use the ENC28J60) (make sure CS is pin 10 on Uno). For more details see source code. Explaining the details is out of the spec of this doc. Simply put, the ENC28J60 is connected, the Sick sensor black wire is connected to Analog input 1, and a speaker is connected. | |||||
\end{document} | |||||
@ -0,0 +1,6 @@ | |||||
\contentsline {section}{\numberline {1}Overview}{1} | |||||
\contentsline {section}{\numberline {2}Parts List}{1} | |||||
\contentsline {subsection}{\numberline {2.1}Other Sensors}{2} | |||||
\contentsline {section}{\numberline {3}Work Log}{2} | |||||
\contentsline {subsection}{\numberline {3.1}Sick Motion Sensor}{2} | |||||
\contentsline {subsection}{\numberline {3.2}Diode on Output of Sick Sensor}{4} |
@ -0,0 +1,8 @@ | |||||
\relax | |||||
\@writefile{toc}{\contentsline {section}{\numberline {1}Overview}{1}} | |||||
\@writefile{toc}{\contentsline {section}{\numberline {2}Parts List}{1}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {2.1}Other Sensors}{2}} | |||||
\@writefile{toc}{\contentsline {section}{\numberline {3}Work Log}{2}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.1}Sick Motion Sensor}{2}} | |||||
\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces Testing the Sick IR Diode Tripwire \relax }}{3}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.2}Diode on Output of Sick Sensor}{4}} |
@ -0,0 +1,223 @@ | |||||
This is pdfTeX, Version 3.14159265-2.6-1.40.17 (TeX Live 2016/Debian) (preloaded format=pdflatex 2019.8.17) 10 NOV 2019 01:11 | |||||
entering extended mode | |||||
restricted \write18 enabled. | |||||
%&-line parsing enabled. | |||||
**/home/layoutdev/Desktop/code/documentation_general/Electronics_Projects_2019/ | |||||
ZMHW_Modector/docs/5.tex | |||||
(/home/layoutdev/Desktop/code/documentation_general/Electronics_Projects_2019/Z | |||||
MHW_Modector/docs/5.tex | |||||
LaTeX2e <2017/01/01> patch level 3 | |||||
Babel <3.9r> and hyphenation patterns for 3 language(s) loaded. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/article.cls | |||||
Document Class: article 2014/09/29 v1.4h Standard LaTeX document class | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/size11.clo | |||||
File: size11.clo 2014/09/29 v1.4h Standard LaTeX file (size option) | |||||
) | |||||
\c@part=\count79 | |||||
\c@section=\count80 | |||||
\c@subsection=\count81 | |||||
\c@subsubsection=\count82 | |||||
\c@paragraph=\count83 | |||||
\c@subparagraph=\count84 | |||||
\c@figure=\count85 | |||||
\c@table=\count86 | |||||
\abovecaptionskip=\skip41 | |||||
\belowcaptionskip=\skip42 | |||||
\bibindent=\dimen102 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty | |||||
Package: graphicx 2014/10/28 v1.0g Enhanced LaTeX Graphics (DPC,SPQR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty | |||||
Package: keyval 2014/10/28 v1.15 key=value parser (DPC) | |||||
\KV@toks@=\toks14 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty | |||||
Package: graphics 2016/10/09 v1.0u Standard LaTeX Graphics (DPC,SPQR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty | |||||
Package: trig 2016/01/03 v1.10 sin cos tan (DPC) | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics-cfg/graphics.cfg | |||||
File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration | |||||
) | |||||
Package graphics Info: Driver file: pdftex.def on input line 99. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics-def/pdftex.def | |||||
File: pdftex.def 2017/01/12 v0.06k Graphics/color for pdfTeX | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/infwarerr.sty | |||||
Package: infwarerr 2016/05/16 v1.4 Providing info/warning/error messages (HO) | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ltxcmds.sty | |||||
Package: ltxcmds 2016/05/16 v1.23 LaTeX kernel commands for general use (HO) | |||||
) | |||||
\Gread@gobject=\count87 | |||||
)) | |||||
\Gin@req@height=\dimen103 | |||||
\Gin@req@width=\dimen104 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/caption/caption.sty | |||||
Package: caption 2016/02/21 v3.3-144 Customizing captions (AR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/caption/caption3.sty | |||||
Package: caption3 2016/05/22 v1.7-166 caption3 kernel (AR) | |||||
Package caption3 Info: TeX engine: e-TeX on input line 67. | |||||
\captionmargin=\dimen105 | |||||
\captionmargin@=\dimen106 | |||||
\captionwidth=\dimen107 | |||||
\caption@tempdima=\dimen108 | |||||
\caption@indent=\dimen109 | |||||
\caption@parindent=\dimen110 | |||||
\caption@hangindent=\dimen111 | |||||
) | |||||
\c@ContinuedFloat=\count88 | |||||
) (./5.aux) | |||||
\openout1 = `5.aux'. | |||||
LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
(/usr/share/texlive/texmf-dist/tex/context/base/mkii/supp-pdf.mkii | |||||
[Loading MPS to PDF converter (version 2006.09.02).] | |||||
\scratchcounter=\count89 | |||||
\scratchdimen=\dimen112 | |||||
\scratchbox=\box26 | |||||
\nofMPsegments=\count90 | |||||
\nofMParguments=\count91 | |||||
\everyMPshowfont=\toks15 | |||||
\MPscratchCnt=\count92 | |||||
\MPscratchDim=\dimen113 | |||||
\MPnumerator=\count93 | |||||
\makeMPintoPDFobject=\count94 | |||||
\everyMPtoPDFconversion=\toks16 | |||||
) (/usr/share/texlive/texmf-dist/tex/generic/oberdiek/pdftexcmds.sty | |||||
Package: pdftexcmds 2016/05/21 v0.22 Utility functions of pdfTeX for LuaTeX (HO | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifluatex.sty | |||||
Package: ifluatex 2016/05/16 v1.4 Provides the ifluatex switch (HO) | |||||
Package ifluatex Info: LuaTeX not detected. | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifpdf.sty | |||||
Package: ifpdf 2016/05/14 v3.1 Provides the ifpdf switch | |||||
) | |||||
Package pdftexcmds Info: LuaTeX not detected. | |||||
Package pdftexcmds Info: \pdf@primitive is available. | |||||
Package pdftexcmds Info: \pdf@ifprimitive is available. | |||||
Package pdftexcmds Info: \pdfdraftmode found. | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty | |||||
Package: epstopdf-base 2016/05/15 v2.6 Base part for package epstopdf | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty | |||||
Package: grfext 2016/05/16 v1.2 Manage graphics extensions (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvdefinekeys.sty | |||||
Package: kvdefinekeys 2016/05/16 v1.4 Define keys (HO) | |||||
)) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty | |||||
Package: kvoptions 2016/05/16 v3.12 Key value format for package options (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvsetkeys.sty | |||||
Package: kvsetkeys 2016/05/16 v1.17 Key value parser (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/etexcmds.sty | |||||
Package: etexcmds 2016/05/16 v1.6 Avoid name clashes with e-TeX commands (HO) | |||||
Package etexcmds Info: Could not find \expanded. | |||||
(etexcmds) That can mean that you are not using pdfTeX 1.50 or | |||||
(etexcmds) that some package has redefined \expanded. | |||||
(etexcmds) In the latter case, load this package earlier. | |||||
))) | |||||
Package epstopdf-base Info: Redefining graphics rule for `.eps' on input line 4 | |||||
38. | |||||
Package grfext Info: Graphics extension search list: | |||||
(grfext) [.png,.pdf,.jpg,.mps,.jpeg,.jbig2,.jb2,.PNG,.PDF,.JPG,.JPE | |||||
G,.JBIG2,.JB2,.eps] | |||||
(grfext) \AppendGraphicsExtensions on input line 456. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg | |||||
File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Liv | |||||
e | |||||
)) | |||||
Package caption Info: Begin \AtBeginDocument code. | |||||
Package caption Info: End \AtBeginDocument code. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <12> on input line 11. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <8> on input line 11. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <6> on input line 11. | |||||
(./5.toc | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <10.95> on input line 3. | |||||
) | |||||
\tf@toc=\write3 | |||||
\openout3 = `5.toc'. | |||||
Overfull \hbox (11.59073pt too wide) in paragraph at lines 16--17 | |||||
\OT1/cmr/m/n/10.95 stal-la-tions. These sen-sors use ZMTrig-ger.pl (wiki.zonemi | |||||
nder.com/ZMTrigger) | |||||
[] | |||||
LaTeX Font Info: Try loading font information for OMS+cmr on input line 21. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/omscmr.fd | |||||
File: omscmr.fd 2014/09/29 v2.5h Standard LaTeX font definitions | |||||
) | |||||
LaTeX Font Info: Font shape `OMS/cmr/m/n' in size <10.95> not available | |||||
(Font) Font shape `OMS/cmsy/m/n' tried instead on input line 21. | |||||
[1 | |||||
{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}] [2] | |||||
<../pics/DSCN0207.JPG, id=14, 803.0pt x 602.25pt> | |||||
File: ../pics/DSCN0207.JPG Graphic file (type jpg) | |||||
<use ../pics/DSCN0207.JPG> | |||||
Package pdftex.def Info: ../pics/DSCN0207.JPG used on input line 53. | |||||
(pdftex.def) Requested size: 321.1943pt x 240.89572pt. | |||||
Package caption Warning: \captionsetup{type*=...} or \captionof | |||||
(caption) outside box or environment on input line 54. | |||||
See the caption package documentation for explanation. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <9> on input line 56. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <5> on input line 56. | |||||
[3 <../pics/DSCN0207.JPG>] [4] (./5.aux) ) | |||||
Here is how much of TeX's memory you used: | |||||
2602 strings out of 494945 | |||||
41501 string characters out of 6181032 | |||||
96817 words of memory out of 5000000 | |||||
5888 multiletter control sequences out of 15000+600000 | |||||
10030 words of font info for 35 fonts, out of 8000000 for 9000 | |||||
14 hyphenation exceptions out of 8191 | |||||
39i,8n,39p,657b,189s stack positions out of 5000i,500n,10000p,200000b,80000s | |||||
</usr/share/texlive/texmf-dist/fonts/ | |||||
type1/public/amsfonts/cm/cmbx10.pfb></usr/share/texlive/texmf-dist/fonts/type1/ | |||||
public/amsfonts/cm/cmbx12.pfb></usr/share/texlive/texmf-dist/fonts/type1/public | |||||
/amsfonts/cm/cmr10.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/amsfon | |||||
ts/cm/cmr12.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/c | |||||
mr6.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmr8.pfb> | |||||
</usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmr9.pfb></usr/sh | |||||
are/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy10.pfb> | |||||
Output written on 5.pdf (4 pages, 252086 bytes). | |||||
PDF statistics: | |||||
50 PDF objects out of 1000 (max. 8388607) | |||||
34 compressed objects within 1 object stream | |||||
0 named destinations out of 1000 (max. 500000) | |||||
6 words of extra memory for PDF output out of 10000 (max. 10000000) | |||||
@ -0,0 +1,76 @@ | |||||
\documentclass[11pt]{article} | |||||
%Gummi|065|=) | |||||
\usepackage{graphicx} | |||||
\usepackage{caption} | |||||
\title{\textbf{ZMHW Modector}} | |||||
\author{Steak Electronics} | |||||
\date{} | |||||
\begin{document} | |||||
\maketitle | |||||
\tableofcontents | |||||
\section{Overview} | |||||
Making and deploying a Motion Sensor for Zoneminder CCTV software installations. These sensors use ZMTrigger.pl (wiki.zoneminder.com/ZMTrigger) to activate an alarm on a camera for a period of time. The advantage of hardware motion sensors over the software detection of Zoneminder, is that the hardware motion sensors avoid some of the problems inherent in software detection, such as false positives from day-to-night, bugs, missed detections, and others. | |||||
I've tried different motion sensors. Let's start with the Infrared Laser Diode. | |||||
\section{Parts List} | |||||
\begin{itemize} | |||||
\item Arduino Uno (official recommended)(DIP recommended) | |||||
\item ENC28J60 ethernet module | |||||
\item Passive PoE adaptors for IP Cameras | |||||
\item Series 1A fuse | |||||
\item Sick WS15-D1130 Infrared Laser Diode Motion Sensor | |||||
\item General Purpose Diode (I used 1N4818 diode) (may also use transistor, per data sheet for Sick) | |||||
\item Jumper Wires | |||||
\item Copper Wire (22-26 gauge) | |||||
\item Enclosure | |||||
\item Ethernet Wire | |||||
\item (optional) Low Profile one and two gang wall outlet | |||||
\item (optional) Blank cover plate, for one and two wall gang wall outlet | |||||
\item (optional) Electrical tape (I prefer halfway decent electrical tape) | |||||
\item (optional) piezo speaker | |||||
\item (optional) extras of everything, in case anything fails | |||||
\end{itemize} | |||||
Later on we will try a different sensor. The HFS-DC06H. This sensor is a combination of an HB100 radio, with a decoding board that will read the signal and output a logic high or low. You may also want to try PIR sensors. | |||||
\subsection{Other Sensors} | |||||
\begin{itemize} | |||||
\item HFS-DC06H | |||||
\item PIR Sensor | |||||
\item Any other Laser Diode Sensor you like | |||||
\item Reflective tape | |||||
\end{itemize} | |||||
%\includegraphics[scale=0.8]{../pics/resistances.png} | |||||
%\captionof{figure}{Application Note resistance table} | |||||
\section{Work Log} | |||||
\subsection{Sick Motion Sensor} | |||||
The first tests were with the Sick diode sensor and receiver. This device is good for a doorway, where the door must be opened in order for people to pass. Putting it in the way of the door ensures that it will activate. It has a distance of at a max 15 feet or 3 meters. It is a laser type tripwire, which means it can be avoided, if someone knows where it is. | |||||
Device was assembled and using the ZMHW Modector source code. This is simply an Arduino sketch with UIPEthernet (to use the ENC28J60) (make sure CS is pin 10 on Uno). For more details see source code. Explaining the details is out of the spec of this doc. Simply put, the ENC28J60 is connected, the Sick sensor black wire is connected to Analog input 1, and a speaker is connected. | |||||
\includegraphics[scale=0.4]{../pics/DSCN0207.JPG} | |||||
\captionof{figure}{Testing the Sick IR Diode Tripwire } | |||||
Figure 1 shows two things, first off a diode connected in series with the output of the Sick sensor, and also the orange LED on the top of the sensor. The orange led will be green when there is no connection between the diodes and orange when the Diodes (or LEDs) are lined up correctly. When someone moves across the field of their vision, the orange LED will change to green.\footnote{This will later become important when installing the IR diode and receiver, as they must be lined up correctly.} | |||||
\subsection{Diode on Output of Sick Sensor} | |||||
Some IR diode / receiver pairs output a high or low. Some, like the Sick sensor, output a high or low (depending on whether you connect to white or black wire), however they are meant to be connected to a transistor, and thus if you connect it directly to a micro expecting it to go high or low, it will not. Being lazy, and seeking a quick solution, I put a 1N4819 in series with the output of the Sick sensor. | |||||
TODO: pictures showing waveforms | |||||
\footnote{This is possibly an issue of output impedance, but I will admit, at the time, I didn't bother to check.} | |||||
Using the black wire, it will be normally low and go high when motion is detected (the white wire is the opposite). If you connect to a micro it will fail to go high (why?). If you put a diode on the end in series, it will turn the normally low to a noisy normally low, and sometimes it will go between 2.5-5 volts in spikes. This allows us to use the ADC to read the Sick sensor, and avoid the use of adding a transistor in. The transistor would allow for a digitalRead to be used, but we have plenty of Analog inputs to use, so let's use one of those. | |||||
It's important to line up the emitter and receiver. If they are not lined up precisely, they will not get a sync, and the motion detection will fail. Thankfully, the diode outputs more of a cone, and less of a straight line, so some buffer is there. When the lights are dark, it is possible to see the red IR emitted if the distance is not too much. | |||||
\end{document} | |||||
@ -0,0 +1,74 @@ | |||||
\documentclass[11pt]{article} | |||||
%Gummi|065|=) | |||||
\usepackage{graphicx} | |||||
\usepackage{caption} | |||||
\title{\textbf{ZMHW Modector}} | |||||
\author{Steak Electronics} | |||||
\date{} | |||||
\begin{document} | |||||
\maketitle | |||||
\tableofcontents | |||||
\section{Overview} | |||||
Making and deploying a Motion Sensor for Zoneminder CCTV software installations. These sensors use ZMTrigger.pl (wiki.zoneminder.com/ZMTrigger) to activate an alarm on a camera for a period of time. The advantage of hardware motion sensors over the software detection of Zoneminder, is that the hardware motion sensors avoid some of the problems inherent in software detection, such as false positives from day-to-night, bugs, missed detections, and others. | |||||
I've tried different motion sensors. Let's start with the Infrared Laser Diode. | |||||
\section{Parts List} | |||||
\begin{itemize} | |||||
\item Arduino Uno (official recommended)(DIP recommended) | |||||
\item ENC28J60 ethernet module | |||||
\item Passive PoE adaptors for IP Cameras | |||||
\item Series 1A fuse | |||||
\item Sick WS15-D1130 Infrared Laser Diode Motion Sensor | |||||
\item General Purpose Diode (I used 1N4818 diode) (may also use transistor, per data sheet for Sick) | |||||
\item Jumper Wires | |||||
\item Copper Wire (22-26 gauge) | |||||
\item Enclosure | |||||
\item Ethernet Wire | |||||
\item (optional) Low Profile one and two gang wall outlet | |||||
\item (optional) Blank cover plate, for one and two wall gang wall outlet | |||||
\item (optional) Electrical tape (I prefer halfway decent electrical tape) | |||||
\item (optional) piezo speaker | |||||
\item (optional) extras of everything, in case anything fails | |||||
\end{itemize} | |||||
Later on we will try a different sensor. The HFS-DC06H. This sensor is a combination of an HB100 radio, with a decoding board that will read the signal and output a logic high or low. You may also want to try PIR sensors. | |||||
\subsection{Other Sensors} | |||||
\begin{itemize} | |||||
\item HFS-DC06H | |||||
\item PIR Sensor | |||||
\item Any other Laser Diode Sensor you like | |||||
\item Reflective tape | |||||
\end{itemize} | |||||
%\includegraphics[scale=0.8]{../pics/resistances.png} | |||||
%\captionof{figure}{Application Note resistance table} | |||||
\section{Work Log} | |||||
\subsection{Sick Motion Sensor} | |||||
The first tests were with the Sick diode sensor and receiver. This device is good for a doorway, where the door must be opened in order for people to pass. Putting it in the way of the door ensures that it will activate. It has a distance of at a max 15 feet or 3 meters. It is a laser type tripwire, which means it can be avoided, if someone knows where it is. | |||||
Device was assembled and using the ZMHW Modector source code. This is simply an Arduino sketch with UIPEthernet (to use the ENC28J60) (make sure CS is pin 10 on Uno). For more details see source code. Explaining the details is out of the spec of this doc. Simply put, the ENC28J60 is connected, the Sick sensor black wire is connected to Analog input 1, and a speaker is connected. | |||||
\includegraphics[scale=0.4]{../pics/DSCN0207.JPG} | |||||
\captionof{figure}{Testing the Sick IR Diode Tripwire } | |||||
Figure 1 shows two things, first off a diode connected in series with the output of the Sick sensor, and also the orange LED on the top of the sensor. The orange led will be green when there is no connection between the diodes and orange when the Diodes (or LEDs) are lined up correctly. When someone moves across the field of their vision, the orange LED will change to green.\footnote{This will later become important when installing the IR diode and receiver, as they must be lined up correctly.} | |||||
\subsection{Diode on Output of Sick Sensor} | |||||
Some IR diode / receiver pairs output a high or low. Some, like the Sick sensor, output a high or low (depending on whether you connect to white or black wire), however they are meant to be connected to a transistor, and thus if you connect it directly to a micro expecting it to go high or low, it will not. Being lazy, and seeking a quick solution, I put a 1N4819 in series with the output of the Sick sensor. | |||||
TODO: pictures showing waveforms | |||||
\footnote{This is possibly an issue of output impedance, but I will admit, at the time, I didn't bother to check.} | |||||
Using the black wire, it will be normally low and go high when motion is detected (the white wire is the opposite). If you connect to a micro it will fail to go high (why?). If you put a diode on the end in series, it will turn the normally low to a noisy normally low, and sometimes it will go between 2.5-5 volts in spikes. This allows us to use the ADC to read the Sick sensor, and avoid the use of adding a transistor in. The transistor would allow for a digitalRead to be used, but we have plenty of Analog inputs to use, so let's use one of those. | |||||
It's important to line up these sensors. If they are not lined up precisely, they will not get a sync, and the motion detection will fail. | |||||
\end{document} | |||||
@ -0,0 +1,6 @@ | |||||
\contentsline {section}{\numberline {1}Overview}{1} | |||||
\contentsline {section}{\numberline {2}Parts List}{1} | |||||
\contentsline {subsection}{\numberline {2.1}Other Sensors}{2} | |||||
\contentsline {section}{\numberline {3}Work Log}{2} | |||||
\contentsline {subsection}{\numberline {3.1}Sick Motion Sensor}{2} | |||||
\contentsline {subsection}{\numberline {3.2}Diode on Output of Sick Sensor}{4} |
@ -0,0 +1,9 @@ | |||||
\relax | |||||
\@writefile{toc}{\contentsline {section}{\numberline {1}Overview}{1}} | |||||
\@writefile{toc}{\contentsline {section}{\numberline {2}Parts List}{1}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {2.1}Other Sensors}{2}} | |||||
\@writefile{toc}{\contentsline {section}{\numberline {3}Work Log}{3}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.1}Sick Motion Sensor}{3}} | |||||
\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces Testing the Sick IR Diode Tripwire \relax }}{3}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.2}Diode on Output of Sick Sensor instead of Transistor (Hack)}{4}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.3}Broken ENC28J60 Module}{4}} |
@ -0,0 +1,223 @@ | |||||
This is pdfTeX, Version 3.14159265-2.6-1.40.17 (TeX Live 2016/Debian) (preloaded format=pdflatex 2019.8.17) 10 NOV 2019 23:13 | |||||
entering extended mode | |||||
restricted \write18 enabled. | |||||
%&-line parsing enabled. | |||||
**/home/layoutdev/Desktop/code/documentation_general/Electronics_Projects_2019/ | |||||
ZMHW_Modector/docs/6.tex | |||||
(/home/layoutdev/Desktop/code/documentation_general/Electronics_Projects_2019/Z | |||||
MHW_Modector/docs/6.tex | |||||
LaTeX2e <2017/01/01> patch level 3 | |||||
Babel <3.9r> and hyphenation patterns for 3 language(s) loaded. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/article.cls | |||||
Document Class: article 2014/09/29 v1.4h Standard LaTeX document class | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/size11.clo | |||||
File: size11.clo 2014/09/29 v1.4h Standard LaTeX file (size option) | |||||
) | |||||
\c@part=\count79 | |||||
\c@section=\count80 | |||||
\c@subsection=\count81 | |||||
\c@subsubsection=\count82 | |||||
\c@paragraph=\count83 | |||||
\c@subparagraph=\count84 | |||||
\c@figure=\count85 | |||||
\c@table=\count86 | |||||
\abovecaptionskip=\skip41 | |||||
\belowcaptionskip=\skip42 | |||||
\bibindent=\dimen102 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty | |||||
Package: graphicx 2014/10/28 v1.0g Enhanced LaTeX Graphics (DPC,SPQR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty | |||||
Package: keyval 2014/10/28 v1.15 key=value parser (DPC) | |||||
\KV@toks@=\toks14 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty | |||||
Package: graphics 2016/10/09 v1.0u Standard LaTeX Graphics (DPC,SPQR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty | |||||
Package: trig 2016/01/03 v1.10 sin cos tan (DPC) | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics-cfg/graphics.cfg | |||||
File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration | |||||
) | |||||
Package graphics Info: Driver file: pdftex.def on input line 99. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics-def/pdftex.def | |||||
File: pdftex.def 2017/01/12 v0.06k Graphics/color for pdfTeX | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/infwarerr.sty | |||||
Package: infwarerr 2016/05/16 v1.4 Providing info/warning/error messages (HO) | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ltxcmds.sty | |||||
Package: ltxcmds 2016/05/16 v1.23 LaTeX kernel commands for general use (HO) | |||||
) | |||||
\Gread@gobject=\count87 | |||||
)) | |||||
\Gin@req@height=\dimen103 | |||||
\Gin@req@width=\dimen104 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/caption/caption.sty | |||||
Package: caption 2016/02/21 v3.3-144 Customizing captions (AR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/caption/caption3.sty | |||||
Package: caption3 2016/05/22 v1.7-166 caption3 kernel (AR) | |||||
Package caption3 Info: TeX engine: e-TeX on input line 67. | |||||
\captionmargin=\dimen105 | |||||
\captionmargin@=\dimen106 | |||||
\captionwidth=\dimen107 | |||||
\caption@tempdima=\dimen108 | |||||
\caption@indent=\dimen109 | |||||
\caption@parindent=\dimen110 | |||||
\caption@hangindent=\dimen111 | |||||
) | |||||
\c@ContinuedFloat=\count88 | |||||
) (./6.aux) | |||||
\openout1 = `6.aux'. | |||||
LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
(/usr/share/texlive/texmf-dist/tex/context/base/mkii/supp-pdf.mkii | |||||
[Loading MPS to PDF converter (version 2006.09.02).] | |||||
\scratchcounter=\count89 | |||||
\scratchdimen=\dimen112 | |||||
\scratchbox=\box26 | |||||
\nofMPsegments=\count90 | |||||
\nofMParguments=\count91 | |||||
\everyMPshowfont=\toks15 | |||||
\MPscratchCnt=\count92 | |||||
\MPscratchDim=\dimen113 | |||||
\MPnumerator=\count93 | |||||
\makeMPintoPDFobject=\count94 | |||||
\everyMPtoPDFconversion=\toks16 | |||||
) (/usr/share/texlive/texmf-dist/tex/generic/oberdiek/pdftexcmds.sty | |||||
Package: pdftexcmds 2016/05/21 v0.22 Utility functions of pdfTeX for LuaTeX (HO | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifluatex.sty | |||||
Package: ifluatex 2016/05/16 v1.4 Provides the ifluatex switch (HO) | |||||
Package ifluatex Info: LuaTeX not detected. | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifpdf.sty | |||||
Package: ifpdf 2016/05/14 v3.1 Provides the ifpdf switch | |||||
) | |||||
Package pdftexcmds Info: LuaTeX not detected. | |||||
Package pdftexcmds Info: \pdf@primitive is available. | |||||
Package pdftexcmds Info: \pdf@ifprimitive is available. | |||||
Package pdftexcmds Info: \pdfdraftmode found. | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty | |||||
Package: epstopdf-base 2016/05/15 v2.6 Base part for package epstopdf | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty | |||||
Package: grfext 2016/05/16 v1.2 Manage graphics extensions (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvdefinekeys.sty | |||||
Package: kvdefinekeys 2016/05/16 v1.4 Define keys (HO) | |||||
)) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty | |||||
Package: kvoptions 2016/05/16 v3.12 Key value format for package options (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvsetkeys.sty | |||||
Package: kvsetkeys 2016/05/16 v1.17 Key value parser (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/etexcmds.sty | |||||
Package: etexcmds 2016/05/16 v1.6 Avoid name clashes with e-TeX commands (HO) | |||||
Package etexcmds Info: Could not find \expanded. | |||||
(etexcmds) That can mean that you are not using pdfTeX 1.50 or | |||||
(etexcmds) that some package has redefined \expanded. | |||||
(etexcmds) In the latter case, load this package earlier. | |||||
))) | |||||
Package epstopdf-base Info: Redefining graphics rule for `.eps' on input line 4 | |||||
38. | |||||
Package grfext Info: Graphics extension search list: | |||||
(grfext) [.png,.pdf,.jpg,.mps,.jpeg,.jbig2,.jb2,.PNG,.PDF,.JPG,.JPE | |||||
G,.JBIG2,.JB2,.eps] | |||||
(grfext) \AppendGraphicsExtensions on input line 456. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg | |||||
File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Liv | |||||
e | |||||
)) | |||||
Package caption Info: Begin \AtBeginDocument code. | |||||
Package caption Info: End \AtBeginDocument code. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <12> on input line 11. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <8> on input line 11. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <6> on input line 11. | |||||
(./6.toc | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <10.95> on input line 3. | |||||
) | |||||
\tf@toc=\write3 | |||||
\openout3 = `6.toc'. | |||||
Overfull \hbox (11.59073pt too wide) in paragraph at lines 16--17 | |||||
\OT1/cmr/m/n/10.95 stal-la-tions. These sen-sors use ZMTrig-ger.pl (wiki.zonemi | |||||
nder.com/ZMTrigger) | |||||
[] | |||||
LaTeX Font Info: Try loading font information for OMS+cmr on input line 21. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/omscmr.fd | |||||
File: omscmr.fd 2014/09/29 v2.5h Standard LaTeX font definitions | |||||
) | |||||
LaTeX Font Info: Font shape `OMS/cmr/m/n' in size <10.95> not available | |||||
(Font) Font shape `OMS/cmsy/m/n' tried instead on input line 21. | |||||
[1 | |||||
{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}] [2] | |||||
<../pics/DSCN0207.JPG, id=14, 803.0pt x 602.25pt> | |||||
File: ../pics/DSCN0207.JPG Graphic file (type jpg) | |||||
<use ../pics/DSCN0207.JPG> | |||||
Package pdftex.def Info: ../pics/DSCN0207.JPG used on input line 53. | |||||
(pdftex.def) Requested size: 321.1943pt x 240.89572pt. | |||||
Package caption Warning: \captionsetup{type*=...} or \captionof | |||||
(caption) outside box or environment on input line 54. | |||||
See the caption package documentation for explanation. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <9> on input line 56. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <5> on input line 56. | |||||
[3 <../pics/DSCN0207.JPG>] [4] (./6.aux) ) | |||||
Here is how much of TeX's memory you used: | |||||
2602 strings out of 494945 | |||||
41501 string characters out of 6181032 | |||||
96817 words of memory out of 5000000 | |||||
5888 multiletter control sequences out of 15000+600000 | |||||
10030 words of font info for 35 fonts, out of 8000000 for 9000 | |||||
14 hyphenation exceptions out of 8191 | |||||
39i,8n,39p,657b,189s stack positions out of 5000i,500n,10000p,200000b,80000s | |||||
</usr/share/texlive/texmf-dist/fonts/ | |||||
type1/public/amsfonts/cm/cmbx10.pfb></usr/share/texlive/texmf-dist/fonts/type1/ | |||||
public/amsfonts/cm/cmbx12.pfb></usr/share/texlive/texmf-dist/fonts/type1/public | |||||
/amsfonts/cm/cmr10.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/amsfon | |||||
ts/cm/cmr12.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/c | |||||
mr6.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmr8.pfb> | |||||
</usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmr9.pfb></usr/sh | |||||
are/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy10.pfb> | |||||
Output written on 6.pdf (4 pages, 254125 bytes). | |||||
PDF statistics: | |||||
50 PDF objects out of 1000 (max. 8388607) | |||||
34 compressed objects within 1 object stream | |||||
0 named destinations out of 1000 (max. 500000) | |||||
6 words of extra memory for PDF output out of 10000 (max. 10000000) | |||||
@ -0,0 +1,79 @@ | |||||
\documentclass[11pt]{article} | |||||
%Gummi|065|=) | |||||
\usepackage{graphicx} | |||||
\usepackage{caption} | |||||
\title{\textbf{ZMHW Modector}} | |||||
\author{Steak Electronics} | |||||
\date{} | |||||
\begin{document} | |||||
\maketitle | |||||
\tableofcontents | |||||
\section{Overview} | |||||
Making and deploying a Motion Sensor for Zoneminder CCTV software installations. These sensors use ZMTrigger.pl (wiki.zoneminder.com/ZMTrigger) to activate an alarm on a camera for a period of time. The advantage of hardware motion sensors over the software detection of Zoneminder, is that the hardware motion sensors avoid some of the problems inherent in software detection, such as false positives from day-to-night, bugs, missed detections, and others. | |||||
I've tried different motion sensors. Let's start with the Infrared Laser Diode. | |||||
\section{Parts List} | |||||
\begin{itemize} | |||||
\item Arduino Uno (official recommended)(DIP recommended) | |||||
\item ENC28J60 ethernet module | |||||
\item Passive PoE adaptors for IP Cameras | |||||
\item Series 1A fuse | |||||
\item Sick WS15-D1130 Infrared Laser Diode Motion Sensor | |||||
\item General Purpose Diode (I used 1N4818 diode) (may also use transistor, per data sheet for Sick) | |||||
\item Jumper Wires | |||||
\item Copper Wire (22-26 gauge) | |||||
\item Enclosure | |||||
\item Ethernet Wire | |||||
\item (optional) Low Profile one and two gang wall outlet | |||||
\item (optional) Blank cover plate, for one and two wall gang wall outlet | |||||
\item (optional) Electrical tape (I prefer halfway decent electrical tape) | |||||
\item (optional) piezo speaker | |||||
\item (optional) extras of everything, in case anything fails | |||||
\end{itemize} | |||||
Later on we will try a different sensor. The HFS-DC06H. This sensor is a combination of an HB100 radio, with a decoding board that will read the signal and output a logic high or low. You may also want to try PIR sensors. | |||||
\subsection{Other Sensors} | |||||
\begin{itemize} | |||||
\item HFS-DC06H | |||||
\item PIR Sensor | |||||
\item Any other Laser Diode Sensor you like | |||||
\item Reflective tape | |||||
\end{itemize} | |||||
%\includegraphics[scale=0.8]{../pics/resistances.png} | |||||
%\captionof{figure}{Application Note resistance table} | |||||
\section{Work Log} | |||||
\subsection{Sick Motion Sensor} | |||||
The first tests were with the Sick diode sensor and receiver. This device is good for a doorway, where the door must be opened in order for people to pass. Putting it in the way of the door ensures that it will activate. It has a distance of at a max 15 feet or 3 meters. It is a laser type tripwire, which means it can be avoided, if someone knows where it is. | |||||
Device was assembled and using the ZMHW Modector source code. This is simply an Arduino sketch with UIPEthernet (to use the ENC28J60) (make sure CS is pin 10 on Uno). For more details see source code. Explaining the details is out of the spec of this doc. Simply put, the ENC28J60 is connected, the Sick sensor black wire is connected to Analog input 1, and a speaker is connected. | |||||
\includegraphics[scale=0.4]{../pics/DSCN0207.JPG} | |||||
\captionof{figure}{Testing the Sick IR Diode Tripwire } | |||||
Figure 1 shows two things, first off a diode connected in series with the output of the Sick sensor, and also the orange LED on the top of the sensor. The orange led will be green when there is no connection between the diodes and orange when the Diodes (or LEDs) are lined up correctly. When someone moves across the field of their vision, the orange LED will change to green.\footnote{This will later become important when installing the IR diode and receiver, as they must be lined up correctly.} | |||||
\subsection{Diode on Output of Sick Sensor instead of Transistor (Hack)} | |||||
Some IR diode / receiver pairs output a high or low. Some, like the Sick sensor, output a high or low (depending on whether you connect to white or black wire), however they are meant to be connected to a transistor, and thus if you connect it directly to a micro expecting it to go high or low, it will not. Being lazy, and seeking a quick solution, I put a 1N4819 in series with the output of the Sick sensor. | |||||
TODO: pictures showing waveforms | |||||
\footnote{This is possibly an issue of output impedance, but I will admit, at the time, I didn't bother to check.} | |||||
Using the black wire, it will be normally low and go high when motion is detected (the white wire is the opposite). If you connect to a micro it will fail to go high (why?). If you put a diode on the end in series, it will turn the normally low to a noisy normally low, and sometimes it will go between 2.5-5 volts in spikes. This allows us to use the ADC to read the Sick sensor, and avoid the use of adding a transistor in. The transistor would allow for a digitalRead to be used, but we have plenty of Analog inputs to use, so let's use one of those. | |||||
It's important to line up the emitter and receiver. If they are not lined up precisely, they will not get a sync, and the motion detection will fail. Thankfully, the diode outputs more of a cone, and less of a straight line, so some buffer is there. When the lights are dark, it is possible to see the red IR emitted if the distance is not too much. | |||||
\subsection{Broken ENC28J60 Module} | |||||
During my testing, I suddenly was unable to get an IP address. I checked the testsuite sketches, which didn't work, then began tearing down my setup, testing another Arduino and ENC module. It turned out, the ENC28J60 module failed on me. Make sure to buy backups. | |||||
\end{document} | |||||
@ -0,0 +1,76 @@ | |||||
\documentclass[11pt]{article} | |||||
%Gummi|065|=) | |||||
\usepackage{graphicx} | |||||
\usepackage{caption} | |||||
\title{\textbf{ZMHW Modector}} | |||||
\author{Steak Electronics} | |||||
\date{} | |||||
\begin{document} | |||||
\maketitle | |||||
\tableofcontents | |||||
\section{Overview} | |||||
Making and deploying a Motion Sensor for Zoneminder CCTV software installations. These sensors use ZMTrigger.pl (wiki.zoneminder.com/ZMTrigger) to activate an alarm on a camera for a period of time. The advantage of hardware motion sensors over the software detection of Zoneminder, is that the hardware motion sensors avoid some of the problems inherent in software detection, such as false positives from day-to-night, bugs, missed detections, and others. | |||||
I've tried different motion sensors. Let's start with the Infrared Laser Diode. | |||||
\section{Parts List} | |||||
\begin{itemize} | |||||
\item Arduino Uno (official recommended)(DIP recommended) | |||||
\item ENC28J60 ethernet module | |||||
\item Passive PoE adaptors for IP Cameras | |||||
\item Series 1A fuse | |||||
\item Sick WS15-D1130 Infrared Laser Diode Motion Sensor | |||||
\item General Purpose Diode (I used 1N4818 diode) (may also use transistor, per data sheet for Sick) | |||||
\item Jumper Wires | |||||
\item Copper Wire (22-26 gauge) | |||||
\item Enclosure | |||||
\item Ethernet Wire | |||||
\item (optional) Low Profile one and two gang wall outlet | |||||
\item (optional) Blank cover plate, for one and two wall gang wall outlet | |||||
\item (optional) Electrical tape (I prefer halfway decent electrical tape) | |||||
\item (optional) piezo speaker | |||||
\item (optional) extras of everything, in case anything fails | |||||
\end{itemize} | |||||
Later on we will try a different sensor. The HFS-DC06H. This sensor is a combination of an HB100 radio, with a decoding board that will read the signal and output a logic high or low. You may also want to try PIR sensors. | |||||
\subsection{Other Sensors} | |||||
\begin{itemize} | |||||
\item HFS-DC06H | |||||
\item PIR Sensor | |||||
\item Any other Laser Diode Sensor you like | |||||
\item Reflective tape | |||||
\end{itemize} | |||||
%\includegraphics[scale=0.8]{../pics/resistances.png} | |||||
%\captionof{figure}{Application Note resistance table} | |||||
\section{Work Log} | |||||
\subsection{Sick Motion Sensor} | |||||
The first tests were with the Sick diode sensor and receiver. This device is good for a doorway, where the door must be opened in order for people to pass. Putting it in the way of the door ensures that it will activate. It has a distance of at a max 15 feet or 3 meters. It is a laser type tripwire, which means it can be avoided, if someone knows where it is. | |||||
Device was assembled and using the ZMHW Modector source code. This is simply an Arduino sketch with UIPEthernet (to use the ENC28J60) (make sure CS is pin 10 on Uno). For more details see source code. Explaining the details is out of the spec of this doc. Simply put, the ENC28J60 is connected, the Sick sensor black wire is connected to Analog input 1, and a speaker is connected. | |||||
\includegraphics[scale=0.4]{../pics/DSCN0207.JPG} | |||||
\captionof{figure}{Testing the Sick IR Diode Tripwire } | |||||
Figure 1 shows two things, first off a diode connected in series with the output of the Sick sensor, and also the orange LED on the top of the sensor. The orange led will be green when there is no connection between the diodes and orange when the Diodes (or LEDs) are lined up correctly. When someone moves across the field of their vision, the orange LED will change to green.\footnote{This will later become important when installing the IR diode and receiver, as they must be lined up correctly.} | |||||
\subsection{Diode on Output of Sick Sensor} | |||||
Some IR diode / receiver pairs output a high or low. Some, like the Sick sensor, output a high or low (depending on whether you connect to white or black wire), however they are meant to be connected to a transistor, and thus if you connect it directly to a micro expecting it to go high or low, it will not. Being lazy, and seeking a quick solution, I put a 1N4819 in series with the output of the Sick sensor. | |||||
TODO: pictures showing waveforms | |||||
\footnote{This is possibly an issue of output impedance, but I will admit, at the time, I didn't bother to check.} | |||||
Using the black wire, it will be normally low and go high when motion is detected (the white wire is the opposite). If you connect to a micro it will fail to go high (why?). If you put a diode on the end in series, it will turn the normally low to a noisy normally low, and sometimes it will go between 2.5-5 volts in spikes. This allows us to use the ADC to read the Sick sensor, and avoid the use of adding a transistor in. The transistor would allow for a digitalRead to be used, but we have plenty of Analog inputs to use, so let's use one of those. | |||||
It's important to line up the emitter and receiver. If they are not lined up precisely, they will not get a sync, and the motion detection will fail. Thankfully, the diode outputs more of a cone, and less of a straight line, so some buffer is there. When the lights are dark, it is possible to see the red IR emitted if the distance is not too much. | |||||
\end{document} | |||||
@ -0,0 +1,7 @@ | |||||
\contentsline {section}{\numberline {1}Overview}{1} | |||||
\contentsline {section}{\numberline {2}Parts List}{1} | |||||
\contentsline {subsection}{\numberline {2.1}Other Sensors}{2} | |||||
\contentsline {section}{\numberline {3}Work Log}{3} | |||||
\contentsline {subsection}{\numberline {3.1}Sick Motion Sensor}{3} | |||||
\contentsline {subsection}{\numberline {3.2}Diode on Output of Sick Sensor instead of Transistor (Hack)}{4} | |||||
\contentsline {subsection}{\numberline {3.3}Broken ENC28J60 Module}{4} |
@ -0,0 +1,81 @@ | |||||
\documentclass[11pt]{article} | |||||
%Gummi|065|=) | |||||
\usepackage{graphicx} | |||||
\usepackage{caption} | |||||
\title{\textbf{ZMHW Modector}} | |||||
\author{Steak Electronics} | |||||
\date{} | |||||
\begin{document} | |||||
\maketitle | |||||
\tableofcontents | |||||
\section{Overview} | |||||
Making and deploying a Motion Sensor for Zoneminder CCTV software installations. These sensors use ZMTrigger.pl (wiki.zoneminder.com/ZMTrigger) to activate an alarm on a camera for a period of time. The advantage of hardware motion sensors over the software detection of Zoneminder, is that the hardware motion sensors avoid some of the problems inherent in software detection, such as false positives from day-to-night, bugs, missed detections, and others. | |||||
I've tried different motion sensors. Let's start with the Infrared Laser Diode. | |||||
\section{Parts List} | |||||
\begin{itemize} | |||||
\item Arduino Uno (official recommended)(DIP recommended) | |||||
\item ENC28J60 ethernet module | |||||
\item Passive PoE adaptors for IP Cameras | |||||
\item Series 1A fuse | |||||
\item Sick WS15-D1130 Infrared Laser Diode Motion Sensor | |||||
\item General Purpose Diode (I used 1N4818 diode) (may also use transistor, per data sheet for Sick) | |||||
\item Jumper Wires | |||||
\item Copper Wire (22-26 gauge) | |||||
\item Enclosure | |||||
\item Ethernet Wire | |||||
\item (optional) Low Profile one and two gang wall outlet | |||||
\item (optional) Blank cover plate, for one and two wall gang wall outlet | |||||
\item (optional) Electrical tape (I prefer halfway decent electrical tape) | |||||
\item (optional) piezo speaker | |||||
\item (optional) extras of everything, in case anything fails | |||||
\end{itemize} | |||||
Later on we will try a different sensor. The HFS-DC06H. This sensor is a combination of an HB100 radio, with a decoding board that will read the signal and output a logic high or low. You may also want to try PIR sensors. | |||||
\subsection{Other Sensors} | |||||
\begin{itemize} | |||||
\item HFS-DC06H | |||||
\item PIR Sensor | |||||
\item Any other Laser Diode Sensor you like | |||||
\item Reflective tape | |||||
\end{itemize} | |||||
%\includegraphics[scale=0.8]{../pics/resistances.png} | |||||
%\captionof{figure}{Application Note resistance table} | |||||
\section{Work Log} | |||||
\subsection{Sick Motion Sensor} | |||||
The first tests were with the Sick diode sensor and receiver. This device is good for a doorway, where the door must be opened in order for people to pass. Putting it in the way of the door ensures that it will activate. It has a distance of at a max 15 feet or 3 meters. It is a laser type tripwire, which means it can be avoided, if someone knows where it is. | |||||
Device was assembled and using the ZMHW Modector source code. This is simply an Arduino sketch with UIPEthernet (to use the ENC28J60) (make sure CS is pin 10 on Uno). For more details see source code. Explaining the details is out of the spec of this doc. Simply put, the ENC28J60 is connected, the Sick sensor black wire is connected to Analog input 1, and a speaker is connected. | |||||
\includegraphics[scale=0.4]{../pics/DSCN0207.JPG} | |||||
\captionof{figure}{Testing the Sick IR Diode Tripwire } | |||||
Figure 1 shows two things, first off a diode connected in series with the output of the Sick sensor, and also the orange LED on the top of the sensor. The orange led will be green when there is no connection between the diodes and orange when the Diodes (or LEDs) are lined up correctly. When someone moves across the field of their vision, the orange LED will change to green.\footnote{This will later become important when installing the IR diode and receiver, as they must be lined up correctly.} | |||||
\subsection{Diode on Output of Sick Sensor instead of Transistor (Hack)} | |||||
Some IR diode / receiver pairs output a high or low. Some, like the Sick sensor, output a high or low (depending on whether you connect to white or black wire), however they are meant to be connected to a transistor, and thus if you connect it directly to a micro expecting it to go high or low, it will not. Being lazy, and seeking a quick solution, I put a 1N4819 in series with the output of the Sick sensor. | |||||
TODO: pictures showing waveforms | |||||
\footnote{This is possibly an issue of output impedance, but I will admit, at the time, I didn't bother to check.} | |||||
Using the black wire, it will be normally low and go high when motion is detected (the white wire is the opposite). If you connect to a micro it will fail to go high (why?). If you put a diode on the end in series, it will turn the normally low to a noisy normally low, and sometimes it will go between 2.5-5 volts in spikes. This allows us to use the ADC to read the Sick sensor, and avoid the use of adding a transistor in. The transistor would allow for a digitalRead to be used, but we have plenty of Analog inputs to use, so let's use one of those. | |||||
It's important to line up the emitter and receiver. If they are not lined up precisely, they will not get a sync, and the motion detection will fail. Thankfully, the diode outputs more of a cone, and less of a straight line, so some buffer is there. When the lights are dark, it is possible to see the red IR emitted if the distance is not too much. | |||||
\subsection{Broken ENC28J60 Module} | |||||
During my testing, I suddenly was unable to get an IP address. I checked the testsuite sketches, which didn't work, then began tearing down my setup, testing another Arduino and ENC module. It turned out, the ENC28J60 module failed on me. Make sure to buy backups. | |||||
\subsection{Installation Log in Pictures} | |||||
Here is an overview of what installing this in the wall might look like. | |||||
\end{document} | |||||
@ -0,0 +1,10 @@ | |||||
\relax | |||||
\@writefile{toc}{\contentsline {section}{\numberline {1}Overview}{1}} | |||||
\@writefile{toc}{\contentsline {section}{\numberline {2}Parts List}{1}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {2.1}Other Sensors}{2}} | |||||
\@writefile{toc}{\contentsline {section}{\numberline {3}Work Log}{2}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.1}Sick Motion Sensor}{2}} | |||||
\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces Testing the Sick IR Diode Tripwire \relax }}{3}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.2}Diode on Output of Sick Sensor instead of Transistor (Hack)}{3}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.3}Broken ENC28J60 Module}{4}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.4}Installation Log in Pictures}{4}} |
@ -0,0 +1,222 @@ | |||||
This is pdfTeX, Version 3.14159265-2.6-1.40.17 (TeX Live 2016/Debian) (preloaded format=pdflatex 2019.8.17) 10 NOV 2019 23:14 | |||||
entering extended mode | |||||
restricted \write18 enabled. | |||||
%&-line parsing enabled. | |||||
**/home/layoutdev/Desktop/code/documentation_general/Electronics_Projects_2019/ | |||||
ZMHW_Modector/docs/7,tex | |||||
(/home/layoutdev/Desktop/code/documentation_general/Electronics_Projects_2019/Z | |||||
MHW_Modector/docs/7,tex | |||||
LaTeX2e <2017/01/01> patch level 3 | |||||
Babel <3.9r> and hyphenation patterns for 3 language(s) loaded. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/article.cls | |||||
Document Class: article 2014/09/29 v1.4h Standard LaTeX document class | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/size11.clo | |||||
File: size11.clo 2014/09/29 v1.4h Standard LaTeX file (size option) | |||||
) | |||||
\c@part=\count79 | |||||
\c@section=\count80 | |||||
\c@subsection=\count81 | |||||
\c@subsubsection=\count82 | |||||
\c@paragraph=\count83 | |||||
\c@subparagraph=\count84 | |||||
\c@figure=\count85 | |||||
\c@table=\count86 | |||||
\abovecaptionskip=\skip41 | |||||
\belowcaptionskip=\skip42 | |||||
\bibindent=\dimen102 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty | |||||
Package: graphicx 2014/10/28 v1.0g Enhanced LaTeX Graphics (DPC,SPQR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty | |||||
Package: keyval 2014/10/28 v1.15 key=value parser (DPC) | |||||
\KV@toks@=\toks14 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty | |||||
Package: graphics 2016/10/09 v1.0u Standard LaTeX Graphics (DPC,SPQR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty | |||||
Package: trig 2016/01/03 v1.10 sin cos tan (DPC) | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics-cfg/graphics.cfg | |||||
File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration | |||||
) | |||||
Package graphics Info: Driver file: pdftex.def on input line 99. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics-def/pdftex.def | |||||
File: pdftex.def 2017/01/12 v0.06k Graphics/color for pdfTeX | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/infwarerr.sty | |||||
Package: infwarerr 2016/05/16 v1.4 Providing info/warning/error messages (HO) | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ltxcmds.sty | |||||
Package: ltxcmds 2016/05/16 v1.23 LaTeX kernel commands for general use (HO) | |||||
) | |||||
\Gread@gobject=\count87 | |||||
)) | |||||
\Gin@req@height=\dimen103 | |||||
\Gin@req@width=\dimen104 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/caption/caption.sty | |||||
Package: caption 2016/02/21 v3.3-144 Customizing captions (AR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/caption/caption3.sty | |||||
Package: caption3 2016/05/22 v1.7-166 caption3 kernel (AR) | |||||
Package caption3 Info: TeX engine: e-TeX on input line 67. | |||||
\captionmargin=\dimen105 | |||||
\captionmargin@=\dimen106 | |||||
\captionwidth=\dimen107 | |||||
\caption@tempdima=\dimen108 | |||||
\caption@indent=\dimen109 | |||||
\caption@parindent=\dimen110 | |||||
\caption@hangindent=\dimen111 | |||||
) | |||||
\c@ContinuedFloat=\count88 | |||||
) | |||||
No file 7,tex.aux. | |||||
\openout1 = `7,tex.aux'. | |||||
LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
(/usr/share/texlive/texmf-dist/tex/context/base/mkii/supp-pdf.mkii | |||||
[Loading MPS to PDF converter (version 2006.09.02).] | |||||
\scratchcounter=\count89 | |||||
\scratchdimen=\dimen112 | |||||
\scratchbox=\box26 | |||||
\nofMPsegments=\count90 | |||||
\nofMParguments=\count91 | |||||
\everyMPshowfont=\toks15 | |||||
\MPscratchCnt=\count92 | |||||
\MPscratchDim=\dimen113 | |||||
\MPnumerator=\count93 | |||||
\makeMPintoPDFobject=\count94 | |||||
\everyMPtoPDFconversion=\toks16 | |||||
) (/usr/share/texlive/texmf-dist/tex/generic/oberdiek/pdftexcmds.sty | |||||
Package: pdftexcmds 2016/05/21 v0.22 Utility functions of pdfTeX for LuaTeX (HO | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifluatex.sty | |||||
Package: ifluatex 2016/05/16 v1.4 Provides the ifluatex switch (HO) | |||||
Package ifluatex Info: LuaTeX not detected. | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifpdf.sty | |||||
Package: ifpdf 2016/05/14 v3.1 Provides the ifpdf switch | |||||
) | |||||
Package pdftexcmds Info: LuaTeX not detected. | |||||
Package pdftexcmds Info: \pdf@primitive is available. | |||||
Package pdftexcmds Info: \pdf@ifprimitive is available. | |||||
Package pdftexcmds Info: \pdfdraftmode found. | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty | |||||
Package: epstopdf-base 2016/05/15 v2.6 Base part for package epstopdf | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty | |||||
Package: grfext 2016/05/16 v1.2 Manage graphics extensions (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvdefinekeys.sty | |||||
Package: kvdefinekeys 2016/05/16 v1.4 Define keys (HO) | |||||
)) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty | |||||
Package: kvoptions 2016/05/16 v3.12 Key value format for package options (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvsetkeys.sty | |||||
Package: kvsetkeys 2016/05/16 v1.17 Key value parser (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/etexcmds.sty | |||||
Package: etexcmds 2016/05/16 v1.6 Avoid name clashes with e-TeX commands (HO) | |||||
Package etexcmds Info: Could not find \expanded. | |||||
(etexcmds) That can mean that you are not using pdfTeX 1.50 or | |||||
(etexcmds) that some package has redefined \expanded. | |||||
(etexcmds) In the latter case, load this package earlier. | |||||
))) | |||||
Package epstopdf-base Info: Redefining graphics rule for `.eps' on input line 4 | |||||
38. | |||||
Package grfext Info: Graphics extension search list: | |||||
(grfext) [.png,.pdf,.jpg,.mps,.jpeg,.jbig2,.jb2,.PNG,.PDF,.JPG,.JPE | |||||
G,.JBIG2,.JB2,.eps] | |||||
(grfext) \AppendGraphicsExtensions on input line 456. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg | |||||
File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Liv | |||||
e | |||||
)) | |||||
Package caption Info: Begin \AtBeginDocument code. | |||||
Package caption Info: End \AtBeginDocument code. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <12> on input line 11. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <8> on input line 11. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <6> on input line 11. | |||||
No file 7,tex.toc. | |||||
\tf@toc=\write3 | |||||
\openout3 = `7,tex.toc'. | |||||
Overfull \hbox (11.59073pt too wide) in paragraph at lines 16--17 | |||||
\OT1/cmr/m/n/10.95 stal-la-tions. These sen-sors use ZMTrig-ger.pl (wiki.zonemi | |||||
nder.com/ZMTrigger) | |||||
[] | |||||
LaTeX Font Info: Try loading font information for OMS+cmr on input line 21. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/omscmr.fd | |||||
File: omscmr.fd 2014/09/29 v2.5h Standard LaTeX font definitions | |||||
) | |||||
LaTeX Font Info: Font shape `OMS/cmr/m/n' in size <10.95> not available | |||||
(Font) Font shape `OMS/cmsy/m/n' tried instead on input line 21. | |||||
[1 | |||||
{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}] | |||||
<../pics/DSCN0207.JPG, id=10, 803.0pt x 602.25pt> | |||||
File: ../pics/DSCN0207.JPG Graphic file (type jpg) | |||||
<use ../pics/DSCN0207.JPG> | |||||
Package pdftex.def Info: ../pics/DSCN0207.JPG used on input line 53. | |||||
(pdftex.def) Requested size: 321.1943pt x 240.89572pt. | |||||
Package caption Warning: \captionsetup{type*=...} or \captionof | |||||
(caption) outside box or environment on input line 54. | |||||
See the caption package documentation for explanation. | |||||
[2] | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <10.95> on input line 56. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <9> on input line 56. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <5> on input line 56. | |||||
[3 <../pics/DSCN0207.JPG>] [4] (./7,tex.aux) ) | |||||
Here is how much of TeX's memory you used: | |||||
2596 strings out of 494945 | |||||
41473 string characters out of 6181032 | |||||
96817 words of memory out of 5000000 | |||||
5887 multiletter control sequences out of 15000+600000 | |||||
9722 words of font info for 34 fonts, out of 8000000 for 9000 | |||||
14 hyphenation exceptions out of 8191 | |||||
39i,8n,39p,657b,192s stack positions out of 5000i,500n,10000p,200000b,80000s | |||||
</usr/share/texlive/texmf-dist/f | |||||
onts/type1/public/amsfonts/cm/cmbx12.pfb></usr/share/texlive/texmf-dist/fonts/t | |||||
ype1/public/amsfonts/cm/cmr10.pfb></usr/share/texlive/texmf-dist/fonts/type1/pu | |||||
blic/amsfonts/cm/cmr12.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/am | |||||
sfonts/cm/cmr6.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/c | |||||
m/cmr8.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmr9.p | |||||
fb></usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy10.pfb> | |||||
Output written on 7,tex.pdf (4 pages, 242068 bytes). | |||||
PDF statistics: | |||||
46 PDF objects out of 1000 (max. 8388607) | |||||
31 compressed objects within 1 object stream | |||||
0 named destinations out of 1000 (max. 500000) | |||||
6 words of extra memory for PDF output out of 10000 (max. 10000000) | |||||
@ -0,0 +1,8 @@ | |||||
\contentsline {section}{\numberline {1}Overview}{1} | |||||
\contentsline {section}{\numberline {2}Parts List}{1} | |||||
\contentsline {subsection}{\numberline {2.1}Other Sensors}{2} | |||||
\contentsline {section}{\numberline {3}Work Log}{2} | |||||
\contentsline {subsection}{\numberline {3.1}Sick Motion Sensor}{2} | |||||
\contentsline {subsection}{\numberline {3.2}Diode on Output of Sick Sensor instead of Transistor (Hack)}{3} | |||||
\contentsline {subsection}{\numberline {3.3}Broken ENC28J60 Module}{4} | |||||
\contentsline {subsection}{\numberline {3.4}Installation Log in Pictures}{4} |
@ -0,0 +1,15 @@ | |||||
\relax | |||||
\@writefile{toc}{\contentsline {section}{\numberline {1}Overview}{1}} | |||||
\@writefile{toc}{\contentsline {section}{\numberline {2}Parts List}{1}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {2.1}Other Sensors}{2}} | |||||
\@writefile{toc}{\contentsline {section}{\numberline {3}Work Log}{3}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.1}Sick Motion Sensor}{3}} | |||||
\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces Testing the Sick IR Diode Tripwire \relax }}{3}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.2}Diode on Output of Sick Sensor instead of Transistor (Hack)}{4}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.3}Broken ENC28J60 Module}{4}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.4}Installation Log in Pictures}{4}} | |||||
\@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces \relax }}{5}} | |||||
\@writefile{lof}{\contentsline {figure}{\numberline {3}{\ignorespaces \relax }}{5}} | |||||
\@writefile{lof}{\contentsline {figure}{\numberline {4}{\ignorespaces \relax }}{5}} | |||||
\@writefile{lof}{\contentsline {figure}{\numberline {5}{\ignorespaces Part 1 of sensor. By mounting it on the right side of a project box, we can get a 90 degree angle.\relax }}{6}} | |||||
\@writefile{lof}{\contentsline {figure}{\numberline {6}{\ignorespaces Arduino and Part 2 of sensor. Lined up with the other part.\relax }}{6}} |
@ -0,0 +1,256 @@ | |||||
This is pdfTeX, Version 3.14159265-2.6-1.40.17 (TeX Live 2016/Debian) (preloaded format=pdflatex 2019.8.17) 10 NOV 2019 23:58 | |||||
entering extended mode | |||||
restricted \write18 enabled. | |||||
%&-line parsing enabled. | |||||
**/home/layoutdev/Desktop/code/documentation_general/Electronics_Projects_2019/ | |||||
ZMHW_Modector/docs/7.tex | |||||
(/home/layoutdev/Desktop/code/documentation_general/Electronics_Projects_2019/Z | |||||
MHW_Modector/docs/7.tex | |||||
LaTeX2e <2017/01/01> patch level 3 | |||||
Babel <3.9r> and hyphenation patterns for 3 language(s) loaded. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/article.cls | |||||
Document Class: article 2014/09/29 v1.4h Standard LaTeX document class | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/size11.clo | |||||
File: size11.clo 2014/09/29 v1.4h Standard LaTeX file (size option) | |||||
) | |||||
\c@part=\count79 | |||||
\c@section=\count80 | |||||
\c@subsection=\count81 | |||||
\c@subsubsection=\count82 | |||||
\c@paragraph=\count83 | |||||
\c@subparagraph=\count84 | |||||
\c@figure=\count85 | |||||
\c@table=\count86 | |||||
\abovecaptionskip=\skip41 | |||||
\belowcaptionskip=\skip42 | |||||
\bibindent=\dimen102 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty | |||||
Package: graphicx 2014/10/28 v1.0g Enhanced LaTeX Graphics (DPC,SPQR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty | |||||
Package: keyval 2014/10/28 v1.15 key=value parser (DPC) | |||||
\KV@toks@=\toks14 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty | |||||
Package: graphics 2016/10/09 v1.0u Standard LaTeX Graphics (DPC,SPQR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty | |||||
Package: trig 2016/01/03 v1.10 sin cos tan (DPC) | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics-cfg/graphics.cfg | |||||
File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration | |||||
) | |||||
Package graphics Info: Driver file: pdftex.def on input line 99. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics-def/pdftex.def | |||||
File: pdftex.def 2017/01/12 v0.06k Graphics/color for pdfTeX | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/infwarerr.sty | |||||
Package: infwarerr 2016/05/16 v1.4 Providing info/warning/error messages (HO) | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ltxcmds.sty | |||||
Package: ltxcmds 2016/05/16 v1.23 LaTeX kernel commands for general use (HO) | |||||
) | |||||
\Gread@gobject=\count87 | |||||
)) | |||||
\Gin@req@height=\dimen103 | |||||
\Gin@req@width=\dimen104 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/caption/caption.sty | |||||
Package: caption 2016/02/21 v3.3-144 Customizing captions (AR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/caption/caption3.sty | |||||
Package: caption3 2016/05/22 v1.7-166 caption3 kernel (AR) | |||||
Package caption3 Info: TeX engine: e-TeX on input line 67. | |||||
\captionmargin=\dimen105 | |||||
\captionmargin@=\dimen106 | |||||
\captionwidth=\dimen107 | |||||
\caption@tempdima=\dimen108 | |||||
\caption@indent=\dimen109 | |||||
\caption@parindent=\dimen110 | |||||
\caption@hangindent=\dimen111 | |||||
) | |||||
\c@ContinuedFloat=\count88 | |||||
) (./7.aux) | |||||
\openout1 = `7.aux'. | |||||
LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
(/usr/share/texlive/texmf-dist/tex/context/base/mkii/supp-pdf.mkii | |||||
[Loading MPS to PDF converter (version 2006.09.02).] | |||||
\scratchcounter=\count89 | |||||
\scratchdimen=\dimen112 | |||||
\scratchbox=\box26 | |||||
\nofMPsegments=\count90 | |||||
\nofMParguments=\count91 | |||||
\everyMPshowfont=\toks15 | |||||
\MPscratchCnt=\count92 | |||||
\MPscratchDim=\dimen113 | |||||
\MPnumerator=\count93 | |||||
\makeMPintoPDFobject=\count94 | |||||
\everyMPtoPDFconversion=\toks16 | |||||
) (/usr/share/texlive/texmf-dist/tex/generic/oberdiek/pdftexcmds.sty | |||||
Package: pdftexcmds 2016/05/21 v0.22 Utility functions of pdfTeX for LuaTeX (HO | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifluatex.sty | |||||
Package: ifluatex 2016/05/16 v1.4 Provides the ifluatex switch (HO) | |||||
Package ifluatex Info: LuaTeX not detected. | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifpdf.sty | |||||
Package: ifpdf 2016/05/14 v3.1 Provides the ifpdf switch | |||||
) | |||||
Package pdftexcmds Info: LuaTeX not detected. | |||||
Package pdftexcmds Info: \pdf@primitive is available. | |||||
Package pdftexcmds Info: \pdf@ifprimitive is available. | |||||
Package pdftexcmds Info: \pdfdraftmode found. | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty | |||||
Package: epstopdf-base 2016/05/15 v2.6 Base part for package epstopdf | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty | |||||
Package: grfext 2016/05/16 v1.2 Manage graphics extensions (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvdefinekeys.sty | |||||
Package: kvdefinekeys 2016/05/16 v1.4 Define keys (HO) | |||||
)) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty | |||||
Package: kvoptions 2016/05/16 v3.12 Key value format for package options (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvsetkeys.sty | |||||
Package: kvsetkeys 2016/05/16 v1.17 Key value parser (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/etexcmds.sty | |||||
Package: etexcmds 2016/05/16 v1.6 Avoid name clashes with e-TeX commands (HO) | |||||
Package etexcmds Info: Could not find \expanded. | |||||
(etexcmds) That can mean that you are not using pdfTeX 1.50 or | |||||
(etexcmds) that some package has redefined \expanded. | |||||
(etexcmds) In the latter case, load this package earlier. | |||||
))) | |||||
Package epstopdf-base Info: Redefining graphics rule for `.eps' on input line 4 | |||||
38. | |||||
Package grfext Info: Graphics extension search list: | |||||
(grfext) [.png,.pdf,.jpg,.mps,.jpeg,.jbig2,.jb2,.PNG,.PDF,.JPG,.JPE | |||||
G,.JBIG2,.JB2,.eps] | |||||
(grfext) \AppendGraphicsExtensions on input line 456. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg | |||||
File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Liv | |||||
e | |||||
)) | |||||
Package caption Info: Begin \AtBeginDocument code. | |||||
Package caption Info: End \AtBeginDocument code. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <12> on input line 11. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <8> on input line 11. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <6> on input line 11. | |||||
(./7.toc | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <10.95> on input line 3. | |||||
) | |||||
\tf@toc=\write3 | |||||
\openout3 = `7.toc'. | |||||
Overfull \hbox (11.59073pt too wide) in paragraph at lines 16--17 | |||||
\OT1/cmr/m/n/10.95 stal-la-tions. These sen-sors use ZMTrig-ger.pl (wiki.zonemi | |||||
nder.com/ZMTrigger) | |||||
[] | |||||
LaTeX Font Info: Try loading font information for OMS+cmr on input line 21. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/omscmr.fd | |||||
File: omscmr.fd 2014/09/29 v2.5h Standard LaTeX font definitions | |||||
) | |||||
LaTeX Font Info: Font shape `OMS/cmr/m/n' in size <10.95> not available | |||||
(Font) Font shape `OMS/cmsy/m/n' tried instead on input line 21. | |||||
[1 | |||||
{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}] [2] | |||||
<../pics/DSCN0207.JPG, id=14, 803.0pt x 602.25pt> | |||||
File: ../pics/DSCN0207.JPG Graphic file (type jpg) | |||||
<use ../pics/DSCN0207.JPG> | |||||
Package pdftex.def Info: ../pics/DSCN0207.JPG used on input line 53. | |||||
(pdftex.def) Requested size: 321.1943pt x 240.89572pt. | |||||
Package caption Warning: \captionsetup{type*=...} or \captionof | |||||
(caption) outside box or environment on input line 54. | |||||
See the caption package documentation for explanation. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <9> on input line 56. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <5> on input line 56. | |||||
[3 <../pics/DSCN0207.JPG>] <../pics/DSCN0217.JPG, id=18, 803.0pt x 602.25pt> | |||||
File: ../pics/DSCN0217.JPG Graphic file (type jpg) | |||||
<use ../pics/DSCN0217.JPG> | |||||
Package pdftex.def Info: ../pics/DSCN0217.JPG used on input line 73. | |||||
(pdftex.def) Requested size: 200.74951pt x 150.56212pt. | |||||
[4] | |||||
<../pics/DSCN0220.JPG, id=25, 803.0pt x 602.25pt> | |||||
File: ../pics/DSCN0220.JPG Graphic file (type jpg) | |||||
<use ../pics/DSCN0220.JPG> | |||||
Package pdftex.def Info: ../pics/DSCN0220.JPG used on input line 76. | |||||
(pdftex.def) Requested size: 200.74951pt x 150.56212pt. | |||||
<../pics/DSCN0225.JPG, id=26, 803.0pt x 602.25pt> | |||||
File: ../pics/DSCN0225.JPG Graphic file (type jpg) | |||||
<use ../pics/DSCN0225.JPG> | |||||
Package pdftex.def Info: ../pics/DSCN0225.JPG used on input line 79. | |||||
(pdftex.def) Requested size: 200.74951pt x 150.56212pt. | |||||
<../pics/DSCN0227.JPG, id=27, 803.0pt x 602.25pt> | |||||
File: ../pics/DSCN0227.JPG Graphic file (type jpg) | |||||
<use ../pics/DSCN0227.JPG> | |||||
Package pdftex.def Info: ../pics/DSCN0227.JPG used on input line 82. | |||||
(pdftex.def) Requested size: 200.74951pt x 150.56212pt. | |||||
[5 <../pics/DSCN0217.JPG> <../pics/DSCN0220.JPG> <../pics/DSCN0225.JPG>] | |||||
<../pics/walloutlet2.jpg, id=31, 481.8pt x 642.4pt> | |||||
File: ../pics/walloutlet2.jpg Graphic file (type jpg) | |||||
<use ../pics/walloutlet2.jpg> | |||||
Package pdftex.def Info: ../pics/walloutlet2.jpg used on input line 85. | |||||
(pdftex.def) Requested size: 120.44969pt x 160.59961pt. | |||||
[6 <../pics/DSCN0227.JPG> <../pics/walloutlet2.jpg>] (./7.aux) ) | |||||
Here is how much of TeX's memory you used: | |||||
2628 strings out of 494945 | |||||
42075 string characters out of 6181032 | |||||
96817 words of memory out of 5000000 | |||||
5908 multiletter control sequences out of 15000+600000 | |||||
10030 words of font info for 35 fonts, out of 8000000 for 9000 | |||||
14 hyphenation exceptions out of 8191 | |||||
39i,8n,39p,657b,192s stack positions out of 5000i,500n,10000p,200000b,80000s | |||||
</usr/share/te | |||||
xlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx10.pfb></usr/share/texlive/ | |||||
texmf-dist/fonts/type1/public/amsfonts/cm/cmbx12.pfb></usr/share/texlive/texmf- | |||||
dist/fonts/type1/public/amsfonts/cm/cmr10.pfb></usr/share/texlive/texmf-dist/fo | |||||
nts/type1/public/amsfonts/cm/cmr12.pfb></usr/share/texlive/texmf-dist/fonts/typ | |||||
e1/public/amsfonts/cm/cmr6.pfb></usr/share/texlive/texmf-dist/fonts/type1/publi | |||||
c/amsfonts/cm/cmr8.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/amsfon | |||||
ts/cm/cmr9.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cm | |||||
sy10.pfb> | |||||
Output written on 7.pdf (6 pages, 858733 bytes). | |||||
PDF statistics: | |||||
61 PDF objects out of 1000 (max. 8388607) | |||||
38 compressed objects within 1 object stream | |||||
0 named destinations out of 1000 (max. 500000) | |||||
31 words of extra memory for PDF output out of 10000 (max. 10000000) | |||||
@ -0,0 +1,90 @@ | |||||
\documentclass[11pt]{article} | |||||
%Gummi|065|=) | |||||
\usepackage{graphicx} | |||||
\usepackage{caption} | |||||
\title{\textbf{ZMHW Modector}} | |||||
\author{Steak Electronics} | |||||
\date{} | |||||
\begin{document} | |||||
\maketitle | |||||
\tableofcontents | |||||
\section{Overview} | |||||
Making and deploying a Motion Sensor for Zoneminder CCTV software installations. These sensors use ZMTrigger.pl (wiki.zoneminder.com/ZMTrigger) to activate an alarm on a camera for a period of time. The advantage of hardware motion sensors over the software detection of Zoneminder, is that the hardware motion sensors avoid some of the problems inherent in software detection, such as false positives from day-to-night, bugs, missed detections, and others. | |||||
I've tried different motion sensors. Let's start with the Infrared Laser Diode. | |||||
\section{Parts List} | |||||
\begin{itemize} | |||||
\item Arduino Uno (official recommended)(DIP recommended) | |||||
\item ENC28J60 ethernet module | |||||
\item Passive PoE adaptors for IP Cameras | |||||
\item Series 1A fuse | |||||
\item Sick WS15-D1130 Infrared Laser Diode Motion Sensor | |||||
\item General Purpose Diode (I used 1N4818 diode) (may also use transistor, per data sheet for Sick) | |||||
\item Jumper Wires | |||||
\item Copper Wire (22-26 gauge) | |||||
\item Enclosure | |||||
\item Ethernet Wire | |||||
\item (optional) Low Profile one and two gang wall outlet | |||||
\item (optional) Blank cover plate, for one and two wall gang wall outlet | |||||
\item (optional) Electrical tape (I prefer halfway decent electrical tape) | |||||
\item (optional) piezo speaker | |||||
\item (optional) extras of everything, in case anything fails | |||||
\end{itemize} | |||||
Later on we will try a different sensor. The HFS-DC06H. This sensor is a combination of an HB100 radio, with a decoding board that will read the signal and output a logic high or low. You may also want to try PIR sensors. | |||||
\subsection{Other Sensors} | |||||
\begin{itemize} | |||||
\item HFS-DC06H | |||||
\item PIR Sensor | |||||
\item Any other Laser Diode Sensor you like | |||||
\item Reflective tape | |||||
\end{itemize} | |||||
%\includegraphics[scale=0.8]{../pics/resistances.png} | |||||
%\captionof{figure}{Application Note resistance table} | |||||
\section{Work Log} | |||||
\subsection{Sick Motion Sensor} | |||||
The first tests were with the Sick diode sensor and receiver. This device is good for a doorway, where the door must be opened in order for people to pass. Putting it in the way of the door ensures that it will activate. It has a distance of at a max 15 feet or 3 meters. It is a laser type tripwire, which means it can be avoided, if someone knows where it is. | |||||
Device was assembled and using the ZMHW Modector source code. This is simply an Arduino sketch with UIPEthernet (to use the ENC28J60) (make sure CS is pin 10 on Uno). For more details see source code. Explaining the details is out of the spec of this doc. Simply put, the ENC28J60 is connected, the Sick sensor black wire is connected to Analog input 1, and a speaker is connected. | |||||
\includegraphics[scale=0.4]{../pics/DSCN0207.JPG} | |||||
\captionof{figure}{Testing the Sick IR Diode Tripwire } | |||||
Figure 1 shows two things, first off a diode connected in series with the output of the Sick sensor, and also the orange LED on the top of the sensor. The orange led will be green when there is no connection between the diodes and orange when the Diodes (or LEDs) are lined up correctly. When someone moves across the field of their vision, the orange LED will change to green.\footnote{This will later become important when installing the IR diode and receiver, as they must be lined up correctly.} | |||||
\subsection{Diode on Output of Sick Sensor instead of Transistor (Hack)} | |||||
Some IR diode / receiver pairs output a high or low. Some, like the Sick sensor, output a high or low (depending on whether you connect to white or black wire), however they are meant to be connected to a transistor, and thus if you connect it directly to a micro expecting it to go high or low, it will not. Being lazy, and seeking a quick solution, I put a 1N4819 in series with the output of the Sick sensor. | |||||
TODO: pictures showing waveforms | |||||
\footnote{This is possibly an issue of output impedance, but I will admit, at the time, I didn't bother to check.} | |||||
Using the black wire, it will be normally low and go high when motion is detected (the white wire is the opposite). If you connect to a micro it will fail to go high (why?). If you put a diode on the end in series, it will turn the normally low to a noisy normally low, and sometimes it will go between 2.5-5 volts in spikes. This allows us to use the ADC to read the Sick sensor, and avoid the use of adding a transistor in. The transistor would allow for a digitalRead to be used, but we have plenty of Analog inputs to use, so let's use one of those. | |||||
It's important to line up the emitter and receiver. If they are not lined up precisely, they will not get a sync, and the motion detection will fail. Thankfully, the diode outputs more of a cone, and less of a straight line, so some buffer is there. When the lights are dark, it is possible to see the red IR emitted if the distance is not too much. | |||||
\subsection{Broken ENC28J60 Module} | |||||
During my testing, I suddenly was unable to get an IP address. I checked the testsuite sketches, which didn't work, then began tearing down my setup, testing another Arduino and ENC module. It turned out, the ENC28J60 module failed on me. Make sure to buy backups. | |||||
\subsection{Installation Log in Pictures} | |||||
Here is an overview of what installing this in the wall might look like. One side is emitter, the other the receiver. | |||||
\includegraphics[scale=0.25]{../pics/DSCN0217.JPG} | |||||
\captionof{figure}{} | |||||
\includegraphics[scale=0.25]{../pics/DSCN0220.JPG} | |||||
\captionof{figure}{} | |||||
\includegraphics[scale=0.25]{../pics/DSCN0225.JPG} | |||||
\captionof{figure}{} | |||||
\includegraphics[scale=0.25]{../pics/DSCN0227.JPG} | |||||
\captionof{figure}{Part 1 of sensor. By mounting it on the right side of a project box, we can get a 90 degree angle.} | |||||
\includegraphics[scale=0.25]{../pics/walloutlet2.jpg} | |||||
\captionof{figure}{Arduino and Part 2 of sensor. Lined up with the other part.} | |||||
\end{document} | |||||
@ -0,0 +1,81 @@ | |||||
\documentclass[11pt]{article} | |||||
%Gummi|065|=) | |||||
\usepackage{graphicx} | |||||
\usepackage{caption} | |||||
\title{\textbf{ZMHW Modector}} | |||||
\author{Steak Electronics} | |||||
\date{} | |||||
\begin{document} | |||||
\maketitle | |||||
\tableofcontents | |||||
\section{Overview} | |||||
Making and deploying a Motion Sensor for Zoneminder CCTV software installations. These sensors use ZMTrigger.pl (wiki.zoneminder.com/ZMTrigger) to activate an alarm on a camera for a period of time. The advantage of hardware motion sensors over the software detection of Zoneminder, is that the hardware motion sensors avoid some of the problems inherent in software detection, such as false positives from day-to-night, bugs, missed detections, and others. | |||||
I've tried different motion sensors. Let's start with the Infrared Laser Diode. | |||||
\section{Parts List} | |||||
\begin{itemize} | |||||
\item Arduino Uno (official recommended)(DIP recommended) | |||||
\item ENC28J60 ethernet module | |||||
\item Passive PoE adaptors for IP Cameras | |||||
\item Series 1A fuse | |||||
\item Sick WS15-D1130 Infrared Laser Diode Motion Sensor | |||||
\item General Purpose Diode (I used 1N4818 diode) (may also use transistor, per data sheet for Sick) | |||||
\item Jumper Wires | |||||
\item Copper Wire (22-26 gauge) | |||||
\item Enclosure | |||||
\item Ethernet Wire | |||||
\item (optional) Low Profile one and two gang wall outlet | |||||
\item (optional) Blank cover plate, for one and two wall gang wall outlet | |||||
\item (optional) Electrical tape (I prefer halfway decent electrical tape) | |||||
\item (optional) piezo speaker | |||||
\item (optional) extras of everything, in case anything fails | |||||
\end{itemize} | |||||
Later on we will try a different sensor. The HFS-DC06H. This sensor is a combination of an HB100 radio, with a decoding board that will read the signal and output a logic high or low. You may also want to try PIR sensors. | |||||
\subsection{Other Sensors} | |||||
\begin{itemize} | |||||
\item HFS-DC06H | |||||
\item PIR Sensor | |||||
\item Any other Laser Diode Sensor you like | |||||
\item Reflective tape | |||||
\end{itemize} | |||||
%\includegraphics[scale=0.8]{../pics/resistances.png} | |||||
%\captionof{figure}{Application Note resistance table} | |||||
\section{Work Log} | |||||
\subsection{Sick Motion Sensor} | |||||
The first tests were with the Sick diode sensor and receiver. This device is good for a doorway, where the door must be opened in order for people to pass. Putting it in the way of the door ensures that it will activate. It has a distance of at a max 15 feet or 3 meters. It is a laser type tripwire, which means it can be avoided, if someone knows where it is. | |||||
Device was assembled and using the ZMHW Modector source code. This is simply an Arduino sketch with UIPEthernet (to use the ENC28J60) (make sure CS is pin 10 on Uno). For more details see source code. Explaining the details is out of the spec of this doc. Simply put, the ENC28J60 is connected, the Sick sensor black wire is connected to Analog input 1, and a speaker is connected. | |||||
\includegraphics[scale=0.4]{../pics/DSCN0207.JPG} | |||||
\captionof{figure}{Testing the Sick IR Diode Tripwire } | |||||
Figure 1 shows two things, first off a diode connected in series with the output of the Sick sensor, and also the orange LED on the top of the sensor. The orange led will be green when there is no connection between the diodes and orange when the Diodes (or LEDs) are lined up correctly. When someone moves across the field of their vision, the orange LED will change to green.\footnote{This will later become important when installing the IR diode and receiver, as they must be lined up correctly.} | |||||
\subsection{Diode on Output of Sick Sensor instead of Transistor (Hack)} | |||||
Some IR diode / receiver pairs output a high or low. Some, like the Sick sensor, output a high or low (depending on whether you connect to white or black wire), however they are meant to be connected to a transistor, and thus if you connect it directly to a micro expecting it to go high or low, it will not. Being lazy, and seeking a quick solution, I put a 1N4819 in series with the output of the Sick sensor. | |||||
TODO: pictures showing waveforms | |||||
\footnote{This is possibly an issue of output impedance, but I will admit, at the time, I didn't bother to check.} | |||||
Using the black wire, it will be normally low and go high when motion is detected (the white wire is the opposite). If you connect to a micro it will fail to go high (why?). If you put a diode on the end in series, it will turn the normally low to a noisy normally low, and sometimes it will go between 2.5-5 volts in spikes. This allows us to use the ADC to read the Sick sensor, and avoid the use of adding a transistor in. The transistor would allow for a digitalRead to be used, but we have plenty of Analog inputs to use, so let's use one of those. | |||||
It's important to line up the emitter and receiver. If they are not lined up precisely, they will not get a sync, and the motion detection will fail. Thankfully, the diode outputs more of a cone, and less of a straight line, so some buffer is there. When the lights are dark, it is possible to see the red IR emitted if the distance is not too much. | |||||
\subsection{Broken ENC28J60 Module} | |||||
During my testing, I suddenly was unable to get an IP address. I checked the testsuite sketches, which didn't work, then began tearing down my setup, testing another Arduino and ENC module. It turned out, the ENC28J60 module failed on me. Make sure to buy backups. | |||||
\subsection{Installation Log in Pictures} | |||||
Here is an overview of what installing this in the wall might look like. | |||||
\end{document} | |||||
@ -0,0 +1,8 @@ | |||||
\contentsline {section}{\numberline {1}Overview}{1} | |||||
\contentsline {section}{\numberline {2}Parts List}{1} | |||||
\contentsline {subsection}{\numberline {2.1}Other Sensors}{2} | |||||
\contentsline {section}{\numberline {3}Work Log}{3} | |||||
\contentsline {subsection}{\numberline {3.1}Sick Motion Sensor}{3} | |||||
\contentsline {subsection}{\numberline {3.2}Diode on Output of Sick Sensor instead of Transistor (Hack)}{4} | |||||
\contentsline {subsection}{\numberline {3.3}Broken ENC28J60 Module}{4} | |||||
\contentsline {subsection}{\numberline {3.4}Installation Log in Pictures}{4} |
@ -0,0 +1,15 @@ | |||||
\relax | |||||
\@writefile{toc}{\contentsline {section}{\numberline {1}Overview}{1}} | |||||
\@writefile{toc}{\contentsline {section}{\numberline {2}Parts List}{1}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {2.1}Other Sensors}{2}} | |||||
\@writefile{toc}{\contentsline {section}{\numberline {3}Work Log}{3}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.1}Sick Motion Sensor}{3}} | |||||
\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces Testing the Sick IR Diode Tripwire \relax }}{3}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.2}Diode on Output of Sick Sensor instead of Transistor (Hack)}{4}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.3}Broken ENC28J60 Module}{4}} | |||||
\@writefile{toc}{\contentsline {subsection}{\numberline {3.4}Installation Log in Pictures}{4}} | |||||
\@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces \relax }}{5}} | |||||
\@writefile{lof}{\contentsline {figure}{\numberline {3}{\ignorespaces \relax }}{5}} | |||||
\@writefile{lof}{\contentsline {figure}{\numberline {4}{\ignorespaces \relax }}{5}} | |||||
\@writefile{lof}{\contentsline {figure}{\numberline {5}{\ignorespaces Part 1 of sensor. By mounting it on the right side of a project box, we can get a 90 degree angle.\relax }}{6}} | |||||
\@writefile{lof}{\contentsline {figure}{\numberline {6}{\ignorespaces Arduino and Part 2 of sensor. Lined up with the other part.\relax }}{6}} |
@ -0,0 +1,256 @@ | |||||
This is pdfTeX, Version 3.14159265-2.6-1.40.17 (TeX Live 2016/Debian) (preloaded format=pdflatex 2019.8.17) 10 NOV 2019 23:58 | |||||
entering extended mode | |||||
restricted \write18 enabled. | |||||
%&-line parsing enabled. | |||||
**/home/layoutdev/Desktop/code/documentation_general/Electronics_Projects_2019/ | |||||
ZMHW_Modector/docs/8.tex | |||||
(/home/layoutdev/Desktop/code/documentation_general/Electronics_Projects_2019/Z | |||||
MHW_Modector/docs/8.tex | |||||
LaTeX2e <2017/01/01> patch level 3 | |||||
Babel <3.9r> and hyphenation patterns for 3 language(s) loaded. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/article.cls | |||||
Document Class: article 2014/09/29 v1.4h Standard LaTeX document class | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/size11.clo | |||||
File: size11.clo 2014/09/29 v1.4h Standard LaTeX file (size option) | |||||
) | |||||
\c@part=\count79 | |||||
\c@section=\count80 | |||||
\c@subsection=\count81 | |||||
\c@subsubsection=\count82 | |||||
\c@paragraph=\count83 | |||||
\c@subparagraph=\count84 | |||||
\c@figure=\count85 | |||||
\c@table=\count86 | |||||
\abovecaptionskip=\skip41 | |||||
\belowcaptionskip=\skip42 | |||||
\bibindent=\dimen102 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty | |||||
Package: graphicx 2014/10/28 v1.0g Enhanced LaTeX Graphics (DPC,SPQR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty | |||||
Package: keyval 2014/10/28 v1.15 key=value parser (DPC) | |||||
\KV@toks@=\toks14 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty | |||||
Package: graphics 2016/10/09 v1.0u Standard LaTeX Graphics (DPC,SPQR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty | |||||
Package: trig 2016/01/03 v1.10 sin cos tan (DPC) | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics-cfg/graphics.cfg | |||||
File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration | |||||
) | |||||
Package graphics Info: Driver file: pdftex.def on input line 99. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics-def/pdftex.def | |||||
File: pdftex.def 2017/01/12 v0.06k Graphics/color for pdfTeX | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/infwarerr.sty | |||||
Package: infwarerr 2016/05/16 v1.4 Providing info/warning/error messages (HO) | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ltxcmds.sty | |||||
Package: ltxcmds 2016/05/16 v1.23 LaTeX kernel commands for general use (HO) | |||||
) | |||||
\Gread@gobject=\count87 | |||||
)) | |||||
\Gin@req@height=\dimen103 | |||||
\Gin@req@width=\dimen104 | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/caption/caption.sty | |||||
Package: caption 2016/02/21 v3.3-144 Customizing captions (AR) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/caption/caption3.sty | |||||
Package: caption3 2016/05/22 v1.7-166 caption3 kernel (AR) | |||||
Package caption3 Info: TeX engine: e-TeX on input line 67. | |||||
\captionmargin=\dimen105 | |||||
\captionmargin@=\dimen106 | |||||
\captionwidth=\dimen107 | |||||
\caption@tempdima=\dimen108 | |||||
\caption@indent=\dimen109 | |||||
\caption@parindent=\dimen110 | |||||
\caption@hangindent=\dimen111 | |||||
) | |||||
\c@ContinuedFloat=\count88 | |||||
) (./8.aux) | |||||
\openout1 = `8.aux'. | |||||
LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 9. | |||||
LaTeX Font Info: ... okay on input line 9. | |||||
(/usr/share/texlive/texmf-dist/tex/context/base/mkii/supp-pdf.mkii | |||||
[Loading MPS to PDF converter (version 2006.09.02).] | |||||
\scratchcounter=\count89 | |||||
\scratchdimen=\dimen112 | |||||
\scratchbox=\box26 | |||||
\nofMPsegments=\count90 | |||||
\nofMParguments=\count91 | |||||
\everyMPshowfont=\toks15 | |||||
\MPscratchCnt=\count92 | |||||
\MPscratchDim=\dimen113 | |||||
\MPnumerator=\count93 | |||||
\makeMPintoPDFobject=\count94 | |||||
\everyMPtoPDFconversion=\toks16 | |||||
) (/usr/share/texlive/texmf-dist/tex/generic/oberdiek/pdftexcmds.sty | |||||
Package: pdftexcmds 2016/05/21 v0.22 Utility functions of pdfTeX for LuaTeX (HO | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifluatex.sty | |||||
Package: ifluatex 2016/05/16 v1.4 Provides the ifluatex switch (HO) | |||||
Package ifluatex Info: LuaTeX not detected. | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifpdf.sty | |||||
Package: ifpdf 2016/05/14 v3.1 Provides the ifpdf switch | |||||
) | |||||
Package pdftexcmds Info: LuaTeX not detected. | |||||
Package pdftexcmds Info: \pdf@primitive is available. | |||||
Package pdftexcmds Info: \pdf@ifprimitive is available. | |||||
Package pdftexcmds Info: \pdfdraftmode found. | |||||
) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty | |||||
Package: epstopdf-base 2016/05/15 v2.6 Base part for package epstopdf | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty | |||||
Package: grfext 2016/05/16 v1.2 Manage graphics extensions (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvdefinekeys.sty | |||||
Package: kvdefinekeys 2016/05/16 v1.4 Define keys (HO) | |||||
)) | |||||
(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty | |||||
Package: kvoptions 2016/05/16 v3.12 Key value format for package options (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvsetkeys.sty | |||||
Package: kvsetkeys 2016/05/16 v1.17 Key value parser (HO) | |||||
(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/etexcmds.sty | |||||
Package: etexcmds 2016/05/16 v1.6 Avoid name clashes with e-TeX commands (HO) | |||||
Package etexcmds Info: Could not find \expanded. | |||||
(etexcmds) That can mean that you are not using pdfTeX 1.50 or | |||||
(etexcmds) that some package has redefined \expanded. | |||||
(etexcmds) In the latter case, load this package earlier. | |||||
))) | |||||
Package epstopdf-base Info: Redefining graphics rule for `.eps' on input line 4 | |||||
38. | |||||
Package grfext Info: Graphics extension search list: | |||||
(grfext) [.png,.pdf,.jpg,.mps,.jpeg,.jbig2,.jb2,.PNG,.PDF,.JPG,.JPE | |||||
G,.JBIG2,.JB2,.eps] | |||||
(grfext) \AppendGraphicsExtensions on input line 456. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg | |||||
File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Liv | |||||
e | |||||
)) | |||||
Package caption Info: Begin \AtBeginDocument code. | |||||
Package caption Info: End \AtBeginDocument code. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <12> on input line 11. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <8> on input line 11. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <6> on input line 11. | |||||
(./8.toc | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <10.95> on input line 3. | |||||
) | |||||
\tf@toc=\write3 | |||||
\openout3 = `8.toc'. | |||||
Overfull \hbox (11.59073pt too wide) in paragraph at lines 16--17 | |||||
\OT1/cmr/m/n/10.95 stal-la-tions. These sen-sors use ZMTrig-ger.pl (wiki.zonemi | |||||
nder.com/ZMTrigger) | |||||
[] | |||||
LaTeX Font Info: Try loading font information for OMS+cmr on input line 21. | |||||
(/usr/share/texlive/texmf-dist/tex/latex/base/omscmr.fd | |||||
File: omscmr.fd 2014/09/29 v2.5h Standard LaTeX font definitions | |||||
) | |||||
LaTeX Font Info: Font shape `OMS/cmr/m/n' in size <10.95> not available | |||||
(Font) Font shape `OMS/cmsy/m/n' tried instead on input line 21. | |||||
[1 | |||||
{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}] [2] | |||||
<../pics/DSCN0207.JPG, id=14, 803.0pt x 602.25pt> | |||||
File: ../pics/DSCN0207.JPG Graphic file (type jpg) | |||||
<use ../pics/DSCN0207.JPG> | |||||
Package pdftex.def Info: ../pics/DSCN0207.JPG used on input line 53. | |||||
(pdftex.def) Requested size: 321.1943pt x 240.89572pt. | |||||
Package caption Warning: \captionsetup{type*=...} or \captionof | |||||
(caption) outside box or environment on input line 54. | |||||
See the caption package documentation for explanation. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <9> on input line 56. | |||||
LaTeX Font Info: External font `cmex10' loaded for size | |||||
(Font) <5> on input line 56. | |||||
[3 <../pics/DSCN0207.JPG>] <../pics/DSCN0217.JPG, id=18, 803.0pt x 602.25pt> | |||||
File: ../pics/DSCN0217.JPG Graphic file (type jpg) | |||||
<use ../pics/DSCN0217.JPG> | |||||
Package pdftex.def Info: ../pics/DSCN0217.JPG used on input line 73. | |||||
(pdftex.def) Requested size: 200.74951pt x 150.56212pt. | |||||
[4] | |||||
<../pics/DSCN0220.JPG, id=25, 803.0pt x 602.25pt> | |||||
File: ../pics/DSCN0220.JPG Graphic file (type jpg) | |||||
<use ../pics/DSCN0220.JPG> | |||||
Package pdftex.def Info: ../pics/DSCN0220.JPG used on input line 76. | |||||
(pdftex.def) Requested size: 200.74951pt x 150.56212pt. | |||||
<../pics/DSCN0225.JPG, id=26, 803.0pt x 602.25pt> | |||||
File: ../pics/DSCN0225.JPG Graphic file (type jpg) | |||||
<use ../pics/DSCN0225.JPG> | |||||
Package pdftex.def Info: ../pics/DSCN0225.JPG used on input line 79. | |||||
(pdftex.def) Requested size: 200.74951pt x 150.56212pt. | |||||
<../pics/DSCN0227.JPG, id=27, 803.0pt x 602.25pt> | |||||
File: ../pics/DSCN0227.JPG Graphic file (type jpg) | |||||
<use ../pics/DSCN0227.JPG> | |||||
Package pdftex.def Info: ../pics/DSCN0227.JPG used on input line 82. | |||||
(pdftex.def) Requested size: 200.74951pt x 150.56212pt. | |||||
[5 <../pics/DSCN0217.JPG> <../pics/DSCN0220.JPG> <../pics/DSCN0225.JPG>] | |||||
<../pics/walloutlet2.jpg, id=31, 481.8pt x 642.4pt> | |||||
File: ../pics/walloutlet2.jpg Graphic file (type jpg) | |||||
<use ../pics/walloutlet2.jpg> | |||||
Package pdftex.def Info: ../pics/walloutlet2.jpg used on input line 85. | |||||
(pdftex.def) Requested size: 120.44969pt x 160.59961pt. | |||||
[6 <../pics/DSCN0227.JPG> <../pics/walloutlet2.jpg>] (./8.aux) ) | |||||
Here is how much of TeX's memory you used: | |||||
2628 strings out of 494945 | |||||
42075 string characters out of 6181032 | |||||
96817 words of memory out of 5000000 | |||||
5908 multiletter control sequences out of 15000+600000 | |||||
10030 words of font info for 35 fonts, out of 8000000 for 9000 | |||||
14 hyphenation exceptions out of 8191 | |||||
39i,8n,39p,657b,192s stack positions out of 5000i,500n,10000p,200000b,80000s | |||||
</usr/share/te | |||||
xlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx10.pfb></usr/share/texlive/ | |||||
texmf-dist/fonts/type1/public/amsfonts/cm/cmbx12.pfb></usr/share/texlive/texmf- | |||||
dist/fonts/type1/public/amsfonts/cm/cmr10.pfb></usr/share/texlive/texmf-dist/fo | |||||
nts/type1/public/amsfonts/cm/cmr12.pfb></usr/share/texlive/texmf-dist/fonts/typ | |||||
e1/public/amsfonts/cm/cmr6.pfb></usr/share/texlive/texmf-dist/fonts/type1/publi | |||||
c/amsfonts/cm/cmr8.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/amsfon | |||||
ts/cm/cmr9.pfb></usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cm | |||||
sy10.pfb> | |||||
Output written on 8.pdf (6 pages, 858733 bytes). | |||||
PDF statistics: | |||||
61 PDF objects out of 1000 (max. 8388607) | |||||
38 compressed objects within 1 object stream | |||||
0 named destinations out of 1000 (max. 500000) | |||||
31 words of extra memory for PDF output out of 10000 (max. 10000000) | |||||
@ -0,0 +1,90 @@ | |||||
\documentclass[11pt]{article} | |||||
%Gummi|065|=) | |||||
\usepackage{graphicx} | |||||
\usepackage{caption} | |||||
\title{\textbf{ZMHW Modector}} | |||||
\author{Steak Electronics} | |||||
\date{} | |||||
\begin{document} | |||||
\maketitle | |||||
\tableofcontents | |||||
\section{Overview} | |||||
Making and deploying a Motion Sensor for Zoneminder CCTV software installations. These sensors use ZMTrigger.pl (wiki.zoneminder.com/ZMTrigger) to activate an alarm on a camera for a period of time. The advantage of hardware motion sensors over the software detection of Zoneminder, is that the hardware motion sensors avoid some of the problems inherent in software detection, such as false positives from day-to-night, bugs, missed detections, and others. | |||||
I've tried different motion sensors. Let's start with the Infrared Laser Diode. | |||||
\section{Parts List} | |||||
\begin{itemize} | |||||
\item Arduino Uno (official recommended)(DIP recommended) | |||||
\item ENC28J60 ethernet module | |||||
\item Passive PoE adaptors for IP Cameras | |||||
\item Series 1A fuse | |||||
\item Sick WS15-D1130 Infrared Laser Diode Motion Sensor | |||||
\item General Purpose Diode (I used 1N4818 diode) (may also use transistor, per data sheet for Sick) | |||||
\item Jumper Wires | |||||
\item Copper Wire (22-26 gauge) | |||||
\item Enclosure | |||||
\item Ethernet Wire | |||||
\item (optional) Low Profile one and two gang wall outlet | |||||
\item (optional) Blank cover plate, for one and two wall gang wall outlet | |||||
\item (optional) Electrical tape (I prefer halfway decent electrical tape) | |||||
\item (optional) piezo speaker | |||||
\item (optional) extras of everything, in case anything fails | |||||
\end{itemize} | |||||
Later on we will try a different sensor. The HFS-DC06H. This sensor is a combination of an HB100 radio, with a decoding board that will read the signal and output a logic high or low. You may also want to try PIR sensors. | |||||
\subsection{Other Sensors} | |||||
\begin{itemize} | |||||
\item HFS-DC06H | |||||
\item PIR Sensor | |||||
\item Any other Laser Diode Sensor you like | |||||
\item Reflective tape | |||||
\end{itemize} | |||||
%\includegraphics[scale=0.8]{../pics/resistances.png} | |||||
%\captionof{figure}{Application Note resistance table} | |||||
\section{Work Log} | |||||
\subsection{Sick Motion Sensor} | |||||
The first tests were with the Sick diode sensor and receiver. This device is good for a doorway, where the door must be opened in order for people to pass. Putting it in the way of the door ensures that it will activate. It has a distance of at a max 15 feet or 3 meters. It is a laser type tripwire, which means it can be avoided, if someone knows where it is. | |||||
Device was assembled and using the ZMHW Modector source code. This is simply an Arduino sketch with UIPEthernet (to use the ENC28J60) (make sure CS is pin 10 on Uno). For more details see source code. Explaining the details is out of the spec of this doc. Simply put, the ENC28J60 is connected, the Sick sensor black wire is connected to Analog input 1, and a speaker is connected. | |||||
\includegraphics[scale=0.4]{../pics/DSCN0207.JPG} | |||||
\captionof{figure}{Testing the Sick IR Diode Tripwire } | |||||
Figure 1 shows two things, first off a diode connected in series with the output of the Sick sensor, and also the orange LED on the top of the sensor. The orange led will be green when there is no connection between the diodes and orange when the Diodes (or LEDs) are lined up correctly. When someone moves across the field of their vision, the orange LED will change to green.\footnote{This will later become important when installing the IR diode and receiver, as they must be lined up correctly.} | |||||
\subsection{Diode on Output of Sick Sensor instead of Transistor (Hack)} | |||||
Some IR diode / receiver pairs output a high or low. Some, like the Sick sensor, output a high or low (depending on whether you connect to white or black wire), however they are meant to be connected to a transistor, and thus if you connect it directly to a micro expecting it to go high or low, it will not. Being lazy, and seeking a quick solution, I put a 1N4819 in series with the output of the Sick sensor. | |||||
TODO: pictures showing waveforms | |||||
\footnote{This is possibly an issue of output impedance, but I will admit, at the time, I didn't bother to check.} | |||||
Using the black wire, it will be normally low and go high when motion is detected (the white wire is the opposite). If you connect to a micro it will fail to go high (why?). If you put a diode on the end in series, it will turn the normally low to a noisy normally low, and sometimes it will go between 2.5-5 volts in spikes. This allows us to use the ADC to read the Sick sensor, and avoid the use of adding a transistor in. The transistor would allow for a digitalRead to be used, but we have plenty of Analog inputs to use, so let's use one of those. | |||||
It's important to line up the emitter and receiver. If they are not lined up precisely, they will not get a sync, and the motion detection will fail. Thankfully, the diode outputs more of a cone, and less of a straight line, so some buffer is there. When the lights are dark, it is possible to see the red IR emitted if the distance is not too much. | |||||
\subsection{Broken ENC28J60 Module} | |||||
During my testing, I suddenly was unable to get an IP address. I checked the testsuite sketches, which didn't work, then began tearing down my setup, testing another Arduino and ENC module. It turned out, the ENC28J60 module failed on me. Make sure to buy backups. | |||||
\subsection{Installation Log in Pictures} | |||||
Here is an overview of what installing this in the wall might look like. One side is emitter, the other the receiver. | |||||
\includegraphics[scale=0.25]{../pics/DSCN0217.JPG} | |||||
\captionof{figure}{} | |||||
\includegraphics[scale=0.25]{../pics/DSCN0220.JPG} | |||||
\captionof{figure}{} | |||||
\includegraphics[scale=0.25]{../pics/DSCN0225.JPG} | |||||
\captionof{figure}{} | |||||
\includegraphics[scale=0.25]{../pics/DSCN0227.JPG} | |||||
\captionof{figure}{Part 1 of sensor. By mounting it on the right side of a project box, we can get a 90 degree angle.} | |||||
\includegraphics[scale=0.25]{../pics/walloutlet2.jpg} | |||||
\captionof{figure}{Arduino and Part 2 of sensor. Lined up with the other part.} | |||||
\end{document} | |||||
@ -0,0 +1,8 @@ | |||||
\contentsline {section}{\numberline {1}Overview}{1} | |||||
\contentsline {section}{\numberline {2}Parts List}{1} | |||||
\contentsline {subsection}{\numberline {2.1}Other Sensors}{2} | |||||
\contentsline {section}{\numberline {3}Work Log}{3} | |||||
\contentsline {subsection}{\numberline {3.1}Sick Motion Sensor}{3} | |||||
\contentsline {subsection}{\numberline {3.2}Diode on Output of Sick Sensor instead of Transistor (Hack)}{4} | |||||
\contentsline {subsection}{\numberline {3.3}Broken ENC28J60 Module}{4} | |||||
\contentsline {subsection}{\numberline {3.4}Installation Log in Pictures}{4} |