Skocz do zawartości

Oszczędne podłączenie mostka H


Tolo

Pomocna odpowiedź

Witam !

Ostatnio wpadłem na szatański plan podłączenia mostka H przy wykorzystaniu tylko 4 pinów uC wygląda to tak:

Schemat jeszcze nie dokończny ale mi chodzi o sam pomysł sterowania mostkiem tak jak widać mostek jest podłączony przez bramki not więc otrzymujemy standardowe kombinacje sterowania mostkiem Lewo-Prawo jednak bezmożliwości zatrzymania wału stan 00. Ale przecież silnik można zatrzymać dając 0 wypełnienie PWM więc tak naprawdę mamy pełne sterowanie mostekiem przy użyciu 4 pinów. Teraz pytanie czemy nikt tak nie robi 😋 jakieś wady o których nie wiem ? A może macie pomysł jak zesjść do 3 pinów 😃

Link do komentarza
Share on other sites

Pytanie brzmi raczej: czemu nie wpadłeś na to wcześniej? Bo sposobów sterowania takim układem jest wiele i ten "szatański" jest dobry jak każdy. Bramki ze scalaka 7404 - jeżeli zależy Ci na miejscu - możesz zastąpić dwoma pojedynczymi 1G04 w obudowach SOT23 albo są też - o ile pamiętam pakowane dwie w jednym. Mogą to być też zwykłe tranzystory a jeśli użyjesz takich z wewnętrznymi dzielnikami w bazie (bardzo wygodne - polecam) to i oporniki wejściowe będą zbędne. Oczywiście montowanie dokładnie tego co napisałeś (74AC04) jest zupełnie bez sensu i wystarczy poczciwy 74HC lub 74HCT ale idea jest słuszna.

Jeżeli miałbym dogrzebywać się jakichś wad, to jedynym minusem jest takie trochę "miękkie" sterowanie silnikiem. Zauważ, że szatański pomysł jednocześnie załącza górny i przeciwległy dolny driver tylko w momentach gdy PWM=1. W pozostałym czasie wszystkie 4 drivery tego mostka są wyłączone i silnik "dobiega" z własnej bezwładności. Nie masz kontroli nad jego hamowaniem a jedynie nad "popychaniem". Jeżeli potrzebujesz dużej dynamiki napędu to przyśpieszenia będą OK ale wytracanie prędkości będzie zależne tylko od momentów bezwładności silnika i mechaniki do niego podłączonej. To nie zawsze pasuje.

Trzy druty na dwa silniki? To może być trudne.. Dwa niezależne sygnały kierunków plus dwa PWMy to minimum cztery linie. Można by przenieść sygnały kierunku np. do rejestru podłączonego przez SPI i w ten sposób zaoszczędzić dwa piny portu ale - szczególnie przy współużywaniu wyjść tego rejestru przez inne funkcje - mogłoby to być uciążliwe.

Jest jeszcze metoda różnicowa (jeden dostaje PWM a drugi to samo ale zanegowane inwerterem np. 7404) i wtedy przy 50% wypełnienia oba pracują tak samo a w przypadku nierównowagi jeden przyśpiesza a drugi zwalnia ale dość mocno uzależnia to jeden silnik od drugiego i nie mam pomysłu gdzie można by tego użyć. No i zmiany kierunku musiałby odbywać się przy 100% PWM tego drugiego. Nie... w sumie to głupie.

Ale może tak: dwa PWM sterują niezależnie prędkością obrotową dwóch silników a pozostała, trzecia linia podłączona jest do dwóch przerzutników 7474 połączonych jako zwykłe przerzutniki typu T. Dla przypomnienia: każde narastające zbocze zegara zmienia stan wyjścia na przeciwny. Jeden z przerzutników (nazwijmy go B) ma zegar przez inwerter więc odwraca swój stan na opadającym zboczu sygnału z procesora. Ten drugi ma zegar wprost z procesora i odwraca stan przy narastającym (nazywa się A). I teraz tak: po włączeniu zasilania oba przerzutniki są zerowane i ten stan jest znany. Chcesz zmienić stan A: musisz zrobić zbocze narastające na linii zegara, chcesz zmienić stan B: robisz zbocze opadające. Co zrobić jeśli linia już jest np. w stanie wysokim a musisz zrobić zbocze narastające? Dajesz w dół, w górę i znowu w dół. Było jedno zbocze narastające więc A się odwrócił (OK) i dwa opadające więc B odwrócił się dwa razy (też OK). Przez chwilę B był w stanie "odwrotnym" ale procesor jest szybki. Przy czasie zakłócenia poniżej 1us nikomu to nie przeszkadza. Warto sobie to narysować.

Rozwiązanie kosztuje dodatkowo jeden scalak 74HC74 czyli pewnie z 70 groszy 🙂 W procesorze trzeba oczywiście pamiętać aktualny stan przerzutników bo inaczej nie będzie wiadomo jakie zbocza generować ale to chyba dość prosta funkcja, prawda?

  • Pomogłeś! 1
Link do komentarza
Share on other sites

Kolega Marek jak zwykle pomocny 😉 No cóż faktycznie wadą jest to, że nie możemy "twardo" hamować ale z drugiej strony w przypadku przerobionych serw czy też HL149 problem bezwładności praktycznie nie istnie i tak zatrzymują się one w zasadzie w miejscu.

Co do 3 pinów to pokąbinuje jeszcze z bramkami może się uda coś sensownego stworzyć 😃

W sumie jedyne co mi przychodzi do głowy to dać 2 linie sterujące i jedną PWM wtedy nie moglibyśmy sterować prędkością niezależnie... Ale myślę, że to już za duże ograniczenia i taki układ do robota byłby po prostu niepraktyczny.

Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.