Go Down

Topic: Füllstandsensor xlc-y26-npn soll mit Hilfe eines Arduino Uno ein Relais schalten (Read 194 times) previous topic - next topic

Crazyphoto

Hallo zusammen,

ich habe nicht nur ein Brett vor dem Kopf sondern vom Gefühl nen ganzen Wald.

Ich habe einen berührungslosen Füllstandssensor XKC-Y26-NPN der mir ein KY-019 5V Relais schalten soll,
dazu möchte ich einen Arduino Uno verwenden.

Verwendung findet die Geschichte in meinem Meerwasseraquarium zur Überwachung der Nachfüllautomatik.

Dazu schliesse ich das Relais am Uno an +5V und GND der Pin S vom Relais wird mit Digital 7 verbunden.

Der Füllstandsensor wird über ext. Stromversorgung befeuert +12V da entgegen der Herstellerangaben +5V nicht reichen um ihn zu Betreiben. Durch Versuch ermittelt erst ab +12V reagiert er zuverlässig. Der Signalpin vom Füllstandsensor wird mit Digital 3 verbunden.

Wenn dann Digital 3 "high" ist soll mir das Relais anziehen sprich digital 7 auch "high" sein.

Über Denkanstösse bin ich äusserst dankbar.

Grüsse Matthias

Tommy56

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)

Franz54

Wenn der Flüssigkeitssstand hoch ist, hat der Signalpin des Sensors VIN Pegel. Das sagt die Beschreibung des Sensors. VIN schreibst du, ist bei dir 12 Volt ("Der Füllstandsensor wird über ext. Stromversorgung befeuert +12V"). Also wird der Arduino wohl schon den Abschied eingereicht haben, weil der an den PIN´s nur 5 Volt verträgt.  :smiley-confuse:

Franz

HotSystems

Poste bitte Hyperlinks deines Sensors und deines Relais.

Ein Relais kannst du nicht (fast nie) direkt am Arduino anschließen.
Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. 8)

Rentner

Hallo,


ich würde den nicht mit 12V "befeuern" das wird brennen, Versorge Ihn einfach mit 12V das bekommt Im besser.

nach dem Datenblatt liefert der Ausgang bei H Vin das sind dann 12Volt, die kannst Du so nicht an Deinen UNO anschliessen.

Du benötigst einen Spannungsteiler bestehend aus 2 Widerständen, z.B  1,5K und 1K damit kommst Du von 12 auf etwa 4,8 Volt, die kannst Du dann auf den Uno geben und direkt abfragen.  

Heinz

uwefed

Die Infos sind etwas verwirrend.
Hab keinen xlc-y26-npn gefunden sondern einen xkc-y26-npn

Die Beschreibung sagt:

4.Output Voltage (high level): Vin
5.Output Voltage (low level): 0V

Das ist ungewohnt da NPN Ausgänge normalerweise potentialfrei sind und erst durch einen Pullupwiderstand ein HIGH Pegel haben.

Bitte am Sensor nachmessen!!.

Falls der Sensor wirklich ein 12V Signal ausgibt dann brauchst Du einen Spannungsteiler um ihn an Arduino anschließen zu können. Falls er einen Pullup braucht dann schließ den Pullup an +5V an.

Zum Sketch würde ich einige Sicherheiten einbauen. So eine Kontrolle in welchen Intervallen der Sensor einen niedrigen Füllstand meldet und auch wie lange. Wenn alle 5 minuten ein Füllzyklus ausgelöst wird ist was faul, auch wenn ein füllzyklus mehr als 1 h dauert. Das alles um den Wasserstand in der Wohnung gegen null zu halten.

Grüße Uwe

HotSystems

@TO
Wenn du hier schon mitliest, solltest du auch Antworten geben !
Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. 8)

Crazyphoto

Gerade dabei, versuche mein Sketch zu posten finde aber die Codetags nicht

HotSystems

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. 8)

Crazyphoto

Code: [Select]


void setup() {
  
pinMode(2, OUTPUT);
pinMode(4, INPUT);
}

void loop() {
  
if (digitalRead(4)==HIGH) {
  digitalWrite(2, HIGH);
 } else {digitalWrite(2, LOW);
 }
}


Entschuldigung für die späte Antwort, zu den anderen Posts werde ich heute Abend Antwort geben, Danke schonmal im Voraus





HotSystems

Code: [Select]


void setup() {
 
pinMode(2, OUTPUT);
pinMode(4, INPUT);
}

void loop() {
 
if (digitalRead(4)==HIGH) {
  digitalWrite(2, HIGH);
 } else {digitalWrite(2, LOW);
 }
}


Entschuldigung für die späte Antwort, zu den anderen Posts werde ich heute Abend Antwort geben, Danke schonmal im Voraus

Das kann ja nicht funktionieren.
In deinem Eingangspost hast du ganz andere Pins beschrieben:

Quote
Wenn dann Digital 3 "high" ist soll mir das Relais anziehen sprich digital 7 auch "high" sein.
Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. 8)

Tommy56

Das Datenblatt strotzt ja nur so von Widersprüchen:

Seite 2: Output-Current 1-100 mA <--> Seite 4 (Skizze) Load >200 mA nach 5-24V (Masse-Schaltzeichen)

Seite 2: Output HIGH = Vin <--> Seite 4 (Skizze) spricht eher für den üblichen NPN-OpenCollektor

Ich würde mal folgendes probieren:

an Braun und Blau mit 12V versorgen. Gelb über einen Widerstand an eigene +5V - beide GND verbinden und die Spannung an Gelb messen. Wenn die ca. 5V und ca. 0V ist, kannst Du wohl direkt an einen Arduino-Eingang mit INPUT_PULLUP.

Gruß Tommy
"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)

Rentner

Hallo,

if (digitalRead(4)==HIGH) {

um die 4 muss die Klammer weg,

leide ich unter Verwirrung , das Alter, der ständige Alk.. ich weiß es nicht



solange Du nicht weisst was da wirklich rauskommt bleibt nur messen , ich gehe eigendlich von einem normmalen  plus schaltenden Ausgang aus. Damit ist das Ding dann SPS tauglich, was ja auch Sinn macht bei 12-24V technik
link

Heinz

HotSystems

Hallo,

if (digitalRead(4)==HIGH) {

um die 4 muss die Klammer weg,

Heinz, da denk nochmal drüber nach.  ;)
Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. 8)

Crazyphoto

Hallo, erstmal Danke für die Beteiligung, ich bin habe nun den Sensor mal durchgemessen, am Signal liegen entweder 0V oder 0,12V (ich vermute mal 1 Prozent der Eingangsspannug).

Also war ich einfach so mutig und habe alles am Arduiono verdrahtet. Sketch hochgeladen, und das Relais zieht sofort an und löst wieder, (Frequenz tippe ich auch 50-60 Hz) Unabhängig von dem was der Sensor macht. Dann den pinMode auf INPUT_PULLUP geändert und die Frequenz ist hörbar niedriger geworden.

Werde mit eine 24 V Stromquelle besorgen und den Sensor mal mit 24V versorgen

Allen eine Ruhige Nacht, und DANKE.



Go Up