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

Jak zbudować układ z silnikiem krokowym z regulacją prędkości przez potencjometr i enkoder?

adarek92 23 Sie 2024 19:39 438 16
REKLAMA
  • #1 21201416
    adarek92
    Poziom 2  
    Posty: 4
    Witam. Chciałbym zbudować prosty układ z silnikiem krokowym, coś na zasadzie bezstopniowej skrzyni biegów. Założeniem jest że silnik będzie napędzał nieduży mechanizm a prędkość obrotowa silnika będzie regulowana np. potencjometrem, ale uzależniona proporcjonalnie od obrotów z enkodera. Silniki i sterowniki są dostępne, coś bym dobrał. Czy są dostępne jakieś generatory impulsów, które generują sygnał na podstawie odczytu prędkości obrotowej enkodera i nastawionej wartości z potencjometru?
  • REKLAMA
  • #4 21201747
    adarek92
    Poziom 2  
    Posty: 4
    Układ ma działać jak bezstopniowa skrzynia biegów. Enkoder odczytywałby prędkość obrotową z zewnątrz, która jest zmienna, bez stałej wartości. Potencjometrem bądź w jakiś podobny sposób chciałbym ustawiać przełożenie między prędkością wejściową a wyjściową. Regulacja ta miałaby być płynna. Wolałbym zastosować gotowe rozwiązania, jeśli są takie dostępne.
  • REKLAMA
  • #5 21201753
    _jta_
    Specjalista elektronik
    Posty: 48931
    Pomógł: 3202
    Ocena: 4215
    Każdy impuls enkodera powinien dostarczyć określony ładunek do kondensatora. Przekroczenie pewnego napięcia na kondensatorze powinno generować impuls do silnika krokowego i zabrać określony ładunek. Jeden z tych ładunków powinien zależeć od ustawienia potencjometru. Ale jeśli impuls enkodera ma dawać większy ładunek, niż zabierany przy generowaniu impulsu dla silnika, to układ musi zadbać o odstęp czasu pomiędzy impulsami.

    Albo (ale to będzie wprowadzać opóźnienie) przetwornik częstotliwości na napięcie, potencjometr, przetwornik napięcia na częstotliwość. Są do tego scalaki.

    Prawdopodobnie łatwiej będzie zaprogramować to na jakimś Arduino, niż uruchomić układ przetwarzania bez procesora.
  • #6 21201882
    Konto nie istnieje
    Poziom 1  
  • #7 21202002
    mam_pytanie
    Poziom 30  
    Posty: 1074
    Pomógł: 164
    Ocena: 258
    Chyba im się moduły tym alibabom zamieniły - LM331 działa w kierunku U na f.
    Poza tym, potrzebny byłby jakiś regulowany wzmacniacz napięcia i/ lub tłumik, dla ustalenia stopnia przełożenia tej "skrzyni".
    No i, do kompletu, sterownik silnika. Coś, jak A4988 - również do dostania na dalekowschodnich rynkach.
  • REKLAMA
  • REKLAMA
  • #9 21202485
    Ryszard49
    Poziom 39  
    Posty: 6194
    Pomógł: 312
    Ocena: 1004
    adarek92, żeby nie zaśmiecać forum , podaj jakim budżetem dysponujesz, to pomogę dobrać gotowe elementy.
  • #10 21206943
    adarek92
    Poziom 2  
    Posty: 4
    Dzięki za odpowiedzi. zbuduję układ na Arduino.
  • #12 21207096
    _jta_
    Specjalista elektronik
    Posty: 48931
    Pomógł: 3202
    Ocena: 4215
    Na pewno wymaga to pomyślenia nad algorytmem - na wejściu dostajemy sygnały "kroków" enkodera, na wyjściu mamy dawać kroki dla silnika, gdyby pierwsze miały być dużo gęściejsze, to dla każdego dodajemy pewną wartość w1 (dużo mniejszą od 1) do zmiennej, a gdy suma z dodawania przekroczy 1, generujemy krok silnika i odejmujemy 1 od zmiennej; przy niezbyt gęstych krokach enkodera wymaga je sztucznie zagęścić, np. na każdy krok enkodera robimy N dodawań w odstępach czasu tak dobranych, by czas na N dodawań był równy odstępowi kroków - ale co robić, jak kolejny będzie szybciej? Wypadałoby jakoś płynnie zwiększać częstotliwość wirtualnych kroków enkodera...
  • #13 21207134
    Konto nie istnieje
    Poziom 1  
  • #14 21207297
    _jta_
    Specjalista elektronik
    Posty: 48931
    Pomógł: 3202
    Ocena: 4215
    Tu jest przede wszystkim zagadnienie matematyczne, które trzeba rozwiązać: jak odwzorowywać impulsy enkodera w kroki silnika, żeby utrzymywać określony iloraz ich liczb, a nie powodować skoków częstotliwości. Dopiero mając jego rozwiązanie można się zająć implementacją tego rozwiązania w postaci programu, albo układu elektronicznego. Może użycie timerów pozwoli uprościć tę implementację, może by ją skomplikowało - na razie nie ma podstaw, by to rozstrzygać.
  • #15 21207320
    Konto nie istnieje
    Poziom 1  
  • #16 21207442
    Konto nie istnieje
    Poziom 1  

Podsumowanie tematu

✨ Użytkownik planuje zbudować układ z silnikiem krokowym, który będzie działał jak bezstopniowa skrzynia biegów, z regulacją prędkości za pomocą potencjometru oraz enkodera. Enkoder ma odczytywać zmienną prędkość obrotową, a potencjometr ma umożliwiać ustawienie przełożenia. W dyskusji pojawiają się sugestie dotyczące użycia mikrokontrolerów, takich jak Arduino, do realizacji projektu, a także omówienie możliwości zastosowania gotowych modułów i scalaków. Wskazano na potrzebę przemyślenia algorytmu przetwarzania sygnałów z enkodera oraz generowania impulsów dla silnika. Uczestnicy dyskusji podkreślają, że kluczowe jest zrozumienie działania silników krokowych oraz odpowiednie mapowanie sygnałów.
Wygenerowane przez model językowy.
REKLAMA