Hallo, ich habe ein kleines Problem mit meinem PIR Sensor von Conrad. Das Teil ist ein PIR SMD-MODUL 3-12 V/2 mA. Ein Auszug aus der Beschreibung sagt: Integrierter Fensterkomparator, TTL- und CMOS-kompatibler Open-Kollektor-Ausgang mit Pullup, der auch direkt LEDs oder Relais ansteuern kann. Betriebsspannung: 3 - 12 V/1.4 mA Ausgangsstrom: Open-Kollektorausgang 20 mA Meine Frage ist nun.. kann ich den Sensor-Ausgang direkt an einen Digitaleingang des Atmega8 anschließen? Habe die Spannung am Ausgang mit einem Multimeter gemessen..da kommen standartmäßig 0,3-0,5V raus..normal sollten dort doch 5V anliegen und wenn der Sensor schaltet sollte das ganze doch auf 0 fallen oder kann mein Messgerät so kurze Spannungsschwankungen nicht ermitteln? Wäre wirklich dankbar wenn jemand ein bisschen Licht ins Dunkle bringen könnte! Grüße Throsten
Naja ganz auf Null wirds wohl nicht runtergehen, über CE fällt ein bißchen was ab. Aber ansonsten hast Du schon recht. Entweder Du kriegst es nicht hin zu messen ohne den auszulösen ;) oder da ist doch kein pull-up. Bau doch mal einen pull-up dazu (vielleicht so 4.7k) und schau ob es dann geht. Du bist auch sicher, dass die Anschlüsse richtig belegt sind ?
Ich komme einfach nicht weiter, der Sensor liefert am Digitalausgang dauerhaft nur wenige mV, wenn ich mich davor bewege scheint er auf Masse zu ziehen.Das ist das einizige Lebenszeichen. Natürlich interpretiert der Atmega die Leitung immer als low..da geht garnichts (trotz aktivierter, interner Pullup Widerstände). Hier ist ein Link zum Schaltplan bzw zur Beschreibung des Sensors http://www.hygrosens.com/fileadmin/user_upload/Shop/Sensormodule/PIR/PIR_STD_DBD.pdf Könnte Sich bitte jemand die Mühe machen und mir erklären wie der Sensor richtig an den Mikrocontroller-Eingang angeschlossen gehört? Habe leider noch nicht so viel Erfahrung mit der Materie. Vielen Dank schonmal! Grüße
Hallo, ich hab mir mal den Schaltplan des Sensormoduls im Datenblatt angesehen. Eigentlich sollte der Ausgang bei keiner "Anwesenheit" auf 5V sein. Kann es sein, daß der Sensor durch Deine persönlich Anwesenheit ständig durchsteuert und deshalb auf "0" ist ??? Ich habe gelesen das er eine Empfindlichkeit von 4-12m hat.
Hallo, vielen dank für die Information! Der Sensor besitzt die Möglichkeit, die Empfindlichkeit per Lötbrücke einzustellen. Diese steht im Moment auf maximal, sprich 8m. Bin mir nicht sicher ob ich den Sensor auslöse..wenn er vom Körper weg zeigt (z.B. gegen die Wand) solle er doch nichtsmehr messen können ?! Werde mal die niedrigste Empfindlichkeitsstufe probieren und dann hier berichten. Kann ich den Sensor also direkt mit dem Ausgangsport an den Eingang des Atmega anschließen (ohne zus. Widerstand)? Ach ja, noch etwas, muss die Spannungsversorgung des Sensors identisch mit der der Atmega8 Schaltung sein oder kann ich den Sensor mit einem 5V Netzteil betrieben und den Mikrocontroller mit einem anderen Netzteil? Wäre natürlich auch möglich dass der Sensor irgendwie defekt ist... Danke für die Mühe!
Hallo, von den Sensoren habe ich einige im Betrieb. Nach dem Anlegen der Betriebsspannung schaltet das Teil für einige Zeit (ca. 1 Minute ?) auf Masse (oder möglicherweise auch VCC) ... Etwas Geduld haben, dann liegt am "analogen" Ausgang die halbe Betriebsspannung an und schlägt nach "oben" und "unten" aus, sobald der Sensor etwas detektiert.
Hallo zusammen! Ich habe mir das oben genannte Datenblatt ( http://www.hygrosens.com/fileadmin/user_upload/Shop/Sensormodule/PIR/PIR_STD_DBD.pdf )auch mal angeschaut. Leider werd' ich daraus nicht ganz schlau, also rein interessehalber: 1) Ich sehe da nur einen JFET, d.h. wenn überhaupt verfügt der Sensor über einen open-drain-Ausgang?! 2) Welcher der im Schaltplan eingezeichneten Widerstände soll da der Pull-Up sein? 3) Was bewirkt die Diode D2?? Wenn der Ausgang (out) wirklich open-collector (oder open-drain) ist und ich lege dort die im Datenblatt angegebenen 30V an (über ext. pull-up) dann sorgt D2 doch für einen (nahezu) Kurzschluss gegenüber der 5V-Betriebsspannung?! Wie gesagt, ich stelle die Fragen nur aus reiner Neugierde. Schöne Grüße, Alex Ach so, noch was zum Thema: Ich würde mich nicht drauf verlassen, dass der Sensor, wenn du ihn von dir weg hältst, nichts wahrnimmt. Ich würde den kompletten Sensorbereich an deiner Stelle mit irgendetwas lichtdichtem gut verdecken und es dann nochmal versuchen.
@ Gast, du hast vollkommen recht, dieses Verhalten habe ich auch schon festgestellt. Der Sensor hat wohl so etwas wie eine Einschaltverzögerung. Danach liegen am Analogausgang 2,56V an. Wird etwas detektiert, fällt die Spannung kurz auf ca. 0,5V und steigt danach auf 3,5V bevor sie sich wieder auf den 2,56V einpendelt. Wie benutzt du diesen Sensor dann um etwas zu schalten? A/D Wandler am Mikrocontroller? Das wäre jetzt meine Idee gewesen... allerdings müsste man dann erstmal sehen welche Messwerte der Atmega8 vom Sensor liest (->Per RS232 monitoren)...aufwendig @ alex22, nach dem PullUp habe ich auch schon gesucht .. allerdings versprechen die in der Anleitung einen solchen ("2,2K Pullup", "Ruhemodus xxmA, Ausgang: HIGH"..) hab dem Hersteller mal ne Email geschickt, er möge doch bitte bestätigen dass es sich tatsächlich um einen opencollector Ausgang handelt -> mal sehen was kommt. Habe den Sensor schonmal per Verlängerungskabel in einen anderen Raum gebracht..selbes Verhalten. Wofür hat man einen Digitalausgang der dann doch nicht funktioniert... ich verstehe es langsam nichtmehr. Grüße
@ Thorsten S. meine Auswertung sieht wie folgt aus: Bei ersten Tests hatte ich festgestellt, dass der "digitale" Ausgang sich schon mal stören lässt (etwa durch Einschalten einer Halogenlampe im näheren Umfeld). Daher habe ich auf diese, sicherlich einfachere Auswertung dieses Ausgangs verzichtet. Statt dessen messe ich mittels ADC den "analoge" Ausgang des PIR (ca. 10x Sek.). Der Neutralwert liegt bei 128 +- , sofern Vref == VPir und der ADC auf 8Bit Auflösung reduziert wird (reicht völlig aus). Nach meiner Erfahrung erzeugen schwache Bewegungen (wenn die "Empfangkeulen" des Sensors in großer Entfernung durchquert werden) leichtere Schwankungen der Ausgangsspannung, die immer um den Mittelwert schwankt. In näherer Entfernung oder bei starken Temperaturunterschieden schlägt die Ausgangsspannung dann bis GND bzw. VCC durch. Ich differenziere bei der Auswertung zwischen "leichten" Spannungswechseln und "starken" Spannungswechseln (wenn fast GND/VCC erreicht werden). Wichtig ist, dass bei einer Bewegung quer zum Sensor auf eine negative Spannungsabweichung immer eine positive folgt - unabhängig vom Spannungspegel. Um keine Fehlalarme zu erhalten, schalte ich erst dann, wenn mindestens x "kleine" Spannungswechsel oder y "starke" Spannungswechsel innerhalb eines Zeitfensters von z Sekunden erfolgen. Und als mc verwende ich einen kleinen Tiny15. Geht natürlich auch auf einem Mega8. mfg
Hallo Gast, klingt nach einem beinahe genialen Konzept, vielen Dank für die Information. Programmierst du deinen Tiny in Assembler oder in C? Wäre interessant gewesen ein paar Einblicke in die Software zu bekommen. Wie hast du das Verhalten des Sensors so detailliert herausgefunden? Grüße
@ Thorsten S. ob das Konzept wirklich genial ist, naja ... aber zumindest läuft es seit 2 Jahren. Und heute würde ich den Code wahrscheinlich anders formulieren. Aber egal, wenn du dich durchwurschteln willst, den ASM-Code kannst du gerne haben. Das Programm schaltet übrigens nur das Licht ein - und wenn länger als 30 (?)Minuten keine Bewegung erkannt wurde, dann schaltet es wieder aus. Die freien Ports wurden für LED's genutzt, die zeigen, was der PIR so gerade tut (Initialisierung bzw. Erkennung von Bewegung). mfg
Hallo Gast, vielen dank für den Code. Finde die Sache ist sehr strukturiert aufgebaut und besonders das Konzept finde ich klasse .. eben optimal an das Verhalten des Sensors angepasst. Jetzt noch eine kleine Frage: Sehe ich richtig dass du als Referenzspannung eine externe, nämlich die Versorgungsspannung des Sensors selbst nutzt? Finde ich jedenfalls super dass du mir hier ein bisschen helfen konntest, die analoge Auswertung des Sensors scheint doch die deutlich präzisere Lösung zu sein! Werde mich am WE mal daran versuchen, jetzt ist erstmal uni dran... grüße
@ Thorsten S. bezüglich der Referenzspannung: ja. Bei diesem Programm kommt es nicht darauf an, eine konkrete Spannung mit einem absoluten Wert zu ermitteln (deswegen ist die Höhe der Referenzspannung auch ziemlich gleichgültig). Wichtig ist nur, dass im Ruhezustand der Sensor die halbe Versorgungs- spannung ausgibt - egal, ob das nun 2.35 oder 2.49 Volt sind. Deswegen hängen mc und Sensor an ein und derselben Spannung. Gibt der ADC nun im 8-Bit Modus 128 aus, dann liegt genau die halbe Versorgungs- (=Referenz-)Spannung an. Die Höhe der Spannung darf sich übrigens auch ändern, denn die Hälfte ist bei allen Spannungen am mc immer der Wert 128 (+-). mfg
Hallo! Der Thread ist zwar schon einige Jahre alt - trotzdem möchte ich kurz meine Erfahrung mit den genannten Sensoren schildern: 2 Stk gekauft, mit 5V versorgt und den "digitalen Ausgang" an einen digitalen I/O pin (Eingang; interner Pull up aktiviert) eines AtMega8 gehängt. Es funktionierte alles super - ohne "Aufwärmzeit". Doch nach einigen Minuten war plötzlich kein Signal mehr am digitalen Ausgang des Sensors - bzw nur ganz gering: Multimeter zeigte kleine Signale (wenige mV) an - am Oszi war ein Rechteck mit Tastverhältnis 1:1 und Amplitude von ca. 2V zu sehen, wenn der Sensor eine Bewegung detektierte, und 0V wenn alles ruhig war. Das kam mir komisch vor - ich dachte, dass ich vll irgendwann, irgendwie einen Fehler gemacht hätte und den Sensor zerstört hätte (wär nicht das erste mal, dass ich ein Bauteil/Modul zerstöre). Natürlich wurde stundenlang alles nachgeprüft, aber kein Fehler gefunden. Also habe ich am nächsten Tag den zweiten Sensor ausgepackt, mit Spannung versorgt und den digitalen Ausgang gemessen -> selbes Ergebnis wie beim ersten Sensor.... Naütrlich habe ich diesen Thread schon gekannt, und habe auch lange "Aufwärmzeiten" ausprobiert. Aber bei meinen Exemplaren liegt Vref und die analoge Ausgangsspannung eigentlich sofort nach dem Einschalten an den Pins an. Um die Sensoren noch nutzen zu können, lese ich jetzt einfach den analogen Wert mit ADC vom Atmega8 ein und vergleiche gegen einen Schwellwert. Fazit: der digitale Ausgang des ersten Sensors hat ganz sicher für 10 Minuten funktioniert! Der zweite Sensor zweigte von Anfang an dieses komische Verhalten am digitalen Ausgang. mfg
Wer kauft den teuren sensor denn bei conrad ??? den gibt es fuer 2,99 bei ebay...
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.