Änderung des Sketches für das Modul TCRT5000 Reflektierende IR Lichtschranke Opt

Moin Miteinander,ich habe leider mal wieder ein Problem.Ich möchte einen Setch so abändern das ich folgendes Modul,TCRT5000 Reflektierende IR Lichtschranke Optisch Sensor Modul Arduino,verwenden kann.Die Änderung sollte als Sicherheit auch den digitalen Ausgang von dem Modul verwenden.
MfG
Crazydiver

#include "SR04.h"
#define TRIG_PIN 12
#define ECHO_PIN 11
SR04 sr04 = SR04(ECHO_PIN,TRIG_PIN);
long a;

void setup() {
   Serial.begin(9600);
   delay(1000);
}

void loop() {
   a=sr04.Distance();
   Serial.print(a);
   Serial.println("cm");
   delay(1000);
}

Das passt nicht zusammen. Mit einer Reflexlichtschranke kannst Du keine Entfernung messen. Dazu ist der Arduino um mehrere Größenordnungen zu langsam. (Lichtgeschwindigkeit)

Gruß Tommy

Tommy der Sketch soll eine Automatikfunktion auslösen die später in einen anderen Sketch eingebettet wird

Du bist doch nicht erst seit gestern dabei. Von den Grundlkagen hast Du immer noch wenig Ahnung und ordentlich beschreiben kannst/willst Du Deine Vorhaben auch nicht.

Also muss man das wenige nehmen, was von Dir rüber kommt und das war halt eine Entfernungsmessung.

Wenn Du mal ordentlich beschreiben würdest was diese "Automatikfunktion" machen soll, wäre es einfacher, Dir zu helfen. Das müssen wir Dir aber jedes Mal aufs neue beibringen, weil erst mal etwas Nichtssagendes kommt.

Gruß Tommy

Tommy die Automatikfunktion steuert 5 Servos und einen Motorregler und das ganze soll über die Lichtschranke in Neutralstellung gebracht werden die im Sketch definiert ist.Ich kann Dir den gesamten Sketch dazu dranhängen.In diesem Sketch soll die letzte Ifabfrage durch die Lichtschranke ausgelöst werden.Die Ifabfragen laufen aber genauso in dieser Reihenfolge.
MfG
Crazydiver

#include <Servo.h>

int absetzenPin = 2; //absetzen an Pin 2 angeschlossen
int aufnahmePin = 3; //aufnahme an Pin 3 angeschlossen
int sabfragePin = 4; //sabfrage an Pin 4 angeschlossen
int absetzenStatus = 0;
int aufnahmeStatus = 0;
int sabfrageStatus = 0;
Servo pumpe;
Servo klemme;
Servo scherenheber;
Servo sicherungsstangen;
Servo druecker;
Servo fuehrungsstangen;
const int LED1 = 13;
const int LED2 = 12;
const int LED3 = 11;

void setup()
{
  pinMode(absetzenPin, INPUT); //absetzenPin (Pin 2) wird als INPUT definiert
  pinMode(aufnahmePin, INPUT); //aufnahmePin (Pin 3) wird als INPUT definiert
  pinMode(sabfragePin, INPUT); //sabfragePin (Pin 4) wird als INPUT definiert
  pinMode(LED1, OUTPUT);
  pinMode(LED2, OUTPUT);
  pinMode(LED3, OUTPUT);
  pumpe.attach(A0); //Servomotor wurde an Pin A0 bis A5 angeschlosse
  pumpe.write(0); //Dreht nach links
  klemme.attach(A1);
  klemme.write(90);
  scherenheber.attach(A2);
  scherenheber.write(90);
  sicherungsstangen.attach(A3);
  sicherungsstangen.write(90);
  druecker.attach(A4);
  druecker.write(90);
  fuehrungsstangen.attach(A5);
  fuehrungsstangen.write(90);
  delay(50);
}
void loop()
{
  absetzenStatus = digitalRead(absetzenPin);
  if (absetzenStatus == HIGH) {
    digitalWrite(LED1, HIGH);
    pumpe.write(100);
    klemme.write(165);
    scherenheber.write(0);
    sicherungsstangen.write(0);
    delay(50);
  }
  {
    absetzenStatus = digitalRead(absetzenPin);
    if (absetzenStatus == LOW) {
      digitalWrite(LED1, LOW);
      pumpe.write(130);
      sicherungsstangen.write(90);
      fuehrungsstangen.write(90);
      druecker.write(90);
    }
    {
      aufnahmeStatus = digitalRead(aufnahmePin);
      if (aufnahmeStatus == HIGH) {
        digitalWrite(LED2, HIGH);
        pumpe.write(150);        
        druecker.write(0);
        fuehrungsstangen.write(0);
        delay(100);
        sicherungsstangen.write(150);
        scherenheber.write(150);
        delay(100);
      }
      {
        aufnahmeStatus = digitalRead(aufnahmePin);
        if (aufnahmeStatus == LOW) {
          digitalWrite(LED2, LOW);
          pumpe.write(100);
          sicherungsstangen.write(0);
        }
        {
          sabfrageStatus = digitalRead(sabfragePin);
          if (sabfrageStatus == HIGH) {
            digitalWrite(LED3, HIGH);
            pumpe.write(155);
            scherenheber.write(90);
            fuehrungsstangen.write(150);
            druecker.write(160);
            sicherungsstangen.write(150);
            klemme.write(0);
            delay(100);
          }
          {
            if (sabfrageStatus == LOW) {
              digitalWrite(LED3, LOW);
              scherenheber.write(90);
              fuehrungsstangen.write(90);
              druecker.write(90);
              klemme.write(90);
              sicherungsstangen.write(90);
              pumpe.write(80);
            }
          }
        }
      }
    }
  }
}

Hi

Und Das funktioniert so?
Muß ich mir Mal in Ruhe anschauen - Heute aber nicht mehr (meine aber bereits: da können ein paar Klammern weg).

MfG

Crazydiver:
Tommy die Automatikfunktion steuert 5 Servos und einen Motorregler und das ganze soll über die Lichtschranke in Neutralstellung gebracht werden die im Sketch definiert ist.Ich kann Dir den gesamten Sketch dazu dranhängen.In diesem Sketch soll die letzte Ifabfrage durch die Lichtschranke ausgelöst werden.Die Ifabfragen laufen aber genauso in dieser Reihenfolge.

Woher soll das der Leser in Deinem Eingangsposting oder in #2 erkennen? Wenn Du zu maulfaul bist und der Meinung bist, das wäre ok, gut. Dann genervt klingen, wenn jemand genaueres wissen will, ist nicht zielführend.
Dann bin ich mal raus. Viel Spaß noch.

Gruß Tommy

@Crazydiver
Hier muss ich Tommy aber Recht geben.

Wie kann man auf die Schnapsidee kommen, einen Sketch für einen US-Sensor für eine Infrarot-Reflexlichtschranke zu verwenden.

Du solltest deine Frage mal selbst durchlesen und auch versuchen diese zu verstehen.
Dann wirst du merken, wie falsch du liegst. Völlig falsch.

Das kann nicht funktionieren.
Und ein umbasteln ist genau so ein Mist.
Da kann man (evtl. du selbst) viel einfacher einen neuen, eigenen Sketch schreiben bzw. den richtigen gleich in deinen vorhanden Sketch einbauen.

Und da du deinen Sketch am besten selbst kennst, solltest du das auch selber machen.

Denn ich verstehe den nicht, da dieser wieder mal komplett ohne Kommentare daher kommt.
Das tue ich mir nicht mehr an.