{"id":37423,"date":"2019-10-31T22:17:33","date_gmt":"2019-10-31T19:17:33","guid":{"rendered":"https:\/\/prohoster.info\/blog\/shiotiny-ventilyatsiya-vlazhnogo-pomeshheniya-proekt-primer\/"},"modified":"2019-10-31T22:17:33","modified_gmt":"2019-10-31T19:17:33","slug":"shiotiny-ventilyatsiya-vlazhnogo-pomeshheniya-proekt-primer","status":"publish","type":"post","link":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/shiotiny-ventilyatsiya-vlazhnogo-pomeshheniya-proekt-primer","title":{"rendered":"ShIoTiny: Bel\u00fcftung feuchter R\u00e4ume (Projektbeispiel)","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"ShIoTiny: Bel\u00fcftung feuchter R\u00e4ume (Projektbeispiel)\" src=\"\/wp-content\/uploads\/2019\/08\/a6e9c8239a90c713bd1b3b21891cbc13.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<h4>Wesentliche Thesen oder worum es in diesem Artikel geht<\/h4>\n<p>\nWir setzen den Zyklus von Artikeln \u00fcber <b>ShIoTiny<\/b> \u2014 visuell programmierbare Steuerungen auf Basis des Chips <b>ESP8266<\/b>.<\/p>\n<p>In diesem Artikel wird am Beispiel eines Projekts zur Steuerung der Bel\u00fcftung in einem Badezimmer oder einem anderen Raum mit hoher Luftfeuchtigkeit erkl\u00e4rt, wie ein Programm f\u00fcr <b>ShIoTiny<\/b>.<\/p>\n<h4>Die vorherigen Artikel der Serie.<\/h4>\n<p>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/463107\/\">ShIoTiny: kleine Automatisierung, Internet der Dinge oder \u201esechs Monate vor dem Urlaub\u201c<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/463285\/\">ShIoTiny: Knoten, Verbindungen und Ereignisse oder Besonderheiten der Programmierung<\/a><\/noindex><\/p>\n<h4>Links<\/h4>\n<p>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/shiotiny\/ShIoTinyBin\">Bin\u00e4re Firmware, Controller-Schema und Dokumentation<\/a><\/noindex> <br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/shiotiny\/ShIoTinyBin\/blob\/master\/doc\/ShIoT-esp8266-01_obzor.pdf\">Anleitung und Beschreibung der Module<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"http:\/\/esppower.ru\/mqtt-android\/\">Konfiguration des MQTT-Brokers cloudmqtt.com<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/393277\/\">MQTT-Dashboard f\u00fcr Android<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h4>Einf\u00fchrung<\/h4>\n<p>\nVerst\u00e4ndnis ohne Erfahrung ist nicht m\u00f6glich. Diese Wahrheit wurde von Zeit und Generationen erprobt. Deshalb gibt es nichts Besseres zum Lernen praktischer F\u00e4higkeiten, als zu versuchen, etwas selbst zu machen. Beispiele, die zeigen, was m\u00f6glich ist und was nicht, kommen hier wie gerufen. Die Fehler anderer k\u00f6nnen zwar nicht verhindern, dass man selbst Fehler macht, helfen aber, die Anzahl letzterer zu verringern.<\/p>\n<p>Fragen und Briefe von Lesern der vorherigen Artikel haben mich dazu gebracht, ein kleines Beispielprojekt zur Steuerung der Bel\u00fcftung zu erstellen, um zu zeigen, wie die ShIoTiny-Module funktionieren.<\/p>\n<p>Die urspr\u00fcngliche Idee, auf der der Controller basiert <b>ShIoTiny<\/b> \u2014 eine Pumpen-Bew\u00e4sserungsstation \u2014 wird nicht f\u00fcr jeden geeignet und interessant sein. Daher habe ich ein allgemein verst\u00e4ndliches und f\u00fcr viele n\u00fctzliches Bel\u00fcftungssystem als Beispiel genommen.<\/p>\n<p>Ich muss sagen, dass die Projektidee nicht meine ist, sondern <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/masterkit\/blog\/385281\/\">ich habe sie hierher entnommen<\/a><\/noindex> und dann an <b>ShIoTiny<\/b>.<\/p>\n<h4>Zuerst verstehe, was du willst<\/h4>\n<p>\nDer Prozess der Vollkommenheit ist endlos. Und genau dieses Merkmal hat viele gute Ideen und Projekte ruiniert. Der Entwickler hat anstatt eine vielleicht nicht perfekte, aber funktionale L\u00f6sung herauszubringen, weiter verbessert. Und zwar bis zu dem Punkt, an dem die Mitbewerber ihn \u00fcberholt haben, indem sie m\u00f6glicherweise auch nicht perfekte (oft sogar grottenschlechte), aber funktionierende L\u00f6sungen auf den Markt gebracht haben.<\/p>\n<p>Deshalb ist es sehr wichtig, zu wissen, wo man im Projekt einen Punkt setzen sollte. Mit anderen Worten, man muss festlegen, was wir am Ende des Projekts aus dem, was wir zu Beginn haben, erhalten m\u00f6chten. Im Russischen gibt es f\u00fcr ein Dokument, das genau mit dem Zweck erstellt wird, den Weg zur Erstellung von etwas zu beschreiben, ein wunderbares kurzes und pr\u00e4gnantes Wort \u201ePlan\u201c, das geistig zur\u00fcckgebliebene \u00dcbersetzer und defizit\u00e4re Manager in letzter Zeit aus unerfindlichen Gr\u00fcnden \u201eRoadmap\u201c zu nennen begonnen haben. Naja, Gott m\u00f6ge sie segnen.<\/p>\n<p>Unser Plan wird folgenderma\u00dfen aussehen: Angenommen, es gibt einen Raum, in dem die Luftfeuchtigkeit zeitweise stark ansteigen kann, zum Beispiel ein Badezimmer oder eine K\u00fcche. Luftfeuchtigkeit ist unangenehm, und das \u00e4lteste Mittel dagegen ist: den Raum zu l\u00fcften. Es gibt viele M\u00f6glichkeiten zum L\u00fcften. Aber wir verzichten vielleicht auf exotische und altmodische Methoden wie Sklaven mit F\u00e4chern und entscheiden uns f\u00fcr einen normalen Ventilator. Ventilatoren sind g\u00fcnstiger und lassen sich leichter in unserer Gegend finden.<\/p>\n<p>Mit anderen Worten, wir m\u00f6chten den Ventilator steuern: ihn ein- und, entsprechend, ausschalten. Genauer gesagt, wir m\u00f6chten, dass er sich selbst ein- und ausschaltet, wenn es n\u00f6tig ist.<\/p>\n<p>Es bleibt zu bestimmen, unter welchen Bedingungen der Ventilator eingeschaltet werden soll und unter welchen Bedingungen er ausgeschaltet werden soll.<\/p>\n<p>Hier ist alles offensichtlich: Wenn die Luftfeuchtigkeit einen bestimmten Grenzwert \u00fcberschreitet, wird der Ventilator eingeschaltet und zieht die Luft ab; f\u00e4llt die Luftfeuchtigkeit wieder in den Normalbereich, schaltet sich der Ventilator aus.<\/p>\n<p>Der aufmerksame Leser wird sofort auf das Wort \u201efestgelegter\u201c sto\u00dfen. Von wem festgelegt? Wie festgelegt?<\/p>\n<p>Den Grenzwert f\u00fcr die Luftfeuchtigkeit kann man auf verschiedene Weise festlegen. Wir werden zwei davon betrachten: die erste mit einem variablen Widerstand und die zweite \u00fcber das Netz \u00fcber das MQTT-Protokoll. Jede dieser Methoden hat ihre Vor- und Nachteile, die sp\u00e4ter behandelt werden.<\/p>\n<p>F\u00fcr diejenigen, die nicht verstanden haben, m\u00f6chte ich kl\u00e4ren, dass \u201eGrenzfeuchtigkeit\u201c der Feuchtigkeitswert ist, ab dem der Ventilator eingeschaltet werden muss.<\/p>\n<p>Die n\u00e4chste Frage ist: Soll der Benutzer das Recht haben, den Ventilator direkt einzuschalten? Das hei\u00dft, unabh\u00e4ngig von der Luftfeuchtigkeit auf die Taste zu dr\u00fccken? Diese M\u00f6glichkeit werden wir einplanen. Schlie\u00dflich kann der Ventilator nicht nur bei erh\u00f6hter Luftfeuchtigkeit gebraucht werden, sondern auch zum Abziehen von unangenehmen Ger\u00fcchen aus dem Raum, die im Volksmund \u201eGestank\u201c genannt werden.<\/p>\n<p>Also haben wir verstanden, was wir wollen, und sogar ein wenig, wie es funktionieren wird. Lassen Sie uns die Funktionen unseres Bel\u00fcftungssystems kurz auflisten:<\/p>\n<ul>\n<li> Einstellung des Grenzwerts f\u00fcr die Luftfeuchtigkeit (zwei Optionen);<\/li>\n<li> Messung der Luftfeuchtigkeit;<\/li>\n<li> Automatische Einschaltung des Ventilators;<\/li>\n<li> Automatische Ausschaltung des Ventilators;<\/li>\n<li> Manuelle Einschaltung des Ventilators (auf Knopfdruck).<\/li>\n<\/ul>\n<p>\nAlso, der Plan ist klar. Es ist notwendig, alle oben genannten Funktionen in unser Programm zu implementieren. Basierend auf diesem \u201ePlan\u201c werden wir handeln. Zun\u00e4chst zeichnen wir das strukturelle Schema des Ger\u00e4ts.<\/p>\n<h4>Strukturschema des Ger\u00e4ts<\/h4>\n<p>\nIm Allgemeinen wird es zwei solcher Schemata geben. Das erste ist f\u00fcr die Variante, bei der der Schwellenwert des Feuchtigkeitsniveaus durch einen variablen Widerstand eingestellt wird. Das zweite Schema ist f\u00fcr die Variante, bei der der Schwellenwert des Feuchtigkeitsniveaus \u00fcber das Netzwerk mit dem MQTT-Protokoll festgelegt wird.<\/p>\n<p>Da sich diese Schemata jedoch nur in einem Element unterscheiden \u2013 dem variablen Widerstand \u201eEinstellung des Schwellenwerts der Feuchtigkeit\u201c \u2013 werden wir nur ein strukturelles Schema zeichnen. Nat\u00fcrlich sieht das strukturelle Schema gem\u00e4\u00df GOST anders aus. Aber wir orientieren uns nicht an den Technikern, sondern an der jungen Generation. Daher ist Anschaulichkeit wichtiger.<\/p>\n<p><img decoding=\"async\" alt=\"ShIoTiny: Bel\u00fcftung feuchter R\u00e4ume (Projektbeispiel)\" src=\"\/wp-content\/uploads\/2019\/08\/519f40496a8e459c22d69e7f0eaeee1d.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAlso, was sehen wir in der Zeichnung? Der Ventilator ist an das Relais <b>Relay1<\/b> des Controllers angeschlossen. Ich weise darauf hin, dass der Ventilator ein Ger\u00e4t ist, das mit Hochspannung betrieben wird. Daher, falls jemand so etwas selbst machen m\u00f6chte \u2013 seien Sie vorsichtig. Das hei\u00dft, ziehen Sie mindestens den Stecker, bevor Sie Ihre Finger oder Messger\u00e4te in das Schema stecken \u2013 schalten Sie zumindest den Ventilator aus. Und eine zweite Anmerkung. Wenn Ihr Ventilator leistungsst\u00e4rker ist als <b>ShIoTiny<\/b>250 W <b>, sollten Sie ihn nicht direkt an<\/b>anschlie\u00dfen \u2013 nur \u00fcber einen Starter. <b>ShIoTiny<\/b> Wir haben den Ventilator gekl\u00e4rt. Jetzt zur Taste \u201emanuelle Einschaltung\u201c des Ventilators. Sie ist an den Eingang<\/p>\n<p>Input1 <b>angeschlossen. Hier gibt es nicht viel zu erl\u00e4utern.<\/b>Temperatur- und Feuchtigkeitssensor<\/p>\n<p>DHT-11 <b>DHT-22<\/b> (oder <b>oder deren Analogger\u00e4te). F\u00fcr den Anschluss ist ein spezieller Eingang am Controller vorgesehen.<\/b> Wie in der Abbildung zu sehen ist, stellt der Anschluss eines solchen Sensors ebenfalls kein Problem dar. <b>ShIoTiny<\/b>Und schlie\u00dflich der variable Widerstand, der den Schwellenwert der Feuchtigkeit festlegt. Genauer gesagt \u2013 ein Teiler, der aus einem variablen und einem festen Widerstand besteht. Es gibt keine Probleme mit seinem Anschluss, aber ich m\u00f6chte klarstellen, dass der integrierte ADC auf<\/p>\n<p>maximal 1 Volt ausgelegt ist. Daher ist ein Spannungsteiler von etwa 5 erforderlich. <b>ESP8266<\/b> Und ich erinnere noch einmal daran, dass dieser Spannungs teiler nicht ben\u00f6tigt wird, wenn der Schwellenwert des Feuchtigkeitsniveaus \u00fcber das Netzwerk mit dem MQTT-Protokoll festgelegt wird.<\/p>\n<p>Und nochmals m\u00f6chte ich daran erinnern, dass dieser Teiler nicht erforderlich ist, wenn der Schwellenwert f\u00fcr die Luftfeuchtigkeit \u00fcber das MQTT-Protokoll im Netzwerk festgelegt wird.<\/p>\n<p>Lass uns mit der Erstellung des Algorithmus f\u00fcr das Ger\u00e4t im Editor ElDraw ShIoTiny beginnen. Wie man zu diesem Editor gelangt, kann in den vorherigen Artikeln oder in der Anleitung, auf die am Anfang des Artikels verwiesen wird, nachgelesen werden.<\/p>\n<h4>Erster, einfachster Vorschlag<\/h4>\n<p>\nFangen wir mit dem Einfachen an: der Aktivierung des Relais <b>Relay1<\/b> bei \u00dcberschreitung des festgelegten Schwellenwertes f\u00fcr die Feuchtigkeit \u00fcber einen bestimmten Zeitraum.<\/p>\n<p><img decoding=\"async\" alt=\"ShIoTiny: Bel\u00fcftung feuchter R\u00e4ume (Projektbeispiel)\" src=\"\/wp-content\/uploads\/2019\/08\/e9f8d30627cf7cdbebccf863c2b2f808.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nWie wir sehen, ist es nicht kompliziert: es gibt insgesamt vier Knoten, ohne die Kommentar-Knoten zu z\u00e4hlen. <b>DHT11<\/b> \u2014 das ist der eigentliche Temperatur- und Feuchtigkeitssensor (kann ersetzt werden durch <b>DHT22<\/b>).<\/p>\n<p>Konstante <b>CONST<\/b> \u2014 der Schwellenwert f\u00fcr die Feuchtigkeit in Prozent.<\/p>\n<p>Der Komparator \u2014 ein Knoten, der zwei Zahlen vergleicht und 1 ausgibt, wenn die festgelegte Bedingung erf\u00fcllt ist, und 0, wenn die Bedingung nicht erf\u00fcllt ist.<\/p>\n<p>In unserem Fall wird diese Bedingung sein <b>A&gt;B<\/b><header> <b>A<\/b> \u2014 der vom Sensor gemessene Feuchtigkeitsgrad, und <b>B<\/b> \u2014 der Schwellenwert f\u00fcr die gleiche Feuchtigkeit.<\/p>\n<p>Sobald der gemessene Feuchtigkeitsgrad (<b>A<\/b>) den Schwellenwert f\u00fcr die Feuchtigkeit (<b>B<\/b>) \u00fcbersteigt, erscheint sofort 1 am Ausgang des Komparators und das Relais schaltet sich ein. Und umgekehrt, sobald der Feuchtigkeitsgrad wieder normal ist (d.h. <b>A&gt;B<\/b> A&lt;=B <b>erscheint 0 und das Relais wird ausgeschaltet.<\/b>) \u00fcbersteigt, erscheint sofort 1 am Ausgang des Komparators und das Relais schaltet sich ein. Und umgekehrt, sobald der Feuchtigkeitsgrad wieder normal ist (d.h. <b>A&gt;B<\/b> Versteht jeder? Wer nicht ganz, sollte es noch einmal lesen oder in die Beschreibung der Knoten in der Anleitung schauen.<\/p>\n<p>Ich m\u00f6chte darauf hinweisen, dass die Daten vom Sensor<\/p>\n<p>ungef\u00e4hr einmal alle 10 Sekunden aktualisiert werden. Daher kann das Relais nicht \u00f6fter als einmal alle 10 Sekunden ein- oder ausgeschaltet werden. <b>DHT11<\/b> An sich w\u00e4re alles gut, aber wir m\u00f6chten den Schwellenwert f\u00fcr die Feuchtigkeit mit einem variablen Widerstand setzen. Nichts einfacher als das!<\/p>\n<p>Wir ersetzen einfach den Konstanten-Knoten durch einen ADC-Knoten. Schlie\u00dflich haben wir den Spannungsteiler mit dem variablen Widerstand an den ADC angeschlossen.<\/p>\n<p><img decoding=\"async\" alt=\"ShIoTiny: Bel\u00fcftung feuchter R\u00e4ume (Projektbeispiel)\" src=\"\/wp-content\/uploads\/2019\/08\/3042bda4fe16e3fbad2d3f46f0beccb4.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDie Spannung am Eingang des ADC variiert von 0 bis 1 Volt. Und die Feuchtigkeit am Ausgang des Sensors variiert von 0 bis 100%. Wie vergleichen wir sie also? Ganz einfach. Der ADC-Knoten in<\/p>\n<p>misst nicht nur die Spannung am Eingang, sondern kann sie auch <b>ShIoTiny<\/b> skalieren und verschieben <i><b>Das bedeutet, dass am Ausgang des Moduls ADC1 (ADC) der Wert<\/b><\/i>.<\/p>\n<p>, der nach der Formel berechnet wird, vorhanden sein wird. <b>X<\/b>\u2014 die Spannung am Eingang ADC (von 0 bis 1V); <\/p>\n<p><img decoding=\"async\" alt=\"ShIoTiny: Bel\u00fcftung feuchter R\u00e4ume (Projektbeispiel)\" src=\"\/wp-content\/uploads\/2019\/08\/d01bc0ff4e6962252fced695d3894d32.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><header> <img decoding=\"async\" alt=\"ShIoTiny: Bel\u00fcftung feuchter R\u00e4ume (Projektbeispiel)\" src=\"\/wp-content\/uploads\/2019\/08\/ac0bf727edb4c759d12268376ec6ad9b.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u2014 der Bereich (ADC-Bereich) und <b>k<\/b> \u2014 die Verschiebung (ADC-Verschiebung). Wenn also <b>b<\/b>k=100 <b>b=0<\/b> und <b>, dann wird bei einer \u00c4nderung von<\/b>im Bereich von 0 bis 1, der Wert <img decoding=\"async\" alt=\"ShIoTiny: Bel\u00fcftung feuchter R\u00e4ume (Projektbeispiel)\" src=\"\/wp-content\/uploads\/2019\/08\/0afbeb2e49d5a107bc54d6bbd87ba23c.jpeg\" style=\"display:block;margin: 0 auto;\" \/> am Ausgang des ADC-Knotens sich im Bereich von 0 bis 100 \u00e4ndern. Das hei\u00dft, numerisch gleich dem Bereich der Feuchtigkeits\u00e4nderung von 0 bis 100%. <b>X<\/b> Der Ausgang des ADC-Knotens wird sich im Bereich von 0 bis 100 \u00e4ndern. Das bedeutet, dass es numerisch dem Bereich der \u00c4nderung der Luftfeuchtigkeit von 0 bis 100 % entspricht.<\/p>\n<p>Oder, einfacher ausgedr\u00fcckt, k\u00f6nnen Sie durch Drehen des Motors mit variabler Widerstand das Schwelleniveau der Feuchtigkeit von 0 bis 100 festlegen. Das einzige Unannehmlichkeiten ist, dass es keine Anzeigevorrichtungen gibt. Aber in der Praxis reicht es aus, wenn der Motor mit varialtem Widerstand 6 Unterteilungen hat (0 %, 20 %, 40 %, 60 %, 80 %, 100 %), um das Schwelleniveau der Feuchtigkeit einzustellen.<\/p>\n<p>Wie stellen wir die Koeffizienten ein? <b>k<\/b> \u2014 die Verschiebung (ADC-Verschiebung). Wenn also <b>b<\/b>-Offset (ADC-Offset)? Das ist ganz einfach! Klicken Sie mit der Maus auf den Knoten <b>ADC1<\/b> und sofort \u00f6ffnet sich ein Einstellungsfenster. Dort k\u00f6nnen Sie alles einstellen, was Sie ben\u00f6tigen. In unserem Fall wird es so ein Fenster sein, wie auf dem Bild.<\/p>\n<p><img decoding=\"async\" alt=\"ShIoTiny: Bel\u00fcftung feuchter R\u00e4ume (Projektbeispiel)\" src=\"\/wp-content\/uploads\/2019\/08\/ff81992b4fe236f5de6d17ca6bf8187c.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAlso, wir haben eine ganz einfache funktionale L\u00f6sung. Lassen Sie uns diese verbessern.<br \/>\n\u00dcbrigens hat die einfachste L\u00f6sung einen Vorteil \u2014 sie ben\u00f6tigt kein Internet. Sie ist v\u00f6llig autark.<\/p>\n<h4>Die zweite Variante: Wir schlie\u00dfen einen Knopf an.<\/h4>\n<p>\nAlles funktioniert und alle sind zufrieden. Aber es gibt ein Problem: Wir k\u00f6nnen die Bel\u00fcftung nicht zwangsweise einschalten. Wir haben bereits vereinbart, dass an den Eingang <b>angeschlossen. Hier gibt es nicht viel zu erl\u00e4utern.<\/b> ein Knopf angeschlossen wird, der den Ventilator zwangsgesteuert ein- und ausschaltet, unabh\u00e4ngig vom Feuchtigkeitssensor.<br \/>\nEs ist Zeit, diesen Knopf in unserem Schema-Programm zu verarbeiten.<\/p>\n<p><img decoding=\"async\" alt=\"ShIoTiny: Bel\u00fcftung feuchter R\u00e4ume (Projektbeispiel)\" src=\"\/wp-content\/uploads\/2019\/08\/673c274a5be680ce7c3ef1f9572f93fa.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDer Block zur Verarbeitung des Knopfdr\u00fcckens ist durch eine orange Linie hervorgehoben. Er stellt einen Z\u00e4hler f\u00fcr die Knopfdr\u00fccke dar, der auf null zur\u00fcckgesetzt wird, wenn der Ausgangswert \u00fcber eins liegt (gr\u00fcne Linie, Ausgang des Knotens <b>CT<\/b>).<\/p>\n<p>Hier funktioniert alles ebenso unkompliziert wie zuvor: Der Z\u00e4hler <b>CT<\/b> z\u00e4hlt die Dr\u00fccke des Knopfes, der an den Eingang angeschlossen ist. <b>angeschlossen. Hier gibt es nicht viel zu erl\u00e4utern.<\/b>Das hei\u00dft, der Wert am Ausgang dieses Z\u00e4hlers erh\u00f6ht sich mit jedem Druck des Knopfes um 1.<\/p>\n<p>Sobald dieser Wert zwei erreicht (also mehr als 1), erscheint am Ausgang des Komparators <b>A&gt;B<\/b> eine 1. Und diese 1 setzt den Z\u00e4hler <b>CT<\/b> auf null zur\u00fcck. Damit ist der Komparator gemeint, der unten im Schema ist!<\/p>\n<p>Somit hat unser Knopf zwei Zust\u00e4nde \u2014 0 und 1. Wenn wir mehr Zust\u00e4nde (3 oder 4 oder noch mehr) br\u00e4uchten \u2013 w\u00e4re es genug, die Konstante <b>CONST<\/b> von eins auf einen anderen Wert zu \u00e4ndern.<\/p>\n<p>Also haben wir zwei Bedingungen f\u00fcr das Einschalten des Ventilators: das \u00dcberschreiten des festgelegten Feuchtigkeitsniveaus und das einmalige Dr\u00fccken des Knopfes. Wenn eine der Bedingungen erf\u00fcllt ist, wird der Ventilator eingeschaltet. Und er l\u00e4uft, bis der Knopf erneut gedr\u00fcckt wird, <b>Und<\/b> oder das Feuchtigkeitsniveau wieder normal ist.<\/p>\n<p>Nat\u00fcrlich kann man den Algorithmus noch weiter komplizieren, aber das werden wir nicht tun \u2013 wir lassen Raum f\u00fcr Kreativit\u00e4t f\u00fcr diejenigen, die m\u00f6chten.<\/p>\n<h4>Dritte Variante, wir verbinden uns mit dem Internet<\/h4>\n<p>\nAlles, was wir beschrieben haben, ist durchaus funktionsf\u00e4hig. Und was ist mit dem Style? Jeder pickelige Hipster-Hacker-Cracker wird \u00fcber den lachen, der einen Knopf dreht und dr\u00fcckt, anstatt mit dem Smartphone zu steuern! Einen Knopf zu drehen ist \u201enicht modisch\u201c. Aber mit dem Finger \u00fcber das Smartphone zu wischen, bis der Finger blutet \u2013 das ist der H\u00f6hepunkt der W\u00fcnsche des Hipster-Hackers-Crackers (ich konnte nie alle unterscheiden \u2013 also entschuldigt, wenn ich falsch bin).<\/p>\n<p>Aber wir wollen gro\u00dfz\u00fcgig mit den genannten Personen sein. Die Steuerung \u00fcber das Internet hat auch reale Vorteile. Erstens ist es anschaulich. Es gibt eine Menge Anwendungen f\u00fcr alle Plattformen, die es erm\u00f6glichen, mit ein paar Klicks ein durchaus brauchbares Bedienfeld f\u00fcr unseren Controller-Karlson zu erstellen. Zweitens gibt es die M\u00f6glichkeit, den Feuchtigkeitszustand im Raum aus der Ferne zu \u00fcberwachen. Und drittens kann man nicht nur sehen, was der Ventilator macht \u2013 ob er sich dreht oder nicht \u2013, sondern auch, welcher Grenzwert f\u00fcr die Feuchtigkeit eingestellt ist. Und ob der Ventilator automatisch oder manuell eingeschaltet wurde. Kurz gesagt, alles, was Sie w\u00fcnschen.<\/p>\n<p>Nat\u00fcrlich ist es f\u00fcr einen bestimmten Ventilator zu viel Ehre, so viel Aufmerksamkeit zu bekommen. Aber das ist nur ein Beispiel.<\/p>\n<p>F\u00fcr die Verbindung zum Internet verwenden wir die Technologie <b>MQTT<\/b> und das dazugeh\u00f6rige Protokoll.<br \/>\nUm diese Technologie zu nutzen, ben\u00f6tigen wir einen <b>MQTT-Broker<\/b>. Das ist ein spezieller Server, der die <b>MQTT-Clients<\/b>, zum Beispiel <b>ShIoTIny<\/b> und Ihr Smartphone bedient.<\/p>\n<p>Das Wesen der Technologie <b>MQTT<\/b> besteht darin, dass jeder Client beliebige Daten unter einem bestimmten Namen (genannt <b>Thema<\/b> in der Terminologie <b>MQTT<\/b>) auf dem MQTT-Broker (Server) ver\u00f6ffentlicht. Andere Clients k\u00f6nnen sich unter diesem Namen (<b>Thema<\/b>) auf beliebige Daten abonnieren und die neu ver\u00f6ffentlichten Daten erhalten. Das hei\u00dft, der gesamte Datenaustausch erfolgt nach dem Prinzip Client-Broker-Client.<\/p>\n<p>Ich <i><b>Ich werde nicht<\/b><\/i> auf die Einzelheiten eingehen. Im Internet gibt es viele Artikel und Schulungen dar\u00fcber, wie das funktioniert <b>MQTT<\/b> und welche Programme zur Erstellung von Bedienfeldern verf\u00fcgbar sind. Ich zeige einfach, wie wir Daten \u00fcber <b>ShIoTiny<\/b>.<\/p>\n<p>empfangen und ver\u00f6ffentlichen k\u00f6nnen. <noindex><a rel=\"nofollow\" href=\"https:\/\/www.cloudmqtt.com\/\">www.cloudmqtt.com<\/a><\/noindex>Als Broker habe ich<\/p>\n<p>verwendet, aber das Prinzip ist \u00fcberall gleich. <b>Nehmen wir an, Sie haben sich bei einem<\/b>. Im Allgemeinen wird Ihnen der Broker ein (oder fordert Sie auf, ein) Benutzername und Passwort (zur Authentifizierung) sowie einen Port f\u00fcr die Verbindung zur Verf\u00fcgung stellen. Verbinden <b>ShIoTiny<\/b> zu <b>mit dem MQTT-Broker<\/b> kann auf zwei Arten erfolgen \u2014 \u00fcber eine standardm\u00e4\u00dfige Verbindung oder \u00fcber <b>TLS<\/b> (<b>SSL<\/b>).<\/p>\n<p>Alle diese Parameter werden <b>ShIoTiny<\/b> auf dem Tab <b>Netzwerk<\/b>, Abschnitt <b>MQTT-Verbindung zum Server<\/b>.<\/p>\n<p><img decoding=\"async\" alt=\"ShIoTiny: Bel\u00fcftung feuchter R\u00e4ume (Projektbeispiel)\" src=\"\/wp-content\/uploads\/2019\/08\/3a16cbd07a64428568e7c03f178e87ef.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nWenn Ihr <b>MQTT-Broker<\/b> keine Authentifizierung erfordert \u2014 geben Sie keinen Benutzernamen und kein Passwort ein (lassen Sie diese Felder leer).<\/p>\n<p>Parameter <b>MQTT-Topic-Pr\u00e4fix<\/b> erfordert eine separate Erkl\u00e4rung.<\/p>\n<p>Das MQTT-Parameter-Pr\u00e4fix ist eine Zeichenfolge, die zum Thema-Namen (<b>Thema<\/b>) beim Ver\u00f6ffentlichen und Abonnieren auf dem MQTT-Broker hinzugef\u00fcgt wird. Um das <b>MQTT-Pr\u00e4fix<\/b> f\u00fcr Ihren Controller festzulegen, geben Sie es einfach in das Eingabefeld \u201e<b>MQTT-Topic-Pr\u00e4fix<\/b>\u00bb (\u00ab<b>MQTT-Topic-Pr\u00e4fix<\/b>\u201c ein). Das Pr\u00e4fix beginnt immer mit einem Schr\u00e4gstrich (<b>\u00ab\/\u00bb<\/b>)! Wenn Sie den Schr\u00e4gstrich nicht im Eingabefeld eingeben \u2014 wird er automatisch hinzugef\u00fcgt. Im Pr\u00e4fix d\u00fcrfen keine Symbole <b>\u00ab#\u00bb<\/b> und <b>\u00ab+\u00bb<\/b>. Es gibt keine weiteren Einschr\u00e4nkungen.<\/p>\n<p>Wenn Sie beispielsweise den Parameter \u201e<b>status<\/b>\u201c (oder darauf abonnieren) ver\u00f6ffentlichen, und Ihr Pr\u00e4fix als \u201e<b>\/shiotiny\/<\/b>\u201c festgelegt ist, wird dieser Parameter auf dem Broker unter dem Namen \u201e<b>\/shiotiny\/status<\/b>\u201c ver\u00f6ffentlicht. Wenn Sie ein leeres Pr\u00e4fix festgelegt haben, beginnen alle Parameter auf dem Broker mit einem Schr\u00e4gstrich (<b>\u00ab\/\u00bb<\/b>): \u00ab<b>status<\/b>\u201c wird als \u201e<b>\/status<\/b>\u00bb.<\/p>\n<p>ver\u00f6ffentlicht. Angenommen, Sie haben sich bei <b>Nehmen wir an, Sie haben sich bei einem<\/b> registriert und Benutzername, Passwort und Port erhalten. Dann haben Sie diese Parameter auf dem Tab <b>Netzwerk<\/b>, Abschnitt <b>MQTT-Verbindung zum Server<\/b> des Controllers angeschlossen. Ich weise darauf hin, dass der Ventilator ein Ger\u00e4t ist, das mit Hochspannung betrieben wird. Daher, falls jemand so etwas selbst machen m\u00f6chte \u2013 seien Sie vorsichtig. Das hei\u00dft, ziehen Sie mindestens den Stecker, bevor Sie Ihre Finger oder Messger\u00e4te in das Schema stecken \u2013 schalten Sie zumindest den Ventilator aus. Und eine zweite Anmerkung. Wenn Ihr Ventilator leistungsst\u00e4rker ist als <b>ShIoTiny<\/b>.<\/p>\n<p>eingetragen. Angenommen, das Pr\u00e4fix ist auf \u201e<b>\/room\/<\/b>\u00bb.<\/p>\n<p>festgelegt. Lassen Sie uns zun\u00e4chst den Zustand aller Schl\u00fcsselkriterien ver\u00f6ffentlichen: Relais <b>Realay1<\/b>, den Zustand der manuellen Aktivierung, den Zustand der automatischen Aktivierung und schlie\u00dflich die Schwellen- und aktuellen Feuchtigkeitsniveaus. Und als Bonus \u2014 die Temperatur im Raum. Wie das geht, sehen Sie im Bild.<\/p>\n<p><img decoding=\"async\" alt=\"ShIoTiny: Bel\u00fcftung feuchter R\u00e4ume (Projektbeispiel)\" src=\"\/wp-content\/uploads\/2019\/08\/ed016ae37bb0cb1197e2e4fd649a7c4f.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nWie wir sehen, besteht der Unterschied zur vorherigen Version nur in den Knoten \u201e<b>MQTT Publish<\/b>\u201c. Unter Ber\u00fccksichtigung des Pr\u00e4fixes werden folgende Parameter ver\u00f6ffentlicht:<br \/>\n<img decoding=\"async\" alt=\"ShIoTiny: Bel\u00fcftung feuchter R\u00e4ume (Projektbeispiel)\" src=\"\/wp-content\/uploads\/2019\/08\/34b67dd1932f30de777a680802f71c59.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nWie wir sehen, ist der gesamte Status des Systems f\u00fcr uns klar ersichtlich!<\/p>\n<p>Aber wir wollen nicht nur sehen, sondern auch steuern. Was tun? Ganz einfach. Wir verzichten auf die Festlegung des Schwellenwerts f\u00fcr die Feuchtigkeit \u00fcber <b>ADC<\/b> und einen variablen Widerstand und werden diesen Schwellenwert f\u00fcr die Feuchtigkeit direkt \u00fcber unser Smartphone festlegen! <b>MQTT<\/b> Wir entfernen den ADC-Knoten aus dem Schema und f\u00fcgen drei neue Knoten hinzu:<\/p>\n<p><img decoding=\"async\" alt=\"ShIoTiny: Bel\u00fcftung feuchter R\u00e4ume (Projektbeispiel)\" src=\"\/wp-content\/uploads\/2019\/08\/c32d9ec2c1a082e0a1ead0b04526eba5.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nFLASH store <b>FLASH restore<\/b>, <b>MQTT beschreiben<\/b> und <b>Die Funktion des Knotens<\/b>.<\/p>\n<p>ist offensichtlich: Er erh\u00e4lt den Parameter <b>Die Funktion des Knotens<\/b> (Schwellenwert der Feuchtigkeit) vom <b>\/room\/trigHset<\/b> MQTT-Broker <b>. Aber was macht er mit den Daten danach? Er gibt sie einfach an den Knoten weiter.<\/b>. Aber was macht er dann mit den Daten? Er gibt sie einfach an den Knoten weiter. <b>FLASH restore<\/b>, der seinerseits diese Daten im nichtfl\u00fcchtigen Speicher unter dem Namen <b>trigH<\/b>. Danach liest der Knoten <b>MQTT beschreiben<\/b> die Daten aus dem nichtfl\u00fcchtigen Speicher unter dem Namen <b>trigH<\/b> und was danach passiert, wissen wir bereits.<\/p>\n<p>Warum solche Komplikationen? Warum kann man die erhaltenen Daten nicht sofort an den Komparator \u00fcbergeben? <\/p>\n<p>Wie der Genosse S. Holmes sagte \u2014 <i>es ist elementar<\/i>! <b>mit dem MQTT-Broker<\/b>Niemand garantiert, dass nach dem Einschalten Ihres Ger\u00e4ts eine Verbindung zu <b>MQTT-Broker<\/b> hergestellt wird und jemand einen neuen Wert ver\u00f6ffentlicht <b>\/room\/trigHset<\/b>, dann wird dieser neue Wert verwendet.<\/p>\n<p>Danach k\u00f6nnen Sie alles M\u00f6gliche erfinden. Zum Beispiel zus\u00e4tzlich zur Luftfeuchtigkeit auch die Temperatur erfassen. Oder eine \u201eintelligente\u201c Lichtsteuerung hinzuf\u00fcgen (wir haben noch zwei Relais und zwei Eing\u00e4nge ungenutzt). Alles liegt in Ihrer Hand!<\/p>\n<h4>Fazit<\/h4>\n<p>\nSo haben wir einige Beispiele f\u00fcr die einfachste Art eines Controllers auf Basis von ShIoTiny betrachtet. Vielleicht wird das jemandem n\u00fctzlich sein.<\/p>\n<p>Wie immer sind Anregungen, W\u00fcnsche, Fragen, Tippfehler und \u00c4hnliches an die E-Mail: <b>shiotiny@yandex.ru<\/b><br \/>\n<br \/>Quelle: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/464485\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0442\u0435\u0437\u0438\u0441\u044b \u0438\u043b\u0438 \u043e \u0447\u0435\u043c \u044d\u0442\u0430 \u0441\u0442\u0430\u0442\u044c\u044f \u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u043c \u0446\u0438\u043a\u043b \u0441\u0442\u0430\u0442\u0435\u0439 \u043e ShIoTiny \u2014 \u0432\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u0443\u0435\u043c\u043e\u043c \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0435 \u043d\u0430 \u0431\u0430\u0437\u0435 \u0447\u0438\u043f\u0430 ESP8266. \u0412 \u044d\u0442\u043e\u0442 \u0441\u0442\u0430\u0442\u044c\u0435 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u043d\u043e \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0446\u0438\u0438 \u0432 \u0432\u0430\u043d\u043d\u043e\u0439 \u043a\u043e\u043c\u043d\u0430\u0442\u0435 \u0438\u043b\u0438 \u0434\u0440\u0443\u0433\u043e\u043c \u043f\u043e\u043c\u0435\u0449\u0435\u043d\u0438\u0438 \u0441 \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u043d\u043e\u0439 \u0432\u043b\u0430\u0436\u043d\u043e\u0441\u0442\u044c\u044e \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u0441\u0442\u0440\u043e\u0438\u0442\u0441\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0434\u043b\u044f ShIoTiny. \u041f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0435 \u0441\u0442\u0430\u0442\u044c\u0438 \u0441\u0435\u0440\u0438\u0438. ShIoTiny: \u043c\u0430\u043b\u0430\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044f, \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u0432\u0435\u0449\u0435\u0439 \u0438\u043b\u0438 \u00ab\u0437\u0430 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":28079,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-37423","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0442\u0435\u0437\u0438\u0441\u044b \u0438\u043b\u0438 \u043e \u0447\u0435\u043c \u044d\u0442\u0430.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/shiotiny-ventilyatsiya-vlazhnogo-pomeshheniya-proekt-primer\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47ShIoTiny: \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0446\u0438\u044f \u0432\u043b\u0430\u0436\u043d\u043e\u0433\u043e \u043f\u043e\u043c\u0435\u0449\u0435\u043d\u0438\u044f (\u043f\u0440\u043e\u0435\u043a\u0442-\u043f\u0440\u0438\u043c\u0435\u0440) | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0442\u0435\u0437\u0438\u0441\u044b \u0438\u043b\u0438 \u043e \u0447\u0435\u043c \u044d\u0442\u0430.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/shiotiny-ventilyatsiya-vlazhnogo-pomeshheniya-proekt-primer\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:17:33+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:17:33+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47ShIoTiny: Bel\u00fcftung eines feuchten Raumes (Projektbeispiel) | ProHoster","description":"Wichtige Thesen oder worum es hier geht.","canonical_url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/shiotiny-ventilyatsiya-vlazhnogo-pomeshheniya-proekt-primer","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"de_DE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47ShIoTiny: \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0446\u0438\u044f \u0432\u043b\u0430\u0436\u043d\u043e\u0433\u043e \u043f\u043e\u043c\u0435\u0449\u0435\u043d\u0438\u044f (\u043f\u0440\u043e\u0435\u043a\u0442-\u043f\u0440\u0438\u043c\u0435\u0440) | ProHoster","og:description":"\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0442\u0435\u0437\u0438\u0441\u044b \u0438\u043b\u0438 \u043e \u0447\u0435\u043c \u044d\u0442\u0430.","og:url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/shiotiny-ventilyatsiya-vlazhnogo-pomeshheniya-proekt-primer","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:17:33+00:00","article:modified_time":"2019-10-31T19:17:33+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"37423","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 17:45:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:27:24","updated":"2026-01-23 17:45:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/37423","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/comments?post=37423"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/37423\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media\/28079"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media?parent=37423"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/categories?post=37423"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/tags?post=37423"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}