Forum: Mikrocontroller und Digitale Elektronik Schnell (!) Mikrocontroller-Programmiern lernen


von Florian Kunkel (Gast)


Lesenswert?

Tach allerseits,

Wir, ein erfolgreiches Jugend-Forscht-Team mit 2 erfahrenen
C++/VB-Programmierern, benötigen für unser 2005er-JuFo-Projekt
Motorsteuerung (ca. 5 Motoren) via PC, soviel wir mitbekommen haben
geht dies am besten über Mikrocontroller. In deren Programmierung haben
wir noch keine Erfahrung, diese wollen wir uns allerdings jetzt bis ca.
Oktober/November speziell auf Ansterung von Motoren ausgelegt aneignen.
Ich bitte euch um einige Vorschläge, mit welchen Materialien
(Bücher/Hardware) dies am besten zu realisieren ist. Macht euch bitte
keine Gedanken darüber ob die Zeit nicht zu kurz gefasst ist, damit
setzen wir uns dann auseinander.
Geldmittel sind in unbegrenztem Ausmaß vorhanden, daran soll nichts
scheiten.

von Matthias (Gast)


Lesenswert?

Hi

Über was steuerbar? RS232? USB? Parport?
Was steuerbar? Gleichstrommotor? Schrittmotor? 3-Phasen-AC-Motor?
Wie steuerbar? An/Aus? Drehzahl-Stellung? Regelung?
Drehrichtungsumkehr?

Mehr Input dann mehr Output!


Matthias

von Florian Kunkel (Gast)


Lesenswert?

OK sorry hat ich vergessen anzugeben ;) Gleichstrom-Motor, Schnittstelle
egal, An/aus (eventuell Sensorgesteuert), Drehrichtung umkehrbar :)

von Michael (Gast)


Lesenswert?

Geldmittel sind in unbegrenztem Ausmaß vorhanden, daran soll nichts
scheiten.

Das hört man doch gerne. Wohin soll ich liefern ?

von Matthias (Gast)


Lesenswert?

Hi

Empfehlung meinerseits:
ATMega8 (oder 16) + MAX232 (der Einfachheit halber auf einem fertigen
Board wie etwa
http://shop.mikrocontroller.net/csc_article_details.php?nPos=0&saArticle[ID]=29&VID=fDBIrAJeekZD4jEA&saSearch[word]=&saSearch[category]=AVR&saSearch[special]=
)

und eine Motorbrücke. Um da eine empfehlen zu können würde ich noch den
max. Strom der Motoren brauchen.


Matthias

von Florian Kunkel (Gast)


Lesenswert?

Ok thx schonmal das sieht gut aus, die genauen Motorspezifikationen kann
ich dir noch nich sagen, da sich das ganze noch in der Denkphase
befindet, und was das Projekt genau is darf ich auch noch nicht
preisgeben, sowas wird bei uns von oben als Staatsgeheimnis betrachtet
;) Wenn jetzt also das Material schonmal steht dann brauch ich "nur"
noch Bücher etc. damit wir damit auch was anfangen können -
diesbezüglich Tipps?

von Pascal (Gast)


Lesenswert?

Guck dir doch einfach das Tutorial auf dieser Seite an.
I/O-Grundlagen und UART, mehr brauchst du doch garnicht.

von Peter D. (peda)


Lesenswert?

STK500 + ATMEGA16 kaufen, WINAVR runterladen und losmachen.

Ich weiß jetzt nicht ob man als VisulaC++ Programmierer auch C lernen
kann.


Erstmal LEDs blinken lassen, Tasten abfragen, UART.

Dann statt LEDs über Power-MOSFETs die Motoren treiben.


Peter

P.S.: Datenblatt runterladen und ausdrucken nicht vergessen !

von Jörg Wunsch (Gast)


Lesenswert?

Wenn Geld sowieso keine Rolle spielt, dann auf jeden Fall mit
mindestens ATmega16 anfangen und auch gleich noch ein JTAG ICE mit
einplanen.  Das erleichtert das Debuggen ungemein.  Nachdem die
Algorithmen stehen, kann man dann allemal noch für die endgültige
Version auf einen ATmega8 runterskalieren.

von Stefan Kleinwort (Gast)


Lesenswert?

Wenn Geld nicht das entscheidende Problem ist, dann nimm einen Chip mit
"in-circuit-debug", z.B. den mega16 - mega128 über das "JTAG ICE
mk2" (es gibt auch günstige, halblegale Nachbauten davon). Natürlich
gehen auch mc von anderen Firmen, wichtig finde ich eine vernünftige
Debug-Möglichkeit.

Stefan

von Ingo Henze (Gast)


Lesenswert?

"Datenblatt runterladen und ausdrucken..."
Das klingt immer so, als wären das nur ein paar Seiten (ein Blatt halt
:-)
Für den Mega162 z.B. sind es immerhin gut über 300, ist schon 'ne
Menge Papier.
Aber da ich ein papiernes Handbuch auch in vielen Fällen angenehmer
finde, hab ich es mir mit der Funktion "Broschürendruck" meines
Druckers auf dann nur ca. 75 A4-Blätter gedruckt (Duplex und 2 Seiten
je Seite), da ist das dann schon etwas handlicher.

Gruß
Ingo

von Florian Kunkel (Gast)


Lesenswert?

Ok danke soweit schonmal allerseits, werd mir eure Tipps zu Herzen
nehmen. Allerdings bin ich weiter noch auf der Suche nach Literatur....

von Florian Kunkel (Gast)


Lesenswert?

Btw auch 300+ Seiten ausdrucken stellt kein Problem dar, bitte ALLES
posten was ihr denkt, dass uns helfen könnte, auch wenn es für
Ottonormalprivatprogrammierer Unsinn ist, wie gesagt, Geld spielt keine
allzu große Rolle ;)

von Matthias (Gast)


Lesenswert?

Hi

@Stefan Kleinwort
Wo gibts den Nachbauten des JTAG ICE mk2? Das stell ich mir
schwieriger vor als das man es mal schnell an einen Nachmittag macht.


Matthias

von Steffen (Gast)


Lesenswert?

Ihr müsst einen ziemlich großzügigen Sponsor haben, bei meinen 3 letzten
Jufo Projekten war das Geld meist eines der Hauptprobleme
Aber was solls der finazielle Einsatz ist nicht immer gleichzusetzen
mit Spaß und Erflog, Euch viel Erfolg im Jahr 2005 und wer weiß, vll
sieht man sich ja auf einer Wettbewerbsstufe...

von thkais (Gast)


Lesenswert?

Schaut euch doch mal das fischertechnik-Interface an. Mit
Extension-Modul bis zu 8 Motoren (natürlich in der Drehrichtung
umkehrbar), 16 Eingänge. Serielle Schnittstelle (RS-232) und in
eingeschränktem Maße sogar autonom (also ohne PC) einsetzbar.
Allerdings max. 1 A pro Motor, 9V Betriebsspannung (läuft aber auch mit
12V ohne Probleme). Der Vorteil bestünde darin, daß nicht viel gebastelt
werden muß. Ab und an bekommt man diese Interfaces günstig bei ebay (auf
die richtige Version achten, es muß das "Intelligent Interface" sein)
oder beim Hersteller: http://www.fischertechnik.de - wenns am Geld
nicht fehlt....
Evtl. läßt sich auch der Rest der Mechanik mit diesem Baukastensystem
erledigen - es gibt sogar passende Aluminiumprofile, dadurch lassen
sich sehr stabile Konstruktionen aufbauen, wird sogar im
Industriemodellbau zur Simulation ganzer Fertigungsstraßen verwendet.
(Nein, ich bekomme kein Geld für die Werbung ;-))

von Florian Kunkel (Gast)


Lesenswert?

@steffen: Tja, wir ham's dicke ;) Danke, auch dir viel Erfolg,
vielleicht sehen wir uns ja wirklich mal :)

@thkais thx für den Tip, ich meine zwar das hat ein Gruppenmitglied
schonmal angeguckt und für untauglich befunden, aber ich werd mirs
nochmal näher anschaun wenns wirklcih so gut ist eventuell zu Betracht
ziehen

von Tob.F. (Gast)


Lesenswert?

@Florian: Bei welcher Firma macht ihr denn das JuFo-Projekt ? Ich hab da
 so einen Verdacht, dass es eine große schwäbische Firma mit 3
Buchstaben ist ;-) Stimmts, oder hab ich Recht ?

von Florian Kunkel (Gast)


Lesenswert?

Ähhm nein ist es nicht, wir sind auf nem Gymnasium, allerdings auf
einem, das von Zeitungen auch schon als "Mekka der Jungforscher"
bezeichnet wurde und das JuFo als Aushängeschild hat und dafür berühmt
ist :) Welche Firma meinst du denn?

von thkais (Gast)


Lesenswert?

Wenn ich das jetzt alles richtig mitbekommen habe, braucht ihr keine PWM
(also Drehzahlregelung), sondern nur simples ein- und ausschalten.
Dann ginge auch ein simples Interface am Druckerport des PC, da könnt
ihr euch die Einarbeitung in die µC-Materie auch sparen. Es gibt auch
Relaiskarten für den seriellen Port.
Was sprach den genau gegen das fischertechnik-Interface? Evtl. kann ich
das bestätigen / widerlegen.

von Stefan Kleinwort (Gast)


Lesenswert?

@Matthias:
Du hast Recht, das mk2 gibt es nicht als Nachbau. Ich meinte das
"alte" JTAG-ICE. Aber solange Atmel noch keine mega88/168 liefern
kann ... reicht das (leider) auch noch.

Stefan

von iceman (Gast)


Lesenswert?

Ich verstehe nicht so recht wofür Ihr den µC einsetzen wollt?

Wenn das ganze doch sowieso über den PC gesteuert wird, dann bastelt
euch doch einfach ein paar Treiberstufen an den Parallelport, falls die
8 Leitungen nicht ausreichen dann kann man ja auch über Latche gehen.
Auch am Serial-Port wäre das ganze ohne µC möglich. Ihr wollt ja bloß
An/Aus/Drehrichtungsänderung?

Wenn Ihr eh Leute habt die Fit in VB bzw. C++ wozu so kurzfristig
umsteigen?

Nix für ungut :)
iceman

PS: viel Erfolg, ich hoffe Ihr stellt euer Ergebnis dann später mal
hier vor bindochimmasoneugierig :)

von edi.edi (Gast)


Lesenswert?

vorwaerts und rueckwaerts...volle Pulle.?

sie wissen noch nicht was sie wollen...aber sie wollen es
schnell...weil sie(?) beruhmt sind und deshalb grosse sprueche
ausspucken.

das sind nicht die Eigenschaften eines Forschers
...eher die eines ueblen Politikers

Ed

von Henning (Gast)


Lesenswert?

dachte auch eigentlich, bei jufo soll jeder mitmachen können und es soll
eigentlich nicht auf´s geld ankommen. - da währen wir dann wider bei
der chancengleichheit!

MCU ist überdemensioniert, ich würds trotzdem damit lösen. aber alles,
was ihr braucht findet ihr im tutorial.

von jp Soroka (Gast)


Lesenswert?

-----------------------------

Diplomand SOROKA JP
HTW des Saarlandes
06898-692-5831
jp.soroka@web.de
--------------------

Nun möchte ich eine Ladeelektronik für ein Li-Ion 3S3P Batterypack
entwickeln.
Bei meiner Suche habe ich bereits eine interessante Application Note
gefunden :

www.atmel.com/dyn/resources/prod_documents/doc1659.pdf

Nun bin ich momentan mit der ganze Problematik um zu überlegen. Es gibt
ein Controller, der mit hochsprachige Quellcode programmiert ist. Ich
habe bereits das eine oder das andere Programm runtergeladen, aber ich
glaube das nicht alle Dateien datei ware (.c / .h Dateien in C).

Die Frage die ich mir stelle :

1. Gibt es Leute die mir emailmässig helfen können ?
2. Wo kann ich Evaluation Karte kaufen ?

jp.soroka@web.de

-------------------------------------
AOL :    Xcider21
MSN :    seuldepuispeu@hotmail.com
-------------------------------------

von Chaldäer (Gast)


Lesenswert?

@edi.edi:

Oder die einer größeren Firma, welche von einer deadline 'überrascht'
wurden. Als eine Art 'Interimsberater' in vielen Fällen, kann ich
daran nichts wirklich übles finden.

Die Jungs und Mädels wollen sich trotz einer finanziellen
Unabhängigkeit das Wissen aneignen und nicht ein fertiges Projekt
kaufen. Die Gruppe sucht nach einem geeigneten Weg dies zu erreichen
und zielstrebig zu einem Projektabschluss einzusetzen.
Für meine Begriffe ist es volkommen legitim aus den Erfahrungen anderer
zu lernen. ;)
Das, etwas sehr plakativ zur Schau getragene, finanzielle Polster kann
ich dabei als 'jugendliche Forschheit' deklarieren.

Ehrlich geschrieben mache ich es des öfteren auf eine ähnliche Art und
Weise. Ich suche mir einen externen Spezialisten für ein paar Tage oder
besuche einen Kurs oder Workshop. Je nach Qualität des Dozenten hat mir
dies schon die eine oder andere Woche Try-and-error erspart. Rein
wirtschaftlich betrachtet ist so etwas, zumindest für mich, ein Gewinn.
Da sich die Stundensätze normalesweise nichts nehmen, habe ich die
Kosten ein paar Tage später wieder raus.
Aber ich schweife ab...

Ein Wort zur Güte und damit gebe ich Dir Recht: Das sollten nicht die
Worte eines (Jung)forschers sein!


@Florian Kunkel: (Woher kenne ich den Namen bloß?) Ein kleiner Tip am
Rande; etwas mehr Bescheidenheit, sonst könnte ich mich genötigt fühlen
ein Angebot für ein paar Wochen Informations- und Projektmanagement zu
schreiben. ;)


Gruß,
Chaldäer
(Berater aus Leidenschaft)

von Hans (Gast)


Lesenswert?

lass sie doch ;) spätestens wenn ihnen die mechanik (an den anscheindend
über 90W motoren weil 1A und 9V =>unbrauchbar) um die ohren fliegt weil
sie nicht mit dem drehmoment gerechnet haben, werden sie mal an rampe
und pwm denken g

nur 5 unabhängige pwm kanäle sind nicht mal so nebenbei zu
bewerkstelligen... dann soll vielleicht noch unabhängig mit der rampe
herumgespielt werden können und noch drehrichtung umkehrung.... am
gleichstrom...tjo häftig wenn man noch am gym is... allein schon die
benötigte brücke... da dürft ihr einiges an leistung verbraten...weil
so richtig schnelle power mosfets gibts ned... bzw da kommt man ned gut
ran.. und für die brücke bräuchtet ihr schnelle und leistungsfähige
logic level mos fets... dann noch einiges an logic damit das richtig
geht... bzw viel code und viele pins...

da is wieder das prob am uC pwm für 5 kanäle zu basteln... gut man
könnte einen timer hernehmen und software pwm machen nur wirds dann
insofern problematisch weil du da doch einiges an rechnerei hast und
dann soll da noch vielleicht halbwegs schnell kommuniziert werden...

da muss dann ein schönes schnelles protokoll am uart her und am pc muss
das schön effizient gemacht werden...

wenn ihr nur schalten wollt... tjo dann würd ich im einfachsten fall
alles diskret baun... da gibts so schöne schaltungen mit lm555 der
einen analogwert in nen pwm signal umwandelt... dann noch am i2c bus
schöne DACs drann.. ein paar pins für re-li dazu (port expander am i2c)
dann noch ein interface am paralleln hin und fertig ;)

1. weniger aufwand
2. flexibler weil du sicher irgendwas berechnen willst weil 5 motoren..
das is irgendwo in richtung roboter...das geht in den ram und auf die
cpu..beides am uC nicht wirklich viel da...es sei denn man weis wie man
was so implementiert das es 1. performant und 2. das is was man wirklich
braucht... am pc musst dir dadrüber keine gedanken machen und damit wird
die entwicklung schneller...
3. brauchst du nicht viel hardware-> weniger fehleranfällig->besser ;)

gut alles in allem...nimm einen 3 oder 486er... spiel FreeDOS ein und
einen TCP stack dazu...dann noch ne ethernet karte und es gibt so
lustige web-server für Freedos was ich gesehen habe... dann isses übers
web steuerbar und du kannst nach herzenslust herumprogrammieren... kein
böses flashen oder was auch immer weil TCP und gut...
oder noch eine möglihckeit... 486er + linux... aber bitte keine suse
sonder ne debian oder was neues mit 2.6er kernel... ka obs schon ne
neuere debian als woody gibt..der hat noch 2.4.irgendwas aber geht auch
gut...

da spielst dann gemütlich per ssh alles drauf und kannst das so auch
steuern...
programmiert wird dann in c++,perl oder python...

so jetzt hab ich alle genug verwirrt und vom uC abbringen wolln... aber
es ist so..für 5 motoren würd ich nie einen uC einsetzen... das bringt
nix... da bastl ich das am parallelen drauf und mach per I2C,DAC und
ein paar 555er  die ganze steuerung...klar unter winNT,2k,xp is dann
nix...aber für steueranwendungen die echtzeit laufen solln isses nicht
konzipiert...linux eigentlich auch ned ...aber ECos z.b das eigentlich
linux ist und wo man nicht viel portieren muss ist das.. und linux ist
hier auch zu bevorzugen...das würde sich locker auf 64MB CF ausgehen..
da fällt mir ein...es gäbe da so Industrial PCs... www.advantech.de ;)
wenn geld keine rolle spielt G
kompletter pc... alles drauf.. sogar sound,vga,usb,ethernet,....

nur das wäre in meinen augen overkill...

so viel spass noch beim bastln

73 de oe6jwf / hans

von Peter D. (peda)


Lesenswert?

@Hans,

Du hast Dich noch nie richtig mit PWM beschäftigt, stimmts ?

Denn sonst wüßtest Du ja bereits, daß man mit dem AVR ganz easy eine
8-Kanal PWM programmieren kann, z.B.:

http://www.mino-elektronik.de/soft-pwm/pwm_software.htm


Man sollte doch auch etwas ökologische Bewußtsein zeigen und nicht
immer gleich viele Watts in völlig überdimensionierten Monsterrechnern
nutzlos verheizen.


@Florian,

vom LPT-Port rate ich ab, da gibts immer Ärger.
Einfach über die UART des AVR kommunizieren, klappt immer.
Und bei PCs ohne COM, einfach einen USB->COM Adapter zwischen schalten,
fertig.


Peter

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.