Skocz do zawartości

RaV

Users
  • Zawartość

    250
  • Rejestracja

  • Ostatnio

  • Wygrane dni

    5

RaV zajął 1. miejsce w rankingu.
Data osiągnięcia: 13 czerwca 2020.

Treści użytkownika RaV zdobyły tego dnia najwięcej polubień!

Informacje

  • Płeć
    Mężczyzna
  • Lokalizacja
    Polska
  • Programuję w
    C
  • Zawód
    FPGA design engineer

Ostatnio na profilu byli

843 wyświetleń profilu

Osiągnięcia użytkownika RaV

Stały bywalec

Stały bywalec (9/19)

  • Za 25 postów
  • Za 5 postów
  • Za 100 postów
  • Młodszy konstruktor
  • Młodszy roboty

Odznaki

41

Reputacja

  1. Jakbyś chciał lutować własną płytkę to Intel Max10 mają przyjazne obudowy. Największa FPGA z tej serii w FQFP144 ma 50k elementów logicznych. Więc trochę tam już się zmieści.
  2. Nie wiem, czy mogę to tu zostawić, ale to pytanie było natchnieniem dla mojego ostatniego odcinka:
  3. Samego programu MicroCap nie znam. Ale myślę, że mogę trochę doradzić odnośnie samej logiki rozwiązania. Wejście x nie wchodzi na rejestr przesuwny. To jest osobne wejście sterujące. Na dalszych schematach wejście rejestru oznaczę jako d_in. Mamy zmieniać kierunek, więc musimy mieć wybór czy na wejście danego rejestru wchodzi wartość z rejestru lewego, czy prawego. Logiką która to robi jest tak zwany multiplekser. Na podstawie wejścia sterującego x wybiera czy na wyjściu będzie wejście a, czy b (nam wystarczy z dwoma wejściami "danych" i jednym sterującym). Mimo, że na pierwszy rzut oka nie wygląda, multiplekser jest tak naprawdę zwykłą funkcją logiczną i można go złożyć z bramek. Jako podpowiedź załączam jego tablicę prawdy: A jak już mamy multiplekser, to możemy stworzyć rejestr przesuwający w obie strony. Dla mnie bardziej intuicyjne było narysowanie przerzutników odwróconych o 90 stopni w kierunku przeciwnym do ruchu wskazówek zegara: Pozostaje zamienienie multiplekserów na bramki logiczne realizujące tą samą funkcję, oraz ustalenie gdzie jest prawo, a gdzie lewo 🙂
  4. Jakby PCI wyprowadzili na zewnątrz...
  5. W sumie to już jest Intel 🙂 Quartus śmiga na Linuxie i Windowsie.
  6. Układy FPGA wydają się trochę bardziej tajemnicze niż mikrokontrolery. Można jednak dość szybko rozpocząć z nimi przygodę za pomocą narzędzi graficznych. W tutorialu przyjrzymy się układowi z rodziny Max10 znanej firmy Intel. Wykorzystamy go do sterowania silnikiem krokowym. Gotowy prototyp przedstawia Rys. 1. Rys. 1. Zmontowany prototyp. Składamy sprzęt W projekcie wykorzystamy płytkę Rysino z stosunkowo niewielkim układem z rodziny 10M04. Podłączymy do niej silnik krokowy 28BYJ-48 poprzez sterownik zbudowany z wykorzystaniem popularnego układu ULN2003. Nasz silnik składa się z dwóch uzwojeń. Każde z nich ma w połowie wyprowadzony odczep. Kolory z rysunku odpowiadają kolorom przewodów zamontowanych w użytym modelu. Obrót silnika następuje, gdy zmieniamy ich polaryzację poprzez zasilenie złącza +, albo złącza -. W tym projekcie skorzystamy z najprostszego typu sterowania zwanego pełno krokowym. Rys. 2. Stany na cewkach silnika. Rys. 3. Przebiegi czasowe na cewkach silnika. Na Rys. 2. widzimy, że aby obracać silnik musimy po kolei ustawiać cztery różne kombinację napięcia na cewkach. Natomiast Rys. 3. pokazuje jak będą wyglądały przebiegi przedstawione w tabelce. Jeżeli będziemy przechodzić „z góry na dół” nasz silnik będzie wykonywał obroty zgodnie z kierunkiem ruchu zegara. Aby zmienić kierunek obrotu wystarczy przełączać stany w przeciwnym kierunku. Pojawia się tu słowo klucz: stan, które pozwoli nam wybrać sposób implementacji sterownika. Zbudujemy maszynę stanów. Ale najpierw podłączmy silnik do układu FPGA. Schemat połączenia pokazuje Rys. 4. To jego wykonania potrzebujemy przewodów połączeniowych. Rys. 4. Sposób połączenia płytki Rysino z sterownikiem silnika. Wsad dla układu FPGA Aby zbudować wsad dla układu FGPA potrzebujemy zintegrowane środowisko dostarczone przez producenta. Najpierw musimy jednak się zarejestrować. Następnie ze strony producenta pobieramy środowisko Quartus Prime Lite Edition. Ja korzystałem z wersji 18.1. Pobieramy: Quartus Prime (includes Nios II EDS) (1.7GB) MAX 10 FPGA device support. (330MB) Jak widzimy niestety są to dość duże pliki... Po instalacji możemy przejść do tworzenia projektu. Przygotujemy go w całości w narzędziach graficznych. Składa się on z dwóch głównych części. Najpierw przygotujemy maszynę stanów, którą widzimy na Rys. 5. Rys. 5. Maszyna stanów. Następnie umieścimy gotową maszynę w projekcie, dołożymy licznik zmniejszający szybkość przełączania stanów oraz wejścia i wyjścia. Gotowy schemat pokazuje Rys. 6. Rys. 6. Diagram gotowego projektu. Jednak opisywanie „wyklikiwania” poszczególnych elementów było by dość zagmatwane, dlatego przygotowałem film, w którym zobaczymy wszystko krok po kroku. A na samym końcu znajdziemy demonstrację działania gotowego projektu. Na końcu pozostaje już tylko podłączenie płytki do komputera za pomocą przewodu miniUSB. Do złącza JTAG podłączamy programator USB Blaster i wgrywamy nasz projekt. Cały projekt jest także dostępny w repozytorium.
  7. RaV

    Silnik krokowy stm32 + ULN2803

    Dzięki za rady Sprawdziłem omomierzem połączenia. Masa jest zwarta z masą, a diody z + zasilania. Z diodami LED działa bez problemu. Sprawdziłem też innym egzemplarzem ULN2803, też nie działa. Czy możliwe jest że wina leży w wyprowadzeniach mikrokontrolera? Rozważam pocięcie płytki i dolutowanie do innych. --------------------------------- Rozwiązane, jednak popsute ULN2803, miałem w swoich zbiorach dwa zniszczone egzemplarze, z 3 działa... Bardzo dziękuję za pomoc
  8. Buduje sterownik 3 silników krokowych oparty o stm32 oraz układy ULN2803 (po jednym na każdy silnik). Dwa działają bez problemu, natomiast z jednym występuje dziwny problem: przy odłączonym silniki wyjścia zachowują się normalnie: dla stanu niskiego jest 0V dla wysokiego około 3V, natomiast gdy podłącze silnik napięcie na pinie wzrasta do 0,5V co już powodóje zmianę stanu wyjść ULN2803. Czy macie pomysł czym może być spowodowane takie zachowanie?
  9. Szukam kursu/przykładowego programu obsługi USB HID na mikrokontrolerze stm32f103c8.
  10. Szukam sklepu internetowego, który oferuje rezystancyjne panele dotykowy o przekątnej co najmniej 10 cali.
  11. RaV

    Tani, ale jary rój robotów

    Ale jak sterować takim napędem? Wirująca pralka porusza się dość losowo.
  12. RaV

    Tani, ale jary rój robotów

    W jaki sposób są napędzane?
  13. Szukam dokumentacji transoptora szczelinowego z drukarki HP przedstawionego na zdjęciu: Układ ma sześć wyjść.
  14. RaV

    L293D + MOSFET

    Własnie nie mogę ich znaleźć, a L293D jest tani i łatwo dostępny. Jaki driver byś polecał?
  15. RaV

    L293D + MOSFET

    Czy L293D nadaje się jako driver MOSFETów w mostku H?
×
×
  • 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.