Guten Abend,
ich muss für mein Projekt als Werkstudent einen AVR Webserver mit Wlan
ausstatten und ins Internet bringen.
Leider finde ich dass es zu diesem Thema noch relativ wenig Infos gibt.
Habe schon etwas gesucht und bin auf folgende Wlan Module gestoßen.
- WRL-3000 mit CC3000 Modul
http://www.embeddedadventures.com/cc3000_wifi_module_wrl-3000.html
- XBEE von Reichelt
Preislich wären beide voll in Ordnung. Habe ein Budget von 50€.
TCP/IP Stack sollte schon vorhanden sein, damit die einbindung relativ
einfach ist.
Könnt ihr mir bitte sagen, welches die bessere Wahl für mich ist, oder
ob Ihr vielleicht ein besseres kennt.
Danke schon mal
Nur nen Hinweis, es gibt nur ein einziges XBee Wifi Modul, das es nicht
bei reichelt gibt. Alles andere sind zigbee/802.15.4 module!
Es gibt einige wifi module von lantronix, die sind ganz brauchbar
Ich glaube, es ist einfacher, komplett neu anzufangen als ein WLAN-Modul
(noch dazu mit eigenem Stack) in den vorhandenen Webserver und den
vorhandenen TCP-Stack hineinzubasteln.
Mein Vorschlag:
Microchip MRF24WG0MB 802.11g WLAN-Modul
Dazu ein PIC24 oder PIC32 und weitere Peripherie nach Wahl.
Dieses WLAN-Modul hat keinen eingebauten TCP/IP-Stack. Microchip hat
einen kompletten Stack mit allen möglichen Protokollen, den Du kostenlos
nutzen darfst, solange wie Du ihn auf einem PIC implementierst. Das ist
alles fertig und getestet und kommt mit Dokumentation als chm und pdf.
Es gibt Demoboards von Microchip, wo Du Dir alles abschauen kannst, und
es gibt auch fertige Module von Fremdfirmen.
So kann das aussehen:
http://wiki.openpicus.com/index.php/Flyport_WiFihttp://www.microchip.com/Developmenttools/ProductDetails.aspx?PartNO=DV102412
Wenn SSL gefordert ist - das kann der Microchip TCP/IP-Stack auch,
einfach so, out of the box. Dafür solltest Du aber einen der größeren
PIC32MX mit 80 MHz verwenden, damit der SSL Handshake innerhalb von 1-2
Sekunden durch ist und keine 20s braucht wie bei einem 8 Bit PIC (oder
einem AVR, da läge das in der gleichen Größenordnung).
Hier ist die Microchip-Software:
http://www.microchip.com/pagehandler/en-us/devtools/mla/legacy-mla.html
IDE und Compiler gibts auch auf microchip.com:
http://www.microchip.com/pagehandler/en-us/family/mplabx/
An Hardware brauchst Du nur noch ein PICKIT3, das Du als Nachbau für 20€
vom Chinamann bekommst.
Technisch ist das auf jeden Fall die bessere Lösung.
fchk
Der Lantronix WiPort scheidet bei dem Budget leider aus (oder zählt auch
der 1000er-Preis?)
Das WIZnet WIZ610Wi gibt's für 53€ bei Watterott, das RN-XV WiFly Module
ist mit 36€ im Preisrahmen und hat Xbee-Kompatibles Pinout.
Wow dankeschön für die ganzen guten Beiträge.
Microchip hört sich echt gut an. Vor allem weil es den PIC32 auch im DIP
Gehäuse.
Werde mir mal die Microchip Module genauer anschauen.
Was sind die Vor- oder Nachteile, wenn der Stack bereits auf dem WLan
Modul ist?
Mal sehen ob ich den Abteilungsleiter davon überzeugen kann das PickKit
zu kaufen :)
Aber ich denke schon. Kostet ja "nur" 33€ original.
Wo liegt der Unterschied zwischen dem 2er und dem 3er?
Dankeschön euch allen
Dani schrieb:> Microchip hört sich echt gut an. Vor allem weil es den PIC32 auch im DIP> Gehäuse.
Du brauchst ohnehin eine Platine für das Modul. Also kannst Du auch
genauso gut SMD-Bauteile nehmen. Und je nachdem, was Du von dem Stack
brauchst und reincompilierst, kann der ganz schön groß werden. Ist ja
auch ne Menge drin. Die 128k Flash eines PIC32MX250F128B werden ganz
schnell voll sein, wenn Du den gesamten Lieferumfang hineincompilierst.
> Was sind die Vor- oder Nachteile, wenn der Stack bereits auf dem WLan> Modul ist?
Vorteile:
Weniger Entwicklungsaufwand, wenn Du nicht gerade einen Stack auf dem
Silbertablett serviert bekommst wie bei Microchip
Microcontroller kann kleiner sein, weil der Stack ja auch eine gewisse
Größe hat. (siehe oben)
Nachteile:
Restriktionen des eingebauten Stacks (Protokolle, Anzahl der offenen
Sockets,...)
ggf Geschwindigkeit (das MRF... Modul ohne Stack kann den doppelten
Datendurchsatz erreichen wie das äquivalente RN... Modul mit eingebautem
Stack)
> Wo liegt der Unterschied zwischen dem 2er und dem 3er?
Das 2'er ist die alte Version, kann keine PIC32, wird nicht mehr
gepflegt. Schlechter Support im MPLABX. Nicht kaufen!
Das 3'er ist die aktuelle Version, die laufend Unterstützung für neue
Chips bekommt.
fchk
Schönen Abend,
um euch auf dem laufenden zu halten:
PIC wurde leider abgelehnt.
Die setzen hier auf AVR.
CC3000 scheidet auch aus, da er kein Adhoc unterstützt.
Habe jetzt den RN-XV ausgewählt. Habe auch schon ein paar Beispiel
Projekte gefunden.
Mir wurde außerdem gesagt, dass ich mal schauen soll den Server etwas
schneller zu machen.
Aktuell ist ein ATmega32 eingebaut.
Darum will ich jetzt einen AVR32 einbauen.
Ist das eine gute Idee?
Danke
Dani schrieb:> PIC wurde leider abgelehnt.> Die setzen hier auf AVR.
Idioten. Die haben wohl einen geistigen Horizont mit Radius 0, und das
nennen sie dann Standpunkt.
> Mir wurde außerdem gesagt, dass ich mal schauen soll den Server etwas> schneller zu machen.> Aktuell ist ein ATmega32 eingebaut.> Darum will ich jetzt einen AVR32 einbauen.
Die Rechenleistung ist nicht unbedingt das Problem.
Ich habe einmal einen Vergleich gemacht:
System 1: PIC18F67J60 8 Bit, ca. 10 MHz Instruction Clock, 10 MBit
Ethernet MAC/PHY, Microchip TCP/IP Stack
System 2: Luminary Micro (jetzt TI) LM3S6911 32 Bit Cortex M3 80 MHz,
10/100 Mbit Ethernet MAC/PHY, uIP und lwIP Open Source Ethernet Stack
(das was sonst alle anderen auch verwenden, auch Dein AVR Webserver
benutzt wahrscheinlich einen von beiden)
(siehe Bilder; Du darfst die sowie meine Mail ruhig rumzeigen)
Auf beiden die gleiche Website geladen. Welches System war flotter und
reaktionsschneller? Genau: der kleine PIC, der nur einen Bruchteil der
Rechenleistung des Cortex M3 hat. Das Problem war der TCP/IP-Stack, und
der von Microchip ist schon ziemlich gut. Speziell bei TCP ist es gar
nicht so einfach, das wirklich performant hinzubekommen, vor allem bei
wenig Speicher. Microchip hat das einfach besser gemacht als der Adam
Dunkel, der die beiden Open Source Stacks geschrieben hat.
Du solltest davon absehen, den auf dem AVR laufenden Stack verbessern
oder einen eigenen Stack schreiben zu wollen. Das ist eine ziemlich
zeitraubende Arbeit und ein extra Projekt für sich. Vielleicht etwas
Feintuning oder so, andere Einstellungen, aber mehr nicht.
Ein AVR32 ist natürlich eine deutlich schönere Grundlage. Wähle dafür
die AT32UC3C Serie. Die hat auch einen Ethernet MAC eingebaut, Du musst
nur noch einen PHY extern per MII oder RMII anschließen, um Ethernet zu
bekommen. Einen TCP/IP-Stack brauchst Du natürlich auch noch, und da
hast Du wieder die Wahl zwischen Pest & Lepra.
fchk
Danke für deine sehr informative Antwort.
Darf ich fragen, ob Sie generell etwas gegen Atmel haben, oder sind Sie
der Meinung, dass das Projekt mit Microchip um einiges einfacher ist?
So wie ich das verstanden habe, wird von Microchip so ziemlich alles
bereitgestellt was ich benötige.
Vielleicht werde ich es privat umsetzen.
Danke ist echt ein gutes Forum hier.
Dani schrieb:> Darf ich fragen, ob Sie generell etwas gegen Atmel haben, oder sind Sie> der Meinung, dass das Projekt mit Microchip um einiges einfacher ist?
Wenn Du wüsstest, wie viele Architekturen ich inzwischen schon durch
habe... Z80, 6502, 68000, 68H11, x86, 8051, AVR, AVR32, PIC 18/24/dsPIC,
ARM, MIPS/PIC32, MSP430, diverse DSPs... Ich mache das aber auch schon
ein paar Jahrzehnte. Daher bin ich eigentlich herstellerneutral und
nehme den Controller, den ich für am passendsten halte. Wenn das AVR
ist, ist das OK, ansonsten aber auch PIC, MSP430 oder irgendwas in
Richtung ARM.
Um aber wirklich fachlich fundiert vergleichen zu können (wie bei meinen
beiden Ethernet-Boards), muss man aber das Know-How haben. Wer nur AVR
und AVR und vielleicht noch AVR kann, kennt die Alternativen halt nicht
und kann daher einfach keine optimale Entscheidung treffen. Und das sind
leider ziemlich viele.
Atmel hat lange Zeit den Softwaresupport der Community und
Drittherstellern überlassen. Dadurch sind viele Lösungen entstanden,
aber etliches ist GPL-Code und für kommerzielle Projekte deswegen nicht
brauchbar. Das populäre VUSB zB wird eine ziemlich teure Sache, wenn man
es kommerziell einsetzen will (jetzt mal von den technischen Schwächen
abgesehen), was vielen Leuten gar nicht bewusst ist.
Microchip hat die Sache in die eigene Hand genommen. Dadurch bekommt man
dort nicht nur die Chips, sondern auch die zugehörige Software, die man
auch in kommerziellen Projekten kostenfrei verwenden kann. die
Lizenzbedingungen sind allerdings nicht mit freier Software vereinbar,
was vielen Leuten aus dieser Richtung sauer aufstößt. Und da sind dann
eben auch Klauseln drin, dass man deren Code nur auf PICs verwenden
darf. Was Microchip lange verbockt hat und was ihnen massiv im
Bastlermarkt geschadet hat, war das Fehlen eines guten kostenlosen
Compilers. Das haben sie ja inzwischen korrigiert, nachdem sie Hitec
aufgekauft haben.
Zudem: Viele Leute verbinden mit PIC nur die alte 8-Bit Architektur, die
ihren Ursprung in der Mitte der 70'er Jahre hat. Dass es da inzwischen
auch richtig nette 16- und 32 Bitter gibt, sehen die nicht.
Ich persönlich verwende AVRs inzwischen relativ selten. Suche mal nach
AVRs mit eingebautem Ethernet. Fehlanzeige! Einen entsprechenden PIC
siehts Du oben in meinem letzten Posting. Oder kleine AVRs mit
eingebautem CAN-Controller. Fehlanzeige! Die ganzen Bastler hier müssen
einen Microchip MCP2515 per SPI anbinden, während es auch kleine PICs
gibt, die eine verbesserte Version des MCP2515 gleich mit eingebaut
haben.
Bei den MSP430 gibts schöne Controller, die 24 Bit ADCs eingebaut haben.
Und zwar gleich mehrere und nicht einen einzigen mit Multiplexer davor
wie bei AVR. Diese Dinger sind für Energiemessungen gedacht. In vielen
Multimetern sind auch MSP430 verbaut, zB bei Fluke.
Wie ich schon oben geschrieben habe: die meisten Leute haben keinen
Überblick und kennen die Alternativen nicht. Wie sollen die eine
sinnvolle Entscheidung treffen?
> So wie ich das verstanden habe, wird von Microchip so ziemlich alles> bereitgestellt was ich benötige.
Genau. Und der IP-Stack ist nicht schlecht. Den hätte ich auch gerne für
ARMs.
> Vielleicht werde ich es privat umsetzen.
Nur zu.
Spezifische Fragen zu irgendwelchen Produkten stellst Du dann aber
besser im Microchip-Forum.
fchk