RE: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#201 von vauge , 02.07.2017 17:14

Hi,
ich bin auch Nutzer dieser genialen Lösung. Benutze sie zwar für die Steuerung von Servos, aber trotzdem ist mir in deinem Sketch in einer Zeile etwas aufgefallen:
Dein Sketch

1
 
const byte iniMode          = 0x50 | AUTOADDR | ROCOADDR ;  // default-Betriebsmodus ( CV47 )
 



Orginalsketch

1
2
 
const byte iniMode          = 0x50 | AUTOADDR /*| ROCOADDR*/;  // default-Betriebsmodus ( CV47 )
 
 


Ich benutze auch die Rocomaus und die Z21 und habe es so geändert

1
2
 
const byte iniMode          = 0x50 | ROCOADDR /*| AUTOADDR*/;  // default-Betriebsmodus ( CV47 )
 
 


Damit vermeidet man die Verschiebung bei Roco um die 4 Adressen

Hoffentlich hilft es.

Nochmal an Franz-Peter herzlichen Dank für diese tolle Lösung.

Gruss

vauge


vauge  
vauge
Beiträge: 2
Registriert am: 12.04.2017
Gleise Tillig
Spurweite H0, H0e
Stromart DC, Digital


RE: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#202 von Detsimbo , 02.07.2017 21:27

[quote="Uwe HAL" post_id=1702085 time=1498988860 user_id=24585]
Irgendwas mache ich falsch, ich weiß nur nicht was. Kann mir da vielleicht jemand weiterhelfen? Mit einen DCC-Sniffer habe ich überprüft, ob das DCC-Signal am Arduino ankommt, alles gut.
[/quote]
Hallo Uwe...

versuch es doch ma mit der original h. Datei. mein 1. Signal reagiert auf die Adresse 60 also habe ich dem Decoder die Adresse 56 gegeben

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
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
 
/* Universeller DCC - Zubehördecoder
**************************************************************************************************
* Beispieldatei für L i c h t h a u p t s i g n a l e (ohne Vorsignale am gleichen Mast).
* Die Pins sind für den Arduino Nano ausgelegt.
* Es können 3- oder 5-begriffige Hauptsignale angesteuert werden. Die Anzahl der
* Ansteuerbaren Signale hängt von der Zahl der Led's ab:
* Ohne Zugbeeinflussungsrelais können 6 3-Begriffige (3 Leds) oder 3 4-begriffige Signale ( 5/6 Leds) angesteuert werden
* Es müssen nur gegebenenfalls die PinZuordnungen angepasst werden. Alle anderen Paramter können
* unverändert bleiben.
* Die Leds werden aktiv HIGH angesteuert. Für 16V ausgelegte Lichtsignale müssen über einen invertierenden
* ULN2803 (o.ä.) angesteuert werden
* Beim Lichtsignaldecoder ist kein Rückkanal für das Auslesen der CV-Werte vorgesehen
**************************************************************************************************
*
*
* Eigenschaften:
* Bis zu 8 (aufeinanderfolgende) Zubehöradressen ansteuerbar. Je nach verfügbaren Digitalausgängen
* sind ggfs auch mehr möglich.
* 1. Adresse per Programmierung einstellbar
*
* Das Verhalten der konfigurierten Funktionen wird über CV-Programmierung festgelegt:
* Bei Servoausgängen die Endlagen und die Geschwindigkeit
* bei Doppelspulenantrieben die Einschaltzeit der Spulen.
* bei blinkenden Ausgängen das Blinkverhalten ( in V3.0 noch nicht realisiert )
*
* Aufteilung der CV's:
* CV Bedeutung
* 47 Kennung für Erstinitiierung, allgemeine Optionen die für den gesamten Decoder gelten
* 48/49 Pom-Adresse
* 50-54 Parameter für 1. Weichenadresse
* 55-59 Parameter für 2. Weichenadresse
* ...
* Bedeutung der CV's bei den verschiedenen Funktione (CV-Nummern für 1. Weichenadresse)
* FSIGNAL2 Lichtsignalfunktion mit 1..3 Weichenadressen
* bei den Folgeadressen ist als Typ FSIGNAL0 einzutragen
* Lichtsignale starten beim Einschalten immer im Zustand 0 (Bitmuster CV51)
* CV50 Signalmodus: Bit7=1 : invertiert die Softled-Ausgänge (HIGH=OFF) (MobaTools ab V0.9)
* Bit 2..0: Bitmuster hard/soft gibt an, welche Ausgänge 'hart' umschalten (Bit=1)
* und welche Ausgänge weich überblenden (Bit=0)
* CV51 Bitmuster der Ausgänge für Befehl 1.Adresse 0 (rot)
* CV52 Bitmuster der Ausgänge für Befehl 1.Adresse 1 (grün)
* CV53 Index des Vorsignals am gleichen Mast ( 0 …. )
* CV54 Bitmuster der Zustände, bei denen das Vorsignal dunkel ist:
* Bit 0: Befehl 1.Adresse 0 (rot)
* Bit 1: Befehl 1.Adresse 1 (grün)
* Bit 2: Befehl 2.Adresse 0 (rot)
* u.s.w.
* FSIGNAL0 1. Folgeadresse (optional)
* CV55 Bit 2.. 0 Bitmuster hard/soft gibt an, welche Ausgänge 'hart' umschalten (Bit=1)
* und Welche Ausgänge weich überblenden (Bit=0)
* CV56 Bitmuster der Ausgänge für Befehl 2.Adresse 0 (rot)
* CV57 Bitmuster der Ausgänge für Befehl 2.Adresse 1 (grün)
* CV58 reserved
* CV59 reserved
* FSIGNAL0 2. Folgeadresse (optional)
* CV60 Bit 2.. 0 Bitmuster hard/soft gibt an, welche Ausgänge 'hart' umschalten (Bit=1)
* und Welche Ausgänge weich überblenden (Bit=0)
* CV61 Bitmuster der Ausgänge für Befehl 3.Adresse 0 (rot)
* CV62 Bitmuster der Ausgänge für Befehl 3.Adresse 1 (grün)
* CV63 reserved
* CV64 reserved
*
* FVORSIG Vorsignalfunktion
* weitgehend wie FSIGNAL2 ausser:
* CV53 low Byte der Adresse des angekündigten Hauptsignals
* CV54 high Byte der Adrsse des angekündigten Hauptsignals
*/
#define ENCODER_DOUBLE // Eigenschaften des Drehencoders (Impulse per Raststellung)
 

// vom Anwender änderbare Parameter um den Zubehördecoder an die verwendete HW anzupassen
 
// Beispiel für Variante mit Licht-Ausfahrsignal mit Vorsignal, mit Betriebsmode Led an Pin 13 (interne Led)
 
//----------------------------------------------------------------
// Hardwareabhängige Konstante ( nicht per CV änderbar)
//----------------------------------------------------------------
const byte dccPin = 2;
const byte ackPin = NC;
 
// Eingänge analog: ( Bei Nano und Mini - Versionen kann hier auch A7 und A6 verwendet werden, um mehr
// digital nutzbare Ports freizubekommen.
// beim UNO sind A7+A6 nicht vorhanden! )
const byte betrModeP = A7; // Analogeingang zur Bestimmung des Betriebsmodus. Wird nur beim
// Programmstart eingelesen!
const byte resModeP = A6; // Rücksetzen CV-Werte + Mittelstellung Servos
 
// Eingänge digital (die Ports A0-A5 lassen sich auch digital verwenden): ---------
 
// Drehencoder zur Servojustierung ...........
//#define ENCODER_AKTIV // Wird diese Zeile auskommentiert, wird der Encoder nicht verwendet.
// Die Encoder-Ports werden dann ignoriert, und können anderweitig
// verwendet werden.
const byte encode1P = NC; // Eingang Drehencoder zur Justierung.
const byte encode2P = NC;
// ............................................
//-------------------------------------------------------------------------------------------------------
// Betriebswerte ( per CV änderbar ) Diese Daten werden nur im Initiierungsmodus in die CV's geschrieben.
// Der Initiierungsmodus lässt sich per Mode-Eingang aktivieren oder er ist automatisch aktiv, wenn keine
// sinnvollen Werte im CV47 stehen.
//-------------------------------------------------------------------------------------------------------
const byte DccAddr = 46; // DCC-Decoderadresse
const byte iniMode = 0x50 | AUTOADDR /*| ROCOADDR*/; // default-Betriebsmodus ( CV47 )
const int PomAddr = 50; // Adresse für die Pom-Programmierung ( CV48/49 )
 

//Konstante für Lichtsignalfunktion
#define SIG_DARK_TIME 300 // Zeit zwischen Dunkelschalten und Aufblenden des neuen Signalbilds
#define SIG_RISETIME 500 // Auf/Abblendezeit
 
// Ausgänge: mit NC gekennzeichnete Ausgänge werden keinem Port zugeordnet. Damit können Ports gespart werden,
// z.B. wenn bei einem Servo kein Polarisierungsrelais benötigt wird
const byte modePin = 13; // Anzeige Betriebszustand (Normal/Programmierung) (Led)
 
#define MAX_LEDS 16 // default ist 16. Kann auf die tatsächlich benutzte Zahl reduziert werden, um RAM zu sparen.
// Pro Softled werden 19 Byte benötigt

const byte iniTyp[] = { FSIGNAL2, FSIGNAL0, FSIGNAL2, FSIGNAL0, FSIGNAL2, FSIGNAL0, FSIGNAL2, FSIGNAL0, FSIGNAL2, FSIGNAL0 };
const byte out1Pins[] = { A0, NC, A3, NC, 3, NC, 6, NC, 9, NC };
const byte out2Pins[] = { A1, NC, A4, NC, 4, NC, 7, NC, 10, NC };
const byte out3Pins[] = { A2, NC, A5, NC, 5, NC, 8, NC, 11, NC };

const byte iniFmode[] = { 0, 0b000100, 0, 0b000100, 0, 0b000100, 0, 0b000100, 0, 0b000100 };
const byte iniPar1[] = { 0b001001, 0b110001, 0b001001, 0b110001, 0b001001, 0b110001, 0b001001, 0b110001, 0b001001, 0b110001 };
const byte iniPar2[] = { 0b100010, 0b100110, 0b100010, 0b100110, 0b100010, 0b100110, 0b100010, 0b100110, 0b100010, 0b100110 };
const byte iniPar3[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
const byte iniPar4[] = { 0b000101, 0, 0b000101, 0, 0b000101, 0, 0b000101, 0, 0b000101, 0 };
//------------------------------------------------------------------------------------
 

 



Ich hab hier schon die Adresse passend für Dich geändert...


Grüße Detlef


 
Detsimbo
RegionalExpress (RE)
Beiträge: 94
Registriert am: 17.12.2016
Ort: Schwarzwald
Gleise Roco Geoline
Spurweite H0
Steuerung Traincontroller 9 Gold
Stromart DC, Digital


RE: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#203 von voyager , 12.07.2017 23:39

@ Franz-Peter

Hallo und Guten Abend,
gibt es für diesen DIY Decoder ein DCC Programmbeispiel für einen 28BYJ-48 Stepper. Wie und wo muss dieser deklariert werden und ist dieser blockfrei ?

Danke für ein Beispiel.


 
voyager
S-Bahn (S)
Beiträge: 13
Registriert am: 05.07.2014


RE: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#204 von MicroBahner , 13.07.2017 09:52

Hallo voyager,
danke für dein Interesse an meinem Decoder.
Bisher ist eine Ansteuerung von Schrittmotoren mit diesem Decoder nicht vorgesehen. Die zugrundeliegenden MobaTools können das zwar (nicht-blockierend), aber im Decoder wird das nicht genutzt, da mir bisher keine 'standardisierbare' Anwendung eingefallen ist. Das Problem bei einem Schrittmotor ist ja auch, das man - im Gegensatz zu einem Servo - immer eine Positionsinitiierung braucht.

Für eine Schrankensteuerung hatte ich das mal genutzt, da wird auch genau der von Dir genannte Motor eingesetzt. ( Der Sketch in dem Post funktioniert nicht mehr mit der aktuellen nmradcc-Lib, da sind kleine Anpassungen notwendig)

Was hast Du denn für eine Anwendung im Sinn?


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: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#205 von voyager , 13.07.2017 10:36

Hallo Franz-Peter,

ich würde gerne eine selbstgebaute Schiebebühne unter iTrain damit betreiben. Habe den Stepper im Sketch 4.0 eingebaut. Fährt auch sauber zu den Positionen. Aber er blockt die blinkenden LEDs und die Servos. Die können erst wieder benutzt werden wenn der Stepper seine Position erreicht hat. Ich glaube mein Problem liegt in der Benutzung von

1
2
3
4
5
6
7
8
9
10
11
12
 

 
stepmotor.attach(IN1,IN2,IN3,IN4);
 
stepmotor.setSpeed(120);
// move the number of steps
stepmotor.doSteps(val);

while( stepmotor.moving() );
standby();

 
 


 
voyager
S-Bahn (S)
Beiträge: 13
Registriert am: 05.07.2014


RE: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#206 von MicroBahner , 13.07.2017 10:55

Dein Problem liegt in dieser Zeile:

1
 
while( stepmotor.moving() ); 
 

Damit hältst Du den Sketch an, während der Schrittmotor läuft.


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: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#207 von voyager , 13.07.2017 11:07

Ohne diese Zeile läuft der Motor nicht.


 
voyager
S-Bahn (S)
Beiträge: 13
Registriert am: 05.07.2014


RE: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#208 von MicroBahner , 13.07.2017 11:15

Dann ist da noch ein anderes Problem in deinem Sketch. Die MobaTools steuern den Motor nach dem 'doSteps' im Hintergrund per Timer-Interrupt an.
Wo hast Du das denn eingefügt? Poste mal den ganzen Sketch, oder schick in mir per PN.

Edit: steht das wirklich so als Block im loop() wie Du das oben eingefügt hast? Das attach-Kommand MUSS im Setup stehen, dass darf nur 1x ausgeführt werden. Ansonsten wird der Stepper bei jedem loop-Durchlauf neu initiiert, und 'vergisst' dann den alten doStep-Befehl aus dem vorherigen Durchlauf.


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: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#209 von andiatbaden , 23.07.2017 17:38

Hallo Franz-Peter,

vielen Dank für Dein Engagement und das großartige Projekt. Ich komme selbst aus der Softwareentwicklung und weiß, wie viel Arbeit mit so etwas verbunden ist.

Ich bin momentan in der Planung für das Digitales Systeml. Ursprünglich wollte ich Can-Digital-Bahn einsetzen, das wird mir jedoch, bei der Anzahl der Weichen und Rückmelder, zu teuer. Ich habe mir jetzt einige Sachen, auf Arduino Basis, zusammengestellt. Leider weiß ich nicht, ob das so zusammen geht.

Ich fahre Märklin H0 Digital.

1. Zentrale

Hier will ich die DCC++ einsetzen: https://sites.google.com/site/dccppsite/home

2. Weichen- und Signal Decoder: Deinen Decoder

3. Rückmelder: Noch keine Ahnung
4. Booster: Noch keine Ahnung

Jetzt zu meinen Fragen:

- Passt Dein Decoder zu der Zentrale?
- Fällt Dir ein Arduino Projekt ein, mit dem ich die Rückmeldung für die besetzten Gleise per Stromerkennung machen kann?
- Was für einen Booster kann ich einsetzen?
- Was nehme ich für eine Verkabelung für das DCC-Signal?

Wenn die Fragen hier nicht reinpassen, lösche ich den Eintrag gerne wieder.


Viele Grüße aus dem Badischen

Andreas

Anlagenbau:

Andreshaim II: viewtopic.php?f=15&t=135978

Mein Planungsthread:

Andreshaim II (Neu): viewtopic.php?f=24&t=131628


andiatbaden  
andiatbaden
InterRegio (IR)
Beiträge: 181
Registriert am: 21.03.2013
Gleise Märklin K-Gleis
Spurweite H0
Stromart Digital


RE: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#210 von MicroBahner , 24.07.2017 18:19

Hallo Andreas,
erstmal vielen Dank für dein Interesse an meinem Decoder.
Dein Projekt hört sich interessant an, speziell auch die DCC++ Zentrale, die kannte ich bisher nicht.
Da diese Zentrale lt. Beschreibung ein standardmäßiges DCC/NMRA Signal erzeugt, sollte sie auf jeden Fall zu meinem Decoder kompatibel sein.

Da ich meine eigene Anlage nicht digital betreibe, kann ich zu den anderen Fragen eher wenig beitragen, meine Kenntnisse sind da eher theoretischer Natur.

Du bekommst dazu sicher mehr Antworten, wenn Du hier im digital-Bereich des Forums einen eigenen Thread dazu aufmachst. Mit einem passenden Titel schauen da sicher mehr Leute rein, als in meinen speziellen Decoder-Thread ( löschen musst Du deinen Beitrag hier aber deswegen nicht ).


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: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#211 von andiatbaden , 27.07.2017 18:06

Hallo Franz-Peter,

danke für die rasche Antwort. Bei mir hat es leider etwas gedauert, da ich hier im Urlaub bin und das WLAN defekt ist . Habe heute einen öffentlichen Hotspot zur Verfügung.

Wenn ich wieder zuhause bin, werde ich mir den Digitalbereich unter die Lupe nehmen.


Viele Grüße aus dem Badischen

Andreas

Anlagenbau:

Andreshaim II: viewtopic.php?f=15&t=135978

Mein Planungsthread:

Andreshaim II (Neu): viewtopic.php?f=24&t=131628


andiatbaden  
andiatbaden
InterRegio (IR)
Beiträge: 181
Registriert am: 21.03.2013
Gleise Märklin K-Gleis
Spurweite H0
Stromart Digital


RE: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#212 von KlausMerkert , 16.08.2017 14:20

Hallo Franz-Peter,

ich habe jetzt unseren Servo-Decoder auf die neueste Version des Zubehördecoders gebracht. Leider funktioniert bei mir jetzt Pom nicht mehr. Habe ich etwas falsch gemacht? Jumper auf Stellung 1, habe A5 und A6 vertauscht, Schaltbild und Dateien im Anhang.

Viele Grüße

Klaus

Dateianlage:
Sie haben nicht die nötigen Rechte, um die angehängten Dateien zu sehen

KlausMerkert  
KlausMerkert
RegionalExpress (RE)
Beiträge: 75
Registriert am: 01.08.2015


RE: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#213 von FarFarAway , 17.08.2017 14:01

Hallo zusammen,

Einige werden noch meine Segmentdrehscheibe kennen, die ich vor ein paar Jahren zusammengeklöppelt habe. Einen Antrieb hat es dazu nie gegeben und das will ich nun nachholen. Jeder Antrieb braucht auch eine Steuerung und die soll natürlich über DCC erfolgen. Da ich mit "Standard" schon immer auf Kriegsfuss stand, muss da natürlich was spezielles her. Also ein DIY Arduino DCC Zubehördecoder!

Da ich kein Platinendesigner und auch nix zum Ätzen habe muss das mit Lochraster passieren. Da hab ich dann mal so nen Dingen entworfen und wollte das mal hier vorstellen. Vielleicht kann mir ja auch einer sagen ob da noch Fehler drin stecken. Dabei dann viel Spass beim suchen!

Also erst mal ne kurze Beschreibung, was ich machen will:
Der Antrieb ist von eine alten Drucker/Scanner entliehen. Der Scanner wurde über einen Stepping motor angetrieben. Dieser soll nun über eine Linearbewegung einen mitnehmen bewegen, der auf der Achse der Segmentdrehscheibe sitzt. Über den ganzen weg braucht der Stepper ca 7600 Schritte, was eine ausreichend exakte Positionierung ermöglichen sollte. Meine Segmentdrehscheibe hat zusätzlich noch eine Verriegelung, die über einen Servo betrieben werden soll.

Der Ablauf wird also vollgendermassen aussehen:
- Verriegelung öffnen
- Wenn fertig Bühne bewegen
- Wenn am Ziel Verriegelung schliessen

Status Leds sollen die Position 1-3 als auch den Status der Bewegung anzeigen.

Der Drehregler zum einstellen des Servos und der Bühnenpositionen soll benutzt werden.

Manuelle Taster sollen die Bewegung initiieren und eine Nullpunktsstellungssuche auslösen können.
Ein Schalter zur Nullpunktserkennung ist vorgesehen.

Die Portbelegung des Arduino wird wie folgt aussehen:

DCC Input: D2
DCC Acknowledge: D4

Pom Mode: A0

Stepper Motor: D9, D10, D11, D12
Servo: D3

Status Leds: D5, D6, D7, D13

Drehregler: A5, A6, A7
Buttons: A1, A2, A3, A4
NullPunktSchalter: D8



Die grünen Verbindungen werden auf der Unterseite der Platine verdrahtet.

Dann fehlt nur noch die angepasste Programmierung...
(Da aus meinem Garagenprojekt (3,5m x 7m) ja eh wieder nix wird hab ich ja Zeit.
Warum daraus nix wird? Wir verkaufen grad unser Haus um von vorn anzufangen. Bauen, Haus bauen meine ich!)

Cheers,
Klaus


alle sagten: das geht nicht! dann kam einer daher, der wußte das nicht - und hat's gemacht ...

mein projekt: betriebswerk an kreuzenden hauptstrecken
mein projekt: endbahnhof brois


 
FarFarAway
InterCity (IC)
Beiträge: 718
Registriert am: 04.04.2012
Spurweite H0
Stromart DC, Digital


RE: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#214 von fbstr , 17.08.2017 18:30

Das ist ja sehr interessant Klaus! Da bin ich gespannt.

Bei mir liegen noch andere Treiberplatinen seit Monaten bereit, aber momentan bin ich noch mit der Bühnengestaltung beschäftigt.

Was genau meinst Du mit "Verriegelung"? Planst Du in der Bühne ein Servo einzusetzen, welches dann einen Riegel in die Gube schiebt?


Gruss
Frank
---------------------------------------------------------------------------------------------------------------------
MobaLedLib Wiki
Projekt "Bahnpark Augsburg"
Stummitreff BB: jeden 3. Freitag im Monat im Haus Sommerhof in Sindelfingen


 
fbstr
Metropolitan (MET)
Beiträge: 2.523
Registriert am: 28.08.2016
Ort: Stuttgart
Gleise Peco Code 75, Trix C
Spurweite H0, H0e
Steuerung YD7001, MobaLedLib, MirZ21, Lenz LZV100
Stromart DC, Digital


RE: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#215 von FarFarAway , 17.08.2017 21:54

Hi Frank,

Die Verriegelung an der Bühne kannst du am besten auf den Bildern in diesem Thread sehen:
viewtopic.php?p=990567#p990567

Der Servo selbst wird dann auf der Achse unter der Bühne montiert und bewegt den Schieber mittels eines Federstahldrahtes in einer Messingröhre. Das Ende der Röhre (und auch mehr davon) kannst du auf den Fotos erkennen.

Cheers,
Klaus


alle sagten: das geht nicht! dann kam einer daher, der wußte das nicht - und hat's gemacht ...

mein projekt: betriebswerk an kreuzenden hauptstrecken
mein projekt: endbahnhof brois


 
FarFarAway
InterCity (IC)
Beiträge: 718
Registriert am: 04.04.2012
Spurweite H0
Stromart DC, Digital


RE: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#216 von fbstr , 17.08.2017 22:15

Zitat

Die Verriegelung an der Bühne kannst du am besten auf den Bildern in diesem Thread sehen:
viewtopic.php?p=990567#p990567



Wow, was für ein tolles Messingteil hast Du denn da zusammengebaut! Absolut fantastisch! Da wird es wirklich Zeit für einen Antrieb.


Gruss
Frank
---------------------------------------------------------------------------------------------------------------------
MobaLedLib Wiki
Projekt "Bahnpark Augsburg"
Stummitreff BB: jeden 3. Freitag im Monat im Haus Sommerhof in Sindelfingen


 
fbstr
Metropolitan (MET)
Beiträge: 2.523
Registriert am: 28.08.2016
Ort: Stuttgart
Gleise Peco Code 75, Trix C
Spurweite H0, H0e
Steuerung YD7001, MobaLedLib, MirZ21, Lenz LZV100
Stromart DC, Digital


RE: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#217 von MicroBahner , 19.08.2017 18:07

Hallo,
nachdem mein letzter Post dem Plattencrash zum Opfer gefallen ist, hier also nochmal:

@Klaus 'nearby'

Zitat

Leider funktioniert bei mir jetzt Pom nicht mehr. Habe ich etwas falsch gemacht?

Das Decoderprojekt ruhte in den letzten Wochen etwas . Ich muss mir das in den nächsten Tagen mal genauer anschauen, so auf dem erstn Blick sehe ich da nichts. Da steht ja auch noch eine Meldung von Jürgen zur STM32-Version aus. Ich werde also die Ruhephase auf jeden Fall beenden müssen .

@Klaus 'FarFarAway'
Das ist ein hochinteressantes Projekt, dass Du da vorhast. Deine Segmentscheibe ist ja ein absolutes Träumchen und verdient definitiv einen adäquaten Antrieb. Allerdings sind da aus meiner Sicht noch ein paar Fragen offen, und direkt so wie Du die HW geplant hast wird es wohl nicht funktionieren. Der Standard-Zubehördecoder hier wird ja auch nicht ohne Anpassungen einsetzbar sein - Schrittmotore unterstützt er überhaupt nicht.
Mein Vorschlag wäre daher, dass Du für dieses Projekt einen eigenen Thread aufmachst. Das ist schon so interessant - das verdient was eigenens . Da können wir das dann alles mal diskutieren. Es bleibt sicher übersichtlicher wenn wir dieses spezielle ( und ich denke recht umfangreiche ) Thema in einem eigenen Faden behandeln.


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: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#218 von FarFarAway , 21.08.2017 00:19

Hi Franz-Peter und andere,

ich habe einen neuen Thread aufgemacht den ihr hier finden könnt.

Cheers,
Klaus


alle sagten: das geht nicht! dann kam einer daher, der wußte das nicht - und hat's gemacht ...

mein projekt: betriebswerk an kreuzenden hauptstrecken
mein projekt: endbahnhof brois


 
FarFarAway
InterCity (IC)
Beiträge: 718
Registriert am: 04.04.2012
Spurweite H0
Stromart DC, Digital


RE: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#219 von KlausMerkert , 03.09.2017 15:23

Hallo Franz-Peter,

vielleicht kannst du mir Tipps zum Debugging geben, um meinem POM-Problem auf die Spur zu kommen.
Hast du eine Zentrale, die POM kann?

Viele Grüße

Klaus


KlausMerkert  
KlausMerkert
RegionalExpress (RE)
Beiträge: 75
Registriert am: 01.08.2015


RE: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#220 von MicroBahner , 04.09.2017 21:33

Hallo Klaus,
ja sorry, bin leider immer noch nicht dazu gekommen ops: . Ich muss mir jetzt erstmal wieder eine Testumgebung aufbauen.
Die ganze PoM-Geschichte wird ja eigentlich komplett von der nmradcc-Lib abgehandelt. Man legt nur bei der Initiierung fest, ob PoM aktiv sein soll oder nicht.
Du könntest erstmal checken, ob auch die richtige Initiierung aktiviert wird.

Für Tests habe ich nur eine Roco Multimaus, und die MS2. PoM habe ich damit aber schon getestet.


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: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#221 von KlausMerkert , 05.09.2017 15:50

Hallo Franz-Peter,

um auch ohne DCC mit dem Drehencoder CVs einstellen zu können, habe ich meinen Zusatz modifiziert:

Zitat
// Zusatz emk
alt1 = aktuell1;
aktuell1 = digitalRead(eingang1);
if (alt1 != aktuell1) {
dccSoll[0] = alt1;
ChkAdjEncode( 0 );
};
...


Das scheint zu funktionieren, aber nach der CV-Änderung durch den Drehencoder schaltet das Servo erst im zweiten Zyklus. Sollte hier noch etwas bedacht werden?

Auch ist mir aufgefallen, dass der Drehencoder mit einer bestimmten Geschwindigkeit gedreht werden muss, dass er funktioniert. Es kann auch vorkommen, dass die Veränderung in die falsche Richtung geschieht.

Viele Grüße

Klaus

Dateianlage:
Sie haben nicht die nötigen Rechte, um die angehängten Dateien zu sehen

KlausMerkert  
KlausMerkert
RegionalExpress (RE)
Beiträge: 75
Registriert am: 01.08.2015


RE: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#222 von MicroBahner , 07.09.2017 11:03

Hallo Klaus,

Zitat

Das scheint zu funktionieren, aber nach der CV-Änderung durch den Drehencoder schaltet das Servo erst im zweiten Zyklus. Sollte hier noch etwas bedacht werden?

Das habe ich nicht ganz verstanden. Was meinst Du mit 'schaltet im 2. Zyklus'?

Zitat

Auch ist mir aufgefallen, dass der Drehencoder mit einer bestimmten Geschwindigkeit gedreht werden muss, dass er funktioniert. Es kann auch vorkommen, dass die Veränderung in die falsche Richtung geschieht.

Das sollte so nicht sein. Wobei ich inzwischen die Encoderauswertung etwas anders machen würde - das sollte dann zuverlässiger sein. Das werde ich bei Gelelgenheit auch mal ändern. Grundsätzlich hat es aber auch so bei mir funktioniert.
Wobei einer meiner Encoder sehr stark prellt. Da hilft es dann, an den beiden EIngängen einen Kondensator von jeweils ca. 10nF nach Gnd zu schalten. Vielleicht ist das bei deinem auch so?


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: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#223 von KlausMerkert , 07.09.2017 17:56

Hallo Franz-Peter,

geschaltet habe ich durch eine Vebindung mit Masse, wobei der Eingang mit 10k gegen +5V liegt. Gesetzt der Fall, der Eingang ist mit Masse verbunden und ich löse die Verbindung. Jetzt müsste das Servo schalten, tut es aber nicht. Verbinde ich wieder mit Masse und löse die Verbindung, so schaltet das Servo. Der Aussetzer passiert nur nach der CV-Veränderung.
Ich habe den gleichen Encoder wie du, also probiere ich mal die Kondensatoren.

Viele Grüße

Klaus


KlausMerkert  
KlausMerkert
RegionalExpress (RE)
Beiträge: 75
Registriert am: 01.08.2015


RE: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#224 von MicroBahner , 11.09.2017 10:36

Hallo Klaus,
so, jetzt mal ein aktives Lebenszeichen von mit . Meine neue TestHW ist jetzt fertig, und ich habe deine Version mal draufgespielt. Ich habe dabei lediglich die Pin Zuordnungen an meine Hw angepasst. Nun zu deinen Problemen:
1) kein POM
das kann ich nicht nachvollziehen, bei mir funktioniert POM einwandfrei ( mit der MS2 ). Auch die Adresse habe ich bei 9999 belassen. Allerdings muss der Initiierungsmode natürlich entsprechend umgestellt werden ( Spannungsteiler 1:2 ), denn im Standard-Mode ( Mode-Eingang offen ) ist POM nicht aktiv.

2) Problem mit Drehencoder
auch das kann ich nicht nachvollziehen. Mit meinem Encoder geht es eigentlich problemlos. Auch wenn ich ganz langsam Schritt für Schritt schalte folgt das Servo immer in der richtigen Richtung. Wobei ich jetzt noch nicht mal Kondensatoren angeschlossen habe.

3) Verzögerte Reaktion auf die Schalter nach Einstellung mit Drehencoder.
Das passiert bei mir auch. Da werde ich jetzt mal nachforschen woran das liegt.


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: Arduinobasierter DIY Zubehördecoder V7.0.0 freigegeben

#225 von KlausMerkert , 12.09.2017 17:36

Hallo Franz-Peter,

der POM-Fehler ist gefunden. Ich habe beim Bestücken der Platinen 10k und 22k vertauscht. ops: Alle unsere Tests hatten wir mit einem gefädelten Exemplar gemacht, wo alles stimmte. Nachdem sonst alles funktionierte, fiel mir zunächst die neue Softwareversion als Ursache ein. Das war kurzsichtig. Beim Nachmessen der Eingangsspannungen bei A6 (bei uns der Analogeingang) fiel mir dann die Sache auf. Ich bitte sehr um Entschuldigung für deinen Aufwand. Tut mir echt leid.

Viele Grüße

Klaus


KlausMerkert  
KlausMerkert
RegionalExpress (RE)
Beiträge: 75
Registriert am: 01.08.2015


   

Lenz Booster LV102 mit Booster Mangementsystem BMS-D von Boll
rtDrive Lenz Digikeijs DR5000

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