Uso de módulos
O que é um módulo?
À medida que a quantidade de código aumenta, o código em um único arquivo se torna cada vez mais longo e mais difícil de entender.
Para escrever código que possa ser reaproveitado, dividimos muitas funções em grupos e as colocamos em arquivos diferentes. Em Python, um arquivo .py é chamado de módulo.
Qual é a vantagem de um módulo? É simples reutilizar código. Se eu escrever um módulo, e você também, teremos dois módulos. Ao colocarmos esses módulos juntos, todos podem escrever muito menos código!
Como usar um módulo?
import machine
red_led = machine.LED("LED_RED")
red_led.on()
import pyb importa o módulo pyb. Através da instrução import, você pode importar esse módulo.
E a instrução from xxx import ooo significa importar a classe ooo através do módulo xxx, ou importar a função ooo através do módulo xxx. Por exemplo, o procedimento acima pode ser escrito assim:
from machine import LED
red_led = LED("LED_RED")
red_led.on()
Isso é importar a classe LED através do módulo pyb.
Como adicionar um módulo personalizado?
Como mencionamos antes, a OpenMV possui um sistema de arquivos.
O diretório raiz do sistema de arquivos tem o main.py; o diretório atual em que o código é executado é o diretório raiz.
Assim, basta copiar o arquivo do módulo para o disco USB da OpenMV. Como mostrado na imagem:

O pid.py aqui é apenas um exemplo.
Copiei o pid.py para o diretório raiz do disco USB. Dessa forma, no procedimento
import pid
Podemos importar o módulo pid. Ou através de:
from pid import PID
Isso é importar a classe PID.
Então, como compilar um módulo assim? Veja Criar um módulo manualmente.