Convoyeur

Ce fichier présente les différentes Fonctions du convoyeur, Convoyeur - Enumerations, Convoyeur - Topics Niryo & Convoyeur - Namedtuple disponible avec l’API du Bras

Fonctions du convoyeur

Cette section fait référence à toutes les fonctions de contrôle du robot, ce qui inclut

  • Contrôle les convoyeurs

Toutes les fonctions de contrôle du robot sont accessiblent grâce à une instance class NiryoRobot

robot = NiryoRobot(<robot_ip_address>)

conveyor_id = robot.conveyor.set_conveyor()
robot.conveyor.run_conveyor(conveyor_id)
...

Voir des exemples sur Examples Section

List des fonctions des sous-sections

Fonctions du convoyeur

class Conveyor(client)[source]

Fonctions du convoyeur

Exemple:

ros_instance = NiryoRos("10.10.10.10") # Hotspot
conveyor_interface = Conveyor(ros_instance)
Paramètres

client (NiryoRos) – Client Niryo ROS

set_conveyor()[source]

Vérifie que le convoyeur est branché ou qu’il n’est pas sur un bus CAN. Si un nouveau convoyeur est detecté, il l’active et retourne son identifiant. Si le convoyeur est déjà installé, il retourne son identifiant

Exemple:

# Get the id of the conveyor plugged
conveyor_id = conveyor.set_conveyor()

# Scan and set the conveyor plugged
conveyor.set_conveyor()

:return : Identifiant du Nouveau Convoyeur :rtype: ConveyorID

unset_conveyor(conveyor_id)[source]

Retire ou désactive un convoyeur déjà branché et installé

Exemple:

conveyor_id = conveyor.set_conveyor()
conveyor.unset_conveyor(conveyor_id)
conveyor.unset_conveyor(ConveyorID.ID_1)
conveyor.unset_conveyor(ConveyorID.ID_2)
Paramètres

conveyor_id (ConveyorID) – Simplement, ConveyorID.ID_1 ou ConveyorID.ID_2

Type renvoyé

None

run_conveyor(conveyor_id, speed=100, direction=<ConveyorDirection.FORWARD: 1>)[source]

Activer le convoyeur avec l’id “conveyor_id”

Exemple:

# Set the conveyor and get its id and un it. 
# By default, the conveyor will go forward at a speed of 50
# You can't choose the parameters with this method

conveyor_id = conveyor.set_conveyor()
conveyor.run_conveyor(conveyor_id) 
Paramètres
  • conveyor_id (ConveyorID) – L’identifiant du convoyeur

  • speed (int) – Pourcentage de vitesse entre 0% et 100%

  • direction (ConveyorDirection) – direction = ConveyorDirection.FORWARD

Type renvoyé

None

stop_conveyor(conveyor_id)[source]

Stoppe le convoyeur ayant l’identifiant “conveyor_id”

Exemple:

# Set the conveyor and get its id, run it and then stop it after 3 seconds
# By default, the conveyor will go forward at a speed of 50
# When the conveyor is stopped, its control_on parameter is False and its speed is 0

import time

conveyor_id = conveyor.set_conveyor()
conveyor.run_conveyor(conveyor_id)
time.sleep(3)
conveyor.stop_conveyor(conveyor_id) 
Paramètres

conveyor_id (ConveyorID) –

Type renvoyé

None

control_conveyor(conveyor_id, control_on, speed, direction)[source]

Contrôle le convoyeur associé au conveyor_id. Puis s’arrête si bool_control_on est à Fau

Exemple:

# Example 1
# Set the conveyor and get its id, control it and then stop it after 3 seconds
# It this first example, we control the conveyor at a speed of 100% and in the forward direction

import time

conveyor_id = conveyor.set_conveyor()
conveyor.control_conveyo(conveyor_id, True, 100, ConveyorDirection.FORWARD.value)
time.sleep(3)
conveyor.stop_conveyor(conveyor_id) 
# Exemple 2

# équipe le convoyeur et obtenir son identifiant, le contrôle et l’arrête après 3 secondes. # Dans ce deuxième exemple, nous contrôlons le convoyeur à une vitesse de 30% et dans le sens inverse.

import time

conveyor_id = conveyor.set_conveyor() conveyor.control_conveyor(conveyor_id, True, 30, ConveyorDirection.BACKWARD.value) time.sleep(3) conveyor.stop_conveyor(conveyor_id)

Paramètres
  • conveyor_id (ConveyorID) –

  • control_on (bool) – Vrai pour activer, Faux pour désactiver

  • speed (int) – Nouvelle vitesse qui est un Pourcentage de la vitesse maximale (de 0% à 100%)

  • direction (ConveyorDirection) – ConveyorDirection.FORWARD.value, ConveyorDirection.BACKWARD.value

Type renvoyé

None

property get_conveyors_feedback

Retourne le client de rétroaction des convoyeurs qui peut être utilisé de manière synchrone ou asynchrone pour obtenir les retours d’information des convoyeurs: (conveyor_id, connection_state, running, speed, direction)

Exemples:

# Get last value
arm.get_conveyors_feedback()
arm.get_conveyors_feedback.value

# Subscribe a callback
def conveyor_callback(conveyor_feedback):
    print conveyor_feedback

arm.hardware_status.subscribe(conveyor_callback)
# wait
arm.hardware_status.unsubscribe()
Renvoie

namedtuple[conveyor_id, running, speed, direction]

Type renvoyé

namedtuple(ConveyorID, bool, int, ConveyorDirection)

property conveyors

Retourne la liste des convoyeurs enregistrés

Renvoie

namedtuple[conveyor_id, running, speed, direction]

Type renvoyé

namedtuple(ConveyorID, bool, int, ConveyorDirection)

Convoyeur - Topics Niryo

L’utilisation des ces fonctions est expliquée dans la section NiryoTopic. Elles permettent l’acquisition de données en temps réel par des fonctions de rappel ou des appels directs

Topics des Convoyeurs Niryo

Nom

Fonction

Type de la variable de Retour

/niryo_robot/conveyor/feedback

get_conveyors_feedback

list [ ConveyorInfo ]

Convoyeur - Enumerations

Liste des enumerations:

  • ConveyorID

  • ConveyorDirection

  • ConveyorStatus

class ConveyorID(value)[source]

ConveyorID pour être capable de contrôler à la convoyeurs avec une interface TTL (id 9 et 10) et/ou CAN (id 12 et 13)

ID_1 = 12 # One, Ned ID_2 = 13 # One, Ned ID_3 = 9 # Ned2 ID_4 = 10 # Ned2

NONE = 0
ID_1 = -1
ID_2 = -2
class ConveyorCan(value)[source]

ConveyorID pour contrôler les convoyeurs avec un interface CAN

NONE = 0
ID_1 = 12
ID_2 = 13
class ConveyorTTL(value)[source]

ConveyorID pour contrôler les convoyeurs avec un interface TTL

NONE = 0
ID_1 = 9
ID_2 = 10
class ConveyorDirection(value)[source]

Enumeration des directions du convoyeur

FORWARD = 1
BACKWARD = -1
class ConveyorStatus(value)[source]

Enumeration des différents états du convoyeur

ADD = 1
REMOVE = 2

Convoyeur - Namedtuple

class ConveyorInfo(conveyor_id, running, speed, direction)

Crée une nouvelle instance de ConveyorInfo(conveyor_id, running, speed, direction)

conveyor_id

Alias pour le champ numéro 0

direction

Alias pour le champ numéro 3

running

Alias pour le champ numéro 1

speed

Alias pour le champ numéro 2