{"id":37423,"date":"2019-10-31T22:17:33","date_gmt":"2019-10-31T19:17:33","guid":{"rendered":"https:\/\/prohoster.info\/blog\/shiotiny-ventilyatsiya-vlazhnogo-pomeshheniya-proekt-primer\/"},"modified":"2019-10-31T22:17:33","modified_gmt":"2019-10-31T19:17:33","slug":"shiotiny-ventilyatsiya-vlazhnogo-pomeshheniya-proekt-primer","status":"publish","type":"post","link":"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/shiotiny-ventilyatsiya-vlazhnogo-pomeshheniya-proekt-primer","title":{"rendered":"ShIoTiny : ventilation d'une pi\u00e8ce humide (projet-exemple)","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"ShIoTiny : ventilation d&#039;une pi\u00e8ce humide (projet-exemple)\" src=\"\/wp-content\/uploads\/2019\/08\/a6e9c8239a90c713bd1b3b21891cbc13.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<h4>Les points principaux ou de quoi parle cet article<\/h4>\n<p>\nNous poursuivons notre s\u00e9rie d'articles sur <b>ShIoTiny<\/b> \u2014 un contr\u00f4leur programmable visuellement bas\u00e9 sur la puce <b>ESP8266<\/b>.<\/p>\n<p>Cet article explique, \u00e0 travers un projet de gestion de la ventilation dans une salle de bain ou un autre espace \u00e0 forte humidit\u00e9, comment construire un programme pour <b>ShIoTiny<\/b>.<\/p>\n<h4>Les articles pr\u00e9c\u00e9dents de la s\u00e9rie.<\/h4>\n<p>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/463107\/\">ShIoTiny : petite automatisation, Internet des objets ou \u00ab six mois avant les vacances \u00bb<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/463285\/\">ShIoTiny : n\u0153uds, liaisons et \u00e9v\u00e9nements ou caract\u00e9ristiques du dessin de programmes<\/a><\/noindex><\/p>\n<h4>Liens<\/h4>\n<p>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/shiotiny\/ShIoTinyBin\">Firmware binaire, sch\u00e9ma du contr\u00f4leur et documentation<\/a><\/noindex> <br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/shiotiny\/ShIoTinyBin\/blob\/master\/doc\/ShIoT-esp8266-01_obzor.pdf\">Instructions et description des modules<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"http:\/\/esppower.ru\/mqtt-android\/\">Configuration du courtier MQTT cloudmqtt.com<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/393277\/\">Panneau de contr\u00f4le MQTT dashboard pour Android<\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h4>Introduction<\/h4>\n<p>\nLa compr\u00e9hension ne se fait pas sans exp\u00e9rience. C'est une v\u00e9rit\u00e9 \u00e9prouv\u00e9e par le temps et les g\u00e9n\u00e9rations. Il n'y a donc rien de mieux pour acqu\u00e9rir des comp\u00e9tences pratiques que d'essayer de faire quelque chose par soi-m\u00eame. Les exemples qui montrent ce qu'il est possible de faire et ce qu'il vaut mieux \u00e9viter de tenter seront tr\u00e8s utiles ici. Les erreurs des autres, bien s\u00fbr, ne peuvent pas emp\u00eacher la survenue de nos propres erreurs, mais peuvent aider \u00e0 en r\u00e9duire le nombre.<\/p>\n<p>Les questions et lettres des lecteurs des articles pr\u00e9c\u00e9dents m'ont pouss\u00e9 \u00e0 r\u00e9aliser un petit projet exemple de gestion de la ventilation, afin de montrer comment fonctionnent les modules ShIoTiny.<\/p>\n<p>L'id\u00e9e initiale, sur laquelle le contr\u00f4leur est bas\u00e9 <b>ShIoTiny<\/b> \u2014 la station de pompage et d'irrigation \u2014 ne conviendra pas \u00e0 tout le monde et ne sera pas int\u00e9ressante pour tous. Par cons\u00e9quent, j'ai choisi un syst\u00e8me de gestion de ventilation, compr\u00e9hensible pour tous et utile pour beaucoup, comme exemple.<\/p>\n<p>Je tiens \u00e0 dire que l'id\u00e9e du projet n'est pas la mienne, mais <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/masterkit\/blog\/385281\/\">je l'ai tir\u00e9e d'ici<\/a><\/noindex> et ensuite adapt\u00e9e \u00e0 <b>ShIoTiny<\/b>.<\/p>\n<h4>Tout d'abord, comprends ce que tu veux<\/h4>\n<p>\nLe processus d'am\u00e9lioration est infini. Et c'est cette caract\u00e9ristique qui a ruin\u00e9 de nombreuses bonnes id\u00e9es et projets. Le d\u00e9veloppeur, au lieu de sortir quelque chose de fonctionnel, m\u00eame imparfait, continuait \u00e0 l'am\u00e9liorer. Et il a perfectionn\u00e9 jusqu'\u00e0 ce que les concurrents le d\u00e9passent en lan\u00e7ant leur propre solution, m\u00eame si elle \u00e9tait imparfaite (et souvent franchement m\u00e9diocre), mais fonctionnelle.<\/p>\n<p>Il est donc tr\u00e8s important de savoir o\u00f9 mettre le point dans le projet. Autrement dit, il faut d\u00e9finir ce que nous voulons obtenir \u00e0 la fin du projet \u00e0 partir de ce que nous avons au d\u00e9but. En fran\u00e7ais, pour un document qui est \u00e9labor\u00e9 justement pour d\u00e9crire le chemin de cr\u00e9ation de quelque chose, il existe un joli mot court et concis : \u00ab plan \u00bb, que des traducteurs mentalement limit\u00e9s et des gestionnaires d\u00e9fectueux ont r\u00e9cemment commenc\u00e9 \u00e0 appeler \u00ab feuille de route \u00bb. Enfin, peu importe.<\/p>\n<p>Notre plan sera le suivant. Supposons qu'il y ait une pi\u00e8ce dont l'humidit\u00e9 peut parfois augmenter consid\u00e9rablement. Par exemple, une salle de bain ou une cuisine. L'humidit\u00e9 est d\u00e9sagr\u00e9able et le moyen de la combattre est aussi ancien que le monde : a\u00e9rer la pi\u00e8ce. Il existe de nombreuses m\u00e9thodes d'a\u00e9ration. Mais, nous allons faire fi des m\u00e9thodes exotiques et d\u00e9su\u00e8tes comme des esclaves avec des \u00e9ventails et nous allons nous concentrer sur un ventilateur ordinaire. Les ventilateurs sont moins chers et plus faciles \u00e0 trouver par chez nous.<\/p>\n<p>En un mot, nous voulons contr\u00f4ler le ventilateur : l'allumer et, par cons\u00e9quent, l'\u00e9teindre. Plus pr\u00e9cis\u00e9ment, nous voulons qu'il s'allume et s'\u00e9teigne automatiquement lorsque cela est n\u00e9cessaire.<\/p>\n<p>Il reste \u00e0 d\u00e9terminer : dans quelles conditions le ventilateur doit s'allumer et dans quelles conditions il doit s'\u00e9teindre.<\/p>\n<p>Tout est \u00e9vident ici : si l'humidit\u00e9 d\u00e9passe un certain seuil, le ventilateur s'allume et aspire l'air ; lorsque l'humidit\u00e9 revient \u00e0 la normale, le ventilateur s'\u00e9teint.<\/p>\n<p>Le lecteur attentif remarquera imm\u00e9diatement le mot \u00ab donn\u00e9e \u00bb. Par qui est-elle donn\u00e9e ? Comment est-elle donn\u00e9e ?<\/p>\n<p>Le seuil d'humidit\u00e9 peut \u00eatre d\u00e9fini de plusieurs mani\u00e8res. Nous examinerons deux d'entre elles : la premi\u00e8re, \u00e0 l'aide d'une r\u00e9sistance variable, et la seconde, via le r\u00e9seau \u00e0 travers le protocole MQTT. Chacune de ces m\u00e9thodes a des avantages et des inconv\u00e9nients, qui seront examin\u00e9s plus loin.<\/p>\n<p>Pour ceux qui n'ont pas compris, je vais expliquer que \u00ab seuil d'humidit\u00e9 \u00bb est un niveau d'humidit\u00e9 au-del\u00e0 duquel le ventilateur doit \u00eatre allum\u00e9.<\/p>\n<p>La question suivante : donner \u00e0 l'utilisateur la possibilit\u00e9 d'activer le ventilateur directement ? C'est-\u00e0-dire, ind\u00e9pendamment du niveau d'humidit\u00e9, sur simple pression d'un bouton ? Nous allons pr\u00e9voir cette possibilit\u00e9. En effet, le ventilateur peut \u00eatre n\u00e9cessaire non seulement en cas d'humidit\u00e9 \u00e9lev\u00e9e, mais aussi pour \u00e9vacuer, par exemple, une odeur d\u00e9sagr\u00e9able appel\u00e9e commun\u00e9ment \u00ab puanteur \u00bb.<\/p>\n<p>Donc, nous avons compris ce que nous voulons et m\u00eame un peu comment cela fonctionnera. R\u00e9sumons bri\u00e8vement toutes les fonctions de notre syst\u00e8me de gestion de la ventilation :<\/p>\n<ul>\n<li> r\u00e9glage du seuil d'humidit\u00e9 (deux options) ;<\/li>\n<li> mesure du niveau d'humidit\u00e9 ;<\/li>\n<li> activation automatique du ventilateur ;<\/li>\n<li> d\u00e9sactivation automatique du ventilateur ;<\/li>\n<li> activation manuelle du ventilateur (sur pression d'un bouton).<\/li>\n<\/ul>\n<p>\nAinsi, le plan est clair. Nous devons impl\u00e9menter toutes les fonctions mentionn\u00e9es ci-dessus dans notre programme. Sur la base de ce \u00ab plan \u00bb, nous allons agir. Pour commencer, dessinons le sch\u00e9ma structurel de l'appareil.<\/p>\n<h4>Sch\u00e9ma structurel de l'appareil<\/h4>\n<p>\nEn fait, nous aurons deux sch\u00e9mas. Le premier - pour le cas o\u00f9 le seuil d'humidit\u00e9 est d\u00e9fini par une r\u00e9sistance variable. Le second sch\u00e9ma - pour le cas o\u00f9 le seuil d'humidit\u00e9 est d\u00e9fini via le r\u00e9seau par le protocole MQTT.<\/p>\n<p>Mais comme ces sch\u00e9mas ne diff\u00e9reront que par un seul \u00e9l\u00e9ment - la r\u00e9sistance variable \u00ab r\u00e9glage du seuil d'humidit\u00e9 \u00bb, nous allons dessiner seulement un sch\u00e9ma structurel. Bien s\u00fbr, un sch\u00e9ma structurel conforme \u00e0 la norme GOST a un aspect diff\u00e9rent. Mais nous ne nous adressons pas aux ing\u00e9nieurs chevronn\u00e9s, mais \u00e0 la jeune g\u00e9n\u00e9ration. Donc, la clart\u00e9 est plus importante.<\/p>\n<p><img decoding=\"async\" alt=\"ShIoTiny : ventilation d&#039;une pi\u00e8ce humide (projet-exemple)\" src=\"\/wp-content\/uploads\/2019\/08\/519f40496a8e459c22d69e7f0eaeee1d.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAlors, que voyons-nous sur le dessin ? Le ventilateur est connect\u00e9 \u00e0 un relais <b>Relay1<\/b> du contr\u00f4leur <b>ShIoTiny<\/b>. Je souligne que le ventilateur est un appareil qui fonctionne sous haute tension. Donc, si quelqu'un doit en construire un soi-m\u00eame - faites preuve de prudence. Autrement dit, avant de mettre vos doigts ou des appareils de mesure dans le circuit, d\u00e9branchez au moins le ventilateur. Et une autre remarque. Si votre ventilateur est plus puissant que <b>250W<\/b>, ne l'activez pas directement \u00e0 <b>ShIoTiny<\/b> moins - uniquement via un d\u00e9marreur.<\/p>\n<p>Nous avons compris le fonctionnement du ventilateur. Maintenant, le bouton \u00ab activation manuelle \u00bb du ventilateur. Il est connect\u00e9 \u00e0 l'entr\u00e9e <b>Input1<\/b>. Ici, il n'y a pas grand-chose \u00e0 expliquer.<\/p>\n<p>Capteur de temp\u00e9rature et d'humidit\u00e9 <b>DHT-11<\/b> ou <b>DHT-22<\/b> ou leurs analogues). Une entr\u00e9e sp\u00e9ciale sur le contr\u00f4leur est pr\u00e9vue pour sa connexion. <b>ShIoTiny<\/b>. Comme on le voit sur l'illustration, connecter ce type de capteur ne pose \u00e9galement aucun probl\u00e8me.<\/p>\n<p>Et enfin, la r\u00e9sistance variable qui d\u00e9finit le seuil d'humidit\u00e9. Plus pr\u00e9cis\u00e9ment, un diviseur compos\u00e9 de r\u00e9sistances variable et fixe. Il n'y a pas de probl\u00e8me pour le connecter, mais je pr\u00e9cise que l'ADC int\u00e9gr\u00e9 est <b>ESP8266<\/b> pr\u00e9vu pour un maximum de 1 Volt. C'est pourquoi un diviseur de tension d'environ 5 fois est n\u00e9cessaire.<\/p>\n<p>Et je rappelle encore une fois que ce diviseur n'est pas n\u00e9cessaire si le seuil d'humidit\u00e9 est d\u00e9fini via le r\u00e9seau utilisant le protocole MQTT.<\/p>\n<p>Commen\u00e7ons \u00e0 \u00e9tablir l'algorithme de fonctionnement de l'appareil dans l'\u00e9diteur ElDraw ShIoTiny. Pour savoir comment y acc\u00e9der, vous pouvez consulter les articles pr\u00e9c\u00e9dents ou le manuel, dont le lien est au d\u00e9but de l'article.<\/p>\n<h4>Option premi\u00e8re, la plus simple<\/h4>\n<p>\nCommen\u00e7ons par ce qui est simple : activer le relais <b>Relay1<\/b> lorsque le seuil d'humidit\u00e9 est d\u00e9pass\u00e9 pendant un temps d\u00e9fini.<\/p>\n<p><img decoding=\"async\" alt=\"ShIoTiny : ventilation d&#039;une pi\u00e8ce humide (projet-exemple)\" src=\"\/wp-content\/uploads\/2019\/08\/e9f8d30627cf7cdbebccf863c2b2f808.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nComme nous le voyons, rien de compliqu\u00e9 : seulement quatre n\u0153uds, sans compter les n\u0153uds de commentaires. <b>DHT11<\/b> \u2014 c'est justement le capteur de temp\u00e9rature et d'humidit\u00e9 (vous pouvez remplacer par <b>DHT22<\/b>).<\/p>\n<p>Constante <b>CONST<\/b> \u2014 le seuil d'humidit\u00e9, en pourcentage.<\/p>\n<p>Le comparateur est un n\u0153ud qui compare deux nombres et produit 1 \u00e0 la sortie si la condition donn\u00e9e est remplie et 0 si elle ne l'est pas.<\/p>\n<p>Dans notre cas, la condition sera <b>A&gt;B<\/b>, o\u00f9 <b>A<\/b> \u2014 le niveau d'humidit\u00e9 mesur\u00e9 par le capteur, et <b>B<\/b> \u2014 le seuil d'humidit\u00e9 pr\u00e9c\u00e9dent.<\/p>\n<p>D\u00e8s que le niveau d'humidit\u00e9 mesur\u00e9 (<b>A<\/b>) d\u00e9passera le seuil d'humidit\u00e9 (<b>B<\/b>), alors \u00e0 la sortie du comparateur <b>A&gt;B<\/b> appara\u00eetra 1 et le relais s'activera. Inversement, d\u00e8s que le niveau d'humidit\u00e9 redeviendra normal (c'est-\u00e0-dire <b>A&lt;=B<\/b>), alors \u00e0 la sortie du comparateur <b>A&gt;B<\/b> appara\u00eetra 0 et le relais se d\u00e9sactivera.<\/p>\n<p>Tout est clair ? Pour ceux qui ne comprennent pas bien, relisez encore une fois ou jetez un \u0153il \u00e0 la description du fonctionnement des n\u0153uds dans le manuel.<\/p>\n<p>Je souligne que les donn\u00e9es du capteur <b>DHT11<\/b> s'actualisent environ une fois toutes les 10 secondes. Par cons\u00e9quent, le relais ne peut pas s'activer et se d\u00e9sactiver plus d'une fois toutes les 10 secondes.<\/p>\n<p>Tout irait bien, mais nous aimerions d\u00e9finir le seuil d'humidit\u00e9 \u00e0 l'aide d'un potentiom\u00e8tre. Rien de plus simple !<\/p>\n<p><img decoding=\"async\" alt=\"ShIoTiny : ventilation d&#039;une pi\u00e8ce humide (projet-exemple)\" src=\"\/wp-content\/uploads\/2019\/08\/3042bda4fe16e3fbad2d3f46f0beccb4.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nRempla\u00e7ons simplement le n\u0153ud constant par un n\u0153ud ADC. C'est en effet \u00e0 l'ADC que nous avons connect\u00e9 le diviseur de tension avec le potentiom\u00e8tre.<\/p>\n<p>La tension \u00e0 l'entr\u00e9e de l'ADC varie de 0 \u00e0 1 Volt. En revanche, l'humidit\u00e9 \u00e0 la sortie du capteur varie de 0 \u00e0 100 %. Comment les comparons-nous ? C'est simple. Le module ADC <b>ShIoTiny<\/b> ne se contente pas de mesurer la tension \u00e0 l'entr\u00e9e, mais il peut aussi <i><b>la mettre \u00e0 l'\u00e9chelle et la d\u00e9caler.<\/b><\/i>.<\/p>\n<p>Ainsi, la valeur \u00e0 la sortie du module ADC1 sera <b>X<\/b>, calcul\u00e9e selon la formule <\/p>\n<p><img decoding=\"async\" alt=\"ShIoTiny : ventilation d&#039;une pi\u00e8ce humide (projet-exemple)\" src=\"\/wp-content\/uploads\/2019\/08\/d01bc0ff4e6962252fced695d3894d32.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>, o\u00f9 <img decoding=\"async\" alt=\"ShIoTiny : ventilation d&#039;une pi\u00e8ce humide (projet-exemple)\" src=\"\/wp-content\/uploads\/2019\/08\/ac0bf727edb4c759d12268376ec6ad9b.jpeg\" style=\"display:block;margin: 0 auto;\" \/> \u2014 tension \u00e0 l'entr\u00e9e de l'ADC (de 0 \u00e0 1 V); <b>k<\/b> \u2014 plage (plage ADC) et <b>b<\/b>\u2014 d\u00e9calage (d\u00e9calage ADC). Donc, si nous d\u00e9finissons <b>k=100<\/b> et <b>b=0<\/b>, alors, lorsque la tension <img decoding=\"async\" alt=\"ShIoTiny : ventilation d&#039;une pi\u00e8ce humide (projet-exemple)\" src=\"\/wp-content\/uploads\/2019\/08\/0afbeb2e49d5a107bc54d6bbd87ba23c.jpeg\" style=\"display:block;margin: 0 auto;\" \/> varie entre 0 et 1, la valeur <b>X<\/b> \u00e0 la sortie du module ADC variera entre 0 et 100. Cela signifie qu'elle est num\u00e9riquement \u00e9gale \u00e0 la plage d'humidit\u00e9 allant de 0 \u00e0 100 %.<\/p>\n<p>En d'autres termes, en tournant le moteur de la r\u00e9sistance variable, on peut d\u00e9finir un niveau seuil d'humidit\u00e9 de 0 \u00e0 100. Le seul inconv\u00e9nient, c'est qu'il n'y a aucun dispositif d'affichage. Mais en pratique, si on fait six divisions sur le moteur de r\u00e9sistance variable \u00e0 0 %, 20 %, 40 %, 60 %, 80 %, 100 %) \u2014 cela suffit pour r\u00e9gler le niveau seuil d'humidit\u00e9.<\/p>\n<p>Comment d\u00e9finir les coefficients <b>k<\/b> \u2014 plage (plage ADC) et <b>b<\/b>\u2014 d\u00e9calage (d\u00e9calage ADC) ? C'est aussi simple qu'un clin d'\u0153il ! Cliquez avec le bouton de la souris sur le module <b>ADC1<\/b> et une fen\u00eatre de r\u00e9glage appara\u00eetra. Vous pouvez y d\u00e9finir tout ce dont vous avez besoin. Pour notre cas, cela sera une fen\u00eatre comme sur l'image.<\/p>\n<p><img decoding=\"async\" alt=\"ShIoTiny : ventilation d&#039;une pi\u00e8ce humide (projet-exemple)\" src=\"\/wp-content\/uploads\/2019\/08\/ff81992b4fe236f5de6d17ca6bf8187c.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAinsi, nous avons une solution de travail tr\u00e8s simple. Commen\u00e7ons \u00e0 l'am\u00e9liorer.<br \/>\nAu fait, cette solution simple a un avantage \u2014 elle n'a pas besoin d'Internet. Elle est compl\u00e8tement autonome.<\/p>\n<h4>Deuxi\u00e8me option, ajoutons un bouton.<\/h4>\n<p>\nTout fonctionne et tout le monde est content. Mais voil\u00e0 le probl\u00e8me, nous ne pouvons pas activer la ventilation manuellement. Nous avons d\u00e9j\u00e0 convenu que nous connecterions un bouton \u00e0 l'entr\u00e9e <b>Input1<\/b> qui allumerait et \u00e9teindrait le ventilateur manuellement, sans tenir compte du capteur d'humidit\u00e9.<br \/>\nIl est temps de traiter ce bouton dans notre sch\u00e9ma\/programme.<\/p>\n<p><img decoding=\"async\" alt=\"ShIoTiny : ventilation d&#039;une pi\u00e8ce humide (projet-exemple)\" src=\"\/wp-content\/uploads\/2019\/08\/673c274a5be680ce7c3ef1f9572f93fa.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nLe bloc de traitement de la pression sur le bouton est d\u00e9limit\u00e9 par une ligne orange. Il s'agit d'un compteur de pressions sur le bouton qui se r\u00e9initialise \u00e0 z\u00e9ro lorsque la valeur \u00e0 sa sortie d\u00e9passe un. <b>CT<\/b>).<\/p>\n<p>Tout fonctionne ici de mani\u00e8re tout aussi simple que pr\u00e9c\u00e9demment : le compteur <b>CT<\/b> compte les pressions sur le bouton connect\u00e9 \u00e0 l'entr\u00e9e. <b>Input1<\/b>Autrement dit, la valeur \u00e0 la sortie de ce compteur augmente de 1 \u00e0 chaque pression sur le bouton.<\/p>\n<p>D\u00e8s que cette valeur devient \u00e9gale \u00e0 deux (c'est-\u00e0-dire plus que 1), la sortie du comparateur <b>A&gt;B<\/b> Il appara\u00eetra 1. Et ce 1 remettra le compteur \u00e0 z\u00e9ro <b>CT<\/b> Cela signifie le comparateur, le plus bas dans le sch\u00e9ma !<\/p>\n<p>Ainsi, notre bouton a deux \u00e9tats \u2014 0 et 1. Si nous avions besoin de plus d'\u00e9tats (3, 4 ou plus) \u2014 il nous suffirait de changer la constante <b>CONST<\/b> de 1 \u00e0 une autre valeur.<\/p>\n<p>Nous avons donc deux conditions pour activer le ventilateur : d\u00e9passer un certain niveau d'humidit\u00e9 et appuyer une fois sur le bouton. Si l'une des conditions est remplie, le ventilateur s'active. Il fonctionnera jusqu'\u00e0 ce que le bouton soit \u00e0 nouveau press\u00e9 <b>Et<\/b> ou que le niveau d'humidit\u00e9 revienne \u00e0 la normale.<\/p>\n<p>Bien s\u00fbr, on pourrait compliquer davantage l'algorithme, mais nous ne le ferons pas \u2014 nous laisserons de la place \u00e0 la cr\u00e9ativit\u00e9 pour ceux qui le souhaitent.<\/p>\n<h4>Troisi\u00e8me option, nous nous connectons \u00e0 Internet<\/h4>\n<p>\nTout ce que nous avons d\u00e9crit est tout \u00e0 fait fonctionnel. Mais qu'en est-il de l'apparence ? Apr\u00e8s tout, n'importe quel hipster hacker \u00e0 l'acn\u00e9 se moquera de celui qui tourne un bouton et appuie sur un bouton, au lieu de contr\u00f4ler depuis un smartphone ! Tourner un bouton \u2014 ce n'est \u00ab pas \u00e0 la mode \u00bb. Mais faire glisser son doigt sur un smartphone, jusqu'\u00e0 se faire saigner \u2014 voil\u00e0 le summum des d\u00e9sirs d'un hacker hipster (je n'ai jamais pu diff\u00e9rencier tous leurs types \u2014 donc si je fais erreur, excusez-moi).<\/p>\n<p>Mais soyons indulgents envers ces personnes. La gestion via Internet a aussi des avantages r\u00e9els. Premi\u00e8rement, c'est visuel. Il existe de nombreuses applications pour toutes les plateformes, qui permettent de cr\u00e9er une interface de contr\u00f4le tout \u00e0 fait utilisable avec quelques clics sur notre contr\u00f4leur de type Carlsson. Deuxi\u00e8mement, cela permet d'observer \u00e0 distance l'\u00e9tat de l'humidit\u00e9 dans la pi\u00e8ce. Et troisi\u00e8mement, on peut voir non seulement ce que fait le ventilateur \u2014 s'il tourne ou non, mais aussi quel niveau d'humidit\u00e9 a \u00e9t\u00e9 d\u00e9fini. Et il peut \u00eatre vu \u2014 si le ventilateur a \u00e9t\u00e9 activ\u00e9 automatiquement ou manuellement. En gros, tout ce que vous souhaitez.<\/p>\n<p>Bien s\u00fbr, pour un ventilateur, c'est beaucoup d'attention. Mais c'est juste un exemple.<\/p>\n<p>Ainsi, pour la connexion \u00e0 Internet, nous allons utiliser la technologie <b>MQTT<\/b> et son protocole \u00e9ponyme.<br \/>\nPour utiliser cette technologie, nous avons besoin d'un <b>broker MQTT<\/b>. C'est un serveur sp\u00e9cial qui g\u00e8re les <b>clients MQTT<\/b>, par exemple <b>ShIoTIny<\/b> et votre smartphone.<\/p>\n<p>Le principe de la technologie <b>MQTT<\/b> est que n'importe quel client publie sur le broker MQTT (serveur) des donn\u00e9es arbitraires sous un nom sp\u00e9cifique (appel\u00e9 <b>topic<\/b> dans la terminologie <b>MQTT<\/b>). D'autres clients peuvent s'abonner \u00e0 des donn\u00e9es arbitraires par leur nom (<b>topic<\/b>) et recevoir des donn\u00e9es nouvellement publi\u00e9es. En d'autres termes, tout l'\u00e9change de donn\u00e9es se fait selon le principe client-broker-client.<\/p>\n<p>Je <i><b>je ne vais pas<\/b><\/i> insister sur les d\u00e9tails. Il existe une multitude d'articles et de tutoriels sur le fonctionnement de <b>MQTT<\/b> et sur les programmes disponibles pour cr\u00e9er des panneaux de contr\u00f4le. Je vais juste montrer comment nous pouvons accepter et publier des donn\u00e9es via <b>ShIoTiny<\/b>.<\/p>\n<p>En tant que broker, j'ai utilis\u00e9 <noindex><a rel=\"nofollow\" href=\"https:\/\/www.cloudmqtt.com\/\">www.cloudmqtt.com<\/a><\/noindex>, mais le principe est le m\u00eame partout.<\/p>\n<p>Donc, consid\u00e9rons que vous vous \u00eates enregistr\u00e9 sur <b>un broker MQTT<\/b>. En g\u00e9n\u00e9ral, le broker vous fournira (ou exigera que vous conceviez) un nom d'utilisateur et un mot de passe (pour l'autorisation), ainsi qu'un port pour la connexion. Connecter <b>ShIoTiny<\/b> sur <b>au broker MQTT<\/b> peut se faire de deux mani\u00e8res : connexion classique et via <b>TLS<\/b> (<b>SSL<\/b>).<\/p>\n<p>Tous ces param\u00e8tres dans <b>ShIoTiny<\/b> sont saisis dans l'onglet <b>R\u00e9seau<\/b>, section <b>Connexion MQTT au serveur<\/b>.<\/p>\n<p><img decoding=\"async\" alt=\"ShIoTiny : ventilation d&#039;une pi\u00e8ce humide (projet-exemple)\" src=\"\/wp-content\/uploads\/2019\/08\/3a16cbd07a64428568e7c03f178e87ef.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSi votre <b>broker MQTT<\/b> ne n\u00e9cessite pas d'autorisation, ne saisissez pas de nom d'utilisateur et de mot de passe (laissez ces champs vides).<\/p>\n<p>Param\u00e8tre <b>Pr\u00e9fixe de sujet MQTT<\/b> n\u00e9cessite une explication distincte.<\/p>\n<p>Le pr\u00e9fixe des param\u00e8tres MQTT est une cha\u00eene ajout\u00e9e au nom du sujet (<b>topic<\/b>) lors de la publication et de l'abonnement sur le broker MQTT. Pour d\u00e9finir <b>le pr\u00e9fixe MQTT<\/b> pour votre contr\u00f4leur, il suffit de le saisir dans le champ d'entr\u00e9e \u00ab<b>Pr\u00e9fixe de sujet MQTT<\/b>\u00bb (\u00ab<b>Pr\u00e9fixe de sujet MQTT<\/b>\u00bb). Le pr\u00e9fixe commence toujours par un slash (<b>\u00ab\/\u00bb<\/b>) ! Si vous n'entretez pas de slash dans le champ d'entr\u00e9e, il sera ajout\u00e9 automatiquement. Les caract\u00e8res <b>\u00ab#\u00bb<\/b> et <b>\u00ab+\u00bb<\/b>ne peuvent pas \u00eatre utilis\u00e9s dans le pr\u00e9fixe. Il n'y a pas d'autres restrictions.<\/p>\n<p>Par exemple, si vous publiez le param\u00e8tre \u00ab<b>statut<\/b>\u00bb (ou vous y abonnez), et que votre pr\u00e9fixe est d\u00e9fini comme \u00ab<b>\/shiotiny\/<\/b>\u00bb, alors sur le broker, ce param\u00e8tre sera publi\u00e9 sous le nom \u00ab<b>\/shiotiny\/status<\/b>\u00bb. Si vous avez d\u00e9fini un pr\u00e9fixe vide, tous les param\u00e8tres sur le broker commenceront par un slash (<b>\u00ab\/\u00bb<\/b>): \u00ab<b>statut<\/b>\u00bb sera publi\u00e9 comme \u00ab<b>\/status<\/b>\u00bb.<\/p>\n<p>Donc, consid\u00e9rons que vous vous \u00eates enregistr\u00e9 sur <b>un broker MQTT<\/b> et que vous avez obtenu un nom d'utilisateur, un mot de passe et un port. Ensuite, vous avez saisi ces param\u00e8tres dans l'onglet <b>R\u00e9seau<\/b>, section <b>Connexion MQTT au serveur<\/b> du contr\u00f4leur <b>ShIoTiny<\/b>.<\/p>\n<p>Supposons que le pr\u00e9fixe soit d\u00e9fini sur \u00ab<b>\/room\/<\/b>\u00bb.<\/p>\n<p>Commen\u00e7ons par publier l'\u00e9tat de tous les param\u00e8tres cl\u00e9s : relais <b>Realay1<\/b>, \u00e9tat de l'activation manuelle, \u00e9tat de l'activation automatique et, enfin, les niveaux d'humidit\u00e9 seuil et actuel. Et en bonus \u2014 la temp\u00e9rature ambiante. Comment faire cela, voir l'illustration.<\/p>\n<p><img decoding=\"async\" alt=\"ShIoTiny : ventilation d&#039;une pi\u00e8ce humide (projet-exemple)\" src=\"\/wp-content\/uploads\/2019\/08\/ed016ae37bb0cb1197e2e4fd649a7c4f.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nComme nous le voyons, la diff\u00e9rence avec l'option pr\u00e9c\u00e9dente est seulement les n\u0153uds \u00ab<b>Publication MQTT<\/b>\u00bb. En tenant compte du pr\u00e9fixe, les param\u00e8tres suivants sont publi\u00e9s :<br \/>\n<img decoding=\"async\" alt=\"ShIoTiny : ventilation d&#039;une pi\u00e8ce humide (projet-exemple)\" src=\"\/wp-content\/uploads\/2019\/08\/34b67dd1932f30de777a680802f71c59.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nComme nous le voyons, tout l'\u00e9tat du syst\u00e8me est \u00e0 port\u00e9e de main !<\/p>\n<p>Mais nous voulons non seulement voir, mais aussi g\u00e9rer. Que faire ? C'est tr\u00e8s simple. Nous allons nous passer de l'installation d'un seuil d'humidit\u00e9 \u00e0 l'aide de <b>ADC<\/b> et d'un potentiom\u00e8tre variable, et nous allons d\u00e9finir ce seuil d'humidit\u00e9 directement depuis <b>MQTT<\/b> notre smartphone !<\/p>\n<p><img decoding=\"async\" alt=\"ShIoTiny : ventilation d&#039;une pi\u00e8ce humide (projet-exemple)\" src=\"\/wp-content\/uploads\/2019\/08\/c32d9ec2c1a082e0a1ead0b04526eba5.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nNous supprimons le n\u0153ud ADC du sch\u00e9ma et y ajoutons trois nouveaux n\u0153uds : <b>FLASH store<\/b>, <b>FLASH restore<\/b> et <b>MQTT describe<\/b>.<\/p>\n<p>La fonction du n\u0153ud <b>MQTT describe<\/b> est \u00e9vidente : il re\u00e7oit le param\u00e8tre <b>\/room\/trigHset<\/b> (seuil d'humidit\u00e9) depuis <b>le courtier MQTT<\/b>. Mais que fait-il avec les donn\u00e9es par la suite ? Il les transmet simplement au n\u0153ud <b>FLASH store<\/b>, qui, \u00e0 son tour, enregistre ces donn\u00e9es dans la m\u00e9moire non volatile sous le nom de <b>trigH<\/b>. Apr\u00e8s cela, le n\u0153ud <b>FLASH restore<\/b> lit les donn\u00e9es depuis la m\u00e9moire non volatile sous le nom de <b>trigH<\/b> et ce qui se passe ensuite, nous le savons d\u00e9j\u00e0.<\/p>\n<p>Pourquoi tant de complications ? Pourquoi ne pas simplement transmettre les donn\u00e9es re\u00e7ues \u00e0 l'entr\u00e9e du comparateur ? <\/p>\n<p>Comme disait le camarade S. Holmes \u2014 <i>c'est \u00e9l\u00e9mentaire<\/i>! Personne ne garantit qu'apr\u00e8s avoir allum\u00e9 votre appareil, il se connectera \u00e0 <b>au broker MQTT<\/b>. Et il faut mesurer l'humidit\u00e9. Et il faut allumer le ventilateur. Mais sans information sur le seuil d'humidit\u00e9, c'est impossible ! C'est pourquoi notre appareil, lors de son allumage, extrait le seuil d'humidit\u00e9 pr\u00e9c\u00e9demment m\u00e9moris\u00e9 de la m\u00e9moire non volatile et l'utilise pour prendre des d\u00e9cisions. Et lorsque la connexion avec <b>le courtier MQTT<\/b> sera \u00e9tablie et que quelqu'un publiera une nouvelle valeur <b>\/room\/trigHset<\/b>, alors cette nouvelle valeur sera utilis\u00e9e.<\/p>\n<p>Ensuite, vous pouvez imaginer tout ce que vous voulez. Par exemple, en plus de l'humidit\u00e9, introduire \u00e9galement le suivi de la temp\u00e9rature. Ou ajouter une gestion \u00ab intelligente \u00bb de l'\u00e9clairage (nous avons encore deux relais et deux entr\u00e9es non utilis\u00e9es). Tout est entre vos mains !<\/p>\n<h4>Conclusion<\/h4>\n<p>\nAinsi, nous avons examin\u00e9 quelques exemples de la mise en \u0153uvre d'un contr\u00f4leur tr\u00e8s simple bas\u00e9 sur ShIoTiny. Cela pourrait \u00eatre utile \u00e0 quelqu'un.<\/p>\n<p>Comme toujours, suggestions, souhaits, questions, fautes d'orthographe et autres \u2014 \u00e0 l'adresse e-mail : <b>shiotiny@yandex.ru<\/b><br \/>\n<br \/>Source : <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/464485\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0442\u0435\u0437\u0438\u0441\u044b \u0438\u043b\u0438 \u043e \u0447\u0435\u043c \u044d\u0442\u0430 \u0441\u0442\u0430\u0442\u044c\u044f \u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u043c \u0446\u0438\u043a\u043b \u0441\u0442\u0430\u0442\u0435\u0439 \u043e ShIoTiny \u2014 \u0432\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u0443\u0435\u043c\u043e\u043c \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0435 \u043d\u0430 \u0431\u0430\u0437\u0435 \u0447\u0438\u043f\u0430 ESP8266. \u0412 \u044d\u0442\u043e\u0442 \u0441\u0442\u0430\u0442\u044c\u0435 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u043d\u043e \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0446\u0438\u0438 \u0432 \u0432\u0430\u043d\u043d\u043e\u0439 \u043a\u043e\u043c\u043d\u0430\u0442\u0435 \u0438\u043b\u0438 \u0434\u0440\u0443\u0433\u043e\u043c \u043f\u043e\u043c\u0435\u0449\u0435\u043d\u0438\u0438 \u0441 \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u043d\u043e\u0439 \u0432\u043b\u0430\u0436\u043d\u043e\u0441\u0442\u044c\u044e \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u0441\u0442\u0440\u043e\u0438\u0442\u0441\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0434\u043b\u044f ShIoTiny. \u041f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0435 \u0441\u0442\u0430\u0442\u044c\u0438 \u0441\u0435\u0440\u0438\u0438. ShIoTiny: \u043c\u0430\u043b\u0430\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044f, \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u0432\u0435\u0449\u0435\u0439 \u0438\u043b\u0438 \u00ab\u0437\u0430 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":28079,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-37423","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0442\u0435\u0437\u0438\u0441\u044b \u0438\u043b\u0438 \u043e \u0447\u0435\u043c \u044d\u0442\u0430.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/shiotiny-ventilyatsiya-vlazhnogo-pomeshheniya-proekt-primer\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47ShIoTiny: \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0446\u0438\u044f \u0432\u043b\u0430\u0436\u043d\u043e\u0433\u043e \u043f\u043e\u043c\u0435\u0449\u0435\u043d\u0438\u044f (\u043f\u0440\u043e\u0435\u043a\u0442-\u043f\u0440\u0438\u043c\u0435\u0440) | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0442\u0435\u0437\u0438\u0441\u044b \u0438\u043b\u0438 \u043e \u0447\u0435\u043c \u044d\u0442\u0430.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/shiotiny-ventilyatsiya-vlazhnogo-pomeshheniya-proekt-primer\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:17:33+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:17:33+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47ShIoTiny : ventilation d'une pi\u00e8ce humide (projet-exemple) | ProHoster","description":"Principales th\u00e8ses ou de quoi il s'agit.","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/shiotiny-ventilyatsiya-vlazhnogo-pomeshheniya-proekt-primer","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47ShIoTiny: \u0432\u0435\u043d\u0442\u0438\u043b\u044f\u0446\u0438\u044f \u0432\u043b\u0430\u0436\u043d\u043e\u0433\u043e \u043f\u043e\u043c\u0435\u0449\u0435\u043d\u0438\u044f (\u043f\u0440\u043e\u0435\u043a\u0442-\u043f\u0440\u0438\u043c\u0435\u0440) | ProHoster","og:description":"\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0442\u0435\u0437\u0438\u0441\u044b \u0438\u043b\u0438 \u043e \u0447\u0435\u043c \u044d\u0442\u0430.","og:url":"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/shiotiny-ventilyatsiya-vlazhnogo-pomeshheniya-proekt-primer","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:17:33+00:00","article:modified_time":"2019-10-31T19:17:33+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"37423","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 17:45:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:27:24","updated":"2026-01-23 17:45:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/37423","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=37423"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/37423\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media\/28079"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=37423"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=37423"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=37423"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}