Właściwe podejście do ochrony przyrządów półprzewodnikowych, takich jak mikrokontrolery może radykalnie poprawić niezawodność danego projektu. Niestety nie wszystkie zabezpieczenia obwodów mają postać sprzętu, takiego jak bezpieczniki czy transile, montowane w liniach zasilania układów scalonych. Niektóre formy ochrony obwodu mogą zawierać się w oprogramowaniu, co może powodować pewne zamieszanie podczas projektowania systemu. W poniższym artykule przyjrzymy się, w jaki sposób mikrokontrolery mogą odgrywać rolę w systemach ochrony obwodów elektronicznych.
Podstawowa ochrona mikrokontrolera
Projektując obwody zabezpieczające dla mikrokontrolerów, należy koniecznie zająć się podstawami. Oznacza to, że wszystkie piny cyfrowe układu, które łączą się z przewodami i są wystawione na świat zewnętrzny (np. poprzez jakiekolwiek łącza) są odpowiednio chronione - najczęściej za pomocą diod Zenera i rezystorów ograniczających płynący prąd. Wejścia analogowe są równie wymagające - muszą mieć one diody Zenera i układy ograniczające prąd wejściowy do akceptowalnego poziomu, jeśli również łączą się z przewodami zewnętrznymi.
Konstrukcje mikrokontrolerów są również wrażliwe na zakłócenia w szynie zasilającej ze względu na to, że układy te są budowane w technologii CMOS (szumiące czy w inny sposób zakłócone linie zasilające mogą powodować nieprawidłowe działanie bramek logicznych w układzie). Dlatego też ważne jest, aby stosować właściwy rodzaj kondensatorów odsprzęgających do filtrowania napięcia zasilającego. Duże kondensatory (takie jak kondensatory elektrolityczne) są przydatne do uzupełniania nagłego zapotrzebowania na energię w urządzeniach peryferyjnych czy układach dużej mocy. Z drugiej strony małe, unipolarne kondensatory (na przykład kondensatory foliowe, ceramiczne itp.) są przydatne do redukcji poziomu szumu przełączania w szynach zasilających.
Często wymagane jest umieszczenie małych, kondensatorów o niskiej równoważnej wartości rezystancji szeregowej (ESR) na każdej parze pinów zasilania mikrokontrolera. Na przykład układ PIC18F45K22 ma dwie pary wejść zasilania (VDD i VSS), a każda para powinna mieć podłączony bezpośrednio kondensator ceramiczny o niskiej wartości pojemności (taki jak np. 10 nF).
Inne formy ochrony obwodu
Opisane do tego momentu metody ochrony są jednakże czysto pasywne i dotyczą jedynie ochrony przed przepięciami w sygnale. Co z innymi formami ochrony obwodu?
Podczas gdy skoki napięcia czy prądu mogą uszkodzić mikrokontroler, niepewne zasilacze powodujące przerwy w zasilaniu mogą powodować nawet większe szkody (nie w sensie bezpośrednio fizycznym) w urządzeniu. Układy scalone generalnie rzadko ulegają uszkodzeniom podczas pracy przy obniżonych napięciach, ale obwody wykorzystujące układy cyfrowe mogą zachowywać się w bardzo nieprzewidywalny sposób, jeżeli nagle spadnie ich napięcie zasilania (tj. dojdzie to tak zwanego zapadu napięcia).
Z perspektywy obserwatora obwód oparty na mikrokontrolerze działający przy obniżonym napięciu może nadal być w stanie sterować wyświetlaczem i uruchamiać oprogramowanie układowe (dlatego wydaje się, że działa), ale np. dane ze źródeł zewnętrznych, takich jak urządzenia I²C, mogą być już niewiarygodne, ponieważ interfejsy te działają przy konkretnych poziomach napięcia, a te zostają zmienione przy zapadzie napięcia. Może to prowadzić do fałszywego poczucia niezawodności. Jeśli obwód kontroluje urządzenia zabezpieczające, istnieje poważne ryzyko obrażeń ludzi, których system zabezpiecza, jeśli tylko połowa obwodu działa poprawnie.
Jak więc można chronić obwody przed zmniejszonymi poziomami napięcia zasilającego?
Monitorowanie mikrokontrolera
Podczas gdy zbyt wysokie napięcie czy nadmierny prąd są często łagodzone za pomocą zewnętrznych, dyskretnych komponentów (takich jak bezpieczniki, diody zabezpieczające etc.), zabezpieczenie przed spadkiem napięcia (zapadem) może być dużo trudniejsze.
Jedną z metod radzenia sobie z tym problemem jest zaprojektowanie dedykowanego zespołu obwodów, który może działać na niskich poziomach napięcia i aktywnie monitorować linie zasilające. Problem z tym podejściem polega jednakże na tym, że może on zauważalnie zwiększyć finalną cenę projektu, a także jego złożoność i wielkość płytki drukowanej. Jednakże, w wielu przypadkach, problem ten można dosyć łatwo obejść. Sposobem na poradzenie sobie z nim i metodą na pozostawienie na podobnym poziomie kosztów systemu, jest sam mikrokontroler, będący sercem urządzenia.
Nierzadko w mikrokontrolerach, wykorzystywanych w projektach, dostępne są zapasowe urządzenia peryferyjne, piny, pamięć i moc obliczeniowa. Oznacza to, że projektanci nie muszą uwzględniać dodatkowych elementów w swoich systemach, by zapewnić możliwość monitorowania stanu całego obwodu. Niektóre mikrokontrolery (na przykład takie jak PIC18F45K22) zawierają całe podsystemy dedykowane do detekcji zapadów (brown-out), które mogą powodować automatyczne resetowanie się układu i ustawianie odpowiednich flag sygnalizujących oprogramowaniu sprzętowemu, że wykryto zapad. Poziom zapadu jest programowalny, a moduł ten działa precyzyjnie w szerokim zakresie temperatur
Jak więc wdrożyć taki podstawowy system monitorowania obwodu z wykorzystaniem mikrokontrolera?
Postępowanie w przypadku awarii
Schemat blokowy po prawej stronie pokazuje prosty przykład, jak mikrokontroler może być wykorzystywany do aktywnego monitorowania napięcia zasilającego. Jest to szczególnie przydatne w sytuacjach, w których napięcie z zasilacza wystarcza do uruchomienia samego mikrokontrolera, ale już nie zewnętrznego osprzętu. Niestety, ten przykład nie ochroni mikrokontrolera przed przerwami w dostawie prądu. W scenariuszach braku zasilania wymagany jest dedykowany obwód wykrywania awarii (który opierałby się na wartości odniesienia) lub mikrokontroler, który ma własny system wykrywania awarii. Dla wielu projektantów użycie dodatkowego obwodu zewnętrznego jest często zbyt kosztowne ze względu na koszt produkcji, liczbę komponentów i wielkość zajmowaną na PCB. Dlatego preferowane jest użycie mikrokontrolera z wbudowanym, urządzeniem peryferyjnym do detekcji zapadów.
Mikrokontroler PIC18F45K22 jest przykładem układu, który zawiera różne punkty wyzwalania detekcji zapadu napięcia. Po wykryciu takiej sytuacji mikrokontroler jest resetowany i ustawiana jest specjalna flaga procesora, aby może poinformować użytkownika o wystąpieniu resetu i jego przyczynie. Ponieważ MCU wykonuje reset, konieczne jest, aby najpierw uruchomić specjalny moduł obsługi, który sprawdza flagi procesor (w tym flagę detektora zapadów). Jeśli flaga taka jest ustawiona, można podjąć określone działania, takie jak wyłączenie zewnętrznych urządzeń peryferyjnych czy zapalenie lampek ostrzegawczych w układzie albo ostatecznie reset całego mikrokontrolera. Po ponownym załadowaniu oprogramowania układowego, system może sprawdzić, jaka była przyczyna resetu i, jeśli był to zapad napięcia zasilającego, podjąć stosowne kroki.
Podsumowanie
Mikrokontrolery stanowią rdzeń wielu produktów, a ich szeroki zakres możliwości pozwala im wykonywać wiele różnych zadań. Ze względu na charakter ich układów I/O, są one również w stanie realizować zadania związane z monitorowaniem stanu obwodu i mogą wykorzystywać zapasowe kanały analogowe do odczytu różnych napięć w urządzeniu.
Mikrokontrolery oferują również możliwość realizowania bardzo złożonych procedur podczas awarii obwodu. Inteligentne ich wykorzystanie z pewnością pozwoli uczynić Twój kolejnych produkt bardziej niezawodnym i odpornym na zakłócenia w liniach zasilających i GPIO.
Źródło: https://www.arrow.com/en/research-and-events/articles/circuit-protection-in-microcontrollers?utm_source=elektroda
Podstawowa ochrona mikrokontrolera
Projektując obwody zabezpieczające dla mikrokontrolerów, należy koniecznie zająć się podstawami. Oznacza to, że wszystkie piny cyfrowe układu, które łączą się z przewodami i są wystawione na świat zewnętrzny (np. poprzez jakiekolwiek łącza) są odpowiednio chronione - najczęściej za pomocą diod Zenera i rezystorów ograniczających płynący prąd. Wejścia analogowe są równie wymagające - muszą mieć one diody Zenera i układy ograniczające prąd wejściowy do akceptowalnego poziomu, jeśli również łączą się z przewodami zewnętrznymi.
Konstrukcje mikrokontrolerów są również wrażliwe na zakłócenia w szynie zasilającej ze względu na to, że układy te są budowane w technologii CMOS (szumiące czy w inny sposób zakłócone linie zasilające mogą powodować nieprawidłowe działanie bramek logicznych w układzie). Dlatego też ważne jest, aby stosować właściwy rodzaj kondensatorów odsprzęgających do filtrowania napięcia zasilającego. Duże kondensatory (takie jak kondensatory elektrolityczne) są przydatne do uzupełniania nagłego zapotrzebowania na energię w urządzeniach peryferyjnych czy układach dużej mocy. Z drugiej strony małe, unipolarne kondensatory (na przykład kondensatory foliowe, ceramiczne itp.) są przydatne do redukcji poziomu szumu przełączania w szynach zasilających.
Często wymagane jest umieszczenie małych, kondensatorów o niskiej równoważnej wartości rezystancji szeregowej (ESR) na każdej parze pinów zasilania mikrokontrolera. Na przykład układ PIC18F45K22 ma dwie pary wejść zasilania (VDD i VSS), a każda para powinna mieć podłączony bezpośrednio kondensator ceramiczny o niskiej wartości pojemności (taki jak np. 10 nF).
Inne formy ochrony obwodu
Opisane do tego momentu metody ochrony są jednakże czysto pasywne i dotyczą jedynie ochrony przed przepięciami w sygnale. Co z innymi formami ochrony obwodu?
Podczas gdy skoki napięcia czy prądu mogą uszkodzić mikrokontroler, niepewne zasilacze powodujące przerwy w zasilaniu mogą powodować nawet większe szkody (nie w sensie bezpośrednio fizycznym) w urządzeniu. Układy scalone generalnie rzadko ulegają uszkodzeniom podczas pracy przy obniżonych napięciach, ale obwody wykorzystujące układy cyfrowe mogą zachowywać się w bardzo nieprzewidywalny sposób, jeżeli nagle spadnie ich napięcie zasilania (tj. dojdzie to tak zwanego zapadu napięcia).
Z perspektywy obserwatora obwód oparty na mikrokontrolerze działający przy obniżonym napięciu może nadal być w stanie sterować wyświetlaczem i uruchamiać oprogramowanie układowe (dlatego wydaje się, że działa), ale np. dane ze źródeł zewnętrznych, takich jak urządzenia I²C, mogą być już niewiarygodne, ponieważ interfejsy te działają przy konkretnych poziomach napięcia, a te zostają zmienione przy zapadzie napięcia. Może to prowadzić do fałszywego poczucia niezawodności. Jeśli obwód kontroluje urządzenia zabezpieczające, istnieje poważne ryzyko obrażeń ludzi, których system zabezpiecza, jeśli tylko połowa obwodu działa poprawnie.
Jak więc można chronić obwody przed zmniejszonymi poziomami napięcia zasilającego?
Monitorowanie mikrokontrolera
Podczas gdy zbyt wysokie napięcie czy nadmierny prąd są często łagodzone za pomocą zewnętrznych, dyskretnych komponentów (takich jak bezpieczniki, diody zabezpieczające etc.), zabezpieczenie przed spadkiem napięcia (zapadem) może być dużo trudniejsze.
Jedną z metod radzenia sobie z tym problemem jest zaprojektowanie dedykowanego zespołu obwodów, który może działać na niskich poziomach napięcia i aktywnie monitorować linie zasilające. Problem z tym podejściem polega jednakże na tym, że może on zauważalnie zwiększyć finalną cenę projektu, a także jego złożoność i wielkość płytki drukowanej. Jednakże, w wielu przypadkach, problem ten można dosyć łatwo obejść. Sposobem na poradzenie sobie z nim i metodą na pozostawienie na podobnym poziomie kosztów systemu, jest sam mikrokontroler, będący sercem urządzenia.
Nierzadko w mikrokontrolerach, wykorzystywanych w projektach, dostępne są zapasowe urządzenia peryferyjne, piny, pamięć i moc obliczeniowa. Oznacza to, że projektanci nie muszą uwzględniać dodatkowych elementów w swoich systemach, by zapewnić możliwość monitorowania stanu całego obwodu. Niektóre mikrokontrolery (na przykład takie jak PIC18F45K22) zawierają całe podsystemy dedykowane do detekcji zapadów (brown-out), które mogą powodować automatyczne resetowanie się układu i ustawianie odpowiednich flag sygnalizujących oprogramowaniu sprzętowemu, że wykryto zapad. Poziom zapadu jest programowalny, a moduł ten działa precyzyjnie w szerokim zakresie temperatur
Jak więc wdrożyć taki podstawowy system monitorowania obwodu z wykorzystaniem mikrokontrolera?
Postępowanie w przypadku awarii
Schemat blokowy po prawej stronie pokazuje prosty przykład, jak mikrokontroler może być wykorzystywany do aktywnego monitorowania napięcia zasilającego. Jest to szczególnie przydatne w sytuacjach, w których napięcie z zasilacza wystarcza do uruchomienia samego mikrokontrolera, ale już nie zewnętrznego osprzętu. Niestety, ten przykład nie ochroni mikrokontrolera przed przerwami w dostawie prądu. W scenariuszach braku zasilania wymagany jest dedykowany obwód wykrywania awarii (który opierałby się na wartości odniesienia) lub mikrokontroler, który ma własny system wykrywania awarii. Dla wielu projektantów użycie dodatkowego obwodu zewnętrznego jest często zbyt kosztowne ze względu na koszt produkcji, liczbę komponentów i wielkość zajmowaną na PCB. Dlatego preferowane jest użycie mikrokontrolera z wbudowanym, urządzeniem peryferyjnym do detekcji zapadów.
Mikrokontroler PIC18F45K22 jest przykładem układu, który zawiera różne punkty wyzwalania detekcji zapadu napięcia. Po wykryciu takiej sytuacji mikrokontroler jest resetowany i ustawiana jest specjalna flaga procesora, aby może poinformować użytkownika o wystąpieniu resetu i jego przyczynie. Ponieważ MCU wykonuje reset, konieczne jest, aby najpierw uruchomić specjalny moduł obsługi, który sprawdza flagi procesor (w tym flagę detektora zapadów). Jeśli flaga taka jest ustawiona, można podjąć określone działania, takie jak wyłączenie zewnętrznych urządzeń peryferyjnych czy zapalenie lampek ostrzegawczych w układzie albo ostatecznie reset całego mikrokontrolera. Po ponownym załadowaniu oprogramowania układowego, system może sprawdzić, jaka była przyczyna resetu i, jeśli był to zapad napięcia zasilającego, podjąć stosowne kroki.
Podsumowanie
Mikrokontrolery stanowią rdzeń wielu produktów, a ich szeroki zakres możliwości pozwala im wykonywać wiele różnych zadań. Ze względu na charakter ich układów I/O, są one również w stanie realizować zadania związane z monitorowaniem stanu obwodu i mogą wykorzystywać zapasowe kanały analogowe do odczytu różnych napięć w urządzeniu.
Mikrokontrolery oferują również możliwość realizowania bardzo złożonych procedur podczas awarii obwodu. Inteligentne ich wykorzystanie z pewnością pozwoli uczynić Twój kolejnych produkt bardziej niezawodnym i odpornym na zakłócenia w liniach zasilających i GPIO.
Źródło: https://www.arrow.com/en/research-and-events/articles/circuit-protection-in-microcontrollers?utm_source=elektroda
Cool? Ranking DIY