{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"##Decouverte – Niveau 1 - Python\n",
"\n",
"###TP1"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Pour commencer votre programme python devra contenir les lignes de code ci-dessous et le logiciel V-REP devra être lancé.\n",
"\n",
"\n",
"- Dans V-REP (en haut à gauche) utilise les deux icones flèche pour déplacer la vue et regarder poppy sous tous les angles.
\n",
"- Dans notebook, utilise le raccourci 'Ctrl+Enter' pour éxécuter les commandes."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"import time\n",
"from poppy.creatures import PoppyTorso\n",
"poppy = PoppyTorso(simulator='vrep')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"###Créer un mouvement :\n",
"\n",
"Pour créer un mouvement, tu dois modifier la position des moteurs.\n",
"\n",
"Essaies la commande :"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"poppy.head_z.goal_position = 90"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Que se passe-t-il ? (entoures les bonnes réponses)\n",
"\n",
"La tête de poppy s'oriente vers :\n",
"Le haut / Le bas / La gauche / La droite ?\n",
"\n",
"Elle effectue :\n",
"Une translation / Une rotation ?\n",
"\n",
"Sur quel axe :\n",
"X / Y / Z ?\n",
"\n",
"Application : effectuer le mouvement inverse (revenir en position initiale)."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# essaie ton code ici"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Résumer :\n",
"Pour effectuer un mouvement vous devez connaître, le nom du moteur, l'axe sur lequel il se déplace et la valeur de l'angle. \n",
"La fonction « poppy.nom_du_moteur.goal_position = » réalise le mouvement.\n",
"\n",
"Aide:utilise l'image pour trouver les bons moteurs.\n",
"\n",
"\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# essaies ton code ici\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"###Trouver la position d'un moteur :\n",
"\n",
"Essaies la commande :"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"poppy.head_z"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#####Des informations sur le moteur head_z s'affichent ; Comment les exploiter ?\n",
"\n",
"Essaies la commande :"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"poppy.head_z.present_position"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#####Il n'y a plus qu'une seule information disponible : une valeur numérique en degrés ; Comment les exploiter ?"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"###Stocker de l'information :\n",
"\n",
"Pour mémoriser de l'information, il faut la stocker quelque part... où ? (entoures les bonnes réponses)\n",
"\n",
"Dans une variable / Dans une liste / Dans un dictionnaire ?\n",
"\n",
"Essaies les commandes :"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"a=poppy.head_z.present_position\n",
"print( a )"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"\n",
"###Manipuler de l'information :\n",
"\n",
"Essaies les commandes :"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"a=poppy.head_z.name\n",
"print(a)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#####Ici la commande retourne « une chaîne de caractère » stocker dans la variable a.\n",
"\n",
"Essaies les commandes :"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"a=poppy.head_z\n",
"print(a)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#####Ici la commande retourne « un objet » (un moteur) stocker dans la variable a.\n",
"\n",
"Essaies les commandes :"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"tete = poppy.head_z\n",
"pos = tete.present_position\n",
"print(tete,pos)\n",
"\n",
"tete.goal_position = -90\n",
"time.sleep(1)\n",
"print(pos)\n",
"\n",
"pos = tete.present_position\n",
"time.sleep(1)\n",
"print(pos)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Que se passe-t-il ? (entoures les bonnes réponses)\n",
"\n",
"La variable 'pos' stock la valeur de la position :\n",
"du moteur head_z / du moteur tete ?\n",
" \n",
"la variable ''pos est modifiée :\n",
"Quand la position du moteur change / \n",
"Quand une commande l'a modifie ?"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"####Es-tu prêt pour la suite ?\n",
"\n",
"#####et Poppy?\n",
"\n",
"Crées ton propre code pour faire dire oui (de la tête) à Poppy."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# essaies ton code ici\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"_________________________________________________________________\n",
"\n",
"\n",
"#### Tu as raté? c'est pas grâve, recommmence, essaies ces lignes pour redémarrer :"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"messager.reset_simulation()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Encore buger ? essaies celles-ci :"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"import pypot\n",
"poppy.stop_simulation()\n",
"pypot.vrep.close_all_connections()\n",
"\n",
"from poppy.creatures import PoppyTorso\n",
"poppy=PoppyTorso(simulator='vrep')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Tu as fini? coupes la simulation ici:"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"import pypot\n",
"poppy.stop_simulation()\n",
"pypot.vrep.close_all_connections()"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 2",
"language": "python",
"name": "python2"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
"version": "2.7.9"
}
},
"nbformat": 4,
"nbformat_minor": 0
}