Pages: [1]   Go Down
Author Topic: Radar Bewegungsmelder zu Duemilanove  (Read 1724 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 23
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hi ihr Lieben,
ihr habt mir schon einmal so gut helfen können, daher ein weiterer Versuch mit einem neuem Problem:

Ich möchte einen Radar Bewegungsmelder - Modul mit Signalauswertung (http://www.conrad.de/ce/de/product/502667/RADAR-BEWEGUNGSMELDER-RAD-MOD) an mein Arduino Duemilanove anschließen.

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:
Quote
int ledPin = 13;              
int inputPin = 2;            
int rsState = LOW;
int val = 0;              
 
void setup() {
  pinMode(ledPin, OUTPUT);    
  pinMode(inputPin, INPUT);  
 
  Serial.begin(9600);
}
 
void loop(){
  val = digitalRead(inputPin);
  if (val == HIGH) {      
    digitalWrite(ledPin, HIGH);
    if (rsState == LOW) {
      // we have just turned on
      Serial.println("Motion detected!");
      rsState = HIGH;
    }
  } else {
    digitalWrite(ledPin, LOW);
    if (rsState == HIGH){
      Serial.println("Motion ended!");
      rsState = LOW;
    }
  }
}

Logged

Forum Moderator
BZ (I)
Offline Offline
Brattain Member
*****
Karma: 271
Posts: 21872
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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.

Viele Grüße Uwe
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 23
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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
Logged

Forum Moderator
BZ (I)
Offline Offline
Brattain Member
*****
Karma: 271
Posts: 21872
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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.

Die internen pullup aktivierst Du wie folgend:
http://arduino.cc/en/Tutorial/DigitalPins

Grüße Uwe
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 23
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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
Logged

AREA COLOGNE
Offline Offline
Edison Member
*
Karma: 21
Posts: 1145
I am 1 of 10 who understands binary
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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.  smiley-twist
Logged

So ist das Leben:
Manchmal bis du das Denkmal, manchmal die Taube!

Offline Offline
Newbie
*
Karma: 0
Posts: 23
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

vielen Dank für die Hilfe. Läuft alles perfekt,

welches große C meinst du?  smiley-wink
Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 92
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Na, das große Elektronikgeschäft, welches mit C beginnt und onrad aufhört;-)

Rudi
Logged

Offline Offline
Full Member
***
Karma: 1
Posts: 158
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hat das jemand mit den internen Pullups zum Laufen bekommen, bei mir funktioniert es mit 10K oder 20K extern, aber nicht mit den internen!
http://forum.arduino.cc/index.php?topic=190615.0
Logged

D-49565 Bramsche
Offline Offline
Sr. Member
****
Karma: 7
Posts: 477
Geht nich ? Gipp's nich !
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Was für einen Eingang hast du denn genommen ? Einen analogen oder einen digitalen ?
Logged

To young to die - never to old for rock'n roll

Offline Offline
Full Member
***
Karma: 1
Posts: 158
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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:

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);
  } 
}
« Last Edit: September 29, 2013, 08:15:34 am by Clemens » Logged

D-49565 Bramsche
Offline Offline
Sr. Member
****
Karma: 7
Posts: 477
Geht nich ? Gipp's nich !
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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 !)

« Last Edit: September 29, 2013, 10:45:17 am by TERWI » Logged

To young to die - never to old for rock'n roll

Offline Offline
Full Member
***
Karma: 1
Posts: 158
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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.

Ich habe den deutschen Thread erst später entdeckt und vorher hier gefragt:
http://forum.arduino.cc/index.php?topic=190615.0
« Last Edit: September 29, 2013, 03:11:31 pm by Clemens » Logged

Pages: [1]   Go Up
Jump to: