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ée en interne le système de détection de ligne qui va réveiller la carte. Alors lorsque l'on décroche le téléphone ou que le téléphone sonne, la carte se met sous tension.

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

L'entrée RB6  est raccordé au timer interne de la carte. Ce timer en mode compteur fera une demande d'interruption lorsque le nombre de sonneries programmées seront atteintes.

L'entrée RB7 est raccordée en interne avec l'interruption du décodeur DTMF. Elle détecte une grandeur numérique qui correspond à une touche enfoncée d'un clavier. Bien sur le clavier peut aussi bien être un téléphone fixe comme un portable en local comme à distance. Cette grandeur est alors envoyée à la carte de base 2 via son bus I2C.

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.

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

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.

 

 

Quant à la sortie, elle est raccordée sur la ligne france télécom. Si vous avez Internet Haut Débit et qu'un modem ADSL est installé, il faut bien sur mettre en place un filtre ADSL sur la liaison.

Télécharger le programme complet en "Hex" pour la Carte de Base 2. Le programme pilote le timer en mode compteur. Toutes les fonctions sont programmables.

 

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

La carte de gestion du transpondeur téléphonique

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'2'             ; temps d'identification 100Hz Ligne en seconde(s)

de    D'5'             ; temps d'attente entre chaque identification en seconde(s)

de    D'10'            ; temps d'attente autorisation accès réseau en seconde(s)

de    D'5'             ; nombre de sonneries pour la prise de ligne

de    H'50'            ; seuil low pour la détection du 100Hz de la ligne

de    H'01'            ; seuil hight pour la détection du 100Hz de la ligne

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 Transpondeur

de    H'FF'            ; code ouverture accès réseau RS485

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 10

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

de    H'22'            ; code verrouillage service par sonnerie RTC

de    H'23'            ; code déverrouillage service par sonnerie RTC

de    H'24'            ; code verrouillage service mélodie

de    H'25'            ; code déverrouillage service mélodie

de    H'26'            ; code écriture temps d'identification 100Hz Ligne

de    H'27'            ; code écriture temps d'attente entre chaque identification

de    H'28'            ; code écriture temps d'attente autorisation accès réseau

de    H'29'            ; code écriture nombre de sonneries pour la prise de ligne

de    H'30'            ; code écriture seuil low pour la détection du 100Hz de la ligne

de    H'31'            ; code écriture seuil hight pour la détection du 100Hz de la ligne

de    H'00'            ; libre

de    H'00'            ; libre

de    H'00'            ; libre

de    H'00'            ; libre

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 d'identification 100Hz Ligne

C'est le temps qu'il faut entre chaque sonnerie pour l'identification.

 

temps d'attente entre chaque identification

C'est le temps pendant le quel  l'accès à l'identification reste disponible.

 

temps d'attente autorisation accès réseau

C'est le temps pendant le quel  l'accès au réseau reste disponible.

 

seuil de sonneries pour la prise de ligne

C'est le seuil pour  le nombre de sonneries qu'il faut pour faire la prise de ligne.

 

seuil low pour la détection du 100Hz de la ligne

C'est le seuil de l'octet bes du compteur d'alternance du 100Hz de la ligne téléphonique.

 

seuil hight pour la détection du 100Hz de la ligne

C'est le suil de l'octet haut du compteur d'alternance du 100Hz de la ligne téléphonique.

 

adresse esclave de la carte transpondeur

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

 

code ouverture accès réseau RS485

C'est le code d'ouverture de l'accès entre la ligne téléphonique et le réseau privé.

 

code verrouillage de la carte 10

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 10

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

 

code verrouillage service par sonnerie RTC

C'est le code utilisé pour verrouiller la détection de la sonnerie

 

code déverrouillage service par sonnerie RTC

C'est le code utilisé pour déverrouiller la détection de la sonnerie

 

code verrouillage service mélodie

C'est le code utilisé pour désactiver le générateur de mélodie

 

code déverrouillage service mélodie

C'est le code utilisé pour activer le générateur de mélodie

 

code écriture temps d'intenfication 100HZ Ligne

C'est le code utilisé pour modifier le temps de la temporisation. Exemple: code XX26 valid et après code XX45 valid. (XX adresse carte et 45 = 45 secondes)

 

code écriture temps d'attente entre chaque identification

C'est le code utilisé pour modifier le temps de la temporisation. Exemple: code XX27 valid et après code XX15 valid. (XX adresse carte et 15 = 15 secondes)

 

code écriture temps d'attente autorisation accès réseau

C'est le code utilisé pour modifier le temps de la temporisation. Exemple: code XX28 valid et après code XX35 valid. (XX adresse carte et 35 = 35 secondes)

 

code écriture nombre de sonneries pour la prise de ligne

C'est le code utilisé pour modifier le nombre de sonneries qu'il faut pour faire la prise de ligne. Exemple: code XX29 valid et après code XX05 valid. (XX adresse carte et 05 est le nombre de sonneries)

 

code écriture seuil low pour la détection du 100Hz de la ligne

C'est le code utilisé pour modifier l'octet bas du compteur d'alternance du 100Hz de la ligne téléphonique. Quand le téléphone sonne, on a des trames de 1.5s en signal alternatif de 100Hz.

 

code écriture seuil hight pour la détection du 100Hz de la ligne

C'est le code utilisé pour modifier l'octet haut du compteur d'alternance du 100Hz de la ligne téléphonique. Les deux octets de 8 bits nous donne un mot de 16 bits pour le comptage.

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.