Dans le dernier article, nous avons parlé de la création de notre équipe, mais dans cet article, nous voulons vous dire exactement comment nous avons mis en œuvre notre premier projet.
Description de l'objet
Notre premier objet est donc un immeuble résidentiel avec les caractéristiques suivantes:
- 15 étages
- 135 appartements
- Appareils de mesure à impulsions pour l'alimentation en eau froide de chaque appartement
- Compteurs de chaleur avec M-bus pour chaque appartement
- Compteurs d'électricité avec interface RS-485 pour chaque appartement
- Capteur de température dans chaque appartement
- Une vanne sur le tuyau d'alimentation en chauffage de l'appartement
Tout d'abord, nous nous sommes fixés les tâches suivantes:
- Jetez un diagramme schématique de l'automatisation
- Sélectionnez l'équipement pour les compteurs de chaleur et les compteurs d'eau
- Sélectionnez un équipement pour enregistrer la température et contrôler l'alimentation en caloporteur des appartements
- Sélectionnez un équipement pour prendre les mesures des compteurs d'électricité et contrôler le relais de charge
- Réaliser un projet pour un système de répartition et d'automatisation pour un immeuble à appartements
- Écrivez la première version de notre back-end et construisez un banc de test
- Développer un design pour deux applications web (pour la société de gestion et le locataire)
- Ecrire une application pour le front, qui, à son tour, extraira les données de la base de données
Schéma de principe de la communication de l'équipement de terrain de l'objet
Alors que nous ne savions pas quel équipement utiliser, nous avons décidé de dessiner un diagramme schématique de la communication de l'équipement.
Le compteur de chaleur (Apator LQM) dispose de 4 entrées d'impulsions qui peuvent être configurées pour différents besoins, par exemple, comme dans notre cas, nous définissons la première entrée d'impulsion sur m3, définissons le poids d'impulsion comme dans notre compteur d'eau, définissons les lectures initiales du compteur d'eau, etc. une paire a été créée pour chaque appartement - un compteur de chaleur / compteur d'eau. En recevant des données d'un compteur de chaleur, nous avons simultanément reçu des lectures d'un compteur d'alimentation en eau froide.
Les compteurs d'électricité donnaient des données via DLMS / COSEM (via RS485), nous ne savions toujours pas ce que c'était, comment en extraire des données, mais une chose était claire: nous devions apprendre à travailler avec le compteur. De la communication avec le fabricant du dispositif de mesure, il nous a fait comprendre que le protocole est fermé - vous ne le recevrez pas, mais vous pouvez le lire avec un convertisseur RS485 vers COM ou TCP / IP ordinaire en utilisant leur logiciel.
Pour contrôler l'alimentation du fluide thermique et enregistrer la température, il était nécessaire d'installer un contrôleur au sol qui aurait un nombre suffisant d'entrées et de sorties pour mesurer la température et contrôler la vanne dans chaque appartement.
Et surtout, nous avons donné la préférence à la réception des données des équipements de terrain via TCP / IP, nous avons converti toutes les interfaces série en TCP / IP. Dans le sous-sol de la maison, il y avait un routeur avec un VPN surélevé vers notre serveur où tout le logiciel a été déployé.
Schéma de principe de la communication des équipements
Le schéma est prêt, nous commençons la sélection des équipements.
Compteurs de chaleur
Sur Internet, il n'y a pas beaucoup d'informations sur la collecte de données à l'aide du protocole M-Bus. En gros, ce sont des entreprises qui ont développé leurs propres appareils (concentrateur M-BUS) qui étaient connectés à 250 unités. des appareils de mesure et des données téléchargées sur une sorte de cloud avec une interface terrible et sans possibilité de créer des analyses et de télécharger des données vers des services de facturation. La seule chose que nous avons trouvée sur le marché ukrainien était l'interface Anybus et le convertisseur de protocole, mais nous n'étions pas satisfaits de son coût et de son délai de livraison. Eh bien, Lech a avancé l'idée d'acheter un convertisseur d'interface M-BUS / RS-485 et une sorte de Raspberry Pi qui interrogera les compteurs via RS-485.
Mais la seule bibliothèque et structure que nous avons trouvée était OpenMUC, mais à ce moment-là, nous ne pouvions pas le comprendre. Ensuite, ils ont commencé à laine le marché européen et l'ont trouvé! Les gars en Pologne ont produit l'appareil dont nous avons besoin, et le prix est classe, mais comment l'amener en Ukraine? Nous avons réussi à le faire par des intermédiaires.
Et voici le miracle du colis, on déballe, on connecte, on allume le scan des compteurs et ... ... on ne voit pas. Eh bien, nous l'avons essayé 5 à 7 fois, avons décidé que la passerelle MBUS fonctionnait peut-être, mais que le compteur ne fonctionnait pas. Je cours vers mes amis, leur demande un compteur de chaleur Sharky, le connecte à la passerelle et ... ... l'interroge !!! Nous sommes heureux d'ouvrir le champagne! La victoire! Pain grillé! Mais ensuite, il nous vient à l’esprit qu’il y aura 135 compteurs Apator qui, d’ailleurs, sont également fabriqués en Pologne, et nous n’avons pas eu une bonne conversation avec eux! Nous écrivons à la Pologne à l'usine Gateway, attendons, écrivons de plus en plus, et donc 4 jours - silence. On n'abandonne pas (Dieu, comme on était malade dans la tête), je commence à surfer en FB, on retrouve Mateusz qui travaille à l'usine, on trouve son téléphone et on va appeler. Je prends Lech et dis: "Vous étiez 3 années consécutives en Amérique au WT, maintenant vous allez expliquer aux Polonais que leurs amis ukrainiens ont des problèmes!"
Il appelle, commence à parler en anglais, mais tout ce que Mateusz s'est arraché de lui-même: «Salut! Oui! », Et que pensez-vous que Lech commence à lui parler en polonais, en polonais !!! En conséquence, le problème a été résolu de telle manière qu'il était nécessaire sur leur forum d'assistance, de créer un sujet avec une description du problème et des données pour se connecter à l'appareil, et après 2 jours, les gars de Pologne ont appris à leur appareil à communiquer avec notre compteur de chaleur Apator.
Il est important de noter que la passerelle a écrit des données depuis les registres MBUS vers les registres Modbus, d'où nous les avons tirées. En outre, le bloc peut interroger 60 appareils et non 250 unités. nous avons spécifiquement opté pour cela pour augmenter la vitesse de réception des données à domicile et la fiabilité.
Compteurs d'électricité
C'était généralement épique! Je cherchais depuis longtemps des solutions pour obtenir des données à partir de compteurs d'électricité, la centrale ne nous est pas venue en aide, j'ai donc dû m'en sortir moi-même. Encore une fois, Google nous a sauvés, sur un forum, j'ai trouvé une personne qui discutait très activement du sujet de l'envoi de compteurs comme le nôtre, et il avait une certaine expérience dans ce sens. Je lui ai écrit, il a répondu, ce qui est devenu clair de la conversation: il a fait la rétro-ingénierie du protocole de communication avec le logiciel du fabricant du compteur. Il a juste écouté le port COM et analysé les octets nus - notre homme.
Le résultat de l'écoute électronique du port de
passerelle qu'il a collecté auprès d'ATMega-32, RS-485 / TTL et RJ-45 pour arduino (je ne me souviens plus de la spécification exacte). Autrement dit, la passerelle était un maître de compteur et fonctionnait sur le principe du bloc polonais. Nous faisons 2 passerelles, testons sur 5 compteurs, toutes classes.
Appareil fabriqué par nos soins pour les compteurs
Nous mettons 15 pièces sur l'objet avec 9 compteurs pour chacun, et le lendemain matin, 5 appareils brûlent. Quel est le problème, tout allait bien sur le stand, mais le stand est un stand, les réalités sont des réalités. Il s'avère que RS-485 / TTL n'était pas isolé galvaniquement. Nous retirons les blocs, achetons le RS-485 / TTL nécessaire, soudons, installons et ... ... à nouveau ils s'envolent. Le problème n'a pas été résolu avec ces unités, mais nous avons trouvé une solution d'usine pour RS-485 / Ethernet, et en deux jours nous avons nous-mêmes inversé le protocole du compteur. Tout a fonctionné.
Contrôle de l'alimentation en fluide caloporteur et enregistrement de la température dans les appartements
Nous devions trouver un contrôleur adapté au prix, à la garantie et au service. Nous avons commencé avec Siemens, Wago, mais en raison du prix et de l'absence d'un centre de service adéquat (tout contrôleur de ce type pour réparation doit être envoyé à l'étranger et attendre 3 semaines, et à condition que nous en ayons 15, cela pourrait jouer une mauvaise blague), nous continué à chercher et trouvé des contrôleurs de production ukrainienne Raut, c'était idéal pour nos besoins - il y a assez d'entrées / sorties, la programmation est beaucoup plus facile que dans le même SoMachine Schneider, le prix nous convenait, service de 3 à 5 jours, livraison 1 à 2 semaines. Et la qualité est satisfaisante, en 2 ans nous avons installé environ 150 pièces et une seule a été envoyée en réparation (pah-pah).
Premier stand
Nous avons utilisé des capteurs de température Pt1000 et analogiques, oui il y a une erreur, en particulier avec une longue longueur de fil, et nous avions l'habitude d'avoir 35 mètres du contrôleur au capteur, mais par rapport aux capteurs de température numériques, il est plus facile à connecter, plus fiable, moins cher et surtout, quand L'appartement était en réparation, 30% des capteurs ont généralement une collation, ce qui, lors de l'utilisation d'un capteur numérique, entraîne un court-circuit dans la ligne et souvent un gel de l'appareil de terrain.
Nous avons ramassé le matériel, appris à travailler avec, au niveau du terrain dans la maison tout doit fonctionner et fonctionner, nous collectons des boucliers.
Assemblée bouclier
Nous avons commencé à écrire la première version de notre back`end, lancé en parallèle à la conception des deux interfaces (pour la société de gestion et le locataire), ont commencé l'installation sur place.
Installation et mise en service
Un mot séparé doit être dit sur l'installation et la mise en service. L'objet a pris:
- 15 contrôleurs
- 6,5 km FTP cat 5e
- PVS à 2 km
- 15 unités Commutateur
- 30 unités Alimentations 24 V
Il y avait beaucoup de travail pour le premier objet et le prototype, les fils devaient non seulement être dispersés sous le plafond, mais aussi signés par chacun (après tout, chaque fil était destiné à un certain capteur d'appartement, vanne, compteur d'eau / compteur de chaleur), après l'installation, chaque fil était appelé et déconnecté. J'ai confondu quelque chose et c'est tout - la mauvaise vanne s'est ouverte et fermée pour l'appartement, les voisins avaient le témoignage de quelqu'un d'autre, et ainsi de suite.
Chaque compteur de chaleur de l'appartement doit être synchronisé avec les lectures du compteur d'eau de l'appartement et connecté correctement. Chaque appartement a 3 numéros de série du compteur, ils ne peuvent pas non plus être confondus, ou il y aura un tuyau dans le service de comptabilité.
Conception d'interface
Alors que l'installation était en cours, et l'écriture de la première sauvegarde, notre équipe front'end préparait les premiers designs de deux interfaces (pour la société de gestion et les résidents), environ 4 options étaient proposées pour chacune des interfaces.
La difficulté était que ces interfaces ne seront pas que des sites à vendre, elles devraient être légères, simples et pratiques car si le locataire n'a pas une bonne impression et UX, pour une raison quelconque (on ne sait pas comment contrôler, où se trouve la température, etc. ) alors il va simplement manger la société de gestion et ce sera un problème, puisque le client va nous manger.
La société de gestion emploie principalement des ingénieurs et ils ne sont généralement pas habitués à utiliser quelque chose comme ça, donnez-leur SCADA, ASKUE et 1-C avec des interfaces lourdes.
Je pense que nous avons réussi à créer les conceptions nécessaires et à les mettre en œuvre à l'avenir.
Interface du résident
Page d'exemple pour UK
Super! En avance encore, prise de conscience des problèmes:
- comment contrôler l'alimentation du caloporteur est assez difficile, surtout si vous avez un capteur de température et une vanne par appartement de 45 m2
- comment faire passer notre message aux gens et les aider à adopter la technologie
- comment rendre le système évolutif, rapide et simple
- il est nécessaire de surveiller la consommation des ressources et d'identifier les compteurs d'eau à impulsion défectueux et les vannes bloquées, car il n'y a pas de retour d'information
- étalonnage des capteurs de température
- surchauffe de la passerelle MBus et transfert de la mémoire en lecture seule
- nous avons compris les appartements, mais les chaufferies, TP, stations de pompage. Nous voulons un vrai BMS!
Mais curieusement, sans expérience, nous avons résolu ces problèmes comme des noix et sommes allés de l'avant.
Tout bon!