Outil
Ce fichier présente les différentes Outil - Fonctions de contrôle, Outil - Enumerations & Outil - Topics Niryo disponible avec l’outil
Outil - Fonctions de contrôle
Cette section fait référence à toutes les fonctions de contrôle du robot existante, ce qui inclut
Utilise les outils
Utilise les préhenseurs
Utilise la pompe à vide
Utilise l’électroaimant
Gestion du PCO
Toutes les fonctions de contrôle du robot sont accessibles grâce à une instance class NiryoRobot
robot = NiryoRobot(<robot_ip_address>)
robot.tool.update_tool()
robot.tool.grasp_with_tool()
robot.tool.release_with_tool()
...
Voir des exemples sur Examples Section
Liste des fonctions de sous-sections
- class Tool(client)[source]
Fonctions des outils
Exemple:
ros_instance = NiryoRos("10.10.10.10") # Hotspot tool_interface = Tool(ros_instance)
- Paramètres
client (NiryoRos) – Client Niryo ROS
Fonctions des outils
- Tool.update_tool(callback=None, errback=None, timeout=None)[source]
Mise à jour de l’outil équipé
Exemple:
# Synchronous use tool.update_tool() # Asynchronous use def update_tool_callback(result): if result["status"] < RobotErrors.SUCCESS.value: print("Update failed") else: print("Update completed with success") tool.update_tool(update_tool_callback)
- Paramètres
callback (function) – Fonction de retour appelé en cas de réussite lors de l’exécution
errback (function) – Fonction de retour appelé en cas d’erreur lors de l’exécution
timeout – Délai d’exécution de l’opération, en secondes. Utilisé seulement en cas de blocage
- Type renvoyé
- property Tool.tool
- Renvoie
Identifiant de l’outil équipé
- Type renvoyé
ToolID
- property Tool.get_current_tool_id
Retourne le client de l’identifiant de l’outil équipé qui peut être utilisé de manière synchrone ou asynchrone pour récupérer l’identifiant de l’outil équipé.Le topic retourne un attribut du ToolID enum
Exemple:
# Get last value tool.get_current_tool_id() tool.get_current_tool_id.value # Subscribe a callback def tool_id_callback(tool_id_object): print tool_id_object tool.get_current_tool_id.subscribe(tool_id_callback) tool.get_current_tool_id.unsubscribe()
- Renvoie
Instance du topic de l’identifiant de l’outil
- Type renvoyé
- Tool.grasp_with_tool(callback=None)[source]
Saisie avec outil. Cette action correspond à - Ferme le préhenseur pour Préhenseurs - Aspire l’air pour la pompe à vide - Active l’électroaimant si une fonction de retour n’est pas passé en paramètre, la fonction sera bloquée. Sinon, la fonction de retour sera appelé quand l’exécuton de la fonction est finie.
Exemple:
tool.update_tool() tool.grasp_with_tool() def tool_callback(_msg) print("Grasped") tool.grasp_with_tool(callback=tool_callback)
- Paramètres
callback (function) – Fonction de retour appelé en cas de réussite lors de l’exécution
- Type renvoyé
- Tool.release_with_tool(callback=None)[source]
Saisie avec outil. Cette action correspond à - Ferme le préhenseur pour Préhenseurs - Aspire l’air pour la pompe à vide - Active l’électroaimant si une fonction de retour n’est pas passé en paramètre, la fonction sera bloquée. Sinon, la fonction de retour sera appelé quand l’exécuton de la fonction est finie.
Exemple:
tool.update_tool() tool.release_with_tool() def tool_callback(_msg) print("Released") tool.release_with_tool(callback=tool_callback)
- Paramètres
callback (function) – Fonction de retour appelé en cas de réussite lors de l’exécution
- Type renvoyé
Fonctions des Préhenseurs
- Tool.open_gripper(speed=500, max_torque_percentage=100, hold_torque_percentage=30, callback=None)[source]
Ouvre le préhenseur associé au préhenseur équipé avec une vitesse “vitesse”. Si une fonction de retour n’est pas passé en paramètre, la fonction sera bloquée. Sinon, la fonction de retour sera appelé quand l’exécuton de la fonction est finie.
Exemple:
tool.update_tool() tool.open_gripper() # Niryo One and Ned tool.open_gripper(speed=850) # Ned2 tool.open_gripper(max_torque_percentage=100, hold_torque_percentage=50) def tool_callback(_msg) print("Released") tool.open_gripper(callback=tool_callback)
- Paramètres
speed (int) – Entre 100 et 1000 (uniquement pour le Niryo one et le Ned 1)
max_torque_percentage (int) – Pourcentage de couple de fermeture (uniquement pour le Ned2)
hold_torque_percentage (int) – Pourcentage de couple de maintient après fermeture (uniquement pour le Ned2)
callback (function) – Fonction de retour appelé en cas de réussite lors de l’exécution
- Type renvoyé
- Tool.close_gripper(speed=500, max_torque_percentage=100, hold_torque_percentage=30, callback=None)[source]
Ferme le préhenseur associé au “gripper_id” à la vitesse “vitesse”. Si une fonction de retour n’est pas passé en paramètre, la fonction sera bloquée. Sinon, la fonction de retour sera appelé quand l’exécuton de la fonction est finie.
Exemple:
tool.update_tool() tool.close_gripper() # Niryo One and Ned tool.close_gripper(speed=850) # Ned2 tool.close_gripper(max_torque_percentage=100, hold_torque_percentage=50) def tool_callback(_msg) print("Grasped") tool.close_gripper(callback=tool_callback)
- Paramètres
speed (int) – Entre 100 et 1000 (uniquement pour le Niryo one et le Ned 1)
max_torque_percentage (int) – Pourcentage de couple d’ouverture (uniquement pour le Ned2)
hold_torque_percentage (int) – Pourcentage de couple de maintient après ouverture (uniquement pour le Ned2)
callback (function) – Fonction de retour appelé en cas de réussite lors de l’exécution
- Type renvoyé
Fonctions de la Pompe à vide
- Tool.pull_air_vacuum_pump(callback=None)[source]
Aspire l’air de la pompe à vide. Si une fonction de retour n’est pas passé en paramètre, la fonction sera bloquée. Sinon, la fonction de retour sera appelé quand l’exécuton de la fonction est finie.
Exemple:
tool.update_tool() tool.pull_air_vacuum_pump() def tool_callback(_msg) print("Grasped") tool.pull_air_vacuum_pump(callback=tool_callback)
- Paramètres
callback (function) – Fonction de retour appelé en cas de réussite lors de l’exécution
- Type renvoyé
- Tool.push_air_vacuum_pump(callback=None)[source]
Relâche l’air de la pompe à vide. Si une fonction de retour n’est pas passé en paramètre, la fonction sera bloquée. Sinon, la fonction de retour sera appelé quand l’exécuton de la fonction est finie.
Exemple:
tool.update_tool() tool.push_air_vacuum_pump() def tool_callback(_msg) print("Released") tool.push_air_vacuum_pump(callback=tool_callback)
- Paramètres
callback (function) – Fonction de retour appelé en cas de réussite lors de l’exécution
- Type renvoyé
Fonctions de l’électroaimant
- Tool.setup_electromagnet(pin_id)[source]
Installe l’électroaimant sur une broche
Exemple:
tool.setup_electromagnet(PinID.GPIO_1A)
- Paramètres
pin_id (PinID) –
- Type renvoyé
- Tool.activate_electromagnet(pin_id=None, callback=None)[source]
Active l’électroaimant associé à electromagnet_id sur le pin_id. Si une fonction de retour n’est pas passé en paramètre, la fonction sera bloquée. Sinon, la fonction de retour sera appelé quand l’exécuton de la fonction est finie.
Exemple:
tool.setup_electromagnet(PinID.GPIO_1A) tool.activate_electromagnet() tool.activate_electromagnet(PinID.GPIO_1A) def tool_callback(_msg) print("Grasped") tool.activate_electromagnet(callback=tool_callback)
- Paramètres
pin_id (PinID) –
callback (function) – Fonction de retour appelé en cas de réussite lors de l’exécution
- Type renvoyé
- Tool.deactivate_electromagnet(pin_id=None, callback=None)[source]
Désactive l’électroaimant associé à electromagnet_id sur le pin_id. Si une fonction de retour n’est pas passé en paramètre, la fonction sera bloquée. Sinon, la fonction de retour sera appelé quand l’exécuton de la fonction est finie.
Exemple:
tool.setup_electromagnet(PinID.GPIO_1A) tool.deactivate_electromagnet() tool.deactivate_electromagnet(PinID.GPIO_1A) def tool_callback(_msg) print("Deactivated") tool.deactivate_electromagnet(callback=tool_callback)
- Paramètres
pin_id (PinID) –
callback (function) – Fonction de retour appelé en cas de réussite lors de l’exécution
- Type renvoyé
Fonctions du PCO
- Tool.enable_tcp(enable=True)[source]
Active ou désactive la fonction PCO (Point Central de l’Outil). Si une activation est demandée, la dernière valeur pour le PCO va être appliquée. Par défaut la valeur dépend du préhenseur équipé. Si la désactivation est demandée, le PCO va coincider avec le repère “tool_link”.
- Paramètres
enable (Bool) – True pour activer, False pour désactiver.
- Type renvoyé
- Tool.set_tcp(*args)[source]
Active la fonction de PCO (Point Central de l’Outil) et définit la transformation entre le repère “tool_link” et le repère du PCO.
Exemple:
tool.set_tcp(0.02, 0.0, 0.03, 0.0, 1.57, 0.0) tool.set_tcp([0.02, 0.0, 0.03, 0.0, 1.57, 0.0]) tool.set_tcp(PoseObject(0.02, 0.0, 0.03, 0.0, 1.57, 0.0))
Outil - Topics Niryo
L’utilisation de ces fonctions est expliqué dans la section NiryoTopic. Elles permettent l’acquisition de données en temps réel par des fonctions de rappel ou des appels directs
Nom |
Fonction |
Type du retour |
---|---|---|
|
|
Outil - Enumerations
Liste des enumerations
ToolID
ToolCommand
- class ToolID(value)[source]
Enumeration des identifiants des Outils
- NONE = 0
- GRIPPER_1 = 11
- GRIPPER_2 = 12
- GRIPPER_3 = 13
- GRIPPER_4 = 14
- ELECTROMAGNET_1 = 30
- VACUUM_PUMP_1 = 31
- class ToolCommand(value)[source]
Une enumeration
- OPEN_GRIPPER = 1
- CLOSE_GRIPPER = 2
- PULL_AIR_VACUUM_PUMP = 10
- PUSH_AIR_VACUUM_PUMP = 11
- SETUP_DIGITAL_IO = 20
- ACTIVATE_DIGITAL_IO = 21
- DEACTIVATE_DIGITAL_IO = 22