Script voor

Arduino specifieke Software
Berichten: 63
Geregistreerd: 09 Jun 2017, 01:59
Woonplaats: Fiji

Script voor

Berichtdoor Dino » 25 Nov 2017, 13:00

zoek een stukje script voor een bewegingsmelder die op moment van activering niet meteen alarm aanzet maar kijkt of deze langer dan 30 sec duurt en dan pas alarm aanzet .
dus hij moet echt kijken of de activering langer dan 30 sec is
je begrijpt dat als er een mus langs vliegt hij niet meteen alarm moet slaan.
ik gebruik deze test script even .
Code: Alles selecteren

int pirPin = 10;
int relay = 9 ;
int ledPin = 13;

int pirPinWaarde = 0;

void setup() {
  pinMode (pirPin, INPUT);
  pinMode(relay, OUTPUT);
  pinMode (ledPin, OUTPUT);
  Serial.begin (9600);
}

void loop() {
  pirPinWaarde = digitalRead (pirPin);
  //Serial.println(pirPinWaarde);
  if (pirPinWaarde == HIGH)
  {
    digitalWrite (ledPin, HIGH);
    digitalWrite(relay, HIGH);
    delay(2000);
   
  }
  else {
    digitalWrite (ledPin,LOW);
    digitalWrite(relay, LOW);
   
  }
}

Advertisement

Gebruikers-avatar
Berichten: 2655
Geregistreerd: 06 Aug 2016, 01:03

Re: Script voor

Berichtdoor Koepel » 25 Nov 2017, 13:54

Weet je hoe een bewegingsmelder werkt ? Die geeft een bepaalde vaste tijd een signaal, ongeacht wie of wat er voorbij kwam.

Berichten: 63
Geregistreerd: 09 Jun 2017, 01:59
Woonplaats: Fiji

Re: Script voor

Berichtdoor Dino » 25 Nov 2017, 14:20

klopt weet ik, zelfs kan je die tijd ook nog instellen maar hij moet kijken of de periode van activeren en looptijd groter is dan ingesteld zo ja activeer alarm

if (bewegingsensor(1)> tijd ) bv 3000 dus 3 seconden
digitalWrite (pin,HIGH)
else
DigitalWrite(pin>LOW):

of actiev aantal keer in drie seconden dan digitaWrite.HIGH


zo iets dus
hij mag dus niet bij een keer activeren alarm slaan maar na een paarkeer binnen een gestelde tijd .

Gebruikers-avatar
Berichten: 2655
Geregistreerd: 06 Aug 2016, 01:03

Re: Script voor

Berichtdoor Koepel » 25 Nov 2017, 14:32

Zo iets zie ik toch nog niet gebeuren.
Iemand kan in het bereik van de PIR sensor komen lopen en dan stil gaan staan. Dan is de PIR sensor ook kort actief.
Een mus kan ook heen en weer vliegen.

Met een delay() kun je weinig. Tijdens die delay kun je niets meer doen, en tijdens die delay kan er van alles gebeuren.

Je beschrijving is nog niet volledig.
Wat als die PIR sensor zo is gemaakt, dat hij altijd even uit gaat na de ingestelde tijd. Dan heeft het geen zin om te kijken of hij 30 seconden continue actief is.

Kun je een betere beschrijving geven ?
Hoe lang moet de Arduino een signaal afgeven ?

Volgens mij heb je dit nodig: https://www.arduino.cc/en/Tutorial/StateChangeDetection.
Verder heb je millis() nodig om de tijd bij te houden.

Als je wilt kun je eenvoudig beginnen met delay() van 30 seconden en weer kijken of de PIR sensor nog aktief is. Maar dan kan het gemakkelijk verkeerd gaan. Die StateChangeDetection heb je dan nog steeds nodig.

De beste oplossing is misschien een kat nemen :lol: die de mussen weg houdt. En een goede kwaliteit PIR sensor die niet op huisdieren let.

Berichten: 63
Geregistreerd: 09 Jun 2017, 01:59
Woonplaats: Fiji

Re: Script voor

Berichtdoor Dino » 25 Nov 2017, 15:32

Dank

daar was ik al geweest en mee bezig , maar erg lukken nog niet .
maar blijf proberen .

Berichten: 4064
Geregistreerd: 16 Okt 2013, 14:31
Woonplaats: s hertogenbosch

Re: Script voor

Berichtdoor shooter » 25 Nov 2017, 15:56

Er zijn een paar toestanden die je doorloopt:
sensor uit logisch geen probleem
sensor aan (dan moet je de tijd even vastleggen dus je millis() in een variabele stoppen, en een merker aanzetten dat je wacht)
als sensor weer uitgaat dan zaak resetten
als tijd afgelopen is dan is er sprake van alarm.
Nadelen die je mee kunt maken is dat sensor telkens aangaat en weer uit zonder de alarmtijd te bereiken.
dat kun je ondervangen door een rusttijd te gebruiken, waarna je reset, en als de sensor binnen de waaktijd weer aangaat dan alsnog alarm.
Ik geef expres niet een mooi programma, want dat haalt het leuke eraf.
paul deelen
shooter@home.nl

Berichten: 63
Geregistreerd: 09 Jun 2017, 01:59
Woonplaats: Fiji

Re: Script voor

Berichtdoor Dino » 25 Nov 2017, 17:26

heb een alarm installatie gebouwd met pir sensoren , werkt perfect.
alleen dus perfect dhu hij gaat zo wel erg snel in alarm dit wil ik onder vangen dus door een meting via de pir veel actie is dus alarm weinig actie geen alarm .
met de link die je stuurde kom ik een aardig end mee weg . dus nog ff sleutelen .

Berichten: 3
Geregistreerd: 28 Mrt 2015, 21:04

Re: Script voor

Berichtdoor arpeggio » 27 Nov 2017, 21:58

Hallo Dino, wat ik je nog als tip wil meegeven, kijk eens even naar bink without delay.
Daarin kun je de tijd zegmaar vestleggen van het eerste alarm en dan ingeven na hoeveel tijd er echt alarm moet zijn. Een mooie leer sketch voor dit onderwerp.
Je kunt dan bv ook 'kijken' hoe snel de alarm state changes elkaar opvolgen.
Veel plezier met codes schrijven.
Dian from the Netherlands

Terug naar Arduino software

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 25 gasten