Exercice : Exercice 1

Nous désirons déplacer le Niryo One aux deux positions P1 et P2 avec :

• P1 = [ x = -0.03 ; y = -0.156 ; z= 0.48 ; roll= -0.58 ; pitch = -0.58 ; yaw = -0.145 ]

• P2 = [ x = -0.136 ; y = -0.133 ; z = 0.255 ; roll= -0.081 ; pitch = 0.744 ; yaw = -2.535 ]

Question

Quelle est la fonction qui permet de déplacer le robot vers une position en fournissant les coordonnées cartésiennes x, y et z ?

Créer un fichier Python exercice_1.py :

1
touch exercice_1.py 
2
chmod +x exercice_1.py

• Copier/coller le code suivant :

1
#!/usr/bin/env python
2
from niryo_one_python_api.niryo_one_api import *
3
import rospy
4
import time
5
6
rospy.init_node('niryo_one_example_python_api')
7
8
n = NiryoOne()
9
10
n.calibrate_auto()
11
12
# desactiver le mode apprentissage
13
n.activate_learning_mode(False)
14
# deplacer le robot vers la position P1
15
n.move_pose( -0.03, -0.156, 0.48, -0.58, -0.58, -0.145)
16
time.sleep(3)
17
pose_actuel_1 = n.get_arm_pose()
18
print pose_actuel_1
19
# deplacer le robot vers la position P2
20
n.move_pose( -0.136, -0.133, 0.255, -0.081, 0.744, -2.535)
21
time.sleep(3)
22
pose_actuel_2 = n.get_arm_pose()
23
print pose_actuel_2
24
n.activate_learning_mode(True)

Question

Apporter les modifications nécessaires pour que le code ci-dessus déplace le robot de la position P1 à la position P2 quatre fois consécutives.