Inštalácia balíkov

Firmvéru jazyka MicroPython obsahuje sadu predinštalovaných balíkov, ktoré je možné okamžite použiť. Niektoré sú zviazané priamo s možnosťami daného mikrokontroléra, resp. dosky, na ktorej je osadený, niektoré sú zasa všeobecné. Zoznam balíkov, ktoré sa nachádzajú vo firmvéri po inštalácii získate zadaním nasledujúceho príkazu v REPL režime mikrokontroléra:

>>> help('modules')
__main__          asyncio/__init__  hashlib           rp2
_asyncio          asyncio/core      heapq             select
_boot             asyncio/event     io                socket
_boot_fat         asyncio/funcs     json              ssl
_onewire          asyncio/lock      lwip              struct
_rp2              asyncio/stream    machine           sys
_thread           binascii          math              time
_webrepl          bluetooth         micropython       tls
aioble/__init__   builtins          mip/__init__      uasyncio
aioble/central    cmath             neopixel          uctypes
aioble/client     collections       network           urequests
aioble/core       cryptolib         ntptime           vfs
aioble/device     deflate           onewire           webrepl
aioble/l2cap      dht               os                webrepl_setup
aioble/peripheral ds18x20           platform          websocket
aioble/security   errno             random
aioble/server     framebuf          re
array             gc                requests/__init__
Plus any modules on the filesystem
>>>

Priečinok /lib

V štandardnom interpretéri jazyka Python sa v systémovej premennej sys.path nachádza zoznam priečinkov, ktoré interpretér bude prechádzať, keď bude hľadať požadovaný modul. Nachádza sa v ňom zoznam priečinkov, kde sa nachádza štandardná knižnica jazyka Python, ako aj doinštalované treťostranové balíky jazyka. Zakaždým, keď sa v niektorom module bude nachádzať príkaz import, bude interpretér hľadať tento balík/modul, aby ho nahral.

V jazyku MicroPython tento mechanizmus funguje veľmi podobne podobne. Keď sa pozrieme na obsah premennej sys.path, dostaneme nasledovný výpis:

>>> import sys
>>> sys.path
['', '.frozen', '/lib']

Uvedený priečinok /lib v zozname má špeciálny účel. Slúži ako knižničný priečinok pre moduly a balíky, ktoré sa majú automaticky importovať rovnako ako vstavané knižnice. Nachádza sa v koreňovom priečinku flash pamäte mikrokontroléra a automaticky sa do neho ukladajú všetky nainštalované knižnice tretích strán pomocou balíka mip.

Moduly, ktoré sú v ňom uložené, sú obyčajne vykompilované. To znamená, že ich obsah nebude čitateľný a ich prípona bude .mpy.

Modul mip

Balíky je možné inštalovať aj priamo z mikrokontroléra pomocou modulu mip. Tým pádom je možné napr. doinštalovať potrebné balíky pri prvom spustení kódu na mikrokontroléri alebo ručne pomocou režimu REPL. Aby však všetko fungovalo v poriadku, je potrebné, aby bol mikrokontrolér pripojený do internetu.

Použitie je veľmi jedoduché. Modul mip má funkciu .install(), ktorej zavolaním dôjde k nainštalovaniu modulu. Modul, ktorý chceme nainštalovať, je parametrom tejto funkcie.

Príklad použitia ilustruje nasledujúci výpis kódu:

import mip
mip.install('umqtt.simple')

Viac informácií a možností inštalácie pomocou modulu mip je možné nájsť na stránkach oficiálnej dokumentácie.

Inštalácia balíkov pomocou nástroja mpremote

$ mpremote mip install umqtt.simple

dokumentácia

Inštalácia balíkov pomocou editora Thonny

Inštalácia je možná priamo z prostredia editora.

  1. prejdite do menu Tools > Package management...

  2. v dialógovom okne vyhľadajte balík, ktorý potrebujete nainštalovať, napríklad umqtt.simple

  3. kliknite na tlačidlo Install, pomocou ktorého modul nainštalujete

Výhodou tohto prístupu je, že na inštaláciu modulu nie je potrebné, aby bol mikrokontrolér pripojený do siete.

Inštalácia balíkov pomocou nástroja pipkin

GitHub projektu