Hilfe zu Arduino(UNO)Sketch gesucht für FB gefunden/ Danksagungen

Bereich für alle Themen rund um die Modellbahn-Elektronik und elektr. Umbauten für Analogbetrieb.
Benutzeravatar

MicroBahner
Metropolitan (MET)
Beiträge: 2544
Registriert: Mi 28. Nov 2012, 14:24
Nenngröße: H0
Stromart: analog DC
Steuerung: Microprozessor-Eigenbau
Gleise: Tillig
Wohnort: Mittelfranken
Alter: 70

Re: Hilfe zu Arduino(UNO)Sketch gesucht für FB

#151

Beitrag von MicroBahner »

Hallo Rainer,
ts250x hat geschrieben: Di 20. Aug 2019, 17:33 Per Versuch und Irrtum habe ich dann auch noch gelernt dass bei der Modifikation des Motors " T1Stepper.setSpeedSteps( 200, 50 );"
die "200" nicht für Stepps pro Umdrehung stehen sondern für die Geschwindigkeit mit der sich der Motor dreht...
Man könnte ja auch mal die Doku lesen .... :roll:

ts250x hat geschrieben: Mi 21. Aug 2019, 11:27 Ich hoffe das ich die "Blöcke" Richtig eingeteilt habe :mrgreen: :?: :?:
leider nein :(

Alle Abfragen, welche Taste gedrückt ist, müssen innerhalb des Blockes von

Code: Alles auswählen

 if (irrecv.decode(&results)) {
    ...
    ...
    irrecv.resume();
 }
gemacht werden. Und dann gehört da auch nur ein irrecv.resume(); am Ende hin. Bei so vielen Abfragen würde sich auch eine switch Anweisung anbieten.

Warum ordnest Du deinen Pins erst ordentlich Namen zu, wenn Du die dann im Sketch nicht nutzt ? Es ist immer besser, den Pins Namen zugeben, und diese dann auch konsequent zu benutzen.

Und den Pin 1 solltest Du generell nicht benutzen. Pins 0 und 1 werden für die Kommunikation zum PC benötigt.
Benutzeravatar

Threadersteller
ts250x
InterRegioExpress (IRE)
Beiträge: 259
Registriert: Sa 11. Mär 2017, 16:10
Nenngröße: H0
Stromart: digital
Steuerung: MultiMaus Tablett
Gleise: Roco-line o Bettung
Wohnort: Vorderpfalz
Alter: 60
Deutschland

Re: Hilfe zu Arduino(UNO)Sketch gesucht für FB

#152

Beitrag von ts250x »

Hallo Franz-Peter, Hallo Alle Mitleser,
MicroBahner hat geschrieben: Do 22. Aug 2019, 14:37 ts250x hat geschrieben: ↑Di 20. Aug 2019, 18:33
Per Versuch und Irrtum habe ich dann auch noch gelernt dass bei der Modifikation des Motors " T1Stepper.setSpeedSteps( 200, 50 );"
die "200" nicht für Stepps pro Umdrehung stehen sondern für die Geschwindigkeit mit der sich der Motor dreht...
Man könnte ja auch mal die Doku lesen ....
Oder sich mal Gedanken machen was wohl SpeedSteps übersetzt bedeuten könnte :oops:
Da der" Fehler!" schon ziemlich lange in meinen Sketchen besteht hatte ich mir da keine Gedanken mehr darum gemacht.... Die Folge daraus
besteht denn auch in einer anderen Funktion: Diese Hier Stepper4 myStepper( int steps360, byte mode ); dort habe ich einen Echten Fehler eingegeben
Da sich meine Motoren ja mit, wie ich jetzt festgestellt habe, mit 20 Stepps /U drehen und nicht mit 200.... das erklärt vielleicht auch warum die Motoren so schnell Heiß werden... denn da werden die Spulen 10x so schnell umgepolt..
MicroBahner hat geschrieben: Do 22. Aug 2019, 14:37 Alle Abfragen, welche Taste gedrückt ist, müssen innerhalb des Blockes von
CODE: ALLES AUSWÄHLEN

if (irrecv.decode(&results)) {
...
...
irrecv.resume();
}
gemacht werden.
Das habe ich dann geändert.... Vielen DANK für`s nachschauen.... :gfm:
MicroBahner hat geschrieben: Do 22. Aug 2019, 14:37 Bei so vielen Abfragen würde sich auch eine switch Anweisung anbieten.
Tja ich weis, doch das kann ich offensichtlich nicht anwenden, da fehlen mir die notwendigen Schreibweisen Kenntnisse....
MicroBahner hat geschrieben: Do 22. Aug 2019, 14:37 Warum ordnest Du deinen Pins erst ordentlich Namen zu, wenn Du die dann im Sketch nicht nutzt ?
Da dachte ich es wäre vom Programmablauf schneller wenn der Chip nicht so Viele Buchstaben lesen muss :shock:
MicroBahner hat geschrieben: Do 22. Aug 2019, 14:37 Und den Pin 1 solltest Du generell nicht benutzen. Pins 0 und 1 werden für die Kommunikation zum PC benötigt.
OK, dann lasse ich diese unbelegt.
Jedoch hatte ich nicht geplant dass der UNO am PC angeschlossen ist wenn das Programm mal funktioniert...

So und nun kommt doch gleich das nächste Problem:
Es geht um die Spannungsversorgung von UNO,Treiber,ULN2803.
Meine Idee war alles auf eine Platine zu löten mit einer Spannungsquelle, = Netzteil 12 V
Dazu folgende Pin Belegungen:
+12 V
am UNO an PIN V in
am Treiber an Vmot
am ULN an Pin 10 und an die LED`s jeweils an Anode

GND vom Netzteil:

GND an UNO unter der Vin
GND an Treiber Vmot-(GND)
Und jetzt kommt mein Problem
Laut Schaltplan soll der GND vom ULN = Pin 9 mit dem UNO GND verbunden werden und gleichzeitig noch mit der Spannungsversorgung
der LED`s
Dadurch würde ich am Treiber die LogikGND mit Vmot GND brücken.
Ich denke das ist der Tod vom Treiber.... oder täusche ich mich da ??

Ach so hier nochmal der Überarbeitete Sketch.......

Code: Alles auswählen

#include <MobaTools.h>
#include <IRremote.h>
Stepper4 T1Stepper(20, A4988);
Stepper4 T2Stepper(20, A4988);
Stepper4 T3Stepper(20, A4988);
int T1Slp_PIN = 12;
int T2Slp_PIN = 9;
int T3Slp_PIN = 6;
int T1Led_PIN = 3;
int T2Led_PIN = 2;
int T3Led_PIN = 1;
int RECV_PIN = 13;                          //Pin am Arduino UNO für den IR Receiver
IRrecv irrecv(RECV_PIN);                   //Objekt initialisieren für die IR Übertragung
decode_results results;

void setup()
{
  T1Stepper.attach( 10, 11 );   // Step und Dir-Pin
  T1Stepper.setSpeedSteps( 200, 50 );  // !muss noch kontroliert werden ob das so passt!
  T2Stepper.attach( 7, 8 );   // Step und Dir-Pin
  T2Stepper.setSpeedSteps( 200, 50 );
  T3Stepper.attach( 4, 5 );   // Step und Dir-Pin
  T3Stepper.setSpeedSteps( 200, 50 );

  irrecv.enableIRIn();   //Dieser Befehl initialisiert den Infrarotempfänger.
  pinMode(T1Slp_PIN, OUTPUT);     // Treiber 1 EIN-Ausschalten
  pinMode(T2Slp_PIN, OUTPUT);     // Treiber 2 Ein-Ausschalten
  pinMode(T3Slp_PIN, OUTPUT);     // Treiber 3 Ein-Ausschalten
  pinMode(3, OUTPUT);             // LED`s Stand 1
  pinMode(2, OUTPUT);             // LED`s Stand 2
  pinMode(1, OUTPUT);             // LED`s Stand 3
  pinMode(RECV_PIN, INPUT);         //Den IR Pin als Eingang deklarieren.
  Serial.begin(9600);             //Serielle kommunikation mit 9600 Baud beginnen.
}

void loop()
{

  if (irrecv.decode(&results)) {
    Serial.println (results.value, DEC);

    if (results.value == 16724175) {          // wenn der Infrarot Empfänger die Zahl der Taste 1 erkennt
      digitalWrite(T1Slp_PIN, HIGH);
      T1Stepper.doSteps(300);                 //  Taste 1 macht 300 Schritte nach „rechts“
    }
    if (results.value == 16718055) {           // Taste 2
      digitalWrite(T1Slp_PIN, HIGH);

      T1Stepper.doSteps(-300);                // macht 300 Schritte nach „links“
    }


    if (!T1Stepper.moving() ) {
      digitalWrite(T1Slp_PIN, LOW);
    }

    if (results.value == 16716015) {           // Taste 4
      digitalWrite(T2Slp_PIN, HIGH);
      T2Stepper.doSteps(300);                 //  Taste 4
    }
    if (results.value == 16726215) {           // Taste 5
      digitalWrite(T2Slp_PIN, HIGH);
      T2Stepper.doSteps(-300);                 //  Taste 5
    }


    if (!T2Stepper.moving() ) {
      digitalWrite(T2Slp_PIN, LOW);
    }

    if (results.value == 167288765) {           // Taste 7
      digitalWrite(T3Slp_PIN, HIGH);
      T3Stepper.doSteps(300);                 // Taste 7
    }

    if (results.value == 16730805) {           // Taste 8
      digitalWrite(T3Slp_PIN, HIGH);
      T3Stepper.doSteps(-300);              //  Taste 8
    }



    if (!T3Stepper.moving() ) {
      digitalWrite(T3Slp_PIN, LOW);
    }
    if (results.value == 16756815) {           // Taste 3
      digitalWrite(3, HIGH);
      delay(500);
      digitalWrite(3, LOW);
      delay(250);
      digitalWrite(3, HIGH);
      delay(500);
      digitalWrite(3, LOW);
      delay(300);
      digitalWrite(3, HIGH);
      delay(750);
      digitalWrite(3, LOW);
      delay(500);
      digitalWrite(3, HIGH);
      delay(1000);
      digitalWrite(3, LOW);
      delay(300);
      digitalWrite(3, HIGH);


    }
    if (results.value == 16734885) {           // Taste 6
      digitalWrite(2, HIGH);
      delay(500);
      digitalWrite(2, LOW);
      delay(250);
      digitalWrite(2, HIGH);
      delay(500);
      digitalWrite(2, LOW);
      delay(300);
      digitalWrite(2, HIGH);
      delay(750);
      digitalWrite(2, LOW);
      delay(500);
      digitalWrite(2, HIGH);
      delay(1000);
      digitalWrite(2, LOW);
      delay(300);
      digitalWrite(2, HIGH);


    }

    if (results.value == 16732845) {           // Taste 9
      digitalWrite(1, HIGH);

      delay(500);
      digitalWrite(1, LOW);
      delay(250);
      digitalWrite(1, HIGH);
      delay(500);
      digitalWrite(1, LOW);
      delay(300);
      digitalWrite(1, HIGH);
      delay(750);
      digitalWrite(1, LOW);
      delay(500);
      digitalWrite(1, HIGH);
      delay(1000);
      digitalWrite(1, LOW);
      delay(300);
      digitalWrite(1, HIGH);

    }

    if (results.value == 16738455) {           // Taste 0 = Stand 3 Licht Aus
      digitalWrite(1, LOW);
    }
    if (results.value == 16750695) {           // Taste +100  = Stand 2 Licht Aus
      digitalWrite(2, LOW);
    }
    if (results.value == 16756815) {           // Taste +200  = Stand 1 Licht Aus
      digitalWrite(3, LOW);
    }
    irrecv.resume();
  }
}
Ich traue mich schon gar nicht mehr zu Fragen ob sich das mal Jemand ( HALLO Franz-Peter) :fool: anschauen würde :D
Gruß Rainer bleibt gesund
Benutzeravatar

Threadersteller
ts250x
InterRegioExpress (IRE)
Beiträge: 259
Registriert: Sa 11. Mär 2017, 16:10
Nenngröße: H0
Stromart: digital
Steuerung: MultiMaus Tablett
Gleise: Roco-line o Bettung
Wohnort: Vorderpfalz
Alter: 60
Deutschland

Re: Hilfe zu Arduino(UNO)Sketch gesucht für FB

#153

Beitrag von ts250x »

Hallo Zusammen,
Ich habe es hinbekommen. sowohl die Motoren lassen sich Steuern als auch die LED`s lassen sich An-Aus schalten..
Das einzigste was ich nicht hinbekommen habe ist ,dass die Motoren nicht Heiß werden...
Auch mit 20 Stepps / U ist das nicht besser.... Jetzt bleibt mir nur noch als Lösung die Ströme weiter zu begrenzen....

Ach ja der Sketch oben funktioniert so nicht ich lasse Ihn trotzdem mal drin !

Falls es jemand interessiert, Hier der Sketch:

Code: Alles auswählen

#include <MobaTools.h>
#include <IRremote.h>
Stepper4 T1Stepper(20, A4988);
Stepper4 T2Stepper(20, A4988);
Stepper4 T3Stepper(20, A4988);
int T1Slp_PIN = 12;
int T2Slp_PIN = 9;
int T3Slp_PIN = 6;
int T1Led_PIN = 3;                     // Gebäude Innenbeleuchtung Stand 1
int T2Led_PIN = 2;                     // Gebäude Innenbeleuchtung Stand 2
int T3Led_PIN = 14;                    // = A0, Gebäude Innenbeleuchtung Stand 3
int LedA1_PIN = 15;                    // = A1, Außenbeleuchtung Gebäude
int LedA2_PIN = 16;                    // = A2, Außenbeleuchtung Drehscheibe 1
int LedA3_PIN = 17;                    // = A3, Außenbeleuchtung Drehscheibe 2

int RECV_PIN = 13;                          //Pin am Arduino UNO für den IR Receiver
IRrecv irrecv(RECV_PIN);                   //Objekt initialisieren für die IR Übertragung
decode_results results;

void setup()
{
  T1Stepper.attach( 10, 11 );   // Step und Dir-Pin
  T1Stepper.setSpeedSteps( 200, 50 );  // !muss noch kontroliert werden ob das so passt!
  T2Stepper.attach( 7, 8 );   // Step und Dir-Pin
  T2Stepper.setSpeedSteps( 200, 50 );
  T3Stepper.attach( 4, 5 );   // Step und Dir-Pin
  T3Stepper.setSpeedSteps( 200, 50 );

  irrecv.enableIRIn();   //Dieser Befehl initialisiert den Infrarotempfänger.
  pinMode(T1Slp_PIN, OUTPUT);     // Treiber 1 EIN-Ausschalten
  pinMode(T2Slp_PIN, OUTPUT);     // Treiber 2 Ein-Ausschalten
  pinMode(T3Slp_PIN, OUTPUT);     // Treiber 3 Ein-Ausschalten
  pinMode(T1Led_PIN, OUTPUT);             // LED`s Stand 1
  pinMode(T2Led_PIN, OUTPUT);             // LED`s Stand 2
  pinMode(T3Led_PIN, OUTPUT);             // LED`s Stand 3
  pinMode(LedA1_PIN, OUTPUT);
  pinMode(LedA2_PIN, OUTPUT);
  pinMode(LedA3_PIN, OUTPUT);
  pinMode(RECV_PIN, INPUT);         //Den IR Pin als Eingang deklarieren.
  Serial.begin(9600);             //Serielle kommunikation mit 9600 Baud beginnen.
}

void loop()
{

  if (irrecv.decode(&results)) {
    Serial.println (results.value, DEC);

    if (results.value == 16724175) {          // wenn der Infrarot Empfänger die Zahl der Taste 1 erkennt
      digitalWrite(T1Slp_PIN, HIGH);
      T1Stepper.doSteps(300);                 //  Taste 1 macht 300 Schritte nach „rechts“
    }
    if (results.value == 16718055) {           // Taste 2
      digitalWrite(T1Slp_PIN, HIGH);

      T1Stepper.doSteps(-300);                // macht 300 Schritte nach „links“
    }





    if (results.value == 16716015) {           // Taste 4
      digitalWrite(T2Slp_PIN, HIGH);
      T2Stepper.doSteps(300);                 //  Taste 4
    }
    if (results.value == 16726215) {           // Taste 5
      digitalWrite(T2Slp_PIN, HIGH);
      T2Stepper.doSteps(-300);                 //  Taste 5
    }




    if (results.value == 16728765) {           // Taste 7
      digitalWrite(T3Slp_PIN, HIGH);
      T3Stepper.doSteps(300);                 // Taste 7
    }

    if (results.value == 16730805) {           // Taste 8
      digitalWrite(T3Slp_PIN, HIGH);
      T3Stepper.doSteps(-300);              //  Taste 8
    }




    if (results.value == 16743045) {           // Taste 3
      digitalWrite(T1Led_PIN, HIGH);
      delay(500);
      digitalWrite(T1Led_PIN, LOW);
      delay(250);
      digitalWrite(T1Led_PIN, HIGH);
      delay(500);
      digitalWrite(T1Led_PIN, LOW);
      delay(300);
      digitalWrite(T1Led_PIN, HIGH);
      delay(750);
      digitalWrite(T1Led_PIN, LOW);
      delay(500);
      digitalWrite(T1Led_PIN, HIGH);
      delay(1000);
      digitalWrite(T1Led_PIN, LOW);
      delay(300);
      digitalWrite(T1Led_PIN, HIGH);


    }
    if (results.value == 16734885) {           // Taste 6
      digitalWrite(T2Led_PIN, HIGH);
      delay(500);
      digitalWrite(T2Led_PIN, LOW);
      delay(250);
      digitalWrite(T2Led_PIN, HIGH);
      delay(500);
      digitalWrite(T2Led_PIN, LOW);
      delay(300);
      digitalWrite(T2Led_PIN, HIGH);
      delay(750);
      digitalWrite(T2Led_PIN, LOW);
      delay(500);
      digitalWrite(T2Led_PIN, HIGH);
      delay(1000);
      digitalWrite(T2Led_PIN, LOW);
      delay(300);
      digitalWrite(T2Led_PIN, HIGH);


    }

    if (results.value == 16732845) {           // Taste 9
      digitalWrite(T3Led_PIN, HIGH);

      delay(500);
      digitalWrite(T3Led_PIN, LOW);
      delay(250);
      digitalWrite(T3Led_PIN, HIGH);
      delay(500);
      digitalWrite(T3Led_PIN, LOW);
      delay(300);
      digitalWrite(T3Led_PIN, HIGH);
      delay(750);
      digitalWrite(T3Led_PIN, LOW);
      delay(500);
      digitalWrite(T3Led_PIN, HIGH);
      delay(1000);
      digitalWrite(T3Led_PIN, LOW);
      delay(300);
      digitalWrite(T3Led_PIN, HIGH);
    }
    if (results.value == 16753245) {     //Taste C-
      digitalWrite(LedA1_PIN, HIGH);          // Gebäude Außenbeleuchtung Ein schalten
    }
    if (results.value == 16720605) {          // Taste I<<<
      digitalWrite(LedA2_PIN, HIGH);          // Beleuchtung DS 1 Einschalten
    }
    if (results.value == 16769055) {        // Taste minus
      digitalWrite(LedA3_PIN, HIGH);          //Beleuchtung DS 2 Einschalten
    }
    if (results.value == 16738455) {           // Taste 0 = Stand 3 Licht Aus
      digitalWrite(T3Led_PIN, LOW);
    }
    if (results.value == 16750695) {           // Taste +100  = Stand 2 Licht Aus
      digitalWrite(T2Led_PIN, LOW);
    }
    if (results.value == 16756815) {           // Taste +200  = Stand 1 Licht Aus
      digitalWrite(T1Led_PIN, LOW);
    }
    if (results.value == 16769565) {          // Taste C+
      digitalWrite(LedA1_PIN, LOW);             // Gebäude Außenbeleuchtung AUS schalten
    }
    if (results.value == 16761405) {         // Taste >I
      digitalWrite(LedA2_PIN, LOW);           // Beleuchtung DS 1 AUS schalten
    }
    if (results.value == 16748655) {         // Taste EQ
      digitalWrite(LedA3_PIN, LOW);             // Beleuchtung DS 2 AUS schalten
    }
    irrecv.resume();
  }
  if (!T1Stepper.moving() ) {
    digitalWrite(T1Slp_PIN, LOW);
  }
  if (!T2Stepper.moving() ) {
    digitalWrite(T2Slp_PIN, LOW);
  }
  if (!T3Stepper.moving() ) {
    digitalWrite(T3Slp_PIN, LOW);
  }
}


Zum Problem mit dem ULN 2803 habe ich einen andere Idee, da dieser Typ ja negativ Schaltet werde ich einen Typ suchen der Positiv schaltet somit
Hoffe ich das ich die GND`s nicht zusammen schließen muss..... schau mer mal.
Sonst bleiben noch herkömmliche Transistoren oder gar Mosfet`s
Gruß Rainer bleibt gesund

volkerS
Metropolitan (MET)
Beiträge: 3150
Registriert: Di 14. Okt 2014, 11:37
Nenngröße: H0
Stromart: AC
Steuerung: MS1/ MS2 /analog
Gleise: C-Gleis
Deutschland

Re: Hilfe zu Arduino(UNO)Sketch gesucht für FB

#154

Beitrag von volkerS »

Hallo Rainer,
wo ist dein Problem? Der DRV8825-TreiberIC hat 2 GND-Pins (14/28). Beide liegen auf GND. Auf der Platine sind der GND von Netzteil und GND Logik verbunden.
Derzeit sehe ich nur ein 12V-Netzteil in deiner Schaltung. Damit ergibt sich folgende Verdrahtung:
GND: sternförmig vom Netzeil an: DRV8825, Arduino, ULN2803 Pin9
12V: sternförmig vom Netzteil an: DRV8825, Arduino, ULN2803 Pin 10, Anoden aller Leds
Kathoden der Leds in Reihe mit ihrem Vorwiderstand an die Pins 11 - 18 (Ausgänge ULN2803)
Ausgänge Arduino zur Ansteuerung der Leds an die Pins 1 -8 (Eingänge des ULN2803)
Ausgänge Arduino zur Ansteuerung Stepper an betreffende Eingänge DRV8825
5V Arduino an Eingänge DRV8825 die auf High liegen müssen
Ein GND vom Arduino zum DRV8825 gibt es nicht. Legst du sie baust du eine Masseschleife.
In den Plänen ist diese zwar eingezeichnet, dort werden aber immer 2 Netzteile verwendet. 1x Arduino, 1x DRV8825 und da stellt die DRV8825-Platine die GND-Verbindung beider Netzteile her.
Volker
Benutzeravatar

Threadersteller
ts250x
InterRegioExpress (IRE)
Beiträge: 259
Registriert: Sa 11. Mär 2017, 16:10
Nenngröße: H0
Stromart: digital
Steuerung: MultiMaus Tablett
Gleise: Roco-line o Bettung
Wohnort: Vorderpfalz
Alter: 60
Deutschland

Re: Hilfe zu Arduino(UNO)Sketch gesucht für FB

#155

Beitrag von ts250x »

Hallo Volker,
Mit deinem ersten Satz hast du mir schon mein Problem gelöst: :gfm: :gfm: :gfm:
volkerS hat geschrieben: So 25. Aug 2019, 19:30 Der DRV8825-TreiberIC hat 2 GND-Pins (14/28). Beide liegen auf GND. Auf der Platine sind der GND von Netzteil und GND Logik verbunden.
Meine Annahme war, dass die GND Logik und GND Vmot nicht zusammen kommen dürfen......
Ich Danke Dir für die Auflösung....
Dann kann ich ja alles wie geplant auf einer Platine unterbringen....
Gruß Rainer bleibt gesund
Benutzeravatar

Threadersteller
ts250x
InterRegioExpress (IRE)
Beiträge: 259
Registriert: Sa 11. Mär 2017, 16:10
Nenngröße: H0
Stromart: digital
Steuerung: MultiMaus Tablett
Gleise: Roco-line o Bettung
Wohnort: Vorderpfalz
Alter: 60
Deutschland

Re: Hilfe zu Arduino(UNO)Sketch gesucht für FB gefunden/ Danksagungen

#156

Beitrag von ts250x »

Hallo zusammen:
nachdem der Sketch jetzt funktioniert viele andere Dinge geklärt sind möchte ich es nicht Versäumen mich bei Euch die mir geantwortet haben,
die mich unterstützt haben zu bedanken:

Als erstes gilt mein ganz herzlicher Dank: FRANZ-PETER, ohne Ihn würde ich heute noch rätseln wie das mit dem Arduino um zu setzen ist..

Als zweites möchte ich mich bei VOLKER bedanken , der mir bei der Verdrahtung geholfen hat

Als drittes gilt mein Dank auch KLAUS, der mir die "If abfrage empfohlen hat

Bei Allen anderen die mir geantwortet haben möchte ich mich ebenfalls ganz herzlich bedanken..
:fool: :gfm: :fool: :gfm: :fool: :gfm: :fool:

D A N K E
Gruß Rainer bleibt gesund

Babbel
InterRegio (IR)
Beiträge: 135
Registriert: Sa 18. Mai 2019, 15:31
Nenngröße: H0
Stromart: digital
Steuerung: MS2 RocRail WIO
Gleise: M-Gleise
Wohnort: Rheingau
Alter: 49
Deutschland

Re: Hilfe zu Arduino(UNO)Sketch gesucht für FB gefunden/ Danksagungen

#157

Beitrag von Babbel »

Hallo Rainer,
welchen Schrittmotor verwendest du jetzt?
Die von Dir am Anfang gezeigten haben eine Betriebsspannung von 5 Volt, und jetzt lese ich das du an Vmot 12 Volt angeschlossen hast :?: .
Kommt dein Temperatur-Problem daher?

Grüße Berthold
Ja M-Gleise weil es immer so war :D
Ich bin nur ein Schreiner dem man ein Multimeter geschenkt hat. :mrgreen:
Komm spiel mit mir :D https://www.youtube.com/watch?v=Nol3ELgZygo
Benutzeravatar

Threadersteller
ts250x
InterRegioExpress (IRE)
Beiträge: 259
Registriert: Sa 11. Mär 2017, 16:10
Nenngröße: H0
Stromart: digital
Steuerung: MultiMaus Tablett
Gleise: Roco-line o Bettung
Wohnort: Vorderpfalz
Alter: 60
Deutschland

Re: Hilfe zu Arduino(UNO)Sketch gesucht für FB gefunden/ Danksagungen

#158

Beitrag von ts250x »

Hallo Berthold,
Danke für den Hinweis,
Die Neuen Motoren sehen so aus :
Bild

Bild

Und Hier noch die Technischen Daten: Da sehe ich gerade :bigeek: 80° Motoroberflächen Temperatur Ups

Bild

Und dann Betriebstemperatur 0- +55°

Also die 12 Volt passen schon, aber die Temperatur mit 80° das ist ja mal eine Nummer.

Komischer weise war das bei meinem Versuch mit den delay`s von 20 sec nicht der Fall, da grüble ich schon noch
Gruß Rainer bleibt gesund
Benutzeravatar

Threadersteller
ts250x
InterRegioExpress (IRE)
Beiträge: 259
Registriert: Sa 11. Mär 2017, 16:10
Nenngröße: H0
Stromart: digital
Steuerung: MultiMaus Tablett
Gleise: Roco-line o Bettung
Wohnort: Vorderpfalz
Alter: 60
Deutschland

Re: Hilfe zu Arduino(UNO)Sketch gesucht für FB gefunden/ Danksagungen

#159

Beitrag von ts250x »

Hallo da ich gerade dabei bin;
Hier noch ein Bild von meinem Platinen Entwurf

Bild

Die 4 Plus Leitungen habe ich vorgesehen wegen der Strombelastung der Leiterbahnen
das gleiche gilt natürlich auch für die GND`s

Die Unterbrechungen sind nicht alle eingezeichnet
Gruß Rainer bleibt gesund
Antworten

Zurück zu „Elektrik und Elektronik“