Forum: Mikrocontroller und Digitale Elektronik [S] µC + Webserver


von Bergie B. (bergie)


Lesenswert?

Moin moin,

ich bin auf der suche nach dem passenden µC für mich der dann auch noch 
mit passender Software versehen werden kann.

Aus der einen Seite möchte ich gerne Messungen durchführen. Also wären 
mehrer ADC gut. Evt. möchte ich aber auch andere Bausteine ansprechen: 
SPI. Die Daten müssen dann recht flott aufbereitet werden. Ich denke 
8MHz sollten reichen wenn ich die Berechnungen in C durchführe. Die 
aufbereiteten Messdaten möchte ich dann als Internetseite darstellen. 
Zum Schluss möchte ich dann noch über das WebInterface Parameter Daten 
an meinen µC übertragen.

Ich möchte also auf der einen Seite meine Messungen in C realisieren 
(Echtzeit). Auf der anderen Seite möchte ich ein Webinterface haben wo 
ich den größten Teil mit HTML erledige.

Ich möchte also
- einen WebServer „einkaufen“
- selber verschiedene (zeitkritische) Messungen durchführen
- die aufbereiteten Werte übergeben
- eine HP erstellen die auf dem µC läuft und Dynamisch in Abhängigkeit 
meiner Messwerte erstellt wird. Eine Parametrierung in die andere 
Richtung soll auch Möglich sein. Es soll eine sichere Kommunikation 
sein.
- die Hardware soll nicht viel Kosten.

Ich habe schon einiges gefunden:

http://www.mikrocontroller.net/articles/Miniwebserver
http://www.roboternetz.de/community/showthread.php?30832-PIC-kosteng%FCnstig-%FCber-Ethernet-webinterface-ansteuern
http://www.dacomwest.de/de/etherics_hardwired_w7100a.htm

Ich hoffe ich bekomme von euch noch mal guten Input damit ich eine 
Marktübersicht bekomme.

Danke für eure Mühe schon mal im Voraus.

LG Bergie

von Andi S. (laserandi)


Lesenswert?

www.ulrichradig.de/home/index.php/avr/avr-webmodule

von Jojo S. (Gast)


Lesenswert?

Deutlich besser als die AVR Mega finde ich den LPC1769, zb LPCXpresso 
von EmbeddedArtists (in D günstiger bei Watterott). Kostet Netto 20€ und 
hat alles on Board, braucht nur eine Netzwerkbuchse und dann läuft der 
als Webserver. Hat deutlich mehr Ressourcen als atmega wie zb 64kB RAM. 
12 Bit AD sind vorhanden, schneller SPI, 120MHz Takt und Daten zum 
Ethernet gehen per DMA und nicht alle durch ein Nadelöhr wie beim 
enc2860. Dazu noch der JTAG, damit kann man ordentlich debuggen, das ist 
bei AVR deutlich teurer.

von Bergie B. (bergie)


Lesenswert?

Hi danke schonmal dafür =)

Hat noch jemand weitere Vorschläge? Mein Ziel ist ja erstmal zu sammeln 
was es alles gibt. Eine bewertung was für mich das beste ist findet 
später statt.

LG

von bingo (Gast)


Lesenswert?

> Deutlich besser als die AVR Mega finde ich den LPC1769

gibt es da schon fertige Software oder muss man das selber stricken?

von Frank K. (fchk)


Lesenswert?

Ich setze in einigen Projekten den PIC18F67J60 ein. Das ist ein 8 Mit 
Controller mit eingebautem 10 MBit Ethernet MAC und PHY, d.h. Du musst 
wirklich nur noch den RJ45 mit Übertrager und dem üblichen Kleinkram 
anschließen. Das ganze ist so saubillig, da bekommst Du anderswo nicht 
einmal einen 10/100 Ethernet PHY für. Die BOM eines solchen Systems 
liegt unter 10 Euro - das teuerste daran ist der Magjack.

Treiber, TCP/IP-Stack+Protokolle+Application Framework gibts bei 
Microchip zum runterladen.

fchk

von Jojo S. (Gast)


Lesenswert?

Der lpc1769 unterstützt auch 100 MBit, ist auf dem LPCXpresso
Board mit drauf. Es gibt eine uIP Implementierung mit Webserver in den 
Beispielen die von EA angepasst wurden. Und auch das FreeRTos läuft mit 
dem Board, da musste der Code vom Phy angepasst werden weil die neueren 
Boards von EA einen LAN8720 statt DPirgendwas drauf haben. Beispielcode 
für ADC, i2c usw ist in einer Lib zusammengefasst.

von Εrnst B. (ernst)


Lesenswert?

Bis auf
> Es soll eine sichere Kommunikation sein.
trifft das doch wohl auf jeden µC zu, an den sich per SPI o.ä. ein 
Ethernet-Chip + evtl Zusatzspeicher koppeln lässt.

> Mein Ziel ist ja erstmal zu sammeln was es alles gibt.
Also in etwa: Alle größeren µCs × Alle Ethernet-Controller.

Oder warst du eher auf der Suche nach fertigen (Eval-) Boards für die 
Aufgabe?

Da hängts davon ab, wieviel Aufwand du reinstecken willst, was das Board 
kosten darf, und ob es ein Bastler-Einzelstück oder ein Prototyp für die 
Serie ist (Stückzahlen?)

Am einfachsten gehts wohl mit einem kleinen Linux-Board (Beagle, 
Gumstix, alter EEEPC, OpenWRT-Router, Seagate Dockstar .......)
Webserver + PHP drauf, z.B. RRDTool oder ne Datenbank zum 
Messdatensammeln, fertig.
Du kannst dich voll auf die Webseite / HTML konzentrieren, nur das 
ADC-Anflanschen wird vielleicht etwas haarig.

Oder sowas wie das Pollin AVR-Net-Board:

Viel Aufwand um die Webseite ins Flash zu pressen, aber der ADC ist 
schon drann, Stromverbrauch evtl niedriger.

von Peter Z. (hangloose)


Lesenswert?

In der Bucht gibt es ein
NXP ARM Cortex-M3 LPC1768 Development Board
Da ist ein 3,2" Display, SD-Card Slot, Netzwerkbuchse, USB Anschluss, 
CAN, J-Link zum Debuggen und noch mehr drauf.
Für 55 Euro echt genial...
Damit kannst deinen Webserver locker realisieren.

von Peter (Gast)


Lesenswert?

Der Crumb644-NET erfüllt auch alles, was Du als Wunsch so aufgelistet 
hattest:

http://www.chip45.com/AVR-ATmega-Microcontroller-Modules/Crumb644-NET-V2-1-AVR-ATmega644P-Ethernet-RJ45-USB-module.html

von Ulrich P. (uprinz)


Lesenswert?

Naja, dann schau auch mal bei www.ethernut.de vorbei. Fertige Hardware 
kann man auch kaufen, muss man aber nicht.
Ein OS für AVR und AT91SAM7/9.
Port auf CortexM3 ist in der Mache, womit dann auch STM Chips aus der 
STM32F Serie in Frage kommen.

Vorteil ist, dass das Nut/OS nicht Realtime ist, damit kannst Du einfach 
deinen ADC an einen Timer koppeln und per Interrupt hart auslesen, das 
stört das Nut/OS nicht weiter.

Funktionen wie Daten in echte oder virtuelle Dateien zu speichern sind 
ebenso vorhanden, wie ein Webserver, der mit CGI und anderen Extras 
umgehen kann.
Da das alles unter BSD läuft, steht es Dir sogar frei Dein Projekt 
anschließend in Serie zu verkaufen.
Als 'Bezahlung' wünsche ich mir lediglich, dass Nutzer den ein oder 
anderen Treiber oder Bug-Fix beisteuern, damit alle was davon haben.

An sonsten, das was Du da machen willst, habe andere und ich in Nut/OS 
schon oft erfolgreich realisiert.

Gruß, Ulrich

von GuidoL (Gast)


Angehängte Dateien:

Lesenswert?

Schau doch mal auf
http://code.google.com/p/snake-os/

Das dortige SnakeOS kann man auf in HongKong (per Bucht) guenstige
Mini-Server (ca 30EUR) bringen (Modelle WLX 652 und NS-K330).

Die laufen unter einer CPU vom Typ str8132.

Neben SnakeOS, dass einige fuer die kleine Hardware erstaunliche Dienste 
leisten kann (mit den 32Mb Ram und 200Mhz kann man SMB, FTP, TELNET, 
DDNS, SFTP/SSH, Transmission (BitTorrent), WebServer und per USB auch 
SwapFile).
Es gibt auch ein debian-chroot.

Aufpassen das WLX652R hat eine andere CPU (auch das WLX651 hat eine 
andere) =RDC anstatt STR

Im Geraet ist 2x USB 2.0 und einmal 100MBit Ethernet.

Das ganze wird mit 5V Netzteil betrieben (>500mAh = 2A)

von Bergie B. (bergie)


Lesenswert?

Hallo,

nochmal danke an alle.

Εrnst B✶ schrieb:
> Bis auf
>> Es soll eine sichere Kommunikation sein.
> trifft das doch wohl auf jeden µC zu, an den sich per SPI o.ä. ein
> Ethernet-Chip + evtl Zusatzspeicher koppeln lässt.

Ich bevorzuge eine ein Chip Lösung. Die sichere Kommunikation war in 
diesem Kontext auf die Software bezogen.


>> Mein Ziel ist ja erstmal zu sammeln was es alles gibt.
> Also in etwa: Alle größeren µCs × Alle Ethernet-Controller.
>
> Oder warst du eher auf der Suche nach fertigen (Eval-) Boards für die
> Aufgabe?
>
> Da hängts davon ab, wieviel Aufwand du reinstecken willst, was das Board
> kosten darf, und ob es ein Bastler-Einzelstück oder ein Prototyp für die
> Serie ist (Stückzahlen?)

Ich versuche einen kleiner überblick zu bekommen. Es soll auf dieser 
Basis ein Prototyp entwickelt werden. Ich denke die Stückzahlen liegen 
bei 1000+?

Ich selber möchte möglichst wenig Aufwand mit dem Programmieren haben. 
Für die Endwicklung der Hardware Peripheri habe ich verhältnismäßig mehr 
Zeit.

Nach der einarbeitung in den Stack soll dieses auch dazu dinen 
zukünftige Projekte schneller abwicklen zu könne.

> Am einfachsten gehts wohl mit einem kleinen Linux-Board (Beagle,
> Gumstix, alter EEEPC, OpenWRT-Router, Seagate Dockstar .......)
> Webserver + PHP drauf, z.B. RRDTool oder ne Datenbank zum
> Messdatensammeln, fertig.
> Du kannst dich voll auf die Webseite / HTML konzentrieren, nur das
> ADC-Anflanschen wird vielleicht etwas haarig.
>
> Oder sowas wie das Pollin AVR-Net-Board:
>
> Viel Aufwand um die Webseite ins Flash zu pressen, aber der ADC ist
> schon drann, Stromverbrauch evtl niedriger.

LG Bergie

von Frank K. (fchk)


Lesenswert?

Bergie B. schrieb:

> Ich bevorzuge eine ein Chip Lösung. Die sichere Kommunikation war in
> diesem Kontext auf die Software bezogen.

Echte Ein-Chip-Lösungen gibt es nur ganz wenige:
- der von mir genannte PIC18F67J60 plus die Pendants in größeren 
Gehäusen PIC18F87J60 und PIC18F97J60
- die TI/Luminary Micro LM3S6xxx und LM3S8xxx Serien (ARM)
- ein bestimmter Freescale Coldfire

Nur die haben Prozessor und Ethernet MAC und Ethernet PHY im einem 
Package integriert. Alles andere sind mindestens Zwei-Chip-Lösungen, 
nämlich Prozessor+Ethernet MAC einerseits und Ethernet PHY andererseits.

Denke auch daran, dass die MII-Schnittstelle zwischen Ethernet MAC und 
Ethernet PHY 18 Signale umfasst, plus ggf noch einmal Reset für den PHY 
plus ggf noch einmal einen IRQ für den PHY. Wenn Du also einen 
Controller im TFQP64 hast, dann hast Du dadurch von Deinen 50 IOs nur 
noch 30 über (etwa).

Ich kenne sowohl die Luminary Micros als auch die PICs, und aus meiner 
Sicht ist der Microchip-Stack eindeutig der bessere im Vergleich zum 
ganzen uIP/lwIP-Geraffel, das Du sonst auf dem ARM verwenden würdest, 
sowohl im Funktionsumfang als auch Geschwindigkeit als auch Footprint.

Aus diesem Grund verwende ich die PICs so gerne - plus sie sind so 
spottbillig (2.59€ in 1000'ern bei Microchip Direct). Anderswo zahlst Du 
das nur für den Ethernet PHY. Und wenn der PIC18F von der Rechenleistung 
dann doch nicht reichen sollte, gehts Du mit Deinem vorhanden Quelltext 
zwei Stufen höher zum PIC32MX6** und machst dort einfach weiter. Stack 
und Application Framework sind über alle PIC-Familien (PIC18, 
PIC24/dsPIC, PIC32) identisch (sprich: es ist derselbe Quelltext). Alles 
schon gemacht.

fchk

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.