Zum Test versuche ich einfach die LED mit dem Bewegungsmelder zu triggern. Das Problem, die LED macht nicht das, was ich will - sie reagiert, so glaube ich, nicht auf den Sensor. Der "kompetente" Mitarbeiter im Elektronikgeschäft meinte, dass der Ausgang aus dem Arduino reichen würde (obwohl das ja nur 5V sind). In der Beschreibung steht unter der Spannungsversorgung 9 - 15V. Liegt es daran oder ist etwas im Code nicht ganz richtig? Wie würde ich denn mehr Strom in den Sensor bekommen, ohne dass mir das Duemilanove durchbrennt?
Ich freue mich auf eure Antworten!
ich habe drei Kabel:
rot: VCC
schwarz: GND
braun: Out (Open Collector Ausgang)
Die Verbindung ist: VCC in 5V, GND zu GND und Out in Pin 2
der Test-Code ist:
int ledPin = 13;
int inputPin = 2;
int rsState = LOW;
int val = 0;
Die Betriebsspannung ist 8 - 15 V/DC. Da funktioniert das Modul nicht mit 5V.
Der Ausgang ist Open Collektor, das heißt ein Transistor zieht den Ausgang bei HIGH auf Masse und der AUsgang muß mit einem PullUp Widerstand auf +Versorgungsspannung (zB 5V des Aruinos) gezogen werden.
Du mußt den internen PullUp Widerstand an Pin 2 aktivieren.
Vielen Dank für die schnelle Antwort Uwe,
dann muss ich also einen PullUp-Widerstand einbauen, wie groß muss der denn sein? Und der muss dann zwischen + (5V) und Sensor integriert werden, oder? Ich bin dir sehr dankbar für die Antwort.... dann werde ich morgen noch einmal den Elektronikshop meines Vertrauens aufsuchen
Also 5V vom Arduino über PullUp-Widerstand zum Sensor, der dann in GND führt? Danke noch einmal, was wäre ich ohne das Forum Wirklich nette Leute die super Antworten geben! Martha
Ich verstehe Dich jetzt nicht ganz:
Der Sensor braucht 8 bis 15V an GND und rot: VCC. Der Ausgang braun: Out (Open Collector Ausgang) kommt auf PIN 2 Des Arduino und für PIN 2 aktivierst Du den internen PullUP-Widerstand.
Dei Masse (GND) des Sensors verbindest Du mit der Masse des Arduino.
Ich danke Dir Uwe, versuche es gleich morgen, aber es ist richtig, dass ich überall direkt ins arduino duemilnove reingehe: ich muss bloss den internen PullUpWiderstand aktivieren? Am Code ist jetzt nichts Falsches?
Dann wäre alles super, ansonsten melde ich mich noch einmal
liebe Grüße, Martha
Es bleibt nach wievor musst du den Sensor mit einer Versorgungsspannung von 9-15V versorgt werden.
Also zweite Spannungsversorgung auf den Sensor die beiden Massen (Arduino GND und Masser 9-15V Versorgung verbinden) den internen Pullup aktiviern den Open Kollektor auf den Pin und dann dürfte es funktionierm
Ich würde mich auf den Mitarbeiter vom großen C nicht verlassen die Kompetenz der Mitrarbeiter befindet sich fast auf dem Niveau von Saturnmitarbeitern. ]
Ausgelesen habe ich es immer mit digitalRead, physikalisch habe ich es mit digital 6 und 7 aber auch mit einem "analogen", als digitalen eingelesen, nämlich 14 probiert. Gibt es Unterschiede bei den internen Widerständen?
Ich denke aber, es liegt am zu hohen Wert der internen Pullups, auch mit 30K extern funktioniert das Modul nicht mehr!
Hier der Code:
int radarPin = 6;
int piezoPin = 3;
int ledPin = 13;
int radarValue = 0;
void setup() {
pinMode(radarPin, INPUT_PULLUP);
pinMode(piezoPin, OUTPUT);
pinMode(ledPin, OUTPUT);
}
void loop() {
//read radar value
int radarValue = digitalRead(radarPin);
if (radarValue == HIGH) {
noTone(piezoPin);
digitalWrite(ledPin, LOW);
}
else {
tone(piezoPin, 2800);
digitalWrite(ledPin, HIGH);
}
}
Clemens:
Ich denke aber, es liegt am zu hohen Wert der internen Pullups, auch mit 30K extern funktioniert das Modul nicht mehr!
Interessant !
Umgekehrt käme ggf. Sinn dabei raus, wenn ein OpenCollector-Ausgang es nicht schafft, einen zu niederohmigen Widerstand (<<1K ?) nach Masse zu ziehen.
Aber 20, 30, 50 oder 100K auf GND zu bringen sollte eigentlich immer möglich sein.
Alle Verbindungen auch definitiv "fest" ?
Auch die erforderliche Masseverbindung vom Radar-Modul zum Arduino ?
Weil: Wenn das nicht gegeben ist, dann schwebt da was wegen der unterschiedlichen Spannungsversorgungen in der Luft ...
Soll bedeuten: Wenn da keine Masseverbindung zwischen beiden Versorgungen besteht, können die beiden sich möglicherweise statisch auf Vcc-max einigen.
Das wäre dann hier irgendwas Vcc1 - Vcc2 >= 5V und der Dino sieht immer eben immer "HIGH".
(Ohne über die Wupper zu springen !)
Der Arduino wird über eine externe Stromquelle mit 12V versorgt, holt sich dann seine 5V und das Radar-Modul wird über Vin versorgt und nutzt den GND des Arduinos, das sollte also alles save sein, denke ich.