Sterowanie mocą i/lub obrotami

Miejsce na posty nie związane z powyższymi
Awatar użytkownika
pimowo
Posty: 392
Rejestracja: 28 maja 2016, 10:07

Re: Sterowanie mocą i/lub obrotami

Post autor: pimowo » 08 sty 2020, 18:11

Oldman pisze:Według listingu widać, że nastawa potencjometru odczytywana jest przez ADC (linia 138), bo w końcu jak inaczej miało by to być :)
No w sumie tak ;)
Oldman pisze:Choć uważam, że szkoda czasu na zabawę z bateryjkami i od razu testowałbym działanie układu wg. mojego schematu.
I tak też zrobię.
Teraz garść pytań:
1. wygrzebałem w przydasiach PC817 - nada się?
2. jak dobrać elementy (patrząc na Twój schemat) dla "przejściówki"?
- R1 tylko dioda optoizolatora (220om?) a R2 ma spowodować "ściągniecie" ADC ATtiny85 do masy (4k7?) gdyby mój sterownik był odłączony?
- C1 (chyba zbędny) jest na płycie sterownika. Potencjometr, którym steruję nie jest przylutowany do PCB, a jest przykręcany do złącza 3-pin
3. PWM, który wybrać i jak go najlepiej skonfigurować do tej funkcji?
Chwilę się pobawiłem i ustawiłem 4x PWM na ATmega32 (uC do testów, docelowo będzie ATmega2560)
  1. $regfile = "m32def.dat"
  2. $crystal = 16000000
  3. $hwstack = 128
  4. $swstack = 64
  5. $framesize = 64
  6.  
  7. 'konfiguracja PWM Timer0
  8. Config Portb.3 = Output                                     ' OC0 jako wyście
  9.  
  10. Config Timer0 = Pwm , Prescale = 1 , Compare Pwm = Clear Up
  11.  
  12. 'konfiguracja PWM Timer1 kanał A i B
  13. Config Portd.5 = Output                                     ' OC1A jako wyście
  14. Config Portd.4 = Output                                     ' OC1B jako wyście
  15.  
  16. Config Timer1 = Pwm , Prescale = 1 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Up
  17.  
  18. 'konfiguracja PWM Timer2
  19. Config Portd.7 = Output                                     ' OC2 jako wyście
  20.  
  21. Config Timer2 = Pwm , Prescale = 1 , Compare Pwm = Clear Up
  22.  
  23. Do
  24.  
  25.    Incr Ocr0                                                ' OC0  (PB.3)
  26.  
  27.    Incr Pwm1a                                               ' OC1A  (PB.5)
  28.    Incr Pwm1b                                               ' OC1B  (PB.4)
  29.  
  30.    Incr Ocr2                                                ' OC2  (PD.7)
  31.  
  32.    Waitms 100
  33.  
  34. Loop
  35. End

niveasoft pisze:Na pewno da się tak zrobić bo od dawna używano PWM w AVR np do cyfrowego sterowania kontrastem wyświetlaczy LCD (można się podłączyć pod pin V0 zamiast potencjometru).
Na tej samej zasadzie działają DAC, tyle że to specjalnie bardzo szybkie PWM.

A czy tutaj potrzebujemy jakiegoś specjalnego sygnału PWM czy coś w tym stylu?
niveasoft pisze:Martwię się tylko o jedno. Czy taki dwumetrowy kabel z PWM`em nie będzie "siał" w jakimś paśmie jak jakaś antena :D
Czyi jak nie urok to sr... biegunka
niveasoft pisze:Testuj :D
Mam nadzieję, że jutro będzie więcej czasu na testy bo dziś trochę jestem niewyspany po nocce, a zaraz idę na kolejną :(
niveasoft pisze:No a tak BTW i dla beki :D
Pamiętacie jak w programie "Kocham Cię Polsko", albo podobnym (nie pamiętam), zawodnicy odpowiadając na pytania przerzucali miedzy sobą jak gorący kartofel pudełko które po czasie ma wybuchnąć?
Pamiętamy ;)
Twoje projekty są niesamowite, aż strach pomyśleć co Ty tam masz w szufladzie - wiem, że nie możesz się wszystkim chwalić, ale na pewno są tam jakieś ciekawe perełki ;)
Oldman pisze:Zakłócenia można ograniczyć stosując kabel ekranowany.
W sumie miał być jeden kabel wielożyłowy, ale na razie zostawię to w spokoju, najwyżej kupię kabel ekranowany.
Awatar użytkownika
Oldman
Posty: 61
Rejestracja: 19 cze 2019, 11:15

Re: Sterowanie mocą i/lub obrotami

Post autor: Oldman » 08 sty 2020, 19:28

PC817 powinien być w sam raz. R1 tak jak piszesz, bo dioda ma parametry VF (nap. przewodz.) = 1.2V przy IF=20mA. Celuj w 10-15mA.
Kondensator ma za zadanie przerobić przebieg prostokątny na stały. I to właśnie on wraz z R2 zamieni wypełnienie sygnału na napięcie średnie. Gdyby nie było tego kondensatora to przetwornik ADC trafiałby z pomiarem albo w napięcie 5V albo 0V. Jego pojemność trzeba dobrać wg częstotliwości sygnału. R2 z kolei rozładowuje ten kondensator żeby można było szybko zmniejszać obroty.
Nie wiem czy prescale=1 to dobra opcja. Żeby nie robić anteny to zszedłbym z częstotliwością niżej. Uprzedzam krytykę ;) : wiem, że sygnał prostokątny i tak generuje pełne spektrum harmonicznych ale można go spróbować trochę odfiltrować.
Awatar użytkownika
pimowo
Posty: 392
Rejestracja: 28 maja 2016, 10:07

Re: Sterowanie mocą i/lub obrotami

Post autor: pimowo » 08 sty 2020, 21:20

Oldman pisze:Kondensator ma za zadanie przerobić przebieg prostokątny na stały. I to właśnie on wraz z R2 zamieni wypełnienie sygnału na napięcie średnie. Gdyby nie było tego kondensatora to przetwornik ADC trafiałby z pomiarem albo w napięcie 5V albo 0V.
Czyli kondensator C11 0.1uF który jest już na PCB nie wystarczy?

Co do PWM... Jak go poprawnie skonfigurować do regulacji tym kitem?
Awatar użytkownika
Oldman
Posty: 61
Rejestracja: 19 cze 2019, 11:15

Re: Sterowanie mocą i/lub obrotami

Post autor: Oldman » 08 sty 2020, 21:37

Jutro spróbuję poeksperymentować z takim układem. Mam oscyloskop i inne ustrojstwa więc postaram się doświadczalnie dobrać optymalne parametry.
Awatar użytkownika
pimowo
Posty: 392
Rejestracja: 28 maja 2016, 10:07

Re: Sterowanie mocą i/lub obrotami

Post autor: pimowo » 08 sty 2020, 21:53

Z góry ślicznie dziękuję ;)

<-ciach->
Tak sobie jeszcze zaglądam na inne projekty i jak dobrze zrozumiałem to ten duet rezystor i kondensator mają robić za filtr dolnoprzepustowy, tak?
Z tego co wyczytałem to powinno to wyglądać (chyba) tak:
.
IMG_20200109_001246.jpg
.
Z drugiej znów strony to ludzie nie bardzo polecają takie sterowanie i lepiej znów wybrać potencjometr cyfrowy. Tylko znów u mnie problemem jest ta odległość :(
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
Awatar użytkownika
Oldman
Posty: 61
Rejestracja: 19 cze 2019, 11:15

Re: Sterowanie mocą i/lub obrotami

Post autor: Oldman » 09 sty 2020, 16:06

Opornik R2 na moim schemacie ma za zadanie rozładowywać kondensator bo pomijam (może niesłusznie) obciążenie przez wejście PB.2. Wyobraż sobie, że najpierw dałeś 100% wypełnienia więc kondensator naładuje się praktycznie do 5V, a następnie zmniejszysz to wypełnienie choćby do zera. Na kondensatorze nadal będzie 5V i w zależności od pojemności, upływności oraz impedancji PB.2 może to trwać "wiecznie" jak na nasze wymagania. Tym bardziej, że po moich testach wyszło, że pojemność powinna mieć 22uF przy rezystorze R2=10k. Dla kwarcu 16MHz i prescalerze=8. Wtedy częstotliwość sygnału PWM wynosi niecały 1KHz. W związku z tym, że pojemność jest spora to trzeba dołożyć ten opornik w emiterze, który Ty narysowałeś na schemacie. Może mieć 100 omów i ma zapobiec uszkodzeniu tranzystora w transoptorze.
W czasie testów wyszła też taka wada: sterowanie jest strasznie nieliniowe. Praktycznie przy 1/3 zakresu potencjometru osiągamy niemal pełne napięcie na kondensatorze. Oczywiście można to skorygować programowo. Testy robiłem na Arduino Nano i transoptorze podobnym do Twojego. Program poniżej.
  1. 'Sterownik PWM do testów na Arduino Nano
  2.  
  3.  $regfile = "m328pdef.dat"
  4.  $crystal = 16000000
  5.  
  6.  Dim P As Word
  7.  
  8.  
  9.  Config Timer1 = Pwm , Pwm = 10 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Up , Prescale = 8
  10.  
  11.  Config Adc = Single , Prescaler = Auto , Reference = Avcc
  12.   Start Adc
  13.  
  14.  
  15.  
  16.   Do
  17.    P = Getadc(0)                                            'wejście na pc.0
  18.    Pwm1a = P                                                'wyjście na pb.1
  19.    Pwm1b = P                                                'wyjście na pb.2
  20.    Waitms 100
  21.  
  22.   Loop
  23.   End
Awatar użytkownika
pimowo
Posty: 392
Rejestracja: 28 maja 2016, 10:07

Re: Sterowanie mocą i/lub obrotami

Post autor: pimowo » 09 sty 2020, 18:57

Dziękuję za testy i opis.
Wychodzi na to, że jednak muszę wykorzystać potencjometr cyfrowy.
Oldman pisze:W czasie testów wyszła też taka wada: sterowanie jest strasznie nieliniowe. Praktycznie przy 1/3 zakresu potencjometru osiągamy niemal pełne napięcie na kondensatorze.
Dziś się chwilę pobawiłem i nic sensownego mi nie wyszło - stosowałem różne rezystory, różne kondensatory, ale i tak sterowanie zawsze jakoś słabo wyglądało :(
ODPOWIEDZ