Werte AVR Community, ich habe mich in den vergangenen Tagen durch eine Vielzahl von Beiträgen in diesem Forum durchgearbeitet - konnte jedoch nichts passendes für mein Problem finden. Am nächsten kam noch der Beitrag: Beitrag "kleine AVR-Server senden an Zentralserver" wobei auch da die Diskussion teilweise vom eigentlichen Thema abweicht. Ich möchte 1 (später mehrere) Pollin-AVR zu einer speziellen Aufgabe verwenden. Leider bin ich nach Studium etlicher Beiträge zu der Feststellung gekommen, dass ich keinesfalls in der Lage bin mich zeitnah mit der Materie der Programmierung zu befassen. Das liegt keinesfalls an der Lust dazu, sondern vielmehr an der Zeit. Wie heißt es in der Werbung: "Vielleicht sollten Sie zu jemandem gehen, der was davon versteht!" Genau das werde ich jetzt mal versuchen. Die eigentliche Aufgabe: Der og. Thread ist schon recht nah am geplanten Verwendungszweck. Das AVR soll als 'Daten-Übertragungs-Zwischen-Server' arbeiten. Das AVR befindet sich in einem lokalen Netzwerk. In gleichem Netzwerk befinden sich auch Heizungsregler über eine Standard TCP-Verbindung. Diese Regler geben bei bei einem Request eine per CGI erstellte HTML-Seite mit den aktuellen Werten aus. Diese Seite ist so simpel, dass man eher von einer txt-Datei sprechen könnte. (Keine Formatierungen etc.) Ausgabe etwa: 0:12.2:22:1:22.3:0:1 (Doppelpunkt separierte Einzelwerte) Was soll nun das AVR damit machen: Über die lokale TCP Verbindung soll das AVR die og. CGI aufrufen, den String lesen und anschließend unverändert an eine festgelegte Adresse (php-Datei) eines öffentlichen Webservers senden. In der php-Datei erfolgt dann die Aufbereitung der Daten und ggf. ein Eintrag in eine Datenbank. Auf dem AVR müssen natürlich die lokale IP des abzufragenden Reglers sowie die Ziel-Adresse (ex. http://domain.de/daten/daten.php) eingetragen werden können. Eingabe per Terminal-Programm ?? Wird ja nur 1x festgelegt und in den seltensten Fällen geändert. Bisher habe ich diesen Vorgang immer mit einem Mini-PC realisiert. Allerdings sind dafür die Kosten (Hardware, Betriebssystem etc.) zu teuer, sodass ich nach neuen Lösungen suchen muss. Dem aufmerksamen Leser wird nicht entgangen sein, dass ich ja den/die Regler direkt per PHP auslesen könnte. Ja! Aber ich habe immer wieder Probleme mit DynDNS (obwohl Bezahl-Account) , Portweiterleitungen, nicht immer Router-Zugriff usw. Eine saubere Lösung wäre schon, wenn auf dem og. Weg die Daten ins Haus kommen. Noch ein Satz an die Sicherheitsfanatiker: Es sind keine lebensgefährlichen Daten! Ich vernetze keine Krankenhäuser oder Atomkraftwerke. Eine Checksummen-Prüfung der Übertragung ist nicht notwendig. Ist die von mir geschilderte Verfahrensweise mit den AVR's überhaupt möglich? Gibt es jemand, der was davon versteht und bereit wäre gegen eine zu vereinbarende Aufwands-Entschädigung so etwas zu programmieren? Gibt es ggf. preiswerte Alternativen? Ich bin für jeden Hinweis dankbar.
> blubberblase <
Dein Nick hat Klasse. Gibt gut Inhalt & Form deines Beitrages wieder.
Sicher ist sowas moeglich. Bei den bescheidenen Stueckzahlen, resp beim bescheidenen Budget lohnt sich aber so eine Entwicklung nicht. Bleib bei deiner Loesung.
Carsten G. schrieb: > Noch ein Satz an die Sicherheitsfanatiker: Es sind keine > lebensgefährlichen Daten! Ich vernetze keine Krankenhäuser oder > Atomkraftwerke. Eine Checksummen-Prüfung der Übertragung ist nicht > notwendig. Wobei ich Checksumme nicht wirklich als "Sicherheit" bezeichnen würde. Das kann vor Übertragungsfehlern schützen, nicht aber vor Ausspähen und ähnlichen "Angriffen". Im Kontext von HTTP bietet sich hierfür SSL/TLS an. Carsten G. schrieb: > Ist die von mir geschilderte Verfahrensweise mit den AVR's überhaupt > möglich? Möglich ja - praktikabel nein. Sobald es um Netzwerkgeschichten geht (insbesondere im Internet) halte ich AVRs für ungeeignet. Klar gibt es genug "Proof-of-Concept" Projekte, aber ein kompletter TCP/IP Stack läuft da halt dann trotzdem nicht. In deinem Fall brauchst du ja zumindest grobe Implementierung für ARP, DNS, IP, TCP und HTTP. Sofern das ganze dynamisch im Netzwerk funktionieren soll, schadet DHCP auch nicht. Das ist unnötige Arbeit, die sicherlich fehlerbehaftet sein wird. Carsten G. schrieb: > Gibt es ggf. preiswerte Alternativen? Ich persönlich bevorzuge bei solchen Projekten dann doch eher ein Embedded System auf Linux-Basis, z.B. ein GNUBLIN oder Raspberry Pi. Das bietet dir den Vorteil eines komplett funktionierenden und bekannten Stacks mit einem Haufen an Software. Im Endeffekt lässt sich das was du vorhast in Form eines Scripts ausdrücken, welches nicht viel mehr als 10 Zeilen lang sein sollte. Je nach Vorkenntnissen sollte das auch bei "engen" Zeitvorgaben klappen. Im Endeffekt musst du dich nur mit cURL vertraut machen und ggf. die Strings ein wenig bearbeiten, z.B. mittels "sed".
Besten Dank für die schnellen Informationen. Hoher Stapel schrieb: > Sicher ist sowas moeglich. Bei den bescheidenen Stueckzahlen, resp beim > bescheidenen Budget lohnt sich aber so eine Entwicklung nicht. Bleib bei > deiner Loesung. Ich hatte mich da bei den Stückzahlen als auch beim Budget etwas unklar ausgedrückt. Derzeit laufen ca. 30 solcher Systeme - zum Jahresende 2013 werden es knapp 100 sein. Das Budget: Da ich selbst programmiere, weiß ich schon das eine Programmierung Zeit und somit Geld kostet. Kurze Rechnung: Dieses Jahr ca. 60 weitere Systeme mit Mini-PC für ca. 200 EUR (inkl. Betr.-System) oder 60 AVRs für 30 EUR ... da sollte schon Spielraum für die Programmierung sein. :o) Karol Babioch schrieb: > Möglich ja - praktikabel nein. Sobald es um Netzwerkgeschichten geht > (insbesondere im Internet) halte ich AVRs für ungeeignet..... So habe ich das schon vermutet. Ich habe mir die Umprogrammierung nur nicht so kompliziert vorgestellt. Mein Test-Pollin-AVR läuft als provisorische "Klima-Reglung" inkl. Fernzugriff in meiner Garage sowas von zuverlässig, dass ich in Hinsicht auf die Programmierung zu einfach gedacht habe. Karol Babioch schrieb: > Ich persönlich bevorzuge bei solchen Projekten dann doch eher ein > Embedded System auf Linux-Basis, z.B. ein GNUBLIN oder Raspberry Pi. Ja, dass sind doch mal Alternativen. An einen Raspberry habe ich auch schon gedacht. Allerdings wäre ich auch in diesem Falle auf Hilfe angewiesen, da ich auch mit LINUX nicht so fit bin. Karol Babioch schrieb: > Im Endeffekt lässt sich das was du > vorhast in Form eines Scripts ausdrücken, welches nicht viel mehr als 10 > Zeilen lang sein sollte. Na nu bin ich völlig feddisch ... Vielleicht sollten wir auf dieser Basis im Gespräch bleiben. Ich werde mich mit dem RaspberryPI mal näher befassen. Ich danke Euch allen. Schönen Sonntag noch.
Carsten G. schrieb: > Derzeit laufen ca. 30 solcher Systeme - zum Jahresende 2013 werden es > knapp 100 sein. Dann sollte "Sicherheit" relativ weit oben auf deiner Liste stehen. Ich weiß ja nicht was du letztendlich mit den Daten machst, sofern du sei einmal hast, aber es sollte z.B. nicht möglich sein, Daten eines anderen zu "manipulieren" bzw. "einzusehen". Carsten G. schrieb: > Mein Test-Pollin-AVR läuft als > provisorische "Klima-Reglung" inkl. Fernzugriff in meiner Garage sowas > von zuverlässig, dass ich in Hinsicht auf die Programmierung zu einfach > gedacht habe. Naja, "einfach" ist relativ. Ich halte das in erster Linie für unnötige Arbeit. Und ich bin mir sicher, dass man valide Fälle konstruieren kann, die dein System ins "wanken" bringen. Ein (kompletter) Netzwerk-Stack ist halt mittlerweile doch etwas komplexer. Klar, als Hobby- bzw. Bastelprojekt kann es durchaus interessant sein AVRs ans Netzwerk anzuschließen, aber gerade in Produktivumgebungen würde ich schon Wert darauf legen, dass das den entsprechenden Standards genügt. Und dann wird es halt ganz schnell ganz knapp mit AVRs und ihren begrenzten Möglichkeiten (Flash-Speicher, RAM). Überhaupt dürfte es nur den wenigsten Leuten Spaß machen sich durch RFCs zu wälzen und Sachen neu zu implementieren, die es schon ein Dutzend Mal oder öfter gibt. Carsten G. schrieb: > Ich werde mich mit dem RaspberryPI mal näher befassen. Ja, wobei ich persönlich bei Projekten dieser Art andere Systeme bevorzugen würde. Meiner Meinung nach ist der Raspberry Pi durch seine Multimedia-Fähigkeiten eher für andere Anwendungsfälle gedacht - auch wenn er natürlich preislich kaum zu schlagen ist und deshalb auch für einfache Steueraufgaben & Co. "missbraucht" wird.
Guten Abend, nochmal kurz zum Thema Sicherheit. In dem von mir oben erwähnten Beitrag ist leider auch die Diskussion zu sehr in der Sicherheit bei der Übertragung verebbt. Das Aufgabenziel ist die Kostenreduzierung. Daher soll "der Gerät" nichts weiter machen als lokal einen Request auf ein anderes TCP-Gerät senden, den "String" lesen und unverändert an einen öffentl. Webserver senden. Dies alles passiert hinter einem Router. Wenn dieser nicht gerade in der DMZ ist, also vernünfig konfiguriert, sehe ich keine großen Gefahren. Ich kann mir auch nicht vorstellen, dass sich jemand die Mühe macht, eine Übertragung aus 10 Zahlen zu manipulieren. Owohl es sicher überall böse Menschen gibt. :o) Die Übertragung selbst ist ebenfalls unkritisch. Sollten mal ein paar Datensätze fehlen (Request gescheitert oä.) oder nur unvollständig sein ... alles kein Problem. In der Regel werden die Daten aller 5 Minuten gesendet, gebraucht werden aber nur 1 Datensatz pro Stunde. Alles andere wird sowieso gefiltert oder geglättet. Außerdem erfolgt eine umfangreiche Prüfung der Daten auf Plausiblität, wenn sie eintreffen. Dies alles macht jetzt schon meine PHP/mySQL-Maschinerie. Ich suche nur eine preiswerte Alternative zu einem Komplett-PC mit WIN7, der 10 Werte übertragen soll. Ok ... machmal sind auch 3 Regler dran, dann sind es schon 30 Daten. Diese Alternative muss nur die beschriebene Aufgabe übernehmen. Und ich dachte ein AVR kann das ... mit der entsprechenden Programmierung natürlich. Dank nochmals & eine erfolgreiche Arbeitswoche @all
Carsten G. schrieb: > Allerdings wäre ich auch in diesem Falle auf Hilfe angewiesen, da ich > auch mit LINUX nicht so fit bin. Dann solltest du da auf jeden Fall einsteigen. Auf einem Mini-PC läuft ein vernünftiges Linux solide und kostet in der Anschaffung nix. Da PHP, perl und Python auch bewährte Tools unter Linux sind, können die Kistchen auf Wunsch die Daten auch gleich aufbereiten.
Carsten G. schrieb: > nochmal kurz zum Thema Sicherheit. In dem von mir oben erwähnten Beitrag > ist leider auch die Diskussion zu sehr in der Sicherheit bei der > Übertragung verebbt. Aus gutem Grund. Das zu ignorieren ist nämlich fahrlässig und nur ein Zeichen dafür, dass man etwas falsch priorisiert. Carsten G. schrieb: > Die Übertragung selbst ist ebenfalls unkritisch. Sollten mal ein paar > Datensätze fehlen (Request gescheitert oä.) oder nur unvollständig sein > ... alles kein Problem. In der Regel werden die Daten aller 5 Minuten > gesendet, gebraucht werden aber nur 1 Datensatz pro Stunde. Alles andere > wird sowieso gefiltert oder geglättet. Außerdem erfolgt eine > umfangreiche Prüfung der Daten auf Plausiblität, wenn sie eintreffen. Und was ist mit Daten, die zu oft kommen bzw. Daten, die überhaupt nicht zu dem "Benutzer" gehören, der dir gerade Daten sendet. Da muss nicht einmal jemand böse Absichten haben, da reicht bei 100 Geräten schon eine Misskonfiguration. Insofern ist Authentifizierung meiner Meinung nach schon notwendig. Und das ist im Prinzip nur in Verbindung mit Verschlüsselung sicher zu gestalten. Bei Verwendung von SSL/TLS ist das auch kein Problem und für dich transparent. Sofern du dich für die Linux-Variante entscheiden solltest, ist das auch aus Implemntierungssicht relativ problemlos machbar. Carsten G. schrieb: > Diese Alternative muss nur die beschriebene Aufgabe übernehmen. Und ich > dachte ein AVR kann das Siehe oben. Können sicherlich. Aber damit tust du weder dir noch anderen einen Gefallen. Wie bereits gesagt ein TCP/IP Stack ist schon etwas komplexer und bedarf einiges mehr an Hirnschmalz als man auf den ersten Blick annehmen würde. Da ist es wesentlich sinnvoller bestehende Lösungen zu verwenden - insbesondere halt Systeme auf Linuxbasis. Das erspart dir eine Menge (!) Zeit.
Für Netwerkgeschichten/Internetanbindung am besten was zukaufen. Ich mach das mit dem XPort. Serielle Daten sind mit dem AVR dann schnell erstellt bzw. verarbeitet. Gruß aus dem warmen Thailand :) P.P.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.