Ergebnis 1 bis 5 von 5
  1. #1
    Avatar von xorg1990
    xorg1990 ist offline König
    registriert
    19-12-2013
    Beiträge
    866

    Minutenzeiten validieren

    Hallo Freunde, ich bin ja kaum noch hier im Forum unterwegs aber ab und zu mal muss ich eben doch vorbei schauen.
    Ich bin ja zur Zeit gesundheitlich etwas angeschlagen. Nee, keine Corinna/Carola oder wie auch immer. Habe mir den Bizeps abgerissen.

    Der Bizeps an sich ist mir egal. Ich bekomme aber Psychisch eine auf die Fresse, da seit einem Jahr Leistungsport jeden Tag 3 Stunden und jetzt -APRUPTER STOP. Der Schultermuskel abriss damals hat mich 2 Jahre beschäftigt.

    Nun gut kommen wir zum Thema.

    Ich bin auf einem Mikrocontroller zu Gange und lese in der loop die Minuten Zeiten aus einem DS3231 RTC Chip.
    Ich benötige aber für die Pumpe eine 3 Minütige Einschaltverzögerung.

    Der Code schaut erst mal so aus

    Code:
    
    timeWhenPumpStart = 100;
    
    loop{
     DateTime now = RTC.now();
        uint8_t m = now.minute();
    
    if(digitalRead(schwimmerPin) && timeWhenPumpStart == 100){
       timeWhenPumpStart = m+3
    }
    
    if(m == timeWhenPumpStart ){//pumpe ein
    timeWhenPumpStart = 100;
    }
    
    }
    Ja alles schön und gut aber wenn m 59 ist und ich 3 aufradier bin ich bei 62. Dann wird aber die m == timeWhenPumpStart Bedingung nie true.

    Ich könnte jetzt einen if Baum einbasteln.

    if m==57 {
    timeWhenPumpStart = 0;
    }else if(m==58){
    imeWhenPumpStart = 1;
    }..usw.

    Das funktioniert aber spätesten dann nicht mehr wenn ich den User die Einschaltverzögerung einstellen lassen möchte.

    Gibt es da eine Mathematik, das ich wenn die Addition großer ist als 59 wider bei 0 raus komme. Wie bei einem Überlauf?

  2. #2
    Avatar von mikdoe
    mikdoe ist offline Administrator
    registriert
    01-05-2010
    Beiträge
    7.731

    AW: Minutenzeiten validieren

    Hi xorg1990!

    Der Code wirkt auf mich unnötig kompliziert. Ist das nicht mit setTimeout ganz ohne das Additions Geschwurbel lösbar?
    Das deutsche Javascript Forum http://forum.jswelt.de http://forum.jswelt.de/images/logoJsWeltForumV4_32x22.png
    Sorry wenn ich manchmal ohne Hallo und nur klein schreibe! Dann bin ich nicht unfreundlich sondern mit nervigem kleinem Touch Tablet zugange

  3. #3
    tsseh ist offline Foren-Gott
    registriert
    19-05-2008
    Beiträge
    5.667

    AW: Minutenzeiten validieren

    Zitat Zitat von xorg1990 Beitrag anzeigen
    Gibt es da eine Mathematik, das ich wenn die Addition großer ist als 59 wider bei 0 raus komme. Wie bei einem Überlauf?
    modulo

  4. #4
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.714

    AW: Minutenzeiten validieren

    @mikdoe: das ist kein JavaScript und bei Microcontrollern gibt es sowas wie setTimeout meistens nicht.

    @xorg: wie hesst schon gesagt hat, gibt es modulo (https://de.wikibooks.org/wiki/C-Prog...ratoren#Rest_%), aber ich würde da eher mit dem UNIX-Timestamp arbeiten und dann da einfach immer 3*60 draufaddieren und mit > vergleichen (den initialen Vergleich zum setzten könntest du ja dann mit 0 machen). Dadurch wird das ganze einfacher und auch genauer. In deinem Fall hast du ja nur im besten Fall 3 Minuten Verzögerung. Wenn es z.B. 12:00:59 ist würde sich die Pumpe ja schon um 12:03:00 einschalten.

    Auch könntest du damit beliebig große Verzögerungen haben - jetzt hast du ja ein Maximum von 59 Minuten.

  5. #5
    Avatar von xorg1990
    xorg1990 ist offline König
    registriert
    19-12-2013
    Beiträge
    866

    AW: Minutenzeiten validieren

    Zitat Zitat von tsseh
    modulo
    Jau, ist mir den Nächten Tag auch eingefallen.

    Zitat Zitat von kkapsner
    Wenn es z.B. 12:00:59 ist würde sich die Pumpe ja schon um 12:03:00 einschalten.
    Oha, da hast du recht.

    Du glaubst ja garn nicht was für ein Krampf das ist mit Datums's und Uhrzeiten zu arbeiten auf einem Mikrocontroller.

    Pumpe ein-/aus -schalt Zeit, Analuf Verzögerung, dann Druck und Durchflussmenge messen im gegeben Intervall.
    Pumpen Strom Messen , Motor Temperatur ermitteln.

Ähnliche Themen

  1. Email und URL validieren
    Von besucher80 im Forum JavaScript
    Antworten: 26
    Letzter Beitrag: 02-06-2010, 23:39
  2. editfelder auf url validieren
    Von lachzb9be im Forum JavaScript
    Antworten: 6
    Letzter Beitrag: 10-03-2010, 13:59
  3. validieren
    Von Generic1 im Forum JavaScript
    Antworten: 1
    Letzter Beitrag: 09-07-2009, 00:11
  4. xhtml validieren
    Von Bieber im Forum CSS und (X)HTML
    Antworten: 8
    Letzter Beitrag: 29-05-2009, 08:38
  5. MAC mit JS validieren....???
    Von s0h0 im Forum JavaScript
    Antworten: 9
    Letzter Beitrag: 05-03-2009, 17:07

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •