Simplificando muitos comparadores de janelas


10

Eu tenho 8 termistores e devo garantir que cada um deles esteja dentro de uma janela de temperatura. Todos eles têm a mesma janela e eu não me importo com quais ou quantos estão dentro do intervalo válido, só preciso saber se todos estão dentro da (mesma) janela ou não. Essa é uma solução apenas de hardware, portanto, o seqüenciamento de software das leituras do ADC está fora de questão.

Minha melhor solução atualmente é usar um monte de CIs comparadores e implementar um comparador de janelas separado para cada termistor. Para otimizar a solução, posso usar vários comparadores quádruplos, cada um com uma saída de dreno aberto, para que eu possa conectá-los todos. Ainda assim, em essência, é o mesmo circuito. As tensões de referência / trigger que eu posso fazer uma vez, armazenam em buffer e depois fornecem a todos os comparadores.

Eu me sinto estúpido por simplesmente jogar um monte de comparadores no problema. Não tenho certeza se não há uma maneira melhor, estou tentando otimizar o espaço da placa. Existe alguma maneira criativa que você conhece? Por exemplo, selecione tensões mínimas / máximas de todos os termistores e use um comparador de janela única (EDIT: dois comparadores ofc), que o IMHO levaria a uma solução maior e, portanto, não é uma boa resposta, apenas mencionei isso como inspiração.

EDIT: Eu sei que uma solução baseada em software seria a melhor. Foi por isso que mencionei isso logo no início e no início para impedir que todos o sugerissem. A razão pela qual o problema é definido dessa maneira é porque este é um circuito de segurança, e as especificações exigem que eu implemente uma solução somente de hardware, além de um monitor de software. Portanto, a solução baseada em software já está lá, "apenas" preciso encontrar a melhor maneira de implementar a baseada em hardware.


1
Você pode multiplexar as entradas em um comparador de janelas. Mas então você precisaria de algo para sequenciar as medidas e combinar os resultados. A restrição "sem software" é uma dor, pois você pode fazer tudo isso com um microcontrolador com um ADC embutido, que resultaria na menor pegada possível. Como sou especialista em hardware, lamento admitir, mas aqui é difícil vencer um programa e um programa pequeno.
Bimpelrekkie 22/01

4
Se a precisão desejada não for excessivamente 'apertada', você poderá usar um diodo OU uma porta com um resistor de puxar para baixo para o limite máximo da janela acionado pelos termistores através de um diodo de cada um. A tensão do resistor será a tensão mais alta, menos uma queda de diodo. Repita para a janela baixa com um resistor pull up e diodos de polaridade invertida. | Enquanto você disse que isso não era para ser uma solução de software - um Arduino dedicado (ou apenas um processador de escolha que executa apenas essa tarefa) pode estar próximo de ser compacto e de baixo custo.
Russell McMahon

1
"o seqüenciamento de software das leituras do ADC está fora de questão." Com isso você jogou fora a solução mais simples e menor.
Oldfart 22/01

1
Que padrão é esse que requer os dois sistemas independentes, sendo um deles apenas de hardware? Vi especificações de sistemas implementados independentemente, mas a redundância fornece a confiabilidade necessária. Você pode implementar dois sistemas de verificação micro-baseados para o espaço de apenas um hardware, por exemplo.
precisa saber é o seguinte

2
Um FPGA é considerado software?
Eric Johnson

Respostas:


11

Um comparador de janelas, um contador de 3 bits e um mux analógico 8: 1 para conectar um termistor ao comparador.

Se tudo que você precisa saber é que tudo está bem; são 3 fichas, trabalho feito. (74HC163, 74HC4051, comparador, mais algo como um 555 para cronometrar).

Como Andy diz, o MUX (por exemplo, 74HC4051) possui uma resistência ON relativamente baixa, de modo que cada termistor se conecta a uma entrada analógica e um resistor isolado do outro lado fornece um divisor de tensão. Se todos os termistores estiverem conectados ao GND, o resistor passará para 5V.

esquemático

simular este circuito - esquemático criado usando o CircuitLab

Se você precisar gravar / exibir QUAIS estão fora das especificações, comece a adicionar circuitos como um decodificador de 3 a 8 linhas (mais um IC, 74HC138) para acionar oito LEDs; os culpados se revezam piscando.

Se você precisar de mais do que isso, vá para o MCU e o software.


A fonte de excitação (resistor) pode estar do lado "1" do MUX (MUX de baixo ohm), mas, caso contrário, +1 por me bater nele.
Andy aka

@ Andyaka É por isso que eu não me incomodei com um esquema! Além disso, não consigo encontrar 74 (HCT) 4051, 74x163, 74x138 no editor sch online ... Vou preencher esse detalhe, mas se você quiser preencher mais, valerá um voto ou dois.
Brian Drummond

Você está animada, Brian, então eu deixo com você.
Andy aka

1
Ok, ideia interessante. Há um pequeno problema na saída, pois se um único termistor estiver fora da faixa, por exemplo, a saída literalmente me diria isso apenas em 1/8 de tempo. Provavelmente não é uma coisa tão grande quanto eu poderia alimentar a saída do win.comp. a um registrador de turnos com saídas de dreno aberto. Eu precisaria cronometrar, mas a mesma coisa que cutuca o multiplexador provavelmente também poderia fazer isso. Definitivamente, uma idéia que vale a pena seguir, deixe-me tentar apresentar um esquema mais completo e voltarei a você aqui.
Ultima

Bem, se você o registra em 4 Hz e a constante de tempo do seu sistema térmico é> 2 segundos, isso é (a) OK e (b) fornece uma taxa de piscada bastante proeminente (taxa de zumbido, qualquer que seja). Você conhece as características do sistema, só posso adivinhar.
Brian Drummond

13

Acho que a resposta não-SW de Brian é a melhor, mas aqui está uma solução puramente analógica. Use um circuito que escolha inerentemente a entrada de tensão mais alta (entre várias) e a coloque na saída. O mesmo vale para a tensão mais baixa.

Considere o retificador de precisão: -

insira a descrição da imagem aqui

Produz uma tensão de saída que segue a tensão de entrada ao longo de sua faixa positiva. Agora considere o que acontece quando você tem duas entradas como esta: -

insira a descrição da imagem aqui

Qualquer que seja o V1 e V2 mais alto, vencerá a batalha para conduzir a linha de saída. Pise e repita para 8 entradas e faça o mesmo com diodos conectados reversos e você terá uma solução que gera duas tensões de saída que representam os níveis mais alto e mais baixo de várias fontes de tensão diferentes.

Não sou 100%, mas acho que você pode reutilizar os amplificadores operacionais para as tensões mais baixas. Talvez eu esteja errado nisso?

Em seguida, use comparadores nas duas linhas para determinar se um dos oito pode estar fora do intervalo.


Tivemos a mesma pergunta há algum tempo e acho que essa solução é uma jóia escondida.
Janka

@Janka talvez você possa encontrá-lo e vinculá-lo? Eu gostaria de ver.
Andy aka

+1 Eu gosto disso. Talvez 4 LM324s + um com fio ou LM393 e pronto. Ele pode filtrar o * & * $$ para impedir disparos falsos.
Spehro Pefhany

Tive a impressão de que não fazia mais de um mês e tinha a palavra magnitude , mas acho que estava errado: não consigo encontrá-la.
Janka

Oi! Obrigado pela sua resposta. Eu acho que, embora isso realmente aumente os custos em todos os aspectos. Ingenuamente, construir 8 comparadores de janelas, como na pergunta original, requer 16 comparadores. Essa solução proposta também precisa 16 para criar min + max, e mais 4 para a comparação real mais uma matriz de diodos. Muitas vezes, a diferença no número de CIs reais é menor devido a quad-opamps, mas, no entanto, não é uma vitória.
Ultima

3

Sugestões para melhorar as soluções multiplexadas para uso como circuito de segurança: Tenha uma das entradas do multiplexador predefinidas para uma entrada conhecida fora da janela de segurança (ou até duas entradas, uma abaixo da acima). Verifique se há uma resposta "fora da janela" do comparador quando as entradas relevantes forem selecionadas no multiplexador.

É melhor dirigir o multiplexador com um contador (síncrono é o melhor) que possui um pouco mais de resolução do que você precisa (e tem o clock duas vezes mais rápido): O contador menos significativo produz um ótimo sinal de disparo para que você possa carregar o estado do comparador no um flip-flop D ativado por borda depois de ter tempo suficiente para se estabelecer - e esse sinal de trigger também pode ser controlado com segurança pela lógica, dependendo do estado do contador, para flip-flops D diferentes (por exemplo, um para cada termistor, ou um para os termistores e outro para o self) canais de teste que sugeri acima).

Para ser ainda mais seguro, duplique todo o circuito. Embora os termistores e as entradas associadas ainda sejam teoricamente um único ponto de falha, o fato de você estar usando um comparador de janelas deve impedir que um curto ou aberto completo em um termopar seja mal interpretado como um falso OK (viés de acordo).


3

Aqui está um IC comparador de janela de 6 x e aqui está um IC comparador de janela Quad .
No 8, infelizmente.

Você pode atender a essa necessidade com comparadores de quatro drenos abertos quadrados LM339 de quatro vezes.
Podem ser
adquiridos em QFN de 1,7 mm x 1,7 mm (3 mm x 3 mm, incluindo pastilhas)
ou TSSOP de 6,4 x 5 mm

Folha de dados aqui

Você também precisaria de tensões de referência na janela superior e inferior (3 resistores) e uma única saída de saída.


Olá. Sim, eu também mencionei na pergunta original que é possível usar matrizes, o que reduz indiscutivelmente a contagem de IC. Eu acho que a pergunta era mais sobre se é possível diminuir a contagem de componentes usando uma arquitetura diferente do que apenas usando dispositivos de integração mais altos. Aceitei a resposta de Brian, porque usando apenas 5-6 componentes físicos, você pode construir um circuito para 16 ou 32 termistores com essa solução. Talvez não para um número baixo de NTCs, como <8, mas qualquer coisa mais do que isso e essa solução é um vencedor claro. No entanto, obrigado (também por seus comentários anteriores).
Ultima

2

Por que tão complexo?

U2 + será máximo (entradas) - queda do diodo.

U1- será mínimo (entradas) + queda de diodo.

R3,4,5 define limites. Se muito baixo em qualquer entrada, U1- cai abaixo do limite em U1 +, U1out aumenta. Se muito alto em qualquer entrada, U2 + sobe acima do limite. U2out vai alto.

Não sabe ao certo o que você deseja fazer quando ocorrer uma dessas condições, mas lembre-se de dirigir um transistor / FET / SCR.



-2
Estou principalmente tentando otimizar o espaço na placa.
Eu me sinto estúpido por simplesmente jogar um monte de comparadores no problema.

A solução óbvia é usar um microcontrolador com pelo menos 8 entradas A / D. O resto é firmware.

Mesmo um micro lento pode acompanhar 8 termistores. Você pode criar trivialmente um sistema que responda em menos de um milissegundo, por exemplo. Isso deve ser muito mais rápido que o tempo de resposta dos termistores e ser instantaneamente eficaz.

Você diz que a sequência de leituras A / D está "fora de questão", mas não justificou esse requisito arbitrário. Um pequeno microcontrolador ocupa menos espaço na placa do que muitos comparadores. Como otimizar o espaço do quadro é o principal objetivo, é algo que você precisa explorar seriamente.


6
Sim, não, você está errado. Não há religião envolvida, há simplesmente momentos em que uma solução baseada em hardware é um requisito, ponto final. Não vejo por que preciso justificar meus requisitos, porque mesmo se você acha que o requisito não faz sentido, a resposta correta mantém o valor de ensino para todos. Mas é claro que há uma razão para isso, que forneci em uma edição no final da pergunta.
Ultima

6
Construir um caso de segurança para um sistema de software (como a pergunta editada esclarece pode ser necessário) pode ser muito mais caro do que construir um sistema de hardware independente simples.
Brian Drummond

3
O que você disser não muda o fato de sua resposta em incorreto, parece rude e inúteis
MCG

3
Conversando só porque eu posso. A solução "Use a micro", embora pertinente em muitos casos, é realmente irrelevante aqui. Afinal, este é um fórum de eletrônicos e postar respostas sobre como fazê-lo da maneira linear é uma resposta mais instrutiva. Se por nenhuma outra razão senão destacar quanto mais barato e menor seria usar um micro.
Trevor_G
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.