INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Laufzeit
22.01.2016, 12:04
Beitrag #9
RE: Laufzeit
Löst man dieses "Problem" mit der Addition der millis(), sollte nebenbei erwähnt werden, dass die "Betriebsstunden" wieder auf null gesetzt werden, wenn der Ardu neu gestartet wird.
Möchte man das vermeiden muss der Wert ins Eprom geschrieben werden.

Aber erst mal die Aufaddierung zm laufen bringen, Eprom read / wirte kommt dann später. Smile
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
22.01.2016, 12:15
Beitrag #10
RE: Laufzeit
(22.01.2016 12:04)RMR schrieb:  Löst man dieses "Problem" mit der Addition der millis(), sollte nebenbei erwähnt werden, dass die "Betriebsstunden" wieder auf null gesetzt werden, wenn der Ardu neu gestartet wird.
Möchte man das vermeiden muss der Wert ins Eprom geschrieben werden.

Aber erst mal die Aufaddierung zm laufen bringen, Eprom read / wirte kommt dann später. Smile

Das ist ein sehr guter Ansatz, nur wenn es mit millis schon Probleme gibt...

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
22.01.2016, 14:33
Beitrag #11
RE: Laufzeit
(22.01.2016 08:02)Atwist schrieb:  Hallo hotsystems,

Zitat:beim Einschalten milis merken, beim ausschalten milis merken, Differenz rechnen, ausgeben...
Was ist daran nicht zu verstehen? DIFFERENZ bedeutet subtrahieren, also die kleinere von der größeren abziehen....

Oder vielleicht weiß ich doch nicht was "millis" ist (doch ich weiß es)
Nun Einschalten --> millis = 0
AUSSCHALTEN -> millis = 3.600.000
Wie lange glaubst Du, ist die Pumpe gelaufen?

Tipp: du kannst 0 und 3.600.000. Durch nahezu beliebige Zahlen ersetzen.

Oder sollen wir den kompletten Sketch für Dich schreiben?

Claus
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
22.01.2016, 14:46
Beitrag #12
RE: Laufzeit
Zitat:Oder sollen wir den kompletten Sketch für Dich schreiben?

NEIN dass will ich nicht will nur wissen wie man dass anpacken muss hab einen Beispiel gefunden von einen Stoppuhr und die versuch ich jetzt zu verstehen.

Mit freundliche grüßen
Andreas
--
Es tut mir Leid dass ich nicht immer oder direkt ihre Antwort verstehe, durch Konzentration Probleme ist es für mich leichter zu lehren durch "Learning by seeing" bitte um Verständnis.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
22.01.2016, 15:41 (Dieser Beitrag wurde zuletzt bearbeitet: 22.01.2016 15:45 von Claus_M.)
Beitrag #13
RE: Laufzeit
(22.01.2016 14:46)Atwist schrieb:  
Zitat:Oder sollen wir den kompletten Sketch für Dich schreiben?

NEIN dass will ich nicht will nur wissen wie man dass anpacken muss hab einen Beispiel gefunden von einen Stoppuhr und die versuch ich jetzt zu verstehen.

Hallo Andreas.

Beispiele mit Millis gibt es wie Sand am mehr. Such mal nach Blink with out delay..... das ist der Einstieg schlechthin.
By the way: delay sollte man nur dann einsetzen, wenn man genau weiß was man tut, aber das ist eine andere Geschichte.

LG, Claus

[Hier mal ein Link:
Millis Beispiel

LG, Claus
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
22.01.2016, 18:29 (Dieser Beitrag wurde zuletzt bearbeitet: 22.01.2016 18:35 von Atwist.)
Beitrag #14
RE: Laufzeit
Habe etwas ausgedacht
Und Zeit messen geht aber jetzt weiß ich nicht weiter, wie krieg ich jetzt die Total Zeit
Code:
const int pumpe = 2;            

long start;
long dauer;

void setup() {
  pinMode(pumpe, INPUT);
  digitalWrite(pumpe, LOW);
  Serial.begin(9600);
}

void loop() {
  if(digitalRead(pumpe) == HIGH) {
  start = millis();
  while(digitalRead(pumpe) == HIGH) {
  1; // warten, solange pumpe aktiv ist
  }
  dauer = millis() - start;
  Serial.println(dauer);
  }
}

Mit freundliche grüßen
Andreas
--
Es tut mir Leid dass ich nicht immer oder direkt ihre Antwort verstehe, durch Konzentration Probleme ist es für mich leichter zu lehren durch "Learning by seeing" bitte um Verständnis.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
22.01.2016, 19:41 (Dieser Beitrag wurde zuletzt bearbeitet: 22.01.2016 19:49 von hotsystems.)
Beitrag #15
RE: Laufzeit
Z.B. so:
Nicht getestet.

Code:
DauerGesamt = DauerGesamt + dauer;
Dies hinter deine letzte serial.println.
Und die Variable "DauerGesamt" global deklarieren.

Ich erkenne allerdings nicht, wie du die Pumpe ausschaltest und frage ich mich, ob das so überhaupt funktioniert.
Es sind noch mehr Dinge, die unklar sind.

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
22.01.2016, 21:11
Beitrag #16
RE: Laufzeit
(22.01.2016 18:29)Atwist schrieb:  
Code:
while(digitalRead(pumpe) == HIGH) {
  1; // warten, solange pumpe aktiv ist
  }
}

Was macht diese Anweisung?

Wo schaltest Du die Pumpe aus?

Wie oft wird die Pumpe / Tag ein- und ausgeschaltet?

Willst Du die Dauer der Laufzeit / Tag?

Willst Du die Dauer der Laufzeit / Woche?

Du musst dir noch eine Variable für die Gesamtdauer anlegen und diese immer mit der Variable Dauer "auffüllen"

Gesamtdauer = Gesamtdauer + Dauer. Aber wenn Du viele und lange Laufzeiten hast, wird die diese bald überlaufen....

Sag mal, was Du genau auswerten willst, und bitte nicht antworten: die Dauer wie lange die Pumpe gelaufen ist.....

LG, Claus
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Array während Laufzeit neu definieren BennIY 2 647 26.08.2015 19:22
Letzter Beitrag: BennIY
  Due: freier Speicher für Variablen während der Laufzeit? HaWe 8 1.395 28.04.2015 08:22
Letzter Beitrag: tito-t
  wie kann ich zur Laufzeit die Größe dieses Array festlegen? avoid 12 1.361 22.04.2015 20:33
Letzter Beitrag: Bitklopfer

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste