1 Introduction
Cette page décrit l'activité 'DEVICES-CONTROLER' faisant partie du domaine
'INFORMATION SYSTEM'.
Il s'agit d'une couche logicielle de communication avec les différents modules de l'expérience.
2 Diagramme de flux
Figure:
DIAGRAMME DE FLUX
![\begin{figure}\centering
\includeImage[scale=0.7]{DF}
\end{figure}](page-img1.png) |
2.1 Niveau n+1
L'activité se divise 2 traitements et une activité :
2.2 Événements
L'activité réagit via les évènements suivants :
3 Installation ENX
La technologie ENX (cf http://enx.in2p3.fr/)
permettrait d'implémenter cette couche logicielle.
ENX has been developed as an interface to access and to control electronic device.
It permits some basic function like : write, read and dump.
To be easily manageable and customizable, we define three parts in this application:
1. Core: It's the main program.
It decodes the user command and gives the right order to the right drivers.
2. Drivers: It's the interface to the specific electronic hardware.
It's the only code we needs to rewrite when we want test a new hardware.
3. User interface (UI): It's the user way to test the hardware.
We purpose a basic low level console interface and a graphical JAVA interface.
ENX provides a standardized output protocol to ease development of dedicated
User Interface.
Remarque: pour les tests il existe une interface via la console mais aussi un GUI.
ENX est développé et maintenu par Nicolas Dosme et
Eric Legay
au CSNSM.
3.1 Installation
# apt-get install libaws-bin libaws-dev libaws2.5
# su - enx
$ mkdir ~/tools && cd $!
$ wget http://enx.in2p3.fr/files/enx/log4ada.tgz
$ wget http://enx.in2p3.fr/files/enx/print.tgz
$ wget http://enx.in2p3.fr/files/enx/xml_ez_out.tgz
$ find . -name '*.tgz' -exec tar -zxf {} \;
$ mkdir ~/svn && cd $!
$ svn co http://csngwinfo.in2p3.fr:2401/enx
fichier /.bash_profile
# tools needed for ENX configuration
export ADA_PROJECT_PATH=~/tools
3.2 Configuration
$ cd ~/svn/enx/Trunk
$ ./configure
No ada compiler found.
# apt-get install gnat-4.3
ada2wsdl not found.
# apt-get install libaws-bin
print.gpr not found. Install the enx needed tools.
$ export ADA_PROJECT_PATH=~/tools
3.3 Make
$ cd ~/svn/enx/Trunk
$ make
$ make install
3.4 Bugtracking
S'inscrire ici
puis prévenir éric par mail.
4 Lancement du serveur ENX
Au choix, on peut lancer le serveur ENX :
- en mode console
- en mode WSDL + console
4.1 Console
$ ~/ENX-2.4/i686/console
4.2 Service Web
$ ~/ENX-2.4/i686/server_web_enx
Lancer l'interface depuis une poste connecté via le réseau.
# apt-get install sun-java6-jre
$ java -jar svn/enx/EnxDoom/Trunk/EnxDoom.jar
Avec le client java, se connecter à cette adresse : http://lpnws5210:5555.
5 Prise en main d'ENX
On utilise le driver DRIVER_DEBUG.
- énumération des drivers chargés en mémoire :
ENX > !list driver
- DRIVER_DEBUG
- création d'un nouveau device utilisant le drivers DRIVER_DEBUG :
ENX > !create deviceDebug 0 0xFF DRIVER_DEBUG
ENX > !list device
- deviceDebug
- utilisation :
ENX > mm deviceDebug 0 0x1234
ENX > md deviceDebug 0
284 INFO [main_task_0810D0D0] ENX.Console - 0x00000000 -> 0x00001234
|