Elektroda.pl
Elektroda.pl
X

Wyszukiwarki naszych partnerów

Wyszukaj w ofercie 200 tys. produktów TME
Kategoria: Kamery IP / Alarmy / Automatyka Bram
Montersi
Proszę, dodaj wyjątek elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Sterowanie silnikiem za pomocą ciągu znaków

gdy15s 19 Maj 2017 18:49 792 9
  • #1 19 Maj 2017 18:49
    gdy15s
    Poziom 3  

    Dzień Dobry,

    Piszę z takim zapytaniem.. czy jest możliwe zrealizowanie sterowanie silnikami (na stykach) poprzez odczyt odpowiedniego ciągu znaków?

    Myślałem, żeby zrealizować to poprzez Simulink w połączeniu z Raspberry Pi, jednak nie wiem czy to dobry pomysł..

    mianowicie.. powiedzmy, że mam ciąg 3 znaków..

    np. odczytany kod 000 to - pierwszy silnik off (za pierwszy silnik odpowiada pierwszy bit i drugi silnik off (za drugi silnik odpowiadają dwa następne bity).

    np. odczytany kod 110 - pierwszy silnik off, drugi on obroty w lewo..

    np. odczytany kod 100 - pierwszy silnik on, drugi off

    lub odczytany kod 101 - pierwszy silnik on, drugi on obroty w prawo..

    lub odczytany kod 500 - pierwszy silnik on obracający się z dużą prędkością, drugi silnik off

    lub odczytany kod 900 - pierwszy silnik obracający się jeszcze szybciej, drugi silnik off...

    itp.. itd.. czy jestem w stanie zrealizować taki projekcik? Ma ktoś z Was może jakiś pomysł? Jestem bardzo zielony w temacie i każda wskazówka była by dla mnie cenna..

    Pozdrawiam,
    Mechatronik

  • #2 19 Maj 2017 19:14
    kindlar
    Poziom 36  

    Można by na silnikch krokowych.

  • #3 19 Maj 2017 19:15
    szymon122
    Poziom 35  

    gdy15s napisał:
    czy jest możliwe zrealizowanie sterowanie silnikami (na stykach) poprzez odczyt odpowiedniego ciągu znaków?

    Oczywiście, możesz zrobić wszystko...
    gdy15s napisał:
    powiedzmy, że mam ciąg 3 znaków

    To teraz powiedz skąd go masz... Bez tego nie ma sensu dalej rozmawiać.

  • #4 19 Maj 2017 19:23
    tos18
    Poziom 35  

    To muszą być dokładnie te kody ?
    Jeśli mogą być inne to poczytaj o modbus RTU lub modbus ASCII - dużo falowników ma modbusa na pokładzie więc sterujesz jak chcesz.
    Jeśli muszą to być styki (styczniki) to proponuję gotowe moduły przekaźnikowe modbus firmy SFAR

  • #5 19 Maj 2017 20:28
    gdy15s
    Poziom 3  

    Kody mogą być dowolne, byle by to były cyfry.. chcę sterować w sposób automatyczny samochodzikiem, który ma dwa motory (jeden ruch przód/tył, drugi skręca kołami lewo/prawo).. nie ma jednak to być klasyczne śledzenie linii ale samochodzik ma się zachowywać tak jak chcę poprzez odczytywanie zapisanych kodów i ich odpowiednią intepretację..

    nie stanowi dla mnie problemu generowanie kodów i ich rozmieszczenie ale ich interpretacja i zamiana na fizyczny ruch motorów, tak jak to wyjaśniłem w swoim zapytaniu powyżej... Polecono mi, żebym do tego wykorzystał połączenie Raspberry PI + Simulink.. Jednak nie wiem czy to dobry pomysł, stąd tu jestem :) Przyznam szczerze, że jestem zielony trochę :)

    Dziękuję jednak bardzo serdecznie za Wasze naprawdę szybkie odpowiedzi i zainteresowanie tematem.

  • #6 19 Maj 2017 20:37
    szymon122
    Poziom 35  

    Ale z czego te kody chcesz pozyskać? Jakieś urządzenie ma je przesłać do RPi (w jaki sposób?) czy będzie je sobie odczytywać z listy?

  • #7 19 Maj 2017 21:13
    tos18
    Poziom 35  

    Z tego co wiem to raspberry ma biblioteki do generowania sygnałów PWM. Sygnałami tymi wysterujesz mostki H (można kupić gotowe) a z tych mostków zasilisz silniki. Reszta to program. Są też fajne scalone mostki H sterowane pezpośrednio przez I2C DRV8830.
    Robiłem coś podobnego (4 kanały PWM) sterowane przez uart - wystarczał zwykły ATTINY2313A

  • #8 24 Maj 2017 22:20
    gdy15s
    Poziom 3  

    Dziękuję wszystkim za szybką i rzeczową odpowiedź.

    Póki co udało mi się podpiąć pod Matlaba i napisać program, który operując na kodach o których pisałem zmienia jasność podłączonych diód, zgodnie z moim życzeniem.
    Jasność jest zmieniana właśnie poprzez wykorzystanie gotowych bibliotek do PWM`a i poprzez zmianę wypełnienia sygnału. Natomiast to nie diody mają mi pomóc w moim projekcie ale sterowany zdalnie samochodzik RC.

    Pomyślałem, że może prościej będzie dostać się do kontrolera a nie od razu do silników i zastąpić potencjometry odpowiedzialne za ruch przód/tył i lewo/prawo zwykłym sygnałem z RPI sterowanym właśnie PWMem. Jednak niestety są tam zwykłe styki i ruchów samochodu nie można zmieniać w sposób płynny. Są tam chyba 3 poziomy styków, które odpowiadają za np. ruch do przodu wolny, średni i szybki. Załączam zdjęcie tych styków tutaj do postu.

    I teraz się zastanawiam.. czy da się to dalej jakoś wykorzystać, żeby sterować samochodzikiem z poziomu RPi ale w sposób płynny a nie przez styki? Macie może jakieś pomysły? Jeżeli tak to jakich urządzeń użyć?

    Jaki będzie efekt jak po prostu podepnę się pomiędzy styki i wykorzystam GPIO z RPi i będe sterował wypełnieniem? Czy to ma szansę zadziałać?


    Proszę o rady :) Dziękuję! :)

    Dodano po 3 [minuty]:

    Sterowanie silnikiem za pomocą ciągu znaków

  • #10 27 Maj 2017 22:08
    gdy15s
    Poziom 3  

    Dziękuję za odpowiedź.

    Zrobiłem to jednak trochę inaczej. Użyłem dwa kanałowego mostku H obsługującego PWM (L932D) i podpiąłem bezpośrednio pod silniki w samochodziku i pod Rpi. I co najlepsze.. to działa :D

    Więc to chyba zamyka sprawę.. :D

    Chyba, że coś jeszcze chcecie mi doradzić.. to śmiało :) Bardzo cenię Wasze wszelkie pomocne uwagi :)

    Dziękuję serdecznie!

Szybka odpowiedź lub zadaj pytanie
Dziękuję Ci. Ta wiadomość oczekuje na moderatora.
 Szukaj w ofercie
Zamknij 
Wyszukaj w ofercie 200 tys. produktów TME