RE: Arduino MobaTools: V2.3.1 released

#26 von MicroBahner , 18.10.2015 17:46

Hallo Marko.
wow, da geht's ja richitg weit weg .

Zitat von Mape71
nur Aufbauen werde ich es da nicht, die Anderen gucken dann immer so komisch

Das wär dann ein Fall für einen Arduino-Simulator. Mal unter 'Arduino Simulator Windows' googeln .


viele Grüße
Franz-Peter
Ein 'elektromechanisches' Stellwerk
Der (ehemalige) 'Eisberg'


 
MicroBahner
Metropolitan (MET)
Beiträge: 2.833
Registriert am: 28.11.2012
Ort: Mittelfranken
Gleise Tillig Elite
Steuerung Eigenbau
Stromart Analog


RE: Arduino MobaTools: V2.3.1 released

#27 von Mape71 ( gelöscht ) , 20.10.2015 01:46

...Ladegerät im Koffer hilft nicht wirklich den Laptop lange in Betrieb zu halten - aber Donnerstag Nacht geht's zurück, mal schauen ob ich dann schlauer werde[emoji37]
Viele Grüße
Marko


Mape71

RE: Arduino MobaTools: V2.3.1 released

#28 von Bodo , 21.10.2015 19:37

Hallo zusammen,

kurze Erfolgsmeldung ... DCC-Dekoder steuert jetzt 4 Servos (hier stellvertretend nur der Wasserkran) und zwei Schrittmotoren an einem Schieberegister:



Anmerkungen:

Der Aufbau auf einer Platine ist erstmal ein Versuch - die "Anwendungplatine" könnte auch einen Sockel z.B. für einen Nano bekommen. Für "fertige" Lösungen will ich mir das mit dem maßgeschneiderten "Selbstbau-Arduino" aber offen halten und schon mal testen.

Die Versorgung direkt aus der Digitalspannung (über)fordert den Spannungsregler, das ist noch keine praxistaugliche Lösung für den späteren Einsatz. Wäre für "fertige Dekoder" aber wünschenswert, auch wenn der Einsatz einer 5V- oder 9V-Versorgung für andere Elektronik-Artikel eh´ geplant ist.

Für einen echten Einsatz würde ich separate Spannungsregler für Servos, Schrittmotoren und den Prozessor selbst vorsehen.

Da das ständige Wechseln des Prozessors dann doch sehr lästig ist, habe ich mir noch ein Shield mit Optokoppler, Servoanschlüssen und SPI>Schieberegister>ULN2803A für zwei Schrittmotoren gebastelt:



Ein paar "Kleinigkeiten" und sinnvolle Anwendungen (außer den Servo-Weichenantrieben) für den praktischen Einsatz fehlen noch - momentan testet das Progamm eigentlich nur die Physik ... hier der für die zwei Schrittmotoren angepasste Beispiel-Code von Franz-Peter:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
 
#include <NmraDcc.h>
#include <MobaTools1.h>
 
// https://www.stummiforum.de/viewtopic.php?p=1448001#p1448001
//------------------------------------------ //
// Demo: ein ganz einfacher Dcc-Servodecoder //
//------------------------------------------ //
// die NmraDcc - Library gibt es unter https://github.com/mrrwa/NmraDcc/archive/master.zip
 
// anzupassende Konstante:
const byte isROCO = 0 ; // wegen unterschiedlicher Weichenadressberechnung bei Roco 4 (sonst = 0)
const byte weichenAdr[] = { 1, 2, 3, 4, 5, 6, 7, 8}; // DCC-Weichenadressen
const byte servoPins[] = { 5, 6, 7, 8}; // output-pin der Servos
const int geradePulse[] = {1200,1200,1200,1200}; // Pulslänge geradeaus
const int abzweigPulse[]= {1800,1800,1800,1800}; // Pulslänge abzweigend
 
const int speed = 8;
const byte autoOff = 1;
const byte ServoZahl = sizeof(servoPins);
Servo8 weicheS[ServoZahl];
Stepper4 Step1(4096); // HALFSTEP ist default
Stepper4 Step2(2048,FULLSTEP);
 
NmraDcc Dcc;
///////////////////////////////////////////////////////////////
void setup() {
Dcc.init( MAN_ID_DIY, 15, FLAGS_OUTPUT_ADDRESS_MODE | FLAGS_DCC_ACCESSORY_DECODER, 0 );
Dcc.pin(0, 2, 1); // Dcc-Signal an Pin2 ( = Int0 );
 
for ( byte i=0; i<ServoZahl; i++ ) {
// Weichenservos initiieren
weicheS[i].attach( servoPins[i], autoOff );
weicheS[i].setSpeed( speed );
}
Step1.attach( SPI_1 ); // an die SPI-Schnittstelle muss ein Schieberegister
Step2.attach( SPI_2 ); // an die SPI-Schnittstelle muss ein Schieberegister
Step1.setSpeed( 60 ); // = 6 U/Min
Step2.setSpeed( 120 ); // = 12 U/Min
Step1.setZero(); // Referenzpunkt für Motor 1 setzen
Step2.setZero(); // Referenzpunkt für Motor 2 setzen
// Step1.write(360); // 1 Umdrehung vorwärts
// Step2.rotate( -1 ); // Motor 2 dreht dauerhaft rückwärts
}
////////////////////////////////////////////////////////////////
void loop() {
Dcc.process(); // Hier werden die empfangenen Telegramme analysiert

}
//////////////////////////////////////////////////////////////
// Unterprogramme, die von der DCC Library aufgerufen werden:
// Die folgende Funktion wird von Dcc.process() aufgerufen, wenn ein Weichentelegramm empfangen wurde
void notifyDccAccState( uint16_t Addr, uint16_t BoardAddr, uint8_t OutputAddr, uint8_t State ){
// Weichenadresse berechnen
word wAddr = Addr+isROCO; // Roco zählt ab 0, alle anderen lassen die ersten 4 Weichenadressen frei
// Testen ob eigene Weichenadresse
for ( byte i = 0; i < ServoZahl; i++ ) {
if ( wAddr == weichenAdr[i] ) {
// ist eigene Adresse, Servo ansteuern
if ( OutputAddr & 0x1 ) {
weicheS[i].write( geradePulse[i] );
} else {
weicheS[i].write( abzweigPulse[i] );
}
break; // Schleifendurchlauf abbrechen, es kann nur eine Weiche sein
}
}
if ( wAddr == weichenAdr[4] ) {
// ist eigene Adresse, Servo ansteuern
if ( OutputAddr & 0x1 ) {
Step1.write(120); // 1/3 Umdrehung vorwärts
} else {
Step1.write(0); // 1/3 Umdrehung zurück
}
}
if ( wAddr == weichenAdr[5] ) {
// ist eigene Adresse, Servo ansteuern
if ( OutputAddr & 0x1 ) {
Step2.write(120); // 1/3 Umdrehung vorwärts
} else {
Step2.write(0); // 1/3 Umdrehung zurück
}
}
}
 
 



Viele Grüße, Bodo

PS: Anmerkungen überarbeitet


Die Freiheit des Menschen liegt nicht darin, dass er tun kann, was er will, sondern dass er nicht tun muss, was er nicht will. (Jean-Jacques Rousseau)

Meine Anlage - Meine Dauerbaustelle
Platinen für Modellbahn- und Arduino-Anwendungen


 
Bodo
InterCityExpress (ICE)
Beiträge: 2.471
Registriert am: 28.04.2005
Homepage: Link
Gleise C-Gleis, Lenz 0
Spurweite H0, 0
Steuerung MS2 & CS2
Stromart Digital


RE: Arduino MobaTools: V2.3.1 released

#29 von MicroBahner , 23.10.2015 17:40

Hallo Bodo,
da ist ja einiges in Bewegung - saubere Arbeit.
Wie ist das auf der Platine im Video - Nimmst Du da den Prozessor aus dem Uno raus und steckst in dort ein?

Ich habe mir bisher nur Nano-Klone gekauft. Bei mir wird es darauf hinauslaufen, dass immer direkt ein Nano in der Anwendungsschaltung steckt. Bei 4€ / Stück ist das noch verkraftbar und bei Änderungen sehr praktisch

Zitat von Bodo
Ein paar "Kleinigkeiten" und sinnvolle Anwendungen (außer den Servo-Weichenantrieben) für den praktischen Einsatz fehlen noch

Na, dein Wasserkran ist doch schon eine sehr sinnvolle Anwendung - und der Bagger wirkt auch nicht schlecht . Wobei für Weichenantriebe (zumindest bei der 2l-Fraktion) auch noch die Ansteuerung für die Relais zur Polarisierung fehlt .


viele Grüße
Franz-Peter
Ein 'elektromechanisches' Stellwerk
Der (ehemalige) 'Eisberg'


 
MicroBahner
Metropolitan (MET)
Beiträge: 2.833
Registriert am: 28.11.2012
Ort: Mittelfranken
Gleise Tillig Elite
Steuerung Eigenbau
Stromart Analog


RE: Arduino MobaTools: V2.3.1 released

#30 von digi_thomas2003 , 25.10.2015 01:09

Hallo Franz-Peter,

ich nutze die um eine Stunde verlängerte Nacht...
Zu Deinem DCC-Decoder für die 8 Servos habe ich noch Verständnisfragen: In der Funktion notifyDccAccState hast du folgende Zeilen drin:

1
2
3
4
5
6
 
       if ( OutputAddr & 0x1 ) {
weicheS[i].write( geradePulse[i] );
}
else {
weicheS[i].write( abzweigPulse[i] );
}
 



Meine Fragen:
- Was ist die "OutputAddr"? Laut der (dürftigen) Erklärung zur Lib ist das die "Adress of Turnout on this decoder"
- Warum macht Du die "&"-Verknüpfung mit 0x1?

Kannst Du mich hier erleuchten? Danke!!

Und wenn wir gerade dabei sind:
Was sind denn die drei Adressen in der Funktion notifyDccAccState?
Addr = Decoder address
BoardAddr = Address of this decoder
OutputAddr = Address of Turnout on this decoder
Bedeutet das beispielsweise: Die Adresse des Decoders sei "17", wären dann die vier OutputAdresses 65, 66, 67 und 68?

Wenn ich so landläufig sage: "Ich will die Weiche mit der DCC-Adresse 65 umstellen" - meine ich damit die DecoderAdresse oder die OutputAdresse? Und was ist dann noch die BoardAdresse? Wie programmiere ich dann den Arduino?
Wahrscheinlich steht das alles in den DCC-Specs drin - kannst Du mir bitte trotzdem aufs Pferd helfen?


Herzliche Grüße
Thomas


Thomas
------------------
Anlage H0: U-Form, im kreativen Bau
Fahren: Tams MC
Schalten: IB
Melden: HSI 88
Steuern: TrainController 9.0 Gold
Denken: Brain 4.1


 
digi_thomas2003
InterRegioExpress (IRE)
Beiträge: 305
Registriert am: 03.05.2005
Gleise sind vorhanden
Spurweite H0
Steuerung TrainController
Stromart AC, Digital


RE: Arduino MobaTools: V2.3.1 released

#31 von MicroBahner , 25.10.2015 10:10

Hallo Thomas,

Zitat von digi_thomas2003
kannst Du mir bitte trotzdem aufs Pferd helfen?

Dann will ich mal versuchen, dir den Steigbügel zu halten . Die Dokumentation der Lib ist da in der Tat nicht so besonders erhellend
Die Addressierung hängt schon mit der DCC-Spec zusammen. Die Weichendecoder (Accessory-Docoder) sind da ganz klassisch auf Weichen mit Doppelspulenantrieb ausgelegt. Lt. DCC Spec ist ein Weichendecoder für 4 Weichen zuständig.

Um 4 Weichen mit Doppelspulenantrieb ansteuern zu können braucht er also 8 Ausgänge - das ist die 'OutputAddr' (0..7). Das Bit 0 dieser Outputaddresse bestimmt die anzusteuernde Spule, die Bits 1/2 die anzusteuernde Weiche. Das Bit 0 bestimmt also, ob die Weiche auf 'gerade' oder auf 'Abzweig' gestellt wird.

BoardAddr ist die Decoderadresse. Die Weichenadresse ist also
Weichenadresse = 'BoardAddr' *4 + 'OutputAddr' / 2 +1 ( das +1, da Weichen ab 1, und nicht ab 0 zählen)

Diese Berechnung macht die Lib, und das Ergebnis ist die übergebene 'Addr'. Dabei gibt es nun noch eine Besonderheit, weil die DCC-Spec wohl nicht so eindeutig ist: Fast alle Hersteller verwenden die BoardAddr 0 nicht, sondern fangen erst bei 1 an - so macht das auch die Lib. D.h. da ist es dann
Weichenadresse = ('BoardAddr' -1 ) *4 + 'OutputAddr' / 2 +1

Roco hingegen zählt ab Boardaddr=0. Daher der Versatz von 4 bei Roco.

'State' gibt nun noch an, ob die jeweilige Spule ein- oder ausgeschaltet werden soll. Bei meiner Multimaus wird beim Drücken der Taste 'ein' gesendet, wird die Taste wieder losgelassen wird 'aus' gesendet. Das ist also wie bei einem klassischen analogen Stellpult: solange die Taste gedrückt ist, steht die Spule unter Strom. Das ist natürlich nicht ganz ungefährlich, wenn das 'Ausschalttelegramm' mal verlorengeht - dann brennt die Spule durch. Der Decoder sollte die Spule also auch von sich aus abschalten und nur einen Impuls ausgeben. Es gibt wohl auch Zentralen, die sich darauf verlassen, und den 'aus' Befehl gar nicht senden ( habe ich zumindest so gelesen).

In unserem Fall bei Servo-Ansteuerung interessiert der 'State' eigentlich gar nicht, sondern nur welche Spule angesteuert wird - eben das Bit 0 in OutputAddr. Und das filtere ich mit

1
 
if ( OutputAddr & 0x1 )
 

heraus, um das Servo entsprechend anzusteuern.

Ich hoffe das war jetzt verständlich?


viele Grüße
Franz-Peter
Ein 'elektromechanisches' Stellwerk
Der (ehemalige) 'Eisberg'


 
MicroBahner
Metropolitan (MET)
Beiträge: 2.833
Registriert am: 28.11.2012
Ort: Mittelfranken
Gleise Tillig Elite
Steuerung Eigenbau
Stromart Analog


RE: Arduino MobaTools: V2.3.1 released

#32 von digi_thomas2003 , 25.10.2015 10:49

Guten Morgen Franz-Peter,

Zitat von MicroBahner
...
Ich hoffe das war jetzt verständlich?



aber sicher!
Vielen Dank!
Wieder einen Schritt klüger geworden - und das am Sonntag morgen!

Herzliche Grüße
Thomas


Thomas
------------------
Anlage H0: U-Form, im kreativen Bau
Fahren: Tams MC
Schalten: IB
Melden: HSI 88
Steuern: TrainController 9.0 Gold
Denken: Brain 4.1


 
digi_thomas2003
InterRegioExpress (IRE)
Beiträge: 305
Registriert am: 03.05.2005
Gleise sind vorhanden
Spurweite H0
Steuerung TrainController
Stromart AC, Digital


RE: Arduino MobaTools: V2.3.1 released

#33 von digi_thomas2003 , 25.10.2015 18:23

Hallo Franz-Peter,

ich melde Erfolg!!
Mein erster selbstgebauter DCC-Decoder mit einem Arduino Uno und Proto-Shield und Deinen Mobatools und der NRMA-Lib.
Ich habe noch die Anpassung für digitale Ausgänge (statt Servos) eingefügt.

Beim Hardware-Aufbau bin ich geringfügig von Deinem Plan abgewichen, ich habe mich an Schaltplan von Mynabay orientiert, also keinen Kondensator auf der DCC-Seite und dort auch nur einen Widerstand mit 1k eingefügt.

Ergebnis: Funktioniert einwandfrei!

Mein Ziel ist es, einen Decoder für einen Bahnübergang mit 2 Schrankenbäumen (--> 2 Servos) und 2 x 2 Blinklichtern (--> 4 LEDs) zu programmieren. Als "Vorbild" werde ich Dein Beispiel für den BÜ mit den Schrittmotoren verwenden und versuchen, auf die beiden Servos anzupassen (siehe auch meine Frage im anderen Thread).
Für das weiche Auf- und Abblenden der LEDs würde ich auch gern Deine Mobatools verwenden, allerdings schreibst Du ja, dass diese sich nicht mit der "normalen" NRMA-Lib vertragen wegen Timer 0.
Habe ich das so richtig verstanden?

Ansonsten schon mal Danke für Arbeit hier und dass Du diese hier so bereitwillig zur Verfügung stellst!

Herzliche Grüße
Thomas


Thomas
------------------
Anlage H0: U-Form, im kreativen Bau
Fahren: Tams MC
Schalten: IB
Melden: HSI 88
Steuern: TrainController 9.0 Gold
Denken: Brain 4.1


 
digi_thomas2003
InterRegioExpress (IRE)
Beiträge: 305
Registriert am: 03.05.2005
Gleise sind vorhanden
Spurweite H0
Steuerung TrainController
Stromart AC, Digital


RE: Arduino MobaTools: V2.3.1 released

#34 von MicroBahner , 25.10.2015 20:38

Hallo Thomas,

Zitat von digi_thomas2003
ich melde Erfolg!!
Mein erster selbstgebauter DCC-Decoder mit einem Arduino Uno und Proto-Shield und Deinen Mobatools und der NRMA-Lib.

Super, das freut mich .
Die Hardware muss man ja auch nicht so aufbauen wie ich das gemacht habe - war ja nur eine mögliche Variante

Zitat von digi_thomas2003
Für das weiche Auf- und Abblenden der LEDs würde ich auch gern Deine Mobatools verwenden, allerdings schreibst Du ja, dass diese sich nicht mit der "normalen" NRMA-Lib vertragen wegen Timer 0.
Habe ich das so richtig verstanden?

jein - für das weiche Auf- Abblenden benötigen die MobaTools die PWM-Ausgänge des Arduino. Das sind beim Uno ( und den Verwandten mit Mega328 ) die Pins 5,6 (Timer0), 9,10 (Timer 1) und Pin 3,11 (Timer2).

Durch die MobaTools verlierst du die PWM ausgänge 9+10, durch die Nmra Lib die Ausgänge 5+6. Damit bleiben noch 3+11 als PWM Ausgänge übrig - was ja an sich für den Bü ausreicht. Das angesprochene Problem tritt auf, wenn Du Schrittmotore über die SPI-Schnittstelle ansprechen willst. Da die SPI-Schnittstelle u.a. den Pin 11 nutzt, verlierst Du jetzt noch einen PWM Ausgang und dann bleibt nur noch ein einziger (Pin 3) übrig. Und das ist für den Wechselblinker halt zu wenig.
Ich habe im Bü Thread aber auch eine alternative NmraDcc.cpp Datei angehängt, die die Bitdecodierung ohne den Timer 0 macht. Bodo hat die inzwischen bei sich ausgetestet, und sie funktioniert bei ihm auch in einer Multiprotokoll-Umgebung. Wenn Du diese Datei in der NmraDcc-Lib austauscht, verwendet sie den Timer 0 nicht mehr, und die Pins 5+6 stehen wieder als PWM-Ausgänge zur Verfügung.

Zitat von digi_thomas2003
Ansonsten schon mal Danke für Arbeit hier und dass Du diese hier so bereitwillig zur Verfügung stellst!

Gerne, ist ja 'Open Source' . Mir macht es Spaß sowas auszuknobeln - und wenn es dann noch jemand brauchen kann, umso besser


viele Grüße
Franz-Peter
Ein 'elektromechanisches' Stellwerk
Der (ehemalige) 'Eisberg'


 
MicroBahner
Metropolitan (MET)
Beiträge: 2.833
Registriert am: 28.11.2012
Ort: Mittelfranken
Gleise Tillig Elite
Steuerung Eigenbau
Stromart Analog


RE: Arduino MobaTools: V2.3.1 released

#35 von digi_thomas2003 , 25.10.2015 21:00

Hallo Franz-Peter,

Zitat von MicroBahner
...
Durch die MobaTools verlierst du die PWM ausgänge 9+10, durch die Nmra Lib die Ausgänge 5+6. Damit bleiben noch 3+11 als PWM Ausgänge übrig - was ja an sich für den Bü ausreicht. Das angesprochene Problem tritt auf, wenn Du Schrittmotore über die SPI-Schnittstelle ansprechen willst. Da die SPI-Schnittstelle u.a. den Pin 11 nutzt, verlierst Du jetzt noch einen PWM Ausgang und dann bleibt nur noch ein einziger (Pin 3) übrig. Und das ist für den Wechselblinker halt zu wenig.
...



Danke für die Klarstellung!
Für mein Projekt wäre das noch genau ausreichend: 2 PWM-Ausgänge (Pin 3 + 11) für die LEDs, da ich ja mit Servos statt mit Schrittmotor arbeite.

Ich komme allerdings (berufsbedingt) erst wieder nächstes Wochenende dazu, mich weiter damit zu befassen. Bis dahin mache ich auch mal ein paar Bilder von meinem Versuchsaufbau. Zuvor heißt es allerdings noch, ein passendes BÜ-Modell bzw. entsprechende Schrankenmodelle zu finden.

Guten Start in die Woche wünscht
Thomas


Thomas
------------------
Anlage H0: U-Form, im kreativen Bau
Fahren: Tams MC
Schalten: IB
Melden: HSI 88
Steuern: TrainController 9.0 Gold
Denken: Brain 4.1


 
digi_thomas2003
InterRegioExpress (IRE)
Beiträge: 305
Registriert am: 03.05.2005
Gleise sind vorhanden
Spurweite H0
Steuerung TrainController
Stromart AC, Digital


RE: Arduino MobaTools: V2.3.1 released

#36 von Bodo , 26.10.2015 09:19

Hallo,

Zitat von MicroBahner
Wie ist das auf der Platine im Video - Nimmst Du da den Prozessor aus dem Uno raus und steckst in dort ein?

Ich habe mir bisher nur Nano-Klone gekauft. Bei mir wird es darauf hinauslaufen, dass immer direkt ein Nano in der Anwendungsschaltung steckt. Bei 4€ / Stück ist das noch verkraftbar und bei Änderungen sehr praktisch


ja - das mit dem Umstecken war die Idee. Der einzige Vorteil ist aber inzwischen die Baugröße. Ein 328 ist immer noch flacher als ein Nano auf Stecksockel. Die Nachteile überwiegen und der Preisvorteil ist inzwischen nicht mehr gegeben. Nun habe ich aber ein paar 328er mit Quarzen und allem Zubehör hier rumliegen - und deshalb werde ich die auch noch da einsetzen, wo ich ein Projekt als vorläufig abgeschlossen ansehe. Für Neuanschaffungen würde ich auch eher den Nano empfehlen und diesen ggf. per Sockel in eine anwendungsspezifische Platine einbinden.

Viele Grüße, Bodo


Die Freiheit des Menschen liegt nicht darin, dass er tun kann, was er will, sondern dass er nicht tun muss, was er nicht will. (Jean-Jacques Rousseau)

Meine Anlage - Meine Dauerbaustelle
Platinen für Modellbahn- und Arduino-Anwendungen


 
Bodo
InterCityExpress (ICE)
Beiträge: 2.471
Registriert am: 28.04.2005
Homepage: Link
Gleise C-Gleis, Lenz 0
Spurweite H0, 0
Steuerung MS2 & CS2
Stromart Digital


RE: Arduino MobaTools: V2.3.1 released

#37 von UweS , 26.10.2015 10:02

Zitat von digi_thomas2003

Beim Hardware-Aufbau bin ich geringfügig von Deinem Plan abgewichen, ich habe mich an Schaltplan von Mynabay orientiert, also keinen Kondensator auf der DCC-Seite und dort auch nur einen Widerstand mit 1k eingefügt.

Ergebnis: Funktioniert einwandfrei!



Hallo Thomas,

wo findet man den Schaltplan den Du verwendet hast?


Uwe

Lenz Digital seit 1993, seit 2020 Roco z21 und steuern mit der Z21 App, Traincontroller Gold, Mikromodellbau, Car Motion


 
UweS
InterRegioExpress (IRE)
Beiträge: 340
Registriert am: 02.02.2012
Spurweite H0, 1
Stromart Digital


RE: Arduino MobaTools: V2.3.1 released

#38 von digi_thomas2003 , 26.10.2015 10:22

Hallo Uwe,

Zitat von UweS
...
wo findet man den Schaltplan den Du verwendet hast?



den findest Du z.B. auf der Seite von Ruud Boer: https://rudysmodelrailway.wordpress.com/software/
Er hat hier im Forum auch schon einigen zum Einsatz eines Arduinos auf der Modellbahn geschrieben.

Freundliche Grüße
Thomas


Thomas
------------------
Anlage H0: U-Form, im kreativen Bau
Fahren: Tams MC
Schalten: IB
Melden: HSI 88
Steuern: TrainController 9.0 Gold
Denken: Brain 4.1


 
digi_thomas2003
InterRegioExpress (IRE)
Beiträge: 305
Registriert am: 03.05.2005
Gleise sind vorhanden
Spurweite H0
Steuerung TrainController
Stromart AC, Digital


RE: Arduino MobaTools: V2.3.1 released

#39 von UweS , 28.10.2015 12:05

Zitat von digi_thomas2003
Beim Hardware-Aufbau bin ich geringfügig von Deinem Plan abgewichen, ich habe mich an Schaltplan von Mynabay orientiert, also keinen Kondensator auf der DCC-Seite und dort auch nur einen Widerstand mit 1k eingefügt.

Ergebnis: Funktioniert einwandfrei!



Hallo Thomas,
Hallo Franz-Peter,

Damit ich es auch verstehe.
Warum der Kondensator und die beiden Widerstände?

Laut Thomas, funktioniert es auch ohne?


Uwe

Lenz Digital seit 1993, seit 2020 Roco z21 und steuern mit der Z21 App, Traincontroller Gold, Mikromodellbau, Car Motion


 
UweS
InterRegioExpress (IRE)
Beiträge: 340
Registriert am: 02.02.2012
Spurweite H0, 1
Stromart Digital


RE: Arduino MobaTools: V2.3.1 released

#40 von Mape71 ( gelöscht ) , 28.10.2015 13:01

Hallo Uwe,

nach meinem Verständnis dienen die Widerstände als Vorwiderstand für die LED im Optokoppler, oder zumindest für die externe Diode (falls der Optokoppler integrierte Widerstände haben sollte., was ich aber nicht glaube). Der Kondensator wurde von Franz-Peter bereits weiter oben als Störkondensator für den Fall hochfrequenter Störsignale beschrieben, aber auch dort schon als eher optional. Ich verwende ihn nicht und es funktioniert einwandfrei, die Widerstände sind aus meiner Sicht unverzichtbar (man könnte sich aber sicher auch auf einen z.B. 1k Widerstand beschränken, wie es auch bei anderen Schaltungsbeispielen zu sehen ist).
Hoffe das hilft weiter,
Grüße

Marko


Mape71

RE: Arduino MobaTools: V2.3.1 released

#41 von UweS , 29.10.2015 19:46

Hallo Marko,

ja es hilft mir weiter.

Da ich bereits anderweitig Optokoppler verwendet habe eben ohne diese Widerstände, war ich etwas unschlüssig.
Der Kondensator wegen der Störsignale, habe ich überlesen.

Habe jetzt die nötigen Teile bestellt, dann versuche ich auch den Arduino als DCC Decoder zu benutzen.


Uwe

Lenz Digital seit 1993, seit 2020 Roco z21 und steuern mit der Z21 App, Traincontroller Gold, Mikromodellbau, Car Motion


 
UweS
InterRegioExpress (IRE)
Beiträge: 340
Registriert am: 02.02.2012
Spurweite H0, 1
Stromart Digital


RE: Arduino MobaTools: V2.3.1 released

#42 von linkeschiene , 04.11.2015 10:13

Hallo Franz-Peter,
als absoluter Neuling in Fragen Arduino usw. bin ich hier gelandet. Du schreibst weiter oben, dass Du einem Arduino-Mini dem Attiny vorziehen würdest. Kann ich mit dem Mini die von Dir hier dargestellten MobaTools verwenden?

Ich finde es übrigens toll, was Du hier machst, denn das Programmieren will ich eigentlich nicht unbedingt lernen und so kann ich als Laie doch einiges für meine MoBa nutzen.

LG Gunter


linkeschiene  
linkeschiene
Regionalbahn (RB)
Beiträge: 31
Registriert am: 02.09.2009
Spurweite H0
Stromart AC


RE: Arduino MobaTools: V2.3.1 released

#43 von Bodo , 04.11.2015 10:44

Hallo Gunter,

ich antworte mal für Franz-Peter ... bei den Arduinos gibt´s inzwischen sehr viele ähnliche Namen. So hat z.B. der "Arduino Pro Mini" keinen USB-Anschluss. Was jetzt mit Arduino Mini gemeint ist, weiß ich nicht. Mit einem Arduino Nano geht´s aber auf jeden Fall, da der ebenfalls den ATmega328 als Prozessor hat. Der ist auch sehr günstig zu bekommen und platzsparend. Allerdings muss man ihm einen "Sockel" verschaffen oder ihn auf ein Steckbrett setzen. Eigentlich ist er nur dann zweite Wahl, wenn man ein Standard-Arduino-Shield verwenden will - das passt natürlich nicht.

Viele Grüße, Bodo


Die Freiheit des Menschen liegt nicht darin, dass er tun kann, was er will, sondern dass er nicht tun muss, was er nicht will. (Jean-Jacques Rousseau)

Meine Anlage - Meine Dauerbaustelle
Platinen für Modellbahn- und Arduino-Anwendungen


 
Bodo
InterCityExpress (ICE)
Beiträge: 2.471
Registriert am: 28.04.2005
Homepage: Link
Gleise C-Gleis, Lenz 0
Spurweite H0, 0
Steuerung MS2 & CS2
Stromart Digital


RE: Arduino MobaTools: V2.3.1 released

#44 von linkeschiene , 04.11.2015 11:02

Hallo Bodo,
schön, dass Du Dich so schnell meldest.
Ich meinte den hier: Arduino Pro Mini Atmega328 Development 5V 16MHZ Board Modul Compatible TE156

Da gibts 5 Stck für 15€ = 3 € pro Stück. Wenn der wesentlich mehr kann als ein Attiny, wäre das natürlich wirklich eine Alternative in bestimmten Bereichen.

Auf den USB-Anschluss kann ich verzichten, denn lt. dem was ich im Netzt gefunden habe, kann ich mit dem UNO die Programmierung vornehmen.

Beste Grüße

Gunter


linkeschiene  
linkeschiene
Regionalbahn (RB)
Beiträge: 31
Registriert am: 02.09.2009
Spurweite H0
Stromart AC


RE: Arduino MobaTools: V2.3.1 released

#45 von MicroBahner , 04.11.2015 13:04

Hallo Gunter,
Bodo hat dich ja schon umfassend informiert - danke Bodo.
Die MobaTools sollten auf allen Arduinos laufen, die den 328 einsetzen (Auf dem Arduino Mega mit dem 2560 habe ich es auch schon getestet).
Zur Programmierung des Arduino Mini brauchst Du eigentlich nur einen USB-seriell Umsetzer. Die gibt es auch recht günstig, und Du brauchst ihn ja nur einmal, da er nur für's hochladen des Programms gebraucht wird ( oder wenn Du zur Fehlersuche was ausgeben willst). So ein Mini kann schon wesentlich mehr als ein ATtiny. Der ATtiny lohnt sich meiner Meinung nach nur noch, wenn es sehr klein sein muss.
Der Unterschied Nano - Mini ist im Wesentlichen nur der beim Nano integrierte USB-seriell Umsetzer ( und die andere Bauform und Pin-belegung)


viele Grüße
Franz-Peter
Ein 'elektromechanisches' Stellwerk
Der (ehemalige) 'Eisberg'


 
MicroBahner
Metropolitan (MET)
Beiträge: 2.833
Registriert am: 28.11.2012
Ort: Mittelfranken
Gleise Tillig Elite
Steuerung Eigenbau
Stromart Analog


RE: Arduino MobaTools: V2.3.1 released

#46 von linkeschiene , 04.11.2015 13:58

Hallo Franz-Peter,
vielen Dank für die Antworten.
Ich habe mir jetzt die 5 Stck und einen Konverter bestellt.

Ich werde bestimmt noch weitere Fragen haben, wenn die Dinger bei mir sind.

Beste Grüße

Gunter


linkeschiene  
linkeschiene
Regionalbahn (RB)
Beiträge: 31
Registriert am: 02.09.2009
Spurweite H0
Stromart AC


RE: Arduino MobaTools: V2.3.1 released

#47 von digi_thomas2003 , 04.11.2015 15:47

Hallo Gunter,

und noch ein nicht ganz unwesentlicher Unterschied, wenn die Pins knapp werden: Beim Nano gibt es zwei analoge Pins mehr als beim Uno oder Mini - A6 und A7

Freundliche Grüße
Thomas


Thomas
------------------
Anlage H0: U-Form, im kreativen Bau
Fahren: Tams MC
Schalten: IB
Melden: HSI 88
Steuern: TrainController 9.0 Gold
Denken: Brain 4.1


 
digi_thomas2003
InterRegioExpress (IRE)
Beiträge: 305
Registriert am: 03.05.2005
Gleise sind vorhanden
Spurweite H0
Steuerung TrainController
Stromart AC, Digital


RE: Arduino MobaTools: V2.3.1 released

#48 von linkeschiene , 04.11.2015 16:06

Hallo Thomas,
auch Dir ein herzliches Dankeschön für den Hinweis. Ich glaube ich werde mich ja nach Anforderung für die eine oder andere Variante Entscheiden. Gut zu wissen, dass mehrere Möglichkeiten gibt.

Beste Grüße

Gunter


linkeschiene  
linkeschiene
Regionalbahn (RB)
Beiträge: 31
Registriert am: 02.09.2009
Spurweite H0
Stromart AC


RE: Arduino MobaTools: V2.3.1 released

#49 von Wolfgang181 , 04.11.2015 18:02

Hallo Ihr Arduino Experten,
ich bin ja von den Socken was man mit dem Teil alles machen kann, ich habe jetzt seit einer Woche mein Straterset und stehe noch ganz am Anfang, ein Lauflicht habe ich aber schon zusammen mit meinem neffen hin bekommen. Vielen dank für die ganzen Anregungen und Infos, insbesondere zu den Servos

Viele Grüße

Wolfgang


Wolfgang181  
Wolfgang181
InterCity (IC)
Beiträge: 656
Registriert am: 09.02.2014
Ort: im schönen MV in der Nähe von Greifswald
Gleise Piko A Gleis bei Anlage 1 & Fleischmann Profigleis bei Anlage 2 mit IB II bzw IB com und TC Silber
Spurweite H0
Stromart DC, Digital


RE: Arduino MobaTools: V2.3.1 released

#50 von MicroBahner , 05.11.2015 18:25

Hallo,
Noch ein Hinweis zu den Anschlüssen A6 und A7: Bei den Mini-Klonen, die ich bisher gesehen habe, sind diese Anschlüsse schon auch erreichbar. Allerdings nicht immer an den äußeren Pin-Reihen.
Wobei man dabei berücksichtigen muss, dass A6 und A7 reine analoge Eingänge sind. Im Gegensatz zu den Anschlüssen A0 bis A5 lassen die sich nicht alternativ als digitale Ein- oder Ausgänge verwenden.

@Wolfgang: ja die Arduino sind schon faszinierend. Hast Du schon Pläne, was Du bei der Moba damit machen willst?


viele Grüße
Franz-Peter
Ein 'elektromechanisches' Stellwerk
Der (ehemalige) 'Eisberg'


 
MicroBahner
Metropolitan (MET)
Beiträge: 2.833
Registriert am: 28.11.2012
Ort: Mittelfranken
Gleise Tillig Elite
Steuerung Eigenbau
Stromart Analog


   

Alte Märklin Transformator ersetzen

  • Ähnliche Themen
    Antworten
    Zugriffe
    Letzter Beitrag
Xobor Einfach ein eigenes Forum erstellen
Datenschutz