Arduino Mega et Eternet Shield pour un projet domo

Bonjour,
Je vais faire un projet de domotique via une Mega.
Concernant l'Ethernet Shield, quelles sont les broches monopolisées par l'extension et donc plus utilisables à d'autres fins ?
Le projet de domotique comportera deux cartes Mega en Seeeduino, chacune avec un Shield Ethernet.
Elles devront me comptabiliser les consos détaillées et moyennes sur différentes périodes des postes pompe à chaleur, ECS, serveur, four.
Gérer la quasi intégralité des prises de la maison. L'intégralité de l'éclairage dont une partie par gradateurs. Le pilotage de la PAC par infrarouge et l'enregistrement des températures int/ext. De la simulation de présence. Une alarme.
Concernant l'alarme, où trouver des détecteurs de CO, fumées, gaz à prix correct en filaire et non en autonome à pile, le marché étant inondé de détecteurs à piles dont le prix fait douter de la fiabilité à long terme.
Bref, du taf en vue.

Cordialement.

Salut domonet,

ci dessous un extrait de la page sur l'ethernet shield officiel, qui est désormais compatible avec la Mega et qui a son slot SDCard opérationnel (http://arduino.cc/en/Main/ArduinoEthernetShield):

"Arduino communicates with both the W5100 and SD card using the SPI bus (through the ICSP header). This is on digital pins 11, 12, and 13 on the Duemilanove and pins 50, 51, and 52 on the Mega. On both boards, pin 10 is used to select the W5100 and pin 4 for the SD card. These pins cannot be used for general i/o. On the Mega, the hardware SS pin, 53, is not used to select either the W5100 or the SD card, but it must be kept as an output or the SPI interface won't work. "

donc pins 50, 51, 52 et 53 sont reservées.

Pour les détecteurs, tu peux les faire toi même.
Quelques liens:
http://www.seeedstudio.com/depot/sensors-air-c-84_86.html
http://www.seeedstudio.com/depot/sensors-motion-c-84_88.html
http://www.nuelectronics.com/estore/index.php?main_page=index&cPath=7

sais-tu déjà comment tu vas interfacer tout ça ? quels protocoles pour faire communiquer l'ensemble (mega-mega, mega-PC...) ?
Comptes-tu rendre tout cela modulaire et ouvert ?
Je suis moi-même en train de développer mon installation domotique, que je veux le plus ouvert (xPL) et flexible (bibliothèques, cartes relais, gradateurs etc.) possible.

Gromain

Pour commencer, je songe à aire une carte mère sur laquelle s'enfichera la seeeduino mega (modifiée avec des broches sortantes en dessous) et son shield Ethernet, qui regroupera les broches d'e/s par 4 sur des connecteurs RJ12 6 voies pour +,masse et 4 E/S. Cela me permettra de gérer les E/S par petits cartes filles elles aussi en RJ12 suivant les fonctions recherchées,interface pour relais, entrée analogiques, sorties gradateurs...
De plus, les câbles en RJ12 sont simples à mettre en ?uvre.
La communication mega-PC se fera par ethernet si le besoin se fait sentir d'externaliser certaines fonctions, mais le but serait d'avoir les cartes mega complètement autonomes.
Si les fonctions sont correctement dispatchées entre les mega, elles ne devraient pas avoir à communiquer entre elles.
La partie domotique (prises, inters, volets) serait alors bien distincte de la partie suivi de conso et gestion du chauffage/alarme avec deux sites distincts.
Les compteurs risquent d'être reliés à un diviseur cmos pour obtenir un changement d'état toutes les 2, 4, 8 ou 16 impulsions afin de ne pas rater des impulsions (durée 90ms) si le soft passe trop de temps dans une partie du programme.
Les relais sont sur rails DIN.
J'ai fait le tableau avec 6 rails DIN de 85 cm, phase 1, relais/compteurs, phase 2, relais/compteurs, phase 3, relais/compteurs.

David.

ok. Personnellemnt, j'ai opté pour un regroupement par 8 E/S + 5V + GND via des connecteurs HE10. Les cartes sont dans des boitiers pour coffret élec sur rails DIN.
Tu comptes gérer des scénarios directement avec l'arduino et les modifier en fonction de tes besoins, ou ce sera un PC qui commande l'arduino ?
As-tu pu testé un de ces compteurs d'énergie que tu cites dans un autre topic ?

Gromain

Les scénarios seront gérés directement par l'arduino.
Je préfère ne pas trop compliquer les choses dans un souci de fiabilité.
Une simple batterie 12V de quelques Ah suffira à garder l'ensemble fonctionnel en cas de panne secteur et je n'ai pas de risque de voir l'installation électrique figée en cas de plantage d'un PC, une mise à jour qui passe mal, enfin tous les aléas de l'informatique qui font qu'un système stable ne le reste pas forcément.
Le choix de grouper par 4 me permet d'optimiser plus facilement les utilisations des E/S.
L'arduino intègre t-il un watchdog ou faut-il en faire un en hard ?
Un soft qui plante peut s'avérer génant du simple blocage de l'installation à la mise en marche non volontaire d'appareils.
Je n'ai pas encore mis en place les compteurs, je vais seulement les commander.

il me semble qu'il y a un watchdog intégré à l'Atmega, à configurer avec les fuses.

Je suis tout à fait d'accord sur la stabilité d'un PC dans le temps. Malgré tout, en cas de coupure de courant, je ne suis pas sur qu'une alimentation sauvegardée change grand chose. Si plus de 230V alors plus de lumières, plus de PAC etc. Au retour du courant, l'arduino démarrera en quelques secondes Chez moi en tout cas je n'en ai pas encore l'utilité.

Une remarque quand même concernant les scénarios embarqués sur l'arduino: en cas de modification, il te faudra recharger le sketch en évitant le soir, car il risque d'y avoir un black-out chez toi et ta femme risque de pas trop aprécier... :wink:
Pour contourner ce désagrément, je ne vois pas d'autre solution que d'avoir une appli complétement paramétrable de manière externe (page web par exemple), ou d'avoir un petit arduino dédié aux scénarios et qui piloterait les autres arduinos (contrôle-commande, implique que les cartes communiquent entre elles)

Pour le watchdog, les Atmega en sont équipés. Voir cette doc, en français SVP, qui traite du sujet:
http://www.reality.be/elo/labos2/files/AtMega32DocFr.pdf à la page 21. A priori pas besoin de manipuler les fuses.

L'alimentation sauvegardée permet quand même de conserver l'intégralité des états des sorties et de la mémoire. En cas de coupure longue, ça pourrait même être poussé à échelonner le remise en service des gros consommateurs au démarrage afin d'éviter un pic brutal lorsque tout repart en simultané.
L'histoire des scénarios, je pense la développer par le suite.
Priorité à la fonctionnalité simple. Chaque commande sa lampe...
Ensuite, viendra le développement de fonctions spéciales pas commandes supplémentaires, genre extinction générale en partant, certaines lampes en revenant, télécommande...