Mam 8 termistorów i muszę upewnić się, że każdy z nich znajduje się w oknie temperaturowym. Wszystkie mają to samo okno i nie obchodzi mnie, które lub ile jest w prawidłowym zakresie, muszę tylko wiedzieć, czy wszystkie znajdują się w (tym samym) oknie, czy nie. To ma być rozwiązanie sprzętowe, więc sekwencjonowanie programowe odczytów ADC nie wchodzi w rachubę.
Obecnie moim najlepszym rozwiązaniem jest użycie kilku układów scalonych komparatora i wdrożenie osobnego komparatora okienkowego dla każdego termistora. Aby zoptymalizować rozwiązanie, mogę użyć szeregu quadarów, każdy z wyjściem typu open-drain, dzięki czemu mogę je wszystkie połączyć. Jednak w gruncie rzeczy jest to ten sam obwód. Napięcia odniesienia / wyzwalania, które mogę wykonać raz, buforować, a następnie dostarczać do wszystkich komparatorów.
Czuję się głupio, po prostu rzucając kilka komparatorów na problem. Nie jestem pewien, czy nie ma lepszego sposobu, głównie staram się zoptymalizować przestrzeń na płycie. Czy znasz jakiś kreatywny sposób? Na przykład wybierz napięcia minimalne / maksymalne wszystkich termistorów i użyj komparatora z jednym oknem (EDYCJA: dwa komparatory ofc), co IMHO doprowadziłoby do większego rozwiązania, a zatem nie jest dobrą odpowiedzią, po prostu wspominam o tym dla inspiracji.
EDYCJA: Wiem, że najlepsze byłoby oprogramowanie oparte na oprogramowaniu. Właśnie dlatego wspomniałem o tym od samego początku i z góry, aby nikt nie sugerował tego. Problem został zdefiniowany w ten sposób, ponieważ jest to obwód bezpieczeństwa, a specyfikacje wymagają ode mnie rozwiązania sprzętowego oprócz monitora oprogramowania. Tak więc rozwiązanie oparte na oprogramowaniu już tam jest, „po prostu” muszę znaleźć najlepszy sposób na wdrożenie rozwiązania sprzętowego.
źródło
Odpowiedzi:
Jeden komparator okienny, 3-bitowy licznik i multiplekser analogowy 8: 1 do podłączenia jednego termistora do komparatora.
Jeśli wszystko, co musisz wiedzieć, to że wszystko jest w porządku; to 3 żetony, praca wykonana. (74HC163, 74HC4051, komparator, plus coś w rodzaju 555 do taktowania).
Jak mówi Andy, MUX (np. 74HC4051) ma dość niską rezystancję załączania, więc każdy termistor łączy się z jednym wejściem analogowym, a samotny rezystor po drugiej stronie zapewnia dzielnik napięcia. Jeśli wszystkie termistory są podłączone do GND, rezystor osiągnie napięcie 5 V.
symulacja tego obwodu - Schemat utworzony przy użyciu CircuitLab
Jeśli musisz nagrywać / wyświetlać, KTÓRE są niezgodne ze specyfikacją, zaczynasz dodawać obwody, takie jak dekoder 3-8 linii (jeszcze jeden układ scalony, 74HC138), aby sterować ośmioma diodami LED; winni będą na przemian mrugać.
Jeśli potrzebujesz więcej, wybierz MCU i oprogramowanie.
źródło
Myślę, że odpowiedź Brira nie-SW jest najlepsza, ale oto rozwiązanie czysto analogowe. Użyj obwodu, który z natury wybiera najwyższe napięcie wejściowe (z kilku) i podaje je na wyjście. Podobnie jak obwód o najniższym napięciu.
Rozważ precyzyjny prostownik: -
Wytwarza napięcie wyjściowe, które podąża za napięciem wejściowym w całym zakresie dodatnim. Teraz zastanów się, co się stanie, gdy masz dwa takie wejścia: -
Którykolwiek z V1 i V2 jest najwyższy, wygra bitwę o przejęcie linii wyjściowej. Krok i powtórz dla 8 wejść, a następnie zrób to samo z diodami podłączonymi odwrotnie, a otrzymasz rozwiązanie, które generuje dwa napięcia wyjściowe, które reprezentują najwyższy i najniższy poziom z kilku różnych źródeł napięcia.
Nie jestem w 100%, ale myślę, że możesz użyć wzmacniaczy operacyjnych dla najniższych napięć. Może się mylę?
Następnie użyj komparatorów na obu liniach, aby ustalić, czy jeden z ośmiu może być poza zakresem.
źródło
Sugestie ulepszenia multipleksowanych rozwiązań do stosowania jako obwód bezpieczeństwa: Ustaw jedno z wejść multipleksera na wejście znane z bezpiecznego okna (lub nawet dwa wejścia, jedno poniżej jednego powyżej). Sprawdź, czy występuje komparator w odpowiedzi na „okno zewnętrzne”, gdy odpowiednie wejścia są wybrane w multiplekserze.
Najlepiej napędzaj multiplekser za pomocą licznika (najlepiej synchronicznego), który ma o jedną bit większą rozdzielczość niż potrzebujesz (i jest taktowany dwa razy szybciej): najmniej znaczący bit licznika stanowi doskonały sygnał wyzwalający, dzięki czemu można załadować stan komparatora do krawędź wyzwoliła flipflop D po tym, jak miał wystarczająco dużo czasu na ustabilizowanie się - i ten sygnał wyzwalający może być bezpiecznie bramkowany logicznie w zależności od stanu przeciwnego do różnych flipflopów D (np. jeden dla każdego termistora lub jeden dla termistorów i jeden dla siebie - kanały testowe, które zasugerowałem powyżej).
Aby być jeszcze bardziej bezpiecznym, zduplikuj cały obwód. Podczas gdy termistory i powiązane dane wejściowe są teoretycznie jednym punktem awarii, fakt, że używasz komparatora okien, powinien zapobiec całkowitemu błędnemu odczytaniu pełnego zwarcia lub otwarcia termopary jako fałszywego OK (odpowiednio odchylenie).
źródło
Oto układ porównawczy 6 okien z oknem, a tutaj układ scalony porównawczy z czterema oknami .
Niestety nie.
Możesz zaspokoić tę potrzebę dzięki 4 x ye olde LM339 czterokanałowym komparatorom z otwartym drenem.
Mogą być dostępne w wersji
1,7 mm x 1,7 mm (3 mm x 3 mm łącznie z nakładkami) QFN
lub 6,4 x 5 mm TSSOP
Arkusz danych tutaj
Potrzebne byłyby również napięcia odniesienia górnego i dolnego okna (3 rezystory) i jedno wyjście wyjściowe.
źródło
U2 + będzie max (wejścia) - spadek diody.
U1- będzie wynosić min (wejścia) + spadek diody.
R3,4,5 ustawia progi. Jeśli zbyt niskie na dowolnym wejściu, U1- spada poniżej progu na U1 +, U1out przechodzi w stan wysoki. Jeśli zbyt wysokie na którymkolwiek wejściu, U2 + wzrasta powyżej progu. U2out idzie wysoko.
Nie jestem pewien, co właściwie należy zrobić, gdy wystąpi którykolwiek z tych warunków, ale przychodzi na myśl tranzystor / FET / SCR.
źródło
Możesz kupić układy porównawcze okien, aby zaoszczędzić miejsce na płycie. Na przykład TPS3700 , LTC1042 , LMV7231 (hex) lub MAX969 (quad).
źródło
Oczywistym rozwiązaniem jest użycie mikrokontrolera z co najmniej 8 wejściami A / D. Reszta to oprogramowanie układowe.
Nawet wolna mikro może nadążyć za 8 termistorami. Możesz na przykład w prosty sposób stworzyć system, który reaguje w ciągu milisekundy. Powinno to być o wiele szybsze niż czas reakcji termistorów, aby było efektywne natychmiastowe.
Mówisz, że sekwencjonowanie odczytów A / D jest „wykluczone”, ale nie uzasadnia tego arbitralnego wymogu. Mały mikrokontroler zajmie mniej miejsca na płycie niż kilka komparatorów. Ponieważ optymalizacja przestrzeni planszowej jest przede wszystkim tym, do czego dążysz, musisz to poważnie zbadać.
źródło