13.1.2. Scripts, exemplos e a pasta de documentos

13.1.2.1. Novos ficheiros

Ao criar um novo ficheiro, o IDE abre um buffer untitled_N.py pré-carregado com um ciclo de captura mínimo – reiniciar o sensor, configurar o formato de pixel e o tamanho do fotograma, depois capturar imagem e imprimir a taxa de fotogramas indefinidamente. O script de início é adaptado à placa ligada, pelo que é executado tal como foi criado. O buffer existe apenas em memória: pode editá-lo e executá-lo repetidamente sem o guardar, o que faz dos novos ficheiros a forma mais simples de testar uma ideia. Guarde-o no disco e torna-se um script comum.

13.1.2.2. O menu de exemplos

Ficheiro → Exemplos contém uma biblioteca categorizada de scripts de exemplo que cobrem praticamente todas as funcionalidades da câmara – uma pasta por tema, desde capturas básicas, passando por rastreamento de cor, aprendizagem automática e periféricos da placa. Abrir um exemplo carrega-o num buffer de memória como um novo ficheiro, para que possa modificá-lo e executá-lo livremente sem alterar a cópia instalada.

Por predefinição, o menu é filtrado para a placa ligada e o seu sensor: os exemplos que necessitam de hardware que a câmara não possui ficam ocultos, e o menu exige uma ligação antes de mostrar qualquer coisa. Ferramentas → Filtrar exemplos por tipo de placa e sensor desativa o filtro quando se pretende navegar pelo conjunto completo.

Os exemplos também são adaptados ao serem abertos. Os scripts são escritos para um sensor de cor típico, pelo que quando a câmara ligada é diferente – um sensor térmico ou de eventos, uma placa com uma resolução nativa diferente – o IDE ajusta as linhas de formato de pixel e tamanho do fotograma para valores suportados pelo hardware ao carregar, e o exemplo é executado tal como foi aberto.

Percorrer o menu de exemplos é a forma mais rápida de aprender o que a câmara consegue fazer; a maioria das aplicações começa como um exemplo que foi crescendo.

13.1.2.3. A pasta de documentos

Para os seus próprios scripts, o IDE monitoriza um diretório OpenMV dentro da pasta de documentos (Documents/OpenMV). Tudo o que aí guardar aparece em Ficheiro → Pasta de Documentos, incluindo subdiretórios, por isso a sua coleção de scripts está a um menu de distância. O menu lê o diretório em tempo real – os ficheiros adicionados fora do IDE aparecem na próxima vez que o menu for aberto.

O IDE é executado como uma única instância: abra um ficheiro .py no gestor de ficheiros, ou arraste um para a janela do IDE, e ele abre na janela já em execução em vez de lançar uma segunda cópia.

13.1.2.4. Compilação cruzada de um script

Ferramentas → MicroPython Tools → Copiar/Converter ficheiro Python copia um ficheiro .py para um destino – a unidade de armazenamento da câmara, quando uma estiver ligada – e permite escolher o que acontece durante o processo: copiar sem alterações, remover espaços em branco e/ou comentários para o reduzir, ou compilá-lo para um ficheiro bytecode .mpy com o compilador mpy-cross adequado à placa de destino. Um ficheiro .mpy é importado exatamente como o .py de que provém, carrega mais rapidamente e não distribui o código-fonte – a forma a utilizar quando se distribui um módulo de biblioteca para o sistema de ficheiros da câmara. Com uma câmara ligada, o IDE seleciona automaticamente a placa de destino; caso contrário, a caixa de diálogo pergunta qual a placa para a qual compilar. A escolha da placa é importante porque define a arquitetura do processador para a qual o compilador gera código: um ficheiro .mpy é específico para a câmara em que vai ser executado, e um compilado para uma família de placas diferente não tem garantia de carregamento.

Veja também

Ferramentas MicroPython para mpy-cross e mpremote como ferramentas de linha de comandos autónomas, e Ficheiros .mpy do MicroPython para o formato de ficheiro .mpy em si.