Microcontrôleur avec un long fil pour entrée numérique

16

J'ai le bouton de sonnette de ma maison câblé dans une carte de développement GHI EMX . Le logiciel évalue l'heure de la journée et détermine si la sonnette doit sonner ou non.

Note latérale: Cela a été mis en œuvre comme un moyen de traiter les farces de ding-dong-ditch que je recevais.

Tout cela fonctionne très bien, sauf pour un problème, le fil connecté à la carte EMX mesure environ 50 pieds (~ 15 mètres) de long et génère suffisamment d'interférences pour que la carte pense que quelqu'un a appuyé sur le bouton et donc ma sonnette sonne à des intervalles aléatoires tout au long le jour. Ma femme et mon chien n'apprécient pas cela (mais les enfants pensent que c'est très amusant).

J'ai essayé de résoudre le problème en suivant les conseils de cet article et en implémentant le circuit suivant:

Protection du filtre passe-bas pour une entrée

Cela n'a pas résolu le problème, mais j'ai trouvé que le fait de mettre une résistance de 3k dans le for 1k et de remplacer le condensateur .01uF par un 40uF fonctionnait un peu mieux, mais rien de plus que 3k provoque un retard notable lorsque vous appuyez sur le bouton avant le cloche sonne. La différence pour mon circuit est que la carte fonctionne sur 3,3 V au lieu de 5 V (ce qui, je suppose, aggrave le problème) et au lieu de se connecter à la terre, le commutateur complète le circuit (c'est-à-dire que deux fils passent entre le microcontrôleur et le commutateur).

Le fil qui passe entre le commutateur et le microcontrôleur est un fil de sonnette standard qui n'est ni blindé ni torsadé. Remplacer le fil de la sonnette par du fil blindé n'est malheureusement pas une option car cela nécessiterait que j'arrache la cloison sèche.

J'ai examiné la question suivante ici , mais cela semble concerner un ADC qui pourrait être un peu différent de mon problème. Toute aide serait très appréciée.

Mise à jour
Après avoir lu plus de la documentation , il apparaît que bien que le microcontrôleur soit alimenté par 3,3 V, il tolère 5 V sur ses broches d'E / S. Je peux m'ajuster à une valeur de résistance plus élevée si j'utilise 5V, mais cela va-t-il aider quelque chose?

Matt Ruwe
la source
1
Ajoutez un clavier de sécurité à votre sonnette. Seuls ceux qui saisissent le bon code à quatre chiffres peuvent le faire sonner à tout moment de la journée.
Kaz

Réponses:

15

Ce que le schéma ne montre pas, c'est l'énorme bourdonnement en mode commun à 60 Hz et comment les motifs sont interconnectés avec la proximité des lignes CA et des transitoires de la ligne électrique.

Votre exemple est un bon exemple de la façon de ne pas interfacer les fils longs.

Puis-je suggérer à l'avenir;

  1. préfère la paire torsadée
  2. préfère les lignes équilibrées
  3. éviter les entrées à haute impédance
  4. préfèrent des impédances adaptées
  5. éviter les LPF excessifs (constantes de temps longues)
  6. inclure un capuchon RF pour supprimer les transitoires.
  7. utiliser des billes de ferrite (starter CM)
  8. éviter la boucle de masse (c.-à-d. connexion directe non exploitée au circuit)
  9. utiliser un circuit de mouillage des contacts (capuchon de 10uF de polarité correcte entre les contacts non plaqués or)
  10. préférez le câble coaxial pour un environnement EMI très sévère.

Étant donné que de nombreuses options ne sont pas disponibles. Faites-les;

  • retirer le grand capuchon à bord et passer aux contacts de l'interrupteur à distance. (doit)
  • retirer la résistance série 3K (1k) et ajouter un manchon en ferrite CM ou similaire
  • ajouter un petit capuchon RF à bord sur l'entrée. par exemple 0,001 ~ 0,01 uF ou tout autre type à faible inductance.
  • Remplacez 100K par 1k ~ 10K.
  • ajoutez de grosses perles de ferrite à plusieurs tours aux deux fils. (Filtre CM)

Avec cette solution, l'impédance du circuit de commutation aura une faible impédance à la fermeture et une faible impédance avec un capuchon électrique sur le commutateur lorsqu'il est ouvert. Le ronflement CM sera absorbé et le bruit RF différentiel sera supprimé. entrez la description de l'image ici

-pullup à la même tension d'alimentation que uC avec un bon capuchon RF sur la puce.

Tony Stewart Sunnyskyguy EE75
la source
Je vais devoir trouver un manchon CM ferrit mais sinon cela semble très faisable. Pensez-vous que cela fonctionnera: digikey.com/product-detail/en/KR50TA251512B1/P11400-ND/409505 . Je vous remercie!
Matt Ruwe
fonctionnera sans, mais une assurance supplémentaire pour les rafales RF parasites. Ce sont mieux .. digikey.com/product-detail/en/FB73-287-RC/M8708-ND/775247 obtenez une douzaine ou plus pour une utilisation future.
Tony Stewart Sunnyskyguy EE75
lire le mauvais ID digikey.com/product-detail/en/35T0231-30P/240-2586-ND/1587459 ci-dessus sont trop petits. Le vôtre ira bien aussi mais deviendra obsolète.
Tony Stewart Sunnyskyguy EE75
Je vous remercie. Quelques autres questions. Dans un environnement résidentiel comme le mien, à quoi dois-je lier le terrain d'entente? Une mise à la terre ou une plomberie électrique à proximité?
Matt Ruwe
la prise électrique à proximité ou la masse du boîtier de l'ordinateur connectée à la prise est correcte. Les fils longs ajoutent trop d'inductance> 1 m.
Tony Stewart Sunnyskyguy EE75
8

Une solution simple peut être de laisser le système de sonnette comme il était avant de commencer ce projet et d'utiliser simplement le microcontrôleur pour couper l'alimentation du haut-parleur de sonnette avec un relais lorsque vous ne voulez pas entendre la sonnette.

Mise à jour

Je ne suis pas très familier avec les systèmes de sonnette (autre qu'un google rapide), donc ce qui suit suppose que vous avez au moins deux conducteurs allant de votre MCU au commutateur.

La carte GHI EMX que vous avez possède un ADC 10 bits afin que vous puissiez envoyer 12vDc (ou plus) à la sonnette et utiliser un simple diviseur de tension afin que la tension vers le MCU ne dépasse pas 5 volts max. Ensuite, du côté logiciel, tout ce que vous feriez serait de lire l'ADC et si la valeur est> 1000 (vous devrez peut-être jouer avec ce nombre, et 1023 est le maximum sur un ADC 10 bits), alors la sonnette a été enfoncée.

Cela ressemblerait à quelque chose comme ça (essayez de ne pas être submergé par mes impressionnantes compétences d'édition graphique):

entrez la description de l'image ici

Une autre option similaire est d'utiliser un déclencheur schmitt avec une tension d'entrée plus élevée. Mais cela nécessiterait des pièces supplémentaires et représente plus d'efforts que l'option ADC.

Éditer

La réponse de Chris Stratton a fait un bon point sur le flux actuel. Si vous changez la résistance de tirage de 100k en une résistance de ~ 220ohm, cela peut faire l'affaire.

Garrett Fogerlie
la source
1
Pas une mauvaise idée, mais cela enlève du plaisir au concept. J'aimerais encore savoir quand l'interrupteur est enfoncé après les heures afin que je puisse allumer les lumières avant de la maison et donner aux farceurs un peu de leur propre médicament.
Matt Ruwe
peut-être le son d'une sirène de police éloignée qui se rapproche avec un Taser sur l'interrupteur.
Tony Stewart Sunnyskyguy EE75
1
Ma suggestion préférée est venue d'un ami qui a eu l'idée d'utiliser une allumette électrique connectée à des feux d'artifice qui se déclencheraient lorsque le bouton serait enfoncé. =) En fin de compte, cette idée était tout simplement trop dangereuse.
Matt Ruwe
@Matt voir ma mise à jour pour une autre solution. Au lieu de feux d'artifice, j'ai utilisé une sirène et une lumière stroboscopique parce que les enfants fumaient sur le côté de ma maison. Je l'ai également filmé en vidéo, ce qui l'a rendu encore mieux!
Garrett Fogerlie
6

Il existe en fait une solution très simple à ce problème.

La clé pour comprendre cette solution est de réfléchir à la raison pour laquelle une sonnette électromécanique ordinaire ne sonne pas en raison d'interférences similaires. La réponse est bien sûr qu'il faut que la puissance réelle de l'anneau passe à travers le circuit fermé - les interférences ne coupleront pas suffisamment de puissance dans le circuit ouvert pour sonner faussement.

Vous pouvez créer une situation similaire en utilisant une résistance de rappel de faible valeur, avec le bouton de sonnette connecté à la terre. Une résistance de cent ohms signifierait qu'environ 25 milliampères de courant devraient s'écouler avant que l'entrée du microcontrôleur soit suffisamment basse pour être lue comme un "0". La communication série longue distance se fait souvent avec un courant de 20 mA, donc 25 mA devraient suffire, mais vous pouvez facilement ajuster vers le haut ou vers le bas.

Vous pouvez en outre rejeter les interférences en ayant un logiciel sur le microcontrôleur qui nécessite que le bouton soit maintenu fermé - sans espace - pendant environ 100 mS avant qu'il ne soit reconnu comme un anneau valide.

On pourrait faire valoir que cette méthode gaspille de l'énergie, mais l'énergie n'est consommée que pendant le temps où le buzzer est maintenu enfoncé. La résistance doit avoir la capacité de gestion de l'énergie (thermique) pour la possibilité de blocage du bouton fermé en permanence, mais ce ne serait pas le cas ordinaire pour calculer la consommation d'énergie.

Chris Stratton
la source
à moins que vous n'utilisiez 10% ou un courant nominal sur les interrupteurs métalliques sans contact Au, le démarrage échouera éventuellement par intermittence avec des courants de niveau logique. C'est pourquoi le capuchon ESR faible à travers (capuchon de film préféré) est essentiel pour réduire l'oxydation avec une décharge de courant élevé ESR faible à travers les contacts.
Tony Stewart Sunnyskyguy EE75
@Richman - une défaillance éventuelle est possible, oui - c'est aussi lors de l'utilisation d'un buzzer électromécanique. On pourrait augmenter le courant de la théorie qui pourrait aider ou essayer votre idée de condensateur d'impulsions. Certains modèles de boutons de sonnette peuvent implicitement avoir un contact glissant lorsque les feuilles s'enfoncent, ce qui aiderait beaucoup. Je soupçonne qu'un échec facile à rectifier après un certain nombre d'années ne serait pas un étalon pour un appareil de commodité que quelqu'un construit pour sa propre maison. Sur le plan pratique, c'est utile si la personne à la porte peut au moins faiblement entendre la cloche.
Chris Stratton
0

Le câble de 15 mètres agit comme une antenne. Vous devez utiliser un condensateur de traversée (par exemple W2F11A4708AT1F ) afin de filtrer les interférences RF.

Aldanajaramillo
la source