Das mit den 0,11V dachte ich auch. Jedoch scheint hier der interne Pullup des Arduinos zu greifen. Mit 0,11V bekomm ich die Endschalter nicht ausgelöst![]()
Das mit den 0,11V dachte ich auch. Jedoch scheint hier der interne Pullup des Arduinos zu greifen. Mit 0,11V bekomm ich die Endschalter nicht ausgelöst![]()
Okay, wir haben das hier:
Der Pin vom Arduino muss auf Masse gezogen werden, wenn die Leitung keine 5V anliegen hat.Code:Arduijno-Pin mit internem PullUp o | | | | | | 5V T | --- | GND -----------o o-------------o--------------------- (created by AACircuit v1.28.6 beta 04/19/05 www.tech-chat.de)
Da hast du wohl den Widerstand vergessen, im Moment ist der Arduino-Pin direkt mit GND verbunden. Taster T würde dann auch einen saftigen Kurzschluss zwischen 5V und GND machen![]()
In der Skizze fehlen die Widerstände...
Prinzipiell ist das Problem, um den Pin sicher auf GND zu ziehen, muss da ein recht kleiner Widerstand (idealersweise gar keiner...) nach GND verbaut werden. Dann brauchst du aber einen noch kleineren Widerstand auf der anderen Seite, um den Pin wieder auf 5V zu ziehen. Und dann fließt permanent einiger Strom. Das ganze ist ein Spannungsteiler.
Nicht vergessen, weggelassen, weil ich nicht weiß, was ich jetzt noch versuchen soll. Wie gesagt haben ich vorhin 1k, 0,5k und 0,3k zwischen Pin und Ground ausprobiert, jedoch lieferte keiner das nötige Ergebnis.
Besorg dir ein paar kleine Relais zum invertieren oder andere Schalter. Oder änder die Software.
Wenn ein Pegel von 0,11V nicht als sauberes 0 erkannt wird, dann ist dieses ominöse "GBRL" Mist.
Grüße
Thomas
'ominös' ist es wohl eher nicht. Und ja, ich muss zugeben, dass ich die Logik hinter der Schließer-only-Idee nicht gut finde, zumal Öffner an der Stelle mehr Sinn machen.
Aber egal, das Problem hab ich jetzt nunmal und ich möchte es lösen.
Dass der Pegel von 0,11V nicht als Ground erkannt wird, wird - wie bereits erwähnt - wohl am internen Pull-Up liegen. Aber wie das genau verschaltet ist, weiß ich um ehrlich zu sein nicht.
Die Software zu ändern bedeutet vermutlich enorm viel Aufwand...da ich mich in den Quellcode einlesen, ihn verstehen, verändern und neu kompilieren müsste.
Meine Idee wäre, die 5V durch einen geeigneten Widerstand so weit herabzusetzen, dass man problemlos zwischen Pin und Ground einen sehr geringen Widerstand einsetzen kann, welcher den Pegel, trotz internem Pullup-Widerstand des Arduinos, runter zieht.
Macht das Sinn? Und welche Werte sollte ich in Erwähgung ziehen?
Lesezeichen