Elektroda.pl
Elektroda.pl
X

Wyszukiwarki naszych partnerów

Wyszukaj w ofercie 200 tys. produktów TME
Proszę, dodaj wyjątek elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

STEROWNIK BLDC ATMEGA8, 88, 168, 328

arek1234321 21 Kwi 2017 14:04 963 15
  • #1 21 Kwi 2017 14:04
    arek1234321
    Poziom 7  

    Witam. Otóż zaprojektowałem sobie płytkę PCB do sterownika bezszczotkowego ale jest jeden problem. Program ze strony http://mikrokontrolery.blogspot.com/2011/03/silnik-bldc-sterownik-back-emf.html wgrałem ale po pierwsze grzeją mi się mosfety przy 12V po drugie kable również się topią. Wpadłem więc na pomysł przerobienia gotowego programu ze strony http://davidegironi.blogspot.com/2013/09/a-si...-brushless-sensorless-motor.html#.WPnwBWmLSHs z tą różnicą żeby był kompatybilny z moją płytką (układ pinów) wszystko było fajnie jak wgrałem program silnik ruszył na 2 sekundy a kabel prawie stopił się a najdziwniejsze w tym że mosfety nie były gorące. Teraz sterownik nawet nie chce przejść do trybu pracy tak jakby nie wykrywał BEMF. Próbowałem na atmedze88, 168 328p, 8a ale na żadnym nie działało. Wymieniłem tranzystory na nowe i rezystory BEMF a nadal nie rusza. Prosiłbym o pomoc i analizę kodu z góry byłbym bardzo wdzięczny. Dodaje zdj płytki, schemat, zrzuty ekranu oraz filmik.
    STEROWNIK BLDC ATMEGA8, 88, 168, 328 STEROWNIK BLDC ATMEGA8, 88, 168, 328 STEROWNIK BLDC ATMEGA8, 88, 168, 328 STEROWNIK BLDC ATMEGA8, 88, 168, 328 STEROWNIK BLDC ATMEGA8, 88, 168, 328 STEROWNIK BLDC ATMEGA8, 88, 168, 328 STEROWNIK BLDC ATMEGA8, 88, 168, 328

  • #2 21 Kwi 2017 14:58
    dondu
    Moderator Mikrokontrolery Projektowanie

    arek1234321 napisał:
    Witam. Otóż zaprojektowałem sobie płytkę PCB do sterownika bezszczotkowego ale jest jeden problem. Program ze strony http://mikrokontrolery.blogspot.com/2011/03/silnik-bldc-sterownik-back-emf.html wgrałem ale po pierwsze grzeją mi się mosfety przy 12V po drugie kable również się topią.

    Układ z powyższego linku nie ma prawa takich objawów dawać (grzanie tranzystorów) przy tak małym silniku (nie podałeś jego typu, więc trudno to oszacować).
    Prawdopodobnie nieprawidłowo sterujesz tranzystorami i włączasz jednocześnie górny i dolny tranzystor w danym kluczu.
    Skoro użyłeś program załączony na stronie to znaczy, że nieprawidłowo podłączyłeś tranzystory do mikrokontrolera.

    Podaj typ silnika - przewody topią się, bo zapewne mają zbyt mały przekrój w stosunku do prądu. Choć silnik wygląda na silnik z napędu CD, więc prąd nie powinien być duży.

    Zacznij od początku po kolei cały kurs BLDC: http://mikrokontrolery.blogspot.com/2011/03/silnik-bldc-spis-tresci.html

  • #3 21 Kwi 2017 15:55
    PiotrPitucha
    Poziom 32  

    Witam
    Kabelki jak widać na zdjęciu masz bardzo anemiczne, przerabiane silniki z CD potrafią wziąć bardzo dużo prądu.
    Drugi powód jaki mi się nasuwa to zwarcie międzyzwojowe w silniku.
    Po pierwsze sprawdź czy nie masz zwarcia do stojana, to jest łatwie do zaobserwowania omomierzem.
    Po drugie pokręć szybko ośką silnika, jeśli da się bez problemu to pewnie nie ma zwarć, jeśli opory będą duże to sugeruje zwarcia międzyzwojowe.
    Jeśli to doświadczenie Ci nie da jednoznacznej odpowiedzi, to proponuję pokręcić silnikiem ze stałą prędkością ( wiertarka akumulatorowa? ) i zmierzyć napięcie na uzwojeniach, powinny być równe dla wszystkich uzwojeń.
    Dopiero po tych testach grzebałbym w układzie....
    Pozdrawiam

  • #4 21 Kwi 2017 16:58
    arek1234321
    Poziom 7  

    Dziękuję za odpowiedź. Grzebałem z silnikiem i nie mam żadnych zwarć. Na reglu modelarskim śmiga. Próbowałem na 4 różnych silnikach: 2 przezwojone z cd romu , 1 oryginalny z cd i 1 z hdd. Po prostu sterownik zachowuje się jakby nie miał w ogólne sygnału BEMF. Sam już nie wiem co jest nie tak :(.

  • #5 21 Kwi 2017 18:08
    dondu
    Moderator Mikrokontrolery Projektowanie

    arek1234321 napisał:
    Próbowałem na 4 różnych silnikach: 2 przezwojone z cd romu ...

    ... to już jakaś informacja, choć niewiele daje.

    arek1234321 napisał:
    ... 1 oryginalny z cd i 1 z hdd.

    Na tym także tranzystory i kabelki się grzały?

    Zmierz omomierzem jak sugerował Piotr przerobiony i nieprzerobiony silnik, i podaj wyniki.

    Masz oscyloskop?

  • #6 21 Kwi 2017 18:23
    arek1234321
    Poziom 7  

    Oscyloskop niestety nie ale każdy silnik sie grzeje oraz kable. Mosfety trochę mniej i wygląda to tak jakby przy starcie wypełnianie PWN było na maksa więc może dlatego szarpie i podaje duże prądy. Przyczyna jest raczej programowa bo z elektroniki to laikiem nie jestem. Sprawdzałem czy mam zimne luty, czy nie mam zwarć i nic. Przezwojone silniki mają 1.5ohm i 2ohm a oryginały 4ohm i 5.5ohm. U mnie raczej gorzej z programowaniem więc przyczyny szukałbym w kodzie.

    Aaaa i dodam że na reglu każdy silnik kręci więc moim zdaniem to wina programu.

    Dodam jeszcze że pod palcem czuć że górne mosfety grzeją się bardziej niż dolne.

  • Pomocny post
    #7 21 Kwi 2017 18:37
    dondu
    Moderator Mikrokontrolery Projektowanie

    Program ze strony jest prawidłowy i przygotowany na przygotowany na ATmega8. Efekty jego pracy w wersji z obrotomierzem:


    Link


    Jeśli masz więc ATmega8 możesz bezpośrednio, go wykorzystać podłączając zgodnie ze schematem.
    Przy silniku z dysku z pięcioma talerzami i 5500rpm były zimne.
    Do większych prądów (przerobione silniki) należałoby jednak zastosować drivery MOSFET-ów.


    Oscyloskop masz: http://mikrokontrolery.blogspot.com/2011/04/darmowy-oscyloskop-i-analizator.html

  • #8 21 Kwi 2017 18:43
    arek1234321
    Poziom 7  

    Próbowałem na pańskim sterowniku bo taki miał być na początku ale program u mnie też nie działa. Znaczy silnik na starcie przy pozycjonowaniu wirnika ma załączone uzwojenia i grzeje mi to mosfety nie jakoś znacznie bo do około 50°C. Gdy ma przejść do trybu pracy to zacina się na 1 kroku aż silnika przekręcić się nie da.

    Może kupiłem same uszkodzone avr'ki hehe :D.

  • #10 21 Kwi 2017 19:07
    arek1234321
    Poziom 7  

    Propo pańskiego sterownika: Link chyba wygasł czy coś tego stylu bo nie mogę pobrać projektu bldc-05.
    STEROWNIK BLDC ATMEGA8, 88, 168, 328

    Udało mi się odpalić pański program tylko że silnik dziwnie się zachowuje. Mianowicie program ma rozpędzić go do maksymalnej prędkości i utrzymywać ją a zamiast tego gdy rozkręca się nagle spowalnia i tak jakby gubi synchronizację po czym znów przyspiesza.

    Znajdzie się na tym forum jakiś programista który by pomógł przy zmianie kodu programu z 1 postu? Bardzo zależy mi na zmianie kierunku obrotu silnika i kontroli jego prędkości. Proszę o pomoc. Z góry dziękuję i pozdrawiam.

  • #11 22 Kwi 2017 14:17
    arek1234321
    Poziom 7  

    Powiem tyle: uruchomiłem sterownik i silnik brzmi trochę jak turbina hehe :D Pozostaje jeszcze napisać sterowanie prędkością obrotową poprzez pomiar napięcia na którymś z portów ADC oraz zmiana kierunku obrotu silnika przez 2 przyciski np pd0 to lewo a pd1 to prawo. Proszę o jakiś pomysł.

  • #12 22 Kwi 2017 21:47
    arek1234321
    Poziom 7  

    Witam. Dodałem z programu ze swojego pierwszego postu dźwięk podczas uruchamiania silnika lecz teraz mam taki problem że gdy go włączam to sterownik kończy swoją pracę zaraz po tym jak dźwięk się skończy. Proszę o pomoc. Pozdrawiam.

  • #13 23 Kwi 2017 11:50
    Piotrus_999
    Poziom 39  

    arek1234321 napisał:
    Dodałem z programu ze swojego pierwszego postu dźwięk podczas uruchamiania silnika lecz teraz
    arek1234321 napisał:
    Znajdzie się na tym forum jakiś programista który by pomógł przy zmianie kodu programu z 1 postu?
    Niestety Kolego - aby coś robić samemu z uC trzeba się nauczyć programować. Arduinizcja ("wgrałem kod A i kod B a także skopowałem kod C i nie działa - dlaczego?") przy tego typu projektach już nie wystarcza. Nie rozumiem dlaczego nie użyjesz regulatora modelarskiego. Łatwiej Ci będzie zArduinizować RC-PWM do sterowania (gotowców co niemiara)

  • #14 23 Kwi 2017 12:08
    arek1234321
    Poziom 7  

    Ponieważ nie chce korzystać z gotowców a regiel bezszczotkowy posiadam. Poza tym w reglu można kręcić tylko w jedną strone a ja chce mieć dwukierunkowość + regulacja. Jakoś niestety nie marzy mi się wydać parę set złotych na gotowy regiel. Poza tym posiadam multum avr'ek i tranzystorów. Zrobić nową płytkę to nie problem ale u mnie gorzej z programowaniem.

  • #15 23 Kwi 2017 13:38
    Piotrus_999
    Poziom 39  

    arek1234321 napisał:
    Ponieważ nie chce korzystać z gotowców

    Kol. dodnu dał Ci link do swojego tutoriala. Dobra okazja aby się czegoś nauczyć. Na pewno nie staraj się "składać" źródeł znalezionych gdzieś w sieci. To wbrew pozorom wymaga więcej wiedzy niż napisanie samemu (musisz umieć przeanalizowac obcy kod, zauważyć problemy, pozbyć się błedów, odszukać konflikty pomiędzy procedurami itd itd.

    Zabawa uC bez umiejętności programowania jest __niemożliwa__.

  • #16 23 Kwi 2017 14:14
    arek1234321
    Poziom 7  

    Tutorial Pana Jacka przeczytałem minimum 4 razy więc nie potrzebuje zaglądać tam ponownie. Pod swoim ostatnim postem wstawiłem kod programu który należy skompilować w AVR Studio 4 lub jeśli ktoś posiada nowszą wersje w AVR Studio 7. Mój problem polega na tym że chcę uzyskać dwukierunkowość obrotów silnika oraz regulacje prędkości. Chcę aby ktoś przeanalizował kod z 1 postu i ewentualnie podpowiedział gdzie mogę coś zmienić albo jakie mam błędy. W programie zauważyłem też że BEMF FAZ U, V i W jest podłączone kolejno do PC0, PC1 i PC2 u mnie z kolei jest PC2, PC1, PC0. Zatem zapytam też jak mogę to zmienić bez "bombardowania" kodu. Pozdrawiam.

 Szukaj w ofercie
Zamknij 
Wyszukaj w ofercie 200 tys. produktów TME