Moin Seit einigen Wochen denke ich darüber nach mir eine kleine IOT Wetterstation zu bauen, also mit ganz einfachen Sensoren auf der Terasse. Ich bin schon etwas älter, und tue mir deswegen recht schwer. Wie würde man so etwas heuzutage professionell lösen? Ich möchte keine Makerwebsiten verwenden und auch kein Arduinon sonder alles in C machen mit selbgebauter Elektronic. Wie würde ein Ing. der von seinem Meister den Auftrag für sowas bekommt das heute umsetzen? Im Internet findet man entweder nur klickibunti Arduino mit Clouddiensten oder uralte Websiten von vor 20 Jahren. Welchen IP Chipsatz würde man heute verwenden? Wie würde man die Anwendung am Server lösen? Welchen Mechanismus würde man verwenden um die gespeicherten Daten als Graph oder Anzeige darzustellen? Ich kann mich noch recht gut in Dinge einlesen, mir fehlt aber einfach der Startpunkt. Ich habe bereits einen Webserver auf den ich mit FTP Daten laden kann. Eine Antowort in der Art: Chip-->Programmiersprache--> usw. würde mir ausreichen. Schönen Nachmittag, Kurt B.
Eine grobe Vorstellung davon, was du eigentlich machen willst, wie das aussehen soll, hast du? Dazu gehört beispielsweise, ob einfach nur die aktuellen Rohdaten angezeigt werden, oder auch die letzten Jahre. Das geht aus deinem Text nicht klar hervor und davon hängt viel ab.
Soll das ganze Batteriebetrieben sein? Gibt es mehr als ein Wetter-Sender? Als erstes musst du dir einen Mikrocontroller auswählen. Entweder nimmst du dafür einen, welcher bereits Kommunikationsfähig ist, oder ein externes Board zur Konfiguration. Soll es Batterie betrieben sein, schlage ich dir vor einen nRF52832 zu nehmen. Die sind günstig und energiesparend. Soll es noch sparsamer sein, kannst du ahc den Ambiq Apollo 3 nehmen - zu dem gibt es aber weniger Material im Internet zu finden. Allerdings brauchst du dann noch ein Gateway, z.B. ein Raspberry Pi als Interface zum Internet, damit die Daten von überall abgefragt werden können, falls erwünscht. Wenn es idr reicht die Messwerte nur zu Hause zu lesen, kannst du dein Smartphone/PC auch direkt mit Bluetooth Low Energy (BLE) zum nRF52832 verbinden. Bei mehreren Sensoren könnte einer die Daten der anderen über BLE sammeln und mim Smartphone nur zu diesem verbunden werden, damit nicht die Daten von jedem einzelnen Sender ausgelesen werden müssen. Wenn es nur ein Wetter-Sender ist und es umbedingt ins Internet gesendet werden soll, kannst du auch direkt ein WiFi-fähiger Chip nehmen, welcher die Daten irgendwo ins Internet sendet. Das kann zum Beispiel ein ESP8266 oder ESP32 sein - die brauchen aber etwas mehr Strom für den Betrieb, machen also eine Batterie schneller leer (WiFi ist nicht Low Energy). Dann brauchst du nur noch einen Wettersensor. Wenn dir Temperatur, Luftdruck und Luftfeuchtigkeit schon ausreicht würde ich den BME280 nehmen.
Guten Tag Herr Prx: Tut mir leid, ja ich habe eine Vorstellung davon: Eine LEiterplatte mit einem Atmega 8bit und einem IP IC, als Anschluss eine Ethernetz Buchse, MagJack, sollte mit Datenblatt kein Problem sein. Ich möchte ca. 20 verschiedene Werte versenden. Diese sollten alle Minuten aktualisiert werden, eine ganz einfache Website wo die Werte in Kästchen stehen. Evtl. noch ein Graph der letzten 7 Tage. Irgendwo hätte ich auch noch gerne ein TXT oder CSV wo alle Werte unendlich lang abgespeichert sind um sie manuell auszuwerten. Cyplord: Ich weiß nicht was das soll, bitte unterlassen Sie das. Thom: Nein, ich habe eine Steckdose auf meiner Terasse. Ich würde gerne einen IC verwenden den ich mit AVR konfigurieren kann und an den ich die Daten schicke. Sensoren habe ich bereits ausgewählt, und kann sie auch bereits auslesen, die einzelnen Daten (unit16 zb.) will ich dann eben übertragen. Es sollte eben auf meinem Server laufen, da ich von überall darauf zugreifen möchte, WLAN möchte ich nicht verwenden, habe ich auch nicht auf der Terasse. Mir ist nicht klar: Welchen IP IC verwenden? Welche Anwendung am Webserver. Schönen Nachmittag, Kurt B.
Elektrokurt schrieb: > Guten Tag > > Herr Prx: > Tut mir leid, ja ich habe eine Vorstellung davon: > Eine LEiterplatte mit einem Atmega 8bit und einem IP IC, Was ist für dich ein IP-IC? Netzwerk (Ethernet) kann dir ein IC machen, IP ist deine Aufgabe als Programmierer. > Cyplord: > Ich weiß nicht was das soll, bitte unterlassen Sie das. Er hat dir kurz einen möglichen Weg aufgezeigt. > Thom: > Nein, ich habe eine Steckdose auf meiner Terasse. > Ich würde gerne einen IC verwenden den ich mit AVR konfigurieren kann > und an den ich die Daten schicke. > Sensoren habe ich bereits ausgewählt, und kann sie auch bereits > auslesen, die einzelnen Daten (unit16 zb.) will ich dann eben > übertragen. Schau dir mal das Pollin AVR-NET-IO an. https://www.mikrocontroller.net/articles/AVR_Net-IO_Bausatz_von_Pollin > Es sollte eben auf meinem Server laufen, da ich von überall darauf > zugreifen möchte, WLAN möchte ich nicht verwenden, habe ich auch nicht > auf der Terasse. Wenns auf deinem Server laufen soll ist die Software deine Sache. > Welche Anwendung am Webserver. Was mir da in den Kopf kommt (als Nicht-Profi) wäre ein PHP-Skript, das die Werte in Empfang nimmt und in einer Datenbank wegspeichert. Die Darstellung und Visualisierung kann ein anderes Skript machen.
na wenn man so über Klickibunti erhaben ist, dann ruft man die Website seines Lieblingsherstellers auf, sucht im MCU Selector einen Controller mit Ethernet Hardware aus, entwirft damit eine Platine, schreibt die Software und fertig.
Zuerst mal würde ich das Ganze in Funktionsblöcke zerlegen: Für die Persistenzschicht bietet sich influxDB an, Deine Datentelgramme transportierst Du am Besten via MQTT, also benötigst Du noch einen MQTT Broker. Frontend, also Datenvisualisierung kannst Du mit Standardwebtools machen, entweder Händisch ausprogrammiert (PHP, JSP, whatever), Etwas moderner und aus meiner Sicht besser: Bauen eines RestServices zur Datenprovisionierung an ein Angular/React Frontend, welches wiederum von einem Beliebigen Webserver ausgeliefert werden kann. Dieser Ganze kram lässt sich einfach auf einen Raspi betrieben. Sensorik: Im Grunde musst Du dir nur ein Stück Harware bauen, welches Deine Sensordaten via MQTT aufs Netzwerk stellt. ICH würde da z.B: einen ESP verwenden (OK, benötigt Wifi).
Elektrokurt schrieb: > Eine LEiterplatte mit einem Atmega 8bit und einem IP IC, als Anschluss > eine Ethernetz Buchse, MagJack, sollte mit Datenblatt kein Problem sein. Meine Lösung ist weit über 10 Jahre alt und ist genau das. Ein Datenlogger einer Heizungssteuerung, mit Webinterface wie im Bild plus Logtransport. Hardwareseitig ein ATmega32, ein ENC28J60, ein Dataflash und ein FRAM. Softwareseitig gewöhnliches C, mit Adam Dunkels uIP fürs Netzwerk und einem darauf aufbauenden extrem einfachen Webserver. Wobei ich damit nicht suggerieren will, dass diese Lösung noch zeitgemäss sei. 32-Bitter tun sich mit Webservices leichter und wenn die Stromversorgung das hergibt, kann man das auch komplett in RasPi&Co unterbringen. Spart erheblich Aufwand, auch wenns mit Kanonen auf Spatzen geschossen ist. Es gibt Mikrocontroller mit integrierten Ethernet, allerdings wirds dann meist hochpinnig oder Modul. Etwas AVR-kompatibler sind die Ethernet-Module von Wiznet, die einen TCP-Stack bereits enthalten. Eine viel später hinzu gekommene grafische Auswertung der Daten erfolgt deshalb auch woanders. Das kann eine Linux-Kiste wie ein RasPi mit echtem Webserver und rrdtool wesentlich besser.
:
Bearbeitet durch User
Reinhard S. schrieb: > Schau dir mal das Pollin AVR-NET-IO an. Die Software dazu ist allerdings zum abgewöhnen. Ich hoffe für Radig, dass das eines seiner ersten Programmierprojekte war, denn so sieht die aus.
Hallo Kurt, ich hatte ein ähnliches Problem und keine Lust mich in die Tiefen von Webservern einzuarbeiten. Habe das MyEthernet-Modul verwendet. Da gibt es einen RAM - Bereich den man per IIC Bus wie ein eeprom ansprechen kann. Diese "Variablen " kann man dann in Webseiten verwenden deren HTML-Code auf einer sd karte liegt. Da ich in in assembler programmiere ist das für mich der einfachste Weg.
Thom Lab schrieb: > Wenn es nur ein Wetter-Sender ist und es umbedingt ins Internet gesendet > werden soll, kannst du auch direkt ein WiFi-fähiger Chip nehmen, welcher > die Daten irgendwo ins Internet sendet. Dann kann ein Hacker mit lokalem Zugriff auf den Wetter Sender auch gleich den WLAN Key auslesen und sich ins lokale Netz einschmuggeln. Selbst wenn er nur im Gast WLAN ist, kann er immerhin noch einiges an Schaden anrichten. Daher Vorschlag: Der Wetter Sender muss ein Access Point sein und ein Rechner der selber mit dem internen HausLAN verbunden ist logged sich in diesen ein und ruft die Daten ab, die er braucht. Vorteil: Der Hacker mit lokalem Zugriff könnte sich dann zwar immer noch in den AP einloggen und dort Schaden verursachen, aber der ist dann zumindest auf den Wetter Sender begrenzt. Den Rechner aus dem HausLAN, der die Daten abruft, kann man so einrichten, dass er dem Wetter Sender nicht vertraut. Ähnliche Sicherheitsüberlegungen sollt man auch bei Verwendung von Bluetooth anstreben. So einer zur Tastatur mit Relayfunktion umfunktionierter Wettersender ist nämlich auch keine Freude.
Elektrokurt schrieb: > Mir ist nicht klar: > Welchen IP IC verwenden? > Welche Anwendung am Webserver. Wenn du einen IC nimmst, auf dem du alles selber schreiben musst, dann gilt das auch für den Webserver. Ich würde mir den Aufwand nicht machen und stattdessen einen Raspberry Pi Zero mit integriertem WLAN nehmen. Der hat nämlich schon einen ausgereiften Webserver und über dessen GPIO kann man die Sensoren anschließen und dann mit C Code auslesen und über den Webserver z.b. als CGI anbieten. Übertragung erfolgt dann via WLAN, wobei wie bereits erwähnt, der Raspberry Pi dann den AP stellen sollte. Eine Steckdose ist ja schon vorhanden. Einen vollwertigen Raspberry Pi braucht man dafür auch nicht. Ein Raspberry Pi Zero W/WH würde dafür völlig ausreichen.
Wobei sich für kabelgebundenes Ethernet auch ein bei Ali spottbilliges Minimalteil wie der Orange Pi Zero eignen sollte.
:
Bearbeitet durch User
Nano schrieb: > Thom Lab schrieb: > >> Wenn es nur ein Wetter-Sender ist und es umbedingt ins Internet gesendet >> werden soll, kannst du auch direkt ein WiFi-fähiger Chip nehmen, welcher >> die Daten irgendwo ins Internet sendet. > > Dann kann ein Hacker mit lokalem Zugriff auf den Wetter Sender auch > gleich den WLAN Key auslesen und sich ins lokale Netz einschmuggeln. > Selbst wenn er nur im Gast WLAN ist, kann er immerhin noch einiges an > Schaden anrichten. Wenn man einen ESP8266 nimmt und der Code die Daten nicht auf der seriellen Schnittstelle ausgibt und die Wlan-Zugangsdaten fest im Code angibt (heißt kein WiFimanager und co), dann ist es glaube ich einfacher eine Schwachstelle am Router zu finden oder einzubrechen und dann ein Gerät (z.B.: Raspi) per Ethernet mit dem Router zu verbinden. Und notfalls gibt es auch noch einen MAC-Filter oder 802.1X. TR.0LL
Moin Elektrokurt, ich komme mit dem Net-io von Pollin und der Software von U.Radig inzwischen sehr gut zurecht. Alles in C++ geschrieben. HTML-Seiten kann man selbst erstellen. Könnte für dich interessant sein. Gruß Carsten
Also die Anforderungen passen nicht ganz zusammen. Es ist offensichtlich dass es da große Wissenslücken gibt. Ohne Erfahrung in der Embedded Entwicklung kann man das nicht from Scratch machen (so wie der TE sich das ja vorstellt). Da fehlt einfach zu viel. Der Lösungsweg ist total simpel, die Umsetzung in allen Details aber nicht. Man würde man einen Controller aussuchen, gleich mit Ethernet Schnittstelle oder halt integriertem WLAN. Mehr braucht man ja schon nicht. Das bisschen Stromversorgung und evt. ein bisschen Schnittstellen ICs für die Sensoren kann man schon fast vergessen. Der Rest ist Software. Webserver und TCP/IP Stack nimmt man was fertige. Man muss aber in der Lage sein das einzubauen und zu benutzen. Das erfordert alles Erfahrung mit der Thematik. Was der TE uns nicht sagt: Was kann er? Wenn er schon Probleme hätte, auf einem STM32 eine LED Blinken zu lassen, dann sollte er DAS erstmal üben. PS: Cyblord (Gast) bin natürlich nicht ich. Ich schreibe NIE als Gast oder unter anderem Namen. NIE
:
Bearbeitet durch User
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.