Skocz do zawartości

Yggas

Użytkownicy
  • Zawartość

    55
  • Rejestracja

  • Ostatnio

Reputacja

0 Neutralna

O Yggas

  • Ranga
    4/10

Informacje

  • Płeć
    Mężczyzna
  1. Yggas

    Regulator MPPT

    Testowałem kod ten taki podstawowy bez żadnych bajerów w niedzielę, akurat było trochę słońca by coś działało na moim 3.5W panelu słonecznym float V_in = 0; float V_out = 0; float I_in = 0; float I_out = 0; float P_in = 0; float P_out = 0; float n = 0; float delta_V = 0; float delta_P = 0; float V_in_poprzednie = 0; float P_in_poprzednie = 0; uint8_t pwm = 30; uint8_t krok = 0; uint8_t last_pwm = 0; unsigned long czas = 0; void setup() { //Ustawienie sygnału prostokątnego na pin11 o częstotliwości 62500Hz pinMode(11, OUTPUT); OCR2A = 255; TCCR2A = _BV(WGM21) |
  2. Yggas

    Regulator MPPT

    Całą noc siedziałem nad tym ale nie dałem rady ogarnąć algorytmu. Od 4 rano postanowiłem przerobić prezentację na to co mam. Oddałem projekt w poniedziałek jako płytkę samodzielnie zrobioną z kodem poniżej. Potencjometrem sobie ustawiam napięcie potrzebne. Taki niby zasilacz lab lub coś. Teraz mam tydzień wolnego przed nowym semestrem to się obijam Wieczorem może coś wrzucę bardziej przemyślanego z algorytmem MPPT bo w sumie fajnie by było to mieć na lato. http://wklej.org/id/3372000/
  3. Yggas

    Regulator MPPT

    jak to jest z tymi zmiennymi i funkcjami? w deklaracji funkcji deklaruje się w nawiasie zmienne pobierane z zewnątrz czy nowe zmienne, które są tylko w tej funkcji? nie jestem pewien co do tego dlatego pomiary są w różnych miejscach... http://wklej.org/id/3370144/ W tej chwili zrobiłem coś takiego. Teraz MPPT leci mi ciągle do zera :/
  4. Yggas

    Regulator MPPT

    W sumie masz racje chyba przekombinowałem z pomiarem napięcia wejściowego :/ Tam był rezystor 47k, źle wpisałem przez pośpiech, już poprawiłem. Teraz poprawiłem kod i dodałem poprawkę na szybkość zmiany jeżeli krok będzie taki sam: //MPPT P&O delta_V = V_in - V_in_poprzednie ; delta_P = P_in - P_in_poprzednie ; if(delta_P != 0) { if(delta_P > 0) { if(delta_V > 0) { wzrost=1; } else wzrost=-1; } else if(delta_V > 0) { wzrost=-1; } else wzrost
  5. Yggas

    Regulator MPPT

    Nowa płytka: Zmieniłem dzielnik napięcia z 2*33kR na 100kR i 47kR. Zabezpieczy to trochę lepiej uC przed wyższymi napięciami. Dodatkowo zmieniłem miejsca pomiarów napięć. Vin jest mierzone za opornikiem pomiarowym na teoretycznym wejściu przetwornicy, Vout jest mierzone za drugim opornikiem pomiarowym czyli jest to napięcie podawane prosto na podłączone obciążenie. Tak wyglądają teraz pomiary: PWM nie chce mi się wyświetlać coś w procentach, jeszcze nad tym popracuje. //Przeliczenie wartości cyfrowych na analogowe V_in = Digital_V_in * 3.20862 * (5.0/1024.0); V_out = Digital_V_
  6. Yggas

    Regulator MPPT

    Mam czas do poniedziałku na oddanie więc to będzie pracowity dla mnie weekend Robię jutro płytkę od nowa, raczej ją zrobię porządnie teraz. W KiCad jest zła biblioteka INA138 z pozamienianymi nóżkami i nie wiem teraz jak to mam zrobić ale coś wymyślę. Tranzystorów tam było 10 bibliotek i dobrałem po namyśle tą dobrą ale układu pomiarowego jest tylko jedna i błędna. Będę musiał przestać zwracać uwagę chyba na proponowane trasowanie. Teraz załóżmy, że pomiary ADC mam dobre. Jak ma wyglądać ten algorytm MPPT? Napewno będzie to ten łatwy P&O ale z tego co pisałeś to w kodzie go zapis
  7. Yggas

    Regulator MPPT

    Jest ogólnie beka niezła bo... cała płytka jest ŹLE ZAPROJEKTOWANA. Tutaj też źle dobrałem wyprowadzenia nóżek... Niestety nic już nie zrobię, choćbym się ze...ł to nie zrobię nowej płytki do piątku bo mam jeszcze inne rzeczy do roboty, a tutaj nie mam materiałów i jestem zmuszony oddać to jako zwykłą przetwornicę SEPIC... :/ Bardzo i szczerze dziękuję za pomoc, odezwę się jak już zrobię nową płytkę, będzie wtedy bez zbędnego ciśnienia czasowego pewnie
  8. Yggas

    Regulator MPPT

    void loop() { //Odczyt z przetwornika ADC Digital_I_in = analogRead(A0); Digital_V_in = analogRead(A1); Digital_I_out = analogRead(A2); Digital_V_out = analogRead(A3); //Przeliczenie wartości cyfrowych na analogowe V_in = Digital_V_in * 2.0 * (5.0/1023.0); V_out = Digital_V_out * 2.0 * (5.0/1023.0); I_in = Digital_I_in * (1.04/1023.0); I_out = Digital_I_out * (1.04/1023.0); //Obliczanie mocy i sprawności P_in = V_in * I_in; P_out = V_out * I_out; n = P_out / P_in; nowy_pwm = 135; OCR2A = 255 - nowy_pwm; } To jest część z przetwornikiem, zmieniłem ją. Rezystory pomia
  9. Yggas

    Regulator MPPT

    Przelicając z ADC, nie mam multimetra. Ale nic w rzeczywistości nie płynie na 100% jak napięcia są 0, a na dodatek jeżeli by płynęło 3 A przez ten pomiarowy gwizdek to by był czerwony jak cegła pewnie a jest zimniutki. Wyżej jest kod to możesz sprawdzić konwersję. Wszystko działa jak płynie przez nie prąd 150mA+. Na napięciu wejściowym z panelu pv oświetlanym żarówką i wyłączonym tranzystorze było napięcie 6.5V, i prąd też pokazywało 3 A Może wyjście układu ina138 sprzęgnąć przez rezystor o dużej rezystancji do masy? Kondensator włączyłem na wyjściu ale to tylko pozwoliło mi na stabili
  10. Yggas

    Regulator MPPT

    Czyli tak, najpierw ustawiam prescaler na 1 więc w TCCR2B zeruję wszystkie bity, a potem ustawiam prescaler: TCCR2B = 0; TCCR2B |= (1<<CS20); Potrzebny mi będzie prawdopodobnie tryb FAST PWM, nie PHASE CORRECT bo: -Liczy od zera co jest nazwane BOTTOM, do TOP. -TOP prawdopodobnie będę mógł ustawiać wartością w OCR2A co da mi sterowanie szerokością impulsu Żeby ustawić TOP jako OCR2A, należy ustawić WGM20, WGM21 i WGM22 na 1 czyli to będzie praca jako Mode 7. TCCR2A = 0; TCCR2B = 0; TCCR2A |= (1<<WGM20) | (1<<WGM21); TCCR2B |= (1<<CS20) | (1<<WGM22)
  11. Yggas

    Regulator MPPT

    void setup() { pinMode(9, OUTPUT); pinMode(10, OUTPUT); TCCR1A = 0; TCCR1B = 0; TCCR1A |= (1<<WGM10) | (1<<COM1A1) | (1<<COM1B1); TCCR1B |= (1<<CS10) | (1<<WGM12); Serial.begin(9600); //Uruchomienie komunikacji przez USART lcd.begin(16,2); } Tak uzyskałem 62500Hz na pinie 9 ale to jest z Timer1. Jeżeli to nie wpłynie na inne funkcje np LCD lub odczyt analogowy to fajnie jak by to pozostało Nie wgłębiałem się w to jak działają rejestry, wziąłem tylko odpowiedni kod z yt. W pętli loop tylko teraz zrobić sterowanie pwm które będę wpisywał do OCR1A =
  12. Yggas

    Regulator MPPT

    Dobra działa, zrobiłem markerem drugą płytkę, wlutowałem tranzystor i kabelkami wlutowałem w odpowiednie miejsca płytki. Nie wygląda to super poważnie ale ze względu czasowego musi tak pozostać przynajmniej na jakiś czas. Cały czas szukam informacji i czytam o tej częstotliwości na timer2 i idzie mi to powoli Ale sprawa taka na teraz to będzie to jak zrobić w Arduino dwie osobne pętle, które wykonują się w tym samym czasie? Da się tak zrobić? W jednej bym miał pomiary, obliczenia i sterowanie MMP, a druga by generowała tylko PWM. Oczywiście pierwsza by sterowała drugą. Czy przypadk
  13. Yggas

    Regulator MPPT

    grg0, Dokładnie to Tylko dziwne bo teraz po aktualizacji w KiCad footprintów na SuperSOT-3 dalej wyskakuje mi takie samo połączenie w PCBNew :/ No nic, jutro dopiero na wieczór przysiądę nad tym i będę myślał co tu zrobić by to jakoś obejść...
  14. Yggas

    Regulator MPPT

    Znalazłem problem. Zły footprint wybrałem prawdopodobnie w KiCad i jest zamienione Drain z Source przez program, z czego źle jest wytrawione na płytce bo dioda nie jest zaporowo tak jak powinna być Teraz jak to obejść muszę wymyślić. Spokojnie mam jakąś podstawową kolbową stację lutowniczą z botlandu.
  15. Yggas

    Regulator MPPT

    Kupiłem 3, dwa mają przebicie został jeden. Nie sprawdziałem stanem niskim z arduino tylko podpiąłem bramkę bezpośrednio na masę. Podłączenie jest dokładnie takie jak na schemacie, te same oporniki itp. Sprawdziłem, wylutowane są dobre tzn pokazuje to napięcie tam około 0,525V - 0,625V... A sprawdzałem je tak też, że przyłożyłem 5V zasilacza (przez opornik i diodę LED) do Source oraz masę zasilacza do Drain i było zwarcie bez sterowania bramki. Tak samo jak bramkę wysterowałem masą (ale tylko jak układ był wlutowany bo tak to nie mam pięciu rąk ani żadnego trzmacza to trudno mi to spr
×
×
  • 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.