1. Accueil
  2. Docs
  3. Niryo un
  4. Tutoriels
  5. Contrôlez la bande transporteuse avec une carte Arduino

Contrôlez la bande transporteuse avec une carte Arduino

PHN0eWxlPgouZGlzY2xhaW1lciB7CmJhY2tncm91bmQ6I2U3ZjJmYTsKICAgIGxpbmUtaGVpZ2h0OiAyNHB4OwogICAgbWFyZ2luLWJvdHRvbTogMjRweDsKICAgICAgYm9yZGVyLXJhZGl1czogMTBweDsKICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2IoMCAwIDAgLyAzMCUpOwogIGZvbnQtZmFtaWx5OiBvcGVuLXNhbnMsIGhlbHZldGljYSwgc2Fucy1zZXJpZjsKfQouZGlzLXRpdGxlIHsKYmFja2dyb3VuZDojNmFiMGRlOwogIGZvbnQtd2VpZ2h0OiA3MDA7CiAgICBkaXNwbGF5OiBibG9jazsKICAgIGNvbG9yOiAjZmZmOwogICAgYmFja2dyb3VuZDogIzZhYjBkZTsKICAgIHBhZGRpbmc6IDZweCAxMnB4Owp9Ci5kaXMtdGV4dCB7CiAgICBwYWRkaW5nOiA2cHggMTJweDsKfQouZGlzLXRleHQgYSB7CnRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQ7Cn0KPC9zdHlsZT4KPGRpdiBjbGFzcz0iZGlzY2xhaW1lciI+CjxkaXYgY2xhc3M9ImRpcy10aXRsZSI+Tm90ZTwvZGl2Pgo8ZGl2IGNsYXNzPSJkaXMtdGV4dCI+VGhpcyB0dXRvcmlhbCBpcyBkZXNpZ25lZCBmb3IgTmlyeW8gT25lIHVzZXJzLiBJZiB5b3UgYXJlIHVzaW5nIE5lZCwgcGxlYXNlIGZpbmQgdGhlIG5ldyB0dXRvcmlhbCA8YSBocmVmPSJodHRwczovL2RvY3MubmlyeW8uY29tL2FwcGxpY2F0aW9ucy9uZWQvc291cmNlL3R1dG9yaWFscy9jb250cm9sX2NvbnZleW9yX2JlbHRfYXJkdWluby5odG1sIiB0YXJnZXQ9Il9ibGFuayI+aGVyZTwvYT4uPC9kaXY+CjwvZGl2Pg==

La Convoyeur a un moteur pas à pas qui est contrôlé avec la carte compatible Niryo Arduino personnalisée. Dans ce tutoriel, vous apprendrez à contrôler le tapis roulant avec une carte Arduino.

Ce tableau comporte : 

  • Une interface de communication : bus CAN (utilisant MCP2515 pour réaliser une interface SPI-CAN), cette interface permet de contrôler le Convoyeur les Niryo One
  • Une interface d'entrée numérique : cette interface se trouve dans le module contrôleur
  • Une entrée analogique.

Préparez votre environnement de programmation

Si vous voulez contrôler le Convoyeur avec un autre Arduino, vous devez changer le firmware actuel.

Étape 1 : Préparez votre IDE Arduino

  • Si vous n'avez pas installé l'IDE Arduino, téléchargez-le et installez-le depuis ici. Le microcontrôleur (type SAMD) utilisé dans le Niryo Stepper n'est pas déjà inclus dans les cartes prises en charge, vous devrez donc ajouter l'extension.
  • Ouvrez le gestionnaire de tableaux :

  • Maintenant, recherchez « zéro » :

  • Cliquez sur le package et installez-le. Cela peut prendre quelques minutes.
  • Une fois terminé, redémarrez votre IDE Arduino.

Étape 2 : Obtenez le micrologiciel de la bande transporteuse

  • Téléchargez le firmware depuis notre GitHub référentiel.
  • Extrayez l'archive. Si le nom du dossier n'est pas « NiryoConveyor », renommez-le sous ce nom.
  • Ouvrez le dossier et double-cliquez sur NiryoStepper.ino. Le programme s'ouvrira dans votre IDE Arduino.

Contrôlez la bande transporteuse avec un Arduino Uno

Dans cette partie, vous pourrez démarrer et arrêter le tapis roulant à l'aide de votre Arduino Uno.

Composants:

  • Arduino Uno
  • Convoyeur

Installer:

  • Connectez Arduino Uno à l'interface numérique du boîtier de commande du tapis roulant

Code:

Code du convoyeur :

  • Ajoutez cette fonction à NiryoConveyor.ino
void control_conveyor_arduino (int convoyeur_speed, int convoyeur_direction)
{
if ((conveyor_speed ==0) ou (digitalRead(digital_input_pin) == LOW)){relaxed_mode_with_resistance();fan_LOW();}
sinon si (digitalRead(digital_input_pin) == HIGH){
fan_HIGH();delay_steps = (10 * (100 – convoyeur_speed)) + 200;output(-1800 * convoyeur_direction * steps_position / 8, UMAX_20_PERCENT); // 32 micropas -> plus de précisionsteps_position = steps_position + 1;delayMicroseconds(delay_steps);}}
  • Copiez ce code sur la fonction boucle de NiryoConveyor.ino
void loop() {// direction du convoyeur 1 -> avant, -1 -> arrière

// vitesse du convoyeur : 0 -> 100%

control_conveyor_arduino(40, 1);

}

Code Arduino :

// les constantes ne changeront pas. Utilisé ici pour définir un numéro de broche : const int convoyeurPin = 2 ;// le numéro de la LED pinint convoyeurState = LOW ;

void setup() {

// définit la broche numérique comme sortie :

pinMode(conveyorPin, SORTIE);

}

boucle vide () {

// ajoute une condition ici exemple de bouton État de la broche

// si (boutonPin == ÉLEVÉ) {

État du convoyeur = ÉLEVÉ

else {

État du convoyeur = FAIBLE

}

// envoie l'état

digitalWrite (conveyorPin, convoyeurState);

// définit la LED avec le ledState de la variable :

digitalWrite(ledPin, ledState);

}

Vous pouvez désormais contrôler le tapis roulant avec la carte Arduino.

Comment pouvons-nous vous aider ?