Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Prostownik do ładowania akumulatorów (auto)

jozefg 15 Jun 2012 17:25 1144170 2686
Optex
  • #2311
    piwek9
    Conditionally unlocked
    Bo prawie każdy programuje po SPI dla wygody , tylko w bardziej zawansowanych programach wyłącza się w procku programowanie po SPI.
    A darmowy program PonyProg to coś wspaniałego.
    Attiny2313 używam codziennie dobry procek i po 6 zł.ale do komunikacji po RS nie ma ADC i ciężko zrobić pomiar napięcia
    Za 9 zł masz ATMEGA 8 jest szybszy i masz 8k kodu a za 14 zł ATmega16 .
    W czasie 0.1 seku nie zdążysz wyświetlić pomiaru chyba że zrobisz uśrednienie i będziesz wyświetlał wynik z 50 pomiarów np.
    Wyświetlacze na I2c są droższe .dlatego rzadko kto to robi lepiej ten port wykorzystać do czegoś pożyteczniejszego.
    A temperaturę i napięcie żeby porównać to trzeba zmierzyć tak mi się wydaje ?
  • Optex
  • #2312
    tyson000
    Level 10  
    piwek9 nie zrozumieliśmy się, bt 151 to wiem że można zastosować, ale czy do układu z pierwszej strony mogę zastąpić tyrystor BT 151 tyrystorem TYN 816.
  • Optex
  • #2313
    piwek9
    Conditionally unlocked
    Jak nie jak tak.
    Tylko od razu kup sobie opornik z 200W , albo żarówkę wstaw bo to jedyna regulacja prądu , prostownik walczy z aku aż go ugotuje .
    Działa jak te z marketu każde ładowanie to miesiąc życia aku mniej, tylko z marketu piszą 20 A a rzeczywiści to 20/10

    Zauważcie że rozruchy z prawdziwego zdążenia mają mały prostownik a w środku siedzi 2 aku
    Inaczej by cela do celi się przykleiła
  • #2314
    aneuro
    Level 16  
    piwek9 wrote:

    W czasie 0.1 seku nie zdążysz wyświetlić pomiaru chyba że zrobisz uśrednienie i będziesz wyświetlał wynik z 50 pomiarów np.


    :) Widzę że po to ten wyświetlacz wypasiony zrobiłeś żeby ogladać jak ładuje się acu ;)
    A ja chcę to tak zrobić żeby nie trzeba było w ogóle przy nim siedzieć i go pilnować...i mało tego jednym prostownikiem równolegle kilka acu ładować 4-8 ;)
    Różnica w moim rozwiązaniu polega na tym że nie muszę mierzyć i widzieć czy napięcie jest 14.2V czy 14.0V czyli znać jego wartość, a tylko czy miesci się w zakresie, czyli wystarczy jak układ na acu zasygnalizuje przekroczenie 14.2V na acu,
    a to można w taniej wersji na diodzie Zennera zrobić i op ampach, a jak się chce dokładniej ten punkt znaleźć to można użyć precyzyjnego referencyjnego napięcia np. LM399 a właściwie to LM299 by się przydało zdobyć bo od -25 stopni do 85, albo coś podobnego.
    LM299 Precision Reference
    Właśnie szukam jakiś tańszych podobnych do tego LM299.
    A tak w ogóle to trzeba pamietać, aby mieć PORZĄDNE KROKODYLKI bo jak będą kiepskie to w żaden sposób sensownie się sprawdzi napiecia i może być... mały pożar jakby się przeładowały a ktoś myślał że może o nich zapomnieć ;)
    Więc w menu mojego prostownika nie będzie ustawiania napięcia-jeżeli w ogóle będzie LCD-a co najwyżej ustawienia maksymalnych prądów ładowania, czasu przerw pomiedzy i co tylko się wymyśli aby efektywnie ładować 4-8 acu na raz z jednego trafo.

    piwek9 wrote:

    A temperaturę i napięcie żeby porównać to trzeba zmierzyć tak mi się wydaje ?

    Do temperatury to wystarczy coś takiego, bo tylko zgrubnie wystarczy się zorientować i ustawić potencjometrem aby gasła czerwona kontrolka sygnalizująca przegrzanie acu jak jest poniżej dopuszczalnej temperatury.
    Prostownik do ładowania akumulatorów (auto)
  • #2316
    piwek9
    Conditionally unlocked
    Szanowny kolego w takich urządzeniach LCD potrzebny jest tylko do wizualizacji ustawień bo ciężko by było cos poustawiać jak by się tego nie widziało .
    Napięcie referencyjne powinno być stałe i niezmienne nie zależnie od warunków zewnętrznych .najważniejsze !
    W tym układzie co pokazałeś dokładność na samym aku będzie +-15% a jak podepniesz ładowanie jeszcze dokładność będzie mniejsza .
    Ale Ok nie mam zamiaru cię krytykować czy cos w tym stylu . nie zapomnij że masz do czynienia z napięciem nie stabilizowanym !

    Jak możesz napisz w punktach co chcesz robić tylko tak w prosty sposób bo ja jestem ciemniak i nie rozumiem zawiłych , skomplikowanych naukowych wypowiedzi , żebym zrozumiał co chcesz osiągnąć raz a dobrze.

    Żeby uzyskać przerwy w ładowaniu musisz użyć jednego Timera do pomiaru 1sekundy , drugiego do sterowania np. PWM więc trzeba patrzeć na procka który to ma , pamiętaj że timer2 jest 8bit i jako licznik nie za bardzo się nadają (zależy jaki procesor)
    Niby przesz że nie potrzebna duża dokładność a za razem 14--14.2V to dość dokładny pomiar ci powiem.(na kabelkach np. 2m będą duże przekłamania)
    Sory że się wymądrzam , nie powinienem ale w brew pozorom chcę aby ci się to udało i dobrze działało a nie po łepkach.

    DS2438
    Nie da się tanio i dobrze tylko Chińczycy tak próbują i jakoś im nie wychodzi.
    :D
  • #2317
    aneuro
    Level 16  
    _jta_ wrote:
    LM299 ma świetną stabilność, ale jest niezbyt wygodny do stosowania
    - może wystarczy TL431, albo LM4041 (dla wygody w wersji -ADJ)?

    Właśnie sobie przypominam ze widziałem kiedyś prostownik z TL431 jako referencja-w TME nawet mają jego wersję mrozoodporną: TL431IZ dosyć tanio. Pewnie, spokojnie wystarczy- 1%-2% precyzja ustawienia napiecia, a op amp ma volt offset <10mV. To nie ma być laboratoryjny miernik ;) Najważniejsze to nie zagotować acu i nie traktować po naładowaniu niepotrzebnie napięciem.

    Update: Jak się przyjrzeć schematowi blokowemu TL431 to w zasadzie taki układ po stronie acu spokojnie zabezpieczy go przed przeładowaniem a przed przegrzaniem podobny do tego z NTC który zapodałem wcześniej. Wystarczy sygnał (cyfrowy) z acu przesłać 2ma kabelkami do prostownika poprzez optoizolator ;)
    Prostownik do ładowania akumulatorów (auto)
    Tylko kwestia doboru oporników o sensownych parametrach, bo TL431 ma Vref=2.495V średnio +/- 55mV . Więc w wersji bez uP banalnie prosto każde acu mozna wyposażyć w zabezpieczenie termiczne i przekroczenia naipięcia na acu.


    Napięcie na zasilaniu układu (opampach) oczywiście stabilizowane będzie niezależnie od tego, a pobór prądu znikomy w tym układzie bez procka bedzie, ale LM2940 5V 1A (LDO-Low Dropout Regulator) chyba bym wpakował.

    Zresztą jak tak się zacznie kompletować rózne elementy i po różnych sklepach zacznie szukać, to dochodzę do wniosku że być może rzeczywiście lepiej procka dać na kazdy acu np. takiego fajnego ATTiny45 4k Flash DIP8 (maleństwo bez) tutaj z tym LM2940 do regulacji 5V dać-przełączyć w tryb 128k HZ i wykorzystać wewnętrzny (wbudowany) referencyjny wzorzec napięcia 1.1V (ATTiny13A taki ma i też by pewnie starczył) do pomiarów poprzez ADC. Jak tylko uda mi się skompletować (tzn. wytrawić programator tych AVR na DB25) to zabawa może być lepsza, bo wystarczy wtedy w programie zaszyć parametry i mieć... conajwyżej switch na przełączanie na ładowanie cykliczne i buforowe i całkowite wyłączenie układu w jednym przełączniku z tymi 3ma diodami i po sprawie.
    Tylko naklejka jakie napięcia są zaprogramowane i temperatura acu do odcięcia ładowania.
    Taki układ wtedy pewnie wyjdzie dużo taniej, a że potrzebuję 4-8 takich samych to w TME pewnie się opłaci skompletować ;)

    W razie czego na I2C komunikację dwoma kabelkami (a może 4y są potrzebne ale to już bez znaczenia bo cyfrowo) pomiędzy prostownikiem a tymi wieloma acu zrobić i full wypas-nie potrzeba cyfrowych mierników temperatury na pewno.
    Mało tego, jednostka nazorująca może wysłać do acu jakiej temperatury i napięcia ma pilnować na danym acu... mozliwości ogranoczone pojemnoscią flashu, ale tylko więcej potrzeba w ukladzie centralnym, bo na aku niewiele procki maja do robienia (attiny45 ok. 3-4PLN ;)
    Na poczatek wystarczy jak każdy aku 2ma kabelkami w układzie ala otwartego kolektora z optoizolatora prześle informację do prostownika od każdego acu niezaleznie, czy ładować to aku czy nie ma potrzeby albo nie można w danej chwili...
  • #2318
    aneuro
    Level 16  
    Nie wiem czy czegoś nie popsułem na tym schemacie, bo zasugerowałem się tym schematem blokowym TL431 i w zamierzeniu CHARGE ON ma być 0V (<0.5V) jeśli acu osiąga 14.2V.
    Tylko się zastanawiam co daje ten 4.7k opornik, bo taki schemat w jednym z projektów prostownika widziałem i wyjście poprzez 100k do CMOSa było podawane, ale chyba ten układ nie za bardzo ma szanse działać z tym opornikiem 4.7k? Diodę 4.7V dorzuciłem zakładając że ten TL431 przewodzi jak VR2>2.5V a jak <2.5 to za 4.7k napięcie takie jakby tranzystor TL431 był zatkany....
    Prostownik do ładowania akumulatorów (auto)

    Według tej noty i typowego zastosowania TL431/LM431 wygląda na to że jeśli potencjometr byłby w ok. 1/2 to dla R1= 35k +180 oma i R2=7.5k oma Vo=(1+R1/R2)*2.495V = 14.198 V .
    Prostownik do ładowania akumulatorów (auto)
    W sumie to może lepiej się nie zastanawiać i na komparator (-) dać tak czy inaczej ustawione np. Vo=7.1V tym TL431 (tak zamierzałem), a na (+) środek z dzielnika napięcia z acu 10k+10k i chyba powinno załatwić temat.

    Ma ktoś pomysł co będzie jak napięcie na R2<2.495V? Ten opornik 4.7k jakoś mi "nie ułatwia" podstawienia do tego wzoru na Vo w zależności od R1 i R2 które wiem jak dobrać aby było np. 14.2V....
  • #2319
    piwek9
    Conditionally unlocked
    Niech kolega się zastanowi !
    Napięcie referencyjne to coś stałego niezmiennego
    Takie układy będą miały ciągle zmieniające się napięcie referencyjne .
    Akumulator ma to do siebie że napięcie wzrasta z ładowaniem i spada w miarę rozładowania się aku
    Na rysunku wyżej masz wyraźnie ,trzeba użyć specjalizowanego układu dającego napięcie referencyjne.
    Nawet w procesorach żeby używać zewnętrzne napięcie referencyjne używa się takich układów ,ale procek ma to do siebie że można go skonfigurować CONFIG ADC = SINGLE | FREE , PRESCALER = dzielnik | AUTO , [ REFERENCE = OFF | AVCC | INTERNAL ]

    Dodano po 5 [sekundy]:

    Niech kolega się zastanowi !
    Napięcie referencyjne to coś stałego niezmiennego
    Takie układy będą miały ciągle zmieniające się napięcie referencyjne .
    Akumulator ma to do siebie że napięcie wzrasta z ładowaniem i spada w miarę rozładowania się aku
    Na rysunku wyżej masz wyraźnie ,trzeba użyć specjalizowanego układu dającego napięcie referencyjne.
    Nawet w procesorach żeby używać zewnętrzne napięcie referencyjne używa się takich układów ,ale procek ma to do siebie że można go skonfigurować CONFIG ADC = SINGLE | FREE , PRESCALER = dzielnik | AUTO , [ REFERENCE = OFF | AVCC | INTERNAL ]
  • #2320
    _jta_
    Electronics specialist
    TL431 ma 3 końcówki, i zachowuje się jak tranzystor NPN o napięciu emiter-baza 2.5V. Ma niestety
    spory prąd przy napięciu "emiter-baza" nieco poniżej tych 2.5V, które go włączają (prawie 1mA, ale
    gwarantowany <1mA) i spore "napięcie nasycenia" w stanie włączonym (prawie 2V), więc trzeba
    te cechy wziąć pod uwagę przy projektowaniu. I ma dziwne nazwy końcówek: "kolektor" nazywa się
    katodą, "emiter" anodą (łatwiej to zrozumieć, jak się go traktuje jako zenerkę, która z reguły pracuje
    przy polaryzacji zaporowej), a "baza" - REF. No i ma duże wzmocnienie. Jeśli zrobisz taki układ, że
    napięcie na TL431 będzie podawane na bramkę MOSFET-a, to powinno pasować do sterowania,
    bo chyba nawet MOSFET-y LL prawie nie przewodzą przy napięciu na bramce około 2V.
  • #2321
    aneuro
    Level 16  
    Dzięki za info jak w tych AVR na skróty wykorzystać ten wewnetrzny 1.1V jako reference-symulatrem AVR dzisiaj się będę bawił to się zobaczy.
    BTW: Wiesz może jaką ma w AVR odchyłki ten wewnętrzny Vref od 1.1V? Nie moge tego znaleźć nigdzie?
    Jak stabilne jest w stosunku do zasilania procka z regulatora 5V, który na pewno nie utrzyma takich parametrów napięcia zasilania jak Vo z TL431?

    piwek9 wrote:

    Na rysunku wyżej masz wyraźnie ,trzeba użyć specjalizowanego układu dającego napięcie referencyjne.

    Takim układem jest właśnie ten ze schematu: TL431/LM431 ;)
    Właśnie znalazłem kolejny schemat układu w którym zastępując diodę LED optoizolatorem mamy prosty indykator, że acu ma napięcie np. powyżej 10.5V i nie jest jeszcze kompletnie rozładowany....identycznie mozna wiedzieć kiedy przestać ładować.... i to bez żadnych komparatorów...
    Prostownik do ładowania akumulatorów (auto)
    Wygląda na to że gdyby zamienić ten rezystor 4.7k i zmniejszyć go do ok. 1k (chyba służy do ograniczania prądu po prostu tak jak myślałem) to ten sygnał CHARGE ON może da się wykorzystać...
    Niestety nie mam jeszcze na półce tego TL431 żeby to sprawdzić...
  • #2322
    _jta_
    Electronics specialist
    R4 na tym schemacie powinien być taki, żeby LED nie świecił przy 1mA - dla czerwonego LED-a 1k2, może i 1k,
    dla niebieskiego może być i 2k7; zalecana wartość R2 to nie więcej, niż 8k (a lepiej nie mniej, niż 1k); R1 należy
    dobrać tak, by dzielnik R1/R2 dawał 2.5V przy napięciu, na jakie ten czujnik ma reagować.
    Warto pamiętać, że układ sterujący ładowaniem powinien mieć histerezę - jak już akumulator uzyska wymagane
    napięcie, to ładowanie ma się wyłączyć i nie włączać od tego, że napięcie nieco spadnie - podczas ładowania
    napięcie na akumulatorze dochodzi do około 2.4V/celę, a po przerwaniu ładowania powoli opada do 2.2V/celę
    - z tego wynika, że należy wyłączyć ładowanie np. przy 2.40V, ale włączyć np. przy 2.18V, a nie większym.
  • #2323
    aneuro
    Level 16  
    _jta_ wrote:
    TL431 ma 3 końcówki, i zachowuje się jak tranzystor NPN o napięciu emiter-baza 2.5V. Ma niestety
    spory prąd przy napięciu "emiter-baza" nieco poniżej tych 2.5V, które go włączają (prawie 1mA, ale
    gwarantowany <1mA) i spore "napięcie nasycenia" w stanie włączonym (prawie 2V), więc trzeba
    te cechy wziąć pod uwagę przy projektowaniu.

    To by się zgadzało z tym co pisali w opisie tego prostownika o TL431-właśnie nie za bardzo wiedzaiłem skąd tam się bierze te 2V... a oni jako wejście do cyfrowego układu CMOS jeszcze przez rezystor 100k to zapodawali i wtedy te 2V jest traktowane jako stan niski (w specyfikacji serii 74XX też VHI jest ok. 3.15V jeśli będę zasilał 5V) więc może to być sensowne rozwiązanie i nie będę kombinował z tranzystorem zaraz na wyjściu z TL431, a że i tak ze 2ie kostki serii 74HX?? pewnie dorzucę żeby nie bawić się w układy logiczne na BC547 i jasno zdefionować sobie na:
    74HC04 - 6xNOT i 74HC11 - 3xAND3 lub 74HC08 - 4xAND2
    dowolne funkcje logiczne z pomiaru przekroczenia temperatury acu i napięcia na acu.
    W takiej sytuacji pewnie spokojnie na wejście tych układów serii 74HC mogłbym zapodać wyjście z TL431 w sposób w który odręcznie narysowałem, ale że i tak bedę potrzebował komparator do sprawdzania temperatury acu, więc na układy cyfrowe wyjścia z komparatora poczwórnego LM224 pójdą.

    Przy tym zasilaczu LDO 5V pewnie byłaby szansa nawet te acu 6V monitorować bo pobór prądu będzie znikomy w wersji bez uP....
    Może 4a diode białą, bym dodał do sygnalizowania stanu bateri nadającej się do użycia tj. np. >11V albo 12V w pracy cyklicznej...
    Ale to już kwestia sensownej sygnalizacji tylko-najważniejsze aby niezawodnie to działało i z odłaczonym czujnikiem temperatury też pracowało bazując tylko na napięciu na acu...

    Update: Znalazłem potwierdzenie tego co piszesz Jta, problem tylko w tym że różni producenci tych LM431 mają rózne je udokumentowane w dataschitach i w tej z National Semiconductor bardzo ładnie sporo typowych zastosowań jest opisanych (drugi link do NS) a ja przegladałem do tej pory nie te co trzeba ;)
    from
    National Semiconductor

    Prostownik do ładowania akumulatorów (auto)

    Teraz już mozna zacząć projektować :)
  • #2324
    piwek9
    Conditionally unlocked
    Dorobiłem do mojego prostownika ładowanie z utrzymaniem stałego ustawianego napięcie ładuję teraz tak jak alternator w aucie . po przetestowaniu dam wsad , bo na razie po kilkunastu minutach przepełnia się stos w procku , i muszę pokombinować jak to poprawić żeby upchać do mega16 na mega32 bez problemów , wada trafo ma co robić jak aku rozładowane .

    Wzorowałem się na tych prostownikach .
    http://semi.com.pl/mikroprocesor.html
  • #2325
    aneuro
    Level 16  
    piwek9 wrote:

    Wzorowałem się na tych prostownikach .

    Fajny link. Dobrze wiedzieć co fanego robi... komercja i... udoskonalić ;)

    >>>>>>
    10.- automatyczną regulację prądu ładowania podczas stabilizacji napięcia akumulatora, sterownik zmniejsza prąd ładowania tak, aby nie przekroczyć stabilizowanej wartości napięcia, 15.8 V ( "Ca") albo 14.5 V ( "Gel"),
    poz. Ca - 15.8 V, tylko ta wartość zabezpiecza akumulatory przed zjawiskiem zasiarczenia cel,
    poz. Gel - 14.5 V, zabezpiecza akumulatory żelowe przed utratą pojemności ( zamianą elektrolitu w wodę ),
    <<<<<<
    Wybór akurat łatwo zrealizować, tylko zastanawia mnie tutaj, dlaczego alternator w samochodzie 14.4V w HDI zapodaje na acu a nie 15.8V? Kwasiak VARTY w dieslu HDi 1.4 pponad 7 lat wytrzymał i jest traktowany przez alternator 14.4V na zaciskach podczas podgazowywania i przy prędkości "przelotowej" 100km/h i obrotach ok. 2000-2100 obr/min takie napięcia miałem.
    W swoim prostowniku też dla kwasowych taki byś dawał prąd odcięcia 15.8V?
    Bo dla żeli to ok. jest to do przyjęcia...

    >>>>>>>>>>
    8.- automatyczne odłączanie ładowania po wykryciu rzeczywistego stanu końca ładowania, czyli wówczas, kiedy napięcie na akumulatorze w ostatniej sekundzie przerwy w ładowaniu wynosi co najmniej 13.8 V,
    9.- ponowne włączenie ładowania, po wykryciu spadku napięcia na ładowanym akumulatorze do wartości 13.6 V,
    <<<<<<<<<<

    Tutaj w sumie ciekawe jak niby wykrywają ten stan rzeczywistego naładowania i co w ogóle co rozumią przez ładowanie, bo przecież chyba cały czas jakos grupowo stabilizuja prąd ładowania, czyli tak czy inaczej muszą przerywać jaiimś PWM w zerze (najlepiej na końcu okresu sinusoidy), żeby nie przekroczyć prądów ładowania więc niby co znaczy ta ostatnia sekunda?
    No chyba że ładuja np. 9 sekund i 1 s przerwy .... ale to przecież też wyłączenie....

    Spotkałem się sie też z takimi schematami prostowników w elektronice praktycznej, gdzie w ogóle nie mielii żadnej histerezy tylko pilnowałi aby nie przekraczać 14.2V na zaciskach właśnie za pomocą tego precyzyjnego TL431 i mieli ciekawe wykrywanie 0 do sterowania grupowego zrobione tak aby załączać nie na połówki okrecu na podstawie wartości wyprostowanego prądu, a analizowali AC na wtórnym trafo i pod koniec okresu przygotowywali MOSFETA tak aby jak tylko pojawi się prąd to żeby był już w pełni otwarty...
    W sumie to chyba podepnę pod zapalniczkę miernik w samochodzie i ciekawy jestem czy i kiedy napięcie spada na acu w okolice 13.5V podczas jazdy....
  • #2326
    piwek9
    Conditionally unlocked
    W wersji komercyjnej będzie wszystko . Na razie jest tak że jak w menu wybierzesz i zapiszesz opcję podtrzymania to po osiągnieciu zadanego napięcia ładowania przechodzi w tryb stabilizacji napięcia ładowania utrzymuje na stałym poziomie bez względu na wszystko 13,9 V a automatycznie reguluje prądem tak że niekiedy ale to sporadycznie najęcie różni się 0.1 V trwa testowania ostatnie poprawki i chyba coś trzeba jeszcze zoptymalizować bo przepełnienie stosu oscyluje w granicach max ale pozmieniam komendy polecenia skoki do podprogramów aby to wyeliminować
    Automatyczne odłączenie zasilania to prosta sprawa po przekroczeniu napięcia ładowania odłączam ładowanie dokonuję pomiaru po upływie 5 sek .i mam rzeczywisty stan naładowania jak mało to w trybie podtrzymania bardzo szybko dochodzi do naładowania gdyż ciągle reguluje prąd ładowania żeby utrzymać stałe napięcie i zauważyłem że teoretycznie naładowany aku. bierze jeszcze od 4 do 5A dopiero po 30 min spada do 2 A testuje na aku 120AH .
    Wniosek Aku ładowany zwykłym prostownikiem nie doładowuje nigdy aku. Porównałem z Black&decker za 1500 zł którego często używam robi dokładnie tak samo jak ta moja zabawka za 150 zł z czego lwia część to Trafo.
    I coraz częstsze mam myśli że może udało mi się nabazgrać cos fajnego co rzadko się zdarza
    :D
    ps.
    Napięcie w aucie jak sprawny regulator nigdy nie nigdy nawet ja załączysz wszystko co możliwe nie spadnie poniżej 13.6 V Jak coś robię bardzo dobre urządzenia do diagnostyki aut to moja mocna strona .
    Dlatego pisałem żeby programować auto trzeba napięcia 13,8V , a programuje się jak silnik nie pracuje więc napięcie szubko spada co grozi wiecznym uwalniem pojazdu.
    _jta zaczynam się interesować z nudów Perpetum mobile wiesz coś więcej ?
  • #2327
    aneuro
    Level 16  
    Jesteś bardziej zaawansowany i masz już coś działającego, ale mój prostownik już nie może sie doczekać kiedy będzie "smart" :D

    No właśnie przekonałem się do ATTiny45/85 bo wychodzi na to że spokojnie Vref można w nim podpiąć pod PB0 i przełączyć się na to referencyjne napięcie i wtedy pomiar napięcia na 4ech pozostałych ADC od GND do własnego VREF można sobie zrobić, a mi wystarczy tylko pomiar napięcia na acu (ew. prądu) i temperatury więc dwa(3y) dzielniki do dwóch pinów i ew. powinno smigać ;)
    Ten uP ma też wbudowany czujnik temperatury więc też będzie go można uśpić jak się zdobi za gorąco w obudowie....
    I co ciekawe jak tak poczytałem specyfikację tego TL431, to te referencyjne 2.5V+/-55mV to ma się chyba tylko do Vref KONKRETNEGO egzemplarza układu, a dokładność pomiaru w praktyce to ma dVRef/dVKA=-1.4mV/V w całym zakresie temperatur ( w wersji I industrial od -40 do 105 stopni), bo inaczej nic sensownego by się tym nie zmierzyło i przy 15V na dzielniku pomiar napięcia byłoby zbłędem ponad: +/-0.055V*15V/2.5V=0.33V nie licząć 2*1% zmiany rezystancji!!!
    Wydaje mi się, ze w praktyce wystarczy podczas kompilacji ta poprawkę zapodawać i skalibrować pod konkretny TL431... się okaze w praniu ale chyba to to jest.. początki zawsze sa trudne ale powoli wszystko zaczyna pasować ;)
    Ciekaw jestem jakie parametry ma ten wbudowany voltage reference w Attiny?
    Nie ma tego chyba w dokumentacji AVR tego uP... wtedy można by sobie odpuścić zewnętrzny Vref i mieć jeden pin więcej.

    Jak się nudzisz to zobacz co mi wyszło w symulacji ładowania kilku acu równolegle jednym trafo w prostym symulatorze analogowych układów-wychodzi na to że rzeczywiście gdyby kilka acu tak od po prostu kablami równolegle podłaczyć do jednego mostka prostownika, to.... bedą dążyły do osiągniecia takiego samego napięcia i spore prądy mogą pływać pomiędzy nimi i beznadziejnie to wygląda:
    Prostownik do ładowania akumulatorów (auto)
    Ale jak za przełączniki wstawi się diody tak jak na tutaj niżej to już nie ma oczywiście tego paskudnego efektu i w praktyce dowolnego typu acu i na rózne napięcia tym samym trafo można ładować, a jedyne co trzeba zrobić to monitorować napięcie i prąd na kazdym z aku z osobna, ale tak aby w sumie nie przekraczać wydolności trafo i ograniczać na każdym acu bo moge ladować acu 6V i 12V na tym samym prostowniku ;)
    Prostownik do ładowania akumulatorów (auto)
    A to oznacza, ze power mosfety chyba nie zabardzo się nadają bo po otwarciu prądy takie w obydwie strony się pojawią i nawet wyszło mi to na innej symulacji z mosfetami.
    Więc teraz rozumiesz dlaczego chcę dać na każdy aku oddzielny (tani bo przyda się ich kilka) układ do kontroli tego jednego i niezależnie od innych-bo to pozwoli ładować dowolne acu z jednego trafo (również innych generatorów w tym BLDC,a stabilizator który użyję ma zabezpieczenie przed przepięciami i zbyt dużymi napięciami poza zakresem jego pracy i przed odwrotnym podłaczeniem zasilania) i kilka jednocześnie -na dodatek pomiar napięcia i prądu i wszystkich parametrów acu będzie równolegle odbywał się na wszystkich ładowanych acu przez kilka uP, a na wyjściu kazdego takiego kontrolera można dać ew. układ wykonawczy na ULN2803A do sterowania MOSFETa lub czegoś innego (trzeba się jeszcze zastanowić), zrobiony tak że jak ktoś go nie potrzebuje to tylko sygnał CHARGE ON wykorzysta, albo wstawi tam kawałek płytki ze swoim układem wykonawczym np. na tyrystorze :D
    Dlatego dorzucam pomiar prądu i do tego to Atinny z 4ma ADC powinno spokojnie wystarczyć, bo będzie tylko cały czas monitorować stan napięcia, prądu i temp. acu i wysyłać sygnał CHARGE ON czy ładować czy nie ;)
    Jakiś schemat i kod źródłowy do tego uP AVR w C na licencji open source (GPLv3) na pewno udostępnię jak to oprogramuje i ktoś będzie zainteresowany przetestowaniem, bo właśnie podrukowałem specyfikacje i w gEDA brakujące symbole sobie podefinuje i jakieś PDFy z tego wypluję żeby w końcu jakąs płytkę wytrawić i zobaczyć jak się ma teoria do praktyki :)
  • #2328
    piwek9
    Conditionally unlocked
    NIECHCIAŁO MI SIĘ PISAĆ WIĘC CYTAT:
    Niektóre układy z serii AVR Mega (np. ATmega163) pozwalają na użycie wewnętrznego napięcia odniesienia, dlatego dodano parametr opcjonalny REFERENCE=, który można określić następująco:

    OFF napięcie podaje się z zewnątrz (końcówka AREF),
    AVCC napięciem odniesienia jest napięcie zasilające część analogową (między AREF a AGND należy dołączyć kondensator 10mF),
    INTERNAL wewnętrzne napięcie odniesienia 2,56V (między AREF a AGND należy dołączyć kondensator 10mF).
    Dla kontrolerów nie posiadających tej funkcji opcja ta jest ignorowana.
    Wszystko zależy jak sobie procka skonfigurujesz masz 3 możliwości
    In _temp1,ADCSR
    Ori _temp1,XXX
    Out ADCSR,_temp1
    Do pomiaru prądu trzeba użyć 2 porty ADC już się nie mogę doczekać czy ty też będziesz miał tr cholerne problemy ze stabilnym pomiarem jak każdy czy uda ci się je okiełznać .
    A już pomiar temperatury nie cyfrowy to dopiero hula góra dół oscyluje w granicach +-10stC a wszystko to przez prąd tętniący .no stabilizacja nie wchodzi w grę ,najciekawsze z tego wszystkiego że na symulatorach to kur..... tak pięknie działa ale nie w praktyce.
    Ja to wszystko zrobił bym na jednym procku , kable do aku musisz dać więc co za problem do klemy ujemnej przykręcić czujnik temperatury i równolegle tylko jednym kabelkiem przesyłać dane o temperaturze.
    Zapętlił bym pomiar napięcia z rozsądnym opóźnieniami i odczytywał po kolei napięcia na każdym aku, zrobił uśrednienie pomiaru nawet z 500 pomiarów to i opóźnienia do wyświetlanie nie trzeba było, każdy pomiar podnosił by jakąś zmienną pomocniczą o 1 np. zmienna licznik
    i wyświetlał w tym czasie napięcia na danym aku .zrobił na końcu pomiarów porównanie i skoczył do podprogramu pod tytułem ładowanie aku1 dla przykładu . tutaj zrobił bym wywoływanie procedury pomiary napięcia aku które ładuję ustalił czy ma ładować do naładowania czy jakiś czas i skoczył do głównego programu zmierzył napięcia i wyłuskał następne aku do ładowania zaciągnął je do ładowania i tak do bólu .Jednak moja koncepcja wymaga kilku podprogramów zresztą pewnie i tak będziesz robił bo się nie da w jednym
    na jednym porcie zrobił linijkę led jak bez wyświetlacza i OK
    całość
    trafo , procek 8 tranzystorów i 4 tranzystory/tyrystory czy tam co i ze 20 oporników ,kilka kądziołków a i mostek jaki tam.
  • #2329
    aneuro
    Level 16  
    Dzieki za kawałki kodu zawsze moga się przydać ;)
    Z tym Aref to chodzilo mi o tolerancje tego wbudowanego napięcia referencyjnego i jego odchyłki czyli dAREF/2.56V=? tego nie mogę znaleźć za bardzo, bo dokumentacji ATTiny45 dotarłem jak to ustawić i że można w tym uP.

    Nie wiem jak Ty ale ja ma zamiar kontroler acu zmieścić w... kablu, bo takiej wielkości jest ten Attiny45 :D
    Prostownik do ładowania akumulatorów (auto)
    To już profanacja uP - bez PCB go odpalili :D
    Też chciałbym aby działał przy 3V z acu awaryjnie-tzn zabezpieczenie na reset poniżej 3V będzie bo obsługuje to i podobno ten uP spokojnie przy 3V powinien działać.

    PS: Znasz jakieś sensowne narzędzia do deasembleracji kodu tak aby przejrzeć co produkuja te różne kompilatory? Akurat avr-gcc ma avr-objdump i działa, ale jak na postać binarną już zamienię taką do wgrania do uP zoptymalizowane na rozmiar (właczanie diód ma ok. 160 bajtów) to nie zabardzo daje się to zdeasemblerować za pomocą avr-objdump'a pod Linuxem...
  • #2330
    piwek9
    Conditionally unlocked
    REFERENCE jak użyjesz polecenia żeby używał napięcia ref. Wewnętrznego to jest ono 2.56V jak ustawisz na AVCC to to napięcie program automatycznie ustawi na napięcie zasilania 5V w praktyce 4.95V jak wyłączysz to znaczy że napięcie podasz sam z zewnątrz.
    dzielnik Określa stopień podziału zegara systemowego. Dozwolone są wartości: 2, 4, 8, 16, 32, 64 lub 128.
    taktowany przebiegiem o częstotliwości w granicach 50-200kHz,
    Zwracana liczbę od 0 do 1023.
    Dzielnik napięcia dobierasz tak że przy max napięci jakie chcesz mierzyć napięcia na ADC nie przekroczy 5V
    Resztę wyliczasz zależy jak przeskalujesz jakie nap. Ref . formatujesz jak ma być wyświetlane np."00.00"
    Deasembler nie istnieje bin nie da się odwrócić . Robi się to podsłuchując działające urządzenie lub program
    Miałem zamiar chyba za dużo napisać ulalalala :D
  • #2331
    aneuro
    Level 16  
    W serii tych blogów jest chyba prawie wszystko łopatologicznie opisane o programowaniu AVR w C:
    Starting Atmel AVR C Programming Tutorial :)
    Sporo ciekawych projektów tam jest szczegółowo opisanych i oprogramowanych... teraz jestem przekonany że dam radę oprogramować ten prostownik i nie tylko na uP AVR ;)
    piwek9 wrote:

    Deasembler nie istnieje bin nie da się odwrócić . Robi się to podsłuchując działające urządzenie lub program

    Znalazłem w końcu-da się zdeasemblerować HEXa którego wysyłamy przez ISP do uP AVR;) Można zobaczyć jaki wpływ na kod mają opcje kompilacji.
    W tym wątku jest popisane jak to zrobić:
    AVR GCC forum - Using avr-objdump to disassemble hex code
    Zrobiłem na podstawie tego skrypt:
    >>>>>>>>>>
    #!/bin/sh
    FHEX=$@

    if ls -l $FHEX
    then
    cat $FHEX
    avr-objdump -h $FHEX
    avr-objdump -j .sec1 -d -m avr $FHEX
    fi
    <<<<<<<
    No. operacja NOP na AVRach ma kody: 0x00 0x00 .
    A wiem to z listingu z kompilacji w avr-gcc gdzie jako delay NOP wykorzystuję:
    >>>>>>>>>>>>
    0000005a <noop>:
    #define _NOP() __asm__ __volatile__ ("nop");
    #endif

    inline void noop() {
    // No operation
    _NOP();
    5a: 00 00 nop
    }
    5c: 08 95 ret
    <<<<<<<<<<<<<

    Hex do przesłania po ISP wygląda tak:
    :1000000010C02AC029C028C027C026C025C024C0CF
    ...
    :10005000B107E1F70AD042C0D3CF0000089502C033
    ...
    :00000001FF

    W drugiej linijce jest definicja naszej funkcji "0000 0895";)

    A teraz HEXa traktujemy takim skryptem co zapodałem i dostajemy:
    $ avr-disasm proacu.hex >proacu.disasm
    -rw-rw-r-- 1 aneuro aneuro 643 2012-06-21 12:46 proacu.hex
    I znowu widzimy znaną nam definicję funkcji noop() i zaraz za nią delay(uint noops),
    natomiast dzięki temu że zadeklarowalismy ją jako "inline" to tam gdzie wołam ją 3x w main()
    (w 84: ... 88:) nie ma żadnych skoków tylko jest rozwinięta w miejscu mimo tego że program z opcja -Os (na jak najmniejszy rozmiar wynikowego kodu) był skompilowany ;)
    >>>>>>>
    .......
    5a: 00 00 nop
    5c: 08 95 ret
    5e: 02 c0 rjmp .+4 ; 0x64
    60: 00 00 nop
    62: 01 97 sbiw r24, 0x01 ; 1
    64: 00 97 sbiw r24, 0x00 ; 0
    66: e1 f7 brne .-8 ; 0x60
    68: 08 95 ret
    ....
    ### A tutaj już główny program uP main()
    7e: 87 b3 in r24, 0x17 ; 23
    80: 86 60 ori r24, 0x06 ; 6
    82: 87 bb out 0x17, r24 ; 23
    84: 00 00 nop
    86: 00 00 nop
    88: 00 00 nop
    .......
    <<<<<
    Min widać że w 7e: 0x17 ze specyfikacji tego uP to... rejestr DDRB.. i "ktoś" tutaj ustawia wybrany pin (piny bo 0x06 to binarnie 0000 0110 czyli porty PB2 i PB1 ) na output uzywając rejestru r24 uP :D
    Itd. itd.. można sobie analizować spokojnie co tam sie wyprawia.
    Może to się komuś przyda, bo ładnie widać jakiej jakosci kod generuje jakiś kompilator na AVR i czy nie zostawia "śmieci" a mamy tylko kilka KB flashu na program więc jest o co walczyć.
    BTW: NOP na AVR trwa 1 cykl zegara więc łatwo policzyć ile trzeba na ok. 0.02s czyli okres 50Hz...
    A jak wiemy ile coś trwa czasu to już można mierzyć jak zmienia się to w czasie ;)
  • #2332
    piwek9
    Conditionally unlocked
    Nie wiem po co ci to analizować ?
    Trzeba pisać i tyle
    Ja to analizuje jak coś trzeba że tak powiem zaadoptować do potrzeb własnych, co nieraz trwa kilka miesięcy i gra warta sieczki jak coś jest warte fortunę inaczej olać za ciężka praca podam przykład przeanalizowanie 12bit krypto żeby umieć rozkodować VIN w BMW trwało w 2 osoby równy tydzień więc przeanalizowanie 16k kodu lata świetlne
    Łatwiej napisać od początku swoje tysiąc razy
    :D
    ps.
    zdeasemblerować ,po co na co i do czego
    Kod źródłowy to podstawa
  • #2333
    aneuro
    Level 16  
    piwek9 wrote:
    zdeasemblerować ,po co na co i do czego
    Kod źródłowy to podstawa

    Problem czasami w tym, że w zależności od ustawień opcji kompilacji różny kod wynikowy jest generowany i wtedy takie narzędzia się przydają do optymalizacji....

    Ale mam bardziej "przyziemny" temat-pomiar prądu za pomocą jednego pinu i tylko pomiaru jednego napięcia.
    Interesuje mnie pomiar prądu np. za pomocą czujnika Halla liniowego, bo ile wat ten opornik 0.1R wytrzyma jak popłynie np. 10A? No wychodzi RI^2=0.1*10*10=10W... to sporo...
    Więcej jak 25A nie potrzebuję i nie aż tak dokładnie a nawet na 8iu bitach pomiar by dawał 25A/256= ok. 0.1A i spadek napiecia na tym oporniku ok. 2.5V?
    Ale nie można by kilka zwojów zrobić i wstawić tam liniowy czujnik Halla, który zasilany jest 5V i próbować mniej więcej oszacować prąd?
    Można to wyekranować, żeby nie rozsiewać...
    Komercyjne halotrony na duże prądy do bezdotykowego pomiaru to już drozsze zabawki...
    jak np ten układ opisywny w tym wątku:
    Pomiar prądu za pomocą uC

    Tutaj z kolei w zawiły sposób na op ampie to robili z różnym skutkiem:
    AVR mega8/48 ADC + pomiar prądu na 0,1R
    Na wzmacniaczu nie dałoby rady (może tym o którym piszą MCP601/MCP607) dostac na wyjsciu z op ampa napiecia od 0V-ok. 5V zasilania i tylko na podstawie tego jednego pomiaru oszacować prąd?
    Pobór przez uP i tak bedzie znikomy w porównaniu z 5-10A płynącymi do acu chyba...
    Ni mniej ni więcej interesyje mnie pomiar tego prądu najlepiej bezdotykowo na podstawie jednego napięcia... idea z czujnikiem Halla mi się podoba...tylko czy by to działało bez tego układu Aledrogo ACS712
    Allegro ACS712
  • #2334
    piwek9
    Conditionally unlocked
    Kolego o czym ty piszesz ADC jest 10bit , zwraca liczbę od 0 do 1023 , można go taktować częstotliwością od 50 do 200khz
    Następny problem to : czas przetwarzania nie jest stały (od 125 do 520 ms) i zależy od przetwarzanej wielkości analogowej.
    Następny problem to prąd po wyprostowaniu są moment gdy przechodzi przez zero i to jest na dodatek zmienna różna zależna od jakości diody
    Pisałem ci już kilka razy o tym ale nie bierzesz tego pod uwagę a praktyce to największy niedający spać problem , a oznacza ty tylko tyle że mierzone napięcie będzie skakać jak kot po płocie . Z jednej strony chcesz tanio a tu Hallotron ulalalalala .
    Czy to będzie bocznik na rezystorze czy wzmacniacz bez różnicy będzie dokładnie taki sam problem .
    Można się go pozbyć dająć baterię kondensatorów (koszt i duży rozmiar)
    Ale procesor może to załatwić w 95% (procesor który sobie z tym poradzi) robiąc wstępną stabilizacje napięcia - wymaga dodatkowego Mosfet i zapasu na trafo .
    Dim V as Integer 'napięcie mierzone
    Dim V1 as integer 'napięcie ustawione do stabilizacji
    Dim Aas string *6
    Dim dzielnik as single
    If V1<V then pwm1a=pwm1a+5
    If V1>V then pwm1a=pwm1a-5
    A=dzielnik *0.048
    A=fusing(V," 00.0")
    Lcd "Napiecie ";A;" V"
  • #2335
    aneuro
    Level 16  
    piwek9 wrote:
    Kolego o czym ty piszesz ADC jest 10bit , zwraca liczbę od 0 do 1023 ,

    Nie no przecież jak wyrzucisz 2a najmniej znaczące bity to z 1023 zrobi się właśnie 255, czyli tak jakbyśmy podzielili przez 4y albo przesunęli o 2 bity w prawo ;) Czyli na 10 bitach mam przy "single ended conversion" ADC10=1024*Vin/Vref czyli dla Vref 2.5V i Vin=2V ADC10=819,
    ale jak wystarczy mi rozdzielczość 8bit to ADC8bit=256*Vin/Vref=(1024/4)*Vin/Vref=(1024*Vin/Vref)/4, czyli w przykładzie: ADC8=ADC10/4=819/4=205. Nie zapominaj że dzielenie przez 4y na uP to przesunięcie w lewo o 2a bity czyli odrzucenie ich ;) A to oznacza że jak mam 256 bajtów SRAMu w Attiny44/45, to mogę pamietać jakieś ostatnie 100 wartości prądu i 100 napięcia i jeszcze starczy na temperaturę tak z 10.

    piwek9 wrote:
    można go taktować częstotliwością od 50 do 200khz
    Następny problem to : czas przetwarzania nie jest stały (od 125 do 520 ms) i zależy od przetwarzanej wielkości analogowej.

    Nie pomyliło Ci się tutaj coś z tymi czasami? W dokumentacji ADC w ATTiny44/45 piszą że pierwsza konwersja trwa 25 cykli ADC (jak się właczy ADEN), a normalnie 13 ADC, czyli przy zegarze ADC ustawionym na 100kHz mamy: czas cyklu 0.00001s co daje typowy czas konwersji: 0.000130s czyli 130 us (micro). Chyba palcówkę jakaś zrobiłeś w tym poście ;)
    Wychodiłoby że 100 pomiarów mogę spokojnie wykonać w 0.01s a to już połowa okresu prądu 50Hz, czyli w ciągu sekundy będę miał ok. 200 bajtów z zadawalającą rozdzielczością 8bit bo interesuja mnie ampery a nie mA. Zresztą częstotliwość ta mozna do 1Mhz zwiekszyć jak nie potrzebuje się rozdzielczości 10bit a chce się mieć więcej danych...
    Nie wykluczone, że będę miał 2a Attiny45-jeden dedykowany do pomiaru prądu, a drugi napięcia i temperatury-a to w cenie jednego Attiny44.
    Czyli prąd będę w sposób ciągły monitorował poprzez oversampling z ADC ustawionym np. na max 1Mhz ;) Dlaczego uP dedykowany do pomiaru prądu? Bo napięcie nie będzie tak szaleć a chcę najszybciej jak można reagować na przekroczenie dopuszczalnych dla konkretnego acu prądów. Zresztą wtedy mozesz napisać na pudełku z takim prostownikiem "wieloprocesorowy" i nikt nie ma prawa tego zakwestionować ;)

    piwek9 wrote:
    Z jednej strony chcesz tanio a tu Hallotron ulalalalala .

    Tanio ma też być w eksploatacji i małe straty x10 to już większe, więc jak tylko się da to najlepiej bezdotykowy pomiar prądu (w prostowniku na 10 acu jak będzie jeden halotron analogowy za ok. 15PLN to się opłaci).
    Tutaj ktoś pisze że może się to dać zrobić na czujnikach KMZ:
    Analogowy czujnik Halla kontra KMZ10
  • #2336
    _jta_
    Electronics specialist
    Po co hallotron? Z oporności, jaką ma parę centymetrów przewodu miedzianego można wziąć spadek napięcia,
    wzmocnić go z dokładnością do kilku setnych procenta i z niego wyznaczyć prąd, byle oporność przewodu była
    dokładnie znana (niestety miedź zmienia oporność z temperaturą, może użyć manganinu) i ADC było dokładne.
    Kwestia użycia odpowiedniego OpAmp-a - ICL7650 pozwala uzyskać taką dokładność, a kosztuje kilka zł.
  • #2337
    piwek9
    Conditionally unlocked
    Ja jestem za głupi na takie wywody pisałem ci jestem prosty człowiek i nie rozumiem badań naukowych prowadzanych przez ciebie .
    Nie widziałem adc 8bit może są , nie widziałem możliwości konfiguracji ADC8
    Nie widziałem żeby można było przeskalować ADC wyżej niż 128
    Nie widziałem żeby jakiś adc pamiętało 100 pomiarów ,zawsze sądziłem że pamięta pomiar do momentu rozpoczęci następnej konwersji , a tu proszę są z pamięcią 100 jak już pisałem jestem głupi zaczynam się troszeczkę doszkalać
    Dzięki za zwrócenie uwagi
    :cry:
  • #2338
    aneuro
    Level 16  
    piwek9 wrote:

    Nie widziałem żeby jakiś adc pamiętało 100 pomiarów ,zawsze sądziłem że pamięta pomiar do momentu rozpoczęci następnej konwersji , a tu proszę są z pamięcią 100 jak już pisałem jestem głupi zaczynam się troszeczkę doszkalać

    Pisałem tylko że chcę SRAM AVRa wykorzystać do pamietania 100-200 (jak jest 256bajtów SRAM) ostatnich odczytów (bo 8bitów myślę że wystarczy aby zapamiętać prąd +/-0.1A przy 25A max) z dużą częstotliwością na zasadzie kolejny pomiar wyrzuca najstarszy i tak w kółko cyklicznie, a co jakiś czas CPU obrabia te dane i wyznacza chwilowy prąd I na podstawie pamietanych ostatnich 100-200 pomiarów... dla napięcia trzeba by policzyć ile trzeba, ale jak bedę miał chyba 2 uP to starczy spokojnie SRAMu-w sumie 512 bajtów w 2xAttiny44.

    Ja też już chyba zgłupiałem, bo gość w tym wątku mi wciska, że nie dam rady galwanicznie odseparować dwóch układów (bez drogiej przetwornicy DC/DC) za pomoca optoizolatora PC817 który ma przebicie 5kV :D Już nawet dopisałem że laptop w któym jest ten LPT na własnych bateriach będzie chodził, a płytka z programowanym uP (AVRem) zasilana swoją baterią... a pomiedzy nimi jest optoizolacja...
    A tylko chciałem mieć programator DAPA do AVRów z optoizolacją ;) -galwanicznym odseparowaniem LPT i płytki uP na której bedzie tylko dioda, 2a oporniki i podstawka do włożenia programowanego ew. uruchamianego uP-i każda taka płytka na jeden z seriii ATTiny45/ATTiny44...adapter do LPT DB25 oczywiście tylko jeden...
    Programowanie AVR poprzez ISP (DAPA z uisp) pod Linux
    I bądź tu mądrym ;)
  • #2339
    piwek9
    Conditionally unlocked
    Programator na LPT używam tylko do programowania w płycie testowej i jak sięgnę pamięcią cięgle mam z nim problemy , głownie pierwsze uruchomienia zaczyna programować dopiero za 3 , 4 podejściem , nie wiem czym to jest spowodowanie bo nigdy nie doszukiwałem się rozwiązania problemu .Natomiast Si-Prog z tej strony jeszcze nigdy minie nie zawiódł a używam go nawet do programowania w działającym układzie , a nieraz nawet bez podawania zewnętrznego zasilania zaznaczę że programuję nawet dość poważne urządzenia i nie ma problemu.
    Koszt żaden , program jest OK
    http://www.lancos.com/siprogsch.html
    avrdude i inne na USB jak dla mnie szkoda czasu i nerw to zabawki i to wkur........ ludzi , Poza tym i tak trzeba mieć jakiś porządny programator szeregowy jak przypadkowo bity źle się ustawi było czym wrócić .
    galwaniczne odseparowanie gość ma rację po co na co to ? na takich napięciach.
    Ja wybrał bym atmega8 SMD i mam do dyspozycji 2x tyle i taniej .
    Oczywiście jakieś stałe można zdeklarować i zapisać do eeprom ale ja tu nie widzę wiele stałych , a użycie eeprom do zmiennych to po niedługim czasie procek do kosza .
  • #2340
    aneuro
    Level 16  
    piwek9 wrote:

    galwaniczne odseparowanie gość ma rację po co na co to ? na takich napięciach.

    Ale pytanie tam było nie czy izolacja potrzebna czy nie, ale jak ją zobić jak najprościej bazujac na tym prostym programatorze, tylko zawsze znajdą się tacy, co zamiast napisac jak to zrobić to od razu po co ;)
    Tam chyba wyjście optoizolatora w układzie darlingtona z jednym tranzystorem npn załatwi temat.
    A PCta będę chciał pewnie i tak wykorzystać do... zdalnego resetu i komunikacji juz po zaprogramowaniu ;) Ten sam adapter do tego mi wystarczy póki co, bo podobnych po LPT używają do sterowania w prostych CNC. Przynajmniej kabel w LPT mozna zabezpieczyć przed wypadnięciem, a to usb mnie irytuje, bo zawsze ten kable gdzies tam się rusza w gniazdku....