Ich habe meine Blog um einen RSS Feed erweitert
Ich habe meine Blog um einen RSS Feed erweitert
Tausch des LM340T5 7805 gegen einen Ricoh R-78B50-10L DC/DC Wanlder, um die Abwärme zu reduzieren.
Nach nerd dictation kommt BlahST
Ein Bash-Skript zur Überwachung von mehrstufigen, lang laufenden Prozessen in Echtzeit, mit Simultananzeige von Fortschritt und vollständiger Log-Erfassung.
When the admins set up my new laptop they forgot to enable hibernation manually and the device deep decharged over night.
Dieses Projekt wurde zugunsten der Verwendung von https://www.home-assistant.io/ eingestellt. Ich binde die DS1820 Sensoren dort direkt ein und regel Temperaturen dann über Z-Wave Heizungsthermostate.
Bei diesem Projekt handelt es sich um die Entwicklung einer Fußbodenheizungssteuerung (Gas-Brenner) auf Basis eines Raspberry PI, openhab/home assistant und PHP. Für eine möglichst breites Nutzungsspektrum kann die Steuerung sowohl als Standalone betrieben werden als auch in eine Hausautomatisierung integriert werden.
Als ersten Schritt müssen die Sensoren als API zur Verfügung gestellt werden. Im Gegensatz zum ersten Setup (in der die Heizungssteuerung direkt auf diesem Sensoren zugegriffen hat) hat diese Abstraktionsschicht den Vorteil, das die Steuerung somit auch externe Sensoren anbinden kann. Die API git die Werte als Json zurück, so dass auch Frontendframeworks direkt auf die Sensoren zugreifen kann.
In der heutigen vernetzten Welt macht eine "Stand-Alone" Heizungssteuerung zu entwickeln, auch als Hobby kaum einen Sinn, wenn
nicht das Ziel ist das diese flexibler als übliche proprietären Steuerungen sind. Dazu gehört meiner Meinung nach die Offenheit der
Software und auch ihrer Schnittstellen. Daher ist es mir wichtig das man die Steuerung an OpenSource Home-Automatisation Systeme anbinden kann.
Dafür muss nur die Message Queue in hass eingebunden werden.
cat .homeassistant/configuration.yaml
mqtt: broker: localhost discovery: true discovery_prefix: homeassistant
Um die Steuerung anzubinden schreibt die Heizung ihre Sensorwerte des DS 1820 in eine mqtt Message-Queue und kann z.B. von openhab ausgelesen werden.
Zum steuern der Relaiskarte kann diese via Post Request gesetzt werden.
curl --request POST \ --url http://heating.fritz.box:88/api/control/gpio26 \ --form status=1
Somit ist es möglich diese Software auch ausschließlich als DS1920 -> openhab Adapter zu verwenden (nur sinnvoll wenn openhab auf einem anderen Raspberry läuft. Ansonsten kann openhab die Sensoren auch direkt einbinden.)
Bisher sieht das bei mir so aus:
Anleitung für den Setupprozess
modprobe w1-gpiomodprobe w1-thermcat /sys/bus/w1/devices/w1_bus_master1/28-*/w1_slave | grep t=
echo 26 > /sys/class/gpio/exportecho 20 > /sys/class/gpio/exportecho 21 > /sys/class/gpio/exportecho out > /sys/class/gpio/gpio26/directionecho out > /sys/class/gpio/gpio20/directionecho out > /sys/class/gpio/gpio21/direction
echo 1 > /sys/class/gpio/gpio26/value # ansleep 1echo 0 > /sys/class/gpio/gpio26/value # aus
Die Einrichtung ist im Quellcode dokumentiert, siehe README.md
<b><span style="color: #644a9b">{</span></b> <span style="color: #0057ae">"status"</span><b><span style="color: #644a9b">:</span></b> <b><span style="color: #644a9b">{</span></b> <span style="color: #0057ae">"burnerStatus"</span><b><span style="color: #644a9b">:</span></b> <b>false</b><b><span style="color: #644a9b">,</span></b> <span style="color: #0057ae">"outsideTemp"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #b08000">14.187</span><b><span style="color: #644a9b">,</span></b> <span style="color: #0057ae">"returnFlowTemp"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #b08000">27.875</span><b><span style="color: #644a9b">,</span></b> <span style="color: #0057ae">"returnFlowTarget"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #b08000">24</span> <b><span style="color: #644a9b">},</span></b> <span style="color: #0057ae">"relais"</span><b><span style="color: #644a9b">:</span></b> <b><span style="color: #644a9b">{</span></b> <span style="color: #0057ae">"gpio26"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #bf0303">"1"</span><b><span style="color: #644a9b">,</span></b> <span style="color: #0057ae">"gpio20"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #bf0303">"1"</span><b><span style="color: #644a9b">,</span></b> <span style="color: #0057ae">"gpio21"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #bf0303">"1"</span> <b><span style="color: #644a9b">},</span></b> <span style="color: #0057ae">"config"</span><b><span style="color: #644a9b">:</span></b> <b><span style="color: #644a9b">{</span></b> <span style="color: #0057ae">"heating"</span><b><span style="color: #644a9b">:</span></b> <b><span style="color: #644a9b">{</span></b> <span style="color: #0057ae">"debug"</span><b><span style="color: #644a9b">:</span></b> <b>true</b><b><span style="color: #644a9b">,</span></b> <span style="color: #0057ae">"diagrammWeekly"</span><b><span style="color: #644a9b">:</span></b> <b><span style="color: #644a9b">{</span></b> <span style="color: #0057ae">"skipSensors"</span><b><span style="color: #644a9b">:</span></b> <b><span style="color: #006e28">[</span></b> <span style="color: #bf0303">"Leitung Warm"</span><b><span style="color: #006e28">,</span></b> <span style="color: #bf0303">"W</span><span style="color: #924c9d">\u00e4</span><span style="color: #bf0303">rmetauscher"</span> <b><span style="color: #006e28">]</span></b> <b><span style="color: #644a9b">},</span></b> <span style="color: #0057ae">"diagrammColors"</span><b><span style="color: #644a9b">:</span></b> <b><span style="color: #006e28">[</span></b> <span style="color: #bf0303">"#000000"</span><b><span style="color: #006e28">,</span></b> <span style="color: #bf0303">"#e6194b"</span><b><span style="color: #006e28">,</span></b> <span style="color: #bf0303">"#3cb44b"</span><b><span style="color: #006e28">,</span></b> <span style="color: #bf0303">"#ffe119"</span><b><span style="color: #006e28">,</span></b> <span style="color: #bf0303">"#0082c8"</span><b><span style="color: #006e28">,</span></b> <span style="color: #bf0303">"#f58231"</span><b><span style="color: #006e28">,</span></b> <span style="color: #bf0303">"#911eb4"</span><b><span style="color: #006e28">,</span></b> <span style="color: #bf0303">"#46f0f0"</span><b><span style="color: #006e28">,</span></b> <span style="color: #bf0303">"#f032e6"</span><b><span style="color: #006e28">,</span></b> <span style="color: #bf0303">"#d2f53c"</span><b><span style="color: #006e28">,</span></b> <span style="color: #bf0303">"#fabebe"</span> <b><span style="color: #006e28">]</span></b><b><span style="color: #644a9b">,</span></b> <span style="color: #0057ae">"nightlySubstract"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #b08000">10</span><b><span style="color: #644a9b">,</span></b> <span style="color: #0057ae">"frostProtectionWaterTemperature"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #b08000">24</span><b><span style="color: #644a9b">,</span></b> <span style="color: #0057ae">"missingMappingValueFallback"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #b08000">24</span><b><span style="color: #644a9b">,</span></b> <span style="color: #0057ae">"nightTimeStart"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #b08000">23</span><b><span style="color: #644a9b">,</span></b> <span style="color: #0057ae">"nightTimeEnd"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #b08000">6</span><b><span style="color: #644a9b">,</span></b> <span style="color: #0057ae">"systemSensorsIds"</span><b><span style="color: #644a9b">:</span></b> <b><span style="color: #644a9b">{</span></b> <span style="color: #0057ae">"outside"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #bf0303">"10-00080282b5f8"</span><b><span style="color: #644a9b">,</span></b> <span style="color: #0057ae">"returnFlow"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #bf0303">"10-00080282b91c"</span> <b><span style="color: #644a9b">}</span></b> <b><span style="color: #644a9b">},</span></b> <span style="color: #0057ae">"mosquitto"</span><b><span style="color: #644a9b">:</span></b> <b><span style="color: #644a9b">{</span></b> <span style="color: #0057ae">"port"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #b08000">1883</span><b><span style="color: #644a9b">,</span></b> <span style="color: #0057ae">"host"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #bf0303">"localhost"</span> <b><span style="color: #644a9b">},</span></b> <span style="color: #0057ae">"database"</span><b><span style="color: #644a9b">:</span></b> <b><span style="color: #644a9b">{</span></b> <span style="color: #0057ae">"driver"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #bf0303">"pdo_mysql"</span><b><span style="color: #644a9b">,</span></b> <span style="color: #0057ae">"user"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #bf0303">"heating"</span><b><span style="color: #644a9b">,</span></b> <span style="color: #0057ae">"password"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #bf0303">"testing"</span><b><span style="color: #644a9b">,</span></b> <span style="color: #0057ae">"dbname"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #bf0303">"heating"</span> <b><span style="color: #644a9b">}</span></b> <b><span style="color: #644a9b">},</span></b> <span style="color: #0057ae">"temperatureMappings"</span><b><span style="color: #644a9b">:</span></b> <b><span style="color: #644a9b">{</span></b> <span style="color: #0057ae">"1"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #bf0303">"For outside temperature -35 the target temperature is 36"</span><b><span style="color: #644a9b">,</span></b> <span style="color: #0057ae">"2"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #bf0303">"For outside temperature -34 the target temperature is 36"</span><b><span style="color: #644a9b">,</span></b> <span style="color: #0057ae">"3"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #bf0303">"For outside temperature -33 the target temperature is 36"</span><b><span style="color: #644a9b">,</span></b> <span style="color: #0057ae">"4"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #bf0303">"For outside temperature -32 the target temperature is 36"</span><b><span style="color: #644a9b">,</span></b> <span style="color: #0057ae">"5"</span><b><span style="color: #644a9b">:</span></b> <span style="color: #bf0303">"..."</span> <b><span style="color: #644a9b">}</span></b><b><span style="color: #644a9b">}</span></b>
Article relase date: / Last update: