mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Passende Hardware für Projekt gesucht (lang)


Autor: Frank B. (frank501)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

für ein neues Langzeitprojet, für welches ich mit Einarbeitungszeit etwa 
1 bis 2 Jahre geplant habe, suche ich passende Hardware und Toolchain.

Es geht um folgendes:
Mittels einer Tastatur sollen auf einem batteriebetriebenem Gerät Daten 
eingegeben werden und diese als CSV Datei gespeichert werden.
Die Daten bestehen aus einer Nummer, welche sich bei jeder Eingabe ohne 
Muster ändert. Dann kommen mehrere Abschnitte mit teilweise 
veränderlichen Daten, die aber auch bei jeder Eingabe abweichen können, 
dies aber nicht müssen.
Im Großen und Ganzen sind es die Nummer und eine Bezeichnung die sich in 
jedem Datensatz ändern.
Mittels einer Tastatur sollen die Nummer und die Datenfelder eingegeben 
werden.
Die Bezeichnung, als zweites sich jedes mal änderndes Datenfeld, soll so 
eingegeben werden können daß beim Eingeben jedes Buchstabens ein zur 
bisherigen Eingabe passender Eintrag aus einer Liste angezeigt wird bis 
entweder keiner mehr passt oder der richtige angezeigt wird und die 
Eingabe bestätigt wird.
Die Liste soll bei einer bisher unbekannten Eingabe um den eingegebenen 
Text erweitert werden.
(Hoffe, ich habe mich bei diesem Punkt verständlich genug ausgedrückt.)

Die Maße des Ganzen Gerätes sollen (in etwa) wie folgt aussehen:
Breite : 200mm
Höhe   : 100mm
Tiefe  : 50mm

Darin untergebracht sein sollen ein Mikocontroller oder etwas 
vergleichbares, eine Tastatur, ein Display (entweder HD44780kompatibel 
4*20 oder vollgrafisch mit etwa der selben Größe), Eine Batterie oder 
ein Akku der etwa 8 Stunden halten muß, eine SD-Karte oder ein 
USB-Stick.

Ich suche also:
1. Einen Mikrocontroller oder ein Embedded System mit dem ich die oben 
genannten Vorgänge realisieren kann.
2. Eine Tastatur mit schreibmaschinenähnlichem Layout.
3. Die zu dem Controller oder Embedded System passende Toolchain.


Bisher habe ich nur Erfahrung mit der Programmierung von AVR-Controllern 
(Tinys und Megas) bin aber bereit und sicherlich auch in der Lage mich 
in andere Systeme einzuarbeiten.

Wäre vielleicht ein Propeller von Parallax geeignet (Habe noch zwei 
davon hier herum liegen) oder reicht auch ein AVR-Mega?
Der Controller müsste ein FAT-Dateisystem auf einer SD-Karte oder einem 
USB-Stick beschreiben können, ein Display ansteuern und Eingaben von der 
Tastatur entgegen nehmen.

Frank

Autor: Hans Mayer (hansilein)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das einzig schwierige ist die Echtzeitsuche nach bekannten Bezeichnern,
mit der passenden Datenstruktur (Treeset) ist das kein Problem, aber man 
braucht relativ viel Speicher.
Wieviele Bezeichner wird es denn ca. geben?
Man kann den Baum sicher auch auf der SD Karte aufbauen, dann ist es 
eben schwieriger ihn zu updaten aber das sollte zu schaffen sein.
Dann reicht ein ATMega.

Autor: Frank B. (frank501)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hans Mayer schrieb:
> Wieviele Bezeichner wird es denn ca. geben?

Ich rechne mit etwa 300 bis 400 Bezeichnungen mit Längen von 4 bis 30 
Zeichen.


Hans Mayer schrieb:
> Dann reicht ein ATMega.

Der Mega müsste die Tastatur abfragen, gleichzeitig dasDisplay ansteuern 
und die Liste durchsuchen. Ich weiß nicht, ob da die Rechenleistung des 
8bitters ausreicht. Deshalb meine Idee,den Propeller zu verwenden.

Frank

Autor: someone (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
cortex m3. reicht völlig. pi mal daumen.

Autor: Hans Mayer (hansilein)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
den propeller zu programmieren ist viel schwieriger, eben wegen dem 
parallelen.
In Deinem Fall gibt es aber keine parallelität.
Du wartest auf den nächsten Buchstaben, zeigst ihn an, suchst ob du was 
passendes findest, zeigst das an.
atmegas mit soviel Arbeitsspeicher scheint es nicht zu geben, also 
entweder Du bastelst einen schlauen Algorithmus oder Du wechselst auf 
etwas größeres.
Beispielsweise:
http://de.farnell.com/jsp/displayProduct.jsp?sku=1...
Display ist schon dran

Autor: Hans Mayer (hansilein)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: wt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
für die Aufgabe würde sich Luminary von TI sich anbieten, wenn man USB 
Stick als Speichermedium nutzen möchte. Die entsprechenden Bibs sind von 
TI für den Einstieg brauchbar. Die Boards dagegen sind wirklich nur zur 
Evaluierung brauchbar, ein robustes Produkt für dauerhafte Benutzung ist 
was anderes.

Wenn Du dich auf SD Karte besinnst und lediglich Tastatur einlesen 
möchtest, dann reicht xmega völlig aus. Mit AVR scheinst Du familiär zu 
sein, also dürfte dies die erste Wahl für Dich sein.

Robuste und ausbaufähige HW dafür gibt's hier: 
http://www.megahod.de/html/basis_board.html

Autor: Wegstaben Verbuchsler (wegstabenverbuchsler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nimm dir irgendein aktueles Smartphone, und pack da eine APP drauf, die 
das macht was du brauchst. Die Erfassung der DAten kann doch vermutlich 
auch locker mittels "Touch" Tastatur erfolgen?

Bezüglich Laufzeit und Zuverlässigkeit der Hardware sparst du dir damit 
unendlich viel Entwicklungsaufwand (Zeit und Geld)

Autor: Hans Mayer (hansilein)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein xmega bringt da nix, hat nicht mehr ram als die atmegas.
Das mit dem Smartphone/Tablet würd ich mir echt überlegen, das Projekt 
wird dadurch drastisch einfacher und im Endergebnis besser.

Autor: Fabian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nimm ein iPod

Autor: Klaus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klingt nach einem Smartphone App

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Frank B. schrieb:
> Ich rechne mit etwa 300 bis 400 Bezeichnungen mit Längen von 4 bis 30
> Zeichen.

400 * 30 = 12kB

Hans Mayer schrieb:
> atmegas mit soviel Arbeitsspeicher scheint es nicht zu geben

Der ATmega1284 hat 16kB, das reicht bequem.

Von der Rechenzeit sehe ich keinerlei Anforderungen, der ATmega1284 kann 
ruhig mit den default 1MHz laufen.


Peter

Autor: Tobi W. (todward)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter Dannegger schrieb:
> Der ATmega1284 hat 16kB, das reicht bequem.
>
> Von der Rechenzeit sehe ich keinerlei Anforderungen, der ATmega1284 kann
> ruhig mit den default 1MHz laufen.

Würde sagen das kommt auf das Display an. Bei einem Textdisplay mit 
Standartcontroller sollte das reichen. Will er aber ein GLCD nehmen und 
daas dann höchstwahrscheinlich keinen hat, wird es mit den RAM schon 
eng...
12kB Datensätze + Bild für GLCD + FAT-Stack....
Das wird mit 4kB aber eng ;)

Als kleines GLCD würde sich z.B. das Display aus dem Nokia3310 oder aus 
so einem alten Siemens Klotz

Was mir da noch einfällt:
Hier im Forum gibt es einen aktuellen Thread über einen Selbstbau 
Handheld... das könntest du als basis verwenden. Ein OS dafür ist schon 
in arbeit :)

Gruß
Tobi

Autor: Charly B. (charly)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tobi W. schrieb:
> 12kB Datensätze + Bild für GLCD + FAT-Stack....
> Das wird mit 4kB aber eng ;)

dann nimmste den M128 der kann 64k external Ram,
event. ein Goldcap dran und 'gut iss' ;)

vlG
Charly

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tobi W. schrieb:
> 12kB Datensätze + Bild für GLCD + FAT-Stack....
> Das wird mit 4kB aber eng ;)

Ich hatte aber was von "HD44780kompatibel 4*20" gelesen.

Und das FAT32-, USB-Geraffel kann man outsourcen:

http://de.mouser.com/ProductDetail/FTDI/VDRIVE2/?q...


Peter

Autor: Hans Mayer (hansilein)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
sorry, dachte 8kB wäre das maximum.

Tja, Frank, was magst Du lieber?
algoritmen basteln -> kleinen atmega
einfaches avr programmieren -> großen atmega
tolles endergebnis -> so ein tablet
neue architektur -> cortex m3

sd-karten lassen sich leicht ansprechen, viel leichter als usb-sticks

Autor: Frank B. (frank501)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hans Mayer schrieb:
> den propeller zu programmieren ist viel schwieriger, eben wegen dem
> parallelen.

Das wäre nicht das große Problem, da ich mich in den Propeller sowieso 
mal einarbeiten wollte.


Hans Mayer schrieb:
> Oder nimm doch sowas:
> http://www.alternate.de/html/product/Handheld/Crea...

Wegstaben Verbuchsler schrieb:
> nimm dir irgendein aktueles Smartphone, und pack da eine APP drauf, die
> das macht was du brauchst. Die Erfassung der DAten kann doch vermutlich
> auch locker mittels "Touch" Tastatur erfolgen?

Genau sowas wollte ich anfangs auch verwenden, bin dann aber auf Grund 
der Umgebungsbedingungen im Ausseneinsatz und damit verbundenen 
möglichen mechanischen Belastungen (es kann durchaus sein, daß ich da 
was drauf ablege oder mal kleinere Teile drauf fallen) wieder von 
abgekommen.


Peter Dannegger schrieb:
> Ich hatte aber was von "HD44780kompatibel 4*20" gelesen.

Das war eine der beiden Alternativen. Die andere war ein GLCD in 
vergleichbarer Größe.



Ich werde mich mal mit dem LM3S1968 - KIT beschäftigen und auch die 
anderen in den Links aufgezeigten Teile genauer anschauen.
Was mir jetzt noch fehlt ist eine Tastatur. Die möchte ich auf keinen 
Fall selber bauen müssen. Ich weiß, das es für ältere Palms und 
Handhelds keline Tastaturen gibt, die in etwa die passende Größe hätten, 
mir aber nicht robust genug erscheinen.



Hans Mayer schrieb:
> Tja, Frank, was magst Du lieber?
> algoritmen basteln -> kleinen atmega
> einfaches avr programmieren -> großen atmega
> tolles endergebnis -> so ein tablet
> neue architektur -> cortex m3

Eine gute Frage. Da ich sowieso einiges an Einarbeitungszeit eingeplant 
habe und das Ganze nicht sonderlich drängelt bin ich für viele 
Alternativen offen.
Selbst die Idee mehrere ATMegas zu verwenden habe ich noch nicht 
komplett verworfen ;-)

Frank

Autor: Wolfram (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Frank B. schrieb:
> Mittels einer Tastatur sollen auf einem batteriebetriebenem Gerät Daten
> eingegeben werden und diese als CSV Datei gespeichert werden.
Hallo Frank, also ich hab das auf meinem Samsung Galaxy S2 als Android 
APP programmiert. Dient als Fahrenbuchersatz.
Sollte bei Dir eigentlich auch recht einfach sein. Dann benötigst Du 
KEINE speziele Hardware, nur ein 1Euro Smartphone.
vg Wolfram

Autor: Bernd N (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Frank,

CM3 wurde ja schon genannt, wie wärs mit dem Spielzeug hier ?

http://www.steitec.net/ARM-Boards/ARM-LPC1768-Cort...

Oder für den Einstieg:

http://ics.nxp.com/lpcxpresso/

Da du dich eh mit dem Gedanken beschäftigst dich in ein neues Thema 
einzuarbeiten.

Autor: MagIO (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was Du da beschreibst ist kein Problem für den Propeller, also nimm den.
Ne einfachere Toolchain wirst Du nicht finden.

Dass die Parallelität im Propeller schwierig zu handhaben ist, kann nur 
von jemandem kommen, der sich damit nicht im geringsten auskennt!

HD44780 -> kein Problem - mindestens 5 Objekte dafür im ObEx vorhanden
VGA -> kein Problem (damit lassen sich auch manche grafische LCDs 
betreiben)
TV -> kein Problem
Tastatur -> kein Problem
SD -> dito

RAM brauchst Du für diese Anwendung nicht! Der Zugriff auf die SD-Karte 
ist schnell genug um da eine Wort-Listen-Datenstruktur abzulegen und 
abzufragen.
Es gibt eine Erweiterung für nen SD-Karten-Treiber von mir, mit der man 
1 File (das zum schreiben) geöffnet halten kann und man kann auf 1-4 
weitere Files per byte Addressen zugreifen (quasi wie bei einem RAM).

Und die Hilfe im Propeller-Forum exzellent! Kannst Du Englisch? 
Ansonsten kann ich Dir auch gerne hier helfen.

Autor: MagIO (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
PS: Übrigens würde ich für diese Projekt eher 1-2 Wochen ansetzen - mit 
Einarbeitung versteht sich ;o)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.