LUA fonctionnalités de l’application réalisée

Cours LUA fonctionnalités de l’application réalisée, tutoriel & guide de travaux pratiques en pdf.

ENVIRONNEMENT TECHNIQUE
LANGAGE DE PROGRAMMATION LUA
PRESENTATION

Lua est un langage informatique de script créé en 1993. Le langage est utilisé par de nombreux jeux commerciaux comme FarCry, Blue Mars ou encore le mondialement connu : World of Warcraft. Des sociétés reconnues comme Adobe, utilisent également ce langage dans certaines de leurs solutions commerciales.
Le fait d’utiliser un langage de script permet notamment à des personnes ne connaissant pas vraiment toute les subtilités d’un langage de programmation (allocation mémoire, pointeurs, etc.) de pouvoir modifier un programme (les langages de scripts ont en général une syntaxe plus simple et se limitent a des cas d’utilisations connus). Ainsi, des graphistes et « level designers » de chez Blizzard (le créateur de World of Warcraft) peuvent modifier le comportement du jeu simplement en utilisant un langage de script.
Du point de vue de la robotique, le langage Lua peut permettre à des personnes n’ayant pas de connaissances avancées en programmation, de contrôler très facilement leur robot pour leur faire adopter des comportements totalement personnalisés. Comme tout langage de script, Lua s’intègre parfaitement à de gros environnement et devient une brique logicielle presque indispensable.
Les caractéristiques de Lua sont diverses :
– Performance (rapidité d’exécution),
– Portabilité (le langage peut être utilisé sous Unix, Windows et dans des terminaux portable ou encore des micro-processeurs),
– Embarquable (utilisable en plus d’un autre langage de programmation comme JAVA/C#/C/ADA…),
– Leger & gratuit (l’interpréteur Lua ne pèse qu’aux alentours de 200Ko et le langage est peut être utilisé dans des solutions commerciales sans frais).

CARACTERISTIQUES

Afin de pourvoir écrire des scripts il faut connaitre un minimum les caractéristiques de ce langage. Lua utilise une structure de données flexible (les tables, à l’image de JavaScript), des variables globales peuvent être définis à travers les scripts et des librairies standards sont présentes (io, math, file, string, …).
Les types de variables sont divers et communs aux autres langages :
– Table,
– Nombre,
– Booléen,
– Chaines de caractères,
– Fonctions …

MICROSOFT VISUAL STUDIO ET C#
Le logiciel Microsoft Visual Studio 2008 a été utilisé pour le développement de l’éditeur Lua. Celui-ci permet de développer dans de nombreux langages de programmation propriétaires de Microsoft comme C#, ASP.NET, etc.
Afin de synchroniser notre travail au sein du groupe, nous avons également utilisé le plugin AnkhSVN qui permet de se connecter à un repository Subversion et d’y effectuer toutes les opérations nécessaires au partage de fichiers (Checkout, Update, Commit, etc.).
L’éditeur de scripts Lua a été développé avec le langage de programmation C#. Référence et principal langage de Microsoft, C# est orienté objet à l’image de son concurrent Java. L’utilisation de ce langage a été naturellement imposée par la société ROBOSOFT et plus généralement l’environnement robotique qui se base sur le framework .NET, dont C# fait partie.

MICROSOFT ROBOTICS DEVELOPER STUDIO
Notre application étant destinée à être utilisée pour la robotique, il nous a fallu travailler avec les outils sur lesquels s’appuie la société ROBOSOFT. Microsoft Robotics Developer Studio fait parti de ceux-ci et se pose comme la référence pour le développement robotique. Dans le cadre de notre projet, nous avons utilisé une version gratuite (licence dite Express) de cette solution. Cette dernière n’est pas restrictive par rapport à la solution complète et, proposée pour une utilisation non-commerciale, était adaptée à notre cas (application Open Source).

PRESENTATION DE LA PLATEFORME

Microsoft Robotics Developer Studio (MSRDS) est une plateforme de développement standardisée pour la robotique. Editée par Microsoft, cette plateforme est composée d’environnements d’exécution, de développement et de simulation.
Cette solution a vu le jour en 2006 après un désir de la part de Microsoft de démocratiser le développement robotique, et de proposer une solution complète aux industriels. En effet, jusqu’alors les sociétés impliquées dans la robotique devaient s’adapter à l’environnement technologique (système d’exploitation et langage de programmation) de chaque constructeur de robots programmables. La solution MSRDS permet de palier à ce problème.
En effet, cette plateforme propose un environnement standardisé, c’est-à-dire qu’elle permet de rendre indépendantes les parties matérielle (hardware) et logicielle (software) d’un robot. Il est donc possible d’exécuter à l’identique le même code source sur plusieurs plateformes matérielles différentes, ce qui est un avantage considérable pour les sociétés concernées. Cette portabilité du code, objectif majeur de Microsoft pour MSRDS, permet donc de s’abstraire totalement du choix du hardware sous-jacent.
S’appuyant sur le framework .NET, technologie propriétaire de Microsoft, MSRDS permet donc de développer, tester, simuler et débugger des applications robotiques. Il repose sur trois
« briques » technologiques :
• Un environnement d’exécution : le runtime. Sur la base des modèles CCR et DSS, il permet de faire tourner des programmes sur n’importe quel robot.
• Un environnement de développement, qui met à disposition une sur-couche du framework
.NET pour la robotique, accessible grâce à des outils spécialisés (Visual Programming
Language, …) ou plus généralement de la gamme Microsoft (Visual Studio).
• Un environnement de simulation, qui permet de tester les programmes développés en faisant évoluer des robots dans des espaces virtuels en 3D, avec moteurs physiques pour restituer les chocs, la gravité, les forces, etc.

1 SOMMAIRE
2 Introduction
3 Présentation du sujet
3.1 Application à réaliser
4 Présentation de la société ROBOSOFT
5 Environnement technique
5.1 Langage de programmation Lua
5.1.1 Présentation
5.1.2 Caractéristiques
5.2 Microsoft Visual Studio et C#
5.3 Microsoft Robotics Developer Studio
5.3.1 Présentation de la plateforme
5.3.2 Architecture logicielle
5.3.3 Utilisation de MSRDS dans notre projet
5.4 Robubox
5.5 Librairies externes utilisées
6 Fonctionnalités de l’application réalisée
6.1 Menus & Fonctions associées
6.2 Multi fichiers
6.3 Auto-complétion
6.4 Vérification syntaxique
6.5 Aide intégrée
6.6 Assistance
6.7 Internationalisation
7 Organisation du projet
7.1 Phases du projet
7.2 Cahier des charges
7.3 Distribution des tâches
7.4 Communication interne
7.5 Communication avec l’entreprise
8 Bilan de l’application
8.1 Points forts, points faibles
8.2 Perspectives d’AVENIR
9 Conclusion
9.1 Apprentissage
9.2 Pédagogique
10 Glossaire
11 Annexe
11.1 Diagramme de classes

Cours gratuitTélécharger le cours complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *