Lição 9: Alimentador Automático de Gatos

Procurando uma atualização real para o micro:bit que combine IA, IoT e programação prática? O UNIHIKER K10 — o sucessor de próxima geração do micro:bit — permite que os alunos construam um alimentador automático inteligente para gatos com detecção facial em tempo real. Perfeito para educadores STEM e entusiastas de tecnologia, este projeto ensina programação em Python, visão computacional e automação IoT, atendendo aos padrões CSTA, Currículo Nacional do Reino Unido e Ciência da Computação AP.

Objetivos

Utilizando a funcionalidade de detecção de rosto de gato do UNIHIKER K10, projetar um alimentador de gatos que possa dispensar ração automaticamente quando o gato se aproximar para comer.

Conhecimentos Fundamentais

1. Dominar o método de detecção de rosto de gato com o UNIHIKER K10.

2. Dominar o programa para criar uma máquina de alimentador de gatos utilizando o UNIHIKER K10.

Lista de Materiais

Lista de Hardware:

HARDWARE LIST
2 UNIHIKER K10
2 Cabo USB-C

Software: Software de Programação Gráfica Mind+ (Versão mínima exigida: V1.8.1 RC1.0)

Uso Básico do Software Mind+

1. Abra o Mind+ e alterne para o modo offline.

2. Carregar o UNIHIKER K10: Com base nas etapas anteriores, clique em "Extensão", localize o módulo "UNIHIKER K10" em "Placa" e clique para adicioná-lo. Após clicar em "Voltar", você encontrará o UNIHIKER K10 na "Área de Comandos", completando assim o carregamento do dispositivo.

3. Conectar o UNIHIKER K10: Primeiramente, é necessário utilizar um cabo USB para conectar o UNIHIKER K10 ao computador.

Em seguida, após clicar em "Conectar Dispositivo", selecione "COM-UNIHIKER K10" para estabelecer a conexão.

Observação: O nome do dispositivo pode variar entre diferentes unidades UNIHIKER K10, mas todos terminam com K10.

No Windows 10/11, o UNIHIKER K10 não requer instalação de drivers. Entretanto, para o Windows 7, é necessária a instalação manual do driver: https://www.unihiker.com/wiki/K10/faq/#high-frequency-problem

Prática Hands-on

Vamos começar a trabalhar nas tarefas do curso de hoje. Iniciaremos construindo a máquina de alimentação para gatos e, gradualmente, aprenderemos como projetar um alimentador automático utilizando o UNIHIKER K10.

Tarefa 1: Construir a máquina de alimentador de gatos

Nesta parte, primeiro iremos inicializar a câmera, adicionar o recipiente de ração e montar a máquina de alimentador de gatos.

Tarefa 2: Alimentação automática quando o gato se aproxima

Nesta parte, implementaremos a alimentação automática quando o gato se aproximar.

Tarefa 3: Definir modo de repouso para evitar alimentação repetida

Nesta parte, configuraremos o modo de repouso do alimentador para evitar a alimentação repetida quando o gato levantar a cabeça durante a refeição.

Tarefa 1: Construir a máquina de alimentador de gatos

1. Configuração de Hardware

Insira o cartão TF no slot do UNIHIKER K10 e confirme que o UNIHIKER K10 está conectado ao computador utilizando um cabo USB.

2. Preparação de Software

Certifique-se de que o Mind+ esteja aberto, que o código predefinido apareça no modo gráfico Python e que o UNIHIKER K10 tenha sido carregado com sucesso. Agora você pode começar a escrever o programa do projeto.

3. Escrever o programa

PASSO 1: Chamar o comando de detecção de gatos e cães

Primeiro precisamos usar o comando "ativar show de câmera" para exibir o feed da câmera na tela do UNIHIKER K10.

Depois de ligar a câmera, encontramos o comando "Alternar para o modo Detecção de gatos e cachorros" e alternamos a câmera para o modo de detecção de gatos e cães.

PASSO 2: Adicionar um Recipiente de Ração

A máquina de alimentação de gatos requer um recipiente para armazenar a ração. Aqui, utilizamos o comando "armazenar em cache a imagem" para exibir o recipiente de ração na tela do UNIHIKER K10. O comando é o seguinte.

4. Execução do Programa

PASSO 1: Verifique e assegure-se de que o UNIHIKER K10 está conectado ao Mind+. Confirme que o endereço IP é exibido na seção "Barra de menus", indicando que a conexão foi estabelecida.

PASSO 2: Clique no botão "Enviar" no canto superior direito da interface.

PASSO 3: Execução do Programa. Quando você executar o programa, a tela do K10 exibirá o feed da câmera juntamente com o recipiente de ração vazio. Quando um rosto de gato for detectado, um quadro de reconhecimento verde aparecerá ao redor do rosto do gato.

Tarefa 2: Alimentação Automática Quando o Gato se Aproxima

Na tarefa anterior, concluímos a configuração da máquina de alimentação de gatos. Agora, precisamos implementar a função em que a máquina dispensa ração automaticamente quando o gato se aproxima e começa a comer.

1. Escrever o Programa

PASSO 1: Detectando a Proximidade do Gato

Como podemos determinar se o gato está próximo da máquina de alimentação? Em nossas aulas anteriores, aprendemos sobre o conceito de que "objetos próximos parecem maiores, e objetos distantes parecem menores". Da mesma forma, quanto mais próximo o gato estiver da máquina de alimentação, maior será a aparência do seu rosto. Como mostrado na imagem abaixo.

No UNIHIKER K10, você pode usar o comando "Rosto de gato/cachorro detectado?" para verificar se há um gato. Quando um gato é detectado, é necessário utilizar o comando "Detectar Extensão de rosto de gato/cacheorro" para obter o comprimento do rosto do gato. Defina um valor crítico de 180 para o comprimento do rosto do gato. Se o rosto do gato for maior que esse valor, isso indica que o gato está próximo da máquina de alimentação e deseja comer.

Os comandos de programa relacionados são os seguintes:

PASSO 2: Configurar o comando de alimentação de ração

Primeiro, exiba "Feeding" na tela do UNIHIKER K10 para indicar que a máquina de alimentação está em modo de fornecimento de ração. Em seguida, utilize o comando "Tocar áudio do cartão TF em segundo plano" para reproduzir o som de ração sendo despejada. Ao mesmo tempo, faça com que o recipiente de ração mude gradualmente de vazio para meio cheio e depois cheio, simulando o processo de enchimento do recipiente com comida. Os comandos de programa relacionados são os seguintes.

2. Execução do Programa

PASSO 1: Conecte o UNIHIKER K10.

PASSO 2: Clique no botão "Enviar" no canto superior direito da interface.

PASSO 3: Quando o gato se aproximar da máquina de alimentação, ela fornecerá ração automaticamente e exibirá na tela o estado atual da máquina de alimentação.

Tarefa 3: Definir o Modo de Repouso para Evitar Alimentação Repetida

Na Tarefa 2, a máquina de alimentação estava dispensando ração continuamente. Na vida real, uma vez que o recipiente esteja cheio de ração, o gato abaixa a cabeça para comer, olhando para cima de vez em quando. Para evitar que a máquina detecte o rosto do gato repetidamente e forneça mais ração, precisamos configurar um modo de repouso para a máquina de alimentação.

1. Escrever o Programa

Quando o gato abaixar a cabeça para comer a ração, definiremos um período de repouso (5 segundos) para permitir que ele termine de comer. Durante esses 5 segundos, a máquina de alimentação permanecerá em estado de repouso. Utilizaremos uma variável "sleepTime" para controlar a duração do repouso. Quando o tempo de repouso terminar e o gato levantar a cabeça após terminar de comer, a máquina de alimentação detectará o rosto do gato e dispensará mais ração automaticamente. O processo é o seguinte.

Precisamos definir o valor inicial da variável "sleepTime" como 0. Após a máquina de alimentação dispensar a ração, se o comprimento do rosto do gato for menor que 100, o "sleepTime" será definido como 5, iniciando a contagem regressiva de repouso.

Quando o estado de repouso for ativado, a tela do K10 exibirá uma contagem regressiva do tempo de repouso restante. Quando o tempo de repouso terminar, simulando que o gato terminou de comer, o recipiente será alterado novamente para o estado vazio.

As instruções completas do programa são as seguintes.

2. Execução do Programa

Clique em "Enviar" e, após o alimentador dispensar a ração, o gato começará a comer, e o alimentador entrará em modo de repouso para evitar fornecer ração repetidamente. Quando o tempo de repouso terminar e o gato for detectado novamente, o alimentador dispensará mais ração automaticamente.

Centro de Conhecimento

1. Comando de Detecção de Gatos e Cães

2. Detecção de Pontos-Chave de Gatos e Cães

Pronto para ir além do micro:bit? Os recursos avançados do UNIHIKER K10 fazem dele a ferramenta ideal para dominar IA e IoT. Baixe nossos exemplos de código e comece a construir hoje mesmo!

icon audio.zip 202KB Download(0)
icon Imagem.zip 60KB Download(0)
icon program.zip 167KB Download(0)
License
All Rights
Reserved
licensBg
0