Actions de fiabilisation d'une solution domotique

Cet article décrit mon premier pas vers la cible que je me suis fixée qui est d'aboutir à une solution domotique DIY suffisamment fiable pour lui confier la gestion de fonctions clés de mon domicile (sécurité, chauffage, informations fiables ...).


Qu'est-ce que fiabiliser ?


Pour moi fiabiliser consiste à mettre en place des actions qui améliorent la continuité et la qualité de service délivré par les composants matériels et logiciels de la solution. Mais également être capable de redémarrer au plus vite le service en cas de crash et avec une perte minimum de données. J'ajouterai aussi, faciliter autant que possible l'accès au système pour diagnostique et réparation en cas de panne.

Il est possible d'aller très loin dans la sécurisation d'une solution. Il est possible de mettre en place de véritables usines à gaz et de dépenser des fortunes pour s'approcher au plus prêt de ce taux de fiabilité de 100% qui sera toujours une utopie.
Comme dans tous les domaines, ce sont les derniers échelons qui sont les plus difficiles à gravir alors que les premiers demandent peu d'effort.

Pour fiabiliser une solution, il faut commencer par se prémunir des événements qui ont le plus de chance de survenir. Le taux de fiabilité va s’accroître de manière importante et facilement. Par exemple il est très facile de faire en sorte à ce qu'un système résiste à une coupure électrique. Evénement qui a un pourcentage élevé de chance d'arriver. Que ce soit par panne EDF ou tout simplement parce que le matériel à du être débranché pour maintenance. Mais il sera beaucoup plus compliqué de se prémunir contre une bombe atomique ! Evénement qui, espérons le, à un taux de probabilité extrêmement faible.
Fort de cet exemple merveilleusement parlant, je vais commencer par fiabiliser mon système par rapport aux événements les plus probables.


Calculs d'apothicaire



Livrons nous à quelques petites estimations sans prétentions !

Actuellement, dans ma solution domotique, je considère que j'ai au moins un des composant qui n'est pas opérationnel dans la semaine. Et le temps que je "bidouille" pour réparer, on peut considérer que la solution n'est pas fonctionnelle à 100% environ 24h par semaine. Un capteur qui bagote, un reboot qui a fichu le bazar, un composant électronique qui s'est figé et doit être relancé, une bidouille à faire sur le serveur ... Bien que ce soit une estimation grosse maille, je pense que si j'additionne tous ces petits incidents qui malgré tout font que la solution, vue dans son ensemble, n'est pas opérationnelle à 100%, j'arrive bien à 24h.

Sachant que pour un mois de 30 jours il y a 720 heures, cela nous donne un taux de fiabilité d'environ 96,7%.

On pourrait croire que c'est suffisant pour une petite solution domotique d'amateur. Et ce serait le cas sous deux conditions :

  1. Si en cas de panne temporaire la solution redevenait totalement opérationnelle sans intervention. 
  2. Et si la solution domotique ne gérait aucun service essentiels.


Par exemple, un capteur de température qui n’émet plus pendant une heure et qui ensuite se remet à fonctionner cela n'est pas grave. Par contre ce même capteur qui n’émet plus du tout sans qu'il faille le réinitialiser matériellement c'est plus gênant car dans ce cas, tant qu'il n'y a pas intervention humaine, la solution est en mode dégradée. Le taux de fiabilité ne cesse de descendre et dessous d'un certain seuil de fiabilité il n'y a plus aucune solution qui ne soit intéressante. On accepte de devoir insister un peu quelques minutes pour faire démarrer une vieille voiture. Mais une voiture qui refuse systématiquement de démarrer un jour sur deux n'a plus aucun intérêt.
Et si en plus on ajoute une fonction de contrôle à notre capteur, par exemple déclencher le chauffage s'il commence à geler dans la maison, on voit bien que ce taux de 96,7% de fiabilité, qui correspond à 24h sur un mois, n'est plus du tout suffisant.
En 24h le gel a le temps de faire des dégâts sur les tuyaux d'eau de la maison !


Mon ambition :

Pour ma part je compte développer des services à valeur ajoutée et confier à ma solution domotique de lourdes responsabilités ! Donc je ne peux me contenter de 96% de fiabilité.

Je vais chercher dans un premier temps à mettre en place les palliatifs aux événements les plus courants et sécuriser tout ce qui peut l’être sans dépenser énormément d'efforts, ni d'argent.

J'aimerais arriver à un taux mensuel de fiabilité d'environ 99,44%. Soit moins de 4 heures de service en panne ou dégradé sur le mois.

Pour améliorer la fiabilité de me solution je vais agir sur les domaines suivants :


Garantir que la RasPi est installé dans les meilleurs conditions :


  1. Alimentation électrique suffisante.
  2. Boitier de protection contre la poussière.
  3. Système d'alimentation de secours en cas de panne électrique.

Garantir que l'ensemble des composants matériels et logiciels fonctionnent correctement.


Pour cela il faudra :


  1. Rebooter le raspberry tous les jours (récurrence à valider). Ceci va impliquer que l'ensemble des matériels qui sont connectés sur des devices ne changent pas au reboot. Par exemple un équipement sur /dev/ttyUSB0 reste sur le même port USB0 après le reboot. Edit du 05/11/2017 : cette action a été réalisée et décrite dans l'article ICI (http://framboiseaupotager.blogspot.fr/2017/11/lorsquun-equipement-device-usb-est.html).
  2. Garantir que les capteurs portant les fonctions les plus sensibles fonctionnent bien : soit en changeant de capteur, soit en plaçant le capteur de manière à ce que le signal soit mieux reçu.
  3. Prémunir le service d'une corruption du système du à l’usure du système de stockage : déplacer le système d'une carte micro SD vers un disque dur.

Etre capable de relancer le système le plus rapidement possible et en perdant le moins de données possibles en cas de panne ou de corruption.

Pour cela il faudra :


  1. Faire des sauvegardes régulières de la base de données domoticz.
  2. Faire des sauvegardes régulières du système dans sa totalité.
  3. Etre capable de se connecter depuis n'importe ou sur le serveur et de lancer des restaurations de données.


Toutes ces actions de sécurisation feront l'objet d'articles futurs.




Et si cet article ou les autres dans ce blog vous semblent utiles, n'hésitez pas à cliquer sur le lien ci-dessous pour aller sur Amazon ! Sans vous couter quoi que ce soit, cela m'aidera à investir dans de nouveaux matériels que je ne manquerai pas de vous présenter.



Soutenez la blogoculture ...

Vous appréciez les articles frais et vitaminés de ce blog et vous voulez faire un geste pour encourager ce partage, saluer le travail, ou parce y avez trouvé des choses utiles ( et que vous êtes sympa ) ?

... c'est possible et vous avez le choix !
Si vous avez un compte Paypal et quelques euros à offrir sans vous mettre sur la paille, subventionnez la culture domotique à l'ancienne !
Vous ne dépenserez pas un radis de plus en faisant votre achat sur Amazon à partir de ce lien.
Economisez du blé avec Amazon Prime ! Offre d'essais 1 mois gratuit (et renouvelable).
Soyez chou et aidez les petits producteurs de blog à se faire connaitre auprès de vos amis facebook !

Merci

Commentaires