SYSTEME DE SURVEILLANCE

< Sujet précédent  Sujet suivant >
Index du Forum -> Forum des Projets fin d'études, mini-projets et des réalisations electroniques -> Projets fin d'études
AuteurMessage
Tunisia.png leaderphone
Newbie



Messages : 7
Inscrit(e) le: 20/08/2011
Posté le 22/08/2011 02:17  
SYSTEME DE SURVEILLANCE
Bonsoir, mon projet consiste à réaliser un systéme de surveillance des gaz à 2 entrées (2 capteurs de pression 4-20ma), j'ai eu des problèmes au niveau d'affichage sur 7 segments, chaque afficheur affiche la valeur de pression compris entre 0 et 16bar, pour l'entrée RA0 c'est ok les valeurs sont biens affiché sur AFFICH 1, au contraire l'entrée RA1 n'a auccun effet et l'AFFICH 2 n'affiche rien et je pense que c'est à cause du mal programmation en language C, j'espere trouver une solution pour que les valeurs de pression seront affichés sur AFFICH 2 (0-16bar) de même maniére que sur l'AFFICH 1 et merci d'avance.

vous trouvez la simulation sur ISIS et le programme en language C en fichier joints.

#include "16F876A.h"
#DEVICE ADC=8
#fuses XT,NOWDT,NOPROTECT,NOCPD,NOLVP,PUT,BROWNOUT,NODEBUG
#use delay(clock=4000000)

#byte STATUS=0x03
#byte PORTA=0x05
#byte PORTB=0x06
#byte PORTC=0x07

#byte TRISA=0x85
#byte TRISB=0x86
#byte TRISC=0x87

#byte INTCON=0x0B

#byte EEDATA=0x10C
#byte EEADR=0x10D
#byte EECON1=0x18C
#byte EECON2=0x18D

#bit RA0=PORTA.0
#bit RA1=PORTA.1
#bit RA2=PORTA.2
#bit RA3=PORTA.3
#bit RA4=PORTA.4
#bit RA5=PORTA.5

#bit RB0=PORTB.0
#bit RB1=PORTB.1
#bit RB2=PORTB.2
#bit RB3=PORTB.3
#bit RB4=PORTB.4
#bit RB5=PORTB.5
#bit RB6=PORTB.6
#bit RB7=PORTB.7

#bit RC0=PORTC.0
#bit RC1=PORTC.1
#bit RC2=PORTC.2
#bit RC3=PORTC.3
#bit RC4=PORTC.4
#bit RC5=PORTC.5
#bit RC6=PORTC.6
#bit RC7=PORTC.7



int8 unite, dizaine, v, bar;



void main(void)
{
/***************** initialisation du programme *******************/
PORTA=0;
PORTB=0;
PORTC=0;

TRISA=0xFF;
TRISB=0x00;
TRISC=0x00;

unite = 0; dizaine = 0; v = 0; bar = 0;

port_b_pullups(FALSE);

setup_adc_ports( RA0_ANALOG );
setup_adc_ports( RA1_ANALOG );


setup_adc(ADC_CLOCK_DIV_32);


/*
ENABLE_INTERRUPTS(GLOBAL);
ENABLE_INTERRUPTS(INT_EXT);
ext_int_edge(H_TO_L); */

while(true){

set_adc_channel(0);
delay_us(10);
v=read_adc();

if (v <= 51){bar = 0;}

else if (v>51 && v <= 64){bar = 1;}

else if (v> 64 && v <= 77){bar = 2;}

else if (v> 77 && v <= 90){bar = 3;}

else if (v> 90 && v <= 103){bar = 4;}

else if (v> 103 && v <= 116){bar = 5;}

else if (v> 116 && v <= 129){bar = 6;}

else if (v> 129 && v <= 142){bar = 7;}

else if (v> 142 && v <= 155){bar = 8;}

else if (v> 155 && v <= 168){bar = 9;}

else if (v> 168 && v <= 181){bar = 0x10;}

else if (v> 181 && v <= 194){bar = 0x11;}

else if (v> 194 && v <= 207){bar = 0x12;}

else if (v> 207 && v <= 220){bar = 0x13;}

else if (v> 220 && v <= 233){bar = 0x14;}

else if (v> 233 && v <= 246){bar = 0x15;}

else if (v> 246){bar = 0x16;}

PORTB = bar;
PORTC = bar

delay_ms(500);
}

}


Revenir en haut | Permalien
Tunisia.png Technologuepro
Administrator



Messages : 447
Inscrit(e) le: 15/11/2007
Posté le 22/08/2011 02:59  
RE : SYSTEME DE SURVEILLANCE
Bonjour,
C'est quoi ton compilateur, j'arrive pas à ouvrir les fichier avec PICC alors que l'extension indique bien que c'est PICC

Le savoir est une chose qu'on peut pas cacher, la connaissance existe pour être transmise aux autres...
Revenir en haut | Permalien
Tunisia.png leaderphone
Newbie



Messages : 7
Inscrit(e) le: 20/08/2011
Posté le 22/08/2011 03:26  
RE : SYSTEME DE SURVEILLANCE
c'est le PIC C COMPILER

Revenir en haut | Permalien
Tunisia.png Technologuepro
Administrator



Messages : 447
Inscrit(e) le: 15/11/2007
Posté le 22/08/2011 03:43  
RE : SYSTEME DE SURVEILLANCE
Quelle version ?
en plus le fichier .hex ne correspond pas à la source .c ?
c à d le programme que tu as écris ne donne pas la simulation exactement comme dans le ficher ISIS !

Edité par Technologuepro le 22/08/2011 02:53
Le savoir est une chose qu'on peut pas cacher, la connaissance existe pour être transmise aux autres...
Revenir en haut | Permalien
Tunisia.png leaderphone
Newbie



Messages : 7
Inscrit(e) le: 20/08/2011
Posté le 22/08/2011 03:54  
RE : SYSTEME DE SURVEILLANCE
IDE VERSION 3.40

Revenir en haut | Permalien
Tunisia.png leaderphone
Newbie



Messages : 7
Inscrit(e) le: 20/08/2011
Posté le 22/08/2011 04:00  
RE : SYSTEME DE SURVEILLANCE
oui je sais, j'ai juste ajouté linstruction: setup_adc_ports( RA1_ANALOG ); aprés la dérniere compilation correcte sans l'entrée RA1

Revenir en haut | Permalien
Tunisia.png Technologuepro
Administrator



Messages : 447
Inscrit(e) le: 15/11/2007
Posté le 22/08/2011 04:08  
RE : SYSTEME DE SURVEILLANCE
Ahhh ok, voila ton programme pour les deux entrées

Code :


#include "16F876A.h"
#DEVICE ADC=8
#fuses XT,NOWDT,NOPROTECT,NOCPD,NOLVP,PUT,BROWNOUT,NODEBUG
#use delay(clock=4000000)

#byte STATUS=0x03
#byte PORTA=0x05
#byte PORTB=0x06
#byte PORTC=0x07

#byte TRISA=0x85
#byte TRISB=0x86
#byte TRISC=0x87

#byte INTCON=0x0B

#byte EEDATA=0x10C
#byte EEADR=0x10D
#byte EECON1=0x18C
#byte EECON2=0x18D

#bit RA0=PORTA.0
#bit RA1=PORTA.1
#bit RA2=PORTA.2
#bit RA3=PORTA.3
#bit RA4=PORTA.4
#bit RA5=PORTA.5

#bit RB0=PORTB.0
#bit RB1=PORTB.1
#bit RB2=PORTB.2
#bit RB3=PORTB.3
#bit RB4=PORTB.4
#bit RB5=PORTB.5
#bit RB6=PORTB.6
#bit RB7=PORTB.7

#bit RC0=PORTC.0
#bit RC1=PORTC.1
#bit RC2=PORTC.2
#bit RC3=PORTC.3
#bit RC4=PORTC.4
#bit RC5=PORTC.5
#bit RC6=PORTC.6
#bit RC7=PORTC.7



int8 unite, dizaine, v,v1,bar1, bar;



void main(void)
{
/***************** initialisation du programme *******************/
PORTA=0;
PORTB=0;
PORTC=0;

TRISA=0xFF;
TRISB=0x00;
TRISC=0x00;

unite = 0; dizaine = 0; v = 0; bar = 0; v1 = 0; bar1 = 0;

port_b_pullups(FALSE);

setup_adc_ports( RA0_ANALOG );


setup_adc(ADC_CLOCK_DIV_32);


/*
ENABLE_INTERRUPTS(GLOBAL);
ENABLE_INTERRUPTS(INT_EXT);
ext_int_edge(H_TO_L); */

while(true){

set_adc_channel(0);
delay_us(10);
v=read_adc();
set_adc_channel(1);
delay_us(10);
v1=read_adc();
if (v <= 51){bar = 0;}

else if (v>51 && v <= 64){bar = 1;}

else if (v> 64 && v <= 77){bar = 2;}

else if (v> 77 && v <= 90){bar = 3;}

else if (v> 90 && v <= 103){bar = 4;}

else if (v> 103 && v <= 116){bar = 5;}

else if (v> 116 && v <= 129){bar = 6;}

else if (v> 129 && v <= 142){bar = 7;}

else if (v> 142 && v <= 155){bar = 8;}

else if (v> 155 && v <= 168){bar = 9;}

else if (v> 168 && v <= 181){bar = 0x10;}

else if (v> 181 && v <= 194){bar = 0x11;}

else if (v> 194 && v <= 207){bar = 0x12;}

else if (v> 207 && v <= 220){bar = 0x13;}

else if (v> 220 && v <= 233){bar = 0x14;}

else if (v> 233 && v <= 246){bar = 0x15;}

else if (v> 246){bar = 0x16;}

PORTB = bar;
set_adc_channel(1);
delay_us(10);
v1=read_adc();
if (v1 <= 51){bar1 = 0;}

else if (v1>51 && v1 <= 64){bar1 = 1;}

else if (v1> 64 && v1 <= 77){bar1 = 2;}

else if (v1> 77 && v1 <= 90){bar1 = 3;}

else if (v1> 90 && v1 <= 103){bar1 = 4;}

else if (v1> 103 && v1 <= 116){bar1 = 5;}

else if (v1> 116 && v1 <= 129){bar1 = 6;}

else if (v1> 129 && v1 <= 142){bar1 = 7;}

else if (v1> 142 && v1 <= 155){bar1 = 8;}

else if (v1> 155 && v1 <= 168){bar1 = 9;}

else if (v1> 168 && v1 <= 181){bar1 = 0x10;}

else if (v1> 181 && v1 <= 194){bar1 = 0x11;}

else if (v1> 194 && v1 <= 207){bar1 = 0x12;}

else if (v1> 207 && v1 <= 220){bar1 = 0x13;}

else if (v1> 220 && v1 <= 233){bar1 = 0x14;}

else if (v1> 233 && v1 <= 246){bar1 = 0x15;}

else if (v1> 246){bar1 = 0x16;}

PORTC = bar1;
delay_ms(500);
}

}


Le savoir est une chose qu'on peut pas cacher, la connaissance existe pour être transmise aux autres...
Revenir en haut | Permalien
Tunisia.png leaderphone
Newbie



Messages : 7
Inscrit(e) le: 20/08/2011
Posté le 22/08/2011 04:22  
RE : SYSTEME DE SURVEILLANCE
Grand merci monsieur ça marche bien, je demande si je peux te contacter ici prochainement, car je vais changer le pic en 16F877 vu que je vais utulisé d'autre sortie pour les buzzer d'alarme et les leds de clignottement ??

Encore maintenant je me demande aussi pourquoi les afficheurs affiche les valeurs de façon 2,4,6..., alors que si j'utulise une source de courant 4-20ma les valeurs sont biens affichés 1,2,3,4....

Merci encore

Revenir en haut | Permalien
Tunisia.png Technologuepro
Administrator



Messages : 447
Inscrit(e) le: 15/11/2007
Posté le 22/08/2011 04:28  
RE : SYSTEME DE SURVEILLANCE
Pour l'affichage 2,4,6 c'est juste la résolution du potentiomètre de simulation dans ISIS donc c'est rien.
Bienvenu sur technologuepro.com à tout moment

Alors à très bientôt

Le savoir est une chose qu'on peut pas cacher, la connaissance existe pour être transmise aux autres...
Revenir en haut | Permalien

Haut de page

© 2024 Technologue pro, cours électricité électronique informatique · © 2007 - 2024 Technologue pro - Ressources pédagogiques pour l'enseignement technologique en Tunisie
Usage dans un cadre strictement académique

Technologue: cours en ligne gratuit en électricité, électronique, informatique industrielle et mécanique pour l'enseignement technologique en Tunisie et offre des cours en ligne en génie électrique, informatique, mécanique, une base de données de TP, projets fin d'études et un annuaire de ressources pédagogiques
Licence - Sitemap - Qui somme nous ? - confidentialité- Tunisie Index
J'accepte
Ce site web utilise des cookies. Nous utilisons des cookies pour vous offrir la meilleure expérience sur notre site Web. Plus d'infos