Archives de catégorie : Ada4Automation

« Ada for Automation » est un cadriciel pour développer des applications d’automatisme évoluées dans le langage Ada.

A4A : Vole !

Bonjour,

Introduction

Ada for Automation est né comme un projet personnel dans le but d’apprendre le langage Ada que je trouvais – et trouve toujours – intéressant à moult égards.

Je pensais que dans le cadre de mon travail ce projet avait du sens et même de l’avenir.
Et avec l’IIot / Industry 4.0, le Edge Computing… je le pense encore davantage.

J’espère bien ne pas m’être trompé.
De toute façon, j’ai beaucoup appris et, en ce qui me concerne, ça a payé mes efforts.

Il est resté cependant un projet personnel depuis et il est temps qu’il apprenne à voler de ses propres ailes, ce pourquoi le langage Ada est tout indiqué.

Un domaine pour Ada for Automation

Aussi, pour lui donner une identité propre, j’ai décidé de lui fournir un domaine et un site bien à lui et le voici :
https://www.ada4automation.org

Voilà, voilà… Encore un site moche me direz vous…

Ben oui… Je suis technicien, pas designer.

D’ailleurs, si vos talents artistiques cherchent à s’exprimer, la place de designer du site est libre !
C’est payé en estime, une monnaie qui n’a rien de digital.

N’hésitez pas à vous manifester si vous souhaitez participer au projet !

Adossés au domaine, une ribambelle de sites de démonstration est prévue, certains sont déjà disponibles :
https://demo.ada4automation.org/

GNAT Community 2021

Une bonne nouvelle ne venant jamais seule, Adacore met à votre disposition la version 2021 de ses outils :
https://blog.adacore.com/gnat-community-2021-is-here

C’est donc une bonne occasion de vous y mettre !

Pour ma part, je me suis dépêché d’y installer sur différentes machines avec différents OS et ça juste marche. 😉

Bibliothèque Snap7

Pour couronner le tout, j’ai rajouté un « binding » Ada de la superbe bibliothèque Snap7 qui permet de communiquer avec les omniprésents automates SIEMENS avec le protocole ISO on TCP (RFC1006).

Ce site est également une mine d’information concernant la communication S7. Je remercie chaleureusement son auteur.

Je me suis pour l’instant limité à la fonctionnalité Client et ça suffit pour pouvoir écrire des passerelles, des IHM, que sais-je encore.

Il y a un programme de test qui va avec, projet :
https://gitlab.com/ada-for-automation/ada-for-automation/-/blob/master/test/a4a_test_s7.gpr

Et le code du test :
https://gitlab.com/ada-for-automation/ada-for-automation/-/blob/master/test/src/test_libsnap7_client.adb

Cela fonctionne sous Linux comme sous Windows.

Pour faciliter la prise en main, j’ai également rajouté des projets permettant de compiler les dépendances libmodbus et Snap7 donc :
https://gitlab.com/ada-for-automation/ada-for-automation/-/tree/master/deps_build

Que cela ne vous dispense pas de comprendre ce que vous faites et de récupérer les bibliothèques vous-même pour les placer dans les dossiers idoines.

Avec GNAT Community, les compiler devient un jeu d’enfant sous Linux comme sous Windows.

Et un petit shot pour la fin :

Hé hé hé ! C’est tombé en marche !

Cordialement,
Stéphane