Pracuję nad projektem, który polega na uruchomieniu silnika prądu stałego, który służy do podnoszenia / opuszczania szyb w pojeździe.
Podczas pracy silnik pobiera około 1,5A prądu. Jednak gdy okno osiągnie koniec suwaków, a silnik nie będzie mógł już podnosić / opuszczać szyby, zaczyna pobierać do 15A, dopóki nie zwolnisz przycisku.
Chcę użyć mikrokontrolera AVR do sterowania tym silnikiem i chciałbym zatrzymać silnik, gdy okno osiągnie barierę. Jak dotąd udało mi się wymyślić trzy rozwiązania:
- Użyj przełączników, które uruchomią i poinformują mikrokontroler, gdy okno dotrze do bariery. Chciałbym tego uniknąć, ponieważ oznacza to instalację dwóch przełączników na okno i poprowadzenie dodatkowych kabli do mikrokontrolera.
- Użyj funkcji timera, która wyłączy silnik po określonym czasie. Nie dotyczy to, ponieważ napięcie może się zmieniać, a silnik może obracać się szybciej lub wolniej niż zwykle. Ponadto okno może znajdować się w nieznanej pozycji podczas uruchamiania timera (maksymalnie w górę, na środku ...).
- Użyj pewnego rodzaju detektora wysokoprądowego i poprowadź go do wejścia mikrokontrolera, ostrzegając program, gdy próg prądu zostanie osiągnięty (powiedzmy 5A). Coś w rodzaju tranzystora, przekaźnika lub podobnego urządzenia, które może obsłużyć tak wysoki prąd na wejściu.
Jestem prawie początkującym, jeśli chodzi o elektronikę, więc zastanawiałem się, czy istnieje sposób na wykrycie tego wysokiego prądu (silnik pracuje na ~ 12 V) i dostarczenie tego sygnału do mikrokontrolera (który działa na 5 V).
Doceniam każdą pomoc. Dzięki!
źródło
Odpowiedzi:
To powinno być dość łatwe. Różnicę między 1,5 A a 15 A można wykryć za pomocą prostego rezystora. Wartość 0,3 oma da 0,45 V przy 1,5 A i 4,5 V przy 15 A.
Cyfrowy pin wejściowy mikrokontrolera odczyta 0 przy 1,5 A i 1 przy 15 A.
Można to podłączyć bezpośrednio do pinu wejściowego mikrokontrolera, ale prawdopodobnie najlepiej byłoby dodać trochę filtrowania i ochrony.
RF i C1 zapewniają filtr dolnoprzepustowy, aby napięcie było bardziej stabilne.
D1 zapewnia ochronę przed przepięciem w przypadku, gdy prąd znacznie przekracza 15A.
źródło
Allegro ma wiele układów scalonych czujników prądu, opartych na czujnikach z efektem Halla. ACS712 może wykrywać prądy do 50 A.
ACS712ELCTR-20A-T ma czułość 100 mV / A, więc możesz użyć ADC mikrokontrolera, aby wykryć, kiedy próg 500 mV (5 A) zostanie osiągnięty, lub lepiej, użyj komparatora, który przerywa mikrokontroler. Wiele AVR-ów ma komparator na chipie, z wyłącznym przypisaniem do niego.
ACS712 ma bieżącą rezystancję ścieżki wykrywania tylko 1,2 mΩ , więc nawet przy 15 A rozproszy jedynie 270 mW , co może wytrzymać na zawsze. Jest to główna przewaga nad bardziej tradycyjnym opornikiem prądowym, jak w odpowiedzi Rocketmagnet. Tam potrzebujesz stosunkowo wysokiej rezystancji, aby uzyskać wysoki poziom na 15 A. Mike obliczył, że rezystor czujnikowy Rocketmagnet rozproszy 36 W, gdy silnik się zatrzyma, więc czas ma tam krytyczne znaczenie (przez chwilę pomijając rozpraszanie 131 W w silniku). Mimo to zalecany jest rezystor czujnikowy o mocy 5 W.
źródło
Są takie rzeczy zwane kontaktronami magnetycznymi. Zasadniczo jak przekaźnik; prąd powoduje pole, które zamyka niektóre kontakty. Jeśli rzucisz jeden szeregowo z silnikiem, powinieneś być w stanie znaleźć taki, który pozostanie otwarty przy 1,5 lub 2A, ale zamknięty przy 15A. Uziemić jeden ze styków przełącznika, pociągnąć drugi koniec do logiki + V i voila, izolowany cyfrowy sygnał wejściowy.
źródło
Nie tak naprawdę rozwiązanie elektroniczne, ale mechaniczne: Jeśli masz kontrolę nad mechaniką, możesz użyć rozwiązania przełączającego na silniku, np. Przenosząc z małego na duży bieg, który obróci się mniej niż jeden raz podczas całego procesu. Wgłębienie na tym sprzęcie może spowodować włączenie przełącznika. (Tak właśnie robi nasz otwieracz do drzwi garażowych.)
źródło