Jouons un peu : Watchgog : Expérience 2

De GCE Electronics
Révision datée du 20 février 2018 à 17:56 par Fgtoul (discussion | contributions) (Page créée avec « ==Expérience 2 : Comptage, chronométrage et reboot de la box Adsl== '''Prérequis :''' vous devez avoir configuré votre Watchdog, fixé l'intervalle entre deux pings... »)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Aller à la navigation Aller à la recherche

Expérience 2 : Comptage, chronométrage et reboot de la box Adsl

Prérequis : vous devez avoir configuré votre Watchdog, fixé l'intervalle entre deux pings et créé vos Presets (voir plus haut).

Nous voulons observer le nombre de fois que les pings échouent, ainsi que la durée d'un cycle.

Selon la documentation, nous connaissons 2 principes de base

  • le périphérique Watchdog passe à l'état ON lorsque le nombre de tentatives a été atteint et qu'elles se sont toutes soldées par un échec.
  • un intervalle de temps s'applique entre chaque tentative de ping.

Le temps nécessaire pour que le Watchdog passe à l'état ON avec nos réglages est de 1 seconde

Avec nos réglages, 1 ping est émis chaque seconde, nous nous contentons d'1 réponse pour déterminer l'accessibilité du dispositif connecté.
Le périphérique Watchdog est donc susceptible de changer d'état toutes les 1x1 seconde.
Si nous avions réglé un intervalle de 3 secondes et 2 tentatives, notre Watchdog aurait un cycle de 6 secondes.

Si le réseau local est coupé pendant quelques minutes, le périphérique passera ON dès que le périphérique ne sera plus joignable, pour ne repasser OFF qu'au rétablissement du réseau.

Sur cette constatation, il nous est impossible de connaître le nombre total de tentatives réalisées, ni la durée de l'indisponibilité du réseau. Si nous voulons mettre en place un système automatique de surveillance et de dépannage de la disponibilité du réseau, nous aurons besoin de ces informations.


Le Chronomètre

Il nous faut un chronomètre pour déterminer la durée de l'indisponibilité du réseau.

Nous connaissons l'intervalle de temps entre chaque ping, ce même chrono nous servira également à "découper" le cycle du Watchdog en tentatives de Ping afin de les compter. Nous allons utiliser une sortie viruelle, que nous ferons "clignoter" toutes les secondes (Ta=0, Tb=1s). Ce sera notre métronome.

Dans le menu Périphériques, allons paramétrer notre sortie virttuelle :

Ping 20

Pensez à sauvegarder (bouton en bas de l'écran).

Il faut un scénario pour faire "clignoter" la sortie virtuelle. Pour des raisons que nous verrons plus tard, créons ce scénario en scène 5 ou supérieure.

Ping 21

Si la sortie virtuelle 1 n'est pas active, nous l'activons. Grâce au paramètre Tb=1 seconde, la sortie virtuelle repasse automatiquement à l'état OFF au bout de 1 seconde.

C'est cet évènement que nous utiliserons comme déclencheur dans nos scénarii à venir.

Le scénario ci-dessus réactive sans cesse la sortie virtuelle. Nous avons notre métronome.

Notre chronomètre sera créé à l'aide d'un compteur qui sera incrémenté au rythme du métronome.

Les compteurs

Nous allons mettre 3 compteurs en place :

  • le 1er pour chronomètre
  • le second pour compter les Pings en échec.
  • le troisième pour compter les Pings aboutis

Dans le menu Périphériques, initialisons nos compteurs :

ping 22


Pings en échec

Nous savons que le périphérique Watchdog passe à l'état ON pour un Preset lorsque toutes les tentatives de pings ont été vouées à l'échec. Nos réglages nous permettent de savoir qu'une tentative a lieu chaque seconde. Il suffit donc de compter les secondes pour connaitre le nombre de tentatives.


Ecrivons le scénario : Nous allons utiliser notre métronome. Chacun de ses passages à l'état OFF incrémentera le compteur de Pings en échec. Nous n'oublierons pas d'incrémenter notre chronomètre.


ping 23c

Vous pouvez constater que nous utilisons l'état OFF de notre métronome. Ce scénario devra donc obligatoirement être placé avant la scène qui réactive la sortie virtuelle n°1, sinon, il ne sera jamais exécuté.

Nous le placerons en scène 1.

Pings aboutis

Nous savons que le périphérique Watchdog passe à l'état OFF pour un Preset lorsque toutes les tentatives de pings ont abouti. Comme ci-dessus, nous allons compter les secondes pendant l'état OFF du périphérique Watchdog pour incrémenter le nombre de pings, mais n'incrémenterons pas le chronomètre. Il faudra utiliser le bloc "NON" afin d'inverser la logique de l'évènement basé sur l'état du périphérique Watchdog. Ce scénario devra également être placé avant la scène de réactivation de la sortie virtuelle n°1.

Nous le placerons en scène 2.


Ecrivons le scénario : Chaque passage à OFF du métronome incrémentera le compteur de Pings aboutis. Nous n'oublierons pas d'incrémenter notre chronomètre.

ping 24

Lorsque le périphérique Watchdog change d'état, il faut penser à remettre le chronomètre et les compteurs de pings à zéro.

Ecrivons la scène 3 :

ping 25

L'affichage

Nous avons 3 compteurs à afficher. Nous allons créer un widget pour chacun d'eux.

Sur le tableau de bord, ajoutez un Widget du type "Compteur" et sélectionnons le compteur n°2 (Pings OK)

Ping 26

Faisons de même pour le compteur 3 (Pings KO) et le compteur 1 (Chrono)

Nous obtenons cet ensemble :

Ping 27

Sur la capture d'écran vous constatez que le comptage des pings vers mon smartphone a commencé automatiquement, et s'incrémente à chaque seconde.

Comme nous l'avons vu plus haut, le périphérique Watchdog fonctionne dès que l'intervalle est réglé avec une valeur différente de zéro.

Les Presets étant créés, l'IPX800 a lancé les pings automatiquement.

Si je coupe le wifi sur mon smartphone, voici ce que j'obtiens :

Ping 28

Le compteur de pings en échec s'incrémente à chaque seconde, de même pour le chronomètre.

Exercice

Coupez et rétablissez le wifi sur votre smartphone, observez l'évolution des compteurs.