Guten Abend, Ich stehe momentan vor der Frage ob ich für ein neues Projekt, welches später durchaus kommerziell werden soll, ein Embedded Linux System benutzen soll oder doch lieber ein Atmel AVR/ARM. Ich beschreibe mal die Anforderungen: - Großes (>=24 Zoll) Display - Internet Anbindung (Datenabfrage) - Tasten, Sensoren - evtl. Kamera für Geschichtserkennung - evtl. Datenbank auf dem System gespeichert Die meisten werden sich jetzt denken bis zu den "evtl." Punkten reicht ein normaler ATmega, natürlich der Meinung bin ich auch. Doch stellt sich mir hier nicht die Frage ob ein Embedded System nicht zu übertrieben ist. Punkte die für eine Embedded Lösung sprechen sind vor allem, das nicht von 0 Angefangen werden muss. Ich habe mir mit Spannung den Beitrag "Embedded Systems - Die nächsten zehn Jahre" durchgelesen. Und ich verstehe das man gegen die Lösung mit Embedded System ist, wenn diese wie in meinem Fall übertrieben scheint. Doch bei vielen Projekten bei denen ich schon von wirklich Null angefangen habe, und dabei auch nicht von Fehlern gelernt habe die andere schon gemacht haben, bekam ich gesagt das dies völliger Schwachsinn wäre. Jemand sagte mir mal "Lieber auf die Schultern des Riesen klettern. Das ist einfacher, als selber zum Riesen zu werden.". Ich müsste ja viele Netzwerk Protokolle erst selber implementieren, und und und. Und das ist am Ende auch eine Frage der Entwicklungszeit, man denke daran – Zeit ist Geld. Ich denke das ist ein Punkt der in dieser Diskussion noch nicht betrachtet wurde. Auch sehe ich das wie W.S. W.S. schrieb: > nicht kapiert und ziemlich große Scheuklappen auf. Braucht meine Nichte > einen Prozessor oder ein Gigabyte RAM? Nö, braucht sie nicht. Aber ein > Mobiltelefon und ne Flatrate braucht sie, wo sie mit ihren Freundinnen > sinnloses Geschwätz führen kann, DAS BRAUCHT SIE. Natürlich könnte sie > sich ja mit denen zum Tee treffen, aber das ist ja nicht Mode. Aber ob > in ihrem Telefon ein Prozessor oder ein grünes Marsmännchen werkelt, ist > ihr und dem Rest der Welt völlig schnurz. > > Versteht ihr jetzt, warum das Innenleben all der tollen Geräte nur > zweitrangig ist? Den Leuten ist es am Ende egal was in der Kiste steckt. Eine Kostenfrage stellt sich ja heute auch nichtmehr, beide Lösungen werden wahrscheinlich am Ende auf die gleiche Summe kommen. Einzig was mich beunruhigt ist, das ich mich und mein Projekt natürlich von Linux Abhängig mache, mein Projekt erbt ja quasi alle Bugs und Sicherheitslücken von Linux, und was mache ich wenn ein Kunde anruft weil Linux abgeschmiert ist. Wahrscheinlich gibt es auch noch viele Punkte die mir noch gar nicht in den Sinne gekommen sind um eine Entscheidung zu treffen. Daher bitte ich um euren Rat.
Hotspott schrieb: > mein Projekt erbt ja quasi alle Bugs und > Sicherheitslücken von Linux, und was mache ich wenn ein Kunde anruft > weil Linux abgeschmiert ist. Auch bei von Dir selbst geschrieben Programmen werden sicherlich Bugs und Sicherheitslücken vorhanden sein. Linux und die dafür existierenden Programme werden von zigtausenden Leuten geschrieben und überwacht.
Hotspott schrieb: > Ich beschreibe mal die Anforderungen: > - Großes (>=24 Zoll) Display > - Internet Anbindung (Datenabfrage) > - Tasten, Sensoren > - evtl. Kamera für Geschichtserkennung > - evtl. Datenbank auf dem System gespeichert > > Die meisten werden sich jetzt denken bis zu den "evtl." Punkten reicht > ein normaler ATmega, natürlich der Meinung bin ich auch. Wie genau wird denn das große 24 Zoll Display an den ATMega angeschlossen? Reicht die Rechenleistung einer 8 Bit CPU für Gesichtserkennung?
Natürlich schreibt man auch selber Fehler in sein Programm, das stimmt. Doch auch hier dauert es wieder bis Fehler im Kernel angepasst sind, und dann noch mal bis diese auf ein Embedded System gebracht werden. Die Grafik müsste natürlich auf andere Leistungsstärkere Chips exportiert werden, welche man per z.B. SPI anspricht. Aber in der Phase, dass ich dafür schon konkrete Pläne habe bin ich noch gar nicht. Über eine Gesichtserkennung habe ich mir noch keine Gedanken gemacht, wenn müsste auch dieser natürlich ausgelagert werden, für Linux gibt es eine OpenSource Library. Aber das ist ja auch noch ein eventuell Punkt, ich denke der kann erst ein mal ausgelassen werden. Das alles ist gar nicht böse gemeint, sondern nur Ideen meinerseits. Erstmal Danke für die weiteren Ideen über die ich mir selber noch keine Gedanken gemacht habe.
Hotspott schrieb: > Einzig was mich beunruhigt ist, das ich mich und mein Projekt natürlich > von Linux Abhängig mache, mein Projekt erbt ja quasi alle Bugs und > Sicherheitslücken von Linux, und was mache ich wenn ein Kunde anruft > weil Linux abgeschmiert ist. Ist das ein getarnter Trollversuch?
Bei Deinen Anforderungen würde ich mindestens mit einem "Raspberry Pi 2 mit Quad-Core ARM Cortex A7, 1 GB RAM" starten, mid Display und Gesichtserkennung kommst mit dem 8 Bit AVR nirgens hin. (auch nicht für ernsthafte Ethernet-Anwendungen) Für was soll der AVR dann noch gut sein, wenn Du eh alles auslagern musst? Kannst ihn höchstens noch zum ein- und ausschalten der Speisungen und als Tastatur-Interface brauchen.
Hotspott schrieb: > Ich beschreibe mal die Anforderungen: > - Großes (>=24 Zoll) Display > - Internet Anbindung (Datenabfrage) > - Tasten, Sensoren > - evtl. Kamera für Geschichtserkennung > - evtl. Datenbank auf dem System gespeichert und Hotspott schrieb: > Die meisten werden sich jetzt denken bis zu den "evtl." Punkten reicht > ein normaler ATmega, natürlich der Meinung bin ich auch. Ah ja. Erinnert mich an's Krümelmonster: Willst du jetzt nun alle Schätze der Welt oder nen Keks?... "KEKS!" Und nochwas: Ein großer Bildschirm ist nicht alles, man sollte ihn auch füllen können und da erhebt sich erstens die Frage "wer?" und zweitens "wie?". Einen ATmega kanst du für sowas knicken und für ein Linux und dessen relative Lahmarschigkeit in grafischen Sachen brauchst du eher eine MALI Gpu und den doppelten Systemtakt im Vergleich zu einem System mit nem WinCe. Naja, ob nun Tauben füttern im Park oder Trolle füttern im Forum, kommt wohl auf's Gleiche raus. W.S.
Ich denke nicht, das es unmöglich ist das Projekt auf AVR Basis zu basteln. Der ATmega würde natürlich nur die Datenströme der ausgelagerten Chips steuern. Per VGA kann auch relativ einfach ein Display angesprochen werden, da ich keine Videos abspielen muss, sondern nur ab und zu mal ein paar Pixel änder, hauptsächlich Schrift, kann auch ein kleiner zweiter ATmega mit 20Mhz herhalten. Die Gesichtserkennung wird auf der Basis sehr wahrscheinlich nicht möglich sein, das ist mir klar. Der Internetdatenstrom ist auch kein Problem mit einem ENC28J60, es werden nur ein paar mal am Tag ein paar HTML Requests los geschickt. Die Response steigt dabei nicht über ein parr kb. Ich versteh nicht wieso das ein getarnter Trollversuch sein soll, finde ich schade das man das so sieht. Sollte wohl mal lieber wieder auf hören im Internet nach Rat zu suchen.
Anders gefragt: Was für einen Vorteil bietet dir eine Lösung aus AVR+AVR+ENC+XXX? Zum halben Preis kriegst du einen ARM, der all das ersetzt, und ebenfalls mit dem GCC programmiert werden kann, aber viel viel mehr Reserven hat. Muss ja nicht gleich ein Quad-Core mit Linux drauf sein.
Hotspott schrieb: > Per VGA kann auch relativ einfach ein > Display angesprochen werden Aber nur für kleine Auflösungen! (VGA-Auflösung 640x480 oder noch kleiner) Ein 24 Zoll Display steuert man sinnvollerweise mit seiner nativen Auflösung an (in dem Fall wahrscheinlich Full HD oder größer). Das kann der ATMega nicht!
>Ich versteh nicht wieso das ein getarnter Trollversuch sein soll,
Hotspott?
Endweder Rechtschreibschwäche und kein Trollversuch oder keine
Rechtschreinschwäche, aber dann ist es garantiert ein Trollversuch.
Keiner der eine ernsthafte Antwort erwartet wird das Wort Spott in
seinen Namen einfügen.
Seit wann müssen denn Benutzernamen der deutschen oder hier englischen Rechtschreibung entsprechen. Hotspott ist ein Synonym das ich schon lange im Internet benutze. Über das Spott werde ich mir allerdings jetzt erst klar. Das ist natürlich blöd. Wie dem auch sei, ich denke ich werde dann doch auf ARM bzw. Embedded setzen. Das war von Anfang an auch meine Wahl, dachte nur nach dem ich den anderen Beitrag gelesen habe, das vlt doch mehr für AVR spricht.
AVRs halte ich auch für zu schwachbrüstig für die geforderten Leistungen. Es muss aber nicht immer Linux sein. Wir setzen bspw. NuttX als RTOS ein. Das hat alles an Bord, was man benötigt, ist POSIX-konform, bleibt aber trotzdem sehr schlank und steht unter einer BSD-Lizenz! Je nach geforderter Bildschirmauflösung könntest Du mit einem STM32F429 und dessen internem LTDC auskommen. Vielleicht schaust Du Dir das mal an: www.nuttx.org
Hallo Chris D. Kennst du ein gutes Tutorial zum Nuttx? Vor allem die POSIX konformität gefällt mir, doch ist ein Einstieg bisweilen noch schwierig. Oder muss man sich nunmal durch die READMEs durchhangeln?
operator schrieb: > Hallo Chris D. > Kennst du ein gutes Tutorial zum Nuttx? Vor allem die POSIX konformität > gefällt mir, doch ist ein Einstieg bisweilen noch schwierig. Oder muss > man sich nunmal durch die READMEs durchhangeln? Leider gibt es kein wirkliches Tutorial dazu - allerdings sind die Beispiele reichhaltig und gut dokumentiert (unter apps/examples). Gregory ist übrigens sehr hilfsbereit und übernimmt bspw. auch das Einpflegen neuer Boards in den Baum, wenn man ihm ein Muster schickt. Ansonsten ist der Aufwand bis zur ersten NuttShell, über die man dann auf dem System arbeiten kann, überschaubar: man wählt das passende Board aus (bspw. ein STM32F4 Discovery) mit den gewünschten Optionen aus (das geht zum Beispiel über menuconfig ähnlich wie beim Linux-Kernel) und compiliert. Dann noch rüberschieben und schon meldet sich die Shell im Terminal :-) Schön ist an NuttX auch, dass man es auch direkt für einen Linux-PC compilieren kann und über ein X11-Fenster die Grafikausgabe sieht. Das gestattet (bis auf die Echtzeitgeschichten natürlich) zumindest die Entwicklung der kompletten grafischen Oberfläche direkt auf dem PC ganz ohne Zielsystem. Die Maus emuliert dann quasi den Touchscreen etc. P.S.: Vielleicht für andere: NuttX läuft auch recht gut auf AVRs.
:
Bearbeitet durch Moderator
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.