{"id":207,"date":"2017-04-08T08:38:39","date_gmt":"2017-04-08T06:38:39","guid":{"rendered":"http:\/\/www.twobears.at\/wordpress\/diy\/?p=207"},"modified":"2017-04-08T08:38:39","modified_gmt":"2017-04-08T06:38:39","slug":"co2-messung-mit-mh-z19-und-arduino","status":"publish","type":"post","link":"https:\/\/www.twobears.at\/universe\/diy\/2017\/04\/08\/co2-messung-mit-mh-z19-und-arduino\/","title":{"rendered":"CO2 Messung mit MH-Z19 und Arduino (Teil 1)"},"content":{"rendered":"<p>Soda, hier geht es also um die CO2 Messung mit dem Arduino und dem MH-Z19.<\/p>\n<h2>Warum CO2 Messen?<\/h2>\n<p>Gestellt hat sich die Frage, wie wir unser neues Haus geplant haben. Wir standen vor der Entscheidung, ob wir eine zus\u00e4tzliche L\u00fcftung einplanen sollen oder nicht. Bei der Recherche zu diesem Thema stie\u00df ich auf die CO2 Thematik. CO2 kann recht gut als Ma\u00df verwendet werden, wie verbraucht die Raumluft ist. Das ist doch interessant, oder? Aber wie hoch sind die CO2 Werte eigentlich derzeit im alten Haus? (ohne L\u00fcftung aber mit &#8222;undichten&#8220; Fenstern) &#8211; keine Ahnung! &nbsp;Also Messen.<\/p>\n<h2>Welchen Sensor nehmen?<\/h2>\n<p>Messprinzip bei diesen Sensoren ist NDIR (= &#8222;nondispersive infrared&#8220;). Dabei wird ausgenutzt, dass bestimmte IR-Wellenl\u00e4ngen (4.26 \u00b5m) von CO2 absorbiert werden. F\u00fcr die Messung braucht man eine IR Quelle, einen Filter, der nur die relevanten Wellenl\u00e4ngen durchl\u00e4sst, ein &#8222;St\u00fcck Luft&#8220; mit CO2 drinnen, das mehr oder wenige absorbiert und einen Detektor, der die durchgelassene IR-Strahlung misst. Je mehr CO2 in der Luft ist, desto weniger misst der Detektor. Gut w\u00e4re auch noch ein Referenzdetektor, der die IR-Strahlung direkt misst (damit Schwankungen in der Quelle herausgerechnet werden k\u00f6nnen). Dann brauchen wir noch ein wenig Mathematik und haben ein CO2-Signal.<\/p>\n<p>Das alles gibt es fix fertig als CO2-Detektor zu kaufen! Brauchen wir also nur einen Sensor kaufen, den mit dem Arduino auslesen und dann k\u00f6nnen wir die Daten verarbeiten wie wir wollen!<\/p>\n<p>So einfach?<\/p>\n<p>Na schauen wir mal.<\/p>\n<p>Die Sensoren die es da gibt sind zum Teil nicht ganz billig. Da ich aber sp\u00e4ter gerne dauernd in mehreren R\u00e4umen messen m\u00f6chte sollte die L\u00f6sung nicht allzu teuer sein. Nach einiger Recherche bin ich auf den MH-Z19 von Winsen gesto\u00dfen (Die Seite des Herstellers mit dem entsprechenden Datenblatt ist <a href=\"http:\/\/www.winsen-sensor.com\/products\/ndir-co2-sensor\/mh-z19.html#items4\">hier<\/a>).<\/p>\n<p>Die Daten des Sensor&nbsp;schauen bei erster Betrachtung recht brauchbar aus und die Kosten f\u00fcr den Sensor liegen im Internet bei ca. \u20ac 20. Nicht extrem billig, aber auch nicht arg teuer.<\/p>\n<p>Bei genauerer Betrachtung f\u00e4llt auf, dass die Informationen im Datenblatt ein wenig d\u00fcrftig sind. Es wird also ein wenig &#8222;Reverse-Engineering&#8220; gefragt sein, aber das ist ja auch genau die Richtige Aufgabe f\u00fcr den DIYDonkey!!! Eine wenig Reverse-Engineering wurde auch schon <a href=\"https:\/\/revspace.nl\/MHZ19\">hier<\/a> und <a href=\"https:\/\/geektimes.ru\/post\/285572\/\">hier<\/a>&nbsp;durchgef\u00fchrt (letzteres ist in russisch &#8211; aber Google Translate hilft etwas). Aber so ganz verstanden scheinen die Funktion noch nicht zu sein. Es bleiben also noch Aufgaben f\u00fcr mich.<\/p>\n<p>F\u00fcr den Anfang habe ich mir mal 2 St\u00fcck von diesen Sensoren bestellt, die auch gestern (05.04.2017) gekommen sind.<\/p>\n<h2>Also frisch ans Werk!<\/h2>\n<p>Als erstes habe ich mir mal einen kleinen Testaufbau auf einer Lochrasterplatine gel\u00f6tet, mit der ich beide Sensoren mit einem Arduino Mega auslesen kann. F\u00fcr den Anfang verwende ich mal nur die serielle Schnittstelle (UART), d.h. man mu\u00df die Sensoren nur an 5V, GND anschlie\u00dfen und TXD vom Sensor mit RX am Arduine und RXD mit TX am Arduino verbinden.<\/p>\n<figure id=\"attachment_237\" aria-describedby=\"caption-attachment-237\" style=\"width: 300px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/i0.wp.com\/www.twobears.at\/universe\/diy\/wp-content\/uploads\/sites\/2\/2017\/04\/20170415_135710.jpg?ssl=1\"><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-237 size-medium\" src=\"https:\/\/i0.wp.com\/www.twobears.at\/universe\/diy\/wp-content\/uploads\/sites\/2\/2017\/04\/20170415_135710.jpg?resize=300%2C225&#038;ssl=1\" alt=\"Hier sind die beiden CO2 Sensoren MH-Z19 auf einem Lochrasterboard auf einem Arduino Maga verbaut\" width=\"300\" height=\"225\" srcset=\"https:\/\/i0.wp.com\/www.twobears.at\/universe\/diy\/wp-content\/uploads\/sites\/2\/2017\/04\/20170415_135710-scaled.jpg?resize=300%2C225&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.twobears.at\/universe\/diy\/wp-content\/uploads\/sites\/2\/2017\/04\/20170415_135710-scaled.jpg?resize=1024%2C768&amp;ssl=1 1024w, https:\/\/i0.wp.com\/www.twobears.at\/universe\/diy\/wp-content\/uploads\/sites\/2\/2017\/04\/20170415_135710-scaled.jpg?resize=768%2C576&amp;ssl=1 768w, https:\/\/i0.wp.com\/www.twobears.at\/universe\/diy\/wp-content\/uploads\/sites\/2\/2017\/04\/20170415_135710-scaled.jpg?resize=1536%2C1152&amp;ssl=1 1536w, https:\/\/i0.wp.com\/www.twobears.at\/universe\/diy\/wp-content\/uploads\/sites\/2\/2017\/04\/20170415_135710-scaled.jpg?resize=2048%2C1536&amp;ssl=1 2048w, https:\/\/i0.wp.com\/www.twobears.at\/universe\/diy\/wp-content\/uploads\/sites\/2\/2017\/04\/20170415_135710-scaled.jpg?resize=1568%2C1176&amp;ssl=1 1568w, https:\/\/i0.wp.com\/www.twobears.at\/universe\/diy\/wp-content\/uploads\/sites\/2\/2017\/04\/20170415_135710-scaled.jpg?w=1280&amp;ssl=1 1280w, https:\/\/i0.wp.com\/www.twobears.at\/universe\/diy\/wp-content\/uploads\/sites\/2\/2017\/04\/20170415_135710-scaled.jpg?w=1920&amp;ssl=1 1920w\" sizes=\"(max-width: 300px) 100vw, 300px\" data-recalc-dims=\"1\" \/><\/a><figcaption id=\"caption-attachment-237\" class=\"wp-caption-text\">Hier sind die beiden MH-Z19 auf einem Lochrasterboard auf einem Arduino Maga verbaut<\/figcaption><\/figure>\n<p>UART funktioniert am Sensor mit 9600 Baud, 8 Datenbits, 1 Stopbit und ohne Parity Check (im Datenblatt sind hier wohl ein wenig die Bits und Bytes durcheinander gekommen &#8211; aber da das Stanardeinstellungen sind, ist klar was gemeint ist).<\/p>\n<p>Ein Befehl f\u00fcr diesen Sensor besteht aus 9 Byte. Zuerst kommt ein Startbyte 0xFF dann die Nummer des Sensors, die standardm\u00e4\u00dfig 0x01 ist. Das dritte Byte enth\u00e4lt den Befehl, dann 5 Bytes &nbsp;f\u00fcr Parameter und ein Byte Pr\u00fcfsumme.<\/p>\n<p>Der Befehl um die CO2 Gaskonzentration auszulesen ist 0x86. Der Ganze Befehl sieht also so aus:<\/p>\n<table>\n<tbody>\n<tr>\n<td width=\"67\">\n<p style=\"text-align: center\">Byte0<\/p>\n<\/td>\n<td style=\"text-align: center\" width=\"67\">Byte1<\/td>\n<td style=\"text-align: center\" width=\"67\">Byte2<\/td>\n<td style=\"text-align: center\" width=\"67\">Byte3<\/td>\n<td style=\"text-align: center\" width=\"67\">Byte4<\/td>\n<td style=\"text-align: center\" width=\"67\">Byte5<\/td>\n<td style=\"text-align: center\" width=\"67\">Byte6<\/td>\n<td style=\"text-align: center\" width=\"67\">Byte7<\/td>\n<td style=\"text-align: center\" width=\"67\">Byte8<\/td>\n<\/tr>\n<tr>\n<td width=\"67\">Startbyte<\/td>\n<td width=\"67\">Sensornummer<\/td>\n<td width=\"67\">Befehl<\/td>\n<td width=\"67\">Parameter<\/td>\n<td width=\"67\">&nbsp;<\/td>\n<td width=\"67\">&nbsp;<\/td>\n<td width=\"67\">&nbsp;<\/td>\n<td width=\"67\">&nbsp;<\/td>\n<td width=\"67\">Pr\u00fcfsumme<\/td>\n<\/tr>\n<tr>\n<td width=\"67\">\n<p style=\"text-align: center\">0xFF<\/p>\n<\/td>\n<td style=\"text-align: center\" width=\"67\">0x01<\/td>\n<td style=\"text-align: center\" width=\"67\">0x86<\/td>\n<td style=\"text-align: center\" width=\"67\">0x00<\/td>\n<td style=\"text-align: center\" width=\"67\">0x00<\/td>\n<td style=\"text-align: center\" width=\"67\">0x00<\/td>\n<td style=\"text-align: center\" width=\"67\">0x00<\/td>\n<td style=\"text-align: center\" width=\"67\">0x00<\/td>\n<td width=\"67\">\n<p style=\"text-align: center\">0x79<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Der Sensor antwortet dann mit neun Bytes:<\/p>\n<table>\n<tbody>\n<tr>\n<td width=\"67\">\n<p style=\"text-align: center\">Byte0<\/p>\n<\/td>\n<td style=\"text-align: center\" width=\"67\">Byte1<\/td>\n<td style=\"text-align: center\" width=\"67\">Byte2<\/td>\n<td style=\"text-align: center\" width=\"67\">Byte3<\/td>\n<td style=\"text-align: center\" width=\"67\">Byte4<\/td>\n<td style=\"text-align: center\" width=\"67\">Byte5<\/td>\n<td style=\"text-align: center\" width=\"67\">Byte6<\/td>\n<td style=\"text-align: center\" width=\"67\">Byte7<\/td>\n<td style=\"text-align: center\" width=\"67\">Byte8<\/td>\n<\/tr>\n<tr>\n<td width=\"67\">Startbyte<\/td>\n<td width=\"67\">Befehl<\/td>\n<td width=\"67\">CO2-high<\/td>\n<td width=\"67\">CO2-low<\/td>\n<td width=\"67\">Temp<\/td>\n<td width=\"67\">Status<\/td>\n<td width=\"67\">Min-high<\/td>\n<td width=\"67\">Min-low<\/td>\n<td width=\"67\">Pr\u00fcfsumme<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Das Byte0 ist hier wieder das Starbyte 0xFF gefolgt von der Wiederholung das Befehls 0x85. Byte2 und Byte3 enthalten den aktuellen Co2 Wert. D.h. der aktuell gemessene CO2 Wert berechnet sich aus (CO2-high*256+CO2-low).<\/p>\n<p>Die Bytes 4-7 sind im Datenblatt nicht dokumentiert. In weiser Voraussicht habe ich hier mal die Namen Temp, Status, Min-high und Min-low vergeben. Was es damit f\u00fcr eine Bewandtnis hat, werden wir sp\u00e4ter sehen. Der Wert Temp enth\u00e4lt die vom Sensor gemessene Temperatur plus 40\u00b0C. Um die wahre Temperatur zu ermitteln m\u00fcssen wir also (Byte4-40) rechnen (das haben schon viele herausgefunden &#8211; siehe die beiden Links oben).<\/p>\n<p>Jetzt brauchen wir noch ein kleines Programm f\u00fcr den Arduino, der die Werte der beiden Sensoren auslie\u00dft und an den Computer weitergibt. Ich habe das mal aus ausgef\u00fchrt:<\/p>\n<pre class=\"lang:c++ decode:true \">\/* Programm zum Auslesen der CO2-Konzentration aus 2 Sensoren MH-Z19 an einem Arduino Mega\n * Die Sensoren befinden sich an den seriellen Schnittstellen 1 und 2.\n * Die Werte werden dann an im Klartext an den Computer \u00fcbergeben.\n * Geschrieben von: Norbert Huber\n * Datum:           08.04.2017\n *\/\n\n\nbyte com[]={0xff,0x01,0x86,0x00,0x00,0x00,0x00,0x00,0x79};  \/\/Befehl zum Auslesen der CO2 Konzentration\nbyte return1[9];                                            \/\/hier kommt der zur\u00fcckgegeben Wert des ersten Sensors rein\nint concentration1;                                         \/\/CO2-Konzentration des ersten Sensors\nint minimum1;                                               \/\/Minimum-Wert des ersten Sensors\nint temp1;                                                  \/\/Temperatur-Wert des ersten Sensors\nbyte status1;                                               \/\/Status des ersten Sensors\nbyte return2[9];\nint concentration2;\nint minimum2;\nint temp2;\nbyte status2;\n\nvoid setup() {\n  Serial.begin(9600);   \/\/Initialisierung Serielle Schnittstelle zum Computer\n  Serial1.begin(9600);  \/\/Initialisierung der seriellen Schnittstelle f\u00fcr den ersten Sensor\n  Serial2.begin(9600);  \/\/Initialisierung der seriellen Schnittstelle f\u00fcr den zweiten Sensor\n}\n\nvoid loop() {\n   while (Serial1.available() &gt;0) {     \/\/Hier wird der Buffer der Seriellen Schnittstelle gelehrt \n    Serial1.read();\n   }\n   while (Serial2.available() &gt;0)  {\n    Serial2.read();\n   }\n                                                \/\/Sensor 1:\n   Serial1.write(com,9);                        \/\/Befehl zum Auslesen der CO2 Konzentration\n   Serial1.readBytes(return1,9);                \/\/Auslesen der Antwort\n   concentration1 = return1[2]*256+return1[3];  \/\/Berechnung der Konzentration\n   temp1 = return1[4]-40;                       \/\/Berechnung der Temperatur\n   minimum1 = return1[6]*256+return1[7];        \/\/Berechnung des Minimums\n   status1 = return1[5];                        \/\/Berechnung des Status\n   Serial.print(\"Zeit = \");                     \/\/Senden der Werte an den PC \n   Serial.print(millis());                      \/\/Am Angfang wird die Zeit in ms gesendet, die der Arduino in Betrieb ist\n   Serial.print(\" ; Sensor 1: CO2 = \");\n   Serial.print(concentration1);\n   Serial.print(\" ; Temp = \");\n   Serial.print(temp1);\n   Serial.print(\" ; Minimum = \");\n   Serial.print(minimum1);\n   Serial.print(\" ; Status = \");\n   Serial.print(status1);\n                                                \/\/Sensor2: siehe oben\n   Serial2.write(com,9);\n   Serial2.readBytes(return2,9);\n   concentration2 = return2[2]*256+return2[3];\n   temp2 = return2[4]-40;\n   minimum2 = return2[6]*256+return2[7];\n   status2=return2[5];\n   Serial.print(\" ; Sensor 2: CO2 = \");\n   Serial.print(concentration2);\n   Serial.print(\" ; Temp = \");\n   Serial.print(temp2);\n   Serial.print(\" ; Minimum = \");\n   Serial.print(minimum2);\n   Serial.print(\" ; Status = \");\n   Serial.println(status2);\n   \n   delay(10000);                              \/\/10s warten\n}<\/pre>\n<p>Das Programm auf den Arduino hochladen und schon werden die CO2-Werte gemessen und angezeigt. Bei mir hat das auf Anhieb funktioniert.<\/p>\n<p>Die nicht dokumentierten Werte sehen wir jetzt auch &#8211; aber mit denen besch\u00e4ftigen wir uns im n\u00e4chsten Artikel &#8211; da geht es dann mit dem Reverse-Engineering richtig los!<\/p>\n<p>Wenn es euch das interessiert, dann m\u00fcsst ihr etwas Geduld haben.<\/p>\n<p>Ich hoffe, der Artikel hat euch gefallen, und vielleicht auch ein wenig geholfen. \u00dcber einen Kommentar w\u00fcrde ich mich freuen.<\/p>\n<p>Liebe Gr\u00fc\u00dfe<\/p>\n<p>Euer DIYDonkey<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Soda, hier geht es also um die CO2 Messung mit dem Arduino und dem MH-Z19. Warum CO2 Messen? Gestellt hat sich die Frage, wie wir unser neues Haus geplant haben. Wir standen vor der Entscheidung, ob wir eine zus\u00e4tzliche L\u00fcftung einplanen sollen oder nicht. Bei der Recherche zu diesem Thema stie\u00df ich auf die CO2 &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/www.twobears.at\/universe\/diy\/2017\/04\/08\/co2-messung-mit-mh-z19-und-arduino\/\" class=\"more-link\"><span class=\"screen-reader-text\">\u201eCO2 Messung mit MH-Z19 und Arduino (Teil 1)\u201c<\/span> weiterlesen<\/a><\/p>\n","protected":false},"author":1,"featured_media":237,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1,2,3],"tags":[5,40,41,42,43,44],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v19.14 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>CO2 Messung mit MH-Z19 und Arduino (Teil 1) - TwoBears DIY<\/title>\n<meta name=\"description\" content=\"Erster Teil der Serie um einen MH-Z19 Sensor zur CO2 Messung zu verwenden. Er ist relativ g\u00fcnstig, und kann leicht mit dem Arduino ausgelesen werden.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.twobears.at\/universe\/diy\/2017\/04\/08\/co2-messung-mit-mh-z19-und-arduino\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"CO2 Messung mit MH-Z19 und Arduino (Teil 1) - TwoBears DIY\" \/>\n<meta property=\"og:description\" content=\"Erster Teil der Serie um einen MH-Z19 Sensor zur CO2 Messung zu verwenden. Er ist relativ g\u00fcnstig, und kann leicht mit dem Arduino ausgelesen werden.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.twobears.at\/universe\/diy\/2017\/04\/08\/co2-messung-mit-mh-z19-und-arduino\/\" \/>\n<meta property=\"og:site_name\" content=\"TwoBears DIY\" \/>\n<meta property=\"article:published_time\" content=\"2017-04-08T06:38:39+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/i0.wp.com\/www.twobears.at\/universe\/diy\/wp-content\/uploads\/sites\/2\/2017\/04\/20170415_135710-scaled.jpg?fit=2560%2C1920&ssl=1\" \/>\n\t<meta property=\"og:image:width\" content=\"2560\" \/>\n\t<meta property=\"og:image:height\" content=\"1920\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Norbert\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"Norbert\" \/>\n\t<meta name=\"twitter:label2\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.twobears.at\/universe\/diy\/2017\/04\/08\/co2-messung-mit-mh-z19-und-arduino\/\",\"url\":\"https:\/\/www.twobears.at\/universe\/diy\/2017\/04\/08\/co2-messung-mit-mh-z19-und-arduino\/\",\"name\":\"CO2 Messung mit MH-Z19 und Arduino (Teil 1) - TwoBears DIY\",\"isPartOf\":{\"@id\":\"https:\/\/www.twobears.at\/universe\/diy\/#website\"},\"datePublished\":\"2017-04-08T06:38:39+00:00\",\"dateModified\":\"2017-04-08T06:38:39+00:00\",\"author\":{\"@id\":\"https:\/\/www.twobears.at\/universe\/diy\/#\/schema\/person\/41adaf5c59ce9abb1d61d1af2c6060be\"},\"description\":\"Erster Teil der Serie um einen MH-Z19 Sensor zur CO2 Messung zu verwenden. Er ist relativ g\u00fcnstig, und kann leicht mit dem Arduino ausgelesen werden.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.twobears.at\/universe\/diy\/2017\/04\/08\/co2-messung-mit-mh-z19-und-arduino\/#breadcrumb\"},\"inLanguage\":\"de-DE\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.twobears.at\/universe\/diy\/2017\/04\/08\/co2-messung-mit-mh-z19-und-arduino\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.twobears.at\/universe\/diy\/2017\/04\/08\/co2-messung-mit-mh-z19-und-arduino\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Startseite\",\"item\":\"https:\/\/www.twobears.at\/universe\/diy\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"CO2 Messung mit MH-Z19 und Arduino (Teil 1)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.twobears.at\/universe\/diy\/#website\",\"url\":\"https:\/\/www.twobears.at\/universe\/diy\/\",\"name\":\"TwoBears DIY\",\"description\":\"Eine weitere TwoBears Universe Website\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.twobears.at\/universe\/diy\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"de-DE\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.twobears.at\/universe\/diy\/#\/schema\/person\/41adaf5c59ce9abb1d61d1af2c6060be\",\"name\":\"Norbert\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de-DE\",\"@id\":\"https:\/\/www.twobears.at\/universe\/diy\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/03d18794b0bb1b2a66afa03ed6960a0c?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/03d18794b0bb1b2a66afa03ed6960a0c?s=96&d=mm&r=g\",\"caption\":\"Norbert\"},\"url\":\"https:\/\/www.twobears.at\/universe\/diy\/author\/norbert\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"CO2 Messung mit MH-Z19 und Arduino (Teil 1) - TwoBears DIY","description":"Erster Teil der Serie um einen MH-Z19 Sensor zur CO2 Messung zu verwenden. Er ist relativ g\u00fcnstig, und kann leicht mit dem Arduino ausgelesen werden.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.twobears.at\/universe\/diy\/2017\/04\/08\/co2-messung-mit-mh-z19-und-arduino\/","og_locale":"de_DE","og_type":"article","og_title":"CO2 Messung mit MH-Z19 und Arduino (Teil 1) - TwoBears DIY","og_description":"Erster Teil der Serie um einen MH-Z19 Sensor zur CO2 Messung zu verwenden. Er ist relativ g\u00fcnstig, und kann leicht mit dem Arduino ausgelesen werden.","og_url":"https:\/\/www.twobears.at\/universe\/diy\/2017\/04\/08\/co2-messung-mit-mh-z19-und-arduino\/","og_site_name":"TwoBears DIY","article_published_time":"2017-04-08T06:38:39+00:00","og_image":[{"width":2560,"height":1920,"url":"https:\/\/i0.wp.com\/www.twobears.at\/universe\/diy\/wp-content\/uploads\/sites\/2\/2017\/04\/20170415_135710-scaled.jpg?fit=2560%2C1920&ssl=1","type":"image\/jpeg"}],"author":"Norbert","twitter_card":"summary_large_image","twitter_misc":{"Verfasst von":"Norbert","Gesch\u00e4tzte Lesezeit":"6 Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.twobears.at\/universe\/diy\/2017\/04\/08\/co2-messung-mit-mh-z19-und-arduino\/","url":"https:\/\/www.twobears.at\/universe\/diy\/2017\/04\/08\/co2-messung-mit-mh-z19-und-arduino\/","name":"CO2 Messung mit MH-Z19 und Arduino (Teil 1) - TwoBears DIY","isPartOf":{"@id":"https:\/\/www.twobears.at\/universe\/diy\/#website"},"datePublished":"2017-04-08T06:38:39+00:00","dateModified":"2017-04-08T06:38:39+00:00","author":{"@id":"https:\/\/www.twobears.at\/universe\/diy\/#\/schema\/person\/41adaf5c59ce9abb1d61d1af2c6060be"},"description":"Erster Teil der Serie um einen MH-Z19 Sensor zur CO2 Messung zu verwenden. Er ist relativ g\u00fcnstig, und kann leicht mit dem Arduino ausgelesen werden.","breadcrumb":{"@id":"https:\/\/www.twobears.at\/universe\/diy\/2017\/04\/08\/co2-messung-mit-mh-z19-und-arduino\/#breadcrumb"},"inLanguage":"de-DE","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.twobears.at\/universe\/diy\/2017\/04\/08\/co2-messung-mit-mh-z19-und-arduino\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.twobears.at\/universe\/diy\/2017\/04\/08\/co2-messung-mit-mh-z19-und-arduino\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Startseite","item":"https:\/\/www.twobears.at\/universe\/diy\/"},{"@type":"ListItem","position":2,"name":"CO2 Messung mit MH-Z19 und Arduino (Teil 1)"}]},{"@type":"WebSite","@id":"https:\/\/www.twobears.at\/universe\/diy\/#website","url":"https:\/\/www.twobears.at\/universe\/diy\/","name":"TwoBears DIY","description":"Eine weitere TwoBears Universe Website","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.twobears.at\/universe\/diy\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"de-DE"},{"@type":"Person","@id":"https:\/\/www.twobears.at\/universe\/diy\/#\/schema\/person\/41adaf5c59ce9abb1d61d1af2c6060be","name":"Norbert","image":{"@type":"ImageObject","inLanguage":"de-DE","@id":"https:\/\/www.twobears.at\/universe\/diy\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/03d18794b0bb1b2a66afa03ed6960a0c?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/03d18794b0bb1b2a66afa03ed6960a0c?s=96&d=mm&r=g","caption":"Norbert"},"url":"https:\/\/www.twobears.at\/universe\/diy\/author\/norbert\/"}]}},"jetpack_featured_media_url":"https:\/\/i0.wp.com\/www.twobears.at\/universe\/diy\/wp-content\/uploads\/sites\/2\/2017\/04\/20170415_135710-scaled.jpg?fit=2560%2C1920&ssl=1","_links":{"self":[{"href":"https:\/\/www.twobears.at\/universe\/diy\/wp-json\/wp\/v2\/posts\/207"}],"collection":[{"href":"https:\/\/www.twobears.at\/universe\/diy\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.twobears.at\/universe\/diy\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.twobears.at\/universe\/diy\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.twobears.at\/universe\/diy\/wp-json\/wp\/v2\/comments?post=207"}],"version-history":[{"count":0,"href":"https:\/\/www.twobears.at\/universe\/diy\/wp-json\/wp\/v2\/posts\/207\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.twobears.at\/universe\/diy\/wp-json\/wp\/v2\/media\/237"}],"wp:attachment":[{"href":"https:\/\/www.twobears.at\/universe\/diy\/wp-json\/wp\/v2\/media?parent=207"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.twobears.at\/universe\/diy\/wp-json\/wp\/v2\/categories?post=207"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.twobears.at\/universe\/diy\/wp-json\/wp\/v2\/tags?post=207"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}