• Hallo TT-Modellbahner, schön, dass du zu uns gefunden hast.
    Um alle Funktionen nutzen zu können, empfehlen wir dir, dich anzumelden. Denn vieles, was das Board zu bieten hat, ist ausschließlich angemeldeten Nutzern vorbehalten. Du benötigst nur eine gültige E-Mail-Adresse und schon kannst du dich registrieren.
    Deine Mailadresse wird für nichts Anderes verwendet als zur Kommunikation zwischen uns.
    Die Crew des TT-Boardes

DCC Servodekoder für 32 Servos

@Koch:

Quarze laufen wesentlich stabiler als die internen RC-Oszillatoren.

...die Unterseite. Sieht schlimmer aus als es ist. (...)
Bevor jetzt wieder Stimmen von wegen Zuverlässigkeit laut werden....
Dat hält schon aber:
...löten (ist) nicht das Problem, aber such dort mal nen Fehler.
Ich hab früher mal so gearbeitet und kam dann schon auf Schichtdicken von 3cm Litze unter der Platine. Aber wehe man verfranzte sich mal...
 
@ Koch 69

Mit dem Quarz hast du richtig erkannt. Nachdem mein Prototyp fertig war habe ich auch mal Stabilitätstests durchgeführt.
Spannungsschwankungen habe nichts ausgemacht, aber die Temperaturabhängigkeit des internen RC Ozillators bewirkte
dann doch eine Änderung der Servoposition (Lötkolben in die Nähe des Kontrollers gehalten) die nicht tolerabel war.
Für den Einsatz des Quarzes brauchst du übrigens kein neues Programm, sondern mußt nur an den Fusebits etwas ändern.
Welche das genau sind weiß ich aus dem Kopf auch nicht, muß du mal ins Datenblatt schauen.

@ E-Fan

hast schon recht auf nen cm komme ich auch, man muss halt sorfältig arbeiten. An meinem Eigenbaucomputer mußte ich mal
den RAM-Bildspeicher wechseln. Da Fassungen teuer und Mangelware waren, hatte ich alle 8 ICs gelötet. Das war wie eine OP.
Erst mit Pinzette und Lötkolben das "OP-Feld" freilegen dann Zinn absaugen, Schaltkreise wechseln und wieder an den
Tropf anschließen.
 
Moin Gordon,

na dann werde ich doch mal noch die Quarze zu meinen Decodern dazubraten. Ist ja kein großer Aufwand.
Denke mal, das ich am Wochenende alles installiert habe und dann auch mal ausgiebige Test´s mit meiner Lenzzentrale (LZV100, Software3.5) und Traincontroller machen kann.
Habe dann folgendes mit deinem Decoder und diversen Servo´s realisiert: Lokschuppentore öffnen und schließen, Flügelsignale (auch dreibegriffige), Wasserkräne drehen (sogar mit zwei Schwenkrichtungen) und mein Faller Bekohlungskran (Drehen und Verfahren). Wenn meine WEB-Cam einigermaßen brauchbare Aufnahmen macht werde ich dann mal ein paar Aufnahmen machen und Dir natürlich als erstes zukommen lassen.
Und natürlich steht die Einladung zum :bia:

Gruß

Thorsten
 
So für alle Interressenten mal die Schaltpläne der Kernkomponenten. Zur Erläuterung: Es ist nur eine Versorgungsspannung
notwendig, entweder 12V- oder 16V~. Die Spannung für die Relais (bei mir 9V) und die 5V für die Elektronik werden auf der
Dekoderplatine daraus erzeugt. Alle daran angeschlossenen Komponenten erhalten von hier Ihre Spannung.
Direkt an der Weiche wird die Anschlusseinheit positioniert. Auf ihr wird die Servospannung erzeugt und die Relais untergebracht.
Hier wird auch über eine Steckerleiste die Polarisierung angeschlossen. Zusätzlich stehen auf Schraubklemmen noch potenzialfreie
Kontakte zur freien Verfügung. Eine Besonderheit ist die Servospannungserzeugung. Nach vielen Versuchen habe ich diese Variante
gewählt. Die Servospannung wird beim Einschalten über den Kondensator und Transistor langsam erhöht. Gleichzeitig habe ich
das Programm so abgeändert, das die Impulserzeugung verzögert beginnt. Diese Variante hat den Vorteil das der Einschaltruck
der Servos auf fast nicht mehr sichtbar reduziert werden konnte, jeder Servo hat seine eigene Versorgung und dadurch kaum
eine Beeinflussung durch andere Servos und es ist kein Kühlkörper notwendig. Die Mehrkosten liegen dabei im Centbereich.
Verbunden wird das ganze über 6adriges Modularkabel. Die gibt es fertig oder ganz leicht zum selbermachen. Kabellängen von 2m
sollten noch unkritisch sein. Die Verkabelung der Anlage dürfte damit sehr übersichtlich werden.
Auf der Dekoderplatine ist noch eine S88 Rückmeldeeinheit integriert und für den Analogfreund 8 Optokoppler um Tasten direkt
anschließen zu können. Es erfolgt immer eine Einknopfbedienung. Bei jedem Tastendruck wird umgestellt.
Ich hab noch eine kleine Schaltung zur Anzeige der Weichenstellung entwickelt. Die wird an den S88 Out Anschluss angesteckt
und von dieser auch versorgt. Dort werckelt der gleiche Atmel8515 nur mit einem anderem Programm. Es können insgesamt
32 Low Current LEDs angeschlossen werden. Zum Besseren Verständnis habe ich mal ein Übersichtsbild gemacht.
Programmiert wird das ganze über eine kleine Platine mit 13 Tasten und einem Flachbandkabel.
Sobald das alles fertig ist mache ich auch noch Bilder.

So im Anhang der Schaltplan vom Dekoder der Anschlusseinheit der Rückmeldeeinheit sowie
Übersichtsschaltbilder Analog, Digital, Digital PC
 

Anhänge

  • SV8PRDA_V2_4.GIF
    SV8PRDA_V2_4.GIF
    30,7 KB · Aufrufe: 90
  • SV8_Anschlusseinheit.GIF
    SV8_Anschlusseinheit.GIF
    14,9 KB · Aufrufe: 140
  • SV8_ana.GIF
    SV8_ana.GIF
    18,5 KB · Aufrufe: 74
  • SV8_dig.GIF
    SV8_dig.GIF
    16,5 KB · Aufrufe: 68
  • SV8_dig_PC.GIF
    SV8_dig_PC.GIF
    16,5 KB · Aufrufe: 60
Hört (liest) sich gut an! Hast du vor das irgendwie zu vertreiben???
Wäre nämlich (z.Zt. im Baustadium und umstieg auf TC) 'ne Überlegung wert, sich auch mal mit der Servoproblematik auseinanderzusetzen. Wo liegen denn die geschätzten Kosten?
 
Hallo tt-mocki

ein Vertrieb ist nicht geplant, ist nur ein Hobbyprojekt. Ich biete jedem Interressenten die Schaltungsunterlagen
und programmierte Controller zum Selbstkostenpreis an, bauen mußt du schon selbst.
Zu den Kosten. Die Anschlusseinheiten kosten etwa 3,30€. Ich habe dafür 9V Relais mit 2 Wechslern von Pollin
genommen (0,75€/St). Die Dekoderplatine kostet bei voller Bestückung mit allen Optionen 13,67€ macht ca 1,71€ pro Servo.
Das ergibt ca 10€ pro Weiche bei Verwendung von 4,99€ Servos. Das Verbindungskabel kostet im Selbstbau 0,25€ bei 1m Länge.
Dabei ist aber zu berücksichtigen das man einen sehr komfortablen Antrieb erhält und die Rückmeldung bereits integriert ist.

Ich hab noch eine Funktion integriert. Man kann den Dekoder auch als Schaltdekoder verwenden. Die Anschlusseinheit
braucht dann nur mit einem Relais bestückt werden.

Wenn alles fertig ist reiche ich noch Bilder und Beschreibungen nach
 
Moin moin Gordon,

na, da warst du gestern Abned ja noch recht fleissig.
Habe in deinem neuen Schaltplan ein paar Änderungen zu dem mit Stand 10.11. entdeckt und dazu mal ein paar Fragen:
1. In der Variante vom 10.11. sind die Widerstände R3-R6 von PD0 -PD3 gegen +, in der neuen von PD4-PD7, welche ist die sinnvollere?
2. Ich habe nur 8 Leitungen zur Tastaturmatrix, in deiner neuen sind zwei zusätzliche nach + und zur LED, welche zusätzliche Möglichkeit habe ich damit?
3. PE1, welcher bei mir ja noch der Ausgang für die Einschaltverzögerung ist, hat nun eine Verbindung über einen Jumper gegen Masse. Welche Option habe ich damit?
4. Die Variante der Stromerzeugung für die Servo´s ist eine klasse Idee, muss ich glatt mal testen. Allerdings seit dem ich den Decoder so eingestellt habe, das er den Servoimpuls nach Stellende abschaltet und mit den HS 55 Servo´s ist das Problem auch sehr minimal. Von meinen HS 55 zuckt nur eine sehr wenig. Nur die billigen von Conrad sind da sehr empfindlich. Werde aber die deine Spannungsversorgung mal testen und natürlich berichten.

Gruß aus Hamburg

Thorsten
 
ein Vertrieb ist nicht geplant, ist nur ein Hobbyprojekt.

Ich denke, das Besorgen und Zusammenbauen der "Kleinteile" ist nicht das Problem. Für die meisten stellen ein solches nur die Leiterplatte und das Programmieren dar. Fertige Prozessoren bietest du ja an, was ist mit der LP? Digitalzentrale? Nur mal als Idee :idee:.
 
Hallo Thorsten,

erstmal vielen Dank für die Tests. Dann werde ich mal schnell deine Fragen beantworten.

zu 1

der alte Schaltplan hatte offensichtlich noch einige Fehler. Ich hatte den auch nach dem letzten Festplattencrash nicht mehr.
richtig ist der neue. Die Widerstände sollen die Eingänge schnell wieder nach High ziehen. Die internen sind sehr hochohmig.

zu 2

die zwei zusätzlichen Leitungen sind für die Programmier LED. Ich habe mir eine kleine Programmierplatine gebaut auf der die
13 Tasten und die LED drauf sind. Wenn du den Anschluss für die normale Bedienung nimmst kann die LED auch weggelassen werden.

zu 3

mit dem Jumper an PE1 gibt es jetzt zwei Betriebsarten. Jumper offen ist wie immer und Jumper gesteckt ist die Betriebsart Schaltdekoder.
Der Servo steht in Mittelstellung und die Umlaufzeit ist minimal. Jetzt können die Polarisierungsrelais als Schaltrelais benutzt werden.
Außerdem können so die Servos gut ausgerichtet werden auf Mittelposition der Weiche.

zu 4

diese Variante der Stromversorgung funktioniert erst mit der neuen Softwareversion, da der Servoimpuls erst ca 1s nachdem der Servo
Spannung bekommen hat zugeschaltet werden darf. Zum probieren mußt du dieses verhalten per Hand simulieren. Probier das aber bitte
nicht bei deinen eingebauten Teilen, wenn der Impuls da ist und die Spannung langsam steigt fahren manche Servos erst mal in die Endlage.
Das ist auch der Grund die 5V auf der Platine zu erzeugen und nicht zentral.

@Per

eine professionelle Leiterplatte lohnt sich nur bei großen Stückzahlen. Der ganze Spareffekt ist weg wenn ich für die LP nochmal
das gleiche löhne wie für den Rest. Außerdem habe ich im Moment noch kein Layoutprogramm. Eagle ist mir zu kompliziert und in der
Freeversion auf halbes Eurokartenformat beschränkt. Ich hab mal die Demoversion von Sprint-Layout probiert und damit kommt man
ohne große Einarbeitungszeit klar, kostet aber knapp 40€.

Wenn einer also eine Idee hat sowas günstig herzustellen hab ich nichts dagegen.
 
Also wenn jemand das Layout zur Verfügung stellt könnte ich ( bei kleinen Stckzahlen ) die hier ätzen .
Einseitiges Layout wäre ja am besten , doppelseitig ist aber auch machbar .

Nur über das Bohren müsste man sich unterhalten , weil ich das überhaupt nicht mag . :(
 
Moin moin,

Danke erst mal für deine schnellen Antworten, Gordon.
Das mit der Stromversorgung ist bei mir ja kein Problem, da ich die Decoder so einstelle, das der Servoimpuls nur bei einem Stellimpuls gesendet wird. Dürfte also kein Problem sein.
Werde dann gleich mal einen weiteren Decoder zusammenbraten und dann mal hier auch ein Bild eines "Einfachservodecoder" einstellen.
Den einen Fehler im Schaltplan hatte ich ja schon gefunden und dir gemailt.
Die neue Stromversorgung kann ich eh erst am Wochenende testen, da ich dafür leider nicht alle Bauteile vorrätig habe. Aber der große C liegt bei mir fast auf dem Arbeitsweg.
Werde dann mal den Lötkolben anwerfen.

Gruß

Thorsten
 
Hilfe

Moin, moin,

mal eine Frage an die Atmel-Profis. Habe nun einen weiteren Decoder incl. externen Quarz zusammengelötet.
Test mit fertig programmierten Decoder einwandfrei.
Habe nun den Atmel versucht auf externen Quarz umzuprogramieren und das dementsprechende Fuse gesetzt. Ergebniss: Decoder funktioniert nicht, umprogramieren nicht mehr möglich. Bekomme von ISP-Programmer nur noch eine Fehlermeldung und kann weder die Fusebits ändern noch den Atmel neu programieren.
Welchen Fehler könnte ich gemacht haben?

Wie versprochen anbei die Bilder meines Servodecoder´s in der Einfachausführung, da ich weder die Polarisierung noch eine Rückmeldung brauche. Die Rückmeldung wäre aber rechts vom Controller ohne Drahtverhau einfach hinzuzufügen. Dank der sehr schlauen Belegung der Pin´s.
 

Anhänge

  • Tastenmatrix.jpg
    Tastenmatrix.jpg
    87,8 KB · Aufrufe: 55
  • Tastenmatrix unten.jpg
    Tastenmatrix unten.jpg
    84,7 KB · Aufrufe: 42
  • Servodecoder neu .jpg
    Servodecoder neu .jpg
    93,1 KB · Aufrufe: 62
  • Servodecoder neu unten.jpg
    Servodecoder neu unten.jpg
    96 KB · Aufrufe: 47
Meines wissens ist das Bit bei Quarz nicht gesetzt, bei internen Oszie wird es gesetzt.
ein zurücksetzen ist nur durch komplettes löschen des Atmel möglich. Danach muß das Programm neu aufgespielt werden. Dazu müßte vorher das komplette programm aus dem Speicher ausgelesen werden, was aber auch nur geht, wen das Leseschutzbit NICHT gesetzt wurde. Somit könnte zwar ein Programierter Baustein mit Quarz jederzeit auf internen generator umgeschaltet werden, aber leider nur mit kompletten neuaufspielen des Programs zurück zum Externen Generator.
Ich glaube aber nicht, das das Programm nicht Lesegeschützt wurde. Wenn du also ein Löschen über Programmer gemacht hast, so ist der Chip leider so integent wie ein neuer aus dem laden.
 
Fusebits

@Koch69

tut mir leid das du mit den Fusebits Probleme hast. Ich habe als Anhang mal die Fusebitbelegung eines neuen,
dann mit 8 MHz internem Takt und 8 MHz Quarz. Wenn sich dein Controller nicht mehr ansprechen läßt deutet
das darauf hin das kein Takt vorhanden ist. Überprüfe nochmal ob der Quarz richtig angeschlossen ist. Du kannst
auch mal einen mit ner kleineren Frequenz nehmen. Ansonsten kann wohl nur noch ein High Voltage Programmer
weiterhelfen. Sowas habe ich aber auch nicht. Schreibe mal welche Bits du genau geändert hast. Der Takt wird
nicht mit einem Fuse eingestellt sondern mit 5. Ansonsten versuchs mal hier http://www.mikrocontroller.net/

So hier die Belegung der Fusebits erstellt mit Ponyprog
links neu, mitte 8 MHz intern, rechts 8 MHz Quarz

EDIT habe gerade im Mikrocontrollerforum gelesen das du auch versuchen kannst einen externen Takt in Xtal1
einzuspeisen, und dann die Fusebits ändern
 

Anhänge

  • Fuses8515neu.JPG
    Fuses8515neu.JPG
    30,3 KB · Aufrufe: 46
  • Fuses8515int8.JPG
    Fuses8515int8.JPG
    30,4 KB · Aufrufe: 22
  • Fuses8515Q8MHz.JPG
    Fuses8515Q8MHz.JPG
    30,4 KB · Aufrufe: 21
Moin Gordon,

erst mal Danke!!!!!!!!!!!!!!!! für deine Hilfe. Hatte schon mal das Problem das die Atmels etwas empfindlich sind bei falsch gesetztem Takt.
Beim Atmelstudio sehen leider die Fusebits etwas anders aus aus bei Ponyprog (Mehr Möglichkeiten).
Habe aber bei mir in der Firma einen Atmelprofi (grins), habe die beiden Atmels mit, er kann Sie mir Retten.
Wenn ich die Richtigen Fusbits habe, were ich mal aus dem Atmelstudio eine Hardcopy machen und hier natürlich einstellen.

Gruß
 
Hallo Koch

es gibt nicht mehr Fusebits wie auf meinen Bildschirmfotos. Das Studioprogramm nimmt dir lediglich das Nachschauen im Datenblatt
ab indem es für alle Möglichen Kombinationen entsprechende Fusebitsätze erzeugt. Das kann dann aber auch schon mal in die Hose
gehen. Der Takt wird nur mit CKSEL 0-3 und CKOPT definiert. Das ergibt dann rein rechnerisch 32 Möglichkeiten.
Du bist aber nicht der einzige der damit Probleme hat. Im Mikrokontroller Forum sind Seitenweise Problemberichte über falsche Fusebits drin.
Dann drück ich dir die Daumen das du deine Kontroller wieder hin bekommst. Wenn die neue Softwareversion fertig geprüft ist
bekommst du ein Update.

Viele Grüße aus Brandenburg
 
Wenn ich das lese muss ich sagen das ich irgendwie froh bin nen Galep zu haben .

Da muss ich mich notgedrungen hinsetzen und in's DB schauen und das Ding selbst zusammenstellen wenn zu den Config Bit's nichts weiter angegeben wurde .
Aber bisher hat das immer geklappt und hatte noch keine Probleme damit .
 
@Tobi05

der Blick ins Datenblatt kann eh nie schaden, damit man weiß was man da tut. Um die Verwirrung komplett zu machen hat Atmel festgelegt
das ein programmiertes Fusebit 0 ist und ein unprogrammiertes 1. Es lebe die Logik. Ansonsten ist es aber sehr gur im DB beschrieben was
die einzelnen Bits bewirken. Man muß nur ein wenig englisch können.
 
@Tobi05

festgelegt das ein programmiertes Fusebit 0 ist und ein unprogrammiertes 1

Negative Logik eben . Hab ich alles in meiner Ausbildung durch . Auch umrechnen von Dual/Oktal/Dezimal/Hex in das jeweils andere per Hand/Zettel ( PC + Taschenrechner kann ja jeder ) .

Allerdings hab ich keine Ahnung von µC Programmierung . :(
Hatte vor etlichen Jahren nur mit Basic/TP/VB/Delphi gearbeitet und PC Progs geschrieben aber mittlerweile alles wieder vergessen .

Könnte da evtl. mal in absehbarer zeit deine hilfe gebrauchen . Hab hier was mit Bremsgenerator/Booster in der mache .
 
ich hatte sowas auch in der Ausbildung. Vor 18 Jahren habe ich mal mit einem Einplatinencomputer mit U880 (Z80 Nachbau)
das Programmieren in Assembler angefangen. Das war um einiges komplizierter als heute. Erst das Programm auf Papier aufschreiben
dann den Operationscode aus Tabellen ermitteln und die Sprungdistanzen berechnen dann ins EPROM brennen und laut fluchen
weil das Programm nicht so funktioniert wie es soll. Heute machst du Studio auf schreibst den Quelltext am Computer, kannst
das Programm simulieren und wenn es fertig ist in den Controller übertragen. Du brauchst auch nicht mehr eine Handvoll weiterer
Schaltkreise um ne funktionierende Schaltung aufzubauen (siehe Schaltbilder) und du bekommst alles supergünstig.
Lad dir einfach das Studioprogramm von Atmel runter (kostet nichts) und schon kanst du anfangen. Damit lassen sich auch komplexe
Programme testen, und du kannst die einzelnen Befehle auch im Einzelschritt ausführen lassen. So lernt man am besten, und wenn du
mal nicht weiter kommst helfe ich dir gern.
 
So mal wieder zurück zum Thema. Ich habe heute die Anzeigeeinheit fertig bekommen. Die Schaltung hatte ich ja schon gepostet.
Außer einem Widerstand und einem Kondensator und natürlich der LEDs mit Vorwiderstand braucht man keine weitere Außenbeschaltung.
Das sollte wohl jeder hin kriegen. Für die LEDs müssen auf jeden Fall Low Current Typen genommen werden. Die haben bei 2mA eine
außreichende Helligkeit. Hier mal mein Versuch in SMD Technik. Die Helligkeit täuscht, in Wirklichkeit sind sie viel heller, aber durch den
Scanner kommt das nicht so rüber.

S88Anz.JPG

Die Stromversorgung erfolgt vom Servodekoder so das ein 6 adriges Kabel ausreicht. Es reicht eine Anzeigeeinheit für zwei Dekoder.
 
Hallo Gordon,

ich habe bisher Low-Currrent nur als bedrahtete LEDs gesehen. Gibt es ein öffentliche Bezugsquelle für LowC SMD LED? Und was kosten die?

Viele Grüße

Loetkolben
 
Zurück
Oben