INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Fernsteierungsimpuls Taster/Schalter unterschiedliche Reaktion
20.12.2020, 09:53
Beitrag #1
Fernsteierungsimpuls Taster/Schalter unterschiedliche Reaktion
Einen schönen 4. Advent in die Runde
Mein Problem:
für ein ferngesteuertes Funktionsmodell benötige ich eine Ansteuerung mit 8 Kanälen, von denen einige mit Schalter und andere mit Taster (proportionale Knüppel) angesprochen werden. Die meisten Funktionen benötigen den vollen Anschlag der Knüppel / Schalter in beide Richtungen und die Neutralstellung.
Dazu habe ich eine Auswertung erstellt (erst einmal für einen Kanal), die mit dem Knüppel problemlos funktioniert. Wenn ich 3 LEDs ansteuere leuchtet jeweils eine in der Richtung des Knüppelanschlags und eine Dritte wenn der Knüppel in der Mittelstellung (Neutral) steht. Soweit ist das wie gewünscht. Nutze ich aber einen Schalter (I-0-I) leuchtet jeweils die LED am Endanschlag, nicht aber die LED für die Stellung Neutral. Der serielle Monitor zeigt mir aber die annähernd gleichen Zeiten in beiden Varianten an. Woran liegt es, dass sich ein unterschiedliches Verhalten in der Neutralstellung ergibt?

Code:
const unsigned int AusgangOben = 4;    // Knüppel nach unten
const unsigned int AusgangUnten = 6;   // Knüppel nach oben
const unsigned int AusgangNeutral = 5; // Knüppel in Mittelstellung (Neutral)

int Eingang = 2; // Empfänger Eingang Pin D2 von CH1
unsigned long duration;

#define EingangNEUTRAL ((unsigned char) 0)
#define EingangOBEN ((unsigned char) 1)
#define EingangUNTEN ((unsigned char) 2)

unsigned char Akt_Status = EingangNEUTRAL;
unsigned char Vor_Status = EingangNEUTRAL;


void setup()

{
  pinMode(Eingang, INPUT);

  pinMode(AusgangOben, OUTPUT);
  pinMode(AusgangUnten, OUTPUT);
  pinMode(AusgangNeutral, OUTPUT); //Neutralstellung

  Serial.begin(9600);
}

void loop()  {
  Ueberwachen_Eingang();

}

void Ueberwachen_Eingang()
{
  duration = pulseIn(Eingang, HIGH);
  Serial.println(duration);

  if ((duration > 800) && (duration < 1400))
  {
    Akt_Status = EingangOBEN;
    Serial.println("CH1 Knüppel unten");
  }

  if  ((duration > 1800) && (duration < 2200))
  {
    Akt_Status = EingangUNTEN;
    Serial.println("CH1 Knüppel oben");
  }

  if ((duration > 1500) && (duration < 1700))
  {
    Akt_Status = EingangNEUTRAL;
    Serial.println("CH1 Knüppel Mittelstellung");
  }

  if (Vor_Status != Akt_Status)
  {
    if (Akt_Status == EingangNEUTRAL)
    {
      Neutral();
      Vor_Status = EingangNEUTRAL;
      
    }
    if (Akt_Status == EingangOBEN)
    {
      Eingangoben();
      Vor_Status = EingangOBEN;
    }
    
    if (Akt_Status == EingangUNTEN)
    {
      Eingangunten();
      Vor_Status = EingangUNTEN;
    }
  }
}


// Schaltausgänge aktivieren

void Eingangoben(void)
{
  digitalWrite(AusgangOben, HIGH);
  digitalWrite(AusgangUnten, LOW);
  digitalWrite(AusgangNeutral, LOW);
}

void Eingangunten(void)
{
  digitalWrite(AusgangOben, LOW);
  digitalWrite(AusgangUnten, HIGH);
  digitalWrite(AusgangNeutral, LOW);
}

void Neutral(void)
{
  digitalWrite(AusgangOben, LOW);
  digitalWrite(AusgangUnten, LOW);
  digitalWrite(AusgangNeutral, HIGH);
}
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
20.12.2020, 10:30
Beitrag #2
RE: Fernsteierungsimpuls Taster/Schalter unterschiedliche Reaktion
Deine Schaltung verstehe ich nicht.
Wie willst du mit einem digitalen Eingangspin 3 Stellungen auswerten ?

Zeige uns mal ein Schaltbild, wie du es aufgebaut hast.

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
20.12.2020, 10:54 (Dieser Beitrag wurde zuletzt bearbeitet: 20.12.2020 10:57 von do1xxy.)
Beitrag #3
RE: Fernsteierungsimpuls Taster/Schalter unterschiedliche Reaktion
(20.12.2020 09:53)do1xxy schrieb:  Einen schönen 4. Advent in die Runde
Mein Problem:
für ein ferngesteuertes Funktionsmodell benötige ich eine Ansteuerung mit 8 Kanälen, von denen einige mit Schalter und andere mit Taster (proportionale Knüppel) angesprochen werden. Die meisten Funktionen benötigen den vollen Anschlag der Knüppel / Schalter in beide Richtungen und die Neutralstellung.
Dazu habe ich eine Auswertung erstellt (erst einmal für einen Kanal), die mit dem Knüppel problemlos funktioniert. Wenn ich 3 LEDs ansteuere leuchtet jeweils eine in der Richtung des Knüppelanschlags und eine Dritte wenn der Knüppel in der Mittelstellung (Neutral) steht. Soweit ist das wie gewünscht. Nutze ich aber einen Schalter (I-0-I) leuchtet jeweils die LED am Endanschlag, nicht aber die LED für die Stellung Neutral. Der serielle Monitor zeigt mir aber die annähernd gleichen Zeiten in beiden Varianten an. Woran liegt es, dass sich ein unterschiedliches Verhalten in der Neutralstellung ergibt?

Code:
const unsigned int AusgangOben = 4;    // Knüppel nach unten
const unsigned int AusgangUnten = 6;   // Knüppel nach oben
const unsigned int AusgangNeutral = 5; // Knüppel in Mittelstellung (Neutral)

int Eingang = 2; // Empfänger Eingang Pin D2 von CH1
unsigned long duration;

#define EingangNEUTRAL ((unsigned char) 0)
#define EingangOBEN ((unsigned char) 1)
#define EingangUNTEN ((unsigned char) 2)

unsigned char Akt_Status = EingangNEUTRAL;
unsigned char Vor_Status = EingangNEUTRAL;


void setup()

{
  pinMode(Eingang, INPUT);

  pinMode(AusgangOben, OUTPUT);
  pinMode(AusgangUnten, OUTPUT);
  pinMode(AusgangNeutral, OUTPUT); //Neutralstellung

  Serial.begin(9600);
}

void loop()  {
  Ueberwachen_Eingang();

}

void Ueberwachen_Eingang()
{
  duration = pulseIn(Eingang, HIGH);
  Serial.println(duration);

  if ((duration > 800) && (duration < 1400))
  {
    Akt_Status = EingangOBEN;
    Serial.println("CH1 Knüppel unten");
  }

  if  ((duration > 1800) && (duration < 2200))
  {
    Akt_Status = EingangUNTEN;
    Serial.println("CH1 Knüppel oben");
  }

  if ((duration > 1500) && (duration < 1700))
  {
    Akt_Status = EingangNEUTRAL;
    Serial.println("CH1 Knüppel Mittelstellung");
  }

  if (Vor_Status != Akt_Status)
  {
    if (Akt_Status == EingangNEUTRAL)
    {
      Neutral();
      Vor_Status = EingangNEUTRAL;
      
    }
    if (Akt_Status == EingangOBEN)
    {
      Eingangoben();
      Vor_Status = EingangOBEN;
    }
    
    if (Akt_Status == EingangUNTEN)
    {
      Eingangunten();
      Vor_Status = EingangUNTEN;
    }
  }
}


// Schaltausgänge aktivieren

void Eingangoben(void)
{
  digitalWrite(AusgangOben, HIGH);
  digitalWrite(AusgangUnten, LOW);
  digitalWrite(AusgangNeutral, LOW);
}

void Eingangunten(void)
{
  digitalWrite(AusgangOben, LOW);
  digitalWrite(AusgangUnten, HIGH);
  digitalWrite(AusgangNeutral, LOW);
}

void Neutral(void)
{
  digitalWrite(AusgangOben, LOW);
  digitalWrite(AusgangUnten, LOW);
  digitalWrite(AusgangNeutral, HIGH);
}

[quote]
Zu der Funktion als solches: es handelt sich um eine sogg. Verkehrsleittafel. An den Ausgängen D4, D5 und D6 befinden sich mehrere LEDs, die jeweils in den Positionen Schalter Links / Schalter Rechts / Schalter Mitte die jeweilige Fahrtrichtung oder eben ein Sperrkreuz zum Absperren der Fahrbahn anzeigen.

Insofern erledigt sich der Stromlaufplan. 3 gelbe LEDs in Reihenschaltung an den Ausgängen D4 und D6, 2 gelbe LEDs in Reihenschaltung an D5.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
20.12.2020, 11:01 (Dieser Beitrag wurde zuletzt bearbeitet: 20.12.2020 11:06 von hotsystems.)
Beitrag #4
RE: Fernsteierungsimpuls Taster/Schalter unterschiedliche Reaktion
Wieso erledigt sich der Stromlaufplan ?

Ich sehe immer noch nicht, wie du mit einem Eingangspin diese 3 Stellungen erreichen willst.
Dazu benötigen wir dein Schaltbild. Ein digitaler Pin hat nur zwei Stellungen, HIGH oder LOW. Wie bekommst du da noch die 3 Stellung raus ? Also aufzeichnen.

Edit:

Oder hast du an den digitalen Pin noch etwas anderes angeschlossen, was du uns verschweigst ?

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
20.12.2020, 11:12
Beitrag #5
RE: Fernsteierungsimpuls Taster/Schalter unterschiedliche Reaktion
(20.12.2020 11:01)hotsystems schrieb:  Wieso erledigt sich der Stromlaufplan ?

Ich sehe immer noch nicht, wie du mit einem Eingangspin diese 3 Stellungen erreichen willst.
Dazu benötigen wir dein Schaltbild. Ein digitaler Pin hat nur zwei Stellungen, HIGH oder LOW. Wie bekommst du da noch die 3 Stellung raus ? Also aufzeichnen.

Edit:

Oder hast du an den digitalen Pin noch etwas anderes angeschlossen, was du uns verschweigst ?

Anbei der Stromlaufplan. Es handelt sich um eine Verkehrsleittafel der Firma Bruder im Maßstab 1:16. Mit insgesamt 10 LEDs werden die Richtungen Links/Rechts und Blitzer angezeigt. Um zwischen diese 3 Anzeigemöglichkeiten umzuschalten, will ich nur einen Kanal belegen. Diese Tafel befindet sich auf einem Fahrzeug, das weitere Funktionen hat für die ich die restlichen 7 Kanäle der Fernsteuerung benötige.
Ich hoffe dass der Plan jetzt angezeigt wird.


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
20.12.2020, 11:16
Beitrag #6
RE: Fernsteierungsimpuls Taster/Schalter unterschiedliche Reaktion
(20.12.2020 11:12)do1xxy schrieb:  
(20.12.2020 11:01)hotsystems schrieb:  Wieso erledigt sich der Stromlaufplan ?

Ich sehe immer noch nicht, wie du mit einem Eingangspin diese 3 Stellungen erreichen willst.
Dazu benötigen wir dein Schaltbild. Ein digitaler Pin hat nur zwei Stellungen, HIGH oder LOW. Wie bekommst du da noch die 3 Stellung raus ? Also aufzeichnen.

Edit:

Oder hast du an den digitalen Pin noch etwas anderes angeschlossen, was du uns verschweigst ?

Anbei der Stromlaufplan. Es handelt sich um eine Verkehrsleittafel der Firma Bruder im Maßstab 1:16. Mit insgesamt 10 LEDs werden die Richtungen Links/Rechts und Blitzer angezeigt. Um zwischen diese 3 Anzeigemöglichkeiten umzuschalten, will ich nur einen Kanal belegen. Diese Tafel befindet sich auf einem Fahrzeug, das weitere Funktionen hat für die ich die restlichen 7 Kanäle der Fernsteuerung benötige.
Ich hoffe dass der Plan jetzt angezeigt wird.

So sieht die Tafel aus


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
20.12.2020, 11:25
Beitrag #7
RE: Fernsteierungsimpuls Taster/Schalter unterschiedliche Reaktion
@TO: Hast Du mal elektrisch gemessen, wie sich die beiden Elemente in den 3 Stellungen verhalten? Ich vermute, dass der Schalter ein anderes Verhalten zeigt, als die analogen Teile.

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
20.12.2020, 11:26
Beitrag #8
RE: Fernsteierungsimpuls Taster/Schalter unterschiedliche Reaktion
Ich befürchte, du verstehst mich nicht.

Es geht um den Eingangspin !
Hast du da etwas angeschlossen, was wir nicht sehen können und auch nicht wissen ?

Also was wir raten müssen !

Warum schreibst du das nicht ausführlich dazu ?

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Nextion-Bildinhalt per Taster umschalten schulz 45 2.357 21.05.2021 09:01
Letzter Beitrag: schulz
  Arduino Ampelschaltung Taster funktioniert nicht fatihakan36 9 1.334 13.03.2021 22:06
Letzter Beitrag: N1d45
  Zähler mit Taster und Serial Monitor LK2567 16 1.970 16.02.2021 22:37
Letzter Beitrag: Bitklopfer
  Werte im Display per Taster wechseln bmxruler 8 1.078 27.01.2021 11:22
Letzter Beitrag: bmxruler
  Servo im Programm über einen Taster betätigen CB2311 26 2.526 08.12.2020 19:21
Letzter Beitrag: Tommy56
  Super Mario Theme per Taster theo-rist 5 951 26.08.2020 19:15
Letzter Beitrag: hotsystems
  Arduno + Ethernet-Shield: HTML-Seite mit Taster für einmalige Auslösung RivaDynamite 1 903 22.06.2020 20:50
Letzter Beitrag: Tommy56
  Zwei Richtungen mit einem Taster FoxFactoy 12 2.285 19.06.2020 13:04
Letzter Beitrag: hotsystems
  Compiler-Schalter Rainer2 8 1.745 07.06.2020 13:34
Letzter Beitrag: Tommy56
  Betätigung d. Sensors soll Steuerung abschalten und nur über Taster einschalten Floydi 12 2.397 26.04.2020 07:47
Letzter Beitrag: MicroBahner

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste