WebSampling 1.0.X : Différence entre versions

De wiki
Aller à : navigation, rechercher

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 861

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 862

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 587

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 608

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 608

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 608

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 608

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 608

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 587

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 608

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 608

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 608

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 608

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 608

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 241

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 242

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 241

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 242

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 954

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 954

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 954

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 954

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 954

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 954

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 954

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 954

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 954

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 954

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 954

Deprecated: assert(): Calling assert() with a string argument is deprecated in /home/sandre/domip/MediaWiki/includes/diff/DairikiDiff.php on line 954
(Client DNS)
(Client DNS)
Ligne 33 : Ligne 33 :
 
* httpclient.c : copie modifiée de tcputils.c afin de pouvoir envoyer des fichiers parsés à l'aide de la fonction sendfile de http.c.
 
* httpclient.c : copie modifiée de tcputils.c afin de pouvoir envoyer des fichiers parsés à l'aide de la fonction sendfile de http.c.
 
=== Client DNS ===
 
=== Client DNS ===
* dns.c:
+
* net/dns.c:
 
** correction deux bugs :
 
** correction deux bugs :
 
*** une variable d'état qui doit être statique
 
*** une variable d'état qui doit être statique

Version du 3 novembre 2011 à 14:32

Attention cette page n'est pas terminée et est en travaux

Le but de cet article est de décrire la conception du logiciel WebSampling utilisé pour la Carte d'Acquisition Web.

V1.0.x

La version 1.0 est conçue à partir du logiciel Modtronix SBC68EC Webserver V3.06. Poremplir les fonction de la Carte d'Acquisition Web, il est nécessaire de lui ajouter les fonctionnalités suivantes :

  • Réception des trames de téléinformation EdF
  • Mise en place d'un client HTTP emettant des requêtes contenant ces trames de téléinformations ainsi que les valeurs de ports analogiques
  • Ajout d'un automate cadençant l'émission de ces requêtes toutes les minutes

Réception des trames de Téléinformation EdF

Pour réaliser cette fonction, il est nécessaire de modifier les fichiers suivants :

  • projdefs.h :
    • passage des tailles de buffer UART Rx/Tx à 32 et 8 octets.
  • appcfg.c :
    • passage du Baudrate par défaut 1200 Bauds.
    • modification du diviseur de l'UART pour 1200 bauds : on diminue la valeur de 1%. Cela revient à paramétrer un baudrate de 1212 bauds. En effet l'UART du PIC s'attend à avoir un bit de stop entier à la fin de chaque octet. Or la sortie téléfinformation EdF n'envoie qu'un seul bit de stop. Ce qui fait que l'UART du PIC rate parfois le front start de l'octet suivant et donc l'octet en entier. Pour remédier à ce problème on augmente la cadence de l'UART du PIC de 1%, cela permet d'être sur que l'échantillonnage du bit de stop est terminée lorsque le front start de l'octet suivant arrive. Cela n'a pas d'influence sur le décodage.
  • serint.c :
    • on ne tient plus compte du Frame Error. En effet la réception était arrêtée puis redémarrée dans ce cas, ce qui n'est pas la méthode préconisée dans la datasheet du PIC. Cette modification est optionnelle.
  • teleinfo.h et teleinfo.c :
    • ajout de ces deux fichiers qui contionnent les définitions et le code nécessaire pour la réception des trames de téléinformation (taille max 170 octets).

Client HTTP

Pour réaliser cette fonction il est nécessaire de modifier les fichiers suivants :

  • projdefs.h :
    • définition de la macro suivante :
      • define HTTP_SERVICE_PORT : valeur définie en EEPROM du service web distant utilisé par la carte pour uploader les données.
    • définition des constantes suivantes :
      • DEFAULT_HTTP_SERVICE_PORT : valeur par défaut de HTTP_SERVICE_PORT.
      • STACK_CLIENT_MODE : directive de compilation qui permet d'inclure la partie client de la stack IP.
      • STACK_USE_DNS : directive de compilation qui permet d'inclure le client DNS.
  • appcfg.h : Mise à jour du mapping EEPROM pour sauvegarder le host name, son IP et le port utilisé.
  • appcfg.c : ajout des valeurs par défaut pour les paramêtres EEPROM ci-dessus.
  • http.c : modification de la fonction sendfile afin que cette derinière puisse être appelée avec pour paramètre un handle de liaison TCP et à la place de l'index de tableau de handle interne au serveur http.
  • httpclient.c : copie modifiée de tcputils.c afin de pouvoir envoyer des fichiers parsés à l'aide de la fonction sendfile de http.c.

Client DNS

  • net/dns.c:
    • correction deux bugs :
      • une variable d'état qui doit être statique
      • le port source udp était nul, c'est contraire au protocole IP. La valeur 1234 est maintenant utilisée.

Automate

  • mxwebsrvr.c : code de l'automate

Commandes Utilisateur

  • cmd.h : definion des commande de modification du host name ('h') et du path de l'URL d'upload ('r')
  • cmd.c : code de traitement pour la modification des paramêtres du serveur http cible :host name, IP, port,path de l'URL.
  • httpexec.h : définition des commande de lecture de des paramêtres du serveur http cible :host name,path de l'URL.
  • httpexec.c :code de lecture de des paramêtres du serveur http cible :host name,path de l'URL.