Arduino tijd(milli) en druk sensor

Projecten die niet passen in bovenstaande onderwerpen
Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: Arduino tijd(milli) en druk sensor

Berichtdoor nicoverduin » 01 Mei 2014, 15:54

Bijna.....
De timer zet je gelijk aan millis(). Dat is een klok die ongeveer 49 dagen op loopt per milliseconde. en daar hoef je zelf niets voor te doen.

Dus wat ik aangaf is als er sprake is van druk dan kijk je of de timer is gezet. Zo niet dan zet je hem gelijk aan millis(). Als hij al ongelijk is aan 0 (dus hij loopt al) dan kijk je of millis() NU MOD (modulo) 60000 (= 60000 milliseconden = 1 minuut) groter is dan 5 (m.a.w. er zijn meer dan 5 minuten verstreken sinds de timer is gezet. En als dat het geval is dan zet je de LED aan. Anders zet je hem uit (misschien staat ie al uit maar dat maakt in de verwerking verder niets uit).

Als er geen sprake is van druk dan zet je de timer gewoon weer op 0.

Dus dat is wel iets anders zoals je zelf had gedaan. Lijkt mij.
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Advertisement

Berichten: 10
Geregistreerd: 27 Apr 2014, 17:58

Re: Arduino tijd(milli) en druk sensor

Berichtdoor peruwan » 04 Mei 2014, 15:30

ik kreeg dit als reactie van iemand maar krijg alsnog 2 erros maar dit is wel in de buurt...
Code: Alles selecteren
unsigned long pressureOnTime; //millis() time when pressure switch is first turned on

const unsigned long ledOnAfterTimeThreshold = 300000; //5 minutes * 60 sec * 1000 mSec
int pressureThreshold = 1; //minimum analog reading from pressure sensor considered to be "on"

const int fsrAnalogePin = 0;
const int ledPin = 11;

int ledState = LOW;
int pressureState = LOW;

void setup() {
    Serial.begin(9600);
}

void loop() {
    checkPressureSwitch(); 

    //do other stuff here
}


void checkPressureSwitch() {
    if( analogRead(fsrAnalogePin) >=  pressureThreshold )
    {
        handlePressureOn();
    }
    else
    {
        handlePressureOff();
    }

    digitalWrite(ledPin, ledState);
}

void handlePressureOn() {
    if ( pressureState == LOW )
    {
        //pressure switch was off, but is now on
        pressureOnTime = millis();
        pressureState = HIGH;
    }

    else if ( millis() - pressureOnTime >= ledOnAfterTimeTheshold )
    {
        ledState = HIGH;
    }
}

void handlePressureOff() {
    ledState = LOW;
    pressureState = LOW;
}

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: Arduino tijd(milli) en druk sensor

Berichtdoor nicoverduin » 04 Mei 2014, 17:58

welke errors?
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 10
Geregistreerd: 27 Apr 2014, 17:58

Re: Arduino tijd(milli) en druk sensor

Berichtdoor peruwan » 06 Mei 2014, 17:34

error is weg nu alleen als ik de serialmonitor open doe zie ik niks...

Code: Alles selecteren
unsigned long pressureOnTime; //millis() time when pressure switch is first turned on

const unsigned long ledOnAfterTimeThreshold = 300000; //5 minutes * 60 sec * 1000 mSec
int pressureThreshold = 1; //minimum analog reading from pressure sensor considered to be "on"

const int fsrAnalogePin = 0;
const int ledPin = 11;

int ledState = LOW;
int pressureState = LOW;

void setup() {
    Serial.begin(9600);
}

void loop() {
    checkPressureSwitch(); 

    //do other stuff here
}


void checkPressureSwitch() {
    if( analogRead(fsrAnalogePin) >=  pressureThreshold )
    {
        handlePressureOn();
    }
    else
    {
        handlePressureOff();
    }

    digitalWrite(ledPin, ledState);
}

void handlePressureOn() {
    if ( pressureState == LOW )
    {
        //pressure switch was off, but is now on
        pressureOnTime = millis();
        pressureState = HIGH;
    }

    else if ( millis() - pressureOnTime >= ledOnAfterTimeThreshold )
    {
        ledState = HIGH;
    }
}

void handlePressureOff() {
    ledState = LOW;
    pressureState = LOW;
}

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: Arduino tijd(milli) en druk sensor

Berichtdoor nicoverduin » 06 Mei 2014, 18:22

Gek heh :)
Als je niets naar de Serial monitor stuurt.......
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 10
Geregistreerd: 27 Apr 2014, 17:58

Re: Arduino tijd(milli) en druk sensor

Berichtdoor peruwan » 07 Mei 2014, 13:59

ja had ik al door hahah maar nu even kijken hoe ik deze in mijn board implementeer

Berichten: 10
Geregistreerd: 27 Apr 2014, 17:58

Re: Arduino tijd(milli) en druk sensor

Berichtdoor peruwan » 09 Mei 2014, 17:24

kan iemand mij helpen hoe ik deze code implementeer op de breadboard..want ik krijg hem niet werkend hoe ik het nu doe

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: Arduino tijd(milli) en druk sensor

Berichtdoor nicoverduin » 09 Mei 2014, 18:31

Waar heb je het nu over?.... Het circuit op de breadboard bouwen?
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 10
Geregistreerd: 27 Apr 2014, 17:58

Re: Arduino tijd(milli) en druk sensor

Berichtdoor peruwan » 11 Mei 2014, 14:09

ja dat

Vorige

Terug naar Overige projecten

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 8 gasten