Kui kasutasite oma Raspberry Pi Pico W-d väga pikka aega, on tõenäoline, et lõpuks märkate, et teie programm enam ei tööta.
Üks põhjus, miks programmid pika aja jooksul ebaõnnestuvad, on Wi-Fi töökindlus. Kui teie WiFi muutub ebausaldusväärseks, on Pico W esimene instinkt kokku kukkuda.
Vaatame, kuidas saaksime Pico W MicroPythonis vastupidavamaks muuta.
Mis põhjustab Pico W Wi-Fi töökindlust?
Teie WiFi-ühendus katkeb mitu korda päevas. Seda on telefonis või arvutis raske tajuda, kuna operatsioonisüsteemid ja tarkvara on selle WiFi-võrkude garanteeritud puuduse põhjuseks.
Pico W-ga jookseb lihtne skript, mis ühendab ja toob andmeid, kokku, kui teie Pico W ühenduse kaotab. Ainus lahendus on see kõvasti lähtestada, tõmmates voolu.
Kui teie projekt nõuab andmete logimist tundide kaupa, ei taha te pidevalt katkestusi jälgida.
Vigade käsitlemine on võti tagamaks, et teie programm suudab halbade ühenduste kaudu ellu jääda.
Kas WiFi-signaali tugevuse parandamine aitab?
Võib-olla kaalute kas peaksite kasutama võrkvõrku signaali tugevuse suurendamiseks. Jah, see aitab, kuid mitte nii palju, et saaksite vältida stsenaariume, kus ühendus katkeb.
Ühes katses paigutasime Pico W maja teisele korrusele ja teise Pico W Wi-Fi ruuteri kõrvale. Tulemuste erinevus seisneb selles, et teisel korrusel asuv seade katkes varem kui ruuterile lähemal asuv Pico W. Viimasel oli lõpuks ka ühendus katkenud, mida peegeldavad andmete kogumise lüngad.
Kahjuks, kuigi signaali tugevuse parandamine vähendab probleemi, ei lahenda see seda. Nii et vaatame mõnda meetodit vastupidavama koodi kirjutamiseks.
Tarkvara ühendamise ja lahtiühendamise meetod
Kui teie projekt nõuab ainult ühesuunalist suhtlust, sobib see meetod selle jaoks suurepäraselt. Mõned näited võiksid olla temperatuurilogerid, mis peavad töötama pika aja jooksul, kuid logivad andmeid ainult aeg-ajalt.
See lahendab krahhide probleemi, kui teie Pico W arvab, et see on ühendatud, kuid kui see üritab andmeid lõpp-punkti saata, mõistab see, et see on võrguühenduseta, ja seejärel jookseb kokku.
Selle meetodi võtmeks on protseduur, kus teie programm töötab lõpmatu tsüklina. Selles tsüklis on funktsioon, mis käivitatakse pärast teatud aja möödumist. See funktsioon ühendab Pico W Wi-Fi-ga, teeb oma töö (nt saadab andmed serverisse) ja katkestab seejärel ühenduse.
Tarkvara kõva lähtestamine
MicroPythoni kõva lähtestamise koodi kasutamine aitab teil tagada, et teie Pico W töötab isegi siis, kui te ei sekku. Vaadake meie sissejuhatus MicroPythonisse kui vajate abi, käivitage see käsk:
importida masin
masin.reset()
Oletame, et südaööl une ajal katkeb ühendus. Kui teil pole tarkvara kõvasti lähtestamist, peaksite programmi hommikul käsitsi lähtestama. See võib põhjustada andmete logimise kaheksatunnise kadumise.
Kui teil on tarkvara kõva lähtestamine, mille olete sisestanud oma veakäsitluse koodiplokki, lähtestab Pico W ise.
Selle negatiivne külg on see, et kõval lähtestamisel kaob teie programmi olek ja kui programm jookseb kokku, siis tarkvara kõva lähtestamine ei käivitu.
Kasutage Pico W sisseehitatud valvekoera taimerit
Riistvaravalve taimer on põhimõtteliselt seade, mis lähtestab teie Pico W rikke korral. Watchdog taimerid on pöördloendustaimerid. Kui nad saavad signaali enne, kui pöördloendus jõuab nulli, lähtestatakse pöördloendus. Kui aga loendur jõuab nulli, lähtestab see Pico W.
MicroPythonis on põhikood järgmine:
alates masin importida WDT
wdt = WDT(timeout=1000) #timeout on ms-des
wdt.sööda() #lähtestabtagasiarvestus
Võite külastada MicroPythoni WDT dokumentatsioon rohkem teada saada ja ka Pico ametlikud SDK dokumendid C++ juhendamiseks.
Muutke oma Pico W ühendus pommikindlaks
Et anda oma Pico W-le parim võimalus WiFi-ühendusega lõputult töötada, peate tegema mitut asja.
Esiteks veenduge, et Wi-Fi-ühendus oleks piisavalt tugev. Kuigi kood võib mõningaid WiFi-ga seotud probleeme leevendada, võib see olenevalt kasutatavast meetodist mõnikord põhjustada programmi oleku või andmepunktide kadumise.
Teiseks peab programmil olema mõni meetod katkenud Wi-Fi-ühendustest taastumiseks, et saaksite teenust jätkata.
Kui need sammud on paigas, võite olla kindel oma Pico W-ga usaldusväärsemas ühenduses.