Spisu treści:
- Krok 1: Zasada
- Krok 2: Czujnik, zasilacz i kontroler
- Krok 3: Nadzorca IC
- Krok 4: Płytka drukowana (PCB)
- Krok 5: Kod
- Krok 6: Instalacja na zbiorniku
Wideo: Ultradźwiękowy kontroler poziomu cieczy: 6 kroków (ze zdjęciami)
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:27
Wprowadzenie Jak zapewne wiecie, w Iranie jest sucha pogoda, aw moim kraju brakuje wody. Czasami, szczególnie latem, widać, że rząd odcina wodę. Tak więc większość mieszkań ma zbiornik na wodę. W naszym mieszkaniu znajduje się zbiornik o pojemności 1500 litrów, który dostarcza wodę. Ponadto w naszym mieszkaniu znajduje się 12 jednostek mieszkalnych. W rezultacie można się spodziewać, że zbiornik już wkrótce się opróżni. Do zbiornika dołączona jest pompa wodna, która dostarcza wodę do budynku. Ilekroć zbiornik jest pusty, pompa pracuje bez wody. Sytuacja ta powoduje wzrost temperatury silnika, aw tym czasie może spowodować awarię pompy. Jakiś czas temu ta awaria pompy zdarzyła się nam po raz drugi i po otwarciu silnika zobaczyliśmy, że przewody cewki są spalone. Po wymianie pompy, aby ponownie zapobiec temu problemowi, postanowiłem zrobić regulator poziomu wody. Planowałem wykonać obwód odcinający zasilanie pompy, gdy woda w zbiorniku spadnie poniżej dolnego limitu. Pompa nie będzie działać, dopóki poziom wody nie osiągnie wysokiego poziomu. Po przekroczeniu górnego limitu obwód ponownie podłączy zasilanie. Na początku szukałem w Internecie, czy mogę znaleźć odpowiedni obwód. Nie znalazłem jednak niczego odpowiedniego. Było kilka wskaźników wody opartych na Arduino, ale nie rozwiązało to mojego problemu. W rezultacie postanowiłem zaprojektować swój regulator poziomu wody. Kompleksowy pakiet z prostym graficznym interfejsem użytkownika do ustawiania parametrów. Starałem się również wziąć pod uwagę standardy EMC, aby mieć pewność, że urządzenie działa poprawnie w różnych sytuacjach.
Krok 1: Zasada
Prawdopodobnie znasz tę zasadę wcześniej. Gdy ultradźwiękowy sygnał impulsowy jest emitowany w kierunku obiektu, zostaje odbity od obiektu, a echo powraca do nadajnika. Jeśli obliczysz czas przebyty przez impuls ultradźwiękowy, możesz znaleźć odległość obiektu. W naszym przypadku przedmiotem jest woda.
Zauważ, że kiedy znajdziesz odległość do wody, obliczasz objętość pustej przestrzeni w zbiorniku. Aby uzyskać objętość wody, musisz odjąć obliczoną objętość od całkowitej objętości zbiornika.
Krok 2: Czujnik, zasilacz i kontroler
Sprzęt komputerowy
Do czujnika użyłem wodoodpornego czujnika ultradźwiękowego JSN-SR04T. Procedura pracy jest podobna do HC-SR04 (echo i pin wyzwalający).
Okular:
- Odległość: od 25 cm do 450 cm
- Napięcie robocze: DC 3.0-5.5 V
- Prąd roboczy: <8mA
- Dokładność: ± 1 cm
- Częstotliwość: 40 kHz
- Temperatura pracy:-20 ~ 70 ℃
Zauważ, że ten kontroler ma pewne ograniczenia. na przykład: 1- JSN-SR04T nie może mierzyć odległości poniżej 25 CM, więc musisz zainstalować czujnik co najmniej 25 CM nad powierzchnią wody. Ponadto maksymalny pomiar odległości to 4,5M. Więc ten czujnik nie nadaje się do dużych zbiorników. 2-dokładność wynosi 1 CM dla tego czujnika. W rezultacie, w oparciu o średnicę zbiornika, rozdzielczość objętości, którą pokaże urządzenie, może się różnić. 3-prędkość dźwięku może się różnić w zależności od temperatury. W rezultacie na dokładność mogą mieć wpływ różne regiony. Jednak te ograniczenia nie były dla mnie kluczowe, a celność była odpowiednia.
Kontroler
Użyłem STM32F030K6T6 ARM Cortex M0 od STMicroelectronics. Specyfikację tego mikrokontrolera znajdziesz tutaj.
Zasilanie
Pierwsza część to przekształcenie 220V/50Hz (Iran Electricity) na 12VDC. W tym celu wykorzystałem moduł zasilacza obniżającego napięcie HLK-PM12 buck. Ten konwerter AC/DC może konwertować 90 ~ 264 VAC na 12VDC z prądem wyjściowym 0,25A.
Jak zapewne wiesz, obciążenie indukcyjne przekaźnika może powodować kilka problemów w obwodzie i zasilaniu, a trudności w zasilaniu mogą prowadzić do niestałości, zwłaszcza w mikrokontrolerze. Rozwiązaniem jest odizolowanie zasilaczy. Ponadto musisz użyć obwodu tłumiącego na stykach przekaźnika. Istnieje kilka metod izolowania zasilaczy. Na przykład możesz użyć transformatora z dwoma wyjściami. Co więcej, istnieją izolowane konwertery DC/DC o niewielkich rozmiarach, które mogą odizolować wyjście od wejścia. Do tego celu użyłem MINMAX MA03-12S09. Jest to przetwornica DC/DC o mocy 3W z izolacją.
Krok 3: Nadzorca IC
Zgodnie z notatką aplikacji TI: Kontroler napięcia (znany również jako układ scalony resetowania [IC]) to rodzaj monitora napięcia, który monitoruje zasilanie systemu. Kontrolery napięcia są często używane z procesorami, regulatorami napięcia i sekwencerami – ogólnie tam, gdzie wymagane jest wykrywanie napięcia lub prądu. Nadzorcy monitorują szyny napięciowe, aby zapewnić włączenie zasilania, wykrywać usterki i komunikować się z wbudowanymi procesorami w celu zapewnienia prawidłowego funkcjonowania systemu. możesz znaleźć tę notatkę aplikacji tutaj. Chociaż mikrokontrolery STM32 mają wbudowane nadzorcy, takie jak monitor zasilania, użyłem zewnętrznego układu nadzorczego, aby upewnić się, że wszystko będzie działać poprawnie. W moim przypadku użyłem TL7705 od TI. Możesz zobaczyć opis tego układu scalonego na stronie Texas Instruments poniżej: Rodzina układów nadzorczych napięcia zasilania obwodów scalonych TL77xxA została zaprojektowana specjalnie do użytku jako kontrolery resetowania w systemach mikrokomputerowych i mikroprocesorowych. Kontroler napięcia zasilania monitoruje zasilanie pod kątem zbyt niskiego napięcia na wejściu SENSE. Podczas włączania, wyjście RESET staje się aktywne (niskie), gdy VCC osiągnie wartość zbliżoną do 3,6 V. W tym momencie (zakładając, że SENSE jest powyżej VIT+) funkcja timera opóźnienia aktywuje opóźnienie czasowe, po którym wyjścia RESET i RESET(NIE) przejść nieaktywny (odpowiednio wysoki i niski). Gdy podczas normalnej pracy wystąpi stan zbyt niskiego napięcia, RESET i RESET (NIE) stają się aktywne.
Krok 4: Płytka drukowana (PCB)
Płytkę zaprojektowałem w dwóch częściach. Pierwsza z nich to płytka drukowana LCD, która jest połączona z płytą główną za pomocą kabla taśmowego/płaskiego. Druga część to płytka drukowana kontrolera. Na tej płytce umieściłem zasilacz, mikrokontroler, czujnik ultradźwiękowy i powiązane elementy. A także część mocy, która jest przekaźnikiem, warystorem i obwodem tłumiącym. Jak zapewne wiecie przekaźniki mechaniczne takie jak przekaźnik, który zastosowałem w swoim obwodzie mogą się zepsuć jeśli zawsze działają. Aby rozwiązać ten problem, użyłem normalnie zwartego styku (NC) przekaźnika. Tak więc w normalnej sytuacji przekaźnik nie jest aktywny i normalnie zwarty styk może przewodzić zasilanie do pompy. Za każdym razem, gdy woda spadnie poniżej dolnego limitu, przekaźnik włączy się, co spowoduje odcięcie zasilania. To powiedziawszy, jest to powód, dla którego użyłem obwodu tłumiącego na stykach NC i COM. Ze względu na to, że pompa miała dużą moc, użyłem do niej drugiego przekaźnika 220 i napędzam go przekaźnikiem na PCB.
Możesz pobrać pliki PCB, takie jak pliki PCB Altium i pliki Gerber z mojego GitHub tutaj.
Krok 5: Kod
Użyłem STM32Cube IDE, które jest rozwiązaniem typu „wszystko w jednym” do tworzenia kodu od STMicroelectronics. Opiera się na środowisku Eclipse IDE z kompilatorem GCC ARM. Ponadto ma w sobie STM32CubeMX. Więcej informacji znajdziesz tutaj. Najpierw napisałem kod, który zawierał specyfikację naszego zbiornika (wysokość i średnica). Postanowiłem jednak zmienić go na GUI, aby ustawić parametry w oparciu o różne specyfikacje.
Krok 6: Instalacja na zbiorniku
W końcu zrobiłem do niego proste pudełko chroniące płytkę przed wodą. Zrobiłem też otwór w górnej części zbiornika, aby umieścić na nim czujnik.
Zalecana:
Ultradźwiękowy system dostępu: 6 kroków (ze zdjęciami)
Ultradźwiękowy system dostępu: Tym razem przedstawiam wam ultradźwiękowy system dostępu, który moim zdaniem może być interesujący. Oparty jest na falach ultradźwiękowych, więc jest to bezdotykowy system dostępu, który nie wymaga żadnego innego urządzenia elektronicznego, ale dowolnego przedmiotu, nawet rąk spróbować
Kontroler poziomu wody oparty na IOT przy użyciu NodeMCU ESP8266: 6 kroków
Kontroler poziomu wody oparty na IOT za pomocą NodeMCU ESP8266: Jest to instrukcja tworzenia kontrolera poziomu wody opartego na IOT. Cechy tego projektu to: - Aktualizacje poziomu wody w czasie rzeczywistym w aplikacji na Androida. Automatycznie włącz pompę wody, gdy poziom wody spadnie poniżej minimalnego poziomu. Au
Ultradźwiękowy miernik poziomu w zbiorniku: 5 kroków (ze zdjęciami)
Ultradźwiękowy miernik poziomu w zbiorniku: Potrzebujesz monitorować poziom płynu w studni o dużej średnicy, zbiorniku lub otwartym pojemniku? Ten przewodnik pokaże Ci, jak zrobić sonarowy bezdotykowy miernik poziomu płynu przy użyciu taniej elektroniki! Powyższy szkic pokazuje przegląd tego, do czego dążyliśmy z t
Czujnik poziomu cieczy (przy użyciu ultradźwięków): 5 kroków
Czujnik poziomu cieczy (przy użyciu ultradźwięków): Czujnik poziomu cieczy wykrywa poziom cieczy z poziomu gruntu. Włącza silnik (wymaga wzmacniacza sterownika silnika) poniżej zadanej wartości i wyłącza go powyżej zadanej wartości po napełnieniu płynem.Cechy tego systemu: Współpracuje z każdym li
Budowa pojemnościowego czujnika cieczy: 8 kroków (ze zdjęciami)
Budowanie pojemnościowego czujnika cieczy: Pojemnościowy sponsor płynny polega na tym, że pojemność lub ładunek między 2 metalowymi płytkami zmieni się (w tym przypadku wzrośnie) w zależności od tego, jaki materiał znajduje się między nimi. To pozwala nam c