Table des matières:

Conception d'aquarium avec contrôle automatisé des paramètres de base : 4 étapes (avec images)
Conception d'aquarium avec contrôle automatisé des paramètres de base : 4 étapes (avec images)

Vidéo: Conception d'aquarium avec contrôle automatisé des paramètres de base : 4 étapes (avec images)

Vidéo: Conception d'aquarium avec contrôle automatisé des paramètres de base : 4 étapes (avec images)
Vidéo: Aquascaping aquarium 300l 2024, Novembre
Anonim
Conception d'aquarium avec contrôle automatisé des paramètres de base
Conception d'aquarium avec contrôle automatisé des paramètres de base
Conception d'aquarium avec contrôle automatisé des paramètres de base
Conception d'aquarium avec contrôle automatisé des paramètres de base

IntroductionAujourd'hui, l'entretien des aquariums marins est accessible à tous les aquariophiles. Le problème de l'acquisition d'un aquarium n'est pas difficile. Mais pour le maintien de la vie complet des habitants, la protection contre les défaillances techniques, la maintenance et l'entretien faciles et rapides, il est nécessaire de créer un aquarium basé sur les principes du maintien de la vie autonome. Les technologies modernes brevetées permettent de maintenir les habitants sous-marins des mers et des océans dans des conditions artificielles - aussi près que possible de leur habitat naturel. Le système d'automatisation contrôle tous les processus et équipements de survie, offre une efficacité et une facilité de gestion et d'entretien sans précédent des grands complexes d'aquariums et des aquariums, une fiabilité élevée et un fonctionnement sans problème, une eau de haute qualité et, par conséquent, une vie longue et saine de animaux marins. Il existe diverses fonctions générales de contrôle et d'automatisation, telles que: commutation automatique de l'éclairage, simulation des conditions de lumière du jour, maintien de la température de consigne, meilleur maintien de l'habitat naturel et enrichissement de l'eau en oxygène. Les ordinateurs et accessoires d'aquarium sont essentiels pour mieux soutenir la vie normale de la vie marine. Par exemple, en l'absence de pompe de secours et en cas de panne de la pompe principale, après quelques heures, les animaux marins commenceront à mourir, donc, grâce à l'automatisation, nous pouvons connaître l'identification d'éventuelles erreurs ou des pannes. Pour configurer manuellement les paramètres décrits, vous devez effectuer de nombreuses manipulations, effectuer des tests et régler l'équipement. L'analyse de l'eau à la main remonte déjà au siècle dernier, aujourd'hui l'aquarium marin, dans l'eau claire de laquelle vivent les animaux marins, qui se distinguent par leurs couleurs vives et leur comportement énergétique, ne nécessite pas de soins particuliers

Étape 1: Fabriquer un couvercle pour un aquarium

Faire un couvercle pour un aquarium
Faire un couvercle pour un aquarium
Faire un couvercle pour un aquarium
Faire un couvercle pour un aquarium
Faire un couvercle pour un aquarium
Faire un couvercle pour un aquarium

Faisant un couvercle pour la taille de l'aquarium, le couvercle a été créé à partir de verre organique, car il a des propriétés appropriées pour l'eau et l'électronique.

Tout d'abord, nous mesurons notre aquarium, et en fonction de ces dimensions nous inventons un couvercle, d'abord nous coupons les parois du couvercle, puis les collons avec de la super glue et les saupoudrons de soda par dessus pour une meilleure stabilité. Immédiatement pour une future ventilation et une alimentation automatique, nous avons découpé un trou rectangulaire d'une taille de 50 mm sur 50 mm.

Étape 2: Analyser les composants

Composants d'analyse
Composants d'analyse
Composants d'analyse
Composants d'analyse
Composants d'analyse
Composants d'analyse

Pour le remplissage, nous avons choisi le microcontrôleur Arduino Mega le plus simple et le moins cher, il servira de cerveau à l'ensemble du processus, puis un servomoteur sera utilisé pour le chargeur automatique, qui à son tour sera fixé sur un cylindre avec un trou, pour l'éclairage, nous prendrons la bande LED de programmation et la programmerons pour le lever et le coucher du soleil, quand À l'aube, la luminosité augmentera et au coucher du soleil, elle diminuera progressivement. Pour chauffer l'eau, prenez un chauffe-eau d'aquarium ordinaire et connectez-le à un relais qui recevra des informations sur l'allumage et l'extinction, pour lire la température, installez un capteur de température. Pour refroidir l'eau, prenez un ventilateur et installez-le dans le couvercle de l'aquarium, si la température dépasse la température réglée, le ventilateur s'allumera via un relais. Pour une lecture facile des informations et la configuration de l'aquarium, nous y connectons l'écran LCD et les boutons pour définir les valeurs de l'aquarium. Un compresseur sera également installé, qui fonctionnera en permanence et s'éteindra pendant 5 minutes lors du déclenchement de la mangeoire, afin que la nourriture ne se répande pas dans l'aquarium.

J'ai commandé toutes les pièces sur Aliexpress, voici une liste et des liens vers les composants:

Alimentation sur ws2812 -

Horloge temps réel Ds3231-

LCD1602 LCD -

Module relais 4 canaux -

Capteur de température DS18b20 -

Module sur IRF520 0-24v -

Boutons -

Carte plate-forme Mega2560 -

Servo -

Étape 3: Installation de l'équipement du projet

Installation de l'équipement du projet
Installation de l'équipement du projet
Installation de l'équipement du projet
Installation de l'équipement du projet
Installation de l'équipement du projet
Installation de l'équipement du projet

Nous organisons les composants comme bon nous semble et les connectons selon le schéma, voir les images.

Nous installons le microcontrôleur ArduinoMega 2560 dans le boîtier précédemment assemblé. L'Arduino Mega peut être alimenté par USB ou par une source d'alimentation externe - le type de source est sélectionné automatiquement.

La source d'alimentation externe (pas USB) peut être un adaptateur AC/DC ou une batterie/batterie rechargeable. La fiche de l'adaptateur (diamètre - 2,1 mm, contact central - positif) doit être insérée dans le connecteur d'alimentation correspondant sur la carte. En cas d'alimentation par batterie / batterie, ses fils doivent être connectés aux broches Gnd et Vin du connecteur POWER. La tension de l'alimentation externe peut être comprise entre 6 et 20 V. Cependant, une diminution de la tension d'alimentation inférieure à 7 V entraîne une diminution de la tension sur la broche 5 V, ce qui peut entraîner un fonctionnement instable de l'appareil. L'utilisation d'une tension supérieure à 12 V peut entraîner une surchauffe du régulateur de tension et endommager la carte. Dans cette optique, il est recommandé d'utiliser une alimentation avec une tension comprise entre 7 et 12V. Nous connectons l'alimentation au microcontrôleur à l'aide d'une alimentation 5V via les broches GND et 5V. Ensuite, nous installons le relais pour la ventilation, le chauffe-eau et le compresseur (Figure 3.1), ils n'ont que 3 contacts, ils sont connectés à Arduino comme suit: GND - GND, VCC - + 5V, In - 3. L'entrée du relais est inversée, si haut niveau sur In éteint la bobine et bas s'allume.

Ensuite, nous montons l'écran LCD et le module d'horloge en temps réel, leur connexion est indiquée sur le schéma.

Les broches SCL doivent être connectées au connecteur analogique à 5 broches; Les broches SDA se connectent aux prises analogiques à 6 broches. Le rail supérieur de l'assemblage résultant agira comme le bus I2C et le rail inférieur sera le rail d'alimentation. Le module LCD et RTC se connecte à des contacts de 5 volts. Après avoir terminé la dernière étape, la structure technique sera prête.

Pour connecter le servo, un transistor IRF520 a été utilisé pour des impulsions de servo plus silencieuses, le servo a été connecté via un transistor et le transistor lui-même a été connecté directement à l'Arduino

Pour l'éclairage, une bande LED WS2812 a été prise. Nous connectons les broches + 5V et GND au plus et au moins de l'alimentation, respectivement, nous connectons Din à n'importe quelle broche numérique de l'Arduino, par défaut ce sera la 6ème broche numérique, mais toute autre peut être utilisée (Figure 3.6). Aussi, il est conseillé de connecter la masse de l'Arduino à la masse de l'alimentation. Il n'est pas souhaitable d'utiliser l'Arduino comme source d'alimentation, car la sortie + 5V ne peut fournir que 800mA de courant. Cela suffit pour pas plus de 13 pixels de la bande LED. De l'autre côté de la bande, il y a une sortie Do, elle se connecte à la bande suivante, permettant aux bandes d'être mises en cascade comme une seule. Le connecteur d'alimentation à l'extrémité est également dupliqué.

Pour connecter un bouton tactile normalement ouvert à l'Arduino, vous pouvez procéder de la manière la plus simple: connectez un conducteur libre du bouton à l'alimentation ou à la terre, l'autre à une broche numérique

Étape 4: Développement d'un programme de contrôle pour contrôler les paramètres principaux

Développement d'un programme de contrôle pour contrôler les paramètres principaux
Développement d'un programme de contrôle pour contrôler les paramètres principaux
Développement d'un programme de contrôle pour contrôler les paramètres principaux
Développement d'un programme de contrôle pour contrôler les paramètres principaux
Développement d'un programme de contrôle pour contrôler les paramètres principaux
Développement d'un programme de contrôle pour contrôler les paramètres principaux

Téléchargez le croquis du programme

Arduino utilisant les langages graphiques FBD et LAD, qui sont la norme dans le domaine de la programmation des contrôleurs industriels.

Description du langage FBD

FBD (Function Block Diagram) est un langage de programmation graphique de la norme IEC 61131-3. Le programme est constitué d'une liste de circuits exécutés séquentiellement de haut en bas. Lors de la programmation, des ensembles de blocs de bibliothèque sont utilisés. Un bloc (élément) est un sous-programme, une fonction ou un bloc fonctionnel (ET, OU, NON, déclencheurs, temporisateurs, compteurs, blocs de traitement de signaux analogiques, opérations mathématiques, etc.). Chaque chaîne individuelle est une expression composée graphiquement à partir d'éléments individuels. Le bloc suivant est connecté à la sortie du bloc, formant une chaîne. Au sein de la chaîne, les blocs sont exécutés strictement dans l'ordre de leur connexion. Le résultat du calcul du circuit est écrit dans une variable interne ou transmis à la sortie du contrôleur.

Description de la langue CONT

Le schéma à contacts (LD, LAD, RKS) est un langage logique à relais (à contacts). La syntaxe du langage est pratique pour remplacer les circuits logiques réalisés en technologie relais. Le langage s'adresse aux ingénieurs en automatisation travaillant dans des installations industrielles. Fournit une interface intuitive pour la logique du contrôleur, ce qui facilite non seulement les tâches de programmation et de mise en service, mais également le dépannage rapide de l'équipement connecté au contrôleur. Le programme de logique de relais possède une interface graphique intuitive et intuitive pour les ingénieurs électriciens, représentant des opérations logiques comme un circuit électrique avec des contacts ouverts et fermés. Le passage ou l'absence de courant dans ce circuit correspond au résultat d'une opération logique (vrai - si le courant passe; faux - si aucun courant ne passe). Les principaux éléments du langage sont les contacts, qui peuvent être assimilés au sens figuré à une paire de contacts relais ou à un bouton. Une paire de contacts est identifiée par une variable booléenne, et l'état de cette paire est identifié par la valeur de la variable. Une distinction est faite entre les éléments de contact normalement fermés et normalement ouverts, qui peuvent être comparés aux boutons normalement fermés et normalement ouverts dans les circuits électriques.

Un projet en FLProg est un ensemble de cartes, sur chacune desquelles est assemblé un module complet du circuit général. Pour plus de commodité, chaque tableau a un nom et des commentaires. De plus, chaque planche peut être réduite (pour économiser de l'espace sur la zone de travail lorsque le travail est terminé) et agrandie. Une LED rouge dans le nom de la carte indique qu'il y a des erreurs dans le schéma de la carte.

Le circuit de chaque carte est assemblé à partir de blocs fonctionnels selon la logique du contrôleur. La plupart des blocs fonctionnels sont configurables, à l'aide desquels leur fonctionnement peut être personnalisé en fonction des exigences de ce cas particulier.

De plus, pour chaque bloc fonctionnel, il existe une description détaillée, disponible à tout moment et permettant de comprendre son fonctionnement et ses paramètres.

Lorsqu'il travaille avec le programme, l'utilisateur n'a pas besoin d'écrire de code, de contrôler l'utilisation des entrées et des sorties, de vérifier l'unicité des noms et la cohérence des types de données. Le programme surveille tout cela. Elle vérifie également l'exactitude de l'ensemble du projet et signale la présence d'erreurs.

Plusieurs outils auxiliaires ont été créés pour fonctionner avec des appareils externes. Il s'agit d'un outil d'initialisation et de configuration d'une horloge temps réel, d'outils de lecture d'adresses d'appareils sur les bus OneWire et I2C, ainsi que d'un outil de lecture et d'enregistrement de codes de boutons sur une télécommande IR. Toutes certaines données peuvent être enregistrées dans un fichier et utilisées ultérieurement dans le programme.

Pour mettre en œuvre le projet, le programme d'actionnement d'asservissement suivant a été créé pour le départ et le contrôleur.

Le premier bloc "MenuValue" redirige les informations vers le bloc de menu pour afficher des informations sur l'écran LCD concernant l'état du servomoteur.

A l'avenir, l'opération logique "ET" permet d'aller plus loin ou avec l'unité de comparaison "I1 == I2", c'est-à-dire que le numéro de présélection 8 sera le même que sur le module horloge temps réel, puis le servo est allumé via la gâchette, de la même manière a été fait pour allumer le servo à 20h00.

Pour faciliter l'allumage automatique du servo via un bouton, la fonction logique de déclenchement a été prise et le bouton numéro 4 lui était destiné, ou la sortie d'informations sur le calme du servo au bloc de menu pour afficher des informations sur le Affichage LCD.

Si un signal apparaît pour que le servo fonctionne, alors il passe au bloc appelé "Switch" et à un angle donné fait une rotation du variateur et passe à l'étape initiale par le bloc "Reset".

Liste des servocommandes.

Le compresseur est toujours allumé et connecté au relais, lorsqu'un signal passe par le bloc "Servo On", puis il passe au bloc de minuterie "TOF" et éteint le relais pendant 15 minutes et transmet des informations sur l'état du relais dans le menu.

Liste du thermostat.

Connectez le capteur de température via la bibliothèque

Conseillé: