TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

O PROJETO LÓGICO DE COMPUTADORES

Por:   •  22/11/2019  •  Relatório de pesquisa  •  1.220 Palavras (5 Páginas)  •  222 Visualizações

Página 1 de 5

UNIVERSIDADE PAULISTA

INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA

CAMPUS BRASÍLIA

SAMUEL SOUZA SANTOS

YASMIN STEFANE OLIVEIRA BARBOSA

PABLO GEOVANE SANTANA QUEIROZ DOS SANTOS

MONITORAMENTO REMOTO COM CÂMERA

PROJETO LÓGICO DE COMPUTADORES

BRASÍLIA

2019

Hardware utilizado:

1x Módulo ESP32-S CAM

1x Placa FTDI FT232RL Conversor USB Serial

Jumper (fêmea x fêmea, macho x fêmea)

1x Cabo USB mini        

[pic 1]

A montagem utilizada foi a da imagem acima, com uma modificação, o pino 5v e o GND de alimentação do ESP-32 foram espetados no conversor USB SERIAL, dessa forma a alimentação está sendo via USB. O pino GND ligado ao IO0 como na imagem só deverá ser conectado somente ao carregar o código, após o upload deve-se retirar essa ligação e fazer apertar o botão RST.

Código fonte comentado:

// Bibliotecas necessárias

#include "esp_camera.h"

#include

// Define-se o modelo da câmera, no nosso caso será usado o modelo AI_THINKER

//#define CAMERA_MODEL_WROVER_KIT

//#define CAMERA_MODEL_M5STACK_PSRAM

#define CAMERA_MODEL_AI_THINKER

// Define-se as credencias da rede wireless a qual o módulo irá se conectar.

const char* ssid = "trojan";

const char* password = "036268cn";

// Definido antes o modelo do chip agora define-se a pinagem.

#if defined(CAMERA_MODEL_WROVER_KIT)

#define PWDN_GPIO_NUM    -1

#define RESET_GPIO_NUM   -1

#define XCLK_GPIO_NUM    21

#define SIOD_GPIO_NUM    26

#define SIOC_GPIO_NUM    27

#define Y9_GPIO_NUM      35

#define Y8_GPIO_NUM      34

#define Y7_GPIO_NUM      39

#define Y6_GPIO_NUM      36

#define Y5_GPIO_NUM      19

#define Y4_GPIO_NUM      18

#define Y3_GPIO_NUM       5

#define Y2_GPIO_NUM       4

#define VSYNC_GPIO_NUM   25

#define HREF_GPIO_NUM    23

#define PCLK_GPIO_NUM    22

#elif defined(CAMERA_MODEL_M5STACK_PSRAM)

#define PWDN_GPIO_NUM     -1

#define RESET_GPIO_NUM    15

#define XCLK_GPIO_NUM     27

#define SIOD_GPIO_NUM     25

#define SIOC_GPIO_NUM     23

#define Y9_GPIO_NUM       19

#define Y8_GPIO_NUM       36

#define Y7_GPIO_NUM       18

#define Y6_GPIO_NUM       39

#define Y5_GPIO_NUM        5

#define Y4_GPIO_NUM       34

#define Y3_GPIO_NUM       35

#define Y2_GPIO_NUM       32

#define VSYNC_GPIO_NUM    22

#define HREF_GPIO_NUM     26

#define PCLK_GPIO_NUM     21

#elif defined(CAMERA_MODEL_AI_THINKER)

#define PWDN_GPIO_NUM     32

#define RESET_GPIO_NUM    -1

#define XCLK_GPIO_NUM      0

#define SIOD_GPIO_NUM     26

#define SIOC_GPIO_NUM     27

#define Y9_GPIO_NUM       35

#define Y8_GPIO_NUM       34

#define Y7_GPIO_NUM       39

#define Y6_GPIO_NUM       36

#define Y5_GPIO_NUM       21

#define Y4_GPIO_NUM       19

#define Y3_GPIO_NUM       18

#define Y2_GPIO_NUM        5

#define VSYNC_GPIO_NUM    25

#define HREF_GPIO_NUM     23

#define PCLK_GPIO_NUM     22

// Caso nenhum modelo for escolhido nesse passo será lançado um error, “modelo de câmera não selecionado”.

#else

#error "Camera model not selected"

#endif

// Aqui é iniciado o servidor da câmera.

void startCameraServer();

// Configurações específicas da ligação da câmera ao módulo (define-se os pinos ligados e na câmera são configurados por exemplo resolução, qualidade da imagem.)

void setup() {

  Serial.begin(115200);

  Serial.setDebugOutput(true);

  Serial.println();

  camera_config_t config;

  config.ledc_channel = LEDC_CHANNEL_0;

  config.ledc_timer = LEDC_TIMER_0;

  config.pin_d0 = Y2_GPIO_NUM;

  config.pin_d1 = Y3_GPIO_NUM;

  config.pin_d2 = Y4_GPIO_NUM;

  config.pin_d3 = Y5_GPIO_NUM;

  config.pin_d4 = Y6_GPIO_NUM;

  config.pin_d5 = Y7_GPIO_NUM;

  config.pin_d6 = Y8_GPIO_NUM;

  config.pin_d7 = Y9_GPIO_NUM;

  config.pin_xclk = XCLK_GPIO_NUM;

  config.pin_pclk = PCLK_GPIO_NUM;

  config.pin_vsync = VSYNC_GPIO_NUM;

  config.pin_href = HREF_GPIO_NUM;

  config.pin_sscb_sda = SIOD_GPIO_NUM;

  config.pin_sscb_scl = SIOC_GPIO_NUM;

  config.pin_pwdn = PWDN_GPIO_NUM;

  config.pin_reset = RESET_GPIO_NUM;

  config.xclk_freq_hz = 20000000;

  config.pixel_format = PIXFORMAT_JPEG;

  //init with high specs to pre-allocate larger buffers

  if(psramFound()){

    config.frame_size = FRAMESIZE_UXGA;

    config.jpeg_quality = 10;

    config.fb_count = 2;

  } else {

    config.frame_size = FRAMESIZE_SVGA;

    config.jpeg_quality = 12;

    config.fb_count = 1;

  }

  // Inicializando a câmera, caso falhe será lançado um erro.

  esp_err_t err = esp_camera_init(&config);

  if (err != ESP_OK) {

    Serial.printf("Camera init failed with error 0x%x", err);

    return;

  }

  //A câmera será inicializada na resolução definida 640 x 480

...

Baixar como (para membros premium)  txt (8.1 Kb)   pdf (94.9 Kb)   docx (30.2 Kb)  
Continuar por mais 4 páginas »
Disponível apenas no TrabalhosGratuitos.com