[TOC] # 🧠 Tempestade de Ideias ## Objetivos Uma placa que seja otimizada e eficiente para o robô. O tamanho máximo que a PCB poderá ter é de 90x30x8mm ### Discussão sobre o formato da placa 1. Placa retangular conectando sensores nas pontas 2. Placa retangular com furos no meio para conectar sensores 3. Placa em T conectando sensores nas pontas 4. Placa em T com furos no meio para conectar sensores ### Definição sobre o formato da placa Placa em T com furos no meio para conectar sensores ### Discussão sobre as versões da placa 1. Ter uma versão única com chip/modulo do ESP32 2. Ter duas versões: uma com o chip/modulo do ESP32 e outra com o DEVKIT V1 ### Definição sobre as versões da placa Ter duas versões: uma com o chip/modulo do ESP32 e outra com o DEVKIT V1 A versão com o DevKit seria usada para os testes no robô, já que o chip/modulo do ESP32 tende a queimar com facilidade quanto mais manuseamos/testamos ele. Já a versão com o chip/modulo seria a versão mais otimizada que tende a ser a oficial do robô. ## Inovações - PCB de 4 camadas; - Módulo do ESP32; - Sensor que mede distância. ## Microcontrolador #### Versão [ESP32-WROOM-32E-N8](https://www.lcsc.com/product-detail/WiFi-Modules_Espressif-Systems-ESP32-WROOM-32E-N8_C701342.html) Foto: ![](https://assets.lcsc.com/images/lcsc/900x900/20200727_Espressif-Systems-ESP32-WROOM-32E-N8_C701342_front.jpg){width="300"} Especificações: | Tensão | Corrente | Circuito Auxiliar | |--------|----------|-------------------| | 3V | 239mA | Diversos, Ver Página 24 do Datasheet | #### Versão [DevKit V1]() Foto: ![](./../imagens/componentes_eletronicos/6WL55_1.jpg){width="300"} Especificações: | Tensão de Alimentação | Tensão nas GPIOS | Corrente | Circuito Auxiliar | |-----------------------|------------------|----------|-------------------| | 5V | 3V3 | ?mA | Não Tem | ## Sensores ### Sensores Infravermelhos de Oponente #### 2 Sensores Frontais e 2 Sensores Laterais Infravermelhos [JS40F](https://www.jsumo.com/js40f-digital-infrared-ir-distance-sensor-min-40-cm-range) Foto: ![](https://www.jsumo.com/js40f-digital-infrared-ir-distance-sensor-min-40-cm-range-2780-71-B.jpg){width="300"} Especificações: | Tensão | Corrente | Distância | Circuito Auxiliar | |--------|----------|-----------|-------------------| | 5V | 15mA | 40cm | Divisor de Tensão de 5V para 3V3 no Pino de Sinal | ### Sensor Frontal de Distância <details> <summary>Pesquisa Sobre Diferentes Modelos de Sensores que Medem Distâcias</summary> ## TOF 10120 ### + O tipo TOF (Time Of Flight) é utilizado por outras equipes de competição ### ++ [É barato (Aliexpress R$25 + R$25 frete)](https://pt.aliexpress.com/item/1005002841420016.html?spm=a2g0o.store_pc_allProduct.8148356.1.f858282f8cjW29&pdp_npi=2%40dis%21BRL%21R%24%2025%2C62%21R%24%2024%2C37%21%21%21%21%21%40210321ea16778213778841188ee06d%2112000022418018056%21sh) ### + Já temos códigos de outras equipes para testes e ajuda na implementação ### - Datasheet só fala sobre sua performance em superfícies brancas ou cinzas ### Características: - 2 Pinos Analógicos; - Pinos RX/TX; - 2 Pinos para alimentação; - Funcionamento de 3 a 5V; - Alcance de 10 a 180 cm com 95% de precisão; - Dimensões 20.0x13.2x2.0mm; - [Infos sobre o sensor](https://www.usinainfo.com.br/sensor-de-proximidade/sensor-de-distancia-a-laser-tof10120-de-alta-precisao-cabo-10-a-180cm-5851.html). ![https://www.usinainfo.com.br/sensor-de-proximidade/sensor-de-distancia-a-laser-tof10120-de-alta-precisao-cabo-10-a-180cm-5851.html](https://i.imgur.com/yD0tGU2.png) ![https://www.electroniclinic.com/wp-content/uploads/2021/06/TOF10120-Datasheet.pdf](https://i.imgur.com/C1qA9LD.png) ## VL53L0xXV2 ### Também do tipo TOF ### + É utilizado por outras equipes de competição ([robô Mini Trinca da equipe TrincaBots](https://trincabotz.com.br/projetos/mini-trinca/)) ### + Já temos códigos de outras equipes para testes e ajuda na implementação ### +++ Este exato modelo recebeu elogios no grupo dos sumôs ### +++ Parece ser amplamente utilizado em conjunto com o Arduino e facilmente se encontra informações na internet ### - [Baú da eletrônica por R$45](https://www.baudaeletronica.com.br/sensor-de-distancia-vl53l0x-de-alta-precis-o.html) ### - - Dimensões um pouco maiores: 25 x 12.7 x 3.5mm ### Características: - Utiliza Biblioteca Adafruit; - Mede até 2m; - Alimentação de 3 a 5V; - Possui o total de 6 pinos: - 2 para alimentação; - 2 SCA e SDL (aparentemente vão em pinos normais) - 2 Pinos de configuração: - GPIOI: este é um pino que é usado pelo sensor para indicar que os dados estão prontos. A biblioteca que usamos (Adafruit) não faz uso deste pino, mas para usuários avançados pode vir a ser útil. (Pode ser útil pra gente que não quer importar muitas bibliotecas); - XSHUT: o pino de desligamento do sensor. Por padrão é definido como HIGH. Quando a tensão no pino é LOW, o sensor entra no modo de desligamento. ([Para mais informaçôes clique aqui](https://www.usinainfo.com.br/blog/projeto-com-sensor-de-distancia-vl53l0x-e-arduino-para-alta-precisao/)) ![](https://i.imgur.com/c4uIEDQ.png). - Dimensões de 25 x 12.7 x 3.5mm; - [Infos importantes](https://osoyoo.com/2019/04/21/arduino-lesson-vl53l0x-time-of-flight-distance-sensor/): Esquemático do módulo, etc; - [Código da Equipe Neon para este sensor](https://github.com/project-neon/Esguicho/blob/feat/iron_cup_fevereiro/Software/Autonomous/distance_sensors.h); - Instruções da **equipe Neon** para utilizá-lo: "Esses sensores são bons Pra configurar eles a gente aqui na Neon usamos a biblioteca da Pololu ao invés da Adafruit. a sequência de ligação é assim: - Conecta o VCC e o GND - Coloca resistores de pull up no SDA e no SCL da comunicação, só um em cada linha já resolve, não precisa fazer pull up pra cada sensor - Cada sensor vai conectar o XShut à uma porta digital do arduino Para endereçar: No void setup, usando a biblioteca da Pololu: - coloca a porta de cada xshut dos sensores como OUTPUT, depois manda LOW pra todas elas. - O endereço é configurado um a um, para o primeiro, vc muda a porta para INPUT, e deixa as outras como OUTPUT ainda, depois usando a biblioteca vc faz o endereçamento. - Depois vc deixa a porta do que acabou de endereçar com INPUT mesmo, e muda a segunda para INPUT, e endereça o segundo, e faz isso pra todos os sensores. Depois disso, os sensores já vão conseguir trabalhar juntos sem conflito. Qualquer coisa dá uma olhada no nosso código e se houver dúvidas, só nos chamar que ajudamos no precisar"; - [Passo a passo da **equipe ThunderRatz** para o caso de não ser utilizado o Arduíno](https://github.com/ThundeRatz/VL53L0X); - Comentário positivo no grupo dos sumôs acerca da sua implementação com ESP32: ![](https://i.imgur.com/FKgtSxe.png) ### IMPORTANTE!! Existe também a versão VL53L1X. Aparentemente, as diferenças estão no range do sensor (L1x mede até 3m) e tem a capacidade de detectar mais de um objeto. [Resposta da Polulu acerca da diferença entre os sensores](https://forum.pololu.com/t/vl53l0xv2-vs-vl53l0x-vs-vl53l1x/15072); - [Página em ALEMÃO sobre suas diferenças](https://wolles-elektronikkiste.de/vl53l0x-und-vl53l1x-tof-abstandssensoren) (só colocar pra traduzir a página); - [Datasheet do sensor VL53L1x](https://www.st.com/resource/en/datasheet/vl53l1.pdf); - [Datasheet VL53L0x](https://www.st.com/resource/en/datasheet/vl53l0x.pdf). ## Sensor Sharp GP2Y0A21YK0F: ### +++ Já foi utilizado pela equipe TrincaBots no robô [mini Dino](https://trincabotz.com.br/projetos/dino/) e no [robô 3kg Hariyama](https://trincabotz.com.br/projetos/hariyama/)); **Quase certeza absoluta que atualmente utilizam o VL53L0x no Hariyama ### + Site da Polulu diz que a diferença de potencial na sua saída é 1.9V; ([Aqui](https://www.pololu.com/product/136/specs)) ### + Barato (R$20,60 + R$27,18 frete) na [Ali](https://pt.aliexpress.com/item/4001203665133.html); ### +++ Promete não ser muito afetado pela refletividade do objeto; ### - - Bem maiores: 44.5 mm × 18.9 mm × 13.5 mm (1.75″ × 0.75″ × 0.53″); ### Características: - Infravermelho; - Alimentação de 4.5 a 5.5V; - Sua saída é analógica; - Mede de 10 a 80 cm; - Utiliza a biblioteca SharpIR-Master; - Possui 3 pinos: - 2 pinos de alimentação; - 1 pino de sinal analógico. ![](https://i.imgur.com/g0SL1Er.png) - [Vídeo explicativo sobre sua implementação com o Arduino](https://youtu.be/O1TSqNo_Ykk); - [Texto sobre sua implementação com o Arduino](https://blogmasterwalkershop.com.br/arduino/como-usar-com-arduino-sensor-de-distancia-ir-longo-alcance-sharp-gp2y0a21yk0f) </details> Foto: Especificações: | Tensão | Corrente | Distância | Circuito Auxiliar | |--------|----------|-----------|-------------------| | ?V | ?mA | ?cm | ? | ### Sensores de Borda 2 Sensores na Frente e 1 Traseiro com PCBs Feitas pela Equipe com o [QRE1113](https://www.lcsc.com/product-detail/Reflective-Optical-Interrupters_onsemi-QRE1113GR_C232862.html) Foto: ![](https://assets.lcsc.com/images/lcsc/900x900/20221020_onsemi-QRE1113GR_C232862_front.jpg){width="300"} Especificações: | | Tensão | Corrente | Circuito Auxiliar | |--|--------|----------|-------------------| | QRE1113 - Emissor | 3V3 | 20mA | Resistor de 105R em Série | | QRE1113 - Receptor | 3V3 | Desprezível | Pullup com um Resistor de 47k | | PCB Fabricada pela Equipe | 3V3 | 20mA | Não Tem | ### Módulo Iniciar Módulo Iniciar [MicroStart Start Module](https://www.jsumo.com/microstart-sumo-minisumo-robot-start-module) Foto: ![](https://www.jsumo.com/microstart-sumo-minisumo-robot-start-module-496-15-B.jpg){width="300"} Especificações: | Tensão | Corrente | Circuito Auxiliar | |--------|----------|-------------------| | 3V3 | 3mA | Não Tem | ## Driver de Motor #### 2 DRV8871, um para cada motor Foto: ![drv8871](uploads/a0380796431e5f9fcbe45c174583a2c0/image.png "drv8871") Corrente de pico: 3,6A ### Reguladores de Tensão #### 1 Regulador [MINI-360]() de 14,8V - 16,8V para 5V Foto: ![](./../imagens/componentes_eletronicos/MINI-360.jpg){width="300"} Especificações: | Tensão de Entrada | Tensão de Saída | Corrente Máxima de Entrada | Corrente Máxima de Saída | Circuito Auxiliar | |-------------------|-----------------|----------------------------|--------------------------|-------------------| | 14,8V - 16,8V | 5V | | | Não Tem | #### Para versão apenas com o chip/modulo: 1 Regulador [LD1117](https://www.lcsc.com/product-detail/Linear-Voltage-Regulators-LDO_UMW-Youtai-Semiconductor-Co-Ltd-LD1117-3-3_C347229.html) de 5V para 3V3 Foto: ![](https://assets.lcsc.com/images/lcsc/900x900/20181213_UMW-Youtai-Semiconductor-Co---Ltd--LD1117-3-3_C347229_front.jpg){width="300"} Especificações: | Tensão de Entrada | Tensão de Saída | Corrente Máxima de Entrada | Corrente Máxima de Saída | Circuito Auxiliar | |-------------------|-----------------|----------------------------|--------------------------|-------------------| | 5V | 3V3 | | | Capacitor de 10uF do Vin para o GND e Capacitor de 10uF do Vout para o GND | ## Circuito de Proteção ### Discussão 1. Usar o Diodo Schottky igual ao do Meri 2. O diodo schottky que usamos tem um limite de corrente de 3A e tem queda de tensão em cima 3. Existe a opção de não possuirmos circuito de proteção 4. Dependendo do tamanho que ocupar da placa iremos tira-lo 5. Podemos usar um conector de bateria que seja mais seguro ### Definição A placa não terá circuito de proteção. ## Conexões e Conectores ### Conexão da Bateria #### Discussão 1. Usar borne e JST vermelho como já fazemos 2. Não usar borne e soldar os fios do JST Vermelho na placa 3. Usar borne e XT30 para as baterias 4. Não usar borne e soldar fio do XT30 na placa #### Definição Continuaremos a utilizar o JST vermelho para os conectores das baterias com borne. ### Conexão dos Motores #### Discussão 1. Usar borne e JST vermelho como já fazemos 2. Não usar borne e soldar os fios do JST Vermelho na placa 3. Usar borne e XT30 para as baterias 4. Não usar borne e soldar fio do XT30 na placa #### Definição Continuaremos a utilizar o JST vermelho para os conectores dos motores com borne. ### Conexão dos Sensores #### Discussão 1. Tentar usar o KK por ser simples e fácil, mesmo ele sendo grande; 2. Usar JST; 3. Usar DF13. #### Definição Foi decidido utilizar o conector JST PH para todos os sensores. ## LEDs ### Discussão 1. LED para bateria; 2. LED para os reguladores; 3. LEDs para o ESP32. ### Definição 1 LED para a bateria e 1 LED para o ESP32 que irá acender quando o robô iniciar a luta. ## Chave LIGA/DESLIGA ### Discussão 1. Usar a que temos nas outras versões 2. Usar Master Switch igual dos combates 3. Usar a que temos só que com a alavanca maior ### Definição O switch escolhido foi o SS-12D10L5, já utilizado em outras placas dos minis. Ele seria colocado na placa, mas teria a opção de colocá-lo externo e realizar a ligação com fios (Isso depende da disponibilidade de espaço na placa). ## Chave Modulo Iniciar ### Discussão 1. Usar o Switch do Atlas (igual o que tá implementado no 3kg) 2. Não usar nenhuma chave e só tirar e colocar o mod start com header ### Definição Terá uma chave para ligar e desligar o modulo iniciar. # :computer: Diagrama de Lógica ![image](uploads/98e00fb9e7920377d1b98c477b169d0e/image.png) # :zap: Diagrama de Potência ## Versão ESP32-DEVKIT V1 ![](https://i.imgur.com/5Ad0M9e.png) ## Versão ESP32-WROOM ![](https://i.imgur.com/QlXnZjf.png) # :pencil: Esquemático # 🟩 PCB