Le seul système de Domotique à économie d'énergie. Ne

consomme de l'énergie qui si on l'utilise. Vous allez faire des

économies avec ce Système. Ce système domotique va vous

simplifié la vie.

Domaine technologique qui vise à automatiser et faire communiquer entre eux les équipements d'une habitation, afin de faciliter les interactions et de réagir avec l'environnement

Site fonctionnant sur un serveur Apache.

 Auteur: HUMBERT Stéphane

Dernière mise à jour :

18 février 2010

Tlabidouille.dyndns.org

ALL RIGHTS RESERVED Copyright © 2006-2010

Home automation

Contrôler votre maison à distance

Accueil.
Photos.
Sitemap.
Livre d'Or.
About.

Ce chapitre présente les divers programmes avec les possibilités d'associations de cartes. Les paramètres à modifier sont suivant le choix du mode de fonctionnement suivant de la carte utilisée. Pour bien comprendre, j'ai utilisé ma configuration personnelle.

L'adressage des cartes étant confidentiel, elles ont été remplacé par des 'XX' et le 'CC' est le code. Donc (XX)= adresse de la carte & (CC) le code comme par exemple: code XX24.

Le contenu sur ce site ne peut en aucun cas être utilisé à des fins lucratives.

Dans ce cas  je ne serais pas tenu pour responsable en cas d'accident ou autres dommages corporels ou matériels.

Sur l'entrée RB4 est raccordé un bouton poussoir extérieur qui sert à réveiller la carte. Il remet sous tension la carte pour son utilisation.

L'entrée RB5 est disponible et libre pour une utilisation personnelle.

L'entrée RB6  est raccordée au timer interne de la carte. Ce timer fera une demande d'interruption lorsqu'une programmation sera active et effective.

L'entrée RB7 est raccordée en interne avec l'interruption du clavier. Elle détecte une action sur le clavier. La valeur qui correspond à la touche enfoncée du clavier est ensuite envoyée à la carte de base 2 en utilisant son bus I2C.

 

Le timer va permettre de programmer en différer des fonctions pour le fonctionnement complet de l'installation. La mise en route ou l'arrêt de la guirlande par exemple. Si l'on possède des volets motorisés, on peut les commander par programmation.

L'écriture et la simulation des programmes ont été écrit sur MPLAB. Vous pouvez télécharger les sources sur leur site internet à l'adresse suivante: http://www.microchip.com/. Il faut aller dans la rubrique Home ProduitDevelopment Tools • et télécharger par exemple le fichier MPLAB IDE v7.20 ou v7.21.

Une fois téléchargé, il ne vous reste plus qu'à l'installer. Attention le soft est en anglais.

 

 

Icprog 14La programmation du PIC est réalisé avec le logiciel ICPROG. Vous pouvez télécharger les sources sur leur site internet à l'adresse suivante:  http://www.ic-prog.com/. Une fois téléchargé, il ne vous reste plus qu'à l'installer. C'est un logiciel gratuit et il est dans toutes les langues.

Les points Communs:

Ils sont de deux. L'alimentation de la carte en 220 volts pour son fonctionnement et du câble de réseau pour la communication entre elles.

 

 

Le Digi-code est surtout utilisé pour piloter l'installation de l'extérieur. On peut ouvrir le portail, ouvrir la porte de garage ou allumer la lumière extérieur. Mais on peut aussi l'utiliser pour changer un paramètre vers une autre carte.

Télécharger le programme complet en "Hex" pour la Carte de Base 2. Cela correspond au programme de gestion du Digi-code et du timer.

Le contenu d'une eeprom d'un PIC au format assembleur.

 

Comment changer les valeurs de Eeprom avec ICPROG ?. Et bien c'est tout simple, cliquer ici sur cette exemple.

La carte du Digi-code intérieur

Sous-programme en assembleur de la gestion du BUS I2C avec un PIC 16F84A:

A voir le programme de la routine de communication pour le Bus I2C. C'est la partie maître car les esclaves sont prêt à l'emploie.

 

 

Sous-programme de conversion de l'hexadécimal en BCD:

A voir le programme de la routine de conversion d'une grandeur hexadécimale en BCD.

En rouge les Directives qui sont accessibles lorsque l'on est en mode Opérateur.  ( Exemple: code 8063 valid pour autoriser et code 8064 valid pour fermer ).

En vert sont les Directives Communes à toutes les cartes. En noir les Directives pour la carte.

 

de    H'80'            ; adresse esclave ALL

de    H'90'            ; code réinitialisation des cartes

de    H'10'            ; code passage en Nuit

de    H'11'            ; code passage en Jour

de    H'12'            ; code passage > 0°

de    H'13'            ; code passage < 0°

de    H'63'            ; code ouverture mode opérateur

de    H'64'            ; code fermeture mode opérateur

de    H'00'            ; libre

de    H'00'            ; libre

de    H'00'            ; libre

de    H'00'            ; libre

de    H'00'            ; libre

de    H'00'            ; libre

de    H'00'            ; libre

de    B'00000000'      ; Directive de Fonctionnement de la Carte

de    D'10'            ; temps du Scrolling en seconde(s)

de    D'60'            ; valeur temps stand en seconde(s)

de    D'2'             ; valeur temps réveil en seconde(s)

de    D'0'             ; libre

de    D'0'             ; libre

de    D'0'             ; libre

de    D'0'             ; libre

de    D'0'             ; libre

de    D'0'             ; libre

de    D'0'             ; libre

de    D'0'             ; libre

de    D'0'             ; libre

de    D'0'             ; libre

de    D'0'             ; libre

de    D'0'             ; libre

de    D'0'             ; libre

de    H'FF'            ; adresse esclave de la carte Timer

de    H'00'            ; libre

de    H'00'            ; libre

de    H'00'            ; libre

de    H'00'            ; libre

de    H'00'            ; libre

de    H'00'            ; libre

de    H'00'            ; libre

de    H'00'            ; libre

de    H'00'            ; libre

de    H'00'            ; libre

de    H'00'            ; libre

de    H'00'            ; libre

de    H'00'            ; libre

de    H'00'            ; libre

de    H'00'            ; libre

de    H'20'            ; code verrouillage de la carte 9

de    H'21'            ; code déverrouillage de la carte 9

de    H'22'            ; code mise à l'heure

de    H'23'            ; code lecture dans la RAM du PCF8583

de    H'24'            ; code activer les alarmes

de    H'25'            ; code désactiver les alarmes

de    H'26'            ; code effacement de la RAM du PCF8583

de    H'27'            ; code synchronisation du timer avec l'alarme

de    H'00'            ; adresse libre sur RB4

de    H'00'            ; Code libre sur RB4

de    H'00'            ; adresse libre sur RB5

de    H'00'            ; Code libre sur RB5

de    H'00'            ; adresse libre sur RB6

de    H'00'            ; Code libre sur RB6

de    H'00'            ; adresse libre sur RB7

de    H'00'            ; Code libre sur RB7

adresse esclave

C'est l' adresse qui sera utilisée pour commander plusieurs cartes.

 

code réinitialisation des cartes

C'est le code qui sert à réinitialiser toutes les cartes.Exemple pour réinitialiser toutes les cartes le code est : 8090 valid

 

code passage en Nuit

C'est le code utilisé lorsque l'on passe en mode nuit.Exemple pour informer les cartes que nous sommes la nuit: 8010 valid

 

code passage en Jour

C'est le code utilisé lorsque l'on passe en mode jour.Exemple pour informer les cartes que nous sommes le jour: 8011 valid

 

code passage > 0°

C'est le code utilisé lorsque l'on sort du mode hors gel.Exemple pour informer les cartes que nous sommes hors gel: 8012 valid

 

code passage < 0°

C'est le code utilisé lorsque l'on sort du mode gel.Exemple pour informer les cartes que nous sommes gel: 8013 valid

 

code ouverture mode opérateur

C'est le code utilisé qui ouvre l'accès à la modification des valeurs modifiables.Exemple pour informer les cartes que nous ouvrons l'accès pour modification: 8063 ( valeurs modifiables = temporisations, compteurs, etc .... )

 

code fermeture mode opérateur

C'est le code utilisé qui ferme l'accès à la modification des valeurs modifiables.Exemple pour informer les cartes que nous fermons l'accès pour modification: 8064 ( valeurs modifiables = temporisations, compteurs, etc .... )

 

Directive de Fonctionnement de la Carte

C'est l'octet de configuration du fonctionnement de la carte .

bit "0" => 1 = RB4 utilisé en interne 0 = RB4 utilisé en externe.

bit "1" => 1 = RB5 utilisé en interne 0 = RB5 utilisé en externe.

bit "2" => 1 = RB6 utilisé en interne 0 = RB6 utilisé en externe.

 

temps du Scrolling en seconde(s)

C'est le temps qu'il est utilisé pour passer l'affichage en Mode Scrolling avant l'arrêt de la carte. Ça donne un effet de défilement de l'affichage.

 

valeur temps stand en seconde(s)

C'est le temps que la carte reste sous tension avant de passer en veille.

 

valeur temps réveil en seconde(s)

C'est le temps que la carte reste sous tension après un réveil.

  

 adresse esclave de la carte timer

C'est l'adresse utilisée pour la carte.

 

code verrouillage de la carte 9

C'est le code utilisé pour verrouiller la carte pour interdire l'utilisation de celle-ci.Exemple: code XX20 valid

 

code déverrouillage de la carte 9

C'est le code utilisé pour déverrouiller la carte.Exemple: code XX21 valid

 

code mise à l'heure

C'est le code utilisé pour la mise à l'heure du timer.Exemple: code XX22 valid et après code 1230 valid. ( pour12H30Mn )

  

code lecture dans la RAM du PCF8583   

C'est le code utilisé pour lire le contenu de la RAM ou est sauvegardé votre programmation. Exemple: code XX23 valid et s'affiche la première programmation.

 

code activer les alarmes   

C'est le code utilisé pour activer le timer.Exemple: code XX24 valid

 

code désactiver les alarmes 

C'est le code utilisé pour désactiver le timer.Exemple: code XX25 valid

 

code effacement de la RAM du PCF8583 

C'est le code utilisé pour éffacer le contenu complet de la programmation.Exemple: code XX26 valid

 

code synchronisation du timer avec l'alarme

C'est le code utilisé pour synchroniser la programmation avec le timer.Exemple: code XX27 valid

 

 adresse libre sur RB4

C'est l'adresse qui sera envoyée vers les autres cartes lorsque RB4 passe à l'état 0. Bien entendu que le bit du Mode_RB4_Int_Ext soit activé.

 

Code libre sur RB4

C'est le code qui sera envoyée vers les autres cartes lorsque RB4 passe à l'état 0. Bien entendu que le bit du  Mode_RB4_Int_Ext soit activé.

 

adresse libre sur RB5

C'est l'adresse qui sera envoyée vers les autres cartes lorsque RB5 passe à l'état 0. Bien entendu que le bit du Mode_RB5_Int_Ext soit activé.

 

Code libre sur RB5

C'est le code qui sera envoyée vers les autres cartes lorsque RB5 passe à l'état 0. Bien entendu que le bit du Mode_RB5_Int_Ext soit activé.

 

adresse libre sur RB6

C'est l'adresse qui sera envoyée vers les autres cartes lorsque RB6 passe à l'état 0. Bien entendu que le bit du Mode_RB6_Int_Ext soit activé.

 

Code libre sur RB6

C'est le code qui sera envoyée vers les autres cartes lorsque RB6 passe à l'état 0. Bien entendu que le bit du Mode_RB6_Int_Ext soit activé.

 

adresse libre sur RB7

C'est l'adresse qui sera envoyée vers les autres cartes lorsque RB7 passe à l'état 0.

 

Code libre sur RB67

C'est le code qui sera envoyée vers les autres cartes lorsque RB7 passe à l'état 0.