SpaceInLasers3Kuehe

Aus Hackerspace Ffm
Version vom 7. März 2017, 02:58 Uhr von Tut (Diskussion | Beiträge) (Software Architektur)

(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche

Artgerechte Massentierhaltung

Die Kuh

  • Leuchtet mit schönen Flecken im Lila/Pinken Farben
  • Bei Treffer leuchtet das Kuh-Sklett
  • Kuh fällt um wenn tot (Servo)

Architektur

  • Space'n'lasers Busmodul
    • 8 Lichtsensoren für Kühe
    • Arduino Pro Mini (Energie-Level Bus, mit Objekt-Nr)
      • Neopixel dran 8x 5 Pixel
      • Servocontroller
        • 8 Servos

Software Architektur

Funktionen:

  • Nach Reset Servos in Parkposition
  • Servo-Position "geparkt", "lebt" und "tot" in Array (im Speicher, initialisiert mit Compile-Time-Wert)
  • Kuh Farbe 1 und Farbe 2 in Array (HSV davon nur HS, im Speicher, initialisiert mit Compile-Time-Wert)
  • Bei Energie-Änderung auf 100:
    • Kuh wird von vorheriger Position innerhalb 5s auf "lebt"-Position gefahren
    • Skelett fadet dabei aus, Kuh fadet in
  • Bei Energie-Änderung zwischen 0-99:
    • Kuh blitzt 3x schnell im Skelett-Mode abwechselnd weiss + rot(E1)-gelb(E50)-grün(E99)
    • Kuh zuckt dabei ("lebt-position" - offset) - endet auf lebt oder tot
    • Danach State Standard
  • State Standard
    • E100: Kuh fadet langsam zwischen Farbe 1 und Farbe 2
    • E1-E99: Kuh fading wie oben, Skelett blitzt auf in Farbe des Energie-Levels, aufblitzen Random abhängig vom Energie-Level - je geringer desto öfters
    • E0: Skelett leuchtet bläulich-weiss
  • extra-Befehl RGB-Wert oder HSV-Wert pro Kuh (damit Farben testen)
  • extra-Befehl Position pro Kuh (damit Positionen testen)

Architektur:

  • Kuh definiert durch Index 0..7
    • ggf. Mapping-Tabelle Index zu Neopixelport