Hallo, es gibt noch nicht viele Informationen: Es handelt sich um ein Echtzeitsystem (rtos) auf einem Mikrocontroller. Am besten wäre es wenn man ein GUI aufrufen kann wenn man sich mit dem µC verbindet als Client. Wenn das rtos genug Ressourcen, wie Arbeitsspeicher hat könnte das doch gehen oder ? Wenn nicht, gibt es die Möglichkeit, dass das rtos nur rohdaten an einen pc oder server sendet und der für das webinterface sorgt ? Danke sehr !
fragso schrieb: > Hallo, > > es gibt noch nicht viele Informationen: > Es handelt sich um ein Echtzeitsystem (rtos) auf einem Mikrocontroller. > Am besten wäre es wenn man ein GUI aufrufen kann wenn man sich mit dem > µC verbindet als Client. Wenn das rtos genug Ressourcen, wie > Arbeitsspeicher hat könnte das doch gehen oder ? > Wenn nicht, gibt es die Möglichkeit, dass das rtos nur rohdaten an einen > pc oder server sendet und der für das webinterface sorgt ? > > Danke sehr ! Nennt sich Webserver. Braucht in jedem Fall genug Platz (Flash) für die Seiten selbst (HTML+CSS+JavaScript) und genug Ram um die bei einem Request auszuliefern. Man kann viel an Logik an den Client (PC) via JavaScript auslagern. Datenaustausch dann z.B. via JSON. Wenn die Ressourcen reichen. Sonst halt Binär.
Kann man denn den Speicher so erweitern, dass man z.B. ein Webinterface von 100 Mb ( evtl. übertrieben.. je nachdem) speichern kann ? Oder kann der µC das nicht so schnell verarbeiten ? Irgendwie funktioniert das ja bei einem PC auch xD. Danke
fragso schrieb: > Kann man denn den Speicher so erweitern, dass man z.B. ein Webinterface > von 100 Mb ( evtl. übertrieben.. je nachdem) speichern kann ? > Oder kann der µC das nicht so schnell verarbeiten ? Kommt auf den ungenannten µC an. Es gibt µCs, die schaffen es gerade mal so, irgendein Webinterface zusammenzustoppeln, und es gibt µCs, die langweilen sich dabei und gucken im Hintergrund noch Netflix ...
Ich hab einen Webserver fuer einen Mega32 geschrieben. Ohne RTOS. Die Seiten waren auf einem externen Flasch. Bedeutet man kommt mit sehr wenig Resourcen durch. Was soll der webserver denn koennen ? Du lieferst ja die Seiten. Allenfalls kann man dem client Rechenleistung anhaengen, und nicht auf dem Server rechnen lassen.
Rufus Τ. F. schrieb: > und es gibt µCs, die langweilen sich dabei und gucken im Hintergrund > noch Netflix ... Ja, die haben auch ne KI und wissen was "Industrie 4.0" ist. Kommt halt drauf an was man wirklich vor hat. Rufus, das liest sich gut! Gruß Beast
Hi danke für die Antworten ! Ist schonmal hilfreich! Dann wäre die Frage: Externer Flash Speicher: Flash Speicher könnte ja eine SD Karte sein. Also wo liegt denn das Problem, wenn man mit einem µC eine SD Karte verbindet die einen Webserver installiert hat ? Dauert der Zugriff zu lange ? Hier hat jmd. auch so ein ähnliches Thema Beitrag "Externer Flash-Baustein - Grundlegende Fragen"
Computer, welche Web-GUI's einfach & komfortabel ausliefern können, gibt es viele - vom R-PI bis zum PC. Die Frage ist, warum du das auf einem µC brauchst, bzw. welcher Teil deiner Anwendung nach einem µC verlangt. Wenn du nur ein paar Pins langsam schalten möchtest, wäre vielleicht ein R-PI o.ä. geeignet - dort einen "richtigen" Webserver wie Apache zu installieren ist sehr einfach, und Pins zu schalten ebenso. Wenn du parallel zur Web-GUI eine richtige (hart-)echtzeitfähige Steuerung brauchst, helfen vielleicht die Echtzeit-Erweiterungen für Linux, oder ein Prozessor mit Echtzeit-Koprozessor wie Beaglebone, oder einfach eine Kombination aus Linux-fähigem Prozessor/Computer mit Mikrocontroller, verbunden über UART, USB, I²C, ... Sag mal mehr zu deinen Anforderungen, damit man das besser einschätzen kann. fragso schrieb: > Also wo liegt denn das Problem, wenn man mit einem µC eine SD Karte > verbindet die einen Webserver installiert hat ? Es ist relativ kompliziert. fragso schrieb: > Dauert der Zugriff zu > lange ? Nicht unbedingt, je nach Art der Ansteuerung. R-PI & Konsorten nutzen ja auch SD-Karten. Für schnelle Zugriffe/Abläufe braucht es Caches und Nebenläufigkeit, wofür es viel Speicher braucht, was am Besten auf großen Prozessoren geht, wo wir wieder bei der Größenordnung des R-PI sind. Vor allem wenn man mehrere Anfragen gleichzeitig verarbeiten können möchte.
fragso schrieb: > Am besten wäre es wenn man ein GUI aufrufen kann wenn man sich mit dem > µC verbindet als Client. Wenn der uC zu wenig Resourcen hat, kann man auch einfach ein LAN-Modul dranpappen per UART oder I2C und dann dessen Webserver verwenden. Beispielsweise mit den Modulen von AK-Nord geht das rel. einfach und es gibt ein fertiges Beispiel um einen per I2C angeschlossenen Temperatursensor auszulesen und den Messwert auf einer Webseite anzuzeigen: https://www.ak-nord.de/XT-Nano-SXL-56.html
Allenfalls genuegt es ja auch den Webserver per Serial anzubinden ? Ein Ethernet ist nicht zwingend. Dann geht's auch mit einem Mega8, oder Tiny.
Johnny B. schrieb: > Wenn der uC zu wenig Resourcen hat, kann man auch einfach ein LAN-Modul > dranpappen per UART oder I2C und dann dessen Webserver verwenden. Wobei dann die Frage ist, warum man einen zu schwachen Mikrocontroller nimmt, nur um dann einen stärkeren (welcher sich im LAN-Modul befindet) extern anzubinden, den man dann auch nicht mehr frei programmieren kann. Es gibt genug Mikrocontroller, welche genug Leistung für einen Webserver haben und so ziemlich alles können, was ein ATmega kann. Das trifft z.B. auf viele STM32 zu. Das Nucleo-767ZI-Board beispielsweise enthält einen solchen Controller und die zugehörige Ethernet-Hardware, und 2MB Flash direkt im Controller: https://www.st.com/en/evaluation-tools/nucleo-f767zi.html Das STM32F746 Discovery enthält ebenfalls Ethernet-Hardware, microSD-Slot, 1+16 MByte Flash, 8 MByte RAM: https://www.st.com/en/evaluation-tools/32f746gdiscovery.html Das wäre genug Leistung für eine ordentliche Web-Oberfläche. Auf der SD-Karte kann man auch noch mehr Daten ablegen. Mit z.B. FreeRTOS, lwIP und FAT-Library kann man sich darauf dann einen Webserver bauen. Auf einem R-PI oder Beaglebone o.ä. einen Webserver zu installieren dürfte aber deutlich einfacher sein. Proletikus schrieb: > Allenfalls genuegt es ja auch den Webserver per Serial anzubinden ? Ein > Ethernet ist nicht zwingend. Dann geht's auch mit einem Mega8, oder > Tiny. Und wie ruft man das dann vom PC auf? Wo kommt TCP ins Spiel?
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.