fbpixel
Etiquetas: ,
5
(1)

A câmera Pixy2 é um sistema de reconhecimento visual assistido por computador. Ela permite ao microcontrolador detectar cores ou linhas, para criar um robô que segue uma linha ou para apanhar objetos coloridos, por exemplo.

Material

  • Computador
  • Arduino UNO, Mega ou Nano
  • Cabo USB A Macho/B Macho
  • Câmera Pixy2

Princípio de funcionamento

A câmera Pixy2 é um sistema de visão completo, equipado com um sensor de imagem e um microprocessador. Ela inclui algoritmos de aprendizagem e detecção de cores, linhas, interseções e de pequenos códigos de barras. A Pixy2 incorpora toda a tecnologia necessária para o reconhecimento visual.

Especificações técnicas

  • Processador: NXP LPC4330, 204 MHz, núcleo duplo
  • Sensor de imagem: Aptina MT9M114, resolução 1296×976 com processador de fluxo de imagem integrado
  • Consumo de energia: 140 mA típico
  • Consumo de energia: entrada USB (5V) ou entrada não regulada (6V a 10V)
  • Dados disponíveis: Série UART, SPI, I2C, USB, digital, analógico
  • Dimensões: 38,1 x 41,91 x 15,24mm
  • Peso : 10g

Esquema

A câmera Pixy2 comunica facilmente com microcontroladores por meio das suas interfaces de comunicação (UART, SPI, I2C, USB). Ela se conecta à entrada ICSP da placa Arduino.

Configuração da câmera Pixy2

Faça o download do software pixymon.

Abra o software PixyMon v2.

Aprendizagem de reconhecimento

Antes de poder utilizar a Pixy2, é preciso ensiná-la a reconhecer os objetos de interesse e atribuir-lhes uma assinatura (identificador). É possível registrar até 7 assinaturas.

  • pressione o botão na parte superior da câmera até o LED ficar vermelho, então solte-o.
  • coloque um objeto em frente à câmera
  • pressione o botão novamente para registrar o objeto

Terminada a aprendizagem, podemos ver o objeto emoldurado por um retângulo com a assinatura escrita no centro.

Se tiver problemas para reconhecer o objeto aprendido, é possível definir a sensibilidade do reconhecimento nas configurações. Vá para file -> configure na aba tuning e manipule as configurações para obter o resultado desejado.

Alguns objetos não são facilmente reconhecíveis. Tente encontrar objetos com formas diferenciadas e cores fortes e distintas.

Código

Instale a biblioteca Pixy2 do Arduino. A função mais importante é a getBlocks(), que devolve o número de elementos detectados e informações como as suas assinaturas (identificador após a aprendizagem) e dimensões.

//Libraries
#include <Pixy2.h>//https://github.com/charmedlabs/pixy2/raw/master/releases/arduino/arduino_pixy2-1.0.3.zip

//Variables
Pixy2 pixy;

void setup() {
  //Init Serial USB
  Serial.begin(9600);
  Serial.println(F("Initialize System"));
  //Init Pixy2
  pixy.init();
}

void loop() {
  testPixy();
}

void testPixy() { /* function testPixy */
  //// Get blocks from Pixy2
  // grab blocks!
  pixy.ccc.getBlocks();

  // If there are detect blocks, print them!
  if (pixy.ccc.numBlocks) {
    Serial.print("Detected ");
    Serial.println(pixy.ccc.numBlocks);
    for (int i = 0; i < pixy.ccc.numBlocks; i++) {
      Serial.print("  block ");
      Serial.print(i);
      Serial.print(": ");
      pixy.ccc.blocks[i].print();
    }
  }
}

Se encontrar problemas de compilação, pode apagar os arquivos zumobuzzzer e zumomotor (.h e .cpp) na pasta da biblioteca Documents\Arduino\libraries\Pixy2

Resultado

Uma vez carregado o código, a câmera envia mensagens ao Arduino assim que o objeto aparece no seu campo de visão. Desse modo, é possível obter a assinatura do objeto, suas dimensões e sua posição.

Aplicações

Fontes

Retrouvez nos tutoriels et d’autres exemples dans notre générateur automatique de code
La Programmerie

How useful was this post?

Click on a star to rate it!

Average rating 5 / 5. Vote count: 1

No votes so far! Be the first to rate this post.

As you found this post useful...

Follow us on social media!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?