Forum: PC Hard- und Software Einplatinencomputer für µC-Webserver


von Arno (mcbanane)


Lesenswert?

Guten Abend allerseits,

ich steuere meine Heizung mit einem klassischen Mikrocontroller und 
würde als Kür gerne ein Web-Front-End programmieren, die Daten in einer 
Datenbank sammeln und Statistiken anzeigen. Für den reinen Abruf der 
momentanen Daten könnte man vermutlich noch so etwas wie einen 
W5100S-EVB-Pico nehmen, aber spätestens bei der Datenbank wird dass dann 
schwierig. Raspberry sind aktuell kaum zu bekommen, also die kleinen 
günstigen Modelle mit geringem Stromverbrauch wie dem Raspberry Pi Zero 
2 W.

Welche Alternativen könnt ihr aktuell empfehlen, die einerseits gut 
verfügbar sind und andererseits auch ein gängiges PHP-Framework wie z.B. 
Symfony verkaften? Ich hoffe, ich habe jetzt keine falschen 
Vorstellungen von den darauf laufenden Linux-Distributionen...es wäre 
mir wichtig, dass ich dort eine Datenbank und ein gängiges PHP-Framework 
installieren kann, da dort einfach sehr viele Komponenten schon 
ausgereift vorhanden sind wie z.B. Berechtigungen, ORM, Aufbereitung der 
anzuzeigenden Daten, Eingabe-Validierung, Steuer-Elemente, etc.

Was haltet ihr z.B. von einem Banana Pi M2 Zero? Den gibt es für ca. 35 
Euro, aber könnte man mit dem so etwas umsetzen?

: Bearbeitet durch User
von Alt G. (altgr)


Angehängte Dateien:

Lesenswert?

Ich mach das mit nene sonoff RC4. Da ist ein esp8266 drin.
Temperatur messen 5 mal DS18B20.
Verbunden über wifi.
Steuerung von brenner und umwälzpumpen mit relais.

Da mein mischer aktuator kaputt ist ist eine mischersteuerung nicht 
implementiert. Das mach ich sobald das repariert ist.

: Bearbeitet durch User
von Frank K. (fchk)


Lesenswert?


von Purzel H. (hacky)


Lesenswert?

Ich hab mal einen Webserver mit einem Atmel ATMega32 geschrieben. Die 
Seiten waren in einem externen 8MBit Flash. Ohne PHP natuerlich. Der 
Parser hat die Werte fuer Script Tags in die Seite eingefuegt.

von (prx) A. K. (prx)


Lesenswert?

Purzel H. schrieb:
> Ich hab mal einen Webserver mit einem Atmel ATMega32 geschrieben. Die
> Seiten waren in einem externen 8MBit Flash. Ohne PHP natuerlich. Der
> Parser hat die Werte fuer Script Tags in die Seite eingefuegt.

Kann man so machen. Habe ich mit Webseiten im internen Flash gemacht, 
weil entsprechend einfach. Muss man sich aber angesichts heutiger 
Systeme nicht mehr antun.

von Le X. (lex_91)


Lesenswert?

Beim Szenario "Mikrocontroller mit Webserver" dürfte tatsächlich der 
esp8266 momentan "Standard" sein.
Die ganzen IoT-Devices mit Web-Interface nutzen den, er ist auch in der 
OpenSource-Scene sehr beliebt.

Allerdings hast du ja bereits einen Controller am Laufen.
Du müsstest also erstmal deinen bestehenden Code auf den esp portieren.
Welche Schnittstellen hat deine momentane Steuerplatine denn?
Vermutlich ist es bei dir sinnvoller, gleich einen Raspberry oder Klone 
an dein bestehendes System anzuflanschen.

Wenn du noch mehr Steuerungen im Haus am Laufen hast kannst du auch über 
eine ioBroker-Installation nachdenken. Dann hast du die eierlegende 
Wollmilchsau in Sachen Datensammlung/Visualisierung. Würde ich aber nur 
empfehlen wenn es nicht bei der Heizungssteuerung bleiben soll

von Alt G. (altgr)


Lesenswert?

Le X. schrieb:
> dürfte tatsächlich der
> esp8266 momentan "Standard" sein.

Der esp32 hat den 8266 weitestgehend abgelöst.
Kaum teurer, wesentlich mehr speicher.

von Matthias S. (dachs)


Lesenswert?

Frank K. schrieb:
> Schau mal bei Olimex. Z.B.:

Ja, das ist auch meine Empfehlung, da kann man ein ganz normales Debian 
drauf laufen lassen und hat dann die komplette Auswahl.

siehe Beitrag "Einplatinencomputer mit Linux für Heizungssteuerung und mehr"

Matthias

von Bernie (Gast)


Lesenswert?

Den BananaPiM2Zero als Raspi-Ersatz ist tatsächlich eine Möglichkeit. 
Habe ich auch schon so im Einsatz. Der ist mit dem Raspi fast 
kompatibel, wenn man von CSI und DSI absieht. Und wenn du ganz genau 
hinschaust, siehst du auch, wie du eine LAN-Buchse am BananaPi 
nachrüsten kannst.
Hier liegt grad ein M2Zero, der mit einer microSD mit Debian läuft, das 
für einen Raspi Zero eingerichtet war. WLAN eingestellt, SD umgesteckt, 
läuft.

Aber 35 Ocken? Ich hab mir ein paar für ca 16Eur während Covid geholt.

Auf den Raspi brauchst du nicht mehr hoffen. RS hat die Produktion 
eingestellt, Farnell fässt nichts älter als RPi4 an. Billige klassische 
Raspis wirds in den  nächsten 23 Jahren nicht geben.

von Looser (Gast)


Lesenswert?

DB auf SD-Karte ist auch nicht besonders knallig, die SD ist schnell 
kaputtgeschrieben.

von Arno (mcbanane)


Lesenswert?

Hallo,

herzlichen Dank euch allen für die Vorschläge. Einen ESP oder ähnliches 
würde ich gerne vermeiden, da ich klassische WebServer-Technologien mit 
Datenbank usw. einsetzen möchte.

Gut zu wissen dass der BananaPi funktioniert, aber das mit dem 
Preisanstieg ist wirklich heftig. Der Vorschlag mit dem A64-OLinuXino 
sieht aber auch vielversprechend aus. Laufen die bei Olimex verfügbaren 
Varianten wirklich mit einem offiziellen Debian und funktioniert die 
Hardware vollständig? Im Debian Wiki steht nur der Olimex A64 Teres-I 
bei den Stable getesteten Systemen, der A64-OLinuXino steht bei Stable 
untested.

Und sind 512 MB RAM für ein richtiges Linux inzwischen noch ausreichend? 
Ich frage nicht wegen des Geldes, sondern weil ich abschätzen will, wie 
lange ich mit einem 512 MB Board noch auskommen würde? Da das natürlich 
auch von meiner Webanwendung abhängt, wäre es hilfreich zu wissen, wie 
viel MB RAM nach einer Debian-Installation (ohne Desktop) mit den 
aktuellen Versionen von Apache, MySQL und PHP noch frei sind?

Würdet ihr ein Modell mit eMMC wählen oder eine SD-Karte benutzen?

EDIT:
Looser schrieb:
> DB auf SD-Karte ist auch nicht besonders knallig, die SD ist
> schnell
> kaputtgeschrieben.
Hmm, damit dürfte sich die SD-Karte ja erledigt haben...hoffentlich ist 
die eMMC besser geeignet.

Ich hatte auch noch darüber nachgedacht, meinen normalen Linux-PC als 
Webserver zu nutzen und den dann regelmäßig die gesammelten Daten vom µC 
abholen zu lassen. Da hätte ich keinerlei Ressourcen-Probleme und ein 
kurzes Polling 1 x pro Stunde würde ausreichen. Für den Webserver müsste 
ich auf den Smartphones/Tablets dann aber so etwas wie WakeOnLan 
triggern können, damit der Webserver jederzeit genutzt werden kann. Mein 
PC kann WOL, aber kann man mit einer App unter Android und iOS den PC 
aufwecken, damit man ein paar Sekunden später im Browser die 
WebOberfläche der Heizungssteuerung aufrufen kann? Das ist natürlich 
nicht so komfortabl wie mit einem Einplatinen-Computer, aber eventuell 
ist es ja zumindest für den Anfang eine energiesparende Alterative?

: Bearbeitet durch User
von Stefan F. (Gast)


Lesenswert?

Arno schrieb:
> es wäre mir wichtig, dass ich dort eine Datenbank
> und ein gängiges PHP-Framework installieren kann...
> Framework wie z.B. Symfony

Also doch kein Mikrocontroller der ESP32 oder RP2040 Klasse.

Da musst du schon in der Einplatinen-Computer Liga bleiben. Es gibt ja 
noch andere Marken die ähnliches anbieten, leider ebenfalls teure 
Mangelware.

von Frank K. (fchk)


Lesenswert?

Arno schrieb:

> Der Vorschlag mit dem A64-OLinuXino
> sieht aber auch vielversprechend aus. Laufen die bei Olimex verfügbaren
> Varianten wirklich mit einem offiziellen Debian und funktioniert die
> Hardware vollständig? Im Debian Wiki steht nur der Olimex A64 Teres-I
> bei den Stable getesteten Systemen, der A64-OLinuXino steht bei Stable
> untested.

Zum Installieren brauchst Du ein Image von Olimex, denn ohne den 
passenden Bootloader und den passenden Device Tree bootet kein 
armhf-System (und zwar gar keines). Die Pakete kannst Du dann direkt von 
debian nehmen.

> Und sind 512 MB RAM für ein richtiges Linux inzwischen noch ausreichend?
Das von mir verlinkte Teil hat 1GB. Damit kann man schon was machen.

> Würdet ihr ein Modell mit eMMC wählen oder eine SD-Karte benutzen?

Unter allen Umständen eMMC. Das ist schneller (8-Bit Transfers statt 4 
Bit)  und wesentlich zuverlässiger, was Controller und Flash angeht.

Wichtig ist: kein Board mit rohem NAND Flash nehmen. Der NAND-Treiber 
ist nicht open source, und nur der veraltete sunxi Kernel von Allwinner 
unterstützt den. Die aktuellen Kernel können kein NAND-Flash ansprechen. 
Ansonsten ist der Allwinner Support im Mainline Kernel recht komplett.

Wenn Du etwas deutlich kräftigeres haben willst:
https://www.hardkernel.com/shop/odroid-h3-plus/

Das ist letztendlich ein kleiner PC. Größenordnungen schneller als ein 
PI, aber die CPU hat auch nur 10W TDP. Plus zwei 2.5GBit Ethernet Ports, 
USB3, HDMI, DP, M.2 PCIe, SATA, was man halt so braucht. Aber auch zwei 
echte UARTs und zwei I2C für eigene Hardware. Damit kannst Du Dir 
beispielsweise auch ein NAS bauen, das jedes kleine Synology NAS 
abhängt.

von Stefan F. (Gast)


Lesenswert?

512 MB RAM ist zu wenig. Du willst ja nicht nur den Kernel ausführen, 
sondern auch eine DB und eine Webanwendung in PHP.

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
Noch kein Account? Hier anmelden.