Sie sind auf Seite 1von 17

RALISATION D'UN SYSTME DE COMMUNICATION ET DE CONTRLE PAR COURANT PORTEUR

Ahmed CHEIKHROUHOU

Pour plus de plus amples informations : http://www.bh-automation.fr/Ressources/Automaticiens/#Ahmed-CHEIKHROUHOU http://www.bh-automation.fr/Ressources/Automaticiens/cv-ahmed-cheikhrouhou.html Tlcharger la dernire mise jour de ce document : http://www.bh-automation.fr/Download/Automaticiens/AC_Interface_controle_courant_porteur.pdf

Sommaire
INTRODUCTION.....................................................................................................................3 INTERFACE DE COMMUNICATION PAR COURANTS PORTEURS.........................4 1. Prsentation du projet......................................................................................................4 2. Lmetteur.........................................................................................................................5 2.1 Trame gnrer...........................................................................................................5 2.2 Schma lectrique........................................................................................................6 2.3 La programmation des pics .........................................................................................8 3. Le rcepteur....................................................................................................................12 3.1 Schma lectrique......................................................................................................12 3.2 Programmation du PIC..............................................................................................15

Introduction

La ralisation dun mini projet, et ce quelle ncessite de connaissances thoriques et de savoir faire pratique, est une opportunit intressante pour apprendre grer un travail du dbut jusqu la fin. Lorganisation savre un lment dterminant pour la bonne conduite du projet et pour la ralisation des diffrentes phases qui le constituent. Ce rapport prsente techniques du travail effectu dune manire brve, les diffrents aspects

Introduction la technologie courant porteur :


Le courant porteur tait dj utilis en France ds 1950 pour le contrle des clairages publics en ville. Dans les annes 1980, le CPL fut utilis pour le transport d'informations bas dbit pour piloter distance des appareils lectriques (radiateurs, chaudires).

Interface de communication par courants porteurs


1. Prsentation du projet
Lobjectif tant de pouvoir utiliser le rseau lectrique achemin par la STEG dans les domiciles comme un support de communication pour pouvoir commander distance un appareil lectrique, on a ralis deux cartes lectroniques : un metteur et un rcepteur. Lmetteur gnre un courant de frquence leve (100 kHz) qui sera superpos au courant vhicul par les fils du secteur (de frquence 50Hz). Le rcepteur, en dtectant ce courant, fournira une tension de 230 V aux bornes de la charge ou liminera cette alimentation en fonction de la commande gnre.

Signal numrique 100 kHz

2. Lmetteur
2.1 Trame gnrer
Le programme mmoris dans le PIC de lmetteur doit gnrer une porteuse 100 kHz, porteuse module en amplitude par les donnes transmettre : adresse du rcepteur et ordre dextinction ou dallumage.

Figure 1 :

Les quatre bits dadresse A0 A3 sont dtermins par la position des 4 mini interrupteurs de lmetteur, et les deux bits de donnes D0 et D1 sont tous les deux gaux 0 en cas dappui sur le bouton marche (BP2) et tous les deux gaux 1 en cas dappui sur le bouton arrt (BP1). Si le bouton reste appuy, la mme trame est envoye 40 ms plus tard environ.

Figure 2 :

La figure 2 est un agrandissement de limpulsion de 1 ms, on remarque quen ralit, chaque impulsion de 1ms est constitue de 100 impulsions de 5 s espaces de 5 s : limpulsion de 1ms module en fait une porteuse de frquence 100 kHz.

2.2 Schma lectrique


U 1 T1 R PN OT C 1
10F 0u 70 85 1 V I
G N D

V O

+V 5 C 3
10F 0n

C 2
1u 0F

Sc u 20 et r 2V e
BI G R E D T A-PS RN 2 2

B1 P D 1
LD E

R 4 B2 P
1 2 3 4 40 3

U 1
1 3 1 2 1 1 1 0 9 8 7 6 3 2 1 1 8 1 7 R7 1S B/TOI R6 1S/ 1K B/TOO CI T R5 B R4 B R3 C1 B/CP R2 X K B/T /C R1 X T B/R/D R0N B/I T R4 0KCP A/TCI/ M 2 4 R3 NCP A/A3 M / 1 R5 C A/ L MR R2 NVE A/A2 RF / 1 5 R1 N A/A1 R6 S2 LOT A/ CC U O / K 1 6 R0 N A/A0 R7 S1 LI A/OC K /C N P 1F2A I 668 C

S1 W
8 7 6 5 S- I 4 WP D

C 4
0u .1

R 1
1k 0 5 V

Q 1 D2 Z
D D-E I E N O Z

R 2
1k 0

C 6 Q
2p 2F

D1 Z C 5
0u .1 D D-E I E N O Z

222 N2 2

4H Mz 2p 2F 5 V

C 7

R 3
5 0

Figure 3 :

Le circuit dhorloge ncessaire au fonctionnement du PIC 16F628 est constitu du quartz 4MHz et de ses deux condensateurs associs C6 et C7. Les broches utilises en entre sont facilement identifiables : RB0 RB3 sur les quelles sont branchs les quatre mini-interrupteurs, RB4 et RB6 sur lesquelles sont branchs les deux boutons poussoirs MARCHE et ARRET. Des rsistances de pull up internes au PIC tirent ces broches ltat haut en labsence dappui ou quand elles ne sont pas relies la masse.

Les broches RB5 et RA2 sont utilises en sortie : RB5 est relie une LED tmoin dmission, et par RA2 sort la trame envoyer sur les fils du secteur. Le signal transmettre parvient la base du transistor T par lintermdiaire de R2. Ce transistor de type NPN est rendu passant quand un niveau haut est prsent sur sa base.

Le courant tant amplifi, il est envoy sur les lignes du secteur travers les deux condensateurs disolement C4 et C5.

2.3 La programmation des pics


Le programme charg dans la mmoire du PIC utilis contient les instructions suivantes (en langage BASIC) :
config _XT_OSC&_WDT_OFF&_LVP_OFF\lang1036 REGISTRES REG_16F628 ; pour le PIC16F628 ;(1)Dfinition des variables et tableaux VAR APPUI VAR DONNEE VAR ADRESSE VAR NB_IMPUL VAR VB1 VAR VB2 VAR I ; Initialisation ORG 0 CMCON=7 BSF STATUS,RP0 TRISA= 0 RB7 BCF \f1 OPTION_REG ,7 BCF STATUS,RP0 BCF PORTA, 2 // Activer les rsistances de PULL UP avec le bit 7 // Accs la page 0 de la RAM // Bloquer le transistor TRISB=% 0 1 0 1 1111 // Accs la page 1 de la RAM // Toutes les broches du port A sont configures comme sorties // Toutes les broches du port B en entre sauf RB5 et

; Le programme principal PRIN INTCON=%00001000 // Configurer le pic pour quil se rveille si on appuie sur CLRF PORTB BCF PORTA, 2 SLEEP BSF PORTB,5 LA_ICI GOSUB BOUTON IF APPUI<>0 THEN GOSUB ENV_CODE ENDIF IF APPUI=1 THEN // La LED sallume comme un voyant dmission un bouton

GOTO LA_ICI ENDIF GOTO PRIN ; Gestion des boutons BOUTON APPUI=1 BTFSS PORTB,4 GOTO TOUCHE_ON BTFSS PORTB,6 GOTO TOUCHE_OFF APPUI=0 GOTO FIN_B TOUCHE_ON TOUCHE_OFF DONNEE=0 GOTO FIN_B DONNEE=3 FIN_B RETURN ; Envoi des 7 bits de la trame ; Envoi du start ENV_CODE GOSUB ENVOI_1

; Envoi de l'adresse ADRESSE=PORTB &15 FOR I=1 TO 4 RRF ADRESSE,1 BTFSC STATUS,C GOSUB ENVOI_1 BTFSS STATUS,C GOSUB ENVOI_0 NEXT I ; Envoi de la donne FOR I=1 TO 2 RRF DONNEE ,1 BTFSC STATUS,C GOSUB ENVOI_1 BTFSS STATUS,C

GOSUB ENVOI_0 NEXT I

; Envoi du stop GOSUB ENVOI_0 FOR I=1 to 9 GOSUB CYCLE 4m NEXT I RETURN ; Sous-programme d'envoi d'un 1 ENVOI_1 BCL_1 NB_IMPUL= 100 BSF PORTA, 2 NOP NOP NOP NOP BCF PORTA, 2 NOP DECFSZ NB_IMPUL,1 GOTO BCL_1 GOSUB CYCLE8m RETURN

; Sous-programme d'envoi d'un 0 ENVOI_0 NB_IMPUL= 100 BCL_2 BSF PORTA, 2 NOP NOP NOP NOP BCF PORTA,2 NOP DECFSZ GOTO GOSUB NB_IMPUL,1 BCL_2 CYCLE 4m

10

RETURN ; Dure de 4000 cycles CYCLE4m VB1= 40 BOUC1 VB2=32 BOUC2 DECFSZ VB2,1 GOTO BOUC2 DECFSZ VB1,1 GOTO BOUC1 RETURN ; Dure de 8000 cycles CYCLE8m VB1= 80 BOUC3 BOUC4 VB2=32 DECFSZ VB2,1 GOTO BOUC4 DECFSZ VB1,1 GOTO BOUC3 RETURN

11

3. Le rcepteur
3.1 Schma lectrique

U ?
70 85

TR N FO AS

PN OT C 1
10 F 0u

V I
G ND

V O

+V 5
C 3
10F 0n

C 2
1u 0F

Secteur 220V
5 V T A -PS R N2 2 5 V

R 8
2k 2

R 13
40 3 5 V

L R 12
LD E 2 27 A N9 0 2k 2

U 1:B C 5
1n 0F

N 567 E
4

R22k 10
8 5

C 6
1n 0F

C 7
1n 0F

R 3
1 k

R 9
2k 2

5 7 6

R 11
1 k

C 9
3
1 2

R 1
10 0k

R 2
1k 0 3

U 1:A
8

R 5
1 k 15 48 2p 2F

C 4
1n 0F

5 V 1 2

C 8
1n .5 F

R 6
1k 0

C T0 C0 1

R 7
2k 2

C 11
2n 2F

C 12
1n 0F

2k .2

C 13
4n .7 F

15 48

R 4

Charge

1k 0

C 14 C 10
1n 0F 2p 2F

U 2 X ?
4H Mz 1 6 1 5 4 R 7 S 1 L IN A /O C/CK R 6 S 2 L OT A /O C/CK U R 5 CR A /M L R0 N A /A 0 R1 N A /A 1 R 2 N/V E A /A 2 R F R 3 N/C P A /A 3 M 1 R 4 0 K M2 A /TC I/C P R0 T B /IN R1 X T B /R /D R2X K B /T /C R3 C1 B /C P R4 B R5 B R 6 1 S /TC I B /TO O 1 K R71S B /TO I P 1 F2 A IC6 6 8 1 7 1 8 1 2 3 6 7 8 9 1 0 1 1 1 2 1 3 1 2 3 4 S - IP W 4 D

B 08-6 0 TA 0

R 16
30 3

MC 1 O 304
6 5 1 2 3

C 15
2p 2F

R 18
3 9 T IA RC

S1 W
8 7 6 5

R 17
30 3

C T0 C0 2

R 15
30 3

12

Le rcepteur a trois missions accomplir : dtecter les signaux de frquence 100 kHz provenant de lmetteur, dcoder ces signaux puis excuter lordre command.

Tous les signaux provenant du secteur sont dabord filtrs par les condensateurs C4 C7 et les rsistances R1 et R2. Les signaux HF qui ont russi le passage de ces filtres sont ensuite amplifis par 100 laide de deux amplificateurs oprationnels monts en srie. Ces ampli-op de type 1458 ne peuvent amplifier chacun que dun facteur 10, un signal une frquence de 100 kHz.

En sortie du second ampli-op, le signal est envoy au NE567, dcodeur de frquence PLL. Les composants C13, R11, et AJ sont choisis et rgls pour quen prsence du 100 kHz sur la broche3, la broche 8 normalement ltat haut, passe ltat bas. Dans notre cas, lors de la rception dune trame mise par notre

13

metteur, on observera sur la sortie 8 des tats bas de 1 ms spars par des tats hauts de 4 ou 8 ms. La sortie 8 est ensuite connecte dune part au pic qui sera charg de dcoder ces signaux et dautre part une LED qui servira de tmoin de rglage et de rception. Apres dcodage, si ladresse envoye correspond ladresse affiche sur les minis interrupteurs connects de RB4 RB7, lordre reu est excut. Le triac est activ par lintermdiaire du MOC3041 en portant la broche RB1 ltat haut ou dsactive en la plaant ltat bas. Le MOC3041 est un petit circuit intgr dinterface, spcialement conu pour commander des triacs partir de systmes fournissant des signaux logiques. Ce circuit construit autour dun optocoupleur et dun dtecteur de passage a zro de la tension secteur offre une isolation galvanique de 7500 V et ne gnre pas de parasite. Le triac utilis est de type BTA 08-600 qui peut fonctionner sous une tension de 600 V et dbiter 8A.

14

3.2 Programmation du PIC


Le programme charg
__config _XT_OSC&_WDT_OFF&_LVP_OFF\lang1036\tab REGISTRES REG_16F628 ; pour le PIC16F84 ; Dfinition des variables et tableaux VAR I VAR DONNEE VAR DUREE VAR ADRESSE VAR AD_REC VAR VB1 VAR VB2 ; Initialisation ORG 0 CMCON=7 BSF STATUS , RP0 TRISA=0 TRISB= % 1110001 BCF OPTION_REG ,7 BCF OPTION_REG ,6 BCF STATUS,RP0 AD_REC=PORTB SWAPF AD_REC,1 AD_REC=AD_REC & 15

; Le programme principal PRIN INTCON=%00010000 SLEEP ; Dcodage des 5 premiers bits ADRESSE=0 FOR I= 4 DOWNTO 0 DUREE=0

15

TEST_A LONG_1

BTFSS PORTB,0 GOTO TEST_A GOSUB DELAI100 INCF DUREE,1 IF DUREE>200 THEN GOTO PRIN ENDIF BTFSC PORTB,0 GOTO LONG_1 IF DUREE> 60 THEN BSF STATUS,C ELSE BCF STATUS,C ENDIF RRF ADRESSE,1 NEXT I ; Dcodage des 2 derniers bits DONNEE=0 FOR I= 1 DOWNTO 0 DUREE=0

TEST_D LONG_2

BTFSS PORTB,0 GOTO TEST_D GOSUB DELAI100 INCF DUREE,1 IF DUREE>200 THEN GOTO PRIN ENDIF BTFSC PORTB,0 GOTO LONG_2 IF DUREE> 60 THEN BSF STATUS,C ELSE BCF STATUS,C ENDIF RLF DONNEE,1 NEXT I

16

; Extraction des 4 bits d'adresse SWAPF ADRESSE,1 ADRESSE=ADRESSE & 15 ; Vrifier si ladresse est bonne IF ADRESSE<> AD_REC THEN GOTO PRIN ENDIF ; Bonne adresse, on traite les donnes IF DONNEE=0 THEN BSF PORTB,1 ENDIF IF DONNEE= 3 THEN BCF PORTB,1 ENDIF ; Donnes traites, on repart au dbut GOTO PRIN ; Pause de 100 microsecondes DELAI100 VB1=14 BOUC1 BOUC2 VB2=1 DECFSZ VB2,1 GOTO BOUC2 DECFSZ VB1,1 GOTO BOUC1 RETURN

17

Das könnte Ihnen auch gefallen