Auslösebegrenzer für Halloweenprojekt

Hallo,

für Halloween habe ich mit zwei Arduinos inkl. XBees, einem PIR-Sensor, einem Raspberry Pi, einer Soundanlage und einem Strobo eine Installation geplant.

U.A. wird durch den PIR-Sensor und der Funkübertragung per XBee ein Blitz vom Strobo ausgelöst und ein Donnersound vom Raspberry Pi ausgelöst.

Alles funktioniert bereits wie erwartet, jedoch beschäftigt mich noch folgendes Problem:

Das Auslösen des Blitzes inkl. Donnersound soll zwar eigentlich unmittelbar hintereinander auslösbar sein, jedoch möchte ich den Abstand der Auslösung bei permanent festgestellter Bewegung jeweils verdoppeln.

Zwei Beispiele:

  1. Autos fahren im Abstand von ca. 20 Sekunden an dem Sensor vorbei- Ergebnis: Der Blitz löst jedesmal aus

  2. Kinder stellen fest, dass sie den Blitz durch Bewegung auslösen können und springen minutenlang vor dem Sensor rum- Ergebnis: Bis sich die Kinder verziehen, soll sich die Auslösezeit nach jedem einzelnen Blitz verdoppeln. Im Anschluss sollen die Blitze wieder so ausgelöst werden können, dass die Funktionalität aus dem ersten Beispiel gewährleistet ist.

Bisher kann ich lediglich gewährleisten, dass der Abstand zwischen zwei Blitzen mind. 13 Sekunden betragen muss.

if(millis() >= last_flash + 13000)
{
  flash();
  last_flash = millis();
}

Komme irgendwie nicht drauf, wie ich den Code auf meine Anforderungen hin umschreiben kann.

Gruß Chris

Du musst Dir also die Anzahl der Blitze pro Zeit merken - Zeit messen kannst Du, zählen auch.
Der Zähler läuft mit jedem Blitz hoch und mit der verstrichenen Zeit ergibt das sozusagen eine Blitzfrequenz. Ist die "hoch", wird die Pause verlängert.
Tut sich dann irgendwann nix mehr setzt Du den Zähler wieder auf Null.

Gibt sicherlich auch andere Ansätze, aber so würde ich da rangehen.

Danke! :slight_smile:

Gruß Chris

Mal eine Frage nebenbei, kannst du dass nicht genauso gut ohne Raspberry erledigen?
Ich sehe da gerade eine große Verschwendung daran, dass der Raps sich nur um die Soundausgabe kümmert.

Der Arduino ist zwar nicht so wirklich in der Lage, soundfile wieder zu bearbeiten, jedoch ist das Wiedergeben mit einem Midi/Mp3 Shield kein Problem, da hier vom Arduino lediglich die Steuerbefehle kommen.

Das was rumliegt wird verarbeitet und ein MP3-Shield lag hier einfach ned rum. :stuck_out_tongue:

Gruß Chris

Chris72622:

  1. Autos fahren im Abstand von ca. 20 Sekunden an dem Sensor vorbei- Ergebnis: Der Blitz löst jedesmal aus

Hallo,

da drängt sich mir folgendes Szenario auf: Zwei Autos fahren vorbei. Das erste löst den Blitz aus. Der Fahrer denkt an eine Radarfalle und tritt voll auf die Bremse. Der Hintermann fährt auf.

Gruß,
Ralf

Es ist nicht verboten ein Stroboskop auf einem Balkon zu betreiben. Desweiteren findet das Ganze in einer 30er Zone und lediglich an Halloween statt.

Gruß Chris

Chris72622:
Es ist nicht verboten ein Stroboskop auf einem Balkon zu betreiben.

Hallo,

ich rede gar nicht von verboten oder nicht. Ich wollte mal innerorts über eine befahrene Straße hinweg eine Lokomotive fotografieren (die war da als Museumsstück aufgebaut). Ich habe dann meine Kamera mit Teleobjektiv und Stativ aufgebaut und auf die Lok gezielt. Schon der dritte oder vierte Autofahrer der vorbei fuhr hat so eine Vollbremsung hingelegt, dass es beinahe einen Auffahrunfall gegeben hätte. Fotografieren im öffentlichen Verkehrsraum ist auch nicht verboten, aber ich habe abgebaut und auf mein Foto verzichtet.

Gruß,
Ralf

Chris72622:
Es ist nicht verboten ein Stroboskop auf einem Balkon zu betreiben.
Gruß Chris

Wenn es einen Verkehrsteilnehmer blendet oder erschreckt schon.
Grüße Uwe

Hallo,
"ist nicht verboten ein Stroboskop auf einem Balkon zu betreiben"

Wenn Dein Stroboskop aber durch Fussgänger, Autos oder Lokomotiven ausgelöst werden, dann ist das
ein gefährlicher Eingriff in den Staßenverkehr, und DAS- ist verboten.

"Eine fahrlässige Verursachung der Gefahr kann bestehen, wenn der Täter mit keiner Gefahr rechnet, damit aber hätte rechnen können."

Wenn "Deine" kleinen Kinder also vom Stroboskop abgelenkt werden, und so durch "dummen Zufall" auf die Fahrbahn geraten...
Gruß und Spaß
Andreas

Hallo,

ich kann Eure “Aufregung” verstehen. Seid versichert, dass aufgrund der vorhandenen Gegebenheiten keine Gefährdung besteht.

Anbei mein Flussdiagramm, welches mir (noch) nicht vollumfänglich gefällt, da es nach vier eingegangenen Bewegungen, bei denen nicht geblitzt wurde, unmittelbar zu einer drastischen Verlängerung der Auslösezeit kommt (auslösezeitpunkt = millis()).

Ich würde diese “Verlängerung”, welche aus meiner Sicht notwendig ist (falls es anfängt zu regnen) gerne etwas sanfter gestalten, weiss aber nicht wie ich dies umsetzen kann.

Mein Ziel ist es mittlerweile drei Situationen differenzieren zu können:

  1. “Normale” Funktionalität (Blitze werden ausgelöst, wenn der Absatnd zwischen ihnen mind. 20 Sekunden beträgt)
  2. Kinder wollen vor dem Sensor das Auslösen von Blitzen provozieren
  3. Es regnet über mind. mehrere Minuten und es sollen dabei nicht dauernd Blitze ausgelöst werden

Gruß Chris

PS: auslöseversatz = 20000(ms)

Bildschirmfoto 2014-07-22 um 20.21.04.png

Warum so kompliziert? Sperre nach einer Aktion doch einfach die Auslösung.

Hallo,
"ich kann Eure "Aufregung""
Hier regt sich keiner auf. Meinetwegen kannst Du ganze Landstriche zu Tode
erschrecken, nur bleib mir fern.

Versuche es doch einmal anders:
Die "lieben Kleinen" hampeln vor Deinem Sensor rum. Nun startest Du einen
Timer der so lange zählt wie die Kleinen dort sind.
Beim Start des Timer löst Du einen StrobBlitz aus. Nun löst Du mit dem selben
Timer (der ja noch läuft) nach 20 Sek den nächsten StrobBlitz aus.
Diese 20Sek zählst Du hoch, der nächste StrobBlitz also erst 40Sek später.

Der Timer läuft also nur, wenn tatsächlich Bewegung vorhanden ist.
Beim Start wird ein StrobBlitz ausgelöst.
Wenn noch Bewegung da ist, zählt der Timer weiter und löst nach Deinen Pausen
aus.
Ist keine Bewegung mehr da, bleibt der Timer einfach stehen, geht auf null und
wartet.
Gruß und Spaß
Andreas

sschultewolter:
Warum so kompliziert? Sperre nach einer Aktion doch einfach die Auslösung.

Gut. Aber für wie lange?

Gruß Chris

Hallo,
"Es regnet über mind. mehrere Minuten"

Was hast Du denn für einen Sensor? PIR-Sensor heißt, das er auch über InfraRot
dedektiert. Das heißt, bei Regen geht der NICHT los, auch NICHT, wenn sich
Äste im Wind bewegen.
Wie willst Du denn Personen und Regen unterscheiden?
Kann der denn wenigstens die Richtung bestimmen, aus der die "Bewegung" kommt?
Gruß und Spaß
Andreas

SkobyMobil:
Was hast Du denn für einen Sensor?

So Einen:

http://www.ebay.de/itm/2x-HC-SR501-Adjust-IR-Pyroelectric-Infrared-PIR-Motion-Sensor-Detector-Module-/271167335102?pt=LH_DefaultDomain_77&hash=item3f22d52abe

SkobyMobil:
Wie willst Du denn Personen und Regen unterscheiden?

Indem ich über den Code “permanente Bewegung” als “Regen” definiere.

SkobyMobil:
Kann der denn wenigstens die Richtung bestimmen, aus der die “Bewegung” kommt?

Nein.

Dein letzter Vorschlag (also Dein vorletztes Posting) deckt sich ziemlich gut mit meinem Schaubild.

Dank Dir fürs Mitdenken. :slight_smile:

Gruß Chris

Hallo,
der soll InfraRot dedektieren können. Also mal die Gießkanne aus den Schuppen
geholt und testen. Bei "Regen" darf der nicht losgehen.

"Indem ich über den Code "permanente Bewegung" als "Regen" definiere."
d.h.
Indem ich über den Code "hüpfende Kinder" als "Kinder" definiere??
Gruß und Spaß
Andreas