- 3D-Druck Einstieg und Tipps         
Ergebnis 1 bis 10 von 27

Thema: Noob will in Microcontrollerprogrammierung + Roboterbau einsteigen - Anfängerfragen

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    15.04.2014
    Beiträge
    27

    Noob will in Microcontrollerprogrammierung + Roboterbau einsteigen - Anfängerfragen

    Hallo zusammen,

    die Überschrift sagt es ja schon grob aus.
    Auf dem Gebiet Micrcontroller-Programmierung bin ich völlig neu. Habe in der Schule und im Studium aber schon etwas Erfahrung mit Informatik/Programmieren machen dürfen (Borland Delphi, C#, u.A.). Jedoch ist da mein Wissen im Laufe der Zeit überwiegend verflogen, so dass ich fast bei Null anfange (ich weiß noch, wie Schleifen und Bedingungen aussehen und kenne grob die wichtigsten Datentypen wie Integer, Float, Double, String, Bool). Aber von jetzt auf gleich ein einfaches, kleines Programm schreiben könnte ich mit meinem aktuellen Wissen wohl nicht mehr ohne weiteres.

    Jedenfalls möchte ich nun gerne Microcontroller programmieren können und in dem Zusammenhang im Laufe der Zeit evtl. auch verschiedene Programmiersprachen erlernen und nutzen. Langfristig würde ich eben gerne nicht nur LEDs blinken, Lichtschranken und Tongeber ansteuern können, sondern auch Sensoren, die etwas bewegen, z.B. Roboter, die sich mit Ultraschall orientieren und Hindernissen ausweichen, oder welche die Dinge auf dem Boden vor sich erkennen und aufsammeln etc. - mein kleiner Traum wäre, (irgendwann einmal) einen Autopilot für ein RC-Modellflugzeug zu bauen (ist allerdings fraglich, inwiefern und in welcher Zeit das möglich ist...).
    Es soll ein langfristiges Hobby werden (das mir evtl. auch im Beruf nützlich sein könnte), daher möchte ich nichts vorgekauertes haben wie Bausätze, die ich nach Anleitung zusammenlöte ohne zu wissen, welche Aufgabe was für ein Bauteil oder eine bestimmte Schleife des Schaltkreises übernimmt. Vor allem möchte ich es jetzt von Grund auf, bis ins Detail lernen, also nachhaltig. Zudem möchte ich nach Möglichkeit ausschließlich frei verfügbare (lizenzfreie) Software nutzen.

    Frage ist nun: WAS BRAUCHE ICH WIRKLICH FÜR DEN ANFANG? (allgemein)
    Meine Antwort, basierend auf dem, was ich bisher gefunden habe:

    - Hardware:
    Controllerboard + weitere Bauelemente für den gewünschten Schaltkres (ggf. Kompaktbausatz), des Weiteren Verbindungskabel (PC-Schaltkreis) (ISP oder USB, je nach Schaltkreis und Bausatz) Meine Frage: Was ist der Unterschied, ob ich jetzt ISP oder USB nehme? Hat eines von beiden irgendwelche Vorteile? Oder kommt es einfach darauf an, was in dem jeweiligen Bausatz ist, bzw. welchen Anschluss ich auf die Platine setze? Ist das "Controllerboard" bei den Bausätzen schon zusammengesetzt? eigtl doch auch nciht, oder?

    - Software:
    Betriebssystem: Habe aktuell Windows 7, werde aber zum einen fürs Programmieren und zum anderen auch aus eigenem Interesse eine weitere Partition mit Linux einrichten. Frage: Welche Distribution? Meine Favoriten für die engere Auswahl sind bisher: Slackware, Ubuntu oder Debian.
    Programmiersoftware: nach Möglichkeit eine lizenzfreie, vollwertige frei verfügbare Software, z.B. Visual C++ 2010 Express, Python, Assembler, LunaAVR etc.
    Compiler: Wenn ich es richtig verstanden habe, eine PC-Software, die den erstellten Quelltext in Maschinensprache übersetzt.
    Nach meinen Recherchen wird der aber nicht immer benötigt, manche Programmiersprachen kommen wohl ohne Compiler-Software aus, richtig oder falsch verstanden?

    Mein Plan, wie ich anfange: Controllerboard und ISP-Kabel nach dem RN-Tutorial zusammenbasteln und programmieren:
    http://www.rn-wissen.de/index.php/AV...einem_ATMega32
    http://www.rn-wissen.de/index.php/AV...ogrammierkabel
    Was meint ihr? Gut für den Einstieg oder andere Ideen?
    Die Frage ist ob das sinvoll ist, wenn man ein ähnliches Controllerboard auch in einem Baukasten selbst zusammenbasteln muss (ist doch so oder?). Dann hat man ja mehr davon und kann direkt weiter den Roboter drumherum bauen und ist länger beschäftigt... ?

    danach überlege ich, wie es weitergehen könnte, wenn ich den Tutorial durch hab:
    - Nibobee von Nicai zusammenbauen und programmieren (allerdings: kommerzielle Software erforderlich von Nicai und stumpfes zusammenbasteln der Steuerung ohne hinterfragen zu können, was welches Bauteil für eine Aufgabe erfüllt...)
    - das hier: http://halvar.at/elektronik/mikrocon..._wie_anfangen/
    ist allerdings auch wieder nur ein Bausatz, bei dem sich nix bewegt und keine Aktoren oder Stellmotoren angesteuert werden (ich möchte auch Action sehen, wenn ich etwas erfolgreich programmiert hab - deswegen bin ich ja in diesem Forum und nicht in irgendeinem Elektronikforum^^)
    - weitere Ideen/Empfehlungen?

    So das war nun ausführlich genug über mich und meine Hoffnungen/Erwartungen an mein neues Hobby. jetzt freue ich mich auf ein freundschaftliches Miteinander hier im Forum und auf Tipps, Hilfestellungen, Berichtigungen (wenn ich etwas falsch verstanden und dargestellt habe) eurerseits.
    Sry für die vielen, für erfahrene Bastler vielleicht "dummen" Fragen, aber ich weiß halt wirklich nicht, wie ich sinnvoll und effizient (d.h. mit starkem Lerneffekt) anfangen soll und hätte gern etwas Bestätigung, bevor ich Geld für etwas rausschmeiße, was ich nach nem Tag durchgearbeitet hab und dann nutzlos, d.h. nicht mehr interessant ist, weil es daran nichts neues mehr zu entdecken/lernen gibt.

  2. #2
    Moderator Robotik Einstein Avatar von HannoHupmann
    Registriert seit
    19.11.2005
    Ort
    München
    Alter
    41
    Beiträge
    4.534
    Blog-Einträge
    1
    Für die Programmierung gibt es Tutorials und jeder fängt mit einer blinkenden LED an. Das ist der klassische Einstieg und jeder der hier Roboter programmiert hat klein angefangen ohne Sensoren, Tongeber, Motoren und Co. Daher ist der beste Tipp für den Anfang: Kleine Brote backen!

    ISP ist die Schnittstelle am Controller, USB die am PC. Dazwischen kommt ein Programmieradapter den es in verschiedenen Ausführungen gibt. Siehe auch unsere RN-Wiki

    Betriebssystem hat damit gar nix zu tun, wer noch nie mit Linux gearbeitet hat, kann sie da sehr lange mit beschäftigen bis irgendwas läuft. Grundsätzlich kann man Controller über Windows oder Linux programmieren, was einem besser liegt.

    AVR bietet für die hauseigenen µC eine eigene Entwicklungsumgebung an, die ist kostenlos und kann in C programmieren. Ansonsten hilft auch hier wieder RN-Wiki

    FALSCH: Jede Programmiersprache braucht einen Compiler für die Umsetzung des Codes für den µC. Doch bei vielen Entwicklungsumgebungen ist dieser Compiler bereits integriert, so dass man sich nicht darum kümmern muss.

    Mega32 ist ein guter Einstiegskontroller das Kabel ist eher ungeeignet, da es keine USB Schnittstelle auf der Rechnerseite hat. Es gibt besseres. Abgesehen davon empfehle ich Einsteigern nur an einem Ende zu basteln, ansonsten kann man schlecht herausfinden wo der Fehler liegt. D.h. ein gekaufter Programmieradapter funktioniert wenigstens und wenn der µC nicht reagiert, dann liegt's am Aufbau dort.

    Der Anfänger kauft ein fertiges Board und baut seinen Roboter drum herum (RN-Shop), der Profi kauft die Teile, entwickelt sein eigenes Board angepasst an den Roboter drum herum.

    Asuro ist der klassische Anfängerroboter, Nibobee tuts sicher auch. Abgesehen davon kann man auch bei Asuro und Nibobee nicht einfach nur zusammen bauen, sondern sich überlegen wozu welches Bauteil dient und was das für Schaltungen sind. Dazu sucht man sich die Datenblätter der Chips und versucht das ganze zu "verstehen"!

    Die Fragen sind natürlich klassische Anfängerfragen und ich kann dir daher nur empfehlen viel zu lesen. Gerade in diesem Hobby bekommt man nur sehr wenig "vorgekaut" (auch wenn die Anzahl der Tutorials unendlich ist) verstehen muss man es selbst. Hier im Forum sind fast alle Roboter von Usern gebaut worden, die so wie du: keine Ahnung hatten. Ich fange regelmäßig Projekte an wo ich Dinge mache, die ich noch nie gemacht habe, von denen ich keine Ahnung habe und keinen Schimmer wie das gehen könnte :-D. Das macht den Reiz aus. Dazu gehört dann, dass man sich ggf. stundenlang(!) in ein I2C Protokoll vertieft, nur um ein paar LEDs farbig leuchten zu lassen oder einen Kompass-Sensor auszulesen. Dieses Hobby erfordert (wie alle Hobbys) einen großes Maß an Eigenarbeit, die nicht immer Spass macht - ich komme regelmässig an den Punkt wo ich frustriert alles aufgeben will.

    Ansonsten gilt: Einfach machen! Am Ende hat bisher alles irgendwie funktioniert

  3. #3
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    14.11.2013
    Ort
    Home
    Beiträge
    213
    Hallo HannoHpmann,

    dein Kommentar ist einfach Klasse geschrieben. Wollte auch schon ein verfassen, ist nun überflüssig.
    Hänge mal ein Bild in Anhang, wie ich angefangen habe, um mich auf eine bestimmte Variante festzulegen. Wollte ja völlig unabhängig von Controller fertige Hardware sowie Software sein. Einfach erst mal Erfahrungen für Einstieg sammeln.
    Bord nutze ich heute noch für Entwicklungen. Ist ja alles steckbar. Meine Projekte baue ich alle selber(Lochstreifenplatine) ist ja kaum Außenbeschaltung nötig. Natürlich ist alles größer wie mit SMD.
    Hat aber den Vorteil alle IC sind gesockelt. Habe mich für AVR und Bascom entschieden.
    Wie du richtig geschrieben hast, führen viele Wege nach ROM. Somit kann keine Aussage getroffen werden, was besser ist.

    Mit freundlichen Grüßen
    fredred
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken Test-Bord.jpg  

  4. #4
    Erfahrener Benutzer Roboter Genie Avatar von HeXPloreR
    Registriert seit
    08.07.2008
    Ort
    Bad Bramstedt
    Alter
    45
    Beiträge
    1.369
    Hallo derSpinner,

    und herzlich Willkommen hier im Forum.

    Ja, der HannoHupmann hat es schon sehr gut getroffen. Zum Anfang würde ich immer empfehlen eine fertigen Programmier Adapter (z.B mySmartUSB oder AVRISImkII) zu nehmen, das minimiert die Fehlerquellen - und glaub mir davon gibt es schon bei drei Baueilen mehr als genug , einen ATmega8 oder (etwas kleiner) ATtiny13 (je 2x Stück) in DIP-Version , ein mittleres Steckbrett (Breadboard), paar Steckbrücken (auch gerne selbergemacht), einige verschiedene 1/4 Watt Widerstände und paar normale rot und grüne LED's.
    Damit fängst Du an, ob das überhaupt erstmal was für Dich ist, eine Led blinken zu lassen. Das kostest grob alles zusammen vielleicht 20€. Diese Schaltungen kannst Du dann auch auf Platinen auflöten, mit der Zeit kannst Du Dir so ein eigenes Board aufbauen mit den Dingen Du Du benötigst. Motortreiber kann man immer noch dazu holen, oder Servos, auch umgebaute oder oder...

    Ein guter und zu empfehlender Shop für Elektronik ist momentan Reichelt. Bei Modellbau steht HobbyKIng und Staufenbiehl wohl recht weit oben.
    Ich selbst benutze die Vollversion von Bascom Basic mit mySmartUSBmkII. Damit habe ich u.a. meine bisherigen Erfahrungen gemacht.

    Ab jetzt könne wir immer sagen "der Spinner war's"

    Viele Erfolge und Grüße
    Jörg
    Geändert von HeXPloreR (16.04.2014 um 15:00 Uhr)

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    15.04.2014
    Beiträge
    27
    Okay, danke für die Hinweise.
    Dann lass ich das mit dem Selbstbau des ISP-Dongle doch lieber, ihr habt Recht, USB-Anschluss auf PC-Seite ist praktischer.
    Nun ist dann meine Frage, wie ich dann am besten anfange, also womit am besten?
    Welche ist für einen Anfänger die sinnvollste Alternative:
    - RN-Control: zunächst für erste Experimente und Programme, später dann eben auch erste Testaufbauten mit Schrittmotoren, Sensoren etc. bis hin zu meinem ersten Robo.
    - Bausatz Nibobee
    - einen Bausatz wie myAVR light, myAVRlight Plus oder myAVR Board MK2, bei dem Einsteiger direkt die notwendige Software mitgeliefert bekommen und Programmierbeispiele (Anleitungen) dabei sind.
    - oder einfach einzelne Teile (Steckboard, LEDs, die nötigsten Elemente einer Grundschaltung) bei reichelt.de bestellen

    Ich tendiere nun doch eher zum RN-Control, weil:
    - gute Dokumentation, viele User für Hilfe hier im Board
    - langfristig sinnvoller, da ich nach den ersten "Laufversuchen" in dieser Materie wsl. eh früher oder später zum RN-Control greifen würde
    - auch Anleitung etc. für erste Programme beiliegen, wie ich es verstanden hab
    - USB-programmierbar (kein ISP-Stecker notwendig, da USB-ISP Bridge integriert, wenn ich es richtig verstanden hab)

    Auch sinnvoll scheint mir der Nibobee, da ich dort direkt nach Anleitung einen Roboter zusammenstellen und programmieren kann ohne große Umwege - das wäre dann eher Learning by doing, ohne vorher erst mit LEDs experimentiert zu haben. Frage ist: wie sinnvoll ist es, als Neuling direkt einen Roboterbausatz zusammen zu bauen und zu programmieren? Angeblich soll Nibobee ja für Anfänger geeignet sein, also einsteigerfreundlich.
    Also, RN-Control oder Nibobee? Oder doch Grundschaltung auf Steckbrettt mit den nötigen Teilen von Reichelt? Später werd ich ja wsl eh oft mal nen steckbrett brauchen, um neue Schaltkreise zu testen und zu entwickeln schätze ich, oder wie ist das bei euch? Andererseits denke ich mir, wenn ich dann noch ne USB-ISP-Bridge wie mySmartUSB light kaufen muss, was direkt schon 15€ sind, kann ich mir auch einen Bausatz bzw. das RN-Control holen, die eine solche Bridge schon integriert haben und mit USB-Port ausgestattet sind - ich denke da hab ich dann mehr von.
    Geändert von derSpinner (16.04.2014 um 16:35 Uhr)

  6. #6
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    14.11.2013
    Ort
    Home
    Beiträge
    213
    Hallo Jörg,

    auch dein Kommentar ist OK aber mit „ z.B mySmartUSB oder AVRISImkII)“ ist ein Einsteiger schon wieder abhängig. Meine persönliche Meinung ist, ISP frei verfügbar zu lassen. Wenn PC noch einen parallel Anschluss hat benötigt man keine zusätzliche Hardware zum flashen. Anschlussplan kann ich wenn gewünscht hier einstellen. Programmieren mit Bascom STR200/300 ist dann auch für Einsteiger, sehr übersichtlich. Bascom-AVR legt sehr großen Wert, Fehler schon vor den flashen zu vermeiden.

    Mit freundlichen Grüßen
    fredred

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    15.04.2014
    Beiträge
    27
    Denke, ich werde mir früher oder später ein RN-Control Board selber zusammenbasteln. Warenkorb ist bei reichelt.de zusammensgestellt und gespeichert.
    Habe mir da auch direkt ein Steckbrett beigelegt, weil ich es ohnehin iwann brauchen werde für eigene Tests/Neukreationen.
    Habe allerdings eine Frage zu einem Bauteil: Die 3polige Stiftleiste LU 2,5 MS 3 (Im Schaltplan Bauteil RS232) gibt nicht - es gibt die Variationen LU 2,5 MSf 3 (Stiftleiste gerade) und LU 2,5 MSFW 3 (Stiftleiste gewinkelt). Welche davon brauche ich?
    Außerdem bestelle ich mir als µC den ATMEGA 644PA-PU (wenn, dann direkt was mit Potential für später^^) - der müsste doch auch auf das Board passen oder?

    Ich überleg nur, ob ich dies vielleicht eher als größeres Projekt ansehen soll, evtl auch erst für später wenn ich etwas Erfahrung habe und doch erst mit dem myAVR light Plus beginnen soll => hier ein Link: http://shop.myavr.de/Baus%C3%A4tze%2...p&artID=200085
    Ich denke das ist nen gutes Preis-Leistungsverhältnis für den Einstieg - damit kann ich an LEDs proggen lernen und rumspielen und schonmal nen LCD Display programmieren. Denke damit wäre ich fürs erste auch schon beschäftigt.

    Einzelteile kaufen und eigene Grundschaltung bauen denk ich, macht sich vom Preis-Leistungsverhältnis nicht bezahlt, da ein ISP-Dongle oder eine andere Bridge notwendig wäre, die allein auch schon mind. 15€ kostet - für das Geld krieg ich auch schon nen kleinen, einfachen Bausatz mit mehr Bauteilen, der direkt über USB programmierbar ist.

    Was könnt ihr mir davon denn jetzt am ehesten für den Einstieg empfehlen? Würde das dann nämlich heute oder morgen bestellen.

  8. #8
    Erfahrener Benutzer Robotik Einstein Avatar von i_make_it
    Registriert seit
    29.07.2008
    Ort
    Raum DA
    Alter
    55
    Beiträge
    2.814
    1234567890
    Geändert von i_make_it (03.02.2015 um 06:47 Uhr)

  9. #9
    Neuer Benutzer Öfters hier
    Registriert seit
    15.04.2014
    Beiträge
    27
    Okay, vielen Dank für die ganzen Infos. Wie gesagt, habe ich mir jetzt erstmal myAVR light Plus bestellt (http://shop.myavr.de/Baus%C3%A4tze%2...p&artID=200085) und ein USBIsp-Kabel.
    Werde mit dem Bausatz mal anfangen und nach der Anleitung ein paar Beispiele programmieren (LEDs und LC-Display).
    Danach besorg ich mir dann die Bauteile fürs RN-Control (bin ich insgesamt bei ca. 35-40€ mit Versand) sowie ein Steckboard für weitere Lern- und Testprojekte sowie noch weitere Bauteile (Dioden, Quarz, Elkos etc.) für die Lernprojekte. Mein Plan ist dann, die Schaltungen aus dem RN-Wissen (AVR Einstieg leicht gemacht: http://www.rn-wissen.de/index.php/AV...einem_ATMega32) nachzubauen und zu programmieren. Auch dieses Tutorial für Anfänger habe ich gefunden: http://staff.ltam.lu/feljc/electroni...Tutorial_1.pdf

    Anfangen werde ich wohl mit der Demoversion von Bascom - Alle drei Lernprojekte (Bausatz myAVR Light Plus, AVR-Einstieg aus RN-Wissen und Bascom-Tutorial) werden hauptsächlich bzw. unter anderem anhand von der Programmierung mit Bascom erklärt. - Dieses Prog soll auch für den einstieg leichter benutzbar sein.
    Langsam habe ich konkrete Vorstellungen, wie ich loslegen kann.
    Das Buch Roboter selber bauen werde ich dann auch bald darauf bestellen, wenn die ersten Schaltungen funktionieren und ich mir mehr zutraue als nur LEDs und LCDs zu proggen.
    Allerdings bleibt mein Problem mit dem RS232: Ich wollte nämlich auch eine Datenübertragung von dem µC zum PC programmieren (Bascom-Tutorial), außerdem empfielt das Thema "AVR-Einstieg leicht gemacht" aus RN-Wissen ausdrücklich die Anschaffung eines RS232-Kabels, da es (nach meinem jetzigen Wissensstand) die einzige Möglichkeit darstellt, Daten vom µC zum PC zu übertragen. Gibt es da für mich eine kostengünstige Möglichkeit? (Erinnerung: ich habe am PC keine RS232-Schnittstelle)

    Mein Vorhaben hat natürlich auch einen Nutzen für alle, die nach mir einen Einstieg in ähnlicher Weise haben, oder ein RN-Control selber bauen wollen:
    Für das RN-Control und für die Grundschaltung aus RN-Wissen (AVR-Einstieg leicht gemacht) habe ich eine Bestell-Stückliste angefertigt und gespeichert.
    Für die Grundschaltung benötigt man knapp 5€ für Bauteile plus Steckbrett gewünschter Größe (nochmal 6-20€).
    Wenn ich es getestet habe und alle Bauteile auch richtig gewählt sind, also die Schaltung funktioniert, stelle ich der Com meine Listen zur Verfügung.

    Würde am liebsten sofort loslegen!! Leider bin ich ab morgen erst im Urlaub und muss eine Woche warten. :-P
    So, jetz muss ich aber auch fix zur Vorlesung an der Uni^^
    Hoffe, für das RS232-Problem hat jemand noch eine gute Idee, bzw. kann mir sagen, was ich überhaupt brauche, um RS232-Port über USB zu betreiben (am besten möglichst günstig) - evtl auch Eigenbau möglich?

  10. #10
    Erfahrener Benutzer Robotik Einstein Avatar von i_make_it
    Registriert seit
    29.07.2008
    Ort
    Raum DA
    Alter
    55
    Beiträge
    2.814
    1234567890
    Geändert von i_make_it (03.02.2015 um 06:52 Uhr)

Ähnliche Themen

  1. Einstieg in Microcontrollerprogrammierung
    Von 2linkehaende im Forum Microcontroller allgemeine Fragen/Andere Microcontroller
    Antworten: 2
    Letzter Beitrag: 13.11.2009, 13:27
  2. Absoluter Neuling will in C einsteigen
    Von Michael 123 im Forum C - Programmierung (GCC u.a.)
    Antworten: 5
    Letzter Beitrag: 21.09.2008, 12:11
  3. Wie soll ich einsteigen?
    Von pras_18 im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 3
    Letzter Beitrag: 13.05.2008, 20:41
  4. mit RN-Control einsteigen und das zum Robot erweitern?
    Von StoredProc im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 2
    Letzter Beitrag: 12.12.2006, 14:37
  5. Microcontrollerprogrammierung mit C/C++
    Von mArc2k5 im Forum C - Programmierung (GCC u.a.)
    Antworten: 2
    Letzter Beitrag: 31.05.2005, 06:56

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad