Contrôleurs de moteur
Stores motorisés rétrofit
Ressorts à gaz

No results found. Please contact us for assistance.

Surveillance du courant d'un actionneur linéaire

Cet exemple de code utilise un MegaMoto Plus et un Arduino Uno pour surveiller le courant d'un actionneur linéaire ; cependant, des produits similaires peuvent être utilisés en remplacement.

/* Code pour surveiller la consommation de courant de l'actionneur et couper l'alimentation si elle dépasse un certain seuil. Écrit par Progressive Automations le 19 août 2015. Matériel : - Cartes de contrôle RobotPower MegaMoto - Arduino Uno - 2 boutons-poussoirs */ const int EnablePin = 8; const int PWMPinA = 11; const int PWMPinB = 3; // Broches pour MegaMoto const int buttonLeft = 4; const int buttonRight = 5; // Boutons pour actionner le moteur const int CPin1 = A5; // Retour d'information du moteur int leftlatch = LOW; int rightlatch = LOW; // Verrous du moteur (utilisés pour la logique du code) int hitLimits = 0; // Initialisation à 0 int hitLimitsmax = 10; // Valeurs indiquant si les limites de course ont été atteintes long lastfeedbacktime = 0; // Doit être long, sinon dépassement de capacité int firstfeedbacktimedelay = 750; // Premier délai pour ignorer le pic de courant int feedbacktimedelay = 50; // Délai entre les cycles de rétroaction, fréquence de vérification du moteur long currentTimefeedback = 0; // Doit être long, sinon dépassement de capacité int debounceTime = 300; // Valeur pour l'anti-rebond des boutons, plus la valeur est basse, plus les boutons sont sensibles long lastButtonpress = 0; // Minuteur pour l'anti-rebond long currentTimedebounce = 0; int CRaw = 0; // Valeur d'entrée pour les lectures de courant int maxAmps = 0; // Limite de déclenchement bool dontExtend = false; bool firstRun = true; bool fullyRetracted = false;// Logique du programme void setup() { Serial.begin(9600); pinMode(EnablePin, OUTPUT); pinMode(PWMPinA, OUTPUT); pinMode(PWMPinB, OUTPUT); // Configurer les sorties moteur pinMode(buttonLeft, INPUT); pinMode(buttonRight, INPUT); // Boutons digitalWrite(buttonLeft, HIGH); digitalWrite(buttonRight, HIGH); // Activer les résistances de rappel internes pinMode(CPin1, INPUT); // Configurer l'entrée de retour currentTimedebounce = millis(); currentTimefeedback = 0;//Définir les temps initiaux maxAmps = 15;// DÉFINIR LE COURANT MAXIMUM ICI }//fin de la configuration void loop() { latchButtons();//vérifier les boutons, voir si nous devons les déplacer moveMotor();//vérifier les verrous, déplacer le moteur vers l'intérieur ou l'extérieur }//fin de la boucle principale void latchButtons() { if (digitalRead(buttonLeft)==LOW)//gauche est vers l'avant { currentTimedebounce = millis() - lastButtonpress;// vérifier le temps depuis la dernière pression if (currentTimedebounce> debounceTime && dontExtend == false)//une fois que vous avez déclenché dontExtend, ignorer toutes les pressions vers l'avant { leftlatch = !leftlatch;// si le moteur est en mouvement, arrêter, s'il est arrêté, démarrer le mouvement firstRun = true;// définir l'indicateur firstRun pour ignorer le pic de courant fullyRetracted = false; // Une fois que vous avancez, vous n'êtes pas complètement rétracté lastButtonpress = millis();//stocker l'heure du dernier appui sur le bouton return; }//fin si }//fin btnLEFT if (digitalRead(buttonRight)==LOW)//droite est en arrière { currentTimedebounce = millis() - lastButtonpress;// vérifier le temps depuis le dernier appui if (currentTimedebounce> debounceTime) { rightlatch = !rightlatch;// si le moteur est en mouvement, arrêter, s'il est arrêté, démarrer le mouvement firstRun = true;// définir l'indicateur firstRun pour ignorer le pic actuel lastButtonpress = millis();//stocker l'heure du dernier appui sur le bouton return; }//fin si }//fin btnRIGHT }//fin latchButtons void moveMotor() { if (leftlatch == HIGH) motorForward(255); //vitesse = 0-255 if (leftlatch == LOW) motorStop(); if (rightlatch == HIGH) motorBack(255); //vitesse = 0-255 if (rightlatch == LOW) motorStop(); }//fin moveMotor void motorForward(int speed) { while (dontExtend == false && leftlatch == HIGH) { digitalWrite(EnablePin, HIGH); analogWrite(PWMPinA, speed); analogWrite(PWMPinB, 0);//déplacer le moteur if (firstRun == true) delay(firstfeedbacktimedelay); // délai plus long pour ignorer le pic de courant else delay(feedbacktimedelay); // petit délai pour atteindre la vitesse getFeedback(); firstRun = false; latchButtons();//vérifier à nouveau les boutons }//fin while }//fin motorForward void motorBack (int speed) { while (rightlatch == HIGH) { digitalWrite(EnablePin, HIGH); analogWrite(PWMPinA, 0); analogWrite(PWMPinB, vitesse); // Déplacer le moteur si (firstRun == true) delay(firstfeedbacktimedelay); // Délai plus long pour ignorer le pic de courant sinon delay(feedbacktimedelay); // Petit délai pour atteindre la vitesse de démarrage getFeedback(); firstRun = false; latchButtons(); // Vérifier à nouveau les boutons } // Fin de la boucle dontExtend = false; // Autoriser le moteur à se déployer à nouveau après sa rétraction } // Fin de motorBack void motorStop() { analogWrite(PWMPinA, 0); analogWrite(PWMPinB, 0); digitalWrite(EnablePin, LOW); firstRun = true; // Une fois le moteur arrêté, réactiver firstRun pour tenir compte des pics de courant au démarrage } // Fin de stopMotor void getFeedback() { CRaw = analogRead(CPin1); // Lire le courant si (CRaw == 0 && hitLimits < hitLimitsmax) hitLimits = hitLimits + 1; sinon hitLimits = 0; // Vérifier si le moteur a atteint ses limites et si le courant est arrêté si (hitLimits == hitLimitsmax && rightlatch == HIGH) { rightlatch = LOW; // Arrêter le moteur fullyRetracted = true; }//fin si sinon si (hitLimits == hitLimitsmax && leftlatch == HIGH) { leftlatch = LOW;//Arrêter le moteur hitLimits = 0; }//fin si si (CRaw > maxAmps) { dontExtend = true; leftlatch = LOW; //Arrêter si le retour d'information dépasse le maximum }//fin si lastfeedbacktime = millis();//Stocker l'heure précédente de réception du retour d'information }//fin getFeedback
Contrôle de plusieurs actionneurs avec le shield Arduino multimoto
Contrôleur de moteur Wasp pour la commande d'actionneur linéaire
Utilisation de relais pour commander des actionneurs linéaires
Contrôler la synchronisation du mouvement d'un seul actionneur linéaire
Extension et rétraction continues d'un actionneur linéaire avec moteur CC sans balais
Exemples de codes pour micro-servo-actionneurs PA-12
Où puis-je trouver des informations supplémentaires sur vos produits ?

Vous trouverez des fiches techniques, des manuels d'utilisation, des modèles 3D, des schémas de câblage et bien plus encore dans nos sections Ressources et Centre d'apprentissage.

Comment puis-je déterminer quel actionneur linéaire Progressive Automations est le mieux adapté à mon application ?
Qu'est-ce que le cycle de service et comment est-il calculé ?
Puis-je utiliser vos actionneurs pour remplacer celui que je possède déjà ?
Que signifie « stroke » ? Comment savoir quelle taille choisir ?
Comment savoir quelle force nominale convient à mon application ?
Puis-je utiliser ma propre alimentation électrique comme source pour mes actionneurs ?
Comment puis-je faire en sorte que les actionneurs se déplacent simultanément ?
Pourquoi mon actionneur linéaire fait-il autant de bruit ?
Puis-je personnaliser un actionneur linéaire selon mes spécifications ?
Puis-je synchroniser mes actionneurs linéaires ?
Des kits d'actionneurs linéaires sont-ils disponibles ?
La température aura-t-elle une incidence sur mon actionneur linéaire ?
Puis-je intégrer l'un de vos actionneurs dans un mécanisme tiers ?
Quel est le brochage de mon actionneur linéaire ?
Puis-je obtenir des modèles CAO 3D pour mon actionneur linéaire ?
Quelles sont les options de boîtier de commande pour mon actionneur ?
Puis-je utiliser vos boîtiers de commande avec un produit tiers ?
Vendez-vous des boîtiers de contrôle Wi-Fi ?
Vos boîtiers de commande sont-ils tous compatibles avec tous vos actionneurs linéaires ?
Puis-je utiliser mon propre boîtier de commande ?
Auriez-vous un exemple de code que je pourrais utiliser ?
Je n’ai pas de source d’énergie – que puis-je faire ?
Puis-je utiliser ma propre alimentation électrique ?
Disposez-vous d'alimentations électriques de 220 V CA ?
Puis-je commander les colonnes de levage avec un contrôleur tiers ?
Puis-je utiliser deux colonnes de levage LG-11 ensemble ?
Quel boîtier de commande dois-je associer à mes colonnes de levage ?
Vos supports de table/bureau/téléviseur sont-ils personnalisables ?
Quelles sont les tailles de téléviseurs que vos supports de téléviseurs peuvent supporter ?
Quelle est la capacité de charge de vos élévateurs de table/bureau ?
Mon actionneur linéaire est-il livré avec des supports de montage ?
Where can I find a step-by-step guide for my product?
J'ai suivi le schéma de câblage mais ça ne fonctionne pas – que dois-je faire ?
Organigramme pour la sélection de l'actionneur
Les boîtiers de commande FLTCON sont-ils compatibles avec mes actionneurs ?
Qu’est-ce que le recul ? – Que signifient les valeurs nominales de charge dynamique et statique ? – Qu’est-ce que la charge latérale ?
Comment puis-je passer une commande ?

Les commandes peuvent être passées par l'un des moyens suivants :

En ligne : Utilisez notre processus de commande en ligne avec des options de paiement par carte de crédit ou PayPal.

Téléphone : 1-800 – 676 – 6123

Courriel : sales@progressiveautomations.com

Proposez-vous des remises sur quantité ?
Quels modes de paiement acceptez-vous ?
Dans quelle devise vos prix sont-ils indiqués ?
Comment savoir si le produit que je souhaite est en stock ?
Combien coûteront les frais de livraison et quels modes de livraison proposez-vous ?

Les frais d'expédition de Progressive Automations sont calculés en fonction de divers facteurs, y compris, mais sans s'y limiter : l'emplacement, les quantités et le poids total de votre commande. Les petits articles sont expédiés par colis tandis que les articles plus volumineux et les commandes de grande quantité sont expédiés via un service de transport de marchandises. Nous nous efforçons toujours de fournir des prix d'expédition compétitifs à tous nos clients.

Les méthodes d'expédition sont disponibles via les commandes en ligne et par téléphone. Si vous souhaitez recevoir une estimation des frais d'expédition de votre commande, vous pouvez le faire en consultant votre panier final.

Quelles entreprises de transport de marchandises utilisez-vous ?
Devrai-je payer des droits de douane ?
Quelle est votre politique de retour ?
Quel est le délai de livraison ?
Proposez-vous la livraison gratuite ?
Je veux que le côté le plus long de ma table soit à gauche. Le cadre de bureau debout en forme de L peut-il être installé à gauche ou à droite ?

Oui, le bureau debout en forme de L facilite l'orientation et peut être installé selon vos préférences. Voici un article étape par étape qui explique comment cela est possible : Manuel d'utilisation du FLT-05

Comment puis-je définir les hauteurs maximales/minimales de mon(mes) cadre(s) de bureau debout ?

REMARQUE : Les étapes ci-dessous peuvent varier en fonction du modèle de télécommande dont vous disposez. Les instructions suivantes ont été faites pour la télécommande RT-11 standard. Pour définir la hauteur maximale de votre cadre, accédez à la hauteur souhaitée que vous souhaitez définir et suivez les étapes ci-dessous :

  1. Appuyez sur M et voyez [5 -] indiqué sur l'écran
  2. Appuyez sur le bouton UP et remarquez que [5 -] clignote
  3. Maintenez le bouton M enfoncé jusqu'à ce que vous voyiez [999] sur l'écran.
  4. La hauteur maximale a maintenant été définie

Pour définir la hauteur minimale de votre cadre, accédez à la hauteur souhaitée que vous souhaitez définir et suivez les étapes ci-dessous :

  1. Appuyez sur M et voyez [5 -] indiqué sur l'écran
  2. Appuyez sur le bouton DOWN et remarquez que [5 -] clignote
  3. Maintenez le bouton M enfoncé jusqu'à ce que [000] s'affiche à l'écran.
  4. La hauteur minimale a maintenant été définie

Pour réinitialiser les limites, suivez les étapes ci-dessous :

  1. Appuyez sur M et voyez [5 -] indiqué sur l'écran et relâchez
  2. Tenez le M que vous voyez [555]
  3. Les limites ont été réinitialisées
Je dois maintenir les boutons de la télécommande enfoncés pour atteindre ma hauteur prédéfinie. Existe-t-il un moyen de le faire avec une seule pression ?

REMARQUE : Les étapes ci-dessous peuvent varier en fonction du modèle de télécommande dont vous disposez. Les instructions suivantes ont été faites pour la télécommande RT-11 standard.

Si vous devez maintenir enfoncés les boutons de la télécommande pour atteindre votre hauteur prédéfinie, cela signifie que votre boîtier de commande est en contrôle momentané. Pour régler votre télécommande en mode non momentané, suivez les étapes ci-dessous

  1. Assurez-vous qu'il n'y a rien sous votre bureau, car nous devons entrer dans la procédure de réinitialisation
  2. Appuyez et maintenez enfoncé le bouton DOWN jusqu'à ce que l'écran affiche [ASr]
  3. Une fois que [ASr] est affiché, appuyez et maintenez [1] et vous pouvez voir deux valeurs :

    un. 10.1 = Mode non momentané
    b. 10.2 = Mode momentané

  4. Terminez la procédure de réinitialisation en maintenant le bouton BAS jusqu'à ce que votre bureau debout descende et monte légèrement.
Comment modifier la sensibilité de la détection de collision ?

Nos bureaux debout disposent de 3 paramètres de détection de collision, qui peuvent être définis selon vos préférences. Pour continuer, suivez les étapes ci-dessous :

  1. Assurez-vous qu'il n'y a rien sous votre bureau car nous devons entrer dans la procédure de réinitialisation.
  2. Appuyez et maintenez enfoncé le bouton DOWN jusqu'à ce que l'écran affiche [ASr]
  3. Une fois que [ASr] est affiché, appuyez et maintenez le bouton UP [ ^ ] et vous pouvez voir trois valeurs :

    un. 10,5 = 11 livres
    b. 10,6 = 22 livres
    c. 10,7 = 33 livres

  4. Terminez la procédure de réinitialisation en maintenant le bouton BAS jusqu'à ce que votre bureau debout descende et monte légèrement.
Ma télécommande affiche un code d'erreur sur l'écran ? Que dois-je faire?

Nous avons quelques étapes de dépannage à suivre si vous voyez l'un des codes d'erreur suivants sur les cadres équipés de boîtiers de commande de la série FLTCON :

Vérifiez le code d'erreur ici .

Si le problème que vous rencontrez persiste après avoir suivi ces étapes, n'hésitez pas à contacter nos ingénieurs techniques produits au 1-800-676-6123 ou à nous envoyer un e-mail à sales@progressiveautomations.com .