Article original
Système de contrôle d’accès et de verrouillage pour le centre d’immunologie moléculaire
Contrôle d’accès et verrouillage Système pour le centre d’immunologie moléculaire
ing. Marcel Pedreira Marcel1, Dr. Valery Moreno Vega2
1. Centre d’immunologie moléculaire, Havane, Cuba, E-mail: [email protected].
2. Département automatique, Faculté de génie électrique, Institut supérieur Polytechnicien José Antonio Echeverría, Havane, Cuba. E-mail: [email protected].
Résumé
Dans le présent ouvrage La conception et le développement d’un système de contrôle d’accès et de verrouillage dans le centre d’immunologie moléculaire parce que Les systèmes commerciaux de ce type installé dans ce centre ne répondent pas à tous les besoins. Le système proposé est composé de deux cartes électroniques: le contrôleur de porte et le contrôleur de verrouillage, tous deux ont été développés sur la base de la microcontroller microchip programmée à l’aide du compilateur CCS PCW. Ces cartes sont capables de communiquer avec les périphériques de lecture de code à barres, la proximité, la biométrie ou tout autre qui transmet par le protocole de Wiegand. Ils doivent également être configurés pour fonctionner de manière souhaitée, pour cela, une application logicielle de paramétrage a été développée à l’aide de QT tels que le cadre et la mise en œuvre de pratiques efficaces d’ingénierie de logiciels. Cette application communique avec les contrôleurs via RS232 avec protocole Modbus.
Mots-clés: contrôle d’accès, verrouillage, microcontrôleur, modbus, wiegand, ingénierie logicielle.
Résumé
Ce papier indique la conception et le développement d’un système de contrôle d’accès et de verrouillage pour le centre d’immunologie moléculaire, car les systèmes commerciaux installés dans ce centre ne répondent pas à tous les besoins. . Le système proposé est composé de deux cartes électroniques: le contrôleur de porte et le contrôleur de verrouillage, tous deux ont été développés sur la base du microcontrôleur PIC de Microchip programmé à l’aide du compilateur CCS PCW. Ces cartes sont capables de communiquer avec des périphériques tels que la lecture de codes à barres, la proximité, la biométrie ou tout autre qui transmettent par le protocole de Wiegand. Ils doivent également être configurés pour fonctionner de manière souhaitée et, par conséquent, une application logicielle a été développée à l’aide de QT comme cadre et mettant en œuvre des pratiques efficaces de génie logiciel. Cette application communique avec les contrôleurs via RS232 à l’aide du protocole Modbus.
Mots-clés: contrôle d’accès, verrouillage, microcontrôleur, modbus, wiegand, ingénierie logicielle.
Introduction
Le concept de contrôle d’accès a été utilisé dans plusieurs contextes, il est associé à des concepts de sécurité informatique et de réseaux informatiques. Toutefois, dans ce travail, le système est appelé lié aux portes d’une édification. En vertu de ces principes, un système de contrôle d’accès administre l’entrée dans des zones restreintes et empêche les personnes non autorisées ou indésirables d’avoir la liberté d’accéder à certains locaux. De même, vous pouvez connaître l’aide au personnel, les calendriers de revenus et l’obtention du diplôme, et peut également avoir un contrôle historique des entrées de personnes dans toutes les régions.
Les systèmes de contrôle d’accès sont formés par divers appareils ou composants. Les contrôleurs de porte constituent l’élément fondamental ou de renseignement dans un système de contrôle d’accès. D’autre part, les dispositifs de lecture sont utilisés pour l’identification de l’utilisateur via certaines technologies, telles que le code à barres, le radiofréquence ou le code de biométrie. Les éléments d’action finaux sont responsables du blocage physique des portes, ils peuvent être des vis ou des serrures électroniques, électroaimants, etc. De plus, ces systèmes présentent normalement un logiciel de supervision qui fonctionne sur tous les contrôleurs disposés dans le réseau et effectuer ainsi une surveillance et un contrôle. Il est également possible d’intégrer des circuits de télévision fermés, des systèmes de lutte contre les incendies, des intrus et des mécanismes de verrouillage En utilisant ce dernier, l’accès à une zone commune entre deux portes peut être bloqué lorsque l’une d’entre elles a été ouverte.
Le Centre d’immunologie moléculaire (CIM), appartenant au pôle scientifique à l’ouest de la capitale cubaine, est une institution spécialisée de la recherche, du développement et de la fabrication de produits biopharmaceutiques pour la lutte contre le cancer à partir de la Culture des cellules de mammifères selon la réglementation des bonnes pratiques de production (GMP). Ce centre, ainsi que d’autres polos dédiés à la biotechnologie, possèdent des zones de production appelées chambres propres spécialement conçues pour obtenir de faibles niveaux de contamination.Ces chambres ont ses paramètres environnementaux strictement contrôlés: les particules de l’air, la température, l’humidité, l’écoulement d’air, la pression interne, l’éclairage, etc.
Le système de contrôle d’accès joue un rôle important dans la réalisation d’un tel objectif. Actuellement, deux systèmes de contrôle d’accès et de verrouillage de différents fabricants sont en fonctionnement en fonctionnement: Kantech et Siemens. Ces systèmes ont les inconvénients suivants dans leur application:
· Architecture fermée. Il y a une incompatibilité en termes de protocoles de communication, de bases de données, etc. Pour cette raison, les informations sont fragmentées ou divisées, ce qui rend une gestion à un niveau central difficile.
· Support technique. Des difficultés ont été présentées avec obtention de cartes de proximité et sont actuellement épuisés les travailleurs existants ayant besoin d’entrer dans une certaine zone qui ne dispose pas des moyens de le faire.
· En dépit d’être des systèmes bien efficaces et robustes, des circonstances particulières ont été données dans lesquelles elles ne sont pas efficaces ou incapables de résoudre le problème à l’aide du système uniquement avec les options qu’il apporte par définition.
Pour cette raison, la nécessité de mettre en place un nouveau système de contrôle d’accès et de contrôle de verrouillage a été soulevée, qui est entièrement développée dans la CIM.étte permettra une gestion centrale des informations et un niveau de configuration supérieur. et l’expansion, permettant de fournir les besoins non résolus par les systèmes de paiement installés à présent.
Dans cet article, le processus de développement du système proposé est décrit pour résoudre le problème précédent. Dans la section 2, une description est donnée à peu près, dudit système, soulignant les éléments qui le composent ainsi que les protocoles utilisés. Dans la section 3, la conception des contrôleurs est détaillée, indique le matériel et le micrologiciel requis pour l’opération. La section 4 traite de l’ensemble du processus de développement de l’application logicielle de paramétrage de chacun des contrôleurs. Enfin, la section 5 décrit les résultats obtenus dans la mise en œuvre du système à une échelle pilote.
Vue d’ensemble du système proposé
La solution présentée est constituée d’un système composé de deux éléments fondamentaux: le contrôleur de porte et le contrôleur de verrouillage. Les deux sont des cartes électroniques à des fins différentes dans le système.
La fonction du contrôleur de porte est, comme son nom indique, le contrôle des portes. Un contrôleur de ce type peut contrôler un maximum de deux portes. De cette manière, il est chargé de recevoir la demande d’accès qui provient de l’élément d’identification, déterminez si le code d’arrivée a accès par la porte spécifiée selon la configuration antérieure et, si positif ou valide, puis déverrouillez la porte en question. La figure 1 montre la connexion de ce contrôleur. Il convient de noter que cela est capable de recevoir le codage envoyé de tout lecteur qui implémente le format de protocole Wiegand 26. Ce protocole est ouvert et est considéré comme une norme dans les systèmes de contrôle d’accès. De cette manière, la communication avec une large gamme de dispositifs de lecture survenant actuellement est garantie.
Un autre élément associé au système est un périphérique permettant de détecter le cas qu’un utilisateur souhaite sortir d’un local via certains porte contrôlée, c’est-à-dire par la partie opposée où se trouve le lecteur. Ces cas sont appelés Rex (demande de sortie) dans la plupart des systèmes de contrôle d’accès, et un élément est inclus dans le matériel système qui notifie, via un signal, cette action au contrôleur. Cet élément peut être un capteur de présence ou un bouton simple.2
Le contrôleur de verrouillage est responsable de l’ajout de la capacité de verrouillage au système. Ce mécanisme consiste à bloquer une ou plusieurs portes après avoir détecté l’ouverture d’une porte donnée. Ceci est fait, bien sûr, avec une configuration préalable du contrôleur, où cette relation ou cette interaction entre les portes est établie. Ce système peut avoir de nombreuses utilisations ou applications et, dans le cas de CIM, est utilisé pour réduire les risques croisés de la contamination croisée, un concept associé au GMP dans lequel une personne qui quitte la zone propre peut induire une pollution à celle qui pénètre. La figure 2 montre la connexion de ce dispositif.
Ces périphériques doivent être configurés ou paramétrés afin qu’ils effectuent la fonction souhaitée. Pour cela, un outil logiciel est développé qui communique avec ceux-ci via un port RS-232 à l’aide d’un PC. Le protocole de communication entre l’application et les appareils est Modbus.Ce protocole ouvert a été mis en œuvre de manière à ce que les contrôleurs puissent communiquer avec le plus grand nombre de logiciels possible, facilitant ainsi la furtuasimplementations ou les installations du système, telles que la possibilité d’une supervision centrale via une SCADA, pour citer un exemple.
Les deux cartes sont basées sur des microcontrôleurs de Microchip Pic, en raison de la grande diffusion qui existe de ces dispositifs et de la disponibilité de ceux-ci avec leurs outils associés pour mettre en œuvre et vérifier les applications de ce type dans la CIM. La programmation des microcontrôleurs a été faite à l’aide du compilateur CCS PCW, pour les raisons de connaissance de l’auteur et également de la disponibilité légale dudit logiciel au centre. Les tests de configuration matérielle des périphériques ont été effectués à l’aide de Picschool, un outil composé d’un modèle ou de protoboard pour le réglage des applications utilisant des microcontrôleurs PIC. L’application de paramétrage a été développée à l’aide du cadre QT, car une plate-forme open source puissante est très diffusée à ce stade.
Protocole Wiegand
Ce protocole est unidirectionnel et permet le transfert de données à partir d’un lecteur au contrôleur. Bien qu’il ait été conçu pour les lecteurs de l’effet de Wiegand, compte tenu de son efficacité dans ce domaine, il a également été mis en œuvre dans des lecteurs avec une autre technologie, telle que celles de la proximité ou de la radiofréquence et même dans des claviers numériques. Le protocole établit des lignes de données, une puissance et une signalisation. Les lignes de signalisation sont celles utilisées pour la manipulation et les LED de corne, qui possèdent normalement ces lecteurs, tandis que la transmission de données est effectuée via trois threads:
· Data1: ligne pour envoyer des logiques.
· Data0: ligne pour envoyer des zéros logiques.
· GND: Ligne fixe de la référence des deux.
Figure 3 représente graphiquement ce système de transmission. Dans l’état de repos, les lignes Data1 et Data00 sont à un niveau élevé. Pour transmettre un peu dans `1’set envoyer une impulsion de niveau bas de 50 ì » Durée par ligne1, tandis que les données0 restent élevées. Au contraire, de transmettre un peu à « 0 » ce qui est fait est d’envoyer une faible impulsion, de la même durée, mais par la ligne Data0 tandis que la ligne Data1 reste élevée. La séparation entre chaque impulsion et la suivante est d’environ 2 ms.
Utilisation de ce système, un nombre de bits peut être transmis. Il existe toutefois un consensus international pour utiliser un certain nombre de bits et l’interprétation d’eux. Le format le plus couramment utilisé, et donc l’employé de ce projet est la Wiegand26, qui spécifie que le premier bit (B0) est la parité des 12 premiers bits transmis (B1: 12), les huit suivants (B1: B8) constituent Un entier de 8 bits appelé Code d’installation, les 16 bits suivants (B9: B24) représentent un entier de 16 bits appelé UserCode et le dernier bit (B25) est la parité impaire des 12 derniers bits transmis (B13: B24). 2
protocole Modbus
Le protocole Modbus est basé sur l’architecture maître / esclave. Conçu en 1979 par la société Modicon pour sa gamme PLC, il est devenu un protocole de communication standard factuel dans l’industrie et est qu’il bénéficie d’une plus grande disponibilité pour la connexion de périphériques intelligents. Il est principalement dû aux raisons suivantes:
· C’est public.
· Votre implémentation est facile et nécessite peu de développement.
· Gérer les blocs de données sans restrictions.
Parfois, dans la littérature, il fait référence à Modbus en tant que structure de message, car elle ne spécifie pas une couche physique, de la lecture peut être mise en œuvre à l’aide de différentes normes, telles que RS232, RS422, RS485 E, même À propos de Ethernet. Il existe deux variantes avec différentes représentations numériques des données et des détails du protocole légèrement inégal: Modbus RTU et Modbus ASCII.Il est également une version Modbus TCP, mais c’est plutôt le format RTU en définissant la transmission via des paquets TCP / IP. La variante utilisée dans ce projet est la RTU.
dans un réseau MODBUS, chaque périphérique a un toxicomane. Tout appareil peut envoyer des commandes, bien que l’habituel soit de le permettre uniquement à l’enseignant et que les esclaves se limitent à répondre aux demandes de celui-ci. Un message Modbus envoyé du maître à un esclave contient l’adresse de l’esclave, la commande ou la commande à effectuer, les données associées à la commande et une information redondante ou une somme de coche pour assurer l’intégrité de la réception.Le protocole établit une grande variété de commandes ou de fonctions et, dans ce projet, seuls ceux associés à la valeur de la valeur de plusieurs des enregistrements esclaves (Writemultipleregisters) et la demande du contenu desdits enregistrements (Readholderingregisters) sont utilisés. Il convient de noter que la norme officielle définit des enregistrements de 16 bits entre autres spécifications.3
puis, comme déjà fait référence ci-dessus, dans ce projet Modbus RTU Protocole sur RS232, où le PC est le dispositif principal et le Les contrôleurs sont des esclaves, bien qu’il connecte une à la fois. Pour cette raison, il n’est pas nécessaire de spécifier des instructions pour chacun des esclaves, car tous les messages envoyés par l’enseignant sont diffusés ou diffusion (adresse 0) et ne seront reçus que par le seul esclave qui lui est connecté. Toutefois, la mise en œuvre de ce protocole offre la possibilité d’élargir le système résultant facile, sans plusieurs modifications importantes, introduisant un système de supervision ou de scada et de connecter les contrôleurs en formant un réseau Modbus.
Développement des contrôleurs
Comme indiqué précédemment, les cartes représentant les contrôleurs qui composent le système proposé sont basés sur des microcontrôleurs PIC. Dans ce cas, un 16F877 a été utilisé pour chaque carte. Estees Un microcontrôleur 8 bits, appartenant au milieu de gamme de cette famille et qui répond parfaitement aux exigences des deux applications, dites-moi la mémoire, le nombre d’entrées et des sorties entre autres aspects. Vous trouverez ci-dessous la configuration du circuit des cartes susmentionnées, ainsi que le micrologiciel prévu dans les microcontrôleurs pour son fonctionnement approprié.
matérielle du contrôleur de porte
sur la figure 4 Un schéma de la configuration matérielle de la carte représentant le contrôleur de porte est affiché.
Les lignes de la nabille élevée du port B ont été utilisées pour recevoir les données envoyées des deux lecteurs pouvant être connectés Pour un contrôleur, comme décrit ci-dessus sur le protocole WIEGAND, chaque lecteur utilise deux lignes pour la transmission de données: DATA0 et DATA1. Il a été connecté de cette manière d’utiliser l’interruption de changement d’état dans les quatre entrées les plus significatives du port B. De cette manière, toute variation de ces goupilles interrompt le fonctionnement du microcontrôleur qui coïncide avec l’arrivée d’un peu appartenant à la pouls train correspondant à un code envoyé par un lecteur. Une autre six lignes d’entrée / sortie du microcontrôleur, cette fois configurée en tant que sorties, ont été utilisées pour la manipulation des lecteurs. Dans ce cas, ils étaient réservés à la connexion de trois threads de signalisation qui fournissent la plupart des lecteurs qui mettent en œuvre le protocole susmentionné pour l’activation des LED rouges et vertes, ainsi que de la corne.
La mémoire externe a été connectée à l’aide de l’interface I2C et que, en charge de stocker les codes des utilisateurs autorisés, d’accéder à l’une des portes appartenant au contrôleur en question. Il a été décidé que la mémoire était externe pour deux raisons fondamentales:
1. La mémoire interne EEPROM du microcontrôleur ne répond pas aux besoins de l’espace.
2. Il facilite la maintenance et la reconfiguration du système à mesure que l’exportation / importation des données est possible.
La structure de cette mémoire est illustrée à la figure 5. Comme on peut le voir, quatre emplacements sont utilisés pour un code d’utilisateur.Le premier est enregistré par le code de l’installation, comme indiqué ci-dessus est un 8 Numéro de bits. Le code d’utilisateur est ensuite stocké, soit 16 bits, donc deux emplacements sont utilisés pour cela, dans la première partie de la partie supérieure et dans la deuxième partie inférieure de ce nombre. Enfin, le quatrième emplacement du code est occupé par la politique d’accès, qui n’est rien de plus qu’un nombre qui identifie le type d’accès que le propriétaire de l’utilisateur du code en question a. Le tableau 1 concerne les types d’accès et leur numéro de politique d’accès correspondant.
Le nombre maximum d’utilisateurs Pour un contrôleur, il a été fixé à 256, quantité qui satisfasse parfaitement aux besoins de l’application. Ensuite, avec la structure avant l’exposition, une mémoire EEPROM I2C de 1kx8 emplacements est nécessaire. À cette fin, le circuit intégré ST24W08MR a été utilisé qui constitue une mémoire avec les caractéristiques requises.
Le canal asynchrone du port série ou l’utilisation du microcontrôleur était réservé à la connexion de la carte à un PC et exécutez la configuration ou le paramétrage du contrôleur par cet itinéraire.Il est donc que les lignes de port série ont été couplées à un MAX232, un circuit intégré qui adapte les niveaux de tension qui gère le microcontrôleur à la norme RS-232. De cette manière, le PC est communiqué avec le microcontrôleur à l’aide du protocole Modbus.
Deux autres lignes d’entrée / sortie du microcontrôleur ont été utilisées (configurées en tant que sorties) pour le lecteur des portes. Ceci peut être basé sur différents types de fermeture électronique: prise, électro-puce, etc. et, dans tous les cas, il convient de noter que ces éléments sont alimentés par 24VDC ou 12VDC. Ensuite, le circuit nécessaire pour le lecteur basé sur le relais a été couplé à ces deux sorties de microcontrôleur.
Trois autres lignes d’entrée / sortie du microcontrôleur (cette fois configurée en entrée) ont été utilisées pour détecter les signaux REX qui, comme indiqué ci-dessus, ils peuvent procéder d’un bouton ou d’un capteur de présence. Dans tous les cas, le dispositif de capteur doit être connecté à l’une des entrées destinées à cela, en fonction de la porte traitée. La configuration matérielle du contrôleur de porte comprend un circuit de conditionnement de ces signaux numériques sur les entrées de microcontrôleur, ainsi qu’une logique de sorte qu’une activation de ces signaux l’interrompit par la ligne correspondant à l’interruption externe.4- 5
firmware du contrôleur de porte
Le papier du contrôleur de porte est la réception du code envoyé de l’un des deux lecteurs via le protocole de Wiegand et le comparer à ceux stockés dans la mémoire externe. Pour que, s’il y a une coïncidence et que la politique d’accès est appliquée, l’accès est donné à la porte en question. Le microcontrôleur de microcontrôleur obtenu à l’aide du compilateur PCW CSS, comme indiqué précédemment, en utilisant le langage C pour la programmation. Ce compilateur dispose de plusieurs installations pour le programmeur, dans ce travail, les pilotes fournis par cet outil pour la manipulation des périphériques I2C et pour la mise en oeuvre d’un dispositif Slave Modbus respectivement. Ensuite, le programme est sélectionné fondamentalement en trois fonctions:
1. La fonction principale: principale.
2. La fonctionnalité d’interruption en raison du changement d’état de l’une des quatre broches les plus significatives du port B.
3. La fonction de soins d’interruption externe.
sur la figure 6, le diagramme de flux de la fonction principale est indiqué. Dans cette fonction, ce qui est fait est constamment surveille l’arrivée d’un message Modbus. Si oui, il est identifié qui est la commande envoyée de l’enseignant via le message en question, et cela est fait l’action correspondante, qui n’est rien de plus que la lecture ou la rédaction des enregistrements et une réponse à l’enseignant est envoyée. Les commandes utilisées dans cette application sont en lecture Holding Regrister, pour la lecture par le maître des enregistrements qui stockent les codes d’utilisateur du contrôleur connecté et les écrans d’hilletemultipleregisters au cas où vous souhaitez modifier le contenu de ces enregistrements.3
La figure 7 offre un organigramme de la fonctionnalité de soins à l’interruption de la variation de l’état dans les quatre bits les plus importants du port B. L’objectif fondamental de cette fonction est la mise à jour de la mémoire tampon de code WIEGAND, car elle sera exécutée avec l’arrivée d’un peu correspondant audit code. Cette interruption peut être présentée à la fois par un flanc d’automne et une hausse de l’une quelconque des goupilles les plus significatives du port B. Ensuite, analysant le fonctionnement du protocole de Wiegand, auparavant exposé, on peut déduire que l’arrivée d’un peu pour certains À partir des lignes de données, représentées par une impulsion de faible niveau, a provoqué deux interruptions par changement d’état dans la broche connectée à ladite ligne. Pour cette raison, il a été décidé de mettre à jour le tampon de code Wiegand uniquement avec la détection du flanc d’impulsion de l’impulsion correspondant à l’arrivée d’un peu, il est donc nécessaire de lire le port et d’exclure les cas possibles dans lesquels L’interruption a été motivée par un flanc de montée. Si oui, c’est-à-dire que l’interruption a été motivée par une inconvénération, la broche est identifiée par laquelle l’impulsion est produite afin de mettre à jour le tampon de code avec ‘1’ ou ‘0’ selon le cas (données0 ou données1) et Définissez la porte d’où vient le code. Enfin, il est vérifié si la fin du code a été atteinte, auquel cas il doit être déterminé si le code d’arrivée est autorisé, c’est-à-dire s’il est stocké dans la mémoire de code d’utilisateur. Cas affirmatif, l’accès est accordé si elle est appliquée le Politique d’accès.
La fonction de l’attention sur une interruption externe La seule chose qu’il fait est déterminée par laquelle les deux portes ont eu lieu le REX, puis autorisent l’accès. Il est entendu en accordant accès par une porte, l’action de déverrouillage de celui-ci par le contrôleur pendant une période de cinq secondes.
matérielle du contrôleur de verrouillage
à la figure 8 Un schéma de la configuration matérielle de la carte représentant le contrôleur de verrouillage est affiché.
Comme vous pouvez le constater, le matériel du contrôleur de verrouillage est beaucoup plus simple que celui du contrôleur de porte. Il est formé, dans sa structure de base, par huit entrées numériques avec les circuits de conditionnement correspondants aux entrées de microcontrôleur et huit sorties à relais. Comme le contrôleur de porte, le canal USART du microcontrôleur est utilisé pour la communication avec le PC via le protocole Modbus, l’utilisation du circuit intégré MAX232 est également nécessaire au-dessus4-5
firmware du contrôleur de verrouillage
La fonction de base du contrôleur de verrouillage n’est rien de plus que de surveiller les entrées et, en fonction de la lecture de la lecture et de la configuration précédente, activez les sorties correspondantes. La configuration est effectuée via une application de paramétrage exécutée sur un PC et qui est connectée à la carte via RS-232, qui enregistre dans la mémoire EEPROM interne du microcontrôleur. La structure de cette mémoire est illustrée à la figure 9. Comme on peut le voir, dans les emplacements de celui-ci code qui code les sorties qui doivent être activés lorsqu’une entrée est activée. Ce formulaire, dans les deux premiers emplacements. Trouvez le codage de la sorties pour l’entrée 0, puis celle de l’entrée 1 et ainsi de suite. Deux emplacements ont été utilisés pour chaque entrée car le protocole Modbus utilise des enregistrements de 16 bits.
L’algorithme de la fonction principale du programme (principal) est illustré à la figure 10. Il repose fondamentalement sur le Constant Lecture du port qui constitue les entrées du contrôleur, puis la mappée avec la configuration stockée dans la mémoire et, de cette manière, le résultat est ensuite supprimé par le port de sortie. Ci-dessous est interrogée par l’arrivée d’un message de protocole Modbus et, dans l’affirmative, il est de la forme de choquage qui dans le programme de contrôleur de porte. C’est-à-dire que la commande envoyée de l’enseignant est identifiée par le message reçu, l’action correspondante est effectuée et une réponse au maître est envoyée.
Développement de l’application de paramétrage
Pour la configuration des contrôleurs Il était nécessaire de développer une application logicielle de sorte que, facilement, sympathique et intuitive, l’opérateur effectuera ledit paramétrage Cette application doit contacter à l’aide du port série RS-232 du PC avec des pilotes pour, de cette manière, d’écrire et de lire la configuration en implémentant le protocole Modbus. Le développement a été réalisé à l’aide du cadre QT, pour les raisons précédemment exprimées, avec C ++ comme langage de programmation.
Il a été décidé de mettre en œuvre une application de paramétrage différente pour chaque contrôleur pour des raisons de confort et de clarté. Cependant, les deux sont très similaires, et ils diffèrent de petits aspects sur la manière de gérer les données et de représenter les informations. Cela sera meilleur que le processus de développement des applications est résolu, décrit ci-dessous.
Application de paramétrage du contrôleur de porte
Pour le cas du contrôleur de porte, la levée des exigences de l’utilisateur a été poursuivie, à un début, pour faire une enquête.
Exigences fonctionnelles:
1. L’application doit être connectée au contrôleur, lisez la configuration existante et représente les informations.
2. L’utilisateur doit avoir la possibilité d’ajouter et de modifier les codes, ainsi que la politique d’accès.
3. L’application doit mettre à jour le pilote à la demande, afin de télécharger toutes les modifications possibles de la configuration de l’utilisateur.
Exigences non fonctionnelles:
1. Utilisation de la langue espagnole dans tout le projet.
2. Utilisez un style format et uniforme dans toutes les fenêtres de l’application.
de la levée des exigences de l’utilisateur, les cas d’utilisation sont définis, dont le diagramme est illustré à la figure 11. L’acteur système est l’administrateur, qui est le seul opérateur système capable de modifier et de surveiller la Configuration des contrôleurs.
à partir des cas d’utilisation, l’étape d’analyse est définie qui fera partie de l’architecture en tant que logiciel et relations avec chacun autre. Pour la conception de l’application, une structure à deux couches a été utilisée, composée de la couche de présentation, qui représente l’interface avec l’utilisateur et la couche d’entreprise où la logique d’application est effectuée ainsi que l’accès aux données.
La figure 12 montre un diagramme de classes de l’application. La couche d’entreprise est formée par une seule classe: TController, qui encapsule toutes les opérations à effectuer avec les contrôleurs. L’accès aux données est effectué à l’aide de la bibliothèque Open Open Source, qui permet une gestion simple du protocole Modbus sans avoir à maîtriser de nombreux détails de celui-ci. La couche de vue ou la présentation est étroitement liée au cadre QT, qui fournit les classes nécessaires au développement de l’interface utilisateur ou de l’interface graphique de l’application logicielle. L’interface est composée d’une fenêtre principale, qui hérite de la classe QmainWindow de la bibliothèque QT elle-même, deux fenêtres sont créées de manière dynamique du type QDialog, car les cas où l’opérateur souhaite modifier les codes ou définir les paramètres de la connexion avec le contrôleur respectivement.6-7
doit être noté que la classe TController, qui vient d’où l’accès à des données à travers le Fieldalk Library, a un membre qui constitue le modèle de données, indiquer les codes et la stratégie d’accès, qui sont affichés dans la vue. Ici, un modèle de conception très diffusé a été utilisé dans le développement de logiciels appelé modèle Vista Controller (M-V-C), où le traitement des données de sa présentation est séparé en facilitant la réutilisabilité et la maintenance. Le cadre QT fournit une implémentation plus facile de ce modèle, de sorte qu’un modèle des données soit créé en créant un objet de type qStandarditemModel et est associé à un objet visuel de type QTableView à travers laquelle les informations de modèle sont présentées et modifiées. De cette manière, le traitement des données et la couche de présentation sont effectués dans la couche d’entreprise sous la forme d’une interface avec l’utilisateur.7-8
une fois que vous avez la conception de classes, elle est effectuée une analyse plus profonde de l’utilisation. Cas, mais d’une perspective différente, depuis la séquence d’interactions chronologiques entre des objets individuels du système afin que chaque cas d’utilisation puisse être complètement exécuté.9
La figure 13 affiche la séquence des événements pour le cas d’utilisation Connect Controller. Dans ce cas, dans la fenêtre principale de l’application, l’objet MainWindow de la classe TmainWindow, la possibilité est fournie via un bouton permettant à l’utilisateur de commander la connexion avec le contrôleur. Une boîte de dialogue à jour est donnée lorsque la possibilité de spécifier les paramètres de La connexion, raconter le port PC, la vitesse, etc. Ce dernier est créé en créant un objet de connexion héritéeDialog de qdialog qui présente les champs associés aux paramètres mentionnés et renvoie ses valeurs une fois que l’utilisateur accepte la fenêtre de la boîte de dialogue.
Une fois que l’objet MAINWINDOW reçoit des informations, un objet de la classe TController est créé et exécute la méthode OpenProtocol dedit objet pour ouvrir la connexion avec les paramètres spécifiés. Ensuite, l’objet du contrôleur exécute la commande Readholderingregister Registre appartenant au protocole Modbus, à travers laquelle la configuration actuelle du contrôleur connecté est lue. Avec cette information, alors, le modèle de données est mis à jour, avec lequel un signal ou un message est envoyé pour la mise à jour automatique de la vue par le mécanisme QT pour le motif MVC mentionné ci-dessus.10
Le cas de l’utilisation Ajouter du code, dont la séquence est illustrée à la figure 14, démarre une fois que l’utilisateur appuie sur le bouton correspondant de la fenêtre principale. Lorsque l’objet Mainwindowow reçoit le signal de cet événement, il crée un objet de la classe EditDialog héritée à partir de QDialog où les champs nécessaires à l’édition du nouveau code à ajouter sont fournis. Une fois que l’utilisateur a terminé la modification, le modèle des données appartenant à l’objet Controller est mis à jour et que celui-ci lance automatiquement un signal pour la mise à jour de ceux-ci dans la vue.7
la séquence pour le boîtier d’utiliser le code d’édition similaire à celui de l’ajout de code, la différence réside dans un léger changement dans le mode de mise à jour des données dans le modèle, car voici ce que voici un nouvel enregistrement, mais il est déterminé quel est l’enregistrement que vous voulez changer et procéder à sa modification.
Enfin, la figure 15 montre la séquence d’événements pour le cas d’utilisation du contrôleur de mise à jour.Lorsque l’utilisateur le spécifie par bouton de la fenêtre principale, l’instance d’objet MADHINDOWOW La fonction d’objet du contrôleur de mise à jour. Cette fonction exécute la commande Writemultipleregisters correspondant au protocole Modbus, qui écrit la configuration des données présentes dans le modèle de la mémoire de la mémoire de la mémoire Configuration de la mémoire du contrôleur connecté.
Application de paramétrage du contrôleur de verrouillage
Dans ce cas, le produit final est similaire à celui du contrôleur de porte, et la différence réside dans la présentation de l’information. Les fenêtres sont les mêmes sauf que les éléments qui les modifient. De cette manière, la fenêtre principale, au lieu de présenter une table pour représenter les codes du contrôleur de porte, dans ce cas, ce qui est disponible est un arbre, où les sorties qui en dépendent sont affichées à chaque entrée. De même, ces informations sont basées sur un modèle qui fait partie d’une classe TController appartenant à la couche d’entreprise. De la même manière, la fenêtre de dialogue pour éditer la configuration change sa composition.
Les exigences de l’utilisateur sont similaires, à l’exception de l’exigence fonctionnelle du contrôleur de porte, car dans le cas du contrôleur de verrouillage, les codes ne sont pas ajoutés, ce sont des sorties simplement liées avec les entrées. Par conséquent, le diagramme d’utilisation d’utilisation a un léger changement en éliminant les cas d’utilisation d’une utilisation et d’édition d’un code, et en incorporant un nouveau cas d’utilisation appelé Modifier la configuration, illustrée à la figure 16. La séquence des événements de ce cas d’utilisation est similaire. à cela de l’ajout et de l’édition de code dans le contrôleur de porte, seule la fenêtre de réglage différente.
résultats
Après la simulation correspondante des contrôleurs à l’aide du logiciel ProTeus, il était possible de Assemblage du matériel d’eux à Picschool, qui, comme indiqué ci-dessus, consiste en une espèce de Protobre où les prototypes d’applications basés sur des microcontrôleurs PIC peuvent être testés. Le résultat attendu pour le contrôleur de porte était qu’il ait correctement reçu le code Wiegand envoyé d’un lecteur de proximité appartenant au système Kantech. Il devrait également être correctement communiqué avec l’application de paramétrage à l’aide du protocole Modbus et, en fonction de la configuration établie via cette application, en fournissant un accès aux codes planifiés. De même, dans le cas du contrôleur de verrouillage, qui a été poursuivi, il s’agissait de répondre correctement à l’interaction entre les entrées et les sorties, selon la configuration antérieure effectuée via l’application de configuration.
Les tests ont été effectués progressivement, ou par étapes. Dans le cas du contrôleur de porte, la communication Modbus a d’abord été vérifiée via une application tierce, ce qui se comporte en tant que maître, en cours d’exécution sur le PC connecté au kit via le port série RS232. Avec ce logiciel, il était possible de vérifier que les réponses du contrôleur aux commandes envoyées étaient correctes. Ensuite, il a été utilisé pour utiliser l’application de paramétrage développée et un lecteur de proximité du système Kantech, qui transmet à l’aide du protocole Wiegand était connecté. On pourrait vérifier que les codes configurés et programmés dans le contrôleur via l’application de paramétrage ont été acceptés par le contrôleur étant correct immédiatement après avoir été entré via le lecteur, ce qui se comporte correctement sur leur papier comme contrôleur de porte.
De la même manière, le logiciel tiers a été utilisé pour le contrôleur de verrouillage pour vérifier la communication MODBUS. Les entrées ont été couplées aux commutateurs présents dans les Picschool et les sorties aux LED. De cette manière, les sorties pourraient être vérifiées, activées avec l’activation des entrées concernant la configuration programmée via le logiciel qui a fonctionné comme Master Modbus. Ensuite, en continuant avec les tests, le logiciel tiers a été remplacé par l’application de paramétrage développée et elle s’est également comportée. Par conséquent, on peut en conclure que le développement de contrôleurs à l’échelle pilote a été effectué de manière satisfaisante et de ses travaux correctement, comme prévu.
Concernant l’utilisation de microcontrôleurs, 19 lignes d’entrée / sortie du 32 disponibles dans le contrôleur PIC16F877 ont été utilisées dans le contrôleur de porte, mais les autres peuvent être utilisées dans les expansions ou adaptations futures si vous souhaitez connecter des contrôleurs de réseau. , par exemple. Le canal I2C a été utilisé, ainsi que l’utilisation et trois sources d’interruption. Le firmware a occupé 57% de la mémoire de la ROM ou du programme et utilise 65% de la mémoire RAM ou de la mémoire de données.Dans le cas du contrôleur de verrouillage, qui a un microcontrôleur similaire, une partie de l’entrée / sortie totale disponible a également été utilisée, dans ce cas 18. De la même manière, les lignes restantes peuvent être nécessaires pour une expansion par besoin d’enquêter sur Plus grand nombre d’entrées ou fonctionnent une plus grande quantité de sorties, en citant deux exemples. L’utilisation du canal et une seule source d’interruption ont également été utilisées. Le micrologiciel occupé 20% de la ROM et utilise 39% de RAM.4
Conclusions
au travail a été exposé la conception et le développement d’un système de contrôle d’accès et de verrouillage, qui Inclus la configuration, à la fois des contrôleurs et de l’application de paramétrage. Ces éléments ont été testés en lançant des résultats satisfaisants. Le système apportera divers avantages et avantages dans sa mise en œuvre dans la CIM, en tant que support technique plus important et personnalisation de l’unamayor. Le développement de l’application de paramétrage a été effectué en tenant compte d’une structure par couches, ainsi que l’utilisation du modèle de conception M-V-C, garantissant une maintenance et une réutilisation supérieures du code, des éléments clés de bon logiciel ingénierie. Dans le développement des contrôleurs, de manière égale, divers facteurs ont été pris en compte pour une plus grande performance et une plus grande compatibilité système, telles que:
· Utilisation du protocole WIEGAND dans la communication avec des lecteurs.
· Protocole Modbus Utilisez en communication avec l’application de paramétrage qui fonctionne sur le PC.
· Utilisation de la mémoire externe pour stocker la configuration dans le cas du contrôleur de porte, ce qui facilite la maintenance ou le remplacement d’eux en permettant l’importation / l’exportation des données.
Le système obtenu fonctionne de manière autonome de manière autonome. Cependant, la manière dont il a été conçu fournit des possibilités d’expansion sans trop complication, de l’intégrer dans un système de supervision ou de SCADA avec la mise en œuvre d’un réseau Modbus.
Références
1. Pedreira, M. «Supervision de l’accès aux locaux du centre d’immunologie moléculaire». Thèse. Cujae, 2008.
2. Cosentino, L. « » Contrôle d’accès, éléments d’identification « . RNDS 2008, 168 p.
3. PEFHANY, S. Modbus Protocole. 2000.
4. Microchip Technology Inc. pic16f87xa fiche technique. 1998.
5. Breijo, par ex. Simulateur CCS Compilateur et Proteus pour Pic Microcontrôleurs. Mexique: Marcombo, 2008. 276 p. ISBN: 978-970-15-1397-2.
6. Eels, P. Stratégies de superposition. Cupertino: logiciel rationnel, 2002. 13 p.
7. Theelin, J. Fondations du développement QT. New York: APRY, 2007. 528 p. ISBN: 978-1-59059-831-3
8. Gamma, E., Helm, R., Johnson, R., Vlissides, J. Modèles de conception: éléments de logiciel d’objet réutilisable. 1997. 431 p.
9. Schmuller, J. apprendre UML 24 heures. 2004. 398 p.
10. Fieldalk Inc. FieldTalk Modbus Master C ++ Bibliothèque Logiciel. 2009.