- SF800 Solar Speicher Tutorial         
Ergebnis 1 bis 10 von 25

Thema: YACCBOA - YetAnotherCameraControlerBasedOnArduino

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    12.04.2008
    Alter
    40
    Beiträge
    557
    Auch wenn bisher noch niemand geantwortet hat, hoffe ich doch, dass mir jemand bei meiner nächsten Frage hilft

    Ich halte mich, gefühlt schon wieder zu lange, an einer Kleinigkeit auf. Ich möchte, während das Programm durchfahren wird, auf dem Display einen Countdown anzeigen. Verbleibende Zeit zur nächsten Auslösung, verbleibende Dauer der aktuellen Auslösung und wer weiß wo sich das noch einbauen lässt. Ich bekomme nur keine vernünftige Ausgabe hin. Ich hab schon Knoten in meinen Windungen und fürchte, dass ich mich mit einem zu komplizierten Weg nur im Kreis drehe. Ein Anstoß von außen wäre daher super

    Code:
    void countdown(unsigned int countdown_sec, unsigned int countdown_mill){
      unsigned int start_mill = millis();
      unsigned int act_sec = 0;
      unsigned int act_mill = millis();
      unsigned int disp_sec = 1;
      int disp_mill = 0;
      unsigned int check_mill = 0;
      int temp_mill = countdown_mill;
      int i = 0;
      
      Serial.println("");
      Serial.println("");
      Serial.println("");
      
      while(!((disp_mill == 0) && (disp_sec == 0)))
      {
    //   Serial.print("Schleife");
        act_mill = millis() - start_mill;
        act_sec  = (act_mill / 1000);
        act_mill = ((act_mill - act_sec * 1000)/100);
        
        if(check_mill != act_mill)
        {
          disp_mill = 9 - act_mill - countdown_mill;
          disp_sec = countdown_sec - act_sec -1;
          Serial.print(countdown_sec);
          Serial.print(",");
          Serial.print(countdown_mill);
          Serial.print("          ");
          Serial.print(act_sec);
          Serial.print(",");
          Serial.print(act_mill);
          Serial.print("          ");
          Serial.print(disp_sec);
          Serial.print(",");
          Serial.println(disp_mill);
          check_mill = act_mill;
        }
      }
      while(1)
      {}
    }
    Wie man erkennen kann möchte ich mich auf die Angabe in "Sekunde,Zehntelsekunde" beschränken. Mit einem Countdown der bei X,0 startet ist die Ausgabe fast gut, nur die erste Zehntelsekunde wird verschluckt. Aber bei ungraden Zeiten rutsche ich immer in Minus und komme auf keinen grünen Zweig. Wäre super wenn mal jemand mit dem Zaunpfahl winken könnte wo ich mich verrannt habe.
    Alles ist möglich. Unmögliches dauert nur etwas länger!

  2. #2
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    12.04.2008
    Alter
    40
    Beiträge
    557
    Führe ich hier Selbstgespräche oder gibt es wenigstens interessierte, schweigende Mitleser?

    Es hilft scheinbar bei vielen Probleme diese erst ein mal zur Seite zu legen und auf den Geistesblitz zu warten. Dieser traf mich heute. Das größte Problem beim obigen Code war, dass ich es zu kompliziert angegangen bin. Etwas verschlankt und vereinfacht funktioniert nachfolgender Code zufriedenstellend

    Code:
    void countdown(unsigned int countdown_sec, unsigned int countdown_mill, unsigned int row, unsigned int col){
      unsigned int start_mill = millis();
      unsigned int check_mill = 0;
      unsigned int act_mill = millis();
      unsigned int disp_sec = countdown_sec;
      unsigned int disp_mill = countdown_mill;
      char buffer[4];
    
    
      
      Serial.println("");
      Serial.println("");
      Serial.println("");
      
      while(!((disp_mill == 0) && (disp_sec == 0)))
      {
        act_mill = (millis() - start_mill)/100;
        
        if(check_mill != act_mill)
        {
          lcd.setCursor(row,col);
          
          if(disp_sec<10)
            lcd.print(" ");
            
          sprintf(buffer, "%d,%d", disp_sec, disp_mill);
          lcd.print(buffer);
           
          if(disp_mill == 0)
          {
            disp_sec--;
            disp_mill = 9;
          }
          else
          {
            disp_mill--;
          }
          check_mill = act_mill;
        }
      }
      while(1)
      {}
    }
    Heute kamen meine Bestellungen für den Schlitten. So kann ich auch mechanisch endlich wieder ein bissche basteln. Ich berichte weiter. Ob ihr wollt oder nicht :P
    Alles ist möglich. Unmögliches dauert nur etwas länger!

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    14.11.2003
    Beiträge
    813
    Hallo

    Sehr interessant.
    Mir kommt es so vor als haetten wir so eine Loesung schon in unserem Hackerspace Bremen.
    Komm doch einfach mal vorbei.

    KR
    Ich bin keine Signatur, ich putz hier nur ....

  4. #4
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    12.04.2008
    Alter
    40
    Beiträge
    557
    Ja, die Aparatur habe ich schon bei der MakerFair gesehen. Wohnort Bremen ist nicht mehr aktuell. Hab es nur verpeilt hier zu ändern. Aber ich muss mal gucken ob ich nicht mal wieder nen Grund finde euch im Space zu besuchen. Mal gucken wie sich das weiterentwickelt hat
    Alles ist möglich. Unmögliches dauert nur etwas länger!

  5. #5
    Erfahrener Benutzer Robotik Einstein Avatar von Andree-HB
    Registriert seit
    10.12.2004
    Ort
    Bremen
    Alter
    54
    Beiträge
    2.807
    Also die Kamerasteuerung (Hardware) habe ich ja schon mal gebaut :
    https://www.roboternetz.de/community...blitzsteuerung

    Und einen Kameraslider hat sich Michael ja gebaut (gezeigt/gesehen auf der Makerfaire), der steuert die Kamera ja auch sogar komplett über USB.

    Wenn Du `ne Mate ausgibst, dann kannst Du uns im Space gerne ausfragen...

  6. #6
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    12.04.2008
    Alter
    40
    Beiträge
    557
    Hab deine, und auch andere, Steuerungen schon gesehen und dazu ein bisschen gelesen. Allerdings geht es mir auch um das selber bauen. Ein Professor von mir meinte immer "Kopiert ist nicht gleich kapiert"

    Fertige Produkte kaufen möchte ich eigentlich nicht, andere Projekte nachbauen auch ungern, da bei Fehlfunktionen das große Um-Hilfe-betteln los geht. Außerdem lerne ich dabei weniger

    Übers Wochenende werde ich mal die Mechanik vom Slider zusammen klöppeln.

    @Andree-HB: Ist Mittwochs noch der offene Themenabend?
    Alles ist möglich. Unmögliches dauert nur etwas länger!

  7. #7
    Erfahrener Benutzer Robotik Einstein Avatar von Andree-HB
    Registriert seit
    10.12.2004
    Ort
    Bremen
    Alter
    54
    Beiträge
    2.807
    ...vielleicht einfach nur als kleine Hilfe/Gedankestützt der damalige Schaltplan:
    http://www.pixelklecks.de/pictures/TriggerControl_2.png

    Dienstags ist immer öffentlicher Themenabend, da geht es aber um Workshops
    Mittwochs ist Projektabend, aber auch da ist Jeder Besucher herzlich gerne eingeladen. Da kann man soetwas gut "eintüten".

Berechtigungen

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

Solar Speicher und Akkus Tests