Table des matières:

Régulateur de vide numérique : 15 étapes
Régulateur de vide numérique : 15 étapes

Vidéo: Régulateur de vide numérique : 15 étapes

Vidéo: Régulateur de vide numérique : 15 étapes
Vidéo: Asservissement | Arduino #15: PID Numérique - Partie 1 [TUTO] 2024, Juillet
Anonim
Régulateur de vide numérique
Régulateur de vide numérique
Régulateur de vide numérique
Régulateur de vide numérique

Il s'agit d'une presse à vide pour placage (pompe à vide) qui a été modifiée avec un régulateur de vide numérique pour fonctionner avec une pression de vide sélectionnable. Cet appareil remplace le contrôleur de vide dans ma presse à vide de placage bricolage construit avec des plans de VeneerSupplies.com ou JoeWoodworking.com. Ce sont de grands projets et les pompes fonctionnent de manière très satisfaisante comme prévu. Cependant, je suis un bricoleur et je voulais améliorer ma pompe avec la possibilité de contrôler facilement et facilement les réglages de pression (sans tournevis) sur une plus large gamme de pressions avec un régulateur à commande numérique.

Récemment, un besoin est apparu qui dépassait les limites inférieures de mon contrôleur de vide (type 1). Ce projet nécessitait un contrôleur de vide de type 2 pour des pressions comprises entre 2 et 10 in-Hg. Remplacer mon contrôleur de vide de type 1 par un modèle de type 2 était une option, cependant, cela semblait peu pratique car cela nécessiterait un coût supplémentaire et des modifications pour basculer entre les deux plages de vide. La solution idéale est un contrôleur unique avec une plage de pressions plus large (2 à 28 in-Hg).

Contrôleur de vide: Un micro-interrupteur contrôlé par le vide utilisé pour activer une pompe à vide ou un relais à une pression sélectionnée. Le contrôleur de vide a une vis de réglage qui vous permet de composer le niveau de vide souhaité. Les contacts sont évalués à 10 ampères à 120 V CA.

Types de contrôleur de vide: Type 1 = réglable pour 10,5" à 28" de Hg (Différentiel 2 à 5" de Hg) Type 2 = réglable pour 2" à 10" de Hg (Différentiel 2 à 4" de Hg)

Étape 1: Considérations de conception

Considérations sur la conception
Considérations sur la conception

Ma conception remplace le contrôleur de vide par un régulateur de vide numérique (DVR). Le DVR sera utilisé pour contrôler la ligne LINE-DVR du RELAY-30A comme le montre le schéma du boîtier de commande principal. Cette conception nécessite l'ajout d'une alimentation AC/DC 5 VDC au boîtier de commande principal pour alimenter le DVR.

Cette conception est capable de maintenir une large gamme de pressions de vide, mais les performances dépendent entièrement de la capacité de la pompe. À la plage de pression inférieure, une grande pompe CFM maintiendra ces pressions, mais entraînera des variations de pression différentielle plus importantes en raison du déplacement de la pompe. C'est le cas pour ma pompe 3 CFM. Il est capable de maintenir 3 in-Hg, mais la variation de pression différentielle est de ±1 in-Hg, et les cycles de marche de la pompe, bien que peu fréquents, durent environ une ou deux secondes. Une variation de pression différentielle de ±1 in-Hg se produira avec des pressions comprises entre 141 lb/pi² et 283 lb/pi². Je n'ai aucune expérience du pressage sous vide à ces basses pressions, donc je ne suis pas sûr de l'importance de cette variation de pression différentielle. À mon avis, une pompe à vide CFM plus petite serait probablement plus appropriée pour maintenir ces pressions de vide plus basses et réduire les variations de pression différentielle.

La construction de ce régulateur comprend un Raspberry Pi Zero, un capteur de pression MD-PS002, un module amplificateur de pont de Wheatstone HX711, un écran LCD, une alimentation 5V, un encodeur rotatif et un module de relais. Toutes ces pièces sont disponibles auprès de vos fournisseurs de pièces électroniques Internet préférés.

Je choisis un Raspberry Pi (RPi) car python est mon langage de programmation préféré et la prise en charge des RPi est facilement disponible. Je suis convaincu que cette application pourrait être portée sur un ESP8266 ou d'autres contrôleurs capables d'exécuter python. Le seul inconvénient du RPi est qu'un arrêt est fortement recommandé avant de l'éteindre pour éviter la corruption de la carte SD.

Étape 2: Liste des pièces

Cet appareil est construit avec des pièces standard, notamment un Raspberry Pi, un capteur de pression, un amplificateur de pont HX711, un écran LCD et d'autres pièces coûtant environ 25 $.

PIÈCES: 1ea Raspberry Pi Zero - Version 1.3 5 $ 1ea MD-PS002 Capteur de vide Capteur de pression absolue 1,75 $ 1ea HX711 Cellule de charge et capteur de pression Module AD 24 bits 0,75 $ 1ea KY-040 Module d'encodeur rotatif 1 $ 1ea 5V 1.5A 7.5W Module d'alimentation de commutateur 220V Module abaisseur AC-DC 2,56 $ 1 unité 2004 Module d'affichage LCD 20x4 caractères 4,02 $ 1 unité 5V Module relais optocoupleur 1 canal 0,99 $ 1 unité Adafruit Perma-Proto PCB pour planche à pain demi-taille 4,50 $ 1 unité 2N2222A Transistor NPN 0,09 $ 2 résistances 10K 1 adaptateur pour raccord cannelé 1/4 "ID x 1/4" FIP 3,11 $ 1 unité de prise en laiton à tête carrée 1/4" MIP 2,96 $ 1 unité GX12-2 2 broches de diamètre 12 mm mâle et femelle connecteur de panneau à vis circulaire type de connecteur électrique prise de courant 0,67 $ 1 boîte Proto (ou imprimé en 3D)

Étape 3: Assemblage du capteur de vide

Ensemble de capteur de vide
Ensemble de capteur de vide
Ensemble de capteur de vide
Ensemble de capteur de vide
Ensemble de capteur de vide
Ensemble de capteur de vide
Ensemble de capteur de vide
Ensemble de capteur de vide

Le capteur de pression MD-PS002 fabriqué par Mingdong Technology (Shanghai) Co., Ltd. (MIND) a une plage de 150 KPa (pression absolue). La plage de pression manométrique (au niveau de la mer) pour ce capteur serait de 49 à -101 KPa ou de 14,5 à -29,6 in-Hg. Ces capteurs sont facilement disponibles sur eBay, banggood, aliexpress et d'autres sites en ligne. Cependant, les spécifications énumérées par quelques-uns de ces fournisseurs sont contradictoires, j'ai donc inclus une fiche "Paramètres techniques" traduite d'une technologie Mingdong.

La connexion du capteur à un module AD 24 bits de capteur de force et de pression HX711 nécessite les éléments suivants: connectez les broches 3 et 4 ensemble; Broche 1 (+IN) à E+; Broches 3 & 4 (-IN) à E-; Pin 2 (+OUT) à A+ et Pin 5 (-OUT) à A- du module HX711. Avant d'emballer le capteur filaire dans un adaptateur en laiton, couvrez les fils et les bords exposés du capteur avec une gaine thermorétractable ou du ruban électrique. Insérez et centrez le capteur sur l'ouverture du mamelon barbelé, puis utilisez un calfeutrage en silicone transparent pour sceller le capteur à l'intérieur de l'adaptateur tout en prenant soin de garder le calfeutrage loin de la face du capteur. Un bouchon à tête carrée en laiton qui a été percé avec un trou assez grand pour accueillir le fil du capteur est enfilé sur le fil, rempli de calfeutrage en silicone et vissé sur l'adaptateur cannelé. Essuyez l'excès de calfeutrage de l'assemblage et attendez 24 heures que le calfeutrage sèche avant de tester.

Étape 4: Électronique

Électronique
Électronique
Électronique
Électronique
Électronique
Électronique

L'électronique se compose d'un Raspberry Pi Zero (RPi) connecté à un module HX711 avec un capteur de pression MD-PS002, un encodeur rotatif KY-040, un module relais et un écran LCD. L'encodeur rotatif est interfacé au RPi via la broche 21 au DT de l'encodeur, la broche 16 au CLK et la broche 20 au SW ou au commutateur de l'encodeur. Le capteur de pression est connecté au module HX711, et les broches DT et SCK de ce module sont connectées directement aux broches 5 et 6 du RPi. Le module de relais est déclenché par un circuit à transistor 2N2222A qui est connecté à la broche RPi 32 pour une source de déclenchement. Les contacts normalement ouverts du module de relais sont connectés à LINE-SW et à un côté de la bobine du 30A RELAY. L'alimentation et la masse du régulateur de vide numérique sont fournies par les broches 1, 4, 6 et 9 du RPi. La broche 4 est la broche d'alimentation 5v, qui est connectée directement à l'entrée d'alimentation du RPi. Les détails des connexions peuvent être vus dans le schéma du régulateur de vide numérique.

Étape 5: Mettre à jour et configurer le Raspberry Pi

Mettre à jour et configurer le Raspberry Pi
Mettre à jour et configurer le Raspberry Pi

Mettez à jour le logiciel existant sur votre Raspberry Pi (RPi) avec les instructions de lignes de commande suivantes

sudo apt-get updatesudo apt-get upgrade

Selon le degré d'obsolescence de votre RPi à ce moment-là, déterminera le temps nécessaire pour terminer ces commandes. Ensuite, le RPi doit être configuré pour les communications I2C via Raspi-Config.

sudo raspi-config

L'écran vu ci-dessus apparaîtra. Sélectionnez d'abord Options avancées, puis Développez le système de fichiers et sélectionnez Oui. Après être revenu au menu principal de Raspi-Config, sélectionnez Activer le démarrage sur le bureau/Scratch et choisissez de démarrer sur la console. Dans le menu principal, sélectionnez Options avancées et activez I2C et SSH parmi les options disponibles. Enfin, sélectionnez Terminer et redémarrez le RPi.

Installez les packages logiciels I2C et numpy pour python

sudo apt-get installer python-smbus python3-smbus python-dev python3-dev python-numpy

Étape 6: Logiciel

Connectez-vous au RPi et créez les répertoires suivants. Le /Vac_Sensor contient les fichiers du programme et /logs contiendra les fichiers journaux crontab.

cd ~mkdir Vac_Sensor mkdir journaux cd Vac_Sensor

Copiez les fichiers ci-dessus dans le dossier /Vac_Sensor. J'utilise WinSCP pour me connecter et gérer les fichiers sur le RPi. La connexion au RPi peut se faire via Wifi ou connexion série, mais SSH doit être activé dans raspi-config pour permettre ce type de connexion.

Le programme principal est vac_sensor.py et peut être exécuté à partir de l'invite de commande. Pour tester le script, saisissez ce qui suit:

sudo python vac_sensor.py

Comme mentionné précédemment, le script vac_sensor.py est le fichier principal de la balance. Il importe le fichier hx711.py pour lire le capteur de vide via le module HX711. La version de hx711.py utilisée pour mon projet provient de tatobari/hx711py. J'ai trouvé que cette version fournissait les fonctionnalités que je voulais.

L'écran LCD nécessite le RPi_I2C_driver.py de Denis Pleic et forké par Marty Tremblay, et peut être trouvé à MartyTremblay/RPi_I2C_driver.py.

L'encodeur rotatif de Peter Flocker est disponible sur

pimenu par Alan Aufderheide peut être trouvé à

Le fichier config.json contient les données stockées par le programme et certains éléments peuvent être modifiés par les options du menu. Ce fichier est mis à jour et enregistré à l'arrêt. Les "unités" peuvent être configurées via l'option de menu Unités soit en in-Hg (par défaut), en mm-Hg ou en psi. Le "vide_set" est la pression de coupure, et est stocké en tant que valeur en Hg, et est modifié par l'option de menu Pression de coupure. Une valeur "calibration_factor" est définie manuellement dans le fichier config.json et est déterminée en calibrant le capteur de vide sur un vacuomètre. Le « décalage » est une valeur créée par la tare et peut être défini via cette option de menu. La "cutoff_range" est définie manuellement dans le fichier config.json et correspond à la plage de pression différentielle de la valeur "vacuum_set".

Valeur seuil = "vacuum_set" ± ("("cutoff_range" /100) x "vacuum_set")

Veuillez noter que votre "calibration_factor" et "offset" peuvent différer de ceux que j'ai. Exemple de fichier config.json:

Étape 7: Étalonnage

Étalonnage
Étalonnage

L'étalonnage est beaucoup plus facile à faire en utilisant SSH et en exécutant les commandes suivantes:

cd Vac_Sensor sudo python vac_sensor.py

La sortie du script python peut être effectuée via Ctrl-C et des modifications peuvent être apportées au fichier /Vac_Sensor/config.json.

L'étalonnage du capteur de vide nécessite un vacuomètre précis et l'ajustement du "calibration_factor" pour qu'il corresponde à la sortie affichée sur l'écran LCD. Tout d'abord, utilisez l'option de menu Tare pour définir et enregistrer la valeur "offset" avec la pompe à la pression atmosphérique. Ensuite, allumez la pompe avec le menu Vide et une fois que la pression s'est stabilisée, lisez l'écran LCD et comparez-le au manomètre à vide. Éteignez la pompe et quittez le script. Ajustez la variable "calibration_factor" située dans le fichier /Vac_Sensor/config.json. Redémarrez le script et répétez le processus à l'exception de Tare. Faites les ajustements nécessaires au "calibration_factor" jusqu'à ce que l'écran LCD corresponde à la lecture de la jauge.

Le "calibration_factor" et "offset" affectent l'affichage via les calculs suivants:

get_value = read_average - "décalage"

pression = get_value/ "calibration_factor"

J'ai utilisé une vieille jauge à vide de moteur Peerless pour calibrer le régulateur au lieu de la jauge à vide de ma pompe car elle avait été désactivée. La jauge Peerless mesure 9,5 cm (3-3/4 ) de diamètre et est beaucoup plus facile à lire.

Étape 8: Menu principal

Menu principal
Menu principal
Menu principal
Menu principal
  • Vide - Met la pompe en marche
  • Pression de coupure - Réglez la pression de coupure
  • Tare - Cela doit être fait sans vide sur la pompe et à la pression atmosphérique.
  • Unités - Sélectionnez les unités à utiliser (par exemple in-Hg, mm-Hg et psi)
  • Redémarrer - Redémarrez le Raspberry Pi
  • Arrêt - Arrêtez le Raspberry Pi avant de couper l'alimentation principale.

Étape 9: passer l'aspirateur

Vide
Vide

Appuyez sur l'option de menu Vide pour allumer la pompe et afficher l'écran ci-dessus. Cet écran affiche les unités et les paramètres [Pression de coupure] du régulateur, ainsi que la pression actuelle de la pompe. Appuyez sur le bouton pour quitter le menu Vide.

Étape 10: Pression de coupure

Pression de coupure
Pression de coupure

Le menu Pression de coupure vous permet de sélectionner la pression souhaitée pour la coupure. Tourner le bouton changera la pression affichée lorsque la pression désirée est atteinte, appuyez sur le bouton pour enregistrer et quitter le menu.

Étape 11: Tarer

Tare
Tare

Le menu Tare doit être fait sans vide sur la pompe et le manomètre indiquant la pression atmosphérique ou zéro.

Étape 12: Unités

Unités
Unités

Le menu Unités permettra de sélectionner les unités de fonctionnement et d'affichage. L'unité par défaut est in-Hg, mais mm-Hg et psi peuvent également être sélectionnés. L'unité actuelle sera indiquée par un astérisque. Pour sélectionner une unité, déplacez le curseur sur l'unité souhaitée et appuyez sur le bouton. Enfin, déplacez le curseur sur Retour et appuyez sur le bouton pour quitter et enregistrer.

Étape 13: Redémarrez ou arrêtez

Redémarrer ou arrêter
Redémarrer ou arrêter

Comme son nom l'indique, la sélection de l'un de ces éléments de menu entraînera un redémarrage ou un arrêt. Il est fortement recommandé d'arrêter le Raspberry Pi avant de le mettre hors tension. Cela enregistrera tous les paramètres modifiés pendant le fonctionnement et réduira la possibilité de corrompre la carte SD.

Étape 14: Exécuter au démarrage

Exécuter au démarrage
Exécuter au démarrage

Il existe un excellent Raspberry Pi Instructable: Lancer un script Python au démarrage pour exécuter un script au démarrage.

Connectez-vous au RPi et accédez au répertoire /Vac_Sensor.

cd /Vac_Sensornano launcher.sh

Incluez le texte suivant dans launcher.sh

#!/bin/sh# launcher.sh # naviguez jusqu'au répertoire home, puis dans ce répertoire, puis exécutez le script python, puis revenez homecd / cd home/pi/Vac_Sensor sudo python vac_sensor.py cd /

Quittez et enregistrez le launcher.sh

Nous devons faire du script un exécutable.

lanceur chmod 755.sh

Testez le scénario.

sh lanceur.sh

Ensuite, nous devons éditer crontab (le gestionnaire de tâches Linux) pour lancer le script au démarrage. Remarque: nous avons déjà créé le répertoire /logs précédemment.

sudo crontab -e

Cela amènera la fenêtre de crontab comme vu ci-dessus. Naviguez jusqu'à la fin du fichier et entrez la ligne suivante.

@reboot sh /home/pi/Vac_Sensor/launcher.sh >/home/pi/logs/cronlog 2>&1

Quittez et enregistrez le fichier, puis redémarrez le RPi. Le script doit démarrer le script vac_sensor.py après le redémarrage du RPi. L'état du script peut être vérifié dans les fichiers journaux situés dans le dossier /logs.

Étape 15: Pièces imprimées en 3D

Pièces imprimées en 3D
Pièces imprimées en 3D
Pièces imprimées en 3D
Pièces imprimées en 3D
Pièces imprimées en 3D
Pièces imprimées en 3D

Ce sont les pièces que j'ai conçues dans Fusion 360 et imprimées pour le boîtier, le bouton, le couvercle du condensateur et le support à vis.

J'ai utilisé un modèle pour un écrou NPT 1/4 de Thingiverse pour connecter l'assemblage du capteur de vide au boîtier. Les fichiers créés par ostariya se trouvent sur NPT 1/4 Thread.

Conseillé: