1zu160 - Forum



Anzeige:
FKS-Modellbau Gerd Gehrmann

THEMA: Arduino - Entwicklungssoftware

THEMA: Arduino - Entwicklungssoftware
Startbeitrag
Joni - 08.12.22 10:52
Hallo Miteinander,

immer wieder bin ich am Überlegen, mir die Arduinos genauer anzuschauen und in deren Programmierung einzusteigen. Auf der Seite   https://funduino.de/   sind sehr einfache bis etwas aufwändigere Programme beschrieben - könnte als Einstieg dienen. Dort im Shop gibt es auch ein Set mit einem Arduino und jede Menge Zubehör.

Vor knapp 3 Jahrzehnten hatte ich mich mit Mikrokontrollern beschäftigt. Da gab es Entwicklungsprogramme dazu, mit denen mein geschriebenes Programm auf den Zielprozessor geladen werden konnte und anschließend entweder in einem Rutsch durchlief oder ich z.B. im Einzelschrittmodus das Programm laufen lassen und jederzeit mir die Werte in den Speichern anschauen konnte.

Gibt es für Arduinos etwas vergleichbares ?
Oder wie habt ihr Euch in die Programmierung eingearbeitet und wie macht ihr es bei der Programmentwicklung und -test ?

Viele Grüße, Joni

Die Arduino Software ist geradezu ein Musterbeispiel für das, was du suchst. Sie ist Entwicklungsumgebung und Brennsoftware in einem. Vom Editor bis zum downloaden auf den Arduino (alle möglichen Spielarten) per USB alles inklusive. Programmiersprache ist stark an C++ angelehnt. Außerdem gibt es dafür im www unendlich viele Bibloitheken für alles erdenklich mögliche und unmögliche, so dass man das Rad nicht immer wieder neu erfinden muss. Zudem gibt es auch ein deutsches Forum für den Arduino
https://www.arduinoforum.de
Na dann, viel Spaß damit!
Gruß Holger
Servus,

zum Einstieg und für kleine Sachen funktioniert die Ardunio IDE eigentlich ganz gut. Beispiele und Tutorials gibt es massenhaft im Netz.

Für etwas mehr Comfort würd ich mir dann aber Platform.IO zusammen mit Visual Studio Code ansehen. Bare-Metal mit makefile usw. geht natürlich auch wenn man das will

Grüßle
Elvis
Hi,

"Arduino" ist ein Sammelsurium für eine Unzahl ganz verschiedener Controller, Boards und anderes Gerümpel. Wenn Du konkret Dich für eine Art von Controller und Board entschieden hast, kann man auch sagen, wie dieses Board mit Arduino-Mitteln zu programmieren wäre...

ABER:
Ich würde viel eher empfehlen, sich für eine Controller-Plattform, zum Beispiel 8-Bit AVR zu entscheiden und dann beliebige Boards zu nutzen. Man ist dann nicht mehr gezwungen, vorprogrammierte Controller mit Bootloadern usw. einsetzen zu müssen. Hier nutzt man dann die vom Controller-Hersteller bereitgestellten Schnittstellen, typischer Weise also ISP, was eine SPI-Schnittstelle ist und braucht sich nicht mehr mit Arduino rumschlagen.

Um bei AVR zu bleiben, kann man dann einfach einen Compiler nach Wunsch benutzen, kostenlos wäre der gcc und kann komplett machen, was man möchte und bekommt dann auch ein relativ gutes Verständnis dafür, was auf dem Controller passiert.

Nach meiner Erfahrung sehen die Leute oft nur die Arduino-Entwicklungsumgebung, stricken sich aus den vorhandenen Libraries was zusammen und verstehen dann nicht, was passiert und vor allem nicht, warum bestimmte Dinge nicht zusammen passen.

Mag sein, daß der erste Einstieg mit Arduino recht schnell geht, aber wenn es konkret an eine reale Umsetzung geht, wo ein Controller mehrere Sachen zügig oder gar in Echtzeit machen soll, ist dann Ende.

Ich halte von der Arduino-IDE überhaupt nichts, weil die nach wie vor so viele Fehler hat, daß sich die Haare sträuben, zudem halte ich nichts von einer Programmierung durch zusammen-klicken, weil das echte Verständnis oft nicht erreicht wird. Aber das ist meine ganz persönliche Meinung!

mein Tipp wäre also: Suche Dir eine Controller-Plattform aus, besorge Dir die entsprechende Hardware ( Boards und Programmieradapter ) und verwende dann einen Compiler nach Deiner Wahl, egal ob kommerziell oder frei. Und dann nimm Dir die Datenblätter des Controllers und leg los. Alles andere geht erst mal schneller und dann schnell vor die Wand.

Gruß
Klaus
Ich weiß nicht, warum hier schon wieder mit Kanonen auf Spatzen geschossen wird. Was Joni sucht, ist ein einfacher Einstieg in die µC Programmierung, dazu ist die Arduino Umgebung bestens geeignet. Und wer sich wirklich mit dieser IDE schon beschäftigt hat, wird erkennen, dass es eben nicht nur auf diese paar Typen beschränkt ist, dass man alle auf AVR basierte µC nutzen kann. Und man muss auch nicht unbedingt mit dieser IDE hochladen, man kann sich das fertige Programm auch als Bin oder hex File exportieren und mit jedem erdenklichen Progger brennen, also auch ohne diesen Bootloader! Habe ich schon sehr oft gemacht.
Und Arduino ist nicht meine erste Wahl gewesen. Ich programmiere sehr viel in Assembler für 51er Kerne, da ist viel mehr "Fußarbeit" notwendig. Daher kann ich das ganze auch etwas besser vergleichen und bewerten. Zu meiner Beginner- Zeit gab es Arduino (leider) noch nicht. Für Einsteiger bestens geeignet. Fortgeschrittene werden dann von sich aus noch bessere Möglichkeiten entdecken.
Es ist ja auch die Frage, wo liegt der Schwerpunkt: Bei der Elektronik oder nur als Mittel zum Zweck bei der Modellbahn?
Gruß Holger
Hallo,

da muss ich Holger / Digimoba uneingeschränkt zustimmen!
Zum einen wissen wir nicht, was Joni mit dem Arduino vor hat zu entwickeln, zum anderen ist unbekannt, wie tief er dazu einsteigen will. Und drittens steht nirgendwo, ob er auch andere AVR-basierte Controller ausser Arduionos nutzen will.
Gerade für einen leichten Einstieg finde ich die IDE dazu recht übersichtlich, bisher hat sie alles gemacht, was ich wollte...
Wenn jemand mit der Absicht an diese Controller geht, statt mit "IC-Massengräbern" auf einer Platine die Logik in so ein "Vielbein" zu gießen, reicht diese Umgebung durchaus. Das war für mich der Anlass, mich damit zu beschäftigen; denn mit ICs etwas aufzubauen, kann heute ziemlich teuer werden (falls man die Teile überhaupt noch bekommt). Und es war auch deutlich einfacher mit Soft- statt Hardware, meine Ideen und Wünsche umzusetzen.
Falls man einen komfortableren Editor gewohnt ist, kann man auch darin entwickeln und das Ergebnis per Copy´n´Paste in den IDE-Editor kopieren -- mache ich manchmal Für kleine Projekte reicht aber der eingebaute IDE-Editor locker.
Fehler mögen in diesem Gesamtpaket drin sein, mir ist allerdings noch keiner aufgefallen; wenn mal was "unerklärlich" schien, sass der Verursacher üblicherweise vor der Tastatur Merke: Eine fehlerfreie Software ist hoffnungslos veraltet!
Ich nutze die Arduino Nano (meine bisher bevorzugten Teile) auch nicht bis zum letzten aus, aber für meine Projekte hat es bisher gut funktioniert -- verschiedene belebte Häuser, Wendegleissteuerung; für nachfolgendes ist das Programm fast fertig, nur die Hardware fehlt noch zum Austesten: Bahnübergang, spezielle Schattenbahnhofsteuerung. Und ich habe noch so einige Ideen...
Zum Einsteigen finde ich die Kombination Arduino (preiswert) und IDE (kostenlos) jedenfalls gut geeignet, wer geringe Programmierkenntnisse hat, wird wenig Einstiegshürden finden. Und wenn das mal nicht mehr reichen sollte, kann man weitersehen, was man braucht -- monetär hat man kaum was verloren.
Allerdings rate ich von diesen Sets mit "Controller, Anleitungs-Buch und CD für den Einstieg" ab, die sind meiner Meinung nach hoffnungslos überteuert und zum Teil auch nicht ganz aktuell. Besser, man besorgt sich den gewünschten Arduino-Typ, lädt sich die Software herunter und stöbert in den Online-Hilfen -- ach ja, ein kleines Problem: Die Controller, die ich kenne, haben einen USB-MINI-Anschluß (nicht USB-MICRO oder USB-C); solche Kabel muss man suchen... gibt es aber... Zur Not (und für nach der Entwicklung!) ist auch ein 6-poliger Anschluß mit drauf

Viele Grüße
Michael
Hallo,
ich habe mir vor geraumer Zeit einen Zubehör-Decoder auf Arduino-Basis gebaut: Zufallslicht, Blinklicht, Schweisslicht und Magnetartikel. Grösstes Problem war der Optokoppler am Eingang zum Erfassen des DCC-Signals (da wollte ich es besser wissen als der Schwarm im www). Ganz normale IDE, m.E. ideal für den (Wieder-) Einstieg. Auch ideal als Thema vom Grossvater mit dem Enkel und vice versa.
Struwelpeter

Die von Struwelpeter zu diesem Beitrag angefügten Bilder können nur von registrierten Usern gesehen werden - Login

Hallo Miteinander,

vielen Dank für Eure Antworten.

Konkrete Pläne habe ich noch nicht. Mir laufen diese Dinger immer wieder "über den Weg". Und da bin ich am überlegen, ob ich mal einsteigen "soll" / will. Eine eventuelle Anwendung wäre eine Schattenbahnhofssteuerung.
Funktionsumfang könnten sein: Einfahrender Zug in freies Gleis leiten.
Bei Einfahrt eines Zuges oder auf Anforderung einen Zug starten - entweder zufällig oder zuerst eingefahrener Zug oder ein Zug auf einem bestimmten Gleis (nur bei manueller Anforderung).

Assembler als Programmiersprache holt zwar das Maximum aus einem Controller heraus, aber damit fange ich nicht mehr an - ist mir zu mühsam.

In einem ersten Schritt würde es wohl mal darum gehen, einen Überblick zu verschaffen, was diese "Dinger" können (mit vertretbarem Programmieraufwand) und zu entscheiden ob ich da wirklich einsteigen will oder ob ich es doch lasse. Es sollte dann eher Mittel zum Zweck sein und nicht ein neues Hobby im Hobby Modellbahn.

Viele Grüße, Joni

PS: Vielleicht 50 Euro oder so eventuell in den Sand zu setzen wäre mir zwar unangenehm, aber das kleinere Übel als zig oder mehrere zig Stunden in den Sand zu setzen.

Hallo Joni,
du brauchst keine 50€ in den Sand setzen. Kauf dir einen Nano gleich mit USB Kabel, installier das IDE und los gehts.
nur ein Beispiel:

https://www.ebay.de/itm/255283221978?hash=item3...tkp%3ABk9SR7Kq1eieYQ

VG
Markus
Hallo Joni ,
Arduino ist sehr interessant.
Habe vor langer Zeit mal damit experimentiert und so wie du schreibst ein neues oder zusätzliches
Hobby im Hobby gefunden.
Mich fesselt es wenn ich mich hin und wieder damit beschäftige.
Die Möglichkeiten sind vielfältig,
Anleitungen genügend im Netz und Handhabung sehr einfach.

Da ich von Elektronik und Programmieren null Ahnung hatte habe ich lange überlegt.
Auslöser war damals der Thread zum
belebten Haus hier im Forum.

Ich mache vorerst nur Lichtspielereien mit Arduino ,bezeichne mich weiterhin als Laie in diesem Gebiet weil ich mich zu selten damit beschäftige,zumindest im Moment.

Mein Einstieg war mit einem Uno für kleines Geld aus der Bucht, das die Chips darauf momentan schwer zu bekommen und teuer sind kaufe ich ab und an gebrauchte Unos mit dem 328 er Chip.

Diese Chips (Mikrocontroller ) setze ich dann auf autarken Platinen ein.
Die benötigten Teile kosten fast nichts.

Für mich war der Einstieg mit dem Uno eine Super Sache.

Kann ich nur empfehlen.
Starterset nicht unbedingt notwendig,
habe ich auch nicht gebraucht.

Ich behaupte den Zehner zu investieren war in meinem Fall genial.

Grüße Dietmar

Hallo,

nochmals vielen Dank für Eure Antworten.

Ich habe mich fürs erste für ein Set entschieden. Mal experimentieren was man damit so alles machen kann. Die Teile im Set scheinen mir auch nicht teurer als Einzelkauf - ok, alles werde ich wohl nicht einsetzen. Aber wenn ich Stück für Stück nach Bedarf bestellen würde, hätte ich einiges an Portokosten - dann habe ich lieber die Bauteile.

Das Ganze gibts auf Weihnachten - von meiner lieben Frau !!

Viele Grüße, Joni
Hallo,

mit der Arduino IDE V2.0.x gibt es aktuell noch Probleme. Bitte nehmt V1.8.x
@ELNA5: habe hier ebenfalls DCC-EX mit EX-RAIL, aber (noch) ohne JMRI

Gruß
Uli

PS: habe meinen Nickname geändert. War früher henuli. Der neue besteht aus Vorname + erster Buchstabe Nachname
Hallo,
muss Uli in # 12 zustimmen.
Die IDE 2.0 macht nicht wirklich Freude.
Ich nehme bzw. habe die IDE
1.8.19 geladen, funktioniert gut.

Probieren geht über studieren.

MfG
Dietmar
Hi,

ich weiß, ist nicht der angefragte Arduino, aber falls du in C++ nicht so bewandert bist und auch nicht eine DCC-Ex Zentrale benötigst, sondern einfach irgendwelche Funktionen für die Moba realisieren willst, schau dir vielleicht auch einmal den Raspberry Pi Pico (W) an.

Der läßt sich total einfach auch in  Micropython mit dem Thonny-Editor programmieren und ist leistungsfähiger. (C++ und die Arduino-IDE kannst du natürlich auch verwenden.)

Preislich liegt er zwischen 4 und 10 €, je nachdem wo du ihn kaufst und ob du Wlan brauchst oder nicht. Er ist aber für 3,3V und nicht für 5V ausgelegt.

Neopixel, LED- oder Servosteuerung, etc geht damit ohne Zusatzplatinen.

Ich komme zwar aus der Informatikecke, aber beim Arduino blicke ich noch nicht durch, beim Pico hatte ich ein erstes Programm in Micropython nach einer Stunde am Laufen.

ThomasK
Hallo Frank (ELNA5),

die RP Pico hat dem Arduino Nano vielleicht noch ein paar Pinbelegungen gemein (weiß ich nicht), aber sonst nichts. Tatsächlich werkelt auf dem RP Pico ein von Raspberry auf Basis des ARM M0Plus-Prozessors selbstentwicklter (sicher mit Hiife Dritter) Microcontroller (RP2040). Der steht in absoluter Konkurrenz zu der ATmega-Familie. Ich glaube da nicht an eine geartete Zusammenarbeit der beiden Firmen.

Klaus
Klaus, schau mal hier:
https://store.arduino.cc/products/arduino-nano-rp2040-connect
Da ist doch der RP2040 drin.

Gruß
Walter
Hallo Walter,

ja klar, alle bekannten Hersteller, ob Adafruit, Sparkfun, Waveshare und noch viele andere haben Boards mit dem Controller herausgebracht. – NACH dem RP Pico-Board. Der Pico war ein Überraschungscoup von Raspberry PI. Er ist zudem viel leistungsfähiger (hoch getaktet, 32 Bit) und viel billiger. Der Chip selbst kostet einen Dollar (und noch weniger bei hoher Stückzahl). Mit 5 Dollar ist das Board dazu noch billiger als das billigste Arduino-Board. Da ist doch klar, daß die anderen da mitziehen müssen, wollen sie im Geschäft bleiben.

Klaus
Bei DCC-EX entwickeln wir neben AVR für die Zukunft auch auf  ESP32 und nucleo (STM32) . Doch bis jetzt noch nicht rp2040, man kann nicht auf allen Plattformen tanzen. Portierung sollte aber leichter sein als auf ESP32, nur muss es eben jemand machen.

Das Arduino API wird da angewendet wo möglich. Da wo das aber nicht reicht wird platformspezifiker Code verwendet. Das geht sowohl mit der Arduino IDE als auch mit platformio. Arduino IDE 2.0.x hat leider immer noch Probleme wie z.b Startzeiten von Minuten.

Für Automation haben wir EXRAIL entwickelt.

Grüße,
Harald.
Hallo Joni,

bin auch gerade dabei mich mit Arduino zu beschäftigen. Bin dabei auf diese Seite im Stummiforum gestoßen:

https://www.stummiforum.de/t165060f7-MobaLedLib...ammtisch-Do-Uhr.html

Eine deutlich bessere Infoquelle ist diese:

https://wiki.mobaledlib.de

Viele Grüße

Erich
Hallo Miteinander,

seit Weihnachten habe ich einen Arduino bzw. eine kopierte Version (Funduino). Ich habe mich für ein Set entschieden. So habe ich einiges an Zubehör ohne jedes mal schauen zu müssen was ich für welche Testschaltung brauche und dann eventuell getrennt bestellen müsste. Und es war eine Anleitung mit dabei (auf deutsch ! - Mein Englisch ist schlecht).

Ein paar Schaltungen habe ich inzwischen aufgebaut. Dank den ausführlichen und gut beschriebenen Erläuterungen im Begleitheft (die ich trotzdem z.T. mehrfach lesen musste), hatte ich zügig Erfolgserlebnisse . Und auch eigene Abwandlungen der Sketche haben funktioniert. Aber ich habe auch gemerkt: Ich muss beim Programmieren sehr gut aufpassen - bereits ein fehlendes Semikolon wird nicht verziehen. Und es gibt schnell sehr viel Programm-Code (Zeilen) - da ist ein Überblick-Behalten nicht leicht.

Ob ich weitermache ? Weiß ich noch nicht. Derzeit habe ich keine konkrete Anwendung. Wenn es mehr als nur ein paar blinkende LEDs und u.ä. werden sollen, dann müsste ich noch viel lernen und üben - ob ich mir das antue ?

Nochmals herzlichen Dank für Eure Unterstützung !!

Viele Grüße, Joni
Servus,

kennst Du die Seite

https://opensx.net/wordpress/

Da gibt es Anleitungen zu Projekten mit SX und Arduino.

Viele Grüße

Martin
Hallo,

herzlichen Dank für Eure Tipps. Inzwischen habe ich mich mit dem Arduino befasst. Ein interessantes Hobby im Hobby Modellbahn, eine interessante Spielerei.

Mein erstes Projekt ist weit fortgeschritten: Geschwindigkeitsmesser für die Modellbahn. Die bisher erreichte Genauigkeit ist erstaunlich: So um 3% bis 4%.

Ich bin froh, mich nicht mehr mit Assembler und genauer Registerbelegung herumschlagen zu müssen.
Die Mechanik hat ein Freund gemacht.

Ein paar Bilder:

1 und 2 Ansicht
3 Startanzeige
4 Nach der Messung (diese Variante ist für den Normalgebrauch gedacht).
5 Höhere Auflösung für den Abgleich des Messgerätes (links Geschwindigkeit in km/h [entspricht 1:1] und cm/s [in 1:160], rechts oben Länge in mm, rechts unten Messzeit in msec.

Viele Grüße, Joni

Die von Joni zu diesem Beitrag angefügten Bilder können nur von registrierten Usern gesehen werden - Login

Hallo Joni,
sehr schön!
ich bin dabei eine Bahnhofsansage zu basteln, die über TC via DCC angesteuert wird und suche noch nach geeignete, einfache Bibliotheken.
In der nächsten Ausgabe von "digitale Modellbahn" soll ein DCC-Projekt mit dem Arduino vorgestellt werden.
Viel Spaß weiterhin mit dem Hobby im Hobby
LG
Günter
Hallo

Zitat - Antwort-Nr.: 25 | Name: Joni

Die bisher erreichte Genauigkeit ist erstaunlich: So um 3% bis 4%.

Das ist aber erstaunlich wenig. Es sollten eher 96 - 99 % sein für eine brauchbare Messung.

Dietrich
Hallo Dietrich,

stimmt, technisch war meine Formulierung nicht korrekt. Es müsste heißen die Messunsicherheit liegt bei 3% bis 4%.


Viele Grüße, Joni
Hallo Joni,

schau dir mal VisualStudio Code mit dem Plugin PlatformIO IDE an. Hier hast du eine IDE mit der du Arduino und andere Programmieren kannst. Diese ist besser als die IDE 2.0 von Ardunino.

mfg

saaralf


Nur registrierte und eingeloggte User können Antworten schreiben.
Einloggen ->

Noch nicht registriert? Hier können Sie Ihren kostenlosen Account anlegen: Neuer N-Liste Account





Zum Seitenanfang

© by 1zu160.net;