{"id":871,"date":"2023-07-07T15:19:28","date_gmt":"2023-07-07T13:19:28","guid":{"rendered":"https:\/\/www.iot-embedded.de\/iot-2023\/?p=871"},"modified":"2023-07-07T15:19:29","modified_gmt":"2023-07-07T13:19:29","slug":"unsere-finale-architektur","status":"publish","type":"post","link":"https:\/\/www.iot-embedded.de\/iot-2023\/2023\/07\/07\/unsere-finale-architektur\/","title":{"rendered":"Unsere finale Architektur"},"content":{"rendered":"\n<p>W\u00e4hrend unseres Projekts haben wir uns zahlreiche Gedanken \u00fcber die besten, effektivsten und einfach zu implementierenden Architekturen gemacht.<br>Schlussendlich sind wir bei der finalen Architektur angelangt. Dieses Schaubild stellt unsere 5 verschiedenen Komponenten dar:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"940\" height=\"381\" src=\"https:\/\/www.iot-embedded.de\/iot-2023\/wp-content\/uploads\/sites\/6\/2023\/07\/image-2.png\" alt=\"\" class=\"wp-image-872\" srcset=\"https:\/\/www.iot-embedded.de\/iot-2023\/wp-content\/uploads\/sites\/6\/2023\/07\/image-2.png 940w, https:\/\/www.iot-embedded.de\/iot-2023\/wp-content\/uploads\/sites\/6\/2023\/07\/image-2-300x122.png 300w, https:\/\/www.iot-embedded.de\/iot-2023\/wp-content\/uploads\/sites\/6\/2023\/07\/image-2-768x311.png 768w\" sizes=\"(max-width: 940px) 100vw, 940px\" \/><\/figure>\n\n\n\n<p>RFID-Leser: Diese Hardware-Komponente ist extern eingekauft und wird durch ein Python-Programm auf dem Mikrocontroller angesteuert. Der Leser dient dazu, die RFID-Tags und -Karten auszulesen und die gespeicherten Daten (User-ID) an den Raspberry Pi zu senden.<\/p>\n\n\n\n<p><br>Raspberry Pi: Dieser Mikrocontroller nimmt den Logik-Teil in unserer Architektur ein. Neben den empfangenen Daten von dem RFID-Leser hat der Mikrocontroller auch die Aufgabe, mit der Datenbank zu kommunizieren, Daten von ihr auszulesen und neue Daten in die Datenbank zu schreiben. Bei einer Anmeldung in unserem System sendet der RFID-Leser die ID, welche von dem Code auf dem Pi mit den Daten aus der MongoDB abgeglichen wird. Bei Buchungen, Reservierungen oder Abrechnungen schreibt der Raspberry Pi die Daten in die Datenbank, worauf schlussendlich ein weiterer Server Zugriff hat.<\/p>\n\n\n\n<p><br>Mongo&nbsp;DB: Dieser Teil unserer Architektur fungiert als zentrale Speichereinheit. Die Daten werden von dem Backend, als auch von dem Frontend in die Datenbank geschrieben, wie auch ausgelesen. F\u00fcr die Anmeldung an einem Tisch schreibt und liest der Raspberry Pi in die Datenbank, f\u00fcr eine Reservierung des Tisches liest und schreibt der&nbsp;Expressserver&nbsp;auf der Datenbank. Zu Beginn war die MongoDB lokal auf einem unserer PCs, was den Vorteil hatte, das DHBW-Netzwerk zu umgehen, jedoch kann man sich als externer Recht leicht Zugriff darauf verschaffen. Zuletzt wurde&nbsp;sie bei MongoDB gehostet, was die Komplexit\u00e4t mit dem DHBW-WLAN und den&nbsp;Pis&nbsp;hervorbrachte.<\/p>\n\n\n\n<p><br>Expressserver: Der&nbsp;Expressserver&nbsp;arbeitet in unsrer Architektur als Vermittler zwischen Datenbank und dem Frontend. Er liest die Daten aus der Datenbank aus und kann auch Felder hinzuf\u00fcgen und beschreiben. Die Daten, welche von dem Server aus der Datenbank gelesen werden, k\u00f6nnen nun dem Frontend zur Verf\u00fcgung gestellt werden. Der&nbsp;Expressserver&nbsp;ist somit der Lieferant oder der Vermittler der Daten f\u00fcr das Frontend.<\/p>\n\n\n\n<p><br>Frontend: Unser User-Interface bzw. das Admin-Interface besteht in unserem Fall aus einer einfachen Web-Oberfl\u00e4che mit einem JavaScript-Programm im Hintergrund, welches die Funktionen im Hintergrund ausf\u00fchrt. Das Frontend bekommt die Daten vom&nbsp;Expressserver&nbsp;und kann sie auslesen und durch die Web-Oberfl\u00e4che anzeigen.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>W\u00e4hrend unseres Projekts haben wir uns zahlreiche Gedanken \u00fcber die besten, effektivsten und einfach zu implementierenden Architekturen gemacht.Schlussendlich sind wir bei der finalen Architektur angelangt. Dieses Schaubild stellt unsere 5 verschiedenen Komponenten dar: RFID-Leser: Diese Hardware-Komponente ist extern eingekauft und<\/p>\n","protected":false},"author":32,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[9],"tags":[11,12,13,49,34],"_links":{"self":[{"href":"https:\/\/www.iot-embedded.de\/iot-2023\/wp-json\/wp\/v2\/posts\/871"}],"collection":[{"href":"https:\/\/www.iot-embedded.de\/iot-2023\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.iot-embedded.de\/iot-2023\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.iot-embedded.de\/iot-2023\/wp-json\/wp\/v2\/users\/32"}],"replies":[{"embeddable":true,"href":"https:\/\/www.iot-embedded.de\/iot-2023\/wp-json\/wp\/v2\/comments?post=871"}],"version-history":[{"count":1,"href":"https:\/\/www.iot-embedded.de\/iot-2023\/wp-json\/wp\/v2\/posts\/871\/revisions"}],"predecessor-version":[{"id":873,"href":"https:\/\/www.iot-embedded.de\/iot-2023\/wp-json\/wp\/v2\/posts\/871\/revisions\/873"}],"wp:attachment":[{"href":"https:\/\/www.iot-embedded.de\/iot-2023\/wp-json\/wp\/v2\/media?parent=871"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.iot-embedded.de\/iot-2023\/wp-json\/wp\/v2\/categories?post=871"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.iot-embedded.de\/iot-2023\/wp-json\/wp\/v2\/tags?post=871"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}