logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak uruchomić TB6612FNG - dwukanałowy sterownik silników 13.5V/1A - pinout, datasheet

p.kaczmarek2 11 Wrz 2025 14:40 504 0

TL;DR LABEL_AI_GENERATED

  • Pokazano moduł HW-166 z TB6612FNG, mały dwukanałowy mostek H do sterowania dwoma silnikami DC albo małym bipolarnym silnikiem krokowym.
  • Omówiono wyprowadzenia VCC, VM, GND, AO1/AO2, BO1/BO2, PWMA/PWMB, AIN1/AIN2, BIN1/BIN2 i STBY, z obowiązkowym podciągnięciem STBY do VCC.
  • Układ obsługuje silniki do 13.5 V i 1 A na kanał, a moduł można było kupić za około 20 zł lub 4 zł z Chin.
  • W testach z NodeMCU działało sterowanie dwoma silnikami DC oraz bipolarnym krokowcem przez AccelStepper; przy 5 V pobór wynosił niecałe pół ampera.
  • Układ nie ma kontroli prądu, więc przy większych mocach może wymagać radiatora.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
Słuchaj:
  • Moduł sterownika silników TB6612FNG HW-166 na czerwonej płytce PCB
    Moduł HW-166 z TB6612FNG to malutki mostek H przeznaczony do sterowania dwoma silnikami prądu stałego o napięciu pracy do 13.5 V i prądzie do 1 A na kanał. HW-166 posiada wyprowadzenia o rastrze 2.54 mm i pasuje do płytki prototypowej. Jeden silnik sterowany jest dwoma pinami cyfrowymi (kierunek obrotów lub tryb swobodnego bądź gwałtownego hamowania) oraz jednym pinem PWM (pozwala na kontrolę mocy).

    W naszym kraju taki moduł można kupić za około 20 zł, natomiast z Chin da się go sprowadzić nawet 4 zł za sztukę. W promocji jeszcze taniej.

    Rozważmy wyprowadzenia modułu.
    Moduł HW-166 z oznaczonymi pinami do sterowania dwoma silnikami
    - VCC - zasilanie logiki (od strony MCU)
    - VM - zasilanie silników
    - GND - masa (wspólnie połączone piny)
    - AO1 AO2 - wyjścia kanału A
    - BO1 BO2 - wyjścia kanału B
    - PWMA - sygnał PWM kanału A
    - PWMB - sygnał PWM kanału B
    - STBY - włączenie/wyłączenie całego sterownika
    - AIN1, AIN2 - sterowanie kierunkiem kanału A
    - BIN1, BIN2 - sterowanie kierunkiem kanału B
    UWAGA: moduł obsługuje dwa silniki prądu stałego - AIN1, AIN2, PWMA to pierwszy kanał, a PWMB, itd, to drugi kanał.
    UWAGA: pin STBY musi zostać podciągnięty do zasilania VCC (nie VM!) aby uruchomić silniki.

    Sygnały logiczne tego modułu są wewnętrznie podciągnięte do masy.

    Tabela prawdy obrazuje sterowanie silnikiem. Dla drugiego silnika analogicznie.
    Tabela prawdy i schematy działania mostka H w układzie TB6612FNG

    Więcej informacji można znaleźć w samej nocie katalogowej TB6612FNG:
    Strona katalogowa układu TB6612FNG z danymi technicznymi i rysunkiem obudowy SSOP24 Schemat blokowy sterownika TB6612FNG z opisem pinów i logiką H-mostków Tabela funkcji pinów dla sterownika TB6612FNG z numeracją i opisem każdego pinu Tabela parametrów maksymalnych i zakresu pracy układu TB6612FNG
    Przykładowa aplikacja - sterowanie dwoma silnikami z MCU. Schemat uwzględnia wymagane kondensatory odsprzęgające które powinny być możliwie blisko układu.
    Schemat aplikacyjny sterownika TB6612FNG z kondensatorami i MCU

    Rozważmy teraz dwa przykładowe zastosowania.
    Przykład 1: kontrola dwóch silników DC od prostego podwozia
    Raczej nie wymaga to większego komentarza - dwa piny cyfrowe do kontroli kierunku i PWM do kontroli szybkości. Zasadniczo to samo już prezentowałem w temacie o "samochodziku":
    Zdalnie sterowany czołg/autko (przez WiFi), podwozie z gąsienicami, moduł L298 z NodeMCU
    Model robota z gąsienicami obok modułu L298.
    Przykład 2: sterowanie bipolarnym silnikiem krokowym
    Pokazywana płytka nie jest kontrolerem silnika krokowego, ale może się uda?
    Bipolarny silnik krokowy to silnik, który posiada dwa osobne uzwojenia (cztery przewody). Odpowiednie nimi sterowanie pozwala na uzyskanie precyzyjnych "kroków", dając nam dokładną kontrolę nad tym, ile np. przesuwanie się karetki na pasie w drukarce 3D lub ploterze.
    Do prezentacji użyłem ESP8266 - NodeMCU:
    Moduł NodeMCU z ESP8266 z widocznymi pinami i złączem micro USB
    Dodatkowo potrzebny był silnik krokowy bipolarny. Takie można czasem znaleźć w napędach CD/DVD, zwłaszcza tych starszych. Dostajemy razem z tym całą mechanikę, w sam raz dla malutkiego plotera lub grawerki.
    Mechanizm prowadzenia lasera z napędu optycznego z taśmami połączeniowymi
    Z podłączeniem nie było problemu - musiałem sobie jedynie wyprowadzić 5V z USB, a dokładniej z wejścia LDO na pokładzie NodeMCU, bo pin VIN ma diodę chroniącą przed dostaniem się w ten sposób do zasilania.
    Zbliżenie na płytkę NodeMCU z widocznymi pinami i lutowanymi przewodami
    Zbliżenie na moduł NodeMCU ESP8266 podłączony do płytki stykowej
    Resztę podłączenia uprościłem sobie aż do przesady. W akcji są tylko cztery piny ESP - nawet PWM podłączyłem na stale do poziomu wysokiego (tutaj 3.3V). Analogicznie podłączyłem STBY. Potem zostało tylko odgadnąć pary cewek silnika krokowego, co można zrobić multimetrem, oraz metodą prób i błędów określić ich osobne podłączenie. Nie zagłębiałem się w to jeszcze tak szczegółowo, bo rozważam lepsze tego opracowanie i pokazanie w osobnym temacie.

    Po stronie programowej użyłem biblioteki AccelStepper od waspinator:
    Kod: C / C++
    Zaloguj się, aby zobaczyć kod

    Testowałem też "ręczne" sterowanie poprzez operacje na GPIO:
    Kod: C / C++
    Zaloguj się, aby zobaczyć kod

    Krótka demonstracja:




    Podsumowując, to była prezentacja malutkiego modułu sterownika dwóch silników DC. Całość udało mi się również uruchomić z małym bipolarnym silnikiem krokowym, choć ten układ nie ma żadnej kontroli prądu. Koszt modułu w moim przypadku był bardzo mały, udało się go zakupić w promocji, w zestawie 5 sztuk. Z grzaniem nie było problemu, choć u mnie układ pobierał tylko niecałe pół ampera przy napięciu 5 V. Być może przy większych mocach opłacałoby się dodać radiator.
    Rozważam, czy nie usiąść osobno do rozpracowywania napędów CD/DVD i zrealizować w oparciu o to jakiegoś projektu - może jakiś prosty ploter. Można by też zaprezentować osobno bibliotekę AccelStepper, jest ona znacznie bogatsza niż prosty sketch zrobiony w Arduino, ma nawet kontrolę przyśpieszenie pozwalającą na płynniejszy ruch karetki.
    Czy korzystaliście z modułów tego typu, a jeśli tak, to w jakich projektach?

    Fajne? Ranking DIY
    Pomogłem? Kup mi kawę.
    O autorze
    p.kaczmarek2
    Moderator Smart Home
    Offline 
    Inżynier programista z wieloletnim doświadczeniem embedded i full stack developer.
    Specjalizuje się w: embedded, Full-Stack Developer
    p.kaczmarek2 napisał 14794 postów o ocenie 12942, pomógł 659 razy. Jest z nami od 2014 roku.
Słuchaj:
REKLAMA