collapse

* Links de Robótica

* Posts Recentes

Autor Tópico: Ajuda identificador condensador  (Lida 1625 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline m2snd

  • Mini Robot
  • *
  • Mensagens: 65
Ajuda identificador condensador
« em: 15 de Setembro de 2014, 13:47 »
Olá,

Isto pode ser muito básico, mas a verdade é que tenho dúvidas em perceber  :P
, se me puderem ajudar, agradeço. Já andei a googlar mas não cheguei a qualquer conclusão.

No seguinte esquema, aparece este condensador  o qual está identificado com um M.



Este M quer dizer microfarads (1uf) ou é M de mega qualquer coisa, ou seja 1000uf?

Este está correcto para o projecto?



Obrigado!

Offline jm_araujo

  • Mini Robot
  • *
  • Mensagens: 1.750
  • NERD!
Re: Ajuda identificador condensador
« Responder #1 em: 15 de Setembro de 2014, 14:08 »
Com uma fonte meio estranha, mas continua a parecer um miu, letra grega usada para o multiplicador  micro (10^-6).

Esse que mostras na foto deve dar para o gasto, apesar que usar um eletrolítico para fazer debounce de um botão (aplicação que o esquema sugere) parece-me despesista.


Offline m2snd

  • Mini Robot
  • *
  • Mensagens: 65
Re: Ajuda identificador condensador
« Responder #2 em: 15 de Setembro de 2014, 14:21 »
O condensador, seria para evitar possíveis ruídos no sinal...mas achas que seja supérfluo?

Obrigado pelo ajuda !
« Última modificação: 15 de Setembro de 2014, 14:24 por m2snd »

Offline jm_araujo

  • Mini Robot
  • *
  • Mensagens: 1.750
  • NERD!
Re: Ajuda identificador condensador
« Responder #3 em: 15 de Setembro de 2014, 15:43 »
Não é superfluo. Mas um cerâmico chega e sobra, é mais barato, ocupa menos espaço e qualquer valor comum (1u, 100n) serve. E se liga a um microcontrolador, pode ser suprimido se fizeres debouncing no software.
E a resistência R2 também podia ir à vida.
« Última modificação: 15 de Setembro de 2014, 15:49 por jm_araujo »

Online senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.042
  • Helpdesk do sitio
Re: Ajuda identificador condensador
« Responder #4 em: 15 de Setembro de 2014, 15:57 »
Se realmente for para usar com um micro nem sequer precisa de resistência nenhuma, é raro o micro que não tem pelo menos pull-ups internos.
Avr fanboy

Offline Hugu

  • Mini Robot
  • *
  • Mensagens: 5.319
  • Keyboard not found. Press any key to continue.
    • [url=www.g7electronica.net]G7 Electrónica.net[/url]
Re: Ajuda identificador condensador
« Responder #5 em: 15 de Setembro de 2014, 17:47 »
é 1uF :P o "M" tem uma perninha e mega n existe em condensadores, pelo menos que conheça ou apenas nesse tamanho! LOL

Offline m2snd

  • Mini Robot
  • *
  • Mensagens: 65
Re: Ajuda identificador condensador
« Responder #6 em: 15 de Setembro de 2014, 18:41 »
Obrigado a todos pelas respostas!!!

Online senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.042
  • Helpdesk do sitio
Re: Ajuda identificador condensador
« Responder #7 em: 15 de Setembro de 2014, 18:51 »
Por acaso até já se usou o M nos condensadores, ai nos anos 50-70 usava-se m(por vezes M na impressão) para designar micro-farad.
Assim como a voltagem muito tipicamente era escrita como wv/WV, querendo designar working voltage.

Tambem não se usava nano nos estados unidos, e até certo ponto, continuam a não usar, passam de micro(u) para pico, saltando o nano, dai na Mouser por exemplo não ter 100nF, mas sim 0.1uF por exemplo.
Avr fanboy

Offline dropes

  • Mini Robot
  • *
  • Mensagens: 1.876
Re: Ajuda identificador condensador
« Responder #8 em: 16 de Setembro de 2014, 00:16 »
Se é para debounce, basta ter um condensador de 100nF em paralelo com o switch ou introduzir em software,
o debounce em software costuma ser um delay de 25ms, nem sempre prático em algumas rotinas.

Online senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.042
  • Helpdesk do sitio
Re: Ajuda identificador condensador
« Responder #9 em: 16 de Setembro de 2014, 00:54 »
Não precisas de delay, usas um timer a gerar um tick, por exemplo de 1ms, e depois de 10 em 10ms, que é como faço, lês as entradas, AND do valor anterior com o actual, se estiver a zero(pull-up a 5/3.3v) durante dois ticks é considerado como botão premido, nada de delays.

Com uma estrutura de dados fica algo assim:
Código: [Seleccione]
void getBtnStatus(void){

static uint8_t btnNewState = 0; //actual button state as read
static uint8_t btnLastState = 0; //previous button state read
static uint8_t encNewState = 0; //actual encoder button state as read
static uint8_t encLastState = 0; //previous encoder button state read
static uint8_t pressedState = 0; //Shows what are the pressed buttons after the debouncing

//read the 6 user interface buttons and debounce them (4 buttons + 2 buttons from the encoders)
btnNewState = BTNPIN & ((1<<BTN1)|(1<<BTN2)|(1<<BTN3)|(1<<BTN4));
pressedState = btnNewState & btnLastState;
btnLastState = btnNewState;
buttonState.btn1 = ((pressedState & (1<<BTN1))>>3);
buttonState.btn2 = ((pressedState & (1<<BTN2))>>2);
buttonState.btn3 = ((pressedState & (1<<BTN3))>>1);
buttonState.btn4 = (pressedState & (1<<BTN4));

//read the 4 pins that are used by the 2 rotary encoders
encNewState = ENCBTNPIN & ((1<<ENC1BTN)|(1<<ENC2BTN));
pressedState = encNewState & encLastState;
encLastState = encNewState;
buttonState.encV = ((pressedState & (1<<ENC1BTN))>>3);
buttonState.encI = (pressedState & (1<<ENC2BTN));
}

Como é feita a chamada:
Código: [Seleccione]
if(milis() - buttonsMilis > 10){ //debounce buttons, it works!
    buttonsMilis = milis();
    getBtnStatus();
}
Avr fanboy

Offline m2snd

  • Mini Robot
  • *
  • Mensagens: 65
Re: Ajuda identificador condensador
« Responder #10 em: 16 de Setembro de 2014, 10:55 »
Obrigado pelo código senso! Na realidade, tenho uma placa em que como se disse atrás, usei apenas uma resistência de 10k e nunca tive qualquer problema. Ligada ao arduino tem a função de 'informar' o micro se foi ou não premido comutador de acender/apagar a luz. Li algures em que tal como eu, uso as mesmas tubagens para passar os cabos de 230v/5v e que nestes casos poderia gerar eventuais ruidos. É só por uma questão de precaução.

Offline m2snd

  • Mini Robot
  • *
  • Mensagens: 65
Re: Ajuda identificador condensador
« Responder #11 em: 16 de Setembro de 2014, 10:58 »
Hoje vou meter mãos à obra para ver o que sai daqui. Já dei conta que deveria ter comprado condensadores cerâmicos, mas agora já está...

Offline dropes

  • Mini Robot
  • *
  • Mensagens: 1.876
Re: Ajuda identificador condensador
« Responder #12 em: 17 de Setembro de 2014, 00:11 »
Não me estava a referir a um delay real de 25ms, o código ao colocar a função debounce é que demora esse tempo até sair, também depende da linguagem que for escrita.
Afinal o objectivo é eliminar o duplo click que pode ocorrer ao pressionar um switch, eliminando as leituras subsequentes num determinado período de tempo.

Gostei da tua solução   ;)