FLProg + nooLite (suite)



Dans un article précédent , j'ai parlé de la mise en œuvre de la prise en charge de l'équipement nooLite dans le programme FLProg. Mon omission n'était pas de parler d'une fonction très pratique de cet équipement, qui vous permet de connecter plusieurs émetteurs-récepteurs au même port UART et de les gérer indépendamment. J'ai décidé de corriger cette omission.

Le schéma de connexion de plusieurs émetteurs-récepteurs à un port UART (extrait de la documentation de l'émetteur-récepteur) ressemble à ceci:



Une caractéristique de cette inclusion est l'utilisation des entrées d'émetteur-récepteur SE. Si 0 V est fourni à cette entrée, l'émetteur-récepteur ne répondra pas aux commandes transmises via UART, et si 3-5 V est appliqué, alors les commandes seront exécutées.
Dans cette leçon, nous allons activer et désactiver plusieurs charges à l'aide de différents émetteurs-récepteurs.
Schéma du banc de test:



Nous créons un nouveau projet et y configurons l'entrée-sortie du contrôleur.
Tout d'abord, nous créons trois entrées pour les boutons:



Étant donné que les boutons sont connectés entre GND et l'entrée, nous activons les résistances de rappel et, pour un fonctionnement clair, nous activons la protection contre les bavardages.



Ensuite, nous créons trois sorties pour contrôler les émetteurs-récepteurs.





Ensuite, nous créons six variables pour les commandes de contrôle.





Faites maintenant glisser la première entrée sur le circuit, deux blocs R-flip-flop (bibliothèque de blocs - dossier «Triggers»), ainsi que deux variables - «Commande pour activer la charge 1» et «Commande pour désactiver la charge 1». Ensuite, nous les connectons conformément au schéma:



Comment fonctionne-t-elle? Puisque nous avons un bouton connecté entre GND et l'entrée, et qu'une résistance de rappel est également activée, lorsque le bouton est relâché, la sortie de l'unité d'entrée sera 1, et lorsque le bouton sera enfoncé, il sera 0. Le déclencheur supérieur R sélectionne le bord d'attaque (transition de 0 à 1) - puis il y a un moment de relâchement du bouton et crée une courte impulsion pour déconnecter la charge dans la variable "Commande de délestage 1" Le déclencheur R inférieur, puisque son entrée est inversée, produit un bord de fuite (transition de 1 à 0) - c'est-à-dire au moment où le bouton est enfoncé. Et il forme également à ce moment une courte impulsion dans la variable «Commande d'allumer la charge 1».
Répétez maintenant ce circuit pour le reste des entrées.



Nous appellerons ce tableau «Surlignage avant» et en créerons un autre. Vous pouvez immédiatement l'appeler - "Transceiver Management". Faites glisser et déposez les variables «Commande pour activer la charge 1» et «Commande pour désactiver la charge 1», le bloc OU (Bibliothèque d'éléments - le dossier «Éléments de base») et la sortie «Activer l'émetteur-récepteur 1». Ensuite, nous les connectons conformément au schéma:



comment cela fonctionne-t-il? S'il y a 1 dans la variable "Commande pour allumer la charge 1" OU dans la variable "Commande pour éteindre la charge 1", le journal 1 apparaîtra sur la sortie "Allumer l'émetteur-récepteur 1" (c'est-à-dire que l'émetteur-récepteur 1 calculera les commandes qui lui seront envoyées). Répétez ce circuit pour le reste des émetteurs-récepteurs.



Créons un nouveau tableau «Équipes d'envoi».

, , , , . , , . .


Faites glisser toutes les variables de commande d'activation sur la carte inférieure, le bloc OU (bibliothèque d'éléments - le dossier Éléments de base) et l'unité de contrôle de l'émetteur-récepteur nooLite (bibliothèque d'éléments - le dossier Divers). Connectez-les.



Selon le schéma, lorsqu'un log.1 apparaît dans l'une des variables, une commande sera envoyée pour activer la charge. Configurez l'unité de contrôle de l'émetteur-récepteur nooLite pour transmettre cette commande.



Répétez ce circuit pour envoyer une commande d'arrêt.



Configurez le bloc.



Eh bien, c'est tout. Merci de votre attention.

Source: https://habr.com/ru/post/fr391837/


All Articles