Escolar Documentos
Profissional Documentos
Cultura Documentos
CURITIBA
2023
INSTITUTO CARLOS CHAGAS
MESTRADO EM BIOCIÊNCIAS E BIOTECNOLOGIA
CURITIBA
2023
ii
INSTITUTO CARLOS CHAGAS
Termo de Aprovação
Examinadores:
Profª. Dra. Patricia Shigunov
Prof. Dr. Alexandre Dias Tavares da Costa
Prof. Dr. Amauri Amorin Assef
Suplentes:
Profª. Dra. Dalila Luciola Zanette
Profª. Dra. Sheila Cristina Nardelli
CURITIBA
2023
iii
AGRADECIMENTOS
iv
RESUMO
v
ABSTRACT
Equipment based on the Point-of-care (POC) concept (diagnosis at the point of care)
has been developed in recent years, aiming at the rapid molecular diagnosis of
diseases. Currently, LAMP (Loop-mediated isothermal amplification) technology,
considered simple, robust, and low-cost, is already widespread and its potential for
screening several diseases has already been reported in the literature, such as for the
diagnosis of COVID-19, tuberculosis, HIV, malaria, dengue and Zika virus. Compared
to the gold-standard PCR (Polymerase Chain Reaction) technique, the LAMP
technique is considered simpler because it does not require constant temperature
cycling and because there is a visual change of colors in the reaction tube, which
facilitates interpretation through naked eye results. In this work, the construction and
evolution of the technological maturity of two devices (hardware and firmware) based
on LAMP technology, with amplification and colorimetric detection capacity, will be
presented, aiming to increase the TRL capacity of the project. For the construction of
the LAMP equipment to occur, it is essential to develop an electronic circuit with the
necessary robustness to allow the acquisition and control of the signals responsible for
the amplification and detection of biological samples. The first equipment built and
presented (Apollo) is a proof of concept of a LAMP equipment with TRL 4, and the
second equipment (Cardinal) is built based on improvements and maturation of the
technology used in the construction of the first equipment, aiming at TRL 5. Both
devices can analyze up to eight samples in 200uL microtubes, with colorimetric
detection via color sensors. The first equipment uses an Arduino Nano microcontroller,
an analog color sensor and a resistor heating system (Joule effect) for both the
samples and the device cover. The two had their operation proven through the
amplification and detection of samples containing SARS-CoV-2 and the second was
still capable of amplifying, but without detection, leprosy samples. The major difference
of the second equipment is more robust electronics, a heating and cooling system of
the sample through a thermoelectric device, with higher heating and cooling rates (gain
of up to 5 times), the use of a microcontroller with greater capacity (260 times faster)
and storage (125 times bigger) and an exchange to color sensors more widely
available.
vi
LISTA DE FIGURAS
vii
Figura 28 – MOSFET IRL3103, componente que controla o fluxo de potência
fornecida a placa de aquecimento. ............................................................................ 50
Figura 29 - Micro ventilador, para resfriamento das amostras. ................................. 51
Figura 30 - Arduino Nano, componente responsável pelo controle geral do
equipamento Apollo. .................................................................................................. 51
Figura 31 - Sensor de temperatura LM35 acoplado no alumínio da placa Inferior .... 52
Figura 32 - 74HC4051D, Multiplexador/Demultiplexador para escolha do par
LED/TCS3200 ........................................................................................................... 52
Figura 33 - Buzzer, para alarme sonoro. ................................................................... 53
Figura 34 - Exemplo do Display OLED utilizado no projeto Apollo. ........................... 53
Figura 35 - Diagrama esquemático eletrônico da placa contendo o botão e o display
do equipamento......................................................................................................... 54
Figura 36 - Diagrama esquemático da Placa mãe do Apollo. Contendo os itens
citados no texto da seção 3.3.3 ................................................................................. 55
Figura 37 - Diagrama esquemático eletrônico da de emissão do sistema de detecção
colorimétrica. ............................................................................................................. 56
Figura 38 - Diagrama esquemático eletrônico da placa de detecção do sistema de
detecção colorimétrica. ............................................................................................. 57
Figura 39 – Visão sistemática do LAMP visando a construção do Cardinal .............. 58
Figura 40 - Diagrama de blocos da eletrônica do Cardinal ....................................... 59
Figura 41- Pastilha termoelétrica ............................................................................... 59
Figura 42 - Driver Motor Ponte H L298n ................................................................... 60
Figura 43 – Sensor de cor VEML3328 ...................................................................... 60
Figura 44 – Foto do ESP32, componente responsável pelo controle geral do
equipamento Apollo. .................................................................................................. 61
Figura 45 - Exemplo do Display OLED utilizado no projeto Apollo. ........................... 62
Figura 46 - Rotary Encoder ....................................................................................... 62
Figura 47 - Conversor bidirecional de nível lógico 3,3V/5V ....................................... 63
Figura 48 - Fonte chaveada 12V 10A ........................................................................ 63
Figura 49 - Diagrama Esquemático do Cardinal........................................................ 64
Figura 50 - Dispositivos para monitoramento de temperatura em tempo real ........... 65
Figura 51 - Amostras de SARS-CoV-2. (a) Resultado positivo (+). (b) Resultado
indeterminado (IND). (c) Resultado negativo (-), ....................................................... 66
Figura 52 - Configuração Mux / Demux que permite uma seleção exclusiva de um
par LED / sensor de cor. Isso também reduz a quantidade de pinos usados do
sistema embarcado/microcontrolador (MCU). ........................................................... 67
Figura 53 - Demonstração do sistema de detecção de cor, em que uma placa emite
uma luz branca via LED; O LED ilumina o tubo com uma luza branca
transversalmente e a luz absorvida na solução (rosa (-), amarela (+) ou laranja
(Indeterminada)) é transmitida e capturada no sensor de cor. .................................. 68
Figura 54 - Caixa do instrumento que contém a placa principal da eletrônica, o bloco
de aquecimento/detecção da LAMP, o aquecedor da tampa, os ventiladores e o
display OLED. (a) Tampa fechada durante os testes (b) Tampa aberta para
inserir/remover os microtubos. .................................................................................. 69
viii
Figura 55 - Placas que compõe a parte eletrônica do equipamento Apollo. a) Placa
mãe do aparelho. b) Placa contendo uma matriz com 8 sensores de cor TCS3200. c)
Placa com o Display OLED, com um botão e um LED verde. d) Placa contendo 8
LEDs. e) Alumínio da tampa. f) Placa de aquecimento superior com o sensor de
temperatura LM35 para aquecimento da tampa. g) Alumínio inferior, para
aquecimento das amostras e suporte das placas de condução da luz de detecção. h)
Placa de aquecimento inferior ................................................................................... 70
Figura 56 - Placa de LEDs ........................................................................................ 70
Figura 57 - Placa de Sensores de Cor ...................................................................... 71
Figura 58 - Posicionamento dos componentes internos do projeto Apollo. ............... 71
Figura 59 - Estados de funcionamento do termociclador Apollo, implementados no
software do sistema embarcado. ............................................................................... 73
Figura 60 - Um exemplo do controle PID desajustado do instrumento Apollo no
controle da temperatura, tentando manter a temperatura do bloco das amostras na
temperatura de setpoint durante uma janela de tempo de 10 minutos. ..................... 74
Figura 61 - Um exemplo do controle PID do instrumento Apollo no controle da
temperatura, mantendo os aquecedores superior e inferior nas temperaturas de
setpoint durante uma janela de tempo de 30 minutos. O aquecimento superior tem a
finalidade de evitar a condensação do líquido nas paredes do tubo. ........................ 74
Figura 62 - Comparação de reações colorimétricas RT-LAMP no protótipo e em um
aparelho comercial. ................................................................................................... 75
Figura 63 – Housing do equipamento Cardinal ......................................................... 80
Figura 64 - Placa mãe do Cardinal ............................................................................ 81
Figura 65 - Placa de recepção com os sensores de cor VEM3328 e a placa de
emissão com os LEDs brancos. ................................................................................ 81
Figura 66 - Placa do display, contendo um LED indicador, display OLED e botão
seletor do tipo Rotary Encoder. ................................................................................. 82
Figura 67 - Posicionamento dos componentes internos do projeto Apollo. ............... 83
Figura 68 - Exemplo de seleção do Teardrop em um programa de confecção de
placas de circuito impresso ....................................................................................... 84
Figura 69 - Visão da parte inferior da PCI do projeto Cardinal .................................. 85
Figura 70 - Visão da parte superior da PCI do projeto Cardinal ................................ 85
Figura 71 - BOM interativo da placa mãe do Cardinal ............................................... 86
Figura 72 - Estados de funcionamento do equipamento Cardinal, implementados no
software do sistema embarcado. ............................................................................... 88
Figura 73 - Tela de boas-vindas do equipamento Cardinal ....................................... 89
Figura 74 - Menu inicial do equipamento Cardinal, com possibilidade de seleção do
tipo de ciclo a ser executado, configurações do equipamento e menu de
informações. .............................................................................................................. 89
Figura 75 - Menu de seleção de ciclos do Cardinal, com a opção da escolha de RT-
PCR (Não implementado), RT-LAMP e voltar para o menu principal. ....................... 90
Figura 76 - Tela de escolha de temperatura e tempo para o RT-LAMP. ................... 90
Figura 77 - Tela instruindo a inserção das amostras e depois apertar o botão para
dar prosseguimento ................................................................................................... 90
ix
Figura 78 – Telas que aparecem durante o LAMP. Começando pelo aquecimento da
tampa, seguindo pelo RT-LAMP e terminando com o resfriamento da amostra. ...... 91
Figura 79 - Processo de detecção e tela dos resultados ........................................... 91
Figura 80 - Menu de configurações, onde é possível ver os valores lidos pelos
sensores de cor e de temperatura. ............................................................................ 91
Figura 81 - Menu de cor em configurações, onde é possível ler os valores de cor de
maneira individual. .................................................................................................... 92
Figura 82 - Menu com as informações do projeto, informando a equipe que participou
do projeto, e as instituições patrocinadoras. ............................................................. 92
Figura 83 - Bloco de aquecimento do Cardinal, com o alumínio de posicionamento de
amostras, dispositivo Peltier, Ponte H e ventoinha. .................................................. 93
Figura 84 - Comparação de reações colorimétricas RT-LAMP no Cardinal e em um
aparelho comercial. ................................................................................................... 94
Figura 85 – Equipamentos do tipo POC RT-LAMP Cardinal e Apollo lado a lado..... 97
x
LISTA DE TABELAS
xi
LISTA DE SIGLAS E ABREVIATURAS
xii
SISO Single-input, single-output (Entrada única, saída única)
SMD Surface mounted device (Dispositivo montado na superfície)
SOIC Small outline integrated circuit (Circuito integrado de pequeno
contorno)
SUS Sistema Único de Saúde
TRL Technology Readiness Level (Nível de prontidão tecnológica)
xiii
SUMÁRIO
1. INTRODUÇÃO ................................................................................................... 16
1.1. A PANDEMIA DA COVID-19 ............................................................................... 16
1.2. TESTES DIAGNÓSTICO DO TIPO POINT-OF-CARE ......................................... 17
1.3. LAMP PARA AMPLIFICAÇÃO DE ÁCIDOS NUCLEICOS .................................. 18
1.4. DISPOSITIVOS LAMP ......................................................................................... 20
1.5. CONSTRUÇÃO DE DISPOSITIVOS POC LAMP ................................................ 22
1.5.1. CONTROLE DE TEMPERATURA .................................................................. 22
1.5.1.1. EFEITO DAS VÁRIAVEIS DO CONTROLE PID (PROPORCIONAL
– INTREGAL - DERIVATIVO) NO CONTROLE DA TEMPERATRA .............. 24
1.5.1.2. RESPOSTA TRANSITÓRIA DE UM SISTEMA .............................. 25
1.5.2. USO DE SISTEMAS EMBARCADOS ............................................................. 27
1.5.2.1. ESPECIFICAÇÕES TÉCNICAS DO ESP32 ................................... 28
1.5.2.2. ESPECIFICAÇÕES TÉCNICAS DO ARDUINO NANO................... 29
1.5.2.3. DEFINIÇÃO DE FIRMWARE .......................................................... 30
1.5.2.4. SINAL I²C ........................................................................................ 30
1.5.3. CONTROLE DE POTÊNCIA VIA PWM (Pulse-Width Modulation) .................. 31
1.5.4. SISTEMA ELETRÔNICO ................................................................................ 33
1.5.4.1. FORMAS DE AQUECIMENTO ....................................................... 33
1.5.4.2. PONTE H ........................................................................................ 34
1.5.4.3. FIDELIDADE DE SINAL NA ELETRÔNICA .................................... 35
1.5.4.3.1. CAPACITORES DE DESACOPLAMENTO .................................. 35
1.5.4.3.2. RESISTORES PULL-UP E PULL-DOWN .................................... 36
1.6. MATURIDADE TECNOLÓGICA .......................................................................... 37
1.6.1. TRL 1 – PRINCÍPIOS BÁSICOS OBSERVADOS ........................................... 38
1.6.2. TRL 2 – CONCEITO TECNOLÓGICO FORMULADO .................................... 39
1.6.3. TRL 3 – PROVA DE CONCEITO .................................................................... 39
1.6.4. TRL 4 – VALIDAÇÃO DA TECNOLOGIA EM LABORATÓRIO ....................... 40
1.6.5. TRL 5 – VALIDAÇÃO DO PROTÓTIPO EM AMBIENTE RELEVANTE .......... 40
1.6.6. TRL 6 – CONSOLIDAÇÃO DA TECNOLOGIA EM AMBIENTE RELEVANTE 41
1.6.7. TRL 7 – DEMONSTRAÇÃO DA TECNOLOGIA EM AMBIENTE
OPERACIONAL ............................................................................................................ 41
1.6.8. TRL 8 – SISTEMA COMPLETO E QUALIFICADO ......................................... 42
1.6.9. TRL 9 – INCORPORAÇÃO DA TECNOLOGIA............................................... 42
2. OBJETIVOS ....................................................................................................... 44
2.1. OBJETIVO GERAL .............................................................................................. 44
xiv
2.2. OBJETIVOS ESPECIFICOS ................................................................................ 44
3. MATERIAIS E MÉTODOS.................................................................................. 45
3.1. BLOCO TÉRMICO DE AQUECIMENTO .............................................................. 45
3.2. HOUSINGS DO EQUIPAMENTOS ...................................................................... 46
3.3. CONSTRUÇÃO DO EQUIPAMENTO 1 – APOLLO............................................. 47
3.3.1. SISTEMA DE AQUECIMENTO DO APOLLO ................................................. 48
3.3.2. DETECÇÃO COLORIMÉTRICA ..................................................................... 49
3.3.3. CIRCUITO ELETRÔNICO DE CONTROLE .................................................... 50
3.4. CONSTRUÇÃO DO EQUIPAMENTO 2 – CARDINAL ......................................... 58
3.4.1. SISTEMA DE AQUECIMENTO DO CARDINAL ............................................. 59
3.4.2. DETECÇÃO COLORIMÉTRICA ..................................................................... 60
3.4.3. CIRCUITO ELETRÔNICO .............................................................................. 61
3.5. PROCESSO DE CALIBRAÇÃO .......................................................................... 65
3.6. REAÇÃO RT-LAMP COLORIMÉTRICO PARA DIAGNÓSTICO DE COVID-19 .. 65
3.7. PROCESSO DE DETECÇÃO COLORIMÉTRICA................................................ 66
4. RESULTADOS E DISCUSSÃO ......................................................................... 69
4.1. APOLLO .............................................................................................................. 69
4.1.1. CARCAÇA DO APOLLO (HOUSING) ............................................................. 69
4.1.2. SISTEMA ELETRÔNICO DO APOLLO .......................................................... 70
4.1.3. FIRMWARE DO APOLLO............................................................................... 72
4.1.4. IMPLEMENTAÇÃO DO PID ........................................................................... 73
4.1.5. AMPLIFICAÇÃO DE AMOSTRAS CLÍNICAS COM O APOLLO ..................... 75
4.1.6. DETECÇÃO COLORIMÉTRICA COM O APOLLO ......................................... 77
4.1.7. CONCLUSÂO PARCIAL DO INSTRUMENTO APOLLO................................. 78
4.2. CARDINAL .......................................................................................................... 79
4.2.1. CARCAÇA DO CARDINAL (HOUSING) ......................................................... 79
4.2.2. SISTEMA ELETRÔNICO DO CARDINAL ....................................................... 80
4.2.2.1. MELHORIAS NO DESENVOLVIMENTO DAS PLACAS................. 83
4.2.3. FIRMWARE DO CARDINAL ........................................................................... 86
4.2.3.1. TELAS DO EQUIPAMENTO ........................................................... 89
4.2.4. IMPLEMENTAÇÃO DO PID NO CARDINAL E SEU SISTEMA DE
AQUECIMENTO ........................................................................................................... 92
4.2.5. AMPLIFICAÇÃO ............................................................................................. 93
4.2.6. DETECÇÃO COLORIMÉTRICA ..................................................................... 95
4.2.7. CONCLUSÃO PARCIAL DO CARDINAL ........................................................ 95
5. CONCLUSÃO ..................................................................................................... 97
6. REFERÊNCIAS BIBLIOGRÁFICAS ................................................................ 101
xv
1. INTRODUÇÃO
Neste capítulo é apresentado uma revisão bibliográfica, contendo uma visão sobre
o uso de equipamentos Point-Of-Care (POC) e a tecnologia LAMP (Loop-Mediated
Isothermal Amplification (Amplificação isotérmica mediada por loop)) para testes
diagnóstico, conceitos da utilização de sistemas embarcados e confecção/produção
de circuitos eletrônicos para a criação destes equipamentos destinados à saúde,
utilizando o combate da pandemia de COVID-19 (Corona Virus Disease (Doença do
coronavírus)) como exemplo de aplicação.
16
A pandemia começou em Wuhan (Wang et al., 2020), na China, e espalhou-se
pelo mundo, mas com as consequências mais graves principalmente em países não
desenvolvidos (Ciotti et al., 2020). O controle da pandemia depende de diversos
fatores, sendo os mais importantes o diagnóstico e monitoramento de casos e o uso
de vacinas (Studdert, D. M., & Hall, M. A.., 2020).
17
2021, os instrumentos e técnicas de POC precisam ser rápidos, baratos e com alta
sensibilidade e seletividade.
18
O método LAMP também foi desenvolvido para realizar a detecção de diversos
patógenos, incluindo vírus de RNA, como o SARS-CoV-2, por exemplo, utilizando
uma amplificação em temperatura constante mediada por loop de transcrição reversa,
denominado RT-LAMP. Isto é possível através da adição de uma transcriptase
reversa estável ao calor (Hong et al., 2004; Kurosaki et al., 2007; Soliman e El-
Matbouli, 2006; Yoshida et al., 2007). Existe também a enzima Bst 2.0 que possui a
capacidade de transcrição reversa, simplificando a reação.
A técnica RT-LAMP é frequentemente combinada com métodos de detecção
colorimétricos, como indicadores de pH e corantes fluorescentes (Thi et al., 2020;
Njiru et al, 2008). Esta abordagem permite uma interpretação rápida dos resultados,
dispensando a necessidade de equipamentos sofisticados ou pessoal treinado. O
vermelho de fenol, por exemplo, é um indicador de pH que muda a cor da reação RT-
LAMP de rosa (pH ~ 8) para amarelo (pH ~ 6) quando ocorre a amplificação.
Esta combinação de visualização de mudança de cor de forma visual e uso de
um simples termo bloco para realizar a reação é uma grande vantagem no
desenvolvimento de instrumentos POC para essa e outras doenças (Thi et al., 2020).
Na Figura 3 é possível ver um resumo do fluxo de trabalho para se utilizar
técnica LAMP (Moehling et al., 2021). Um detalhe é que esse fluxo pode existir para
outras técnicas de amplificação.
Figura 3 – Fluxo de trabalho de diagnósticos baseados em LAMP, são realizadas as seguintes etapas:
1 – Coleta da amostra: Podendo ser feita através de swab (nasal ou oral), sangue, urina ou fezes.
2 - Preparação da amostra: Podendo incluir lise celular, extração, purificação e eluição.
3 – Amplificação da amostra: Através de termocicladores.
4 - Detecção da amostra: Pode se utilizar de métodos colorimétricos, fluorescentes e turbidimétricos.
19
Os protocolos típicos de LAMP consistem em 4 etapas:
1. Coleta da Amostra: Amostras comuns incluem saliva, swab (nasal ou oral),
sangue, urina e fezes. Dependendo da complexidade da amostra (como fezes e
sangue) um processo de extração do ácido nucleico é necessário;
2. Preparação da amostra: A preparação típica da amostra inclui lise celular,
extração, purificação e eluição. O LAMP não requer necessariamente extração,
purificação e eluição de ácidos nucleicos porque a Bst DNA polimerase é tolerante
a inibidores comuns de matriz de amostra;
3. Amplificação da amostra: Alvos são amplificados via LAMP usando um
termociclador ou pequeno equipamento (banho-maria, por exemplo) em uma
única temperatura (60–70°C). A temperatura de 65 ºC é a sua temperatura ótima
de trabalho;
4. Detecção da amostra: Métodos colorimétricos, fluorescentes e turbidimétricos são
as leituras de sinal mais comuns usadas para detectar amplicons LAMP. Para
analisar os resultados (endpoint ou em tempo real), podem ser utilizadas por
exemplo: leitura a olho nu, imunoensaio de fluxo lateral, leitor de fluorescência,
sensor de cor ou turbidímetro.
20
incluindo outras aplicações POC (Mohammed et al. 2021, Aswathy e Anusree, 2018).
A Figura 4 apresenta exemplos de dispositivos LAMP POC.
a) Capacidade de amostras 4
Fabricante GENCURIX
b) Capacidade de amostras 16
Hibergene
Fabricante
Diagnostics
c) Capacidade de amostras 18
Fabricante Hilab
d) Capacidade de amostras 4
Fabricante Visuri
e) Capacidade de amostras 12
Fonte: Medical Expo3 (a), Gencurix4 (b), Hibergene Diagnostics5 (c), Hilab6 (d), Visuri7 (e) (2022)
21
Uma vez que a utilização do RT-LAMP colorimétrico realiza o processo de
detecção de forma mais rápida e simples (sem o uso de lasers e filtros), é
imprescindível que os equipamentos POC desenvolvidos para este tipo de
diagnóstico sejam dotados de uma interpretação automática dos resultados.
22
Figura 5 - Controle no qual um processo tem seu valor monitorado e controlado com o uso do PID.
23
pelo aumento ou a diminuição da energia fornecida ao bloco de aquecimento com
a finalidade de aquecer ou resfriar a amostra, respectivamente.
Portanto, os equipamentos desenvolvidos neste estudo possuem um controle
de temperatura através do sistema de controle PID.
24
Figura 6 – Influência do controle para diferentes ganhos proporcionais, integrais e derivativos.
25
temperatura apresentado pelo sistema se estabilize dentro de uma faixa de
temperatura definida como ideal, variando o mínimo possível em torno de 65 ºC;
• %Overshoot é a quantidade pela qual o sinal de resposta pode exceder o valor
final. %Undershoot é a quantidade pela qual o sinal de resposta pode superar,
negativamente, o valor inicial (MB Bayram et al. 2013). Em um POC LAMP é o
quanto a temperatura do sistema possa ter superado o setpoint, como por exemplo
chegar a 67 ºC, apresentando então um Overshoot de 2 ºC (3%).
Figura 7 - Gráfico de resposta transitória típica de sistemas de segunda ordem a um sinal degrau.
26
1.5.2. USO DE SISTEMAS EMBARCADOS
Para monitorar e controlar todos os periféricos e funcionalidades do
instrumento, um sistema embarcado, como uma placa Arduino ou o ESP32 (Figura
8), pode ser usado.
Figura 8 - Sistemas embarcados Arduino Nano e ESP32 DevKitC
27
1.5.2.1. ESPECIFICAÇÕES TÉCNICAS DO ESP32
A placa ESP32 possui, como principais características para esse projeto,
as apresentadas na Figura 9.
28
configurados como entradas (podendo ler algum sensor ou botão, por exemplo) ou
saídas (podendo acionar um motor, um LED (Light Emitter Diode (diodo emissor de
luz) etc.). Os pinos do tipo ADC (Analog to Digital Converter) são entradas para o
conversore analógico digital que são utilizados para ler sinais analógicos, como de
um sensor de temperatura, e transformar em sinal digital para ser interpretado pelo
sistema embarcado.
O ESP32 conta também com Wi-Fi e Bluetooth integrados, 25 pinos PWM e 2
pinos para comunicação I2C e possui dimensões de 28 x 55 mm. Além do que foi
apresentado, o ESP32 contém algumas outras funcionalidades, configurações,
protocolos de comunicação e modos de funcionamento que não agregam a ser
mencionados no escopo deste trabalho.
29
de 5V. Possui 8 pinos digitais, 6 ADC, 6 PWM e 2 pinos para conexão I2C. Possui
memória flash de 32kB, memória interna SRAM de 2kB.
O Arduino Nano não possui Wi-Fi e Bluetooth integrados e possui dimensões
de 18 x 45 mm. Além do que foi apresentado, o Arduino Nano contém algumas outras
funcionalidades, configurações, protocolos de comunicação e modos de
funcionamento que não agregam a ser mencionados no escopo deste trabalho.
30
Figura 11 - Diagrama demonstrativo de uma conexão padrão do protocolo I²C
No I2C o SDA (Serial Data ou dados seriais) é o barramento pelos quais são
recebidos e enviados os dados e o SCL (Serial Clock ou Clock serial) é o barramento
que sincroniza o tempo transmissão e recepção de todos os componentes presentes
na rede.
O mestre reconhece cada dispositivo de maneira distinta, pois cada um possui
um endereço único no barramento e existe uma hierarquia de transmissão de dados
que garante que cada dispositivo se comunique respeitando a transmissão dos outros
e o tempo de leitura do dispositivo mestre.
Em dispositivos POC LAMP que trabalham com a detecção de múltiplas
amostras é importante a implementação de uma metodologia que permita que o
sistema embarcado possa lidar com diversos sensores, dado a sua limitação física de
entradas que, além dos múltiplos sensores, também são responsáveis pela
monitoração de outros periféricos conectados, problemática que pode ser resolvida
com o emprego do sinal I2C.
31
Figura 12 - Uso do PWM em diferentes ciclos de trabalho. A linha tracejada representa a saída do sistema e o
sinal em pulsações representa o PWM.
Fonte – Portescap13
Figura 13 - Uso do sinal PWM (pulsações) para controlar o sinal de alimentação (laranja) de outro componente.
32
Figura 14 - Exemplo do uso do PWM para entregar diferentes valores de potência para uma lâmpada.
33
pastilha tem uma “face fria” e uma “face uente” ue podem se inverter caso
a polaridade da diferença de potencial aplicada nos seus polos inverta. Em outras
palavras é um dispositivo feito para aquecer e resfriar em proporcionalidade à
potência que lhe é fornecida. A inversão da polaridade aplicada na pastilha pode ser
feita através do uso de uma ponte H, explicada com maiores detalhes no item 1.5.4.2.
Outra técnica possível de aquecimento pode ser através do efeito Joule (se
utilizando de um elemento resistivo, como acontece em chuveiros elétricos), que é
menos convencional em termocicladores pela dificuldade de alternar rapidamente
entre diferentes faixas de temperatura, o que compromete algumas técnicas utilizadas
no termociclador como o RT-PCR. Assim sendo, o efeito Joule pode ser utilizado em
instrumentos que trabalham somente com LAMP por se manter somente a uma
temperatura, o que diminui o custo de construção do aparelho por precisar de menos
elementos em sua construção. A construção de termocicladores usando o efeito Joule
para aquecimento já foi demonstrado por Oliveira et al. (2021).
1.5.4.2. PONTE H
A ponte H é um tipo de circuito eletrônico que inverte a polaridade aplicada a um
dispositivo. Um exemplo do uso de uma ponte H invertendo a polaridade de uma
carga pode ser visto na Figura 16.
haves , , e
ão permitem a passagem de corrente
haves e
Permitem passagem de corrente
haves e
ão permitem passagem de corrente
haves e
ão permitem passagem de corrente
haves e
Permitem passagem de corrente
34
por exemplo um trocar a direção que um motor está girando ou, no caso de um
termociclador, inverter a polaridade aplicada a pastilha termoelétrica para trocar seu
estado de aquecimento para resfriamento.
35
Isso é frequentemente necessário pois em alguns circuitos o funcionamento
de um dispositivo pode criar ruídos que interfiram no funcionamento adequado de
outros componentes.
36
1.6. MATURIDADE TECNOLÓGICA
O desenvolvimento de um equipamento eletrônico se dá sob a forma de
protótipos, testes e entregas. Internacionalmente existe uma classificação de
tecnologias por meio de avaliações de seus níveis de maturidade conhecido como
Technology Readiness Level (TRL) e no Brasil essa avaliação segue a norma NBR
ISO 16290:2015.
Na Figura 19 são apresentados os 9 níveis de maturidade do TRL divididos em
3 grandes categorias:
• Pesquisa:
1. Princípios básicos observados;
2. Conceito da tecnologia formulado;
3. Prova de conceito experimental.
• Desenvolvimento:
4. Tecnologia validada em laboratório;
5. Tecnologia validade em ambiente relevante;
6. Tecnologia demonstrada, com consistência de funcionamento, em ambiente
relevante.
• Entrega:
7. Protótipo do sistema demonstrado em ambiente operacional;
8. Sistema completo e qualificado;
9. Sistema final consolidado em ambiente operacional.
37
Figura 19 - Technology Readiness Level (TRL).
38
tecnologia. Não são necessariamente definidos os componentes, mas sim o que se
espera que os componentes sejam capazes de resolver.
Seguem alguns indicadores desta etapa:
• As atividades básicas de pesquisa foram realizadas e os princípios básicos foram
definidos;
• Princípios e descobertas foram publicados na literatura (por exemplo, artigos de
pesquisa, artigos revisados por pares etc.).
39
• Componentes separados foram validados em um ambiente de laboratório.
40
• Componentes/subsistemas ou processos semi-integrados foram validados em um
ambiente simulado;
• Como o ambiente simulado difere do ambiente operacional esperado e como os
resultados do teste se comparam com as expectativas são compreendidos.
41
e integrado com sistemas operacionais de hardware, demonstrando viabilidade
operacional. A maioria dos bugs de software foi removida. Documentação limitada
disponível. Instalação, execução e avaliação do software no ambiente de objetivo real,
com demonstração do uso pelos clientes. Nesta etapa é esperada a capacidade de
produzir o produto e/ou seus subconjuntos em ambiente representativo de produção.
Seguem alguns indicadores desta etapa:
• Protótipo em escala real com forma pronta, ajuste e função desenvolvidos;
• Protótipo em escala real demonstrado em um ambiente operacional, mas sob
condições limitadas.
42
• A tecnologia foi implantada com sucesso e comprovada em uma ampla gama de
condições operacionais;
• Relatórios operacionais, de teste e avaliação foram concluídos;
• A tecnologia está disponível abertamente no mercado e/ou foi vendida em seu
estado atual de oferta de serviço para fins de teste ou desenvolvimento.
43
2. OBJETIVOS
44
3. MATERIAIS E MÉTODOS
45
O bloco de alumínio é utilizado como condutor de calor, o que garante uma
distribuição uniforme de calor ao longo do bloco e, consequentemente, nas amostras.
O aquecedor superior possui uma placa fina de alumínio acoplada a uma outra PCI
com a mesma finalidade de distribuição uniforme de calor.
O bloco de alumínio inferior foi feito com oito estruturas cônicas verticais
distribuídas uniformemente na região mais centralizada de seu corpo. As estruturas
são utilizadas para garantir o correto posicionamento dos microtubos do equipamento
e aumentar a área de contato para transferência de calor. Alinhado com as estruturas
cônicas, o bloco possui oito caminhos horizontais para que a luz do LED percorra os
microtubos, chegando ao sensor de cores. Um sensor de temperatura LM35 com
encapsulamento TO220 foi fixado em uma extremidade do bloco para adquirir a
temperatura. Em ambas as extremidades da peça, há furos para fixar o bloco de
aquecimento à carcaça do instrumento e ao sensor de temperatura, e furos
horizontais para fixar as placas emissora e receptora utilizadas no processo de
detecção colorimétrica.
Fonte: 3DLab19.
46
3.3. CONSTRUÇÃO DO EQUIPAMENTO 1 – APOLLO
De um ponto de vista sistemático, o equipamento para a técnica LAMP para
detecção de Covid-19, necessita de um aquecimento até 65 ºC da amostra, mantida
por 30 minutos sem que ocorra a evaporação do líquido. Após os 30 minutos resfriar
as amostras e fazer a leitura e interpretação da cor presente no tubo, provendo o
diagnóstico. Essa característica pode ser vista na Figura 22. A ideia desse
equipamento era ser o mais simples possível, sendo que este apenas necessita
apertar um botão para funcionar. Para tal, todas as características de aquecimento e
tempo foram diretamente inseridas no firmware do instrumento, não havendo
possibilidade de ajustes e variações nesses parâmetros de forma externa pelo
usuário, apenas através de programação.
47
Figura 23 - Diagrama de blocos da eletrônica do equipamento LAMP Apollo
Figura 24 - Máquina de fresagem e furação de PCI LPKF S103 e placas PCI FR4.
O resistor de cobre projetado na PCI inferior (Figura 25) tem uma resistência
total de aproximadamente 2, Ω e a placa P I superior 2, Ω. O resistor foi projetado
em configuração “zig-zag” para melhor distribuição de calor.
48
Figura 25 - Componentes do bloco de aquecimento inferior do projeto Apollo. (a) Placa de aquecimento; (b)
Bloco de alumínio; (c) Sistema de aquecimento integrado.
Figura 26 - Componentes do sistema de aquecimento superior do projeto Apollo. (a) Placa de aquecimento; (b)
Placa de alumínio; (c) Sensor de temperatura.
49
Uma placa PCI foi fabricada também se utilizando da LPKF S103, como
descrito no item 3.3.1, mas com um projeto diferente para suportar os terminais dos
sensores de cor. A placa PCI de detecção contém oito sensores de cor TCS3200
distribuídos uniformemente ao lado de capacitores de filtro e resistores limitadores de
corrente.
A placa com os TCS3200 funciona em conjunto a uma placa de LEDs fabricada
da mesma forma que a placa contendo os sensores de cor TCS3200, possuindo um
projeto diferente utilizado para comportar oito LEDs SMD (Surface-mount Device ou
Tecnologia de montagem superficial) e resistores limitadores de corrente.
Figura 28 – MOSFET IRL3103, componente que controla o fluxo de potência fornecida a placa de aquecimento.
50
• Dois transistores BC817 da Rectron utilizados para o acionamento das duas
ventoinhas 12V, 0,13 A de 40x40x10mm da Botto Brazil (Figura 29), um para cada.
O transistor, assim como o MOSFET, funciona como uma chave para o
acionamento de um componente. A diferença é a potência que eles fornecem, em
que o MOSFET é um componente mais robusto para correntes maiores. As
ventoinhas são responsáveis pelo resfriamento do bloco de aquecimento ao final
da reação LAMP.
Figura 29 - Micro ventilador, para resfriamento das amostras.
• Foi escolhido o sistema embarcado Arduino Nano, da Arduino, (Figura 30), que
contém o firmware com todas as instruções para o funcionamento do dispositivo,
o controle PID para o aquecimento, o controle do resfriamento, o processo para
detecção colorimétrica e o controle de todos os outros periféricos do dispositivo
através do gerenciamento de entradas e saídas.
Figura 30 - Arduino Nano, componente responsável pelo controle geral do equipamento Apollo.
51
(Figura 31) e ter uma grande área de contato, o que ocasiona uma melhoria no
processo de aquisição da temperatura, enquanto o utilizado na placa superior tem
um encapsulamento do tipo SOIC8. O sensor é, de acordo com a fabricante Texas
Instruments, calibrado em graus Celsius, tem escala linear, tem 0,5º C de precisão
(a 25 ºC), trabalha entre -55 ºC e 150 ºC e tem baixo consumo de potência.
• Um buzzer (adquirido via Baú da Eletrônica) (Figura 33) para sinalização sonora.
O Buzzer é um elemento que emite som quando acionado, e é utilizado para
52
sinalizar ao usuário do aparelho sobre algumas das etapas de seu funcionamento,
como inicialização, finalização do LAMP e resultados prontos para leitura.
• Para comunicação visual, foi utilizado um display OLED da Adafruit (Figura 34) de
0,96 polegadas, para indicar ao usuário as informações relevantes do
funcionamento do aparelho para o usuário, como o tempo do LAMP, a temperatura
e os resultados da detecção. No display também são mostradas informações
sobre o estado atual do aparelho e eventuais instruções ao usuário.
• Além de todos esses circuitos, mais alguns componentes são usados para limpar
e estabilizar os sinais do circuito, como capacitores de filtragem. Um fusível é
usado para segurança do circuito. O instrumento é alimentado por um adaptador
AC/DC (entrada 100-240V—50/60 Hz — saída 12V, 5A (FY, W-T5000 – Hechoen-
China).
As seguintes figuras mostram os diagramas esquemáticos eletrônicos das placas
de circuito impresso desenhadas para construção do equipamento. As placas serão
descritas com mais detalhes no item 4.2.2:
53
Figura 35 - Diagrama esquemático eletrônico da placa contendo o botão e o display do equipamento.
54
Figura 36 - Diagrama esquemático da Placa mãe do Apollo. Contendo os itens citados no texto da seção 3.3.3
55
Figura 37 - Diagrama esquemático eletrônico da de emissão do sistema de detecção colorimétrica.
56
Figura 38 - Diagrama esquemático eletrônico da placa de detecção do sistema de detecção colorimétrica.
57
3.4. CONSTRUÇÃO DO EQUIPAMENTO 2 – CARDINAL
58
Figura 40 - Diagrama de blocos da eletrônica do Cardinal
59
Figura 42 - Driver Motor Ponte H L298n
Fonte: FilipeFlop29
60
No Apollo, o Mux/Demux se encontra na placa mãe, enquanto no Cardinal
existe um na placa de detecção e um na placa de emissão e isso foi feito com a
finalidade de diminuir o cabeamento existente conectando as placas.
Figura 44 – Foto do ESP32, componente responsável pelo controle geral do equipamento Apollo.
61
• Foram usados dois sensores de temperatura LM35, um para cada placa de
aquecimento da mesma forma descrita no projeto Apollo.
• Dois multiplexadores/demultiplexadores (Mux/Demux) foram usados para o
sistema de detecção colorimétrica, sendo um responsável pela iluminação dos
LEDs e um responsável pela leitura dos sensores de cor, utilizados da mesma
forma como descrito no Apollo.
• A Placa do Display contém um Display OLED da Adafruit (Figura 34) de 1,5
polegadas (1,5 vezes maior que a do Apollo) para indicar ao usuário as
informações relevantes do funcionamento do aparelho para o usuário, como o
tempo do LAMP, a temperatura e os resultados da detecção. No display também
são mostrados menus com informações sobre o estado atual do aparelho e
eventuais instruções ao usuário que possam ser selecionadas.
62
• As placas de LED e dos sensores de cor são parecidas com as apresentadas no
projeto Apollo, com a única diferença do sensor de cor que é utilizado.
• Um conversor bidirecional de nível lógico 3,3V/5V foi utilizado para alimentar
diferentes componentes com diferentes tensões de entrada.
63
Figura 49 - Diagrama Esquemático do Cardinal
64
3.5. PROCESSO DE CALIBRAÇÃO
Para o processo de calibração, a temperatura na placa foi medida com um
LM35 acoplado ao bloco de alumínio, e a temperatura do líquido foi medida com um
termopar tipo K conectado a um medidor externo (controlador de temperatura Novus
1200), os elementos de calibração são apresentados na Figura 50.
65
minutos a 65 ºC nos instrumentos RT-LAMP (Apollo e Cardinal) e em um
termociclador convencional para comparação de resultado. Após o período de reação,
as amostras foram resfriadas até a temperatura de 25 ºC no termociclador Apollo, e
até 10 ºC no termociclador cardinal, pela diferença de tecnologia empregada. Como
controle positivo foram utilizadas amostras positivas para RT-qPCR, e como controle
negativo foi utilizado um controle sem molde (NTC) com água livre de nuclease. O
RNA clínico foi extraído com o Mini Kit viral QIAamp® RNA (Qiagen, Alemanha),
seguindo as instruções do fabricante.
Amostras clínicas de swab de rayon nasal e oral foram coletadas em 3 mL de
solução salina tamponada com fosfato 1x (PBS 1x) de pacientes sintomáticos do
Hospital Erasto Gaertner (Curitiba - Brasil) com aprovação do Comitê de Ética Local
(CAAE 31592620.4.3001.5248 e 31592620.4. 1001.0098).
Figura 51 - Amostras de SARS-CoV-2. (a) Resultado positivo (+). (b) Resultado indeterminado (IND). (c)
Resultado negativo (-),
66
leva apenas alguns segundos. Além disso, a intensidade do LED é regulada através
de resistores, de forma que não seja tão alta que sature o sensor de cor com sua luz
branca, uma baixa intensidade do LED é desejável para criar um ambiente favorável
para detecção de cor.
Figura 52 - Configuração Mux / Demux que permite uma seleção exclusiva de um par LED / sensor de cor. Isso
também reduz a quantidade de pinos usados do sistema embarcado/microcontrolador (MCU).
67
Figura 53 - Demonstração do sistema de detecção de cor, em que uma placa emite uma luz branca via LED; O
LED ilumina o tubo com uma luza branca transversalmente e a luz absorvida na solução (rosa (-), amarela (+) ou
laranja (Indeterminada)) é transmitida e capturada no sensor de cor.
68
4. RESULTADOS E DISCUSSÃO
4.1. APOLLO
O primeiro equipamento (codinome Apollo) diz respeito a sua construção e
avaliação da tecnologia no LaCTAS. Esse equipamento foi desenvolvido visando-se
alcançar o TRL 4.
Figura 54 - Caixa do instrumento que contém a placa principal da eletrônica, o bloco de aquecimento/detecção
da LAMP, o aquecedor da tampa, os ventiladores e o display OLED. (a) Tampa fechada durante os testes (b)
Tampa aberta para inserir/remover os microtubos.
69
4.1.2. SISTEMA ELETRÔNICO DO APOLLO
Existem 6 placas eletrônicas no projeto, como pode ser visto na Figura 55:
Placa Mãe (a), Placa de Sensores de Cor (b). Placa do Display (c), Placa de LEDs
(d), e duas placas de aquecimento, superior (f) e inferior (h), que são elementos
resistivos. As duas placas de aquecimento têm placas de alumínio (superior – e;
inferior – g) que são associadas a elas para melhor distribuição e aproveitamento do
calor gerado no aquecimento.
Figura 55 - Placas que compõe a parte eletrônica do equipamento Apollo. a) Placa mãe do aparelho. b) Placa
contendo uma matriz com 8 sensores de cor TCS3200. c) Placa com o Display OLED, com um botão e um LED
verde. d) Placa contendo 8 LEDs. e) Alumínio da tampa. f) Placa de aquecimento superior com o sensor de
temperatura LM35 para aquecimento da tampa. g) Alumínio inferior, para aquecimento das amostras e suporte
das placas de condução da luz de detecção. h) Placa de aquecimento inferior
70
A Placa de Sensores de Cor (Figura 57) contém 8 sensores de cor
responsáveis pela leitura das cores nos microtubos, permitindo o processo de
detecção colorimétrica. O arranjo das duas placas é explicado na seção Housing
deste documento.
71
4.1.3. FIRMWARE DO APOLLO
O firmware é responsável por toda a lógica de funcionamento do equipamento.
O Arduino Nano recebe todas as informações do que acontece no equipamento
através dos sensores, e o firmware interpreta e executa ações baseado nessas
informações. O código é escrito na linguagem do Arduino, que é C++ com algumas
modificações.
No início do programa são declaradas as bibliotecas utilizadas, sendo a
biblioteca PID_v1 para o controle PID e as bibliotecas Adafruit_GFX e
Adafruit_SSD1306 para o funcionamento do display. Essas bibliotecas estão
disponíveis gratuitamente pelo programa de edição de códigos do Arduino e no site
do Arduino. Também são declarados os pinos do Arduino Nano a serem utilizados
(Tabela 1), seus estados iniciais (ligado/desligado) e as variáveis que irão armazenar
os dados e informações processadas pelo firmware. As imagens que aparecem no
display também são declaradas no início do programa.
D8 Buzzer A6 -
72
Figura 59 - Estados de funcionamento do termociclador Apollo, implementados no software do sistema
embarcado.
Inserção das
amostras pelo usuário
uecimento das
ela de esultados
amostras
Detecção
esfriamento
colorimétrica
73
Figura 60 - Um exemplo do controle PID desajustado do instrumento Apollo no controle da temperatura,
tentando manter a temperatura do bloco das amostras na temperatura de setpoint durante uma janela de tempo
de 10 minutos.
74
Os parâmetros PID foram escolhidos com base na resposta do sistema via
sintonia manual, escolhendo primeiro o parâmetro proporcional, depois o parâmetro
integral e por último o parâmetro derivativo. Esta metodologia é testada e
implementada com sucesso por Oliveira et al., 2021, em um sistema de PCR de baixo
custo que também utiliza PCB como aquecedores. Inicialmente, os parâmetros I e D
são ajustados para 0, e o parâmetro P é escolhido para aproximar a saída do sistema
de um determinado setpoint. Uma vez definido o parâmetro P, o parâmetro I é
ajustado para corrigir qualquer offset que a saída possa ter em relação ao setpoint; e
finalmente, o parâmetro D é ajustado para aumentar a estabilidade geral na saída. Os
valores de PID para o Apollo são P = 15; I = 0,21 e D = 1,00.
A precisão da temperatura no instrumento é de ±0,5 °C. Essa diferença de
acurácia quando comparada com instrumentos comerciais é esperada uma vez que
o sistema eletrônico e a estrutura mecânica apresentadas são mais simples.
75
Para essas reações RT-LAMP convencionais, a interpretação dos resultados
foi realizada tanto a olho nu quanto pelos sensores do aparelho no Apollo. O indicador
de pH Phenol Red muda a cor da reação de rosa (negativo) para amarelo (positivo).
Para estabelecer uma relação significativa entre esses dois métodos, 66 amostras
clínicas foram analisadas; 29 foram positivos e 37 foram negativos, de acordo com o
método padrão-ouro RT-qPCR (Tabela 2).
45,5% (n = 30)
Positivo 43,9% (n = 29)
(1 falso positivo)
Indeterminado - 7,6% (n = 5)
Total n = 66 n = 66
76
amostras clínicas foram testadas, o instrumento atingiu uma sensibilidade de 100%
(capacidade do equipamento de indicar resultado positivo para amostras que são
realmente positivas) e especificidade de 97,3% (capacidade do equipamento de
indicar resultado negativo para amostras que são realmente negativas, o valor abaixo
de 100% indica que o equipamento emitiu resultado falso positivo) quando amostras
indeterminadas são excluídas. Amostras indeterminadas devem ser analisadas por
outras técnicas como RT-qPCR ou repetidas.
Resultado Gf - Bf
Positivo ≤ -20
Negativo ≥ 25
77
4.1.7. CONCLUSÂO PARCIAL DO INSTRUMENTO APOLLO
Com uma sensibilidade de 100%, especificidade de 97,3% e capacidade de
detecção colorimétrica automática dos resultados, um instrumento RT-LAMP de baixo
custo para análise de até 8 amostras foi desenvolvido usando LEDs e sensores
comerciais, caixa de impressão 3D e placa Arduino Nano. O instrumento apresenta
um sistema automático de detecção colorimétrica e temperatura controlada da
amostra e da tampa. Para alterar a temperatura, placas de PCI personalizadas foram
usadas como elementos de aquecimento. Um bloco de alumínio foi projetado para
alinhar os frascos e aumentar a área de contato de aquecimento, e dois pequenos
ventiladores de computador foram usados para resfriar a reação. Um sistema de
controle PID foi implementado para controlar com precisão a temperatura. Um
sistema Mux/Demux, juntamente com uma matriz de oito LEDs e uma matriz de oito
sensores de cores TCS3200, foi usado para reduzir o poder de processamento,
otimizar o uso de recursos e melhorar nossa metodologia de detecção de cores. O
RT-LAMP de baixo custo apresentou resultados semelhantes em relação ao
equipamento comercial, o Applied Biosystems ProFlex PCR System, que é
amplamente utilizado em laboratórios. Apesar de não ter apresentado a mesma
eficiência do equipamento comercial do equipamento proposto não apresentou
nenhum falso negativo. O instrumento RT-LAMP de baixo custo é eficaz, portátil e
fácil de manusear, tornando-o fácil de usar, com o uso de apenas um botão. O
instrumento funciona apenas com uma fonte de alimentação externa e pode até ser
usado em combinação com baterias convencionais. Embora este instrumento tenha
sido projetado para operar com oito amostras, os mesmos princípios aqui aplicados
podem ser usados para executar muitas amostras desejadas. Custando cerca de US$
100, o instrumento RT-LAMP de baixo custo foi testado com sucesso na detecção do
vírus SARS-CoV-2 em um laboratório de prototipagem do IBMP (Instituto de Biologia
Molecular do Paraná) e no laboratório de biologia molecular do LaCTAS no ICC,
sendo comparado com outros equipamentos termocicladores, mostrando sua
estabilidade em ambiente de desenvolvimento (TRL 4), mostrando que mesmo uma
tecnologia simples é uma alternativa viável para diagnóstico em laboratórios com
baixos recursos financeiros. Também mostrou-se que placas de PCI personalizadas
podem ser usadas como elemento de aquecimento em instrumentos termocicladores.
No Apollo ainda existe uma dificuldade relacionada a sua confecção, estando
sujeita a alguns erros no seu processo de manufatura dado a forma que seu projeto
78
foi concebido, no qual: as trilhas são finas demais, descolam da placa na tentativa de
solda de alguns componentes, pouco espaço na trilha para fixação de solda,
possibilidade de queima da própria trilha por consequência de sua largura e a
separação de componentes analógicos e digitais não foi feita da melhor maneira, o
que gera ruídos e o Apollo não contém flexibilidade na sua aplicação.
Além disso, a calibração é feita de tal forma que não vai ser igual de
equipamento para equipamento caso sejam construídos em larga escala, então seu
processo de calibração deve ser mais bem pensado. O valor da iluminação muda
conforme a disposição física dos componentes, o sensor empregado e os LEDs que,
mesmo sendo iguais, diferem em sua iluminação de tal forma que é detectado pelo
sensor de cor.
Devido ao sucesso deste projeto e as possíveis melhorias empregáveis, foi
construído um novo protótipo de maior complexidade que é discutido a seguir.
4.2. CARDINAL
O segundo equipamento (codinome Cardinal) diz respeito a sua construção e
avaliação da tecnologia no LaCTAS. Esse equipamento foi desenvolvido visando-se
melhorias do projeto Apollo e alcançar o TRL 5.
79
Figura 63 – Housing do equipamento Cardinal
80
(Figura 64) é a que se diferencia do primeiro equipamento e foi desenhada levando
em conta os principais problemas encontrados na confecção das placas do Apollo.
Figura 65 - Placa de recepção com os sensores de cor VEM3328 e a placa de emissão com os LEDs brancos.
81
amarela (+) ou laranja (Indeterminada) acaba sendo emitida e capturada pelo sensor
de cor.
A placa de display (Figura 66) contém um LED indicador vermelho que é ligado
quando o LAMP ocorre, o Display que apresenta todas as telas e funcionalidades ao
usuário e o botão seletor Rotary Encoder para navegar pelos menus do equipamento.
Figura 66 - Placa do display, contendo um LED indicador, display OLED e botão seletor do tipo Rotary Encoder.
82
Figura 67 - Posicionamento dos componentes internos do projeto Apollo.
83
Outro problema encontrado no Apollo é que ao se soldar componentes
Through Hole (TH) (componentes cujos terminais atravessam a placa) as trilhas eram
forçadas e ocasionalmente se soltavam. Isto foi resolvido com a inserção do que é
conhecido como “Teardrop”, que tem o objetivo de melhorar a integridade estrutural
na presença de tensões térmicas ou mecânicas durante o processo de fabricação, e
com o aumento da área do círculo de cobre por onde são fixados e soldados os
componentes. O Teardrop também aumenta a superfície de contato disponível para
a soldagem de componentes. A Figura 68 mostra a inserção do Teardrop em trilhas
através de um programa para o projeto e a confecção de PCIs (parte das ilustrações
na coloração azulada).
84
pode sofrer interferências eletromagnéticas do ambiente e/ou ser uma fonte de
emissão desses sinais. O plano de terra, na prática, é representado pela malha de
cobre que se apresenta cobrindo grande parte da superfície, dos dois lados da placa,
e está conectado ao GND (Ground/aterramento) de todos os componentes e ao GND
da fonte de alimentação.
Na Figura 69, o plano de terra é representado pela parte em verde que não se
apresenta como trilhas e que cobre toda a superfície da placa e, na Figura 70, o plano
de terra é a parte em azul que não se apresenta como trilhas e também cobre toda a
superfície da placa, ambas são conectadas entre si no projeto.
85
A placa mãe contém também um texto com o nome do projeto e a versão da
placa (exemplificado na Figura 70). Isso ajuda no controle de versionamento de um
projeto que trabalha em diferentes frentes. Com isso é possível rastrear quais os
outros componentes do projeto que são usados junto a placa, como por exemplo: A
placa Cardinal rev 5 funciona com os firmwares Cardinal_1.1 e Cardinal_1.2, e pode
ser montada junto ao housing Cardinal_bloco_v2.3.
Com o software DipTrace foi possível gerar um arquivo BOM (Bill of Materials)
interativo que auxilia no processo de soldagem e verificação dos componentes na
placa. BOM é uma lista dos materiais, componentes, ou partes, e a quantidade
necessária de cada um para a criação do produto resultante do processo. A Figura
71 ilustra o uso do BOM interativo.
86
muitos sistemas embarcados), que é C++ com algumas modificações. O firmware do
projeto Cardinal está apresentado no Anexo B deste documento.
No início do programa são declaradas as bibliotecas utilizadas, sendo a
biblioteca PID_v1 para o controle PID e as bibliotecas Adafruit_GFX e
Adafruit_SSD1327 para o funcionamento do display. Também são declarados os
pinos do ESP32 a serem utilizados (Tabela 4), seus estados iniciais (ligado/desligado)
e as variáveis que irão armazenar os dados e informações processadas pelo
firmware. As imagens que aparecem no display também são declaradas em arquivos
separados ao do programa principal.
O firmware faz constantemente a leitura do estado do botão, que pode ser
utilizado em caso de emergência para interromper o funcionamento do dispositivo.
25 Botão - -
87
Figura 72 - Estados de funcionamento do equipamento Cardinal, implementados no software do sistema
embarcado.
88
4.2.3.1. TELAS DO EQUIPAMENTO
Dado que o ESP32 tem mais espaço em sua memória que o Arduino (125
vezes a mais) e maior velocidade de processamento (260 vezes mais), é possível
fazer a adição de recursos gráficos. Foram criadas telas para o display do
equipamento Cardinal cujo objetivo é guiar o usuário e facilitar a interação com o
equipamento. As telas foram criadas através de slides elaborados via PowerPoint,
salvas como imagens e posteriormente transformadas em código para sistemas
embarcados através da ferramenta image2cpp39.
O Cardinal também possui a opção de múltipla seleção de opções dentro de
menus, por causa da implementação do botão rotativo de seleção, o que permite
menus com mais complexidade e customização dos que os apresentados no projeto
Apollo.
Na Figura 73 é ilustrada a imagem que aparece no display do equipamento
sempre que ele é iniciado, ou seja, a tela de boas-vindas. As imagens quando
aparecem no display do equipamento aparecem em preto e branco.
Figura 74 - Menu inicial do equipamento Cardinal, com possibilidade de seleção do tipo de ciclo a ser executado,
configurações do equipamento e menu de informações.
89
Caso seja selecionado o menu de seleção de ciclos, o usuário é direcionado a
uma tela onde ele pode escolher selecionar entre RT-LAMP e RT-PCR (opção não
implementada, porém o equipamento possui capacidade para ter essa função), ou
voltar para o menu inicial. As telas e as opções são ilustradas na Figura 75.
Figura 75 - Menu de seleção de ciclos do Cardinal, com a opção da escolha de RT-PCR (Não implementado),
RT-LAMP e voltar para o menu principal.
Figura 77 - Tela instruindo a inserção das amostras e depois apertar o botão para dar prosseguimento
90
tempo do processo as amostras são resfriadas até 10 ºC. As telas que aparecem
nesse momento podem ser vistas na Figura 78.
Figura 78 – Telas que aparecem durante o LAMP. Começando pelo aquecimento da tampa, seguindo pelo RT-
LAMP e terminando com o resfriamento da amostra.
Figura 80 - Menu de configurações, onde é possível ver os valores lidos pelos sensores de cor e de temperatura.
91
Figura 81 - Menu de cor em configurações, onde é possível ler os valores de cor de maneira individual.
Figura 82 - Menu com as informações do projeto, informando a equipe que participou do projeto, e as
instituições patrocinadoras.
92
Figura 83 - Bloco de aquecimento do Cardinal, com o alumínio de posicionamento de amostras, dispositivo
Peltier, Ponte H e ventoinha.
4.2.5. AMPLIFICAÇÃO
Os ensaios de validação do instrumento para detecção de SARS-CoV-2 foram
implementados conforme descrito anteriormente. O instrumento pode realizar oito
amostras por ciclo, sendo duas para o controle positivo e negativo e as outras seis
para amostras clínicas. As mesmas condições e reações também foram realizadas
em um termociclador ProFlex PCR System (Applied Biosystems™) para comparar os
resultados. Para essas reações RT-LAMP convencionais, a interpretação dos
resultados foi realizada tanto a olho nu quanto pelos sensores do equipamento. O
93
indicador de pH Phenol Red muda a cor da reação de rosa (negativo) para amarelo
(positivo). Para estabelecer uma relação significativa entre esses dois métodos, 22
amostras clínicas foram analisadas; 11 foram positivas e 11 foram negativas, de
acordo com o método padrão-ouro RT-qPCR. Uma comparação dos resultados do
Cardinal com um termociclador comercial pode ser observado na Figura 84.
Indeterminado - 4,5% (n = 1)
Total n = 22 n = 22
94
minutos. Os resultados indicam uma acurácia do instrumento de 95,5% quando
comparado ao termociclador comercial.
Resultado Gf - Bf
95
de controle PID foi implementado para controlar com precisão a temperatura. Um
sistema Mux/Demux, juntamente com uma matriz de oito LEDs e uma matriz de oito
sensores de cores VEML3328, foi usado para reduzir o poder de processamento,
otimizar o uso de recursos e melhorar nossa metodologia de detecção de cores. O
RT-LAMP de baixo custo apresentou resultados semelhantes em relação ao
equipamento comercial, o Applied Biosystems ProFlex PCR System, que é
amplamente utilizado em laboratórios. Apesar de não ter apresentado a mesma
eficiência do equipamento comercial nosso equipamento não apresentou nenhum
falso negativo. O instrumento RT-LAMP de baixo custo é eficaz, portátil e fácil de
manusear, tornando-o fácil de usar, com o uso de apenas um botão. O instrumento
contém fonte de alimentação interna. Embora este instrumento tenha sido projetado
para operar com oito amostras, os mesmos princípios aqui aplicados podem ser
usados para executar muitas amostras desejadas. Custando cerca de US$ 150, o
instrumento RT-LAMP de baixo custo foi testado com sucesso na detecção do vírus
SARS-CoV-2 em no laboratório de biologia molecular do LaCTAS no ICC, sendo
comparado com outros equipamentos termocicladores, mostrando sua estabilidade
em ambiente relevante contendo melhorias em comparação com o equipamento
anterior (TRL 5), e que a tecnologia é uma alternativa viável para diagnóstico em
laboratórios com baixos recursos financeiros.
96
5. CONCLUSÃO
Foram construídos dois equipamentos do tipo POC para RT-LAMP (Figura 85)
usando o SARS-CoV-2 como exemplo de demonstração de suas funcionalidades.
Ambos os equipamentos foram capazes de amplificar e detectar amostras negativas
e positivas.
97
o LaCTAS). E foi feito um estudo dos seus resultados para entender como diferenciam
dos objetivos esperados do sistema, visando o aprimoramento em um outro
equipamento.
Também se alinhando com o objetivo final deste trabalho, o Cardinal se
encontra em TRL5 e seu projeto é uma melhorai direta do projeto do Apollo e também
foi validado em diferentes ambientes. E demonstrando um aprimoramento em relação
ao Apollo em seus parâmetros de desempenho, como taxas de aquecimento e
resfriamento, amadurecimento do sistema eletrônico e otimização do seu firmware.
O Cardinal tem alta capacidade resfriamento e de atingir temperaturas
próximas a 0 ºC, o que melhora a coloração final das amostras amplificadas através
do LAMP e facilitam o processo de detecção colorimétrica, além de que permite ciclos
rápidos o que possibilita a implementação de amplificação usando PCR. O Apollo leva
até 5 minutos para ir de 65 ºC para 30 ºC e não fica menor que a temperatura
ambiente, enquanto o cardinal demora até 30 segundos para ir de 65 ºC até 10 ºC e
consegue segurar a temperatura em 0 ºC por tempo indeterminado, sendo esses
parâmetros os maiores indicativos da melhora no projeto dos equipamentos LAMP.
Os sensores de cor utilizados funcionam como esperado. O Cardinal se
beneficia em relação ao Apollo por conter sensores de cor mais modernos e que ainda
estão em produção, uma vez que o TCS3200 não está mais em produção e
impossibilita um projeto de um produto em larga escala. Sendo que em termos de
funcionalidade, ambos os sensores cumprem com o esperado e indicam que o sensor
de cor a ser escolhido para qualquer um dos equipamentos vai ser suficiente para a
aplicação (desde que tenham capacidade de ler as cores esperadas para prover a
detecção, sejam do tamanho esperado para as placas e que possam ser calibrados
via software), o que cumpre um dos objetivos deste trabalho que é o entendimento do
uso de sensores de cor para detecção de resultados de amplificações com resultados
colorimétricos.
O Cardinal também possui também um display maior que o do Apollo, cabos
mais bem manufaturados, melhor integridade dos sinais e de entrega de energia aos
dispositivos de aquecimento/resfriamento e um botão rotativo que permite a seleção
de opções em menus e a personalização de tempos, temperaturas e ciclos. O Apollo
se utiliza do Arduino Nano, sendo o sistema embarcado mais comum para hobbies e,
neste caso, o microcontrolador foi suficiente para cumprir com os requerimentos do
projeto. O Cardinal com o ESP32 consegue suprir com os maiores problemas do
98
Apollo, pela sua maior capacidade de memória, processamento e funcionalidades,
cumprindo com um dos objetivos deste trabalho que seria a melhora da escolha dos
sistemas embarcados se alinhando com cada equipamento.
Por possuir maior capacidade de armazenamento (125 vezes a mais) e um
botão rotativo de seleção, o Cardinal possibilita que no futuro sejam implementadas
mais funções para o equipamento sem que sejam feitas alterações na eletrônica e na
mecânica de sua construção, como por exemplo a implementação de RT-PCR e a
adição de conectividade com outros dispositivos e plataformas na internet, por possuir
Wi-Fi e Bluetooth, mostrando assim potencial de conectividade do equipamento.
O Apollo passou por mais testes que o Cardinal, o que faz com que o
aprendizado do projeto seja transferido de um equipamento para o outro. Além disso
o Cardinal ainda pode passar por diferentes baterias de testes para rastreio de
problemas que possam ser corrigidos via software. Porém sua concepção enquanto
projeto está no estágio final o que significa que as melhorias e testes a serem
executados ainda compreendem o mesmo equipamento, sem grandes alterações em
sua estrutura e/ou projeto, o que possibilita sua consolidação no TRL5 e
posteriormente o seu avanço para o próximo nível de maturidade tecnológica.
Por fim, o equipamento aprimorado permite que sejam feitos testes em campo
e que seus resultados sejam documentados com a finalidade de melhoria de seu
desempenho com pequenas correções e com uma documentação limitada do
equipamento, como relatórios de desempenho, manuais técnicos, de serviço e de
usuário e sua transformação em um sistema de alta fidelidade que o leva para o nível
de maturidade TRL6 e o prepara para os próximos níveis de regulamentação,
produção e comercialização.
Como sugestão para trabalhos futuros, é essencial entender as necessidades do
usuário final em relação ao Cardinal. O feedback de profissionais que utilizarão o
equipamento é crucial para desenvolver algo que atenda às condições reais de uso.
Além disso, tanto o Cardinal quanto o Apollo enfrentam problemas relacionados à
calibração de cor e temperatura. Embora esses valores possam funcionar bem em
um equipamento específico, não garantem que um novo dispositivo possa operar com
os mesmos valores. É necessário aprimorar essa parte do produto para garantir sua
escalabilidade. Por último, seria interessante adicionar conectividade com um servidor
em nuvem para a troca de informações em tempo real. Como o ESP32 já possui
99
conectividade habilitada, essa adição poderia melhorar significativamente a
experiência do usuário.
100
6. REFERÊNCIAS BIBLIOGRÁFICAS
Araki, M. (2009). PID control. Control Systems, Robotics and Automation: System
Analysis and Control: Classical Approaches II, Unbehauen, H.
Aswathy, S. A., & Anusree, L. (2018, March). Non-Invasive Blood Glucose Detection
along with an Assistive Diabetes Monitoring App. In 2018 International Conference on
Current Trends towards Converging Technologies (ICCTCT) (pp. 1-5). IEEE.
B. de Oliveira Coelho, H.B.S. Sanchuki, D.L. Zanette, J.M. Nardin, H.M.P. Morales, B.
Fornazari, M.N. Aoki, L. Blanes, Essential properties and pitfalls of colorimetric
Reverse Transcription Loop-mediated Isothermal Amplification as a point-of-care test
for SARS-CoV-2 diagnosis, Molecular Medicine 2021 27:1. 27 (2021) 1–11.
https://doi.org/10.1186/S10020-021-00289-0.
ayram, . ., ülbül, . İ., an, ., & ayindir, . (201 , ay). atlab GUI based
basic design principles of PID controller in AVR. In 4th International Conference on
Power Engineering, Energy and Electrical Drives (pp. 1017-1022). IEEE.
Borse, V., Patil, A. S., & Srivastava, R. (2017, January). Development and testing of
portable fluorescence reader (PorFloR™). In 2017 9th International Conference on
Communication Systems and Networks (COMSNETS) (pp. 498-501). IEEE.
101
D. L. Mathew, Ashish Gupta, Hitu Bansal, Int. J. Adv. Res. Electr. Electron. Instrum.
Eng. 04, 4975 (2015). https://doi.org/10.15662/ ijareeie.2015.0406012
Ganguli, A., ostafa, ., erger, J., ydin, . Y., Sun, ., amirez, S. . S. de, …
Bashir, R. (2020). Rapid isothermal amplification and portable detection system for
SARS-CoV-2. Proceedings of the National Academy of Sciences, 202014739.
doi:10.1073/pnas.2014739117
Kaur, A., Ruhela, A., Sharma, P. et al. Simultaneous and highly sensitive detection of
Salmonella typhi and Salmonella paratyphi a in human clinical blood samples using
an affordable and portable device. Biomed Microdevices 21, 95 (2019).
https://doi.org/10.1007/s10544-019-0441-6
M.A. Johnson, M.H. Moradi, IEEE Control Syst. 26, 95 (2006). https://
doi.org/10.1109/MCS.2006.1580159
Manmana, Y., Kubo, T., & Otsuka, K. (2021). Recent developments of point-of-care
(POC) testing platform for biomolecules. TrAC Trends in Analytical Chemistry, 135,
116160. doi: 10.1016/j.trac.2020.116160
M. Banzi, M. Shiloh, Make: Getting Started with Arduino (The Open Source Electronics
Prototyping Platform), Maker Media, Inc., (2014)
102
MIRALLES, Vincent et al. A review of heating and temperature control in microfluidic
systems: techniques and applications. Diagnostics, v. 3, n. 1, p. 33-67, 2013.
M.P. Dinca, M. Gheorghe, P. Galvin, IEEE Trans. Educ. 52, 116 (2009).
https://doi.org/10.1109/TE.2008.919811
M.N. Aoki, B. de Oliveira Coelho, L.G.B. Góes, P. Minoprio, E.L. Durigon, L.G. Morello,
F.K. Marchini, I.N. Riediger, M. do Carmo Debur, H.I. Nakaya, L. Blanes, Colorimetric
RT-LAMP SARS-CoV-2 diagnostic sensitivity relies on color interpretation and viral
load, Scientific Reports 2021 11:1. 11 (2021) 1–10. https://doi.org/10.1038/s41598-
021-88506-y.
Moehling, Taylor J., et al. "LAMP diagnostics at the point-of-care: Emerging trends
and perspectives for the developer community." Expert Review of Molecular
Diagnostics 21.1 (2021): 43-61.
Mohammed, A., Karthik, V., & Chanu, O. R. (2021). Point of care detection of
potassium in saliva using colorimetric optical absorption. Materials Today:
Proceedings.
de Oliveira, V.K., Camargo, B.D., Alexandrino, F. et al. A low-cost PCR instrument for
molecular disease diagnostics based on customized printed circuit board heaters.
Biomed Microdevices 23, 24 (2021). https://doi.org/10.1007/s10544-021-00563-2
Pereira, Renata IS, and Sandro CS Jucá. "Didactic tool for practical testing of digital
voltage grading applications." 2015 IEEE 13th Brazilian Power Electronics Conference
and 1st Southern Power Electronics Conference (COBEP/SPEC). IEEE, 2015.
POGFAI, Tawee et al. Low cost and portable PCR thermoelectric cycle. International
Journal of Applied, v. 1, n. 1, 2008.
103
Ragul, S. A., Sreeram, R., Pandiyan, P., & Saravanan, S. (2020, March). Non-invasive
method of diagnosing health parameters using urinalysis. In 2020 6th International
Conference on Advanced Computing and Communication Systems (ICACCS) (pp.
867-871). IEEE.
Rodriguez-Manzano, J., Malpartida-Cardenas, K., Moser, N., Pennisi, I., Cavuto, M.,
Miglietta, L., ... & Georgiou, P. (2021). Handheld point-of-care system for rapid
detection of SARS-CoV-2 extracted RNA in under 20 min. ACS central science, 7(2),
307-317.
Singh, H., Singh, G., Mahajan, D. K., Kaur, N., & Singh, N. (2020). A low-cost device
for rapid ‘color to concentration’ uantification of cyanide in real samples using paper-
based sensing chip. Sensors and Actuators B: Chemical, 322, 128622
Span, M., Verblakt, M., & Hendrikx, T. (2019). Comparison of temperature dynamics
of various thermal cycler calibration methods. In the 19th International Congress of
Metrology (CIM2019) (p. 19003). EDP Sciences.
Studdert, D. M., & Hall, M. A. (2020). Disease Control, Civil Liberties, and Mass
Testing — Calibrating Restrictions during the Covid-19 Pandemic. New England
Journal of Medicine. doi:10.1056/nejmp2007637
Tandon P. N. (2020). COVID-19: Impact on health of people & wealth of nations. The
Indian journal of medical research, 151(2 & 3), 121–123.
https://doi.org/10.4103/ijmr.IJMR_664_20.
Uddin SM, Ibrahim F, Sayad AA, Thiha A, Pei KX, Mohktar MS, Hashim U, Cho J,
Thong KL. A Portable Automatic Endpoint Detection System for Amplicons of Loop
Mediated Isothermal Amplification on Microfluidic Compact Disk Platform. Sensors.
2015; 15(3):5376-5389. https://doi.org/10.3390/s150305376
104
V. Miralles, A. Huerre, F. Malloggi, and M.-C. Jullien, Diagnostics 3, 33 (2013).
https://doi.org/10.4324/9780203002674
Y. Wang, Z. Chi, in Proc. - 2016 6th Int. Conf. Instrum. Meas. Comput. Commun.
Control. IMCCC 2016 (IEEE, 2016), pp. 770– 773.
https://doi.org/10.1109/IMCCC.2016.89
105
ANEXO A – ARTIGO CIENTÍFICO PUBLICADO NA REVISTA BIOMEDICAL
MICRODEVICES
106
ANEXO B – FIRMWARE DO PROJETO CARDINAL
//Bibliotecas
#include "PID_v1.h" //Controlador PID
#include "Adafruit_SSD1327.h" //Display OLED 128x128
#include "AiEsp32RotaryEncoder.h" //Rotary Encoder
#include "VEML3328.h" //Sensor de cor
//Telas
#include "ccardinal.h" //Inicial
#include "cmenu1.h" //Menu com opção Ciclos
#include "cmenu2.h" //Menu com opção Configuração
#include "cmenu3.h" //Menu com opção Info
#include "ccycle1.h" //Ciclo RT-PCR
#include "ccycle2.h" //Ciclo RT-LAMP
#include "ccycle3.h" //Voltar ao menu inicial
#include "cLAMPT.h" //Escolha da temperatura do LAMP
#include "cLAMPtime.h" //Escolha do tempo do LAMP
#include "csettings1.h" //Settings para temperatura
#include "csettings2.h" //Settings para cor
#include "csettings3.h" //Voltar ao menu inicial
#include "cteam.h" //Integrantes do time
#include "csponsors.h" //Apoiadores do projeto
#include "cinsert.h" //Insira as amotras
#include "clid.h" //Tampa aquecendo
#include "ccool.h" //Esfriando
#include "cdetection.h" //Em processo de detecção
#include "cresult.h" //Tela de resultados
#include "cabout.h" //Sobre o projeto
#include "clampProcess.h" //Ciclo LAMP
#include "ccolor1.h" //Escolha da leitura da cor vermelha
#include "ccolor2.h" //Escolha da leitura da cor verde
#include "ccolor3.h" //Escolha da leitura da cor azul
#include "ccolor4.h" //Voltar ao menu inicial
#include "ctempconfig.h" //Leitura dos sensores de temperatura
//Pinos
#define FAN 2 //Ventoinha
#define COM 13 //Porta comum para o processo de detecção
#define CC0 16 //Chaveamento do MUX C
#define BB0 17 //Chaveamento do MUX B
#define AA0 18 //Chaveamento do MUX A
#define LF 19 //Controle da Ponte H para aquecimento
#define BUZZER 23 //Alarme sonoro
#define SW 25 //Switch - botão
#define HB 27 //Heat Bottom - Aquecimento Inferior
#define HT 32 //Heat Top - Aquecimento Superior
#define FANH 33 //Controle da Ponte H para resfriamento
#define LM35BOT 34 //Sensor de temperatura Inferior
#define DT 35 //Data para o Rotary Encoder
#define LM35TOP 36 //Sensor de temperatura Superior
#define CLK 39 //Clock para o Rotary Encoder
AiEsp32RotaryEncoder rotaryEncoder = AiEsp32RotaryEncoder(DT, CLK, SW, -1, 2); //Inicializando a biblioteca do ESP32
para giro do botão
// Configuração do PWM
const int freq = 5000;
const byte ChannelB = 5, ChannelT = 4, resolution = 8; //Usando os canais 4 e 5 com até 8 bits na resolução (0-255)
107
byte deviceState = 0, count = 0; //Contador para estado em que o dispositivo se encontra e para o Rotary Encoder
const byte lidTemperature = 90; //Definição da temperatura da tampa.
long accumulator = 0; //Usado como contador de tempo
float sensorG[8] = { 0 }; //Variaveis que armazenam informação de cor Verde
float sensorB[8] = { 0 }; //Variaveis que armazenam informação de cor Azul
float sensor[8] = { 0 }; //Variaveis que armazenam informação de cor Resultante
unsigned long previousMillis = 0; //Usado para contar o tempo
float botTemperature, topTemperature; //Temperatura da placa de aquecimento inferior e superior, adquiridas via sensor
void setup() {
108
void loop() {
switch (deviceState) {
case 0: //Welcome
//Display
display.clearDisplay();
display.drawBitmap(0, 0, ccardinal, 128, 128, SSD1327_WHITE);
display.display();
//Buzzer
digitalWrite(BUZZER, HIGH);
delay(500);
digitalWrite(BUZZER, LOW);
delay(500);
digitalWrite(BUZZER, HIGH);
delay(100);
digitalWrite(BUZZER, LOW);
delay(100);
digitalWrite(BUZZER, HIGH);
delay(100);
digitalWrite(BUZZER, LOW);
delay(700);
//Botão
deviceState = 1;
break;
case 1: //Menu
//Rotary
if (x == 0) {
x = 1;
setRotary(2);
}
count = rotaryEncoder.readEncoder();
//Display
display.clearDisplay();
if (count == 0) {
display.drawBitmap(0, 0, cmenu1, 128, 128, SSD1327_WHITE);
} else if (count == 1) {
display.drawBitmap(0, 0, cmenu2, 128, 128, SSD1327_WHITE);
} else {
display.drawBitmap(0, 0, cmenu3, 128, 128, SSD1327_WHITE);
}
display.display();
//Ventoinha
digitalWrite(FANH, LOW);
digitalWrite(FAN, LOW);
//Botão
if (buttonState == LOW && buttonState != lastButtonState) {
if (count == 0) {
deviceState = 10;
} else if (count == 1) {
deviceState = 2;
} else if (count == 2) {
deviceState = 3;
}
x = 0;
delay(25);
}
lastButtonState = buttonState;
break;
109
//Display
display.clearDisplay();
if (count == 0) {
display.drawBitmap(0, 0, ccycle1, 128, 128, SSD1327_WHITE);
} else if (count == 1) {
display.drawBitmap(0, 0, ccycle2, 128, 128, SSD1327_WHITE);
} else {
display.drawBitmap(0, 0, ccycle3, 128, 128, SSD1327_WHITE);
}
display.display();
//Botão
if (buttonState == LOW && buttonState != lastButtonState) {
if (count == 0) {
deviceState = 10;
} else if (count == 1) {
deviceState = 11;
} else if (count == 2) {
deviceState = 1;
}
count = 0;
x = 0;
delay(25);
}
lastButtonState = buttonState;
break;
//Display
display.clearDisplay();
display.setTextSize(2);
display.setCursor(50, 62);
display.print(setTemperature);
if (count == 0) {
display.drawBitmap(0, 0, cLAMPT, 128, 128, SSD1327_WHITE);
} else {
display.setCursor(50, 105);
display.print(setTime);
display.drawBitmap(0, 0, cLAMPtime, 128, 128, SSD1327_WHITE);
}
display.display();
//Botão
if (buttonState == LOW && buttonState != lastButtonState) {
if (count == 0) {
x = 0;
count = 1;
} else {
Input = botTemperature;
Setpoint = setTemperature;
myPID.SetOutputLimits(0, 212);
myPID.SetMode(AUTOMATIC);
count = 0;
x = 0;
deviceState = 12;
110
digitalWrite(COM, HIGH);
digitalWrite(AA0, LOW);
digitalWrite(BB0, LOW);
digitalWrite(CC0, LOW);
sensor[0] = lerSensorCor(1);
digitalWrite(AA0, HIGH);
digitalWrite(BB0, LOW);
digitalWrite(CC0, LOW);
sensor[1] = lerSensorCor(1);
digitalWrite(AA0, LOW);
digitalWrite(BB0, HIGH);
digitalWrite(CC0, LOW);
sensor[2] = lerSensorCor(1);
digitalWrite(AA0, HIGH);
digitalWrite(BB0, HIGH);
digitalWrite(CC0, LOW);
sensor[3] = lerSensorCor(1);
digitalWrite(AA0, LOW);
digitalWrite(BB0, LOW);
digitalWrite(CC0, HIGH);
sensor[4] = lerSensorCor(1);
digitalWrite(AA0, HIGH);
digitalWrite(BB0, LOW);
digitalWrite(CC0, HIGH);
sensor[5] = lerSensorCor(1);
digitalWrite(AA0, LOW);
digitalWrite(BB0, HIGH);
digitalWrite(CC0, HIGH);
sensor[6] = lerSensorCor(1);
digitalWrite(AA0, HIGH);
digitalWrite(BB0, HIGH);
digitalWrite(CC0, HIGH);
sensor[7] = lerSensorCor(1);
digitalWrite(COM, LOW);
digitalWrite(BUZZER, HIGH);
delay(250);
digitalWrite(BUZZER, LOW);
}
delay(25);
}
lastButtonState = buttonState;
break;
//Aquecimento Superior
readTopTemperature();
if (count == 0) {
ledcWrite(ChannelT, 0);
} else {
Input2 = topTemperature;
myPID2.Compute();
ledcWrite(ChannelT, Output2);
111
}
//Botão
if (buttonState == LOW && buttonState != lastButtonState) {
if (count == 0) {
count = 1;
lastButtonState = buttonState;
} else if (buttonState != lastButtonState) {
count = 0;
x = 0;
deviceState = 14;
}
delay(25);
}
lastButtonState = buttonState;
break;
//Display
display.clearDisplay();
display.setTextSize(1);
display.setCursor(95, 60);
display.print(botTemperature);
display.setCursor(95, 85);
display.print(topTemperature);
//Aquecimento Inferior
readBotTemperature();
112
Input = botTemperature;
myPID.Compute();
ledcWrite(ChannelB, Output);
//Aquecimento Superior
readTopTemperature();
Input2 = topTemperature;
myPID2.Compute();
ledcWrite(ChannelT, Output2);
//Botão
if (buttonState == LOW && buttonState != lastButtonState) {
count = 0;
x = 0;
deviceState = 14;
digitalWrite(BUZZER, HIGH);
delay(250);
digitalWrite(BUZZER, LOW);
}
lastButtonState = buttonState;
break;
//Ventoinha
digitalWrite(FANH, HIGH);
digitalWrite(FAN, HIGH);
//Botão
readBotTemperature();
if (botTemperature <= 10) {
digitalWrite(BUZZER, HIGH);
delay(750);
digitalWrite(BUZZER, LOW);
count = 0;
x = 0;
deviceState = 15;
}
break;
display.setCursor(20, 45);
if (sensor[0] > sensorG[0] + 80) {
display.print("Positivo");
} else if (sensor[0] > sensorG[0] + 55) {
display.print("Incerto");
} else {
113
display.print("Negativo");
}
display.setCursor(20, 65);
if (sensor[1] > sensorG[1] + 120) {
display.print("Positivo");
} else if (sensor[1] > sensorG[1] + 75) {
display.print("Incerto");
} else {
display.print("Negativo");
}
display.setCursor(20, 85);
if (sensor[2] > sensorG[2] + 70) {
display.print("Positivo");
} else if (sensor[2] > sensorG[2] + 40) {
display.print("Incerto");
} else {
display.print("Negativo");
}
display.setCursor(20, 105);
if (sensor[3] > sensorG[3] + 90) {
display.print("Positivo");
} else if (sensor[3] > sensorG[3] + 60) {
display.print("Incerto");
} else {
display.print("Negativo");
}
display.setCursor(80, 45);
if (sensor[4] > sensorG[4] + 160) {
display.print("Positivo");
} else if (sensor[4] > sensorG[4] + 95) {
display.print("Incerto");
} else {
display.print("Negativo");
}
display.setCursor(80, 65);
if (sensor[5] > sensorG[5] + 120) {
display.print("Positivo");
} else if (sensor[5] > sensorG[5] + 75) {
display.print("Incerto");
} else {
display.print("Negativo");
}
display.setCursor(80, 85);
if (sensor[6] > sensorG[6] + 85) {
display.print("Positivo");
} else if (sensor[6] > sensorG[6] + 55) {
display.print("Incerto");
} else {
display.print("Negativo");
}
display.setCursor(80, 105);
if (sensor[7] > sensorG[7] + 130) {
display.print("Positivo");
} else if (sensor[7] > sensorG[7] + 80) {
display.print("Incerto");
} else {
display.print("Negativo");
}
//Ventoinha
digitalWrite(FANH, HIGH);
digitalWrite(FAN, HIGH);
114
//Leitura dos sensores de cor
digitalWrite(COM, LOW);
if (count == 0) {
digitalWrite(COM, HIGH);
digitalWrite(AA0, LOW);
digitalWrite(BB0, LOW);
digitalWrite(CC0, LOW);
sensorG[0] = lerSensorCor(1);
sensorB[0] = lerSensorCor(2);
digitalWrite(AA0, HIGH);
digitalWrite(BB0, LOW);
digitalWrite(CC0, LOW);
sensorG[1] = lerSensorCor(1);
sensorB[1] = lerSensorCor(2);
digitalWrite(AA0, LOW);
digitalWrite(BB0, HIGH);
digitalWrite(CC0, LOW);
sensorG[2] = lerSensorCor(1);
sensorB[2] = lerSensorCor(2);
digitalWrite(AA0, HIGH);
digitalWrite(BB0, HIGH);
digitalWrite(CC0, LOW);
sensorG[3] = lerSensorCor(1);
sensorB[3] = lerSensorCor(2);
digitalWrite(AA0, LOW);
digitalWrite(BB0, LOW);
digitalWrite(CC0, HIGH);
sensorG[4] = lerSensorCor(1);
sensorB[4] = lerSensorCor(2);
digitalWrite(AA0, HIGH);
digitalWrite(BB0, LOW);
digitalWrite(CC0, HIGH);
sensorG[5] = lerSensorCor(1);
sensorB[5] = lerSensorCor(2);
digitalWrite(AA0, LOW);
digitalWrite(BB0, HIGH);
digitalWrite(CC0, HIGH);
sensorG[6] = lerSensorCor(1);
sensorB[6] = lerSensorCor(2);
digitalWrite(AA0, HIGH);
digitalWrite(BB0, HIGH);
digitalWrite(CC0, HIGH);
sensorG[7] = lerSensorCor(1);
sensorB[7] = lerSensorCor(2);
}
count = 1;
//Botão
if (buttonState == LOW && buttonState != lastButtonState && count == 1) {
count = 0;
x = 0;
deviceState = 1;
digitalWrite(BUZZER, HIGH);
delay(250);
digitalWrite(BUZZER, LOW);
}
lastButtonState = buttonState;
break;
case 2: //Configuração
//Rotary
if (x == 0) {
x = 1;
setRotary(2);
115
}
count = rotaryEncoder.readEncoder();
//Display
display.clearDisplay();
if (count == 0) {
display.drawBitmap(0, 0, csettings1, 128, 128, SSD1327_WHITE);
} else if (count == 1) {
display.drawBitmap(0, 0, csettings2, 128, 128, SSD1327_WHITE);
} else {
display.drawBitmap(0, 0, csettings3, 128, 128, SSD1327_WHITE);
}
display.display();
//Botão
if (buttonState == LOW && buttonState != lastButtonState) {
if (count == 0) {
deviceState = 20;
} else if (count == 1) {
deviceState = 21;
} else if (count == 2) {
deviceState = 1;
}
count = 0;
x = 0;
delay(25);
}
lastButtonState = buttonState;
break;
//Display
display.clearDisplay();
display.setTextSize(2);
display.setCursor(40, 60);
display.print(botTemperature);
display.setCursor(40, 100);
display.print(topTemperature);
display.drawBitmap(0, 0, ctempconfig, 128, 128, SSD1327_WHITE);
display.display();
//Botão
if (buttonState == LOW && buttonState != lastButtonState) {
deviceState = 2;
count = 0;
x = 0;
delay(25);
}
lastButtonState = buttonState;
break;
//Display
display.clearDisplay();
if (count == 0) {
display.drawBitmap(0, 0, ccolor1, 128, 128, SSD1327_WHITE);
} else if (count == 1) {
display.drawBitmap(0, 0, ccolor2, 128, 128, SSD1327_WHITE);
} else if (count == 2) {
display.drawBitmap(0, 0, ccolor3, 128, 128, SSD1327_WHITE);
} else {
display.drawBitmap(0, 0, ccolor4, 128, 128, SSD1327_WHITE);
}
display.display();
116
//Botão
if (buttonState == LOW && buttonState != lastButtonState) {
if (count == 0 || count == 1 || count == 2) {
digitalWrite(COM, HIGH);
digitalWrite(AA0, LOW);
digitalWrite(BB0, LOW);
digitalWrite(CC0, LOW);
sensor[0] = lerSensorCor(count);
digitalWrite(AA0, HIGH);
digitalWrite(BB0, LOW);
digitalWrite(CC0, LOW);
sensor[1] = lerSensorCor(count);
digitalWrite(AA0, LOW);
digitalWrite(BB0, HIGH);
digitalWrite(CC0, LOW);
sensor[2] = lerSensorCor(count);
digitalWrite(AA0, HIGH);
digitalWrite(BB0, HIGH);
digitalWrite(CC0, LOW);
sensor[3] = lerSensorCor(count);
digitalWrite(AA0, LOW);
digitalWrite(BB0, LOW);
digitalWrite(CC0, HIGH);
sensor[4] = lerSensorCor(count);
digitalWrite(AA0, HIGH);
digitalWrite(BB0, LOW);
digitalWrite(CC0, HIGH);
sensor[5] = lerSensorCor(count);
digitalWrite(AA0, LOW);
digitalWrite(BB0, HIGH);
digitalWrite(CC0, HIGH);
sensor[6] = lerSensorCor(count);
digitalWrite(AA0, HIGH);
digitalWrite(BB0, HIGH);
digitalWrite(CC0, HIGH);
sensor[7] = lerSensorCor(count);
digitalWrite(COM, LOW);
deviceState = 22;
} else if (count == 3) {
deviceState = 1;
}
count = 0;
x = 0;
delay(25);
}
lastButtonState = buttonState;
break;
display.setCursor(20, 45);
display.print(sensor[0]);
display.setCursor(20, 65);
display.print(sensor[1]);
display.setCursor(20, 85);
display.print(sensor[2]);
display.setCursor(20, 105);
display.print(sensor[3]);
display.setCursor(80, 45);
display.print(sensor[4]);
display.setCursor(80, 65);
display.print(sensor[5]);
117
display.setCursor(80, 85);
display.print(sensor[6]);
display.setCursor(80, 105);
display.print(sensor[7]);
case 3: //Info
//Rotary
if (x == 0) {
x = 1;
setRotary(2);
}
count = rotaryEncoder.readEncoder();
// Display
display.clearDisplay();
if (count == 0) {
display.drawBitmap(0, 0, cteam, 128, 128, SSD1327_WHITE);
} else if (count == 1) {
display.drawBitmap(0, 0, csponsors, 128, 128, SSD1327_WHITE);
} else {
display.drawBitmap(0, 0, cabout, 128, 128, SSD1327_WHITE);
}
display.display();
// Botão
if (buttonState == LOW && buttonState != lastButtonState) {
count = 0;
x = 0;
deviceState = 1;
delay(25);
}
lastButtonState = buttonState;
break;
}
}
switch (selectCor) {
case 0:
readValue = RGBCIR.getRed(); //Leitura do canal vermelho
break;
case 1:
readValue = RGBCIR.getGreen(); //Leitura do canal verde
break;
case 2:
readValue = RGBCIR.getBlue(); //Leitura do canal azul
break;
118
case 3:
readValue = RGBCIR.getClear(); //Leitura do canal limpo
break;
}
119