Aller au contenu


Photo
- - - - -

Bullet et PyBullet - Modélisation Physique


15 réponses à ce sujet

#1 Oracid

Oracid

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 6 769 messages
  • Gender:Male

Posté 03 mai 2020 - 04:58

Bullet et PiBullet sont deux logiciels qui sont imbriqués. Malheureusement, je ne comprends rien à l'installation de ce logiciel.

Alors, je lance un appel. Si quelqu'un ici peut nous faire un petit tutorial pour l'installer, ce serait sympa.

 

Dans la vidéo ci-dessous vous pourrez vous rendre compte de l'intérêt de ce logiciel.

 

Voici quelques liens:

https://pybullet.org/wordpress/

https://github.com/b...m/pybullet_envs

 



#2 ICE-9

ICE-9

    Nouveau membre

  • Membres
  • 5 messages
  • Gender:Male

Posté 03 mai 2020 - 05:28

Pybullet n'est pas un logiciel mais une bibliothèque python. Ce package s'installe comme tous les autres : "pip3 install pybullet" dans la console python.



#3 Ludovic Dille

Ludovic Dille

    Habitué

  • Membres
  • PipPip
  • 186 messages
  • Gender:Male
  • Location:Belgique

Posté 03 mai 2020 - 05:51

Hello sous windows ça peut-être parfois tricky de manipuler des packages pythons (mais sinon il y a toujours WSL pour contourner ça).

Et plus de docs par ici: https://github.com/b...physics/bullet3



#4 Oracid

Oracid

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 6 769 messages
  • Gender:Male

Posté 03 mai 2020 - 06:51

Ok. Moi je travaille sous Windows10 et je ne connais pas Python. Je connais le C. Un peu.

 

La doc, je l'ai vu bien sûr, mais ce n'est pas ce qui m'a aidé.

J'ai installé Python, mais je ne sais même pas où il a été s'installer. J'ai fait une recherche bien sûr, rien.

 

Je viens d'apprendre que ce n'est pas un logiciel mais une bibliothèque. Ok, comment fait-on ? C'est quoi pip3 ? C'est quoi Python ?

Et Bullet, c'est également une bibliothèque ?

 

Faites comme si j'étais illettré. Merci par avance.



#5 macerobotics

macerobotics

    Membre occasionnel

  • Membres
  • Pip
  • 148 messages
  • Gender:Not Telling
  • Location:Bretagne

Posté 04 mai 2020 - 06:27

Salut,

 

Python est un langage de programmation comme le langage C. Pip est un gestionnaire de paquets python utilisé pour installer des paquets (bibliothèque) en langage python.

 

Exemple de programme en langage python :

# commentaire

print('Hello World!')

Exemple pour installer le paquet Serial (gestion du port série en python) :

python -m pip install pyserial

Bullet est un moteur physique, simuler l'interaction physique. PyBullet est une bibliothèque python pour la simulation physique utilisant le moteur physique Bullet.

 

Exemple pour installer pybullet :

pip install pybullet

Exemple de programme python avec l'utilisation de  pybullet:

import pybullet
import time
import pybullet_data

# connection pybullet, démarrage de la simulation
# PyBullet est conçu autour d'une API orientée client-serveur
physicsClient = pybullet.connect(pybullet.GUI)

# reset la simulation
pybullet.resetSimulation()

# PyBullet_data package
pybullet.setAdditionalSearchPath(pybullet_data.getDataPath())

# chargement du fichier plane.urdf (URDF = Unified Robot Description Format)
planeId = pybullet.loadURDF("plane.urdf")

# pause de 10 secondes
time.sleep(10)

Le résultat du programme précédent :
pybullet_img1.png


Mace Robotics - mobile platform for education makers and research.

www.macerobotics.com


#6 Oracid

Oracid

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 6 769 messages
  • Gender:Male

Posté 04 mai 2020 - 07:50

Bonjour Mace. Content de te voir. Quelque chose me dit que je vais beaucoup progresser dans les jours qui viennent. 
 
J'ai été sur ce site https://www.python.org/ Sur cette page, https://www.python.o...ase/python-382/ j'ai choisi Windows x86-64 executable installer

Python s'est bien installé, mais pas dans c:\programmes , mais dans C:\Users\charl\AppData\Local\Programs\Python

Je trouve ça vraiment bizarre !

 

L'installation n'a généré aucun lien sur mon bureau. Dur !

En cliquant sur le bouton Windows (démarrer), je vois un IDLE(Python 3.8 64-bits). Je ne sais pas ce qu'est un IDLE.

Je clique sur ce raccourci. Une fenêtre de commande Python 3.8.2 Shell apparait. Très spartiate la fenêtre !

Je tente la commande  "pip install pybullet", résultat "invalid syntax".

Dans une fenêtre de commande Windows, je tente "pip install pybullet". Ah, là, ça mouline ! 

 

Voilà le résultat :

Installing collected packages: pybullet
  Running setup.py install for pybullet ... done
Successfully installed pybullet-2.7.5
WARNING: You are using pip version 19.2.3, however version 20.1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.
 

Bon, ça avance !

Je fais quoi maintenant ? Y a t-il un environnement de développement quelque part ?



#7 Sandro

Sandro

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 1 262 messages
  • Gender:Male

Posté 04 mai 2020 - 10:58

A priori, je dirais qu'il n'y a pas de mal a mettre à jour pip, donc tu peut suivre le conseil.

 

Pour les IDE python, il y en a plein (comme pour tous les langages de programmation populaires) : il suffit de faire une recherche sur google, et tu en trouve plein. Par exemple un topo ten ici : https://www.supinfo....loppeurs-python

Après, pour te conseiller un IDE meilleurs qu'un autre, j'aurais du mal, je n'ai plus utilisé python depuis presque 2 ans, et encore, pas intensivement (il me semble que j'avais utilisé l'IDE Spyder)


Aidez-nous à vous aider : partagez toutes les informations pertinentes : description précise du problème, contexte, schéma de câblage, liens vers la documentation des composants, votre code (ou encore mieux un code minimal reproduisant le bug), ...

Vous recevrez ainsi plus de réponses, et elles seront plus pertinentes.


#8 Oracid

Oracid

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 6 769 messages
  • Gender:Male

Posté 04 mai 2020 - 01:14

Merci Sandro.

 

En fait, comme à mon habitude, j'ai regardé un tutorial sur Python, https://www.youtube....5OHJCI3jZfpASbR

J'ai suivi les conseils du tuto. J'ai donc installé PyCharm qui semble pas mal.

Pour pip, je vais voir ça.

 

Ce n'était pas le principal sujet de ce fil, mais bon, cela fait parti de la méthode pour utiliser PiBullet. Alors pourquoi pas.



#9 Oracid

Oracid

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 6 769 messages
  • Gender:Male

Posté 04 mai 2020 - 01:26

Et voilà, le travail !

 

Hello World
Process finished with exit code 0

 

Si on m'avait dit ce matin que j'aurais fait mon premier programme Python dans la journée . . .

 

J'ai fait un copier/coller du code de Mace et j'obtiens cette erreure.

ModuleNotFoundError: No module named 'pybullet'



#10 R1D1

R1D1

    Modérateur et Membre passionné

  • Modérateur
  • PipPipPipPipPip
  • 1 211 messages
  • Gender:Male
  • Location:Autriche

Posté 04 mai 2020 - 01:47

Bravo !

 

Pour ajouter quelques détails:

- python est un langage interprété (donc il n'y a pas d'étape de compilation en fichiers exécutables ; on "exécute" le script). Le développement est relativement rapide (le langage est un peu moins contraignant que, par exemple, C ou C++ ; pas besoin d'attendre la compilation) et il est facile de transcrire un algorithme en python (par exemple parce que python ne demande pas à l'utilisateur de faire la gestion de la mémoire utilisée par son programme).

- IDLE, ipython, jupyter notebook sont des outils qui permettent d'exécuter du code python (en ligne de commande pour les deux premiers, dans une page web pour le dernier).

- pip est un utilitaire de gestion de paquets pour python ; La commande "pip install nomdupackage" permet d'installer nomdupackage. Il y a des différences entre installer nomdupackage avec pip, avec apt sous Linux (sudo apt install python-nomdupackage), conda, etc. que j'avoue n'avoir jamais creusé personnellement. Entre apt et pip, les packages de pip sont en général plus récents que ceux disponibles par apt (attention aux conflits !).

- python dispose d'un nombre immense de modules pour faire plein de choses. Parmi ceux que j'utilise : numpy/matplotlib/pandas/seaborn pour le traitement des données et la visualisation ; scikit-learn/tensorflow pour le machine learning ; wxPython pour créer des interfaces graphiques ; et j'en passe.

- beaucoup de libraries offrent une interface python, parce que le langage est facile à apprendre et accessible, donc très utilisé. Le nom est souvent affublé d'un "py" pour representer ça : Bullet -> pyBullet ; ROS -> rospy ; torch -> pyTorch ; etc.


R1D1 - Calculo Sed Ergo Sum -- en ce moment, M.A.R.C.E.L.
Avatar tiré du site bottlebot

#11 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 9 969 messages
  • Gender:Male
  • Location:Anglet

Posté 04 mai 2020 - 01:49

Tout ça mériterait presque un tuto ! :)


Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être ! 
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!

 

Les réalisations de Mike118  

 

 

 


#12 Ludovic Dille

Ludovic Dille

    Habitué

  • Membres
  • PipPip
  • 186 messages
  • Gender:Male
  • Location:Belgique

Posté 04 mai 2020 - 04:05

alors pour mon petit grain de sel,

@oracid je pense qu'avec pycharm tu peux installer via les settings tes packages: https://www.jetbrain...-packages.html#

sinon la bonne chose à faire quand on travaille avec python c'est d'utiliser des environements (sous linux pipenv sauve des vie avec les conflits)



#13 Oracid

Oracid

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 6 769 messages
  • Gender:Male

Posté 04 mai 2020 - 05:10

J'ai mis à jour la version de pip dans la fenêtre de commande Windows avec la commande "python -m pip install --upgrade pip" , mais également à partir de PyCharm qui n'avait pas reconnu la mise à jour :

maj-pip.jpg

 

Puis j'ai chargé le package Pybullet avec PyCharm à partir du menu File/Settings/Project:myfirstproject. Double cliquer sur la zone blanche de la fenêtre de droite.(pas intuitif). Une fenêtre s'ouvre avec la liste des packages. Chercher Pybullet. Trouver, puis cliquer sur le bouton Install Package. Cela dure un petit moment.

Fermer.

Pybullet.jpg

 

Copier/coller le code de Mace dans la fenêtre texte et lancer.

 

Voila le résultat !  :Koshechka_08:

Pybullet2.jpg



#14 Oracid

Oracid

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 6 769 messages
  • Gender:Male

Posté 04 mai 2020 - 05:17

Ma première impression sur Python : la syntaxe est nulle !

Je pensais naivement que la syntaxe du C qui avait été repris dans JavaScript, C#, PHP, et surement d'autres langages, était un fait acquis.

 

Et bien, non !



#15 Ludovic Dille

Ludovic Dille

    Habitué

  • Membres
  • PipPip
  • 186 messages
  • Gender:Male
  • Location:Belgique

Posté 04 mai 2020 - 07:16

Ah non non python se rapproche beaucoup plus de matlab. Python est très populaire car il est simple à utiliser, il y a beaucoups de package facile à plugger sur son code et surtout qu'il est très permissif (pas de type de variables, boucle for simplifiées). Python pour moi c'est plus un outil très magnable mais quand on a besoin de performance faut changer (bien qu'il y a des packages pour convertir du python en C: Cython). Mais tout comme toi au début je trouvais la synthaxe de python nulle mais à force de la cotoyer j'ai appris à l'aimer :P



#16 Little french kev

Little french kev

    Membre occasionnel

  • Membres
  • Pip
  • 110 messages

Posté 04 mai 2020 - 10:17

 Mais tout comme toi au début je trouvais la synthaxe de python nulle mais à force de la cotoyer j'ai appris à l'aimer :P

Et surtout plus de ; en bout de ligne!!! Quand je passe un peu trop de temps sur des script en python j'arrete pas de les oublier apres!





Répondre à ce sujet



  


0 utilisateur(s) li(sen)t ce sujet

0 members, 0 guests, 0 anonymous users