{"id":219,"date":"2018-07-15T18:15:45","date_gmt":"2018-07-15T16:15:45","guid":{"rendered":"http:\/\/service.projektlabor.tu-berlin.de\/wordpress\/greenlab\/?page_id=219"},"modified":"2018-07-15T18:15:45","modified_gmt":"2018-07-15T16:15:45","slug":"speicher","status":"publish","type":"page","link":"https:\/\/service.projektlabor.tu-berlin.de\/wordpress\/greenlab\/interface\/speicher\/","title":{"rendered":"Speicher"},"content":{"rendered":"<p>Das Ziel unserer Kleingruppe im Microcontrollerbereich ist es, einen Microcontroller mit einem passenden Speicher zu erg\u00e4nzen. Damit k\u00f6nnen wir sp\u00e4ter aufgenommene Daten der einzelnen Sensoren abspeichern, um sp\u00e4ter einen genauen \u00dcberblick zu erhalten, ob das Gew\u00e4chshaus entsprechend funktioniert.<\/p>\n<p>Um das Ganze zu realisieren, haben wir uns bisher in unseren Kleingruppen eingefunden und recherchiert, wie man das ganze umsetzen kann. Wir sind zu der Erkenntnis gekommen, dass wir auf jeden Fall eine SD \u2013 Speicherkarte als Speichermedium benutzen wollen. Da diese leicht ansteuerbar ist und als so genannter Flashspeicher, der immer neu \u00fcberschreibbar ist.<\/p>\n<p>\u00dcber die m\u00f6gliche Ansteuerung versuchen wir momentan das ganze ohne eingekauftes Bauteil zu realisieren, da der Lerneffekt deutlich h\u00f6her ist so was selbst zu entwerfen. Programmieren wollen wir die Schnittstelle in C, da der Atmega 32 damit leicht zug\u00e4nglich ist.<\/p>\n<p>Auf dem Speichermedium sollen alle momentanen und vergangen Istwerte, sowie die Sollwerte gespeichert werden. Die gespeicherten Istwerte k\u00f6nnen von der LCD- Gruppe abgerufen und angezeigt werden, sodass der Verlauf der Werte vom Benutzer nachvollzogen werden kann. Auch die Funktion des Gew\u00e4chshauses kann so \u00fcberpr\u00fcft werden. Desweiteren werden die Ist- und Soll-Werte mit der Daten- Gruppe ausgetauscht, um eine Steuerung des Gew\u00e4chshauses zu gew\u00e4hrleisten. Um eine optimale Anzucht zu gew\u00e4hrleisten, soll es angepasste Sollwerte f\u00fcr verschiedene Pflanzenarten und -gr\u00f6\u00dfen geben.<\/p>\n<h2>Speichern der Sollwerte<\/h2>\n<p>Am Anfang war unser Plan , die vom User eingestellte Sollwerten in einer SD-Karte zu speichern. Dann haben wir darauf verzichtet, da diese Sollwerten von der Gr\u00f6\u00dfen her passend waren , in dem EEPROM von unserem ATMega32 zu speichern.Wenn man pr\u00e4ziser sein sollte : ATMega 32 hat einen Speicherplatz von 1024 bytes als &#8222;data EEPROM memory&#8220;.Die Sollwerte , die wir benutzen ,sind vom Typ uint16_t und bestehen aus 16 Bits.Eine Sollwert-Passage beinhaltet 8 Parameter. Das soll grob hei\u00dfen , dass man in ungef\u00e4hr 60 nacheinander folgende Sitzungen Sollwerte sicher speichern kann , ohne ein externes Speichermedium zu brauchen und ohne durch L\u00f6schen der vorhandene Info Platz zu schaffen.<\/p>\n<h2>Kommunikation mit LCD<\/h2>\n<p>Die Kommunikation mit der LCD erfolgt \u00fcber UART.Die gr\u00f6\u00dfte Schwierigkeit, die wir dabei erlebt haben, ist folgende : Wir als Speichergruppe empfangen die vom User eingestellte Soll-Werte vom LCD und das machen wir periodisch. Genau an dieser Stelle muss man Interrupts einsetzen , um ein Kommunikationskonflikt zwischen Master ( in diesem Fall LCD) und Slave (unsere Mikrokontroller) zu vermeiden.Wenn der User nicht periodisch neue Werte einstellt , aber von unserem Mikrokontroller trotzdem neu Werte als Input gefordert werden , verursacht das , dass der Programmablauf an der Stelle stoppt und die weitere Code nicht durchgelesen wird, bis neue Soll-werte eingestellt werden. Da in der Realit\u00e4t der User h\u00f6chstwahrscheinlich nicht immer neue Soll-Werte einstellen wird, mussten wir die Code so umformen, sodass nur dann auf einen Wert gewartet wird, wenn LCD die schickt.Als L\u00f6sung haben wir uns,wie oben erw\u00e4hnt, das Interrupt-Konzept gedacht und sowohl mit LCD- als auch mit Datengruppe zusammengearbeitet.Als zeitlichen Gr\u00fcnden konnten wir unsere Codeentwurf nicht testen und deswegen auch nicht implementieren.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Das Ziel unserer Kleingruppe im Microcontrollerbereich ist es, einen Microcontroller mit einem passenden Speicher zu erg\u00e4nzen. Damit k\u00f6nnen wir sp\u00e4ter aufgenommene Daten der einzelnen Sensoren abspeichern, um sp\u00e4ter einen genauen \u00dcberblick zu erhalten, ob das Gew\u00e4chshaus entsprechend funktioniert. Um das &hellip; <a href=\"https:\/\/service.projektlabor.tu-berlin.de\/wordpress\/greenlab\/interface\/speicher\/\">Weiterlesen <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":71,"featured_media":0,"parent":54,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":[],"_links":{"self":[{"href":"https:\/\/service.projektlabor.tu-berlin.de\/wordpress\/greenlab\/wp-json\/wp\/v2\/pages\/219"}],"collection":[{"href":"https:\/\/service.projektlabor.tu-berlin.de\/wordpress\/greenlab\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/service.projektlabor.tu-berlin.de\/wordpress\/greenlab\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/service.projektlabor.tu-berlin.de\/wordpress\/greenlab\/wp-json\/wp\/v2\/users\/71"}],"replies":[{"embeddable":true,"href":"https:\/\/service.projektlabor.tu-berlin.de\/wordpress\/greenlab\/wp-json\/wp\/v2\/comments?post=219"}],"version-history":[{"count":1,"href":"https:\/\/service.projektlabor.tu-berlin.de\/wordpress\/greenlab\/wp-json\/wp\/v2\/pages\/219\/revisions"}],"predecessor-version":[{"id":220,"href":"https:\/\/service.projektlabor.tu-berlin.de\/wordpress\/greenlab\/wp-json\/wp\/v2\/pages\/219\/revisions\/220"}],"up":[{"embeddable":true,"href":"https:\/\/service.projektlabor.tu-berlin.de\/wordpress\/greenlab\/wp-json\/wp\/v2\/pages\/54"}],"wp:attachment":[{"href":"https:\/\/service.projektlabor.tu-berlin.de\/wordpress\/greenlab\/wp-json\/wp\/v2\/media?parent=219"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}