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
LED-Lichtsteuerung mit ATtiny85
17.07.2019, 17:12
Beitrag #9
RE: LED-Lichtsteuerung mit ATtiny85
Hallo,
… jetzt verstehe ich, was ich nicht verstanden habe.
Tschuldigung, Danke && Gruß Georg

Sorry für mein nicht korrektes Deutsch. Sad
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
18.07.2019, 15:36
Beitrag #10
RE: LED-Lichtsteuerung mit ATtiny85
(17.07.2019 17:12)georg01 schrieb:  Hallo,
… jetzt verstehe ich, was ich nicht verstanden habe.
Tschuldigung, Danke && Gruß Georg

Ok.....Georg, ich verzeihe dir. Wink

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
10.09.2019, 10:17
Beitrag #11
RE: LED-Lichtsteuerung mit ATtiny85
Da ich neben der Hardwareentwicklung, endlich auch die Softwareentwicklung zur LED-Lichtsteuerung abgeschlossen habe, möchte ich diese auch hier präsentieren.
Nach mehrmaligem Umbau, bin ich auf die Lösung mit einer Library gekommen, die mich überzeugt hat.
Ich hoffe, der Sketch ist ausreichend dokumentiert.

Code:
/*  ATtiny_Raumlicht_V0_8.ino mit IR-Sensor (AMN31112) und LDR-Dämmerungssensor
  Inkl. Non-blocking LED controlling library (jled.h) for Arduino and friends.
  https://github.com/jandelgado/jled - Copyright 2017 by Jan Delgado. All rights reserved.

    Belegung des Attiny85:
    (SS)PB5 - 1 |  \/  | 8 - Vcc
     A  PB3 - 2 |      | 7 - PB2 A1 (SCK)  + SCL
     A  PB4 - 3 |      | 6 - PB1 (MISO)
        GND - 4 |      | 5 - PB0 (MOSI) + SDA

          PIR     = PB3 / Pin2
          PWM_Out = PB4 / Pin3
          Signal  = PB0 / Pin5
          LDR     = PB2 / Pin7

    Verbrauch Leds bei 12 Volt (2m = 240 Leds) einfach warmweiß
    0,5m = 60 Leds (188mA), 1m = 120 Leds (376mA); 2m = 240 Leds (752mA)
*/

#include <jled.h>                           // https://github.com/jandelgado/jled

//                    ATtiny85              ATtiny85             Uno
const byte pwmPin     = 4;                  // 4  PB4 = Pin3     D3
const byte ldrSensor  = A1;                 // A1 PB2 = Pin7     A1
const byte pirSensor  = 3;                  // 3  PB3 = Pin2     D2
const byte control    = 0;                  // 0  PB0 = Pin5     D5

byte goFadeOn         = 0;
byte fadeValue        = 0;
byte pirValue         = 0;
unsigned int ldrValue = 0;

const int timeFadeOn  = 3000;                                     // Zeit zum hochdimmen
const int timeStayOn  = 15000;                                    // Zeit Led an
const int timeFadeOff = 7000;                                     // Zeit zum runterdimmen
const int maxLdrValue = 600;                                      // LDR-Wert zum aktivieren des PIR

// LED is connected to pin "pwmPin" (PWM capable) gpio
auto ledFadeOn  = JLed(pwmPin);
auto ledStayOn  = JLed(pwmPin);
auto ledFadeOff = JLed(pwmPin);

void readLDR() // Mit LDR Helligkeit prüfen -----------------------------------------
{
  ldrValue = analogRead(ldrSensor);
  if (ldrValue > maxLdrValue)                                   // Wenn der Sensorwert über maxLdrValue; (Heller 300; Dunkler 950)
  {
    readPIR();                                                  // PIR auslesen
  }
}
// End readLDR -----------------------------------------------------------------------


void readPIR() // Sensor auf aktiv HIGH prüfen -------------------------------------
{
  pirValue = digitalRead (pirSensor);                        // Sensor 1, PIR
  if (pirValue)                                              // Wenn Sensorwert = HIGH,
  {
    digitalWrite(control, HIGH);
    goFadeOn = 1;
  }
  else
  {
    digitalWrite(control, LOW);
  }
}
// End readPIR ----------------------------------------------------------------------


void setup()
{
  pinMode(pirSensor, INPUT);
  pinMode(control, OUTPUT);

  ledFadeOn.FadeOn(timeFadeOn);
  ledStayOn.On().DelayAfter(timeStayOn);
  ledFadeOff.FadeOff(timeFadeOff);
}


void loop()
{
  //readPIR();                                                  // Nur PIR-Funktion, ohne LDR
  readLDR();                                                    // LDR auslesen und wenn dunkel dann PIR

  switch (fadeValue)
  {
    case 0:                                                     // ledFadeOn, einschalten und hochdimmen
      if (goFadeOn)
      {
        ledFadeOn.Update();
        if (ledFadeOn.Update() == false)
        {
          goFadeOn = 0;
          fadeValue = 1;
          ledFadeOn.Reset();
        }
      }
      break;

    case 1:                                                     // ledStayOn, Led eingeschaltet lassen
      ledStayOn.Update();

      if (pirValue)
      {
        ledStayOn.Reset();
      }

      if (ledStayOn.Update() == false)
      {
        fadeValue = 2;
        goFadeOn = 0;
        ledStayOn.Reset();
      }
      break;

    case 2:                                                     // ledFadeOff, Led runterdimmen und ausschalten
      ledFadeOff.Update();
      if (ledFadeOff.Update() == false)
      {
        fadeValue = 0;
        goFadeOn = 0;
        ledFadeOff.Reset();
      }
      break;
  }
}

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  [Projekt Vorstellung] Lichtsteuerung im Keller BennIY 0 2.646 08.05.2017 00:08
Letzter Beitrag: BennIY
Star Serial Monitor als Debughilfe für den ATtiny85 und andere ATMEL-Mikrocontroller ardu_arne 38 37.948 15.04.2017 09:34
Letzter Beitrag: hotsystems
  ATtiny85 als Multi-Schnittstelle hotsystems 0 2.699 13.04.2017 17:13
Letzter Beitrag: hotsystems
  ATtiny85 Programmierer Gelegenheitsbastler 2 3.981 20.02.2015 21:28
Letzter Beitrag: Gelegenheitsbastler
Star ATTINY85 mit DS18B20 Temperatursensor und echtem Analogausgang ardu_arne 0 11.874 07.01.2015 21:28
Letzter Beitrag: ardu_arne
  Einfache Android Lichtsteuerung (eigene App) rgx121 0 2.944 29.01.2014 14:54
Letzter Beitrag: rgx121

Gehe zu:


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