Parlons Arduino > Vos projets

Simulation daylight

(1/2) > >>

Guillaume:
Bonjour,
je souhaite sur mon module HOe mettre une simulation jour/nuit avec des bandes de LED. J'en possède une à ton chaud. Il existe aussi des tons froids.
Je sais que froid c'est plutôt la journée et chaud c'est lever et coucher de soleil.
Avant de faire des tests, est-ce que par hasard quelqu'un s'est penché sur ce point ?

Jean-Luc:
Oui, Patrick a travaillé là dessus :

http://jurasecondairen.blogspot.fr/2012/11/jour-et-nuit.html

Même si je pense que le matin, c'est blanc pur à l'aube avant que le soleil se lève puis plus chaud au levé du soleil.

À moduler pour simuler un temps nuageux avec des couleurs plus froides

Et puis ses propres goûts :)

Guillaume:
Je ne m'en rappelais plus de celui-là.
Je vais prendre cela déjà comme exemple pour

Chacun a ses propres valeurs. J'avais trouvé ces trucs sur un site de photos pour une histoire de balance des blancs.
On va mettre en application cela alors

Guillaume:
Et voila un premier jet, il y a des choses à refaire de toute façon, et forcément à simplifier le code :

--- Code: ---//Bibliothèque
#include <ScheduleTable.h>

//Variables pour les tables

//Laisser à 1 pour un cycle de 24h en 24 min, pour accélérer, augmenter jusqu'à 200 max
const byte acceleration = 1;
//----------------------------
//Table générale
const byte actionTable = 4;

ScheduleTable cycle(actionTable, 1440, (1000/acceleration)); //24 min rééls pour un jour de 24h

//--------------------
//Table jour/nuit pour le soleil (ton chaud et froid)
ScheduleTable leverchaud(1, (470/acceleration));
ScheduleTable coucherchaud(1, (235/acceleration));

ScheduleTable leverfroid(1, (470/acceleration));
ScheduleTable coucherfroid(1, (235/acceleration));

// Pin des pwm
const byte pinchaud = 3;
const byte pinfroid =5;
//Variables pour pwm
byte chaudpwm = 0;
byte froidpwm = 0;

void setup() {
  // ajout des taches sur la table générale
  cycle.at(600, setleverchaud);
  cycle.at(1140, setcoucherchaud);
  cycle.at(360, setleverfroid);
  cycle.at(1080, setcoucherfroid);
 
  //ajout sur table annexe
  leverchaud.at(0, pwmleverchaud);
  leverfroid.at(0, pwmleverfroid);
  coucherchaud.at(0, pwmcoucherchaud);
  coucherfroid.at(0, pwmcoucherfroid);
 
  cycle.start();
 
  pinMode(pinchaud, OUTPUT);
  pinMode(pinfroid, OUTPUT);
}

void loop() {
  // put your main code here, to run repeatedly:
  ScheduleTable::update();
}

//Fonctions pour les scheduleTable

void setleverfroid(){
  leverfroid.start(255);
}

void setcoucherfroid(){
  coucherfroid.start(255);
}

void setleverchaud(){
  leverchaud.start(255);
}

void setcoucherchaud(){
  coucherchaud.start(255);
}

void pwmleverfroid(){
  froidpwm++;
  analogWrite(pinfroid, froidpwm);
}

void pwmcoucherfroid(){
  froidpwm--;
  analogWrite(pinfroid, froidpwm);
}

void pwmleverchaud(){
  chaudpwm++;
  analogWrite(pinchaud, chaudpwm);
}

void pwmcoucherchaud(){
  chaudpwm--;
  analogWrite(pinchaud, chaudpwm);
}
--- Fin du code ---

petitrain:
bonjour à tous,
Je reprends la parole après un long silence, je vois que le forum est toujours actif...
Je n'ai toujours pas testé les sheduleTable de Jean Luc, ça a l'air vraiment simples.
Pour répondre à ta question, sur mes modules, j'ai testé pas mal de choses pour le jour et la nuit et je n'ai pas encore  décidé quoi prendre:
 J'ai mis des rubans de leds RGB en soutien pour augmenter les tons chauds le matin et le soir, du blanc/bleu pour pour les journées froides d'hiver et pour la pleine lune.
 J'ai mis aussi un ruban de blanc chaud mais je ne sais pas si je vais le garder ( trés jaune)
 J'ai mis des ampoules halogène qui me donne la température de couleur que j'aime bien ( comme on a dans le sud!) mais, le problème avec les halogènes c'est la consommation de courant. Je voudrais les passer en 220v avec un gradateur commandé par arduino mais je n'ai rien trouvé de simple encore.
Un problème que j'ai trouvé avec les rubans de leds, c'est le manque d'inertie des leds par rapport aux ampoules à filament.
Quand la PWM est très basse et lente, la lumière monte et descend par escalier et je n'aime pas beaucoup!!!
Sinon, Patrick m'avait envoyé un petit programme pour commander tout ça, bien sympa, si ça t'intéresse?
Je compte bien m'y remettre mais je manque de temps....

Navigation

[0] Index des messages

[#] Page suivante

Utiliser la version classique