Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

dowolny - uC do sterowania silnikiem

naprawiam_audio 31 Lip 2014 01:59 1344 10
  • #1 31 Lip 2014 01:59
    naprawiam_audio
    Poziom 10  

    czesc

    Potrzebuję prostego programu
    program ma obsługiwać 2 wejścia i 1 wyjście mianowicie utrzymywac wolne obroty w silniku spalinowym. czyli odczytywać impulsy z czujnika hala i robić mniej wiecej coś takiego:

    if obroty<1100 then otwórz klapkę
    if obroty >1100 then zamknij klapkę

    Oczywiście kwestia samej "klapki" jest jeszcze do ustalenia, jak uporam się z rozwiązaniem mechanicznym, wtedy będę wiedzial jak to elektronicznie sterować.

    Drugie wejście będzie czujnikiem "dodania gazu" - czyli jak sam ręcznie dodaje gazu, to program ma iśc na piwko, poczekać aż odłożę przepustnice na swoje miejsce i wtedy martwić się robotą.

    Na poczatek prosił bym o podpowiedź - jak od strony elektroniczno-programowej jest najłatwiej sterować silnikiem? Jakim? To jest czy mogę użyć silniczka DC i przekładni ślimakowej, czy lepiej silniczek krokowy, albo jakieś serwo modelarskie?

    Przepraszam za tak prostackie pytania, ale jestem zdecydowanie analogowy.

    optymalnym dla mnie bylo by wykorzystanie silnika DC i odwracanie polaryzacji - mam cały moduł pasujący do przepustnicy - łącznie z wyłącznikami krańcowymi i czujnikiem "odłożenia przepustnicy".

    0 10
  • #2 31 Lip 2014 02:28
    xury
    Poziom 39  

    Skoro masz silnik DC i chcesz odwracać polaryzację to zastosuj mostek H.

    0
  • #3 31 Lip 2014 10:55
    naprawiam_audio
    Poziom 10  

    Nie mam problemu z czescią analogową. Chodzi raczej o kwestie jaki uc, programu etc.

    0
  • #4 31 Lip 2014 11:33
    atom1477
    Poziom 43  

    Do samego sterowania nadaje się tutaj praktycznie dowolny (współczesny) mikrokontroler.
    Program też nie musi być nie wiadomo jaki. Można to napisać na wiele sposobów.
    Musiał byś zadać konkretne pytanie.

    0
  • #5 31 Lip 2014 12:25
    naprawiam_audio
    Poziom 10  

    Tak więc:

    Oczywiście domyślam się że atmega8 się nada. Dlaczego akurat ten? ponieważ lezy kilka w szufladzie, mam tez programator, a jeżeli chodzi o UC jestem totalnie noga.
    Potrzebuję programu - niestety tutaj się nie popiszę - nie mam pojęcia czy użyć wewnetrznego oscylatora, czy kwarcu, co zrobić z fusebitami, i takie tam.
    Oczywiście z samym układem od strony elektronicznej sobie poradze ( oraz z dopasowaniem poziomów). Potrzebuję programu - dla kogos obcykanego w temacie to kilka minut, a ja musiał bym od poczatku uczyć się języka.

    Dane:

    Impulsy z czujnika halla oczywiście są stanem wysokim, dwa impulsy to jeden obrót wału korbowego. Obojętne dla mnie czy bedziemy dzielić impulsy/2 aby otrzymać wynik obrotów, czy procesor będzie utrzymywał prędkość 2200 impulsów/minutę.

    Maksymalne obroty silnika to 10 000 więc 20 000 impulsów - myśle ze ma to znaczenie dla procesora?

    Sterowanie silnika oczywiście stanem wysokim, wydaje mi się ze optymalnie będzie na 2 pinach procesora wystosować sygnały " w górę" i "w dół"

    Przycisk nic nie robienia procesora - tutaj uwaga. w momencie gdy przepustnica leży opara o przycisk ( procesor ma wykonywać pracę) jest zwarty do masy. Jeżeli jest rozwarty procesor ma w zasadzie nic nie robić.

    0
  • #6 31 Lip 2014 12:26
    nsvinc
    Poziom 35  

    Nie robiłbym tego na (typowo szybkoobrotowym) silniku DC; lecz albo serwo, albo krokowiec. A jeszcze lepiej własny układ magnetyczny...

    0
  • #7 31 Lip 2014 12:33
    atom1477
    Poziom 43  

    No raczej chodziło o silnik DC z przekładnią. Nie mniej jednak taniej dać zwykły serwomechanizm modelarski. Tylko ciekawe jak z jego trwałością. Jak nie to silnik krokowy, będzie przynajmniej bardzo trwały.

    0
  • #8 31 Lip 2014 12:33
    nsvinc
    Poziom 35  

    Prędkośc obrotową wału powinno się mierzyć, licząc czas między kolejnymi impulsami, a nie zliczać ilość impulsów w jakiejs jednostce czasu. Jeśli max. obroty generują 20k impulsów, to max. częstotliwość impulsów będą w okolicach 333Hz. Zeby sensownie mierzyć czas między kolejnymi impulsami, potrzebujesz takt licznika 'na oko' 10kHz. Dla atmegi przy 8MHz to zaden problem.

    Cytat:
    w momencie gdy przepustnica leży opara o przycisk ( procesor ma wykonywać pracę) jest zwarty do masy

    To brzmi jak błąd w założeniach. Jeśli przepustnica lezy oparta o przycisk, a procesor ma nią ruszać, to jak ruszy, to przepustnica nie bedzie juz oparta o przycisk. Co wtedy miałby zrobić algorytm kontrolera?

    0
  • #9 31 Lip 2014 18:24
    naprawiam_audio
    Poziom 10  

    Już rozwiewam wszystkie wasze wątpliwości.
    mam taki seryjny nastawnik przepustnicy razem z przepustnicą którą chcę wykorzystać.
    dowolny - uC do sterowania silnikiem jest to silnik dc z przekładnią poruszający trzpieniem o który opiera się przepustnica. Na końcu rzeczonego trzpienia jest styk.

    Chodzi o to by w momencie "dodawania gazu" uklad nie próbował na siłę tych obrotów obniżać.

    0
  • Pomocny post
    #10 31 Lip 2014 19:39
    Marek_Skalski
    Moderator Projektowanie

    Wygląda to na jakiś Motronic Boscha z początku/połowy lat 90-tych.
    Z tego co pamiętam, to tam największą słabością były ścieżki oporowe TPSa, przez co ECU nie potrafił utrzymać biegu jałowego. Czy to dlatego chcesz utrzymywać jałowe na poziomie 1100rpm? Czy może silnik jest dłubnięty na rozrządzie i potrzebujesz tak wysokie jałowe?
    ECU steruje tym przez mostek H, a sygnał do sterowania jest dość złożoną funkcją prędkości obrotowej (pochodna), czasu, temperatury silnika, powietrza i położenia samej przepustnicy. Styk wbudowany w środku trzpienia służy też do blokowania wtrysku w fazie hamowania silnikiem. Da się to zrobić w wersji mocno uproszczonej, ale aktualnie widzę 2 inne możliwości. Jeżeli to tylko zużycie, to wymiana płytki TPS załatwia sprawę. Jeżeli to silnik dłubany (10k rpm?), to zmiana ECU na coś lepszego. Oryginalny raczej nie poradzi sobie z obrotami >8000.

    0
  • #11 01 Sie 2014 08:47
    naprawiam_audio
    Poziom 10  

    To bardzo dłubany silnik z turbo i ostrym wałkiem, i zupełnie innym komputerem który akurat nie ma opcji sterowania wolnymi obrotami, a z mono wykorzystuje tylko przepustnice ( bo akurat pasuje mi mechanicznie). Mój komputer oczywiście wykorzystuje do obliczeń ciśnienie w dolocie, lambde, temperature powietrza i silnika, ale projektanci nie zaimplementowali kwesti wolnych obrotów ze względu na mnogość zastosowań mechanicznych.
    Wiele osób rozwiązuje to śrubką na stałe pod przepustnicą, ale takie rozwiązanie ma same wady, stąd zrodził się pomysł uC. Tym bardziej że auto które akurat szykuje będzie też jednoczesnie cywilnym wozem.

    0