Forum: Mikrocontroller und Digitale Elektronik Micocontroller Webinterface


von Anton A. (fartingweasel)


Lesenswert?

Hallo

Ich bin neu hier im Forum und hab da mal ne Frage.

Erstmal mein Problem:

Ich möchte gern über ein GUI oder Webinterface bestimmte Paramater z.B. 
frequenz auswählen.

Nach der Auswahl soll der Mikrocontroller dann diese Frequenz als 
triggersignal bereitstellen.

Mein verständnisproblem ist ,wie bekomm ich die Parameterauswahl auf den 
µC ohne ständig flashen zu müssen?



mfg
weasel

von Schubi (Gast)


Lesenswert?

z.B. Übergabe der Frequenz per serieller Schnittstelle?

von Stefan B. (stefan) Benutzerseite


Lesenswert?

Über irgendeine Schnittstelle, die am PC und am µC vorhanden ist und die 
von deiner GUI oder deinem Webinterface mit Daten versorgt wird?

Beispielsweise benutzen viele dafür die rel. einfach zu handhabende 
serielle Schnittstelle. Am PC also COM-Port (RS232) und um µC UART-Port.

Bei luxuriöseren µC hast du vielleicht sogar eine USB-Schnittstelle oder 
gar eine Ethernet-Schnittstelle...

Siehe auch
http://www.mikrocontroller.net/articles/Ports_benutzen_%28PHP%29 als 
Basis für ein in PHP geschriebenes Webinterface

von Carbolo C. (carbolo)


Lesenswert?

Eine denkbare Lösung wäre auch eine Kombination aus einem AVR und 
ENC28J60. Da hast du den Server direkt im AVR am laufen und kannst 
beliebige Parameter über ein Webinterface ändern. Ein Beispielprojekt 
wäre z.B. dieses hier:

http://avr.auctionant.de/avrETH1/

Gruss

von Anton A. (fartingweasel)


Lesenswert?

Hey vielen Dank

bei weiteren fragen werd ich mich wieder melden....

thx

von 1293 (Gast)


Lesenswert?

Vergiss den ENC28J60. Der verbratet viel zuviele Resourcen fuer den 
mageren Durchsatz, der meist nicht mal noetig ist. Eine bessere Loesung 
ist ein Umsetzter auf dem PC, der Serial zu HTTP umsetzt. Ich hab jetzt 
ein paar Monate an einem seriell angebundenen Webserver gearbeitet. Es 
geht, ist aber nicht ganz so trivial wie's scheint. Fuer eine schnelle 
Loesung ist ein Windows GUI einfacher.

von Carbolo C. (carbolo)


Lesenswert?

1293 wrote:

> Eine bessere Loesung
> ist ein Umsetzter auf dem PC, der Serial zu HTTP umsetzt. Ich hab jetzt
> ein paar Monate an einem seriell angebundenen Webserver gearbeitet. Es
> geht, ist aber nicht ganz so trivial wie's scheint. Fuer eine schnelle
> Loesung ist ein Windows GUI einfacher.

Hast du ein link, Doku o.ä. für den seriellen Webserver? Klingt 
interessant.

von 1294 (Gast)


Lesenswert?

Es ist ein konzept an welchem mehrere Firmen arbeiten. Ich hab mal einen 
Bootloader geschrieben, der ueber http bootet, dh man kann den 
effektiven server mit dem browser laden. Jetzt noch auf'm Mega169 
(butterfly), aber meine bevorzugte Wahl wird der 32er, resp 324 er sein. 
Die seiten sind dann in einem AT45DB161, AT45DB321 gespeichert. Das 
laden der seiten geht natuerlich auch ueber http. Waehrend der 169 kein 
serverside include kann, wird der 32er das koennen. Dynamische 
Variablen, zB Benutzerdaten im 169er kann man ueber http lesen und 
schreiben. Eine andere firma macht die Middleware, dh den Umsetzer. Der 
muss die statischen Seiten cachen. Ich komm darauf zurueck.

von 1295 (Gast)


Lesenswert?

The describing website of the serial webserver : 
http://www.ibrtses.com/projects/microwebserver.html, appears not really 
up to date.

von Marius S. (lupin) Benutzerseite


Lesenswert?

>Vergiss den ENC28J60. Der verbratet viel zuviele Resourcen fuer den
>mageren Durchsatz, der meist nicht mal noetig ist. Eine bessere Loesung
>ist ein Umsetzter auf dem PC, der Serial zu HTTP umsetzt.

Wie bescheuert ist das denn? Ein Microcontroller als Webserver, der aber 
einen PC als Schnittstellenumsetzer von HTTP auf seriell braucht? Oder 
verstehe ich da was falsch?

Das ist ja vom Konzept her schon 'ne Fehlentwicklung... Ich hab nämlich 
mal gehört das es für PCs auch Programme gibt, die HTTP Seiten zur 
Verfügung stellen... :)

Ein PC verbrät ja auch nur unwesentlich mehr Resourcen als ein 
ENC28J60...

Falls du jetzt Hardwareresourcen meinst: Es gibt auch schnellere 
Microcontroller als AVRs (obwohl der es auch packt, kommt drauf an was 
man machen will). Ein ARM7 oder ARM9 kommt mit einem ENC28J60 schon ganz 
gut zurecht (obwohl es in der Klasse auch schon integrierte 
Ethernet-PHYs gibt).

Das man jetzt mit einem Microcontroller irgendwas messen/schalten/regeln 
möchte und das per PC gesteuert (welcher wiederrum per HTTP interface 
angesprochen wird) kann ich verstehen... aber wozu dann die ganzen HTTP 
sachen im Microcontroller? (das wird ja sowieso nur Aufbereitung der 
HTML Seiten sein, oder?)

Oder war das ganze nur ein Scherz? Kann mir nicht vorstellen das mehrere 
Firmen an sowas brüten...

von 1295 (Gast)


Lesenswert?

Nein, kein Witz. Um ein Windows GUI loszuwerden verwendet man einen 
Browser. Dem muss man eigentlich nur ein paar HTML, Javascript, AJAX 
Seiten abspulen.
Wir lassen jetzt den Fall eines Oszilloskopes auf dem Browser weg. Auch 
keine Webcam mit Hardwarekompression. Einfach etwas konfigurieern und 
etwas auslesen. Kleine Datenraten, selten. Fuer diesen sehr haeufigen 
Anwendungsfall ist TCP/IP uebertrieben und Ethernet auch grad nochmals. 
Ein 32bitter ist Overkill. Ein AVR ist gerade richtig. Es werden 
statische und dynamische files abgespult. Die Middleware ist einfach in 
der Funktionalitaet, die kann eigentlich fast jeder selbst schreiben, 
ist als freeware geplant. Die macht den seriellen Strom vom und zum 
Webserver auf einem Socket verfuegbar.

Was das Ganze soll ? Mit der 17. Version einer Hardware erreicht man nur 
die optimale funktionalitaet wenn auch die 17.Version des Windows GUI 
dabei ist.  Man kennt's, ist das nun das passende GUI? Mit dem Webserver 
und den Seiten im flash ist das GUI schon eingebaut. Der 
Socket-zu-Serial Umsetzer bleibt immer derselbe.

von Anton A. (fartingweasel)


Lesenswert?

Also bei mir wirds auf ne windows GUI hinauslaufen..

welchen µC könnt ihr empfehlen?

Bzw welche fertigen Boards mit ethernet oder USB schnittstelle?


Hab auch daran gedacht als zusätzliche speicher auf dem ich bequem so ne 
art datenbank mit den jeweiligen parametern ablegen kann ne sd karte zu 
benutzen? oder is das schwachsinn...

es geht daru das ich in nem drop down menue verschieden geräte auswählen 
kann .
je nach ausgewähltrem gerät soll der µC dann gewisse parameter benutzen 
die er sich aus der sd datenbank holen kann...

eure meinung dazu?

von Stefan B. (stefan) Benutzerseite


Lesenswert?

An welche "Frequenzen von Triggersignalen" denkst du so?

Bis oberer KHz-Bereich würde ich als ersten Prototypen ein preiswertes 
System wie im Tutorial aufbauen.

Also ein Atmega8 oder Atmega16 mit externem Quarz als Taktquelle. 
Kommunikation µC<->PC über RS232, denn viel an Daten muss ja nicht zum 
µC gesendet werden. Ich schätze, das ist um die 10€ möglich.

Wenn das stabil läuft und die Software auf dem µC und die Software auf 
dem PC machen, was sie sollen, weisst du, was du für den Prototypen 2 
brauchst.

von Anton A. (fartingweasel)


Lesenswert?

Also Preis spielt ne nebenrolle is für ne studienarbeit gedacht..

von 1296 (Gast)


Lesenswert?

Ein windows GUI ist eine gute Wahl. Ein AVR wird genuegen. Ich wuerd 
allerding einen Mega32 empfehlen, hat etwas mehr Platz. Fuer Parameter, 
die auch bei Power-off erhalten bleiben muessen hat es internes EEPROM, 
da waere eine SD Karte uebertrieben.

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.