AUTOMATE AQUA Problème 1 : Alimention led via alim PC et gestion PWM

Bonjour a tous,

Je prépare un projet pour mon aquarium avec un petit arduino uno.

Celui-ci devra pouvoir :
_ contrôler une carte 8 relais en rs232, de ce type :

_ faire l’acquisition de 2 sondes températures (1 pour l’aquarium et 1 pour une rampe led), de ce type :

_ gérer une rampe à leds sur 2 canaux (8 leds bleu et 8 leds blanche), les leds sont de ce type :
http://www.aliexpress.com/snapshot/103145594.html
img225.imageshack.us/img225/4650/tab1bleu.jpg
img97.imageshack.us/img97/8471/tab2bleu.jpg
img26.imageshack.us/img26/4360/tab3bleu.jpg

_ contrôler la luminosité des leds pour un démarrage et une extinction progressif sur les 2 canaux, en PWM du coup ?
_ recevoir une horloge,
_ enregistrer un fichier data pour du suivi.

Viendra plus tard l’acquisition du ph et de la conductivité de l’eau.

Comme alimentation pour l’ensemble, j’ai pensé à une alimentation PC de 450W délivrant soit du 5V soit 12V et pouvant servir jusqu'à 20A ce qui est normalement suffisant puisque les leds ne tireront normalement que 16A max.

J’ai cependant des questions sur l’alimentation des led et leurs gestions par l’arduino. Je ne fais pas passer les 16A sur l’arduino mais celui-ci sait gérer le PWM. L’alimentation PC délivre presque la bonne tension et suffisamment en intensité mais ne fait pas de PWM. Du coup, j’ai trouvé ce vieux poste d’un autre forum parlant d’un circuit modifiant l’alim PC pour créer du PWM mais celui-ci est gérer manuellement à priori via un potentiomètre.

Je souhaiterai avoir vos avis et conseils pour cette carte en PWM et les modifications à apporter pour la gestion avec l’arduino.

Merci d’avance

Ritchy76

Bonjour et bienvenu

Je ne m'y connait pas trop en LED, mais un fil de discutions vient de démarrer sur ce sujet sur Cap Récifal : http://www.cap-recifal.com/topic-1688-pwm

Par contre, au regard de ce qu'il y a à piloter sur un bac, et pour en faire l'expérience, la UNO risque vite d'être dépassée (nombre d'entrées/ sorties qui plus est PWM). Préfère tout de suite la MEGA.

Bonnes lectures
Franck

Bonjour,

Ritchy76:
_ contrôler une carte 8 relais en rs232, de ce type :
http://www.planete-domotique.com/carte-8-relais-12v-controle-ttl-arduino-atmega.html

C'est pas du RS232 (RS232 = port série d'ordinateur) c'est juste une carte de puissance à relay avec une commande TTL (0v ou 5v).

Ritchy76:
_ faire l’acquisition de 2 sondes températures (1 pour l’aquarium et 1 pour une rampe led), de ce type :
Capteur de température DS18B20 [DS18B20]

Tu aura besoin de la librairie OneWire : Arduino Playground - OneWire
Exemple pour le ds18b20 :
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1209105786
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1208206686

Ritchy76:
_ gérer une rampe à leds sur 2 canaux (8 leds bleu et 8 leds blanche), les leds sont de ce type :
http://www.aliexpress.com/snapshot/103145594.html

Il faudra faire un interface de puissance avec des mosfet.
Exemple théorique : Contrôler une led de puissance

Ritchy76:
_ contrôler la luminosité des leds pour un démarrage et une extinction progressif sur les 2 canaux, en PWM du coup ?
_ recevoir une horloge,
_ enregistrer un fichier data pour du suivi.

-> PWM, ok
-> horloge ? -> DS1307 ou un truc plus complexe ? (http://www.watterott.com/en/Real-Time-Clock-Module-RTC)
-> shield sd (http://www.watterott.com/en/MicroSD-card-breakout-board-v1)

Ritchy76:
Viendra plus tard l’acquisition du ph et de la conductivité de l’eau.

ça fait déja pas mal de chose !
Une UNO ne suffira pas pour gérer tout ce que tu viens de lister (physiquement il y a déja trop d'entrée/sortie pour une UNO) !
Il te faut une mega2560 sinon tu ne pourra pas câbler tout ce que tu liste :wink:

Ritchy76:
Comme alimentation pour l’ensemble, j’ai pensé à une alimentation PC de 450W délivrant soit du 5V soit 12V et pouvant servir jusqu'à 20A ce qui est normalement suffisant puisque les leds ne tireront normalement que 16A max.

Utiliser une alim de pc est une bonne idée :wink:

Ritchy76:
J’ai cependant des questions sur l’alimentation des led et leurs gestions par l’arduino. Je ne fais pas passer les 16A sur l’arduino mais celui-ci sait gérer le PWM. L’alimentation PC délivre presque la bonne tension et suffisamment en intensité mais ne fait pas de PWM. Du coup, j’ai trouvé ce vieux poste d’un autre forum parlant d’un circuit modifiant l’alim PC pour créer du PWM mais celui-ci est gérer manuellement à priori via un potentiomètre.
Afficher le sujet - Transformation d'1 alimentation PC ATX pour LED 3W dimmable • Le Naturaliste

Voir plus haut, pour contrôler tes led il te faut un interface de puissance -> mosfet.

Re bonjour,

Merci a vous 2,
Bubule, j'irai voir aller ton lien,

Skywodd,

  1. effectivement je me suis trompé c'est une commande TTL effectivement,
  2. ok pour la librairie
  3. va falloir que je lise ça a tête reposé mais ça a l'air fort intéressant
    4)5) pour l'horloge et comme tu me dit que la Uno va être un peu légère, est ce que tu pense que cette carte pourrait suffire
    http://www.lextronic.fr/P22485-module-chipkit-uno32.html
    Il y a une horloge RTC, plus de port que sur la Uno et complètement compatible a priori. La Mega est à environ 40€ + l'horloge faut compter 17€, ici 23 € la carte tout compris.
  4. Oui l'alim PC, j'ai trouvé ca intéressant de pouvoir réutilisé un matériel qui ne sert pas actuellement. Au besoin ca ne coute que 25/30 € et plutot qu'un driver spécial led qui devra fournir 160W pour environ 50/70 € le tout sans avoir l'alimentation pour le reste du matériel. Ici tout peut être inclut, si les montages sont bien fait.

Je vous tiens au courant
Merci

Ritchy76:
4)5) pour l'horloge et comme tu me dit que la Uno va être un peu légère, est ce que tu pense que cette carte pourrait suffire
http://www.lextronic.fr/P22485-module-chipkit-uno32.html
Il y a une horloge RTC, plus de port que sur la Uno et complètement compatible a priori. La Mega est à environ 40€ + l'horloge faut compter 17€, ici 23 € la carte tout compris.

Woo! Chipkit-uno32 directe, fausse bonne idée ! Les cartes chipkit sont partiellement compatible arduino, la "parfaite" compatibilité annoncé par digilent c'est purement commercial, va voir l'état d'avancement des librairies tu comprendra mieux pourquoi je dis ça :wink:
(En plus niveau I/O c'est du 3v3 tolérant 5v : http://www.chipkit.cc/wiki/index.php?title=ChipKIT_Uno32)

Juste au passage la uno32 n'as pas d'horloge RTC de base, elle a juste l'emplacement pour le quartz :wink:
(cf http://sites.google.com/site/vilorei/arduino/22--three-chipkit-customisations/22--using-chipkit-internal-rtc)

Mieux vaut faire quelque chose de modulaire (horloge RTC I2C, capteurs 1wire, ...) avec un base "classique" que de partir tête baissé dans une solution "tout en un" ou il faudra tout faire gérer soi même, avec le risque que personne ne puisse t'aider dans ton projet (la communauté chipkit est trés petite pour ne pas dire inexistante).

Pour ton projet tu peut tout faire avec une simple carte arduino classique (uno) :
1x - Arduino UNO (http://www.watterott.com/en/Arduino-Uno)
1x - carte 8 relais (http://www.planete-domotique.com/carte-8-relais-12v-controle-ttl-arduino-atmega.html),
1x - PCF8574 pour contrôler les 8 relay,
2x - DS18b20 (http://www.watterott.com/en/DS18B20),
1x - Shield SD + RTC (http://www.watterott.com/en/Adafruit-Data-Logging-Shield) (la mini protoshield intégré permettrait de câbler le PCF8574),
(+)
2x - mosfet (exemple IRFZ44) + résistance 10K + résistance 1K

Si tu fait le compte :
Arduino UNO -> 6 analog, 13 digital
(-) port série (D0, D1) -> 6 analog, 11 digital
(-) i2c (A4, A5) (PCF8574, horloge RTC) -> 4 analog, 11 digital + 8 (PCF8574) digital externe
(-) spi (D13, D12, D11, D10) (carte SD) -> 4 analog, 7 digital + 8 (PCF8574) digital externe
(-) I/O carte relay -> 4 analog, 7 digital + 0 (PCF8574) digital externe
(-) I/O PWM -> 4 analog, 5 digital + 0 (PCF8574) digital externe
(-) 1-wire -> 4 analog, 4 digital + 0 (PCF8574) digital externe
Conclusion il resterai 4 entrée analogique et 4 I/O digital ... de quoi câbler ton capteur de ph et de conductivité :wink:
Pour le code il faudra surement l'optimiser un peu pour tout faire passer avec la lib pour la carte sd, ou sinon prendre un module Série -> SD pour ne pas avoir à utiliser la lib sdfat.

Bonsoir,

Skywodd merci pour tout ces éléments, sur lesquelles j'ai potassé hier soir.
J'ai aussi lu le lien Contrôler une led de puissance
et j’avoue que j'ai du louper quelques trucs sinon... Comment tu arrive aux résistances 10K + résistances 1K
On est d'accord que tu utilise ce schéma électrique http://www.roboticus.org/images/stories/gradiateur/leds/regtransnpn.gif
et celui quand je voudrais piloter le PWM avec l'arduino http://www.roboticus.org/images/stories/gradiateur/leds/regdimtransnpn.gif

Pour le PCF8574, j'irai voir sur ton site très complet pour ce petit module.

Après réflexion, je vais surement passer sur la mega du coup au cas ou, mais je reste sur le matériel que tu m'a proposé. D'ailleurs j'ai trouvé sympa la carte ShieldSD+RTC.

Pour la carte PWM, j'essai de posté un truc demain soir pour être sûr.

Ritchy76:
Skywodd merci pour tout ces éléments, sur lesquelles j'ai potassé hier soir.
J'ai aussi lu le lien Contrôler une led de puissance
et j’avoue que j'ai du louper quelques trucs sinon... Comment tu arrive aux résistances 10K + résistances 1K

Les 1K / 10K c'est des valeurs "au pif" qui marche 99% du temps :wink:
exemple de câblage (sans résistance de 1K sur la grille du mosfet et avec une diode de roue libre (inutile dans ton cas vu que tu ne contrôlera pas des moteurs) -> Plateforme de puissance pour moteur (controle par PWM) | Skyduino - Le DIY à la française

Ritchy76:
Pour le PCF8574, j'irai voir sur ton site très complet pour ce petit module.

Ok :wink: