Gerador de BPM com display?

Tentando descobrir como projetar isso com uma precisão decente, mas tendo problemas para começar. Eu trabalhei com 555 “s antes, mas não para uma contagem precisa que pode ser modificada em etapas.

Estou tentando criar um sistema de 5 volts que pulsa com precisão uma saída de + 5v que é medido e exibido em pulsos por minuto, ou batimentos por minuto, entre 60 e 240. O BPM deve ser ajustável por 2 botões momentâneos que acionarão o temporizador +1 e -1. Também seria ótimo se pudesse haver um segundo conjunto de botões para +10 e -10 etapas.

O uso de um timer 555 está errado? Há algo mais preciso que eu possa usar para fazer referência ao portão? Já existe um CI que pode fazer isso por conta própria e fazer uma comparação para calcular a matemática?

Desculpas por não postar o que tenho até agora. Estou na versão 80 e algo em meu breadboard e nada tem funcionado com precisão, então longe. Eu também quero ficar longe de ter que programar roms e ficar com CIs discretos. Novamente, eu NÃO quero ser chips de programação.

Acho que o que estou procurando pode ser um gerador de função com um contador de frequência, mas não sei se esse é o melhor caminho a seguir.

Comentários

  • 555s e precisão não combinam. Este é um ajuste muito melhor para um microcontrolador (Arduino etc) com um oscilador de cristal.
  • @BrianDrummond I ‘ estou tentando ficar longe de Adruino e manter as coisas simples e de baixo custo …
  • Eu acho que você tem um terrível equívoco sobre um design baseado em MCU. Existem muitas opções de componentes MCU que proporcionarão a simplicidade, o baixo custo e a precisão que você está procurando. Um design discreto de IC será muito mais complicado em comparação, especialmente quando você traz os botões e o display para a mixagem. O MCU pode fazer tudo com facilidade. Um pensamento final é que, depois de atingir o design baseado em MCU, você nunca mais voltará a tentar fazer 1970 ‘ s ou 1980 ‘ s design de estilo para este tipo de projeto.
  • @MichaelKaras Isso também é algo novo que eu ‘ não tenho certeza se quero entrar. Para mim, transistores e válvulas de vácuo fazem as coisas lol IC ‘ s também estão bem, mas ainda são novos para mim. Mas MCU ‘ s, eu não ‘ nem sei por onde começar e não ‘ não quero entrar em chips de programação …
  • Quanto dessa funcionalidade você tem em seu breadboard para a versão 80?

Resposta

Se você deseja implementar algo sem usar nenhuma parte programável além de um oscilador de frequência personalizado, deve ser possível construir um circuito que usa uma frequência BCD de 3 dígitos e emite um sinal com essa quantidade de batidas por minuto usando um oscilador mais cinco chips disponíveis no mercado. Alimente um oscilador de 1.092.267 Hz em um CD4060 para reduzi-lo por um fator de 16 (os osciladores com pacote DIP na Digi-Key têm uma velocidade mínima de 1MHz). Alimente esse sinal de 68.266,7 Hz em uma sequência em cascata de três chips CD4527 configurados para o modo “ADICIONAR” para produzir uma saída de (1-999) / 4.096 bpm e alimente a saída disso em um CD4040 para obter a taxa de saída desejada bem como vários múltiplos e submúltiplos de potência de dois disso. Os toques mais altos do primeiro CD4060 podem ser usados para fornecer vários múltiplos de potência de dois de 66,7 Hz [talvez utilizáveis como tons de “bipe”].

Se você tiver três botões rotativos BCD, poderá precisar apenas seis peças eletrônicas principais, todas DIP; os preços de quantidade um na Digikey seriam:

3x CD4527BE -- $0.80ea ($2.40 total) 2x CD4060BE -- $0.56ea ($1.12 total) oscillator -- $3.02ea ($3.02 total) $6.54 total 

A montagem deve ser bastante direta em 0,1 “perfboard, uma vez que as únicas interconexões além de energia e aterramento seriam o oscilador saída alimentando o primeiro CD4060, a saída daquele alimentando todos os três CD4527, cada um dos dois primeiros CD4527 alimentando dois sinais para o próximo e o último CD4527 alimentando um sinal para o último CD4060.

Comentários

  • Ah sim! Agora você ‘ está falando minha língua 🙂 Este é o ponto de partida perfeito de que eu precisava! Simples, todo o hardware e não mexa em qualquer programação. Obrigado!
  • Se você quiser evitar até mesmo um chip oscilador programável e fazer tudo com o ‘ classic ‘ Partes CMOS que você pode usar um cristal de 3,2768 MHz e dividir por 3, usando, por exemplo, um 4018 e um 4011, para produzir o clock de 1,092267 MHz. Então você deve tentar fazer o mesmo trabalho com um microcontrolador e decidir o que era mais fácil.
  • @nekomatic: Gosto da ideia de usar o cristal de 3,2768 MHz com divisão por doze (acho que seria o suficiente para obter o número de batidas por minuto no intervalo do 4060; Acho estranho que haja contadores de 14 e 24 bits com os bits superiores disponíveis, mas nada que eu pudesse ver, por exemplo,bits 18-20 disponíveis). Portanto, o mesmo número de chips, mas nenhum oscilador personalizado. Não tenho certeza de como um 4011 se encaixaria, já que só vejo padrões de sete segmentos disponíveis a partir dele. BTW, outra abordagem que poderia ser educacional se alguém tivesse um programador EPROM disponível, mas não um para um microcontrolador …
  • … seria construir uma máquina de estado baseada em registrador de deslocamento. Eu ‘ não tenho certeza do tamanho necessário para o propósito indicado, mas essas coisas podem ser muito poderosas. Finalmente, outra observação interessante é que o microprocessador COSMAC da década de 1970 tinha lógica de bootstring suficiente que era possível usar em uma configuração sem ROM se alguém entrasse em um programa usando IIRC dez interruptores, oito LEDs e um botão. Isso pode chegar longe o suficiente para ter algo que poderia programar um chip moderno EEPROM paralelo.
  • @supercat the 4018 datasheet ti.com/lit/ds/ symlink / cd4018b.pdf diz que um 4011 adicional é necessário para dividir por um número ímpar, e eu apenas citei literalmente – olhando mais de perto, o que você realmente precisa é de uma função AND que você poderia implementar com várias outras partes possíveis , ou (provavelmente) dois diodos e um resistor para Vdd.

Resposta

Isso poderia ser feito facilmente com um microcontrolador. 240 BPM é 4Hz. Usando um microcontrolador com periféricos de temporizador, seria fácil obter uma precisão na faixa de +/- 0,01%.

Sugira um microcontrolador como PIC ou AVR ou MSP430 com um pequeno display, botões. Um display LCD pode ser usado para economizar energia, e há micros com controladores LCD a bordo. O custo e a complexidade do circuito seriam muito baixos.

Você pode prototipar isso com algo como um Arduino.

Embora você pudesse usar um 555 e anexar um contador de frequência a ele (e ajustar o botão conforme ele desvia a frequência), o contador de frequência seria melhor implementado com um micro e portanto, é mais fácil simplesmente sintetizar a frequência que você deseja corretamente em primeiro lugar.

Você pode encontrar designs de contador de frequência de exibição de módulo LCD de código aberto baseados no PIC16F628, por exemplo, mas provavelmente são não diretamente utilizável para tais baixas frequências. Para obter uma resolução de 1 BPM com um contador de frequência simples, é necessário um tempo de porta de 1 minuto, portanto, a contagem do período e a matemática seriam uma abordagem melhor – na verdade, mais difícil do que gerar uma frequência definida.

Resposta

Como os outros disseram, um PIC ou Arduino é o caminho a percorrer, mas se você estiver determinado a evitar programação …

Você poderia considerar o uso de chips CMOS com um oscilador de alta frequência com um cristal para estabilidade. Você então usaria um chip contador para contar pulsos e dar a contagem atual em seus pinos de saída. ser alimentado para alguma lógica para fornecer um pulso de saída em uma determinada contagem e zerar o contador.

Além disso, você precisaria de alguns outros contadores para definir o ponto de reinicialização para comparação. Infelizmente, é aqui que as coisas ficam complicadas . Se você estivesse feliz em contar 100, 200, 300, 400, etc., pulsos, isso pode ser viável, mas o problema é que você deseja especificar batimentos por minuto, então você precisará calcular 1 / BPM para dar contagens para pares Etapas de BPM.

Pense novamente sobre a programação. Micro “s têm estado bem nos últimos tempos. Acho que vão pegar!

Comentários

  • Se alguém pode usar um frequência do oscilador personalizado, eu não ‘ não acho que as coisas funcionem muito difíceis para converter um valor decimal BPM em frequência usando CMOS padrão. Mesmo usando uma frequência chata de 1,00 MHz não seria ‘ muito ruim, embora fosse necessário ter uma cadeia divisória que pudesse se dividir por 60.000 (ou seja, 240×250). Na verdade, pensando bem, isso pode ser viável em dois chips, produzindo a mesma contagem de partes do meu outro projeto, embora eu ache que ter a potência de dois submúltiplos pode ser útil e a divisão de dois chips por -60000 não ‘ não conseguiria.
  • Talvez, mas o problema é que toda vez que você pressiona o botão + ou -, você precisa calcular um novo divisor e é ‘ uma função recíproca (1 / BPM). por exemplo, para seu relógio mestre de 1 MHz, o número de contagens seria – 60 BPM – > 1.000.000 de pulsos; 61 BPM – > 983.606,6 pulsos; 62 BPM – > 968.741,9 pulsos. Obter até mesmo incrementos de um BPM será muito complexo, enquanto ‘ é um cálculo simples em um micro.
  • O uso de três chips multiplicadores de taxa decimal tornará isso possível para obter um valor BCD de 12 dígitos e produzir uma saída em um múltiplo da velocidade desejada que pode então ser reduzida usando um divisor fixo. Não há necessidade de gerar qualquer tipo de recíproco.Usar botões para cima e para baixo e contadores para definir a taxa em vez de botões giratórios exigiria mais circuitos, mas eu não ‘ não sei quão flexível é esse requisito.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *