Sortie de la version 2.00 d’Openmeca

Logo

Openmeca est un logiciel de simulation de systèmes mécaniques qui veut être aussi facile que possible à utiliser. Il permet de construire un système 3D et de le modéliser pour le faire fonctionner virtuellement.

C’est un logiciel sans prétention de modélisation cinématique des mécanismes. Il permet de simuler des mécanismes avec des engrenages, des courroies, des liaisons pivots, des glissières, des ressorts…

Openmeca

OpenMeca est un logiciel libre sous licence GPL v3. dont une nouvelle version majeure (la 2.0) vient juste de paraître sur GitLab.

Un bref historique

Openmeca est un projet personnel. Pour être honnête, la première version était un peu brouillonne, voire carrément cracra. À cette époque, il y a huit ans, j’étais jeune, fougueux et surtout très ignorant des bonnes pratiques élémentaires de programmation.

Alors, j’ai tout recommencé depuis le début, en espérant que, cette fois, le code serait un peu moins moche. C’est donc une version 2.0 qui fait (pour l’instant) moins de chose que la version 1.x, mais qui le fait avec plus de classe et de panache et, ça, c’est déjà pas mal.

Openmeca… c’est quoi ?

Openmeca, c’est un logiciel de simulation sans prétention de systèmes mécaniques. Il permet de simuler des mécanismes avec des engrenages, des courroies, des liaisons pivots, des glissières, des ressorts… Bref, tous ces petits mécanismes qui, mis bout à bout, permettent à une voiture d’avancer, à une fusée de décoller, à un compresseur de compresser ou bien à un tire‐bouchon de faire plop !

Attention, Openmeca n’est pas un modeleur volumique comme le logiciel libre FreeCAD ou les logiciels propriétaires CATIA ou SOLIDWORKS. Le but d’Openmeca est de pouvoir prototyper et simuler rapidement un système mécanique sans s’embarrasser de la définition complète du mécanisme : géométrie, assemblage, etc.

Openmeca permet donc de dessiner des schémas cinématiques en 3D et de les animer en appliquant des forces ou en imposant des déplacements. Il est également possible de placer des capteurs numériques afin de récupérer des données au cours d’une simulation. Enfin, et c’est une nouveauté par rapport à la version précédente, la gestion des contacts entre des géométries simples est disponible.

Copie d’écran

Comme une image vaut mieux qu’un grand discours, voici un aperçu d’Openmeca :

Interface OpenMeca

Architecture

Openmeca est écrit en C++ 98 et utilise les bibliothèques suivantes :

  • Qt 4, pour l’interface graphique ;
  • Qwt 6, pour faire des graphiques sympas ;
  • libQGLViewer, pour gérer la scène 3D ;
  • boost, pour la sauvegarde (sérialisation), ainsi que tout un tas de trucs ;
  • ChronoEngine, pour le moteur physique.

Et maintenant ?

Openmeca est loin d’être achevé. Il reste tout un tas de fonctionnalités rigolotes à ajouter :

  • nouvelles liaisons mécaniques ;
  • nouvelles géométries de contact ;
  • amélioration de l’ergonomie de l’interface ;
  • rédaction d’une aide ;
  • traductions, etc.

Appel à contribution

Mais, avant de réaliser toutes ces belles choses, ce qui serait bien, c’est de tester l’architecture déjà existante. Car, comme dit le maçon : avant de construire la charpente, il faut commencer par les fondations.

J’écris donc cette dépêche avec le secret espoir de susciter l’intérêt de quelques barbus (ou pas) pour m’aider.

Contact : openmeca (at) yakuru.fr

Lire les commentaires

(Source: LinuxFr.org : les dépêches)

Étiquettes: