Boa tarde, estou programando uma esp32 pela Arduíno IDE, estou utilizando uma entrada analogica para fazer a leitura de um sensor IR, porem estou encontrando muito ruido, encontrei uma biblioteca chamada Filters-master, (filters.h) caso alguem já tenha trabalhado com esta biblioteca, saberia me dizer onde se origina este erro e como corrigi-lo:

============================================================================

C:\Users\saulo\OneDrive\Documentos\Arduino\libraries\Filters-master\FilterTwoPole.cpp: In member function 'void FilterTwoPole::test()':

C:\Users\saulo\OneDrive\Documentos\Arduino\libraries\Filters-master\FilterTwoPole.cpp:198:33: error: 'analogWrite' was not declared in this scope

analogWrite(10,osc.output() ); // hardcoded the dial pin

^

exit status 1
Erro compilando para a placa ESP32 Dev Module

============================================================================

caso contrario, existe algum outro meio de realizar um filtro passa baixa e passa alta?

Exibições: 524

Responder esta

Respostas a este tópico

Olá.

Fale mais sobre esse sensor IR analógico.. Não entendi bem.

Os sensores IR que conheço são digitais. Seja controle remoto ou barreira ótica.

Enfim, o ideal seria antes de mais nada ver como o sinal chega ao esp32. Ele deve chegar limpo. Se está variando a leitura mas o sinal está variando não é ruído e sim a precisa representação de um sinal variante.

Caso de um sinal que varia vc queira extrair uma média, filtrar ou coisa assim aí será preciso um algoritmo.

A grande maioria dos casos exige apenas o calculo da media de algumas leituras, já que se busca um valor DC médio em um sinal com alguma oscilação.

Enfim, minha sugestão era entender melhor o problema para sugerir algo mais simples que uma biblioteca de filtros.

trata-se de um exemplo de photoplestimografia, ou seja, leitura da variação da coloração sanguínea, eu prototipei com o arduino nano e funcionou perfeitamente, os filtros servem para remover os ruidos causados pela rede eletrica (60hz) e variações a baixo de 0,5hz, a média móvel utilizo com um algorítimo mesmo, mas não encontrei algorítimo para estes outros filtros

É.. não conheço isso aí...

Mas vamos focar na migração do nano pro esp32.

O mesmo programa pro nano funcionava e agora tem ruídos ? Ou funcionava e agora dá esse erro na lib ?

Realmente para o esp32 algumas coisas não funcionam mto bem. Por enquanto as dificuldades que tive foram só para leitura digital com a biblioteca OneWire. A solução foi desligar as interrupções durante a leitura com o portDISABLE_INTERRUPTS(); mas não dá pra saber se vai ser solução pra vc. O problema só acontecia quando usava o wifi. Sem wifi ia super bem.

 

o programa sempre teve ruido, mas a biblioteca é que deixou de funcionar, mas não faço questão de utilizar esta biblioteca de qualquer forma, caso exita um algoritimo capaz de ralizar a função de um filtro passa baixa

Bom dia , esses filtros são chamados de digitais. O programa faz cálculos matemáticos, para melhorar a leitura do conversor ADC. 

Informe por favor, o link da biblioteca Filters-master.

http://www.inatel.br/docentes/ynoguti/downloads/dsp-s886637-1/22-in...

boa noite Murta, obrigado pelo link, segue o link da biblioteca:
https://github.com/JonHub/Filters

Bom dia Saulo, 

Essa biblioteca citada por você foi projetada para Arduino,

https://github.com/JonHub/Filters

Isso não quer dizer que ela possa ser usada com outro módulo (no seu caso, ESP32) sem nenhuma adaptação.

Provavelmente terá que fazer algumas adaptações. 

Aqui esta o GITHUB da ESPRESSIF para o ESP32:

https://github.com/espressif/arduino-esp32

Esse Simon Monk tem um repositório para Arduino com filtros:

https://github.com/simonmonk/ArduinoNextSteps/tree/master/ArduinoNe...

sketch_13_02_simple_smoothing first upload 5 years ago
sketch_13_03_60Hz_band_stop first upload 5 years ago
sketch_13_03_null_filter_uno first upload 5 years ago
sketch_13_04_null_filter_due first upload 5 years ago
sketch_13_05_band_stop_due first upload 5 years ago
sketch_13_06_FFT_Spectrum first upload 5 years ago

https://github.com/simonmonk?tab=repositories

RSS

Destaques

Registre-se no
Lab de Garagem
Clicando aqui

Convide um
amigo para fazer
parte

curso gratis de arduino

© 2018   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço