28 KiB
Tõrkeotsingu juhend
See juhend aitab teil lahendada tavalisi probleeme IoT for Beginners õppekava kasutamisel. Probleemid on kategooriate kaupa mugavaks navigeerimiseks organiseeritud.
Sisukord
- Paigaldusprobleemid
- Riistvaraprobleemid
- Ühenduvusprobleemid
- Andurite ja täiturite probleemid
- Arenduskeskkonna probleemid
- Töökindluse probleemid
- Tavalised veateated
- Abi saamine
Paigaldusprobleemid
Python'i paigaldus
Probleem: Python'i versioon on liiga vana
Viga: On vaja Python 3.6 või uuemat
Lahendus:
- Laadige alla uusim Python 3 aadressilt python.org
- Windowsi paigalduse ajal märkige "Add Python to PATH"
- Kontrollige paigaldust:
python3 --version
Probleem: Mitme Python'i versiooni konfliktid
Sümptomid: Käivitub vale Python'i versioon, paketid installeeruvad valesse kohta
Lahendus:
- Windows: Kasutage
py -3asemelpythonPython 3 käivitamiseks - macOS/Linux: Kasutage
python3asemelpython - Alati looge ja kasutage projektide jaoks virtuaalkeskkondi
Probleem: pip käsku ei leita
Viga: 'pip' ei ole sisemine ega väline käsk
Lahendus:
- Proovige
pip3asemelpip - Või kasutage
python -m pipvõipython3 -m pip - Veenduge, et Python on PATH-is (paigaldage Python uuesti ja märkige vastav valik)
VS Code ja laiendused
Probleem: Pylance laiendus ei tööta
Sümptomid: Puudub Python IntelliSense, koodi lõpetamine või tüübikontroll
Lahendus:
- Avage VS Code käsupalet (
Ctrl+Shift+PvõiCmd+Shift+P) - Käivitage "Python: Select Interpreter"
- Valige õige Python tõlgendaja (virtuaalkeskkond, kui kasutatakse)
- Laadige VS Code aken uuesti
Probleem: VS Code ei tuvasta virtuaalkeskkonda
Sümptomid: Vali Python tõlgendaja valitud
Lahendus:
- Veenduge, et olete virtuaalkeskkonna terminalis aktiveerinud
- Avage käsupalet ja käivitage "Python: Select Interpreter"
- Valige
.venvkaustast tõlgendaja - Kontrollige olekuribal (vasakus allosas) õige Python versiooni kuvamist
PlatformIO (Wio Terminal)
Probleem: PlatformIO paigaldus ebaõnnestub
Viga: Mitmesugused vead PlatformIO paigalduse ajal
Lahendus:
- Veenduge, et VS Code on ajakohane
- Paigaldage esmalt C/C++ laiendus
- Taaskäivitage VS Code pärast PlatformIO paigaldust
- Kontrollige internetiühendust (PlatformIO laadib suuri faile)
Probleem: PlatformIO ei tuvasta plaati
Sümptomid: Ei saa koodi Wio Terminalile üles laadida
Lahendus:
- Proovige teist USB kaablit (mõned kaablid on vaid laadimiseks)
- Kontrollige seadmehaldurit (Windows) või
ls /dev/tty*(macOS/Linux) - Paigaldage või uuendage USB draivereid
- Proovige teist USB pesa
- Lükake Wio Terminali toitenupp kaks korda kiiresti alla, et minna bootloader režiimi
Probleem: PlatformIO kompileerimise vead
Viga: fatal error: Arduino.h: File not found
Lahendus:
- Kustutage projekti
.piokaust - Käivitage käsupaletilt "PlatformIO: Rebuild"
- Kontrollige
platformio.iniõigesti seadistatud plaadi puhul:[env:seeed_wio_terminal] platform = atmelsam board = seeed_wio_terminal framework = arduino
Grove teegid
Probleem: Grove teegi import ebaõnnestub Raspberry Pi-s
Viga: ModuleNotFoundError: No module named 'grove'
Lahendus:
- Paigaldage Grove teegid uuesti:
cd ~ git clone https://github.com/Seeed-Studio/grove.py cd grove.py sudo pip3 install . - Kui kasutate virtuaalkeskkonda, võib olla vaja installida globaalselt või kopeerida teegid
- Kontrollige, et I2C on lubatud:
sudo raspi-config nonint do_i2c 0
Probleem: Grove andurit ei tuvastata
Viga: IOError: [Errno 121] Remote I/O error
Lahendus:
- Kontrollige füüsilisi ühendusi (veenduge, et Grove kaabel on korralikult ühendatud)
- Veenduge, et andur on ühendatud õigele pordile (analoog, digitaalne, I2C, UART)
- Käivitage
i2cdetect -y 1, et näha, kas seade on I2C bussil nähtav - Proovige teist Grove kaablit
- Veenduge, et Grove Base Hat on korrektselt ühendatud Raspberry Pi GPIO jalgadele
Riistvaraprobleemid
Raspberry Pi
Probleem: Raspberry Pi ei käivitu
Sümptomid: Puudub ekraanipilt, ei vilgu LED, või kuvatakse vikerkaare kuva
Lahendus:
- Kontrollige toiteallikat: Kasutage ametlikku 5V 3A USB-C toiteallikat Pi 4 jaoks
- SD-kaardi probleemid:
- Vormindage SD-kaart ja paigaldage Raspberry Pi OS uuesti
- Proovige teist SD-kaarti (kasutage soovitatud tootjaid)
- Veenduge, et SD-kaart on korralikult sisestatud
- Kontrollige HDMI ühendust: Proovige mõlemat HDMI porti Pi 4-l, kasutage porti, mis on toite lähedal
Probleem: Ei saa SSH-ga Raspberry Pi-le ühendada
Sümptomid: Ühendus keelatud või aegumine
Lahendus:
- Lülitage SSH sisse:
- Raspberry Pi Imager'i abil koguge SSH seadeid täpsemates valikutes
- Või looge boot partitsioonis tühi fail nimega
ssh(ilma laiendita)
- Leidke Pi IP aadress:
- Kontrollige ruuteri ühendatud seadmeid
- Kasutage
ping raspberrypi.local(kui mDNS töötab) - Kasutage võrguskannimise tööriistu nagu
nmapvõi Angry IP Scanner
- Kontrollige võrku:
- Veenduge, et Pi on samas võrgus arvutiga
- Proovige Ethernet ühendust WiFi asemel
- Kontrollige kasutajanime/parooli (vaikimisi: kasutaja
pi, paroolraspberry)
Probleem: Grove Base Hat ei tunnustata
Sümptomid: Andurid ei tööta, I2C vead
Lahendus:
- Veenduge, et Base Hat on korrektselt ühendatud kõigile GPIO jalgadele
- Kontrollige, kas Pi või Base Hatil on painutatud jalgasid
- Lülitage I2C liides sisse:
sudo raspi-config nonint do_i2c 0 sudo reboot - Kontrollige I2C tööd:
i2cdetect -y 1
Probleem: Raspberry Pi töötab aeglaselt
Sümptomid: Libisev kasutajaliides, aeglane reageerimine
Lahendus:
- Kontrollige SD-kaardi kiirust (kasutage Class 10 või kiiremat, või SSD USB kaudu)
- Vabastage kettaruumi:
df -h, kustutage mittevajalikud failid - Vähendage GPU mälu
raspi-configabil, kui kaamera/ekraani palju ei kasutata - Sulgege mittevajalikud rakendused
- Mõelge Pi 3 või vanema asemel Pi 4 peale, mis on rohkem RAM-iga
Wio Terminal
Probleem: Wio Terminali ekraan jääb mustaks
Sümptomid: Ekraanil ei kuvata pärast koodi üleslaadimist midagi
Lahendus:
- Kontrollige, kas kood initsialiseerib ekraani (TFT_eSPI teek)
- Uuendage Wio Terminali püsivara aadressilt Seeed Wiki
- Lisage ekraani initsialiseerimise kood:
#include <TFT_eSPI.h> TFT_eSPI tft; tft.begin(); tft.fillScreen(TFT_BLACK); - Proovige laadida näidisprogramm PlatformIO-st riistvara testimiseks
Probleem: Wio Terminali WiFi ei tööta
Sümptomid: Ei saa WiFi-ga ühendust, võrguvead
Lahendus:
- Uuendage WiFi püsivara: Järgige Wio Terminal WiFi püsivara uuendamise juhendit
- Kontrollige WiFi sisselogimist: Veenduge, et SSID ja parool on õiged
- WiFi sagedus: Wio Terminal toetab ainult 2.4GHz WiFi-d (mitte 5GHz)
- Signaali tugevus: Liikuge ruuteri lähedale
- Ruuteri sätted: Mõned ettevõtte/WPA-Enterprise võrgud ei pruugi töötada
Probleem: Wio Terminali arvutis ei tunta ära
Sümptomid: USB seadet ei tunnustata
Lahendus:
- Proovige teist USB kaablit: Kasutage andmekaablit, mitte ainult laadimiskaablit
- Mine bootloader režiimi: Lükake toitenupp kiiresti kaks korda alla
- Sinine LED vilgub, seade ilmub seadmehalduris nimega "Arduino"
- Paigaldage draiverid (Windows):
- Laadige alla ja paigaldage Seeed USB draiver
- Proovige teist USB porti: Vältige USB keskusi, kasutage otsest ühendust
- Uuendage süsteemi USB draivereid
Probleem: Wio Terminali andurid ei tööta
Sümptomid: Grove andurid ei loe andmeid
Lahendus:
- Kontrollige Grove kaablite ühendusi
- Veenduge, et kasutate õiget Grove porti (vasak või parem)
- Lisage õige teek andurile
- Kontrollige anduri toitevajadusi
- Testige andurit teegist pärit näidiskoodiga
Virtuaalseade (CounterFit)
Probleem: CounterFit rakendus ei käivitu
Viga: Mitmesugused Python vead CounterFit käivitamisel
Lahendus:
- Veenduge, et virtuaalkeskkond on aktiveeritud
- Installige/paigaldage CounterFit uuesti:
pip install CounterFit - Kontrollige, kas port 5000 on vaba:
- Windows:
netstat -ano | findstr :5000 - macOS/Linux:
lsof -i :5000
- Windows:
- Tapke porti 5000 kasutav protsess või kasutage teist porti:
counterfit --port 5001
Probleem: Ei saa CounterFitiga koodist ühendust
Viga: Ühendus keelatud või aegumine
Lahendus:
- Veenduge, et CounterFit töötab: Avage brauser aadressil
http://127.0.0.1:5000 - Kontrollige, et koodi ühendus URL vastab CounterFit aadressile
- Veenduge, et tulemüür ühendust ei blokeeri
- Proovige taaskäivitada nii CounterFit rakendus kui ka kood
Probleem: Andurid ei ilmu CounterFit UI-sse
Sümptomid: Loodud andurid ei kuvata kasutajaliideses
Lahendus:
- Looge andurid CounterFit kasutajaliideses enne koodi käivitamist
- Värskendage brauseri lehte
- Kontrollige, et anduri tüüp vastab koodis eeldatule
- Tühjendage brauseri vahemälu
Ühenduvusprobleemid
WiFi ühendus
Probleem: Seade ei saa WiFi-ga ühendust
Sümptomid: Ühenduse aegumine, autentimine ebaõnnestus
Lahendus:
- Kontrollige SSID ja parooli: Veenduge, et andmed on õiged
- WiFi sagedus: Enamik IoT seadmeid toetab ainult 2.4GHz (mitte 5GHz)
- Ruuteri sätted:
- Lülitage AP isolatsioon välja, kui see on lubatud
- Kasutage WPA2-PSK turvalisust (vältige WPA3, WEP või avatud võrke)
- Veenduge, et DHCP on sisse lülitatud
- Peidetud võrgud: Kui SSID on peidetud, pean selle seadistama käsitsi
- Signaali tugevus: Liigutage seade lähemale ruuterile
- Segajad: Teised seadmed, mikrolaineahi või seinad võivad häirida
Probleem: WiFi ühendus katkeb sageli
Sümptomid: Katkendlik ühendus
Lahendus:
- Kontrollige ruuteri stabiilsust, mõelge taaskäivitamisele
- Uuendage seadme püsivara
- Kasutage staatilist IP-d DHCP asemel
- Vähendage kaugust ruuterist või lisage WiFi kordusvahend
- Kontrollige teiste seadmete segamist
- Veenduge, et toiteallikas on piisav (eriti Raspberry Pi puhul)
Pilveteenused
Probleem: Ei saa ühendust Azure IoT Hub-iga
Viga: Autentimine ebaõnnestus, ühendus keelatud
Lahendus:
- Kontrollige mandaate:
- Kontrollige ühendusstringi õigsust
- Veenduge, et seotud stringis ei ole lisatühikuid ega reavahetusi
- Kontrollige seadme registreerimist: Seade peab olema registreeritud IoT Hubis
- Tulemüür/proxy: Lubage väljaminev MQTT (port 8883) või HTTPS (port 443)
- IoT Hub'i piirkond: Veenduge, et IoT Hub töötab ja ei asu teises piirkonnas, mis põhjustab viivitust
- Kvoodi piirangud: Kontrollige, kas tasuta teenusepiirangud on ületatud
- Testige ühendust:
az iot hub device-identity show-connection-string --hub-name YourIoTHub --device-id YourDevice
Probleem: Azure Functions ei käivitu
Sümptomid: Sõnumeid saadetakse, kuid funktsioon ei käivitu
Lahendus:
- Kontrollige, et Function App töötab (ei ole peatatud)
- Kinnitage ühendusstring Function App seadetes
- Kontrollige funktsiooni logisid Azure Portaalis
- Veenduge, et Event Hub ühilduv lõpp-punkt on korrektselt seadistatud
- Kontrollige, et sõnumi formaat vastab funktsiooni ootustele
- Kontrollige Function App teenuseplaani (tarbimine vs. pühendatud)
MQTT
Probleem: MQTT ühendus ebaõnnestub
Viga: Ühendus keelatud, autentimine ebaõnnestus
Lahendus:
- Vahendaja aadress: Kontrolli, kas vahendaja URL/IP on õige
- Port: Kontrolli pordinumbrit (1883 krüpteerimata jaoks, 8883 TLS-i jaoks)
- Autentimine: Kontrolli kasutajanime/parooli, kui nõutud
- TLS/SSL: Veendu, et sertifikaadid on kehtivad ja usaldusväärsed
- Tulemüür: Kontrolli, et port pole blokeeritud
- Testi MQTT kliendiga: Kasuta MQTT Explorer’i või mosquitto_pub/sub testimiseks
Probleem: MQTT sõnumeid ei saa
Sümptomid: Sõnumid on avaldatud, kuid tellijad neid ei saa
Lahendus:
- Teemade nimed: Kontrolli, et tellija teema vastab täpselt avaldaja teemale
- QoS tase: Proovi QoS 1 või 2 asemel 0
- Wildcards: Kontrolli, et teema wildcardid on korralikult kasutatud (
+ühe taseme jaoks,#mitme taseme jaoks) - Hoitud sõnumid: Avaldaja saab seada retain-lipu, et hoida viimast sõnumit
- Ühenduse ajastus: Veendu, et tellija ühendub enne sõnumite avaldamist
Andurite ja täiturmehhanismide probleemid
Grove andurid
Probleem: Andur tagastab vale väärtusi
Sümptomid: Loeväärtused on 0, -1 või mõistmatud väärtused
Lahendus:
- Kontrolli ühendusi: Veendu, et andur on korralikult ühendatud
- Õige port: Kontrolli, et andur on õiges porditüübis:
- Analoogsensorid → Analoogpordid (A0, A2, A4)
- Digitaalsensorid → Digitaalsed pordid (D5, D16, D18 jne)
- I2C andurid → I2C pordid
- Kalibreerimine: Mõned andurid vajavad kalibreerimist (mulla niiskus, valgus)
- Toite väljalülitus: Ühenda andur lahti ja uuesti
- Anduri andmeleht: Kontrolli anduri spetsifikatsioone ja nõudeid
Probleem: Kapatsiivne mullaniiskuse andur näitab alati märga
Sümptomid: Andur näitab kõrget niiskust isegi kuival ajal
Lahendus:
- Kalibreerimine vajalik: Mullaniiskuse andurid vajavad kalibreerimist:
- Loe väärtus õhus (kuiv baasväärtus)
- Loe väärtus vees (märk baasväärtus)
- Kaardista loetud väärtused nende vahele
- Kontrolli anduri katet: Niiskuseandurid võivad degradeeruda, kui kate on kahjustatud
- Paigutus: Veendu, et andur on mullas täielikult sees
Probleem: Temperatuuri/niiskuse anduri lugemised on valed
Sümptomid: DHT11/DHT22 näitavad vale temperatuuri või niiskust
Lahendus:
- Anduri asukoht: Väldi otsest päikesevalgust, soojusallikaid või õhuvoolu
- Soojendus aeg: Lase anduril pärast sisselülitamist 2 sekundit soojeneda enne lugemist
- Lugemissagedus: DHT andurid vajavad lugemise vahel aega (vähemalt 2 sekundit)
- Kontrolli kondensatsiooni: See võib lugemisi mõjutada
- Anduri kvaliteet: DHT11 on vähem täpne kui DHT22
Kaamera
Probleem: Kaamerat Raspberry Pi-s ei tuvastata
Viga: mmal: mmal_vc_component_create: failed to create component 'vc.ril.camera'
Lahendus:
- Luba kaamera liides:
Mine Interface Options → Camera → Enablesudo raspi-config - Kontrolli lintkaablit: Veendu, et kaamerakaabel on õigesti ühendatud
- Sinine pool Pi Zero USB portide poole
- Sinine pool eemale USB portidest Pi 4 puhul
- Uuenda püsivara:
sudo apt update sudo apt full-upgrade sudo reboot - Testi kaamerat:
raspistill -o test.jpg
Probleem: Kaamera pildid on kehva kvaliteediga
Sümptomid: Udused, tumedad või pleekinud pildid
Lahendus:
- Fookus: Eemalda objektiivilt kaitsekile, reguleeri fookust, kui võimalik
- Valgustus: Veendu, et on piisav valgustus
- Kaamera seaded: Kohanda säritust, ISO-d, valge tasakaalu koodi sees
- Stabiilsus: Hoia kaamerat paigal, vajadusel kasuta statiivi
- Resolutsioon: Ära ületa kaamera maksimaalset resolutsiooni
Mikrofon ja kõlar
Probleem: Helisisend/väljund puudub
Sümptomid: Mikrofon ei salvesta, kõlar ei mängi heli
Lahendus:
- Kontrolli ühendusi: Veendu, et heliseadmed on õigesti ühendatud
- Testi riistvara:
- Kõlar:
speaker-test -t wav -c 2 - Mikrofon:
arecord -lseadmeloend,arecord test.wavsalvestamiseks
- Kõlar:
- Helitugevuse sätted: Kontrolli ja reguleeri helitugevust:
alsamixer - Vali heliseade: Määra koodis õige heliseade
- Draiveri probleemid: Uuenda ALSA-d või paigalda helidraiverid uuesti
Probleem: ReSpeaker hat ei tööta
Sümptomid: Heliseadet ei tuvastata
Lahendus:
- Paigalda draiverid:
git clone https://github.com/HinTak/seeed-voicecard cd seeed-voicecard sudo ./install.sh sudo reboot - Kontrolli paigaldust:
arecord -lpeaks loetlema ReSpeakeri - Uuenda püsivara: Mõned Pi OS versioonid vajavad draiveriuuendust
- Kontrolli ühendust: Veendu, et hat on korralikult GPIO külge ühendatud
Arenduskeskkonna probleemid
VS Code
Probleem: Terminali virtuaalkeskkond ei aktiveeru automaatselt
Sümptomid: Terminal avaneb, kuid venv ei aktiveeru
Lahendus:
- Määra Python interpreteerija: Command Palette → "Python: Select Interpreter" → vali venv
- Taaskäivita VS Code pärast interpreteerija valimist
- Kontrolli seadistusi: Lisa
settings.jsonfaili:"python.terminal.activateEnvironment": true
Probleem: Kood ei käivitu seadmes
Sümptomid: Kood jookseb, kuid seadmes ei juhtu midagi
Lahendus:
- Veendu, et kood on salvestatud (kontrolli faili vahelehte punkti)
- Kontrolli, milline Python jookseb:
which pythonvõiwhere python - Wio Terminali puhul: Veendu, et kood on PlatformIO kaudu üles laaditud (klõpsa upload nuppu)
- Raspberry Pi puhul: Logi SSH-ga sisse Pi’sse ja käivita kood sealt
- Vaata väljundakent vigade jaoks
Probleem: IntelliSense ei kuva teekide funktsioone
Sümptomid: Automaattäide puudub imporditud moodulitele
Lahendus:
- Veendu, et teek on installitud praeguses keskkonnas
- Laadi VS Code aken uuesti
- Kontrolli, et Python interpreteerija on õige
- Paigalda olemasolevad tüübistubid:
pip install types-<library-name>
Python virtuaalkeskkonnad
Probleem: Virtuaalkeskkonda ei saa luua
Viga: The virtual environment was not created successfully
Lahendus:
- Paigalda venv moodul:
- Ubuntu/Debian:
sudo apt install python3-venv - macOS: peaks olema Pythoniga kaasas
- Windows: paigalda Python uuesti kõigi komponentidega
- Ubuntu/Debian:
- Kontrolli Python’i paigaldust: Veendu, et Python on korrektselt paigaldatud
- Kasuta täielikku teed: Proovi
python3 -m venv .venvkoos selge python3 käsuga
Probleem: Paketid paigaldatakse valesse asukohta
Sümptomid: Impordivead peale paketi paigaldust
Lahendus:
- Veendu, et venv on aktiveeritud: Käsureal peaks olema
(.venv) - Kontrolli pip asukohta:
which pippeaks osutama.venv/bin/pip-le - Paigalda uuesti venv-is: Aktiviseeri venv ja paigalda
pip install <pakett> - Ära kasuta sudo’t pip’iga virtuaalkeskkonnas
Probleem: Virtuaalkeskkond pole teisaldatav
Sümptomid: Venv ei tööta pärast teisaldamist või teises arvutis
Lahendus:
- Ära liigu venge: Kustuta ja loo uus asukohas
- Kasuta requirements.txt:
pip freeze > requirements.txt pip install -r requirements.txt - Loo venv uuesti:
python3 -m venv .venv source .venv/bin/activate # või activate.bat Windowsis pip install -r requirements.txt
Sõltuvused
Probleem: Paketi paigaldus ebaõnnestub
Viga: Erinevad pip vead paigaldamisel
Lahendus:
- Uuenda pip:
pip install --upgrade pip - Paigalda ehitustööriistad:
- Ubuntu/Debian:
sudo apt install build-essential python3-dev - macOS:
xcode-select --install - Windows: paigalda Visual Studio Build Tools
- Ubuntu/Debian:
- Kontrolli internetiühendust
- Proovi teist paketi indeksit:
pip install --index-url https://pypi.org/simple/ <pakett> - Paigalda konkreetne versioon:
pip install <pakett>==<versioon>
Probleem: Sõltuvuste konfliktid
Viga: ERROR: pip's dependency resolver does not currently take into account all the packages that are installed
Lahendus:
- Kasuta iga projekti jaoks uut virtuaalkeskkonda
- Uuenda pakette:
pip install --upgrade <pakett> - Kontrolli nõudeid: Kasuta
pip checkkonfliktide leidmiseks - Paigalda sobivad versioonid: Määra versioonivahemikud requirements.txt failis
Jõudlusprobleemid
Probleem: Kood jookseb aeglaselt
Sümptomid: Viivitused, ajalõpped, reageerimatus
Lahendus:
- Vähenda andurite lugemissagedust: Ära loe andureid liiga sageli
- Optimeeri tsükleid: Väldi hõivatud ootust, kasuta sleep() või viivitusi
- Mälu probleemid:
- Sulge mittevajalikud rakendused
- Vabasta salvestusruumi
- Jälgi
topvõihtopprogrammi abil Pi peal
- SD kaardi kiirus: Kasuta kiiremat SD kaarti või SSD-d Raspberry Pi jaoks
- Võrgu viivitused: Kasuta asünkroonseid toiminguid võrgukõnede jaoks
Probleem: Mälu puuduse vead
Viga: MemoryError või süsteemi külmutamine
Lahendus:
- Raspberry Pi puhul:
- Sulge mittevajalikud rakendused
- Suurenda swap ruumi
- Kasuta kergemat operatsioonisüsteemi (Lite versioon)
- Uuenda RAM-i (Pi 4-l on 2/4/8GB valikud)
- Wio Terminali puhul:
- Vähenda puhvrite suuruseid
- Kasuta väiksemaid pilte
- Optimeeri stringide kasutust
- Kontrolli mälulekkeid (vabastamata mälu)
Probleem: Andmete kadumine või kahjustumine
Sümptomid: Puuduvad sõnumid, vigased failid
Lahendus:
- SD kaardi probleemid:
- Kasuta kvaliteetseid SD kaarte (väldi odavaid või võltsitud)
- Tee regulaarselt varukoopiaid
- Tee korralik väljalülitus (ära tõmba toidet ootamatult)
- Puhvripiirang: Suurenda puhvrite suurust koodi sees
- Võrgu töökindlus: Rakenda korduslogika ja veahaldus
- Teenuse Kvaliteet: Kasuta MQTT QoS 1 või 2 oluliste sõnumite jaoks
Levinud veateated
ModuleNotFoundError: No module named 'X'
Põhjus: Paketti pole installitud või virtuaalkeskkond pole aktiveeritud
Lahendus:
pip install X
Veendu esmalt, et virtuaalkeskkond on aktiveeritud.
Permission denied Linux/macOS
Põhjus: Vajalikud kõrgendatud õigused või failiõiguste probleem
Lahendus:
- Süsteemi toimingute puhul kasuta
sudo - Pip’i puhul ÄRA KASUTA sudo’t koos venv’iga, aktiveeri venv esmalt
- Sariipordi puhul lisa kasutaja dialout gruppi:
sudo usermod -a -G dialout $USER, seejärel logi välja ja uuesti sisse
OSError: [Errno 98] Address already in use
Põhjus: Port on juba teise protsessi poolt kasutusel
Lahendus:
- Leia porti kasutav protsess:
lsof -i :<port>võinetstat -ano | findstr :<port> - Lõpeta protsess või kasuta teist porti oma koodis
SSL: CERTIFICATE_VERIFY_FAILED
Põhjus: SSL sertifikaadi valideerimine ebaõnnestus
Lahendus:
- Uuenda sertifikaate:
pip install --upgrade certifi - Kontrolli süsteemi aega:
date - Ainult arendamiseks (mitte tootmiseks): loo koodis valideerimise keelamine
IndentationError: unexpected indent
Põhjus: Python indentatsiooni probleemid (tabide ja tühikute segamine)
Lahendus:
- Kasuta ühtlast indentatsiooni (4 tühikut on Python standard)
- Sea redaktoris tühikute kasutamine tabide asemel
- VS Code’is määra
"editor.insertSpaces": trueja"editor.tabSize": 4
UnicodeDecodeError või UnicodeEncodeError
Põhjus: Märgistiku kodeerimise probleemid
Lahendus:
# Failide lugemisel
with open('file.txt', 'r', encoding='utf-8') as f:
content = f.read()
# Failide kirjutamisel
with open('file.txt', 'w', encoding='utf-8') as f:
f.write(content)
Abi saamine
Kui oled proovinud neid tõrkeotsingu samme ja probleemid püsivad:
1. Kontrolli olemasolevaid ressursse
- Dokumentatsioon: Tutvu README ja õppetükkide juhistega
- Riistvarajuhendid: Vaata hardware.md riistvaraspetsiifilist infot
- Seeed Studio Wiki: Seeed Studio Wiki Grove komponentide kohta
2. Otsi sarnaseid probleeme
- GitHub’i probleemid: Otsi olemasolevaid probleeme
- Stack Overflow: Otsi veateatega seotud vastuseid
- Seadme foorumid: Vaata Raspberry Pi või Arduino foorumeid
3. Loo GitHub’is probleem (Issue)
Kui lahendust ei leia:
- Mine GitHub Issues
- Klõpsa "New Issue"
- Kirjelda:
- Selgelt probleemi sisu
- Sammud, kuidas probleemi tekitada
- Veateated (kogu tekst)
- Riistvara/tarkvara versioonid
- Mida oled juba proovinud
- Ekraanipildid, kui asjakohane
4. Liitu kogukonnaga
- Discord: Microsoft Foundry Discord
- Microsoft Learn: Microsoft Learn IoT
5. Esita head veaaruannet
Heas veaaruandes on:
- Keskkond: OS, Python versioon, kasutatud riistvara
- Probleemi taasesituse sammud: Täpsed sammud, mis põhjustavad vea
- Oodatav käitumine: Mida peaks juhtuma
- Tegelik käitumine: Mis tegelikult juhtub
- Veateated: Täielik veatekst, mitte ekraanipildid
- Kood: Minimaalne koodinäide, mis probleemi esile kutsub
Ennetamiseks nõuanded
Üldised parimad praktikad
- Hoia varukoopiaid: Regulaarne töötavate SD kaartide/koodi backup
- Dokumenteeri muudatused: Märgi kommentaarides, mis töötab
- Versioonihaldus: Kasuta git'i koodi muudatuste jälgimiseks
- Testi järkjärgult: Testi väikeseid muudatusi enne nende kombineerimist
- Loe veateateid: Need ütlevad sageli täpselt, mis on valesti
- Uuenda regulaarselt: Hoia tarkvara/firmware ajakohasena
- Kasuta kvaliteetseid komponente: Väldi odavaid kaableid/toiteallikaid
- Stabiilne toide: Kasuta sobivat toiteallikat (eriti Pi puhul)
Arendusvoog
- Alusta lihtsalt: Alusta näidiskoodiga, mis töötab
- Üks muudatus korraga: Kergem leida, mis rikub
- Testi tihti: Katsu vead varakult kinni püüda
- Hoidke korras: Korralda failid ja kood loogiliselt
- Kommenteeri koodi: Tuleviku sina hindab seda
See tõrkeotsingu juhend on kogukonna hooldatud. Kui leiad lahenduse probleemile, mis siin loetletud pole, kaalu palun panustamist, et aidata teisi!
Vastutusest loobumine: See dokument on tõlgitud AI tõlketeenuse Co-op Translator abil. Kuigi püüame tagada täpsust, palun arvestage, et automaatsed tõlked võivad sisaldada vigu või ebatäpsusi. Originaaldokument tema emakeeles tuleks pidada autoriteetseks allikaks. Kriitilise teabe puhul soovitatakse kasutada professionaalset inimtõlget. Me ei vastuta selle tõlke kasutamisest tulenevate arusaamatuste või valesti tõlgenduste eest.