Bienvenue aux nouveaux arrivants sur FantasPic !

- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.

--- L’équipe FantasPic ---
On parle des Pics, sans rapport avec le langage ou la programmation

Modérateur : Jérémy

Surveillance de présence de tension externe
HULK28
Avatar de l’utilisateur
Amateur
Amateur
Messages : 106
Enregistré en : août 2015
Localisation : IdF

#21 Message par HULK28 » lun. 9 mai 2016 19:45

Quand je dis plus propre j'entends par là que la division est un processus lourd pour un 8 bit.
Rien à voir avec la saleté. exit
"Pour la carotte, le lapin est la parfaite incarnation du mal" -Robert Shecley-

Surveillance de présence de tension externe
Jérémy
Administrateur du site
Administrateur du site
Messages : 2161
Âge : 39
Enregistré en : juillet 2015
Localisation : Dans le sud
Contact :

#22 Message par Jérémy » ven. 13 mai 2016 22:24

Bonsoir,

Après une légère absence, je me penche sur vos solutions, qui je n'en doute pas sont bien meilleures.

Je jette un œil ce weekend et vous tiens au courant !
C'est en faisant des erreurs, que l'on apprend le mieux !!!

Surveillance de présence de tension externe
Jérémy
Administrateur du site
Administrateur du site
Messages : 2161
Âge : 39
Enregistré en : juillet 2015
Localisation : Dans le sud
Contact :

#23 Message par Jérémy » dim. 15 mai 2016 13:51

Bonjour ,

En appliquant votre méthode cela donnerai ceci non ?:

Code : Tout sélectionner

void Test_relais(){

     valeur_ADC_moy = valeur_ADC = 0;                // RAZ de la valeur

     for (i=0;i<=15;i++){                             // 16 boucles de mesure
         valeur_ADC = ADC_Read(4);                   // Enregistrement de la valeur lue dans la variable
         delay_ms(5);
         valeur_ADC_moy = valeur_ADC + valeur_ADC_moy; // Ajout de la valeur lue au total pour faire la moyenne
      }
      valeur_ADC_moy =  valeur_ADC_moy >> 4;            // Après collecte de 16valeurs on divise par 16 en faisant un décalage de 4 ,pour obtenir la moyenne
 }
 
C'est en faisant des erreurs, que l'on apprend le mieux !!!

Surveillance de présence de tension externe
Guest
Confirmé
Confirmé
Messages : 800
Enregistré en : mars 2017

#24 Message par Guest » dim. 15 mai 2016 16:19

Oui mais simple question
pourquoi ne pas faire :

Code : Tout sélectionner

void Test_relais(){

     valeur_ADC_M = valeur_ADC = 0;                // RAZ de la valeur

     for (i=0;i<=15;i++){                             // 16 boucles de mesure
         valeur_ADC_M =valeur_ADC_M+ ADC_Read(4);                   // Enregistrement de la valeur lue dans la variable
         delay_ms(5);
       }
      valeur_ADC_M =  valeur_ADC_M >> 4;            // Après collecte de 16valeurs on divise par 16 en faisant un décalage de 4 ,pour obtenir la moyenne
 }
 

tu gagnes une variable plus le transfert 100% gagnant
Modifié en dernier par Anonymous le dim. 15 mai 2016 16:33, modifié 1 fois.

Surveillance de présence de tension externe
Jérémy
Administrateur du site
Administrateur du site
Messages : 2161
Âge : 39
Enregistré en : juillet 2015
Localisation : Dans le sud
Contact :

#25 Message par Jérémy » dim. 15 mai 2016 16:25

pourquoi ne pas faire :

:lol: car je n'y avais pas pensé .

Je décortique au max pour éviter les erreurs, mais c'est vrai que parfois ça rajoute des lignes de plus . je peut effectivement directement ajouté la valeur lue a la valeur moyenne , sans la stockée quelques part .

Bien vu :bravo:

j'en suis donc a 16 boucles de 5ms soit 90ms , ca ait une bonne moyenne ca non ?
C'est en faisant des erreurs, que l'on apprend le mieux !!!

Surveillance de présence de tension externe
Guest
Confirmé
Confirmé
Messages : 800
Enregistré en : mars 2017

#26 Message par Guest » dim. 15 mai 2016 16:31

oui est pourquoi la tempo de 5ms tu peux me le dire :lol:

Surveillance de présence de tension externe
Guest
Confirmé
Confirmé
Messages : 800
Enregistré en : mars 2017

#27 Message par Guest » dim. 15 mai 2016 16:37

si c'est un question DANS le temps une INT serai la bien venue, mais dans le doute plaisir de te lire

Surveillance de présence de tension externe
Jérémy
Administrateur du site
Administrateur du site
Messages : 2161
Âge : 39
Enregistré en : juillet 2015
Localisation : Dans le sud
Contact :

#28 Message par Jérémy » dim. 15 mai 2016 16:55

si c'est un question DANS le temps une INT serai la bien venue, mais dans le doute plaisir de te lire

Je n'ai pas compris ce que tu voulais dire ?

J'a ieu l'idée de mettre 5 ms entre deux mesures histoire d'étaler un peu la mesure dans le temps rien de plus . Il me semble avoir lu ca quelques part . Par exemple si j'ai une tension parasites qui dure 5 ms elle ne sera prise en compte qu'une seule fois .

Mais peut-être que ce n'est pas bon !
C'est en faisant des erreurs, que l'on apprend le mieux !!!

Surveillance de présence de tension externe
Guest
Confirmé
Confirmé
Messages : 800
Enregistré en : mars 2017

#29 Message par Guest » dim. 15 mai 2016 17:27

C'est énorme 90ms pour faire une moyenne rapporté au cycle machine,et ceux que pourrait faire ton micro de ces 90ms.
Car je suppose qu' en plus, tu vas faire cela de façon cycliques?
Bon peut-être qu'il ne fait que surveiller la tension :wink:

Pour ce qui est du déclenchement, seuil bas de la tension. Tu peux aussi faire cela, pas sur uns eul seuil bas, mais sur plusieurs seuil bas, cela élimine complètement, ce que tu me sites plus haut avant de réagir
Modifié en dernier par Anonymous le dim. 15 mai 2016 17:33, modifié 1 fois.

Surveillance de présence de tension externe
Jérémy
Administrateur du site
Administrateur du site
Messages : 2161
Âge : 39
Enregistré en : juillet 2015
Localisation : Dans le sud
Contact :

#30 Message par Jérémy » dim. 15 mai 2016 17:33

Je cherche toujours à améliorer le truc en même que d'apprendre .

Alors en fait je test au démarrage seulement, la tension sur la bobine de mon relais, pour être sur qu'il y a bien absence/présence de tension . Si le relais n'est pas collé ( absence de tension) alors j'allume ma led verte. Sinon j'allume une rouge pour avertir qu'il y a présence de tension sur la bobine du relais .

C'est juste un gadget . comme ca a l'allumage je vais une initialisation de mon module et check que tout va bien . Ensuite je m'en sert plus !
C'est en faisant des erreurs, que l'on apprend le mieux !!!


Retourner vers « Généralités sur les PICs »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité