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

Logger modelarski na bazie atmegi64, adapter o FT232RL

zbuffer 20 Sie 2009 13:11 4924 28
  • #1 20 Sie 2009 13:11
    zbuffer
    Poziom 10  

    Witam!
    Buduję układ loggera modelarskiego na bazie atmegi64.
    W układzie zastosowana będzie pamięć dataflash w której zapisane zostaną pomiary. Jej odczyt ma być możliwy przez adapter podłączany do PC. Adapter będzie korzystał z UARTu i będzie oparty o FT232RL.
    1. Czy przy zastosowaniu FT232RL mikrokontroler może być taktowany własnym zegarem? bo napięcie zasilania wynosić musi 3,3V a nie 5 V więc zegar 12 Mhz pochodzący z FT jest za wysoki dla atmegi.
    2. Czy FT232RL mam zasilać bezpośrednio z 5V USB a układ z mikrokontrolerem z wyjścia 3V3OUT układu FT?
    3. Co się stanie jeśli w układzie loggera mam regulator 3.3V który normalnie jest zasilany z wtyczki baterii a w momencie podłączenia USB nie będzie wykorzystywany? Czy nie zaszkodzi mu że na VOUT pojawi się 3,3V a na VIN nie będzie nic?
    4. Czy do rozpoznania że podłączony został interfejs do transmisji i należy przejść w tryb czytania pamięci można wykorzystać jakoś linie UARTu? odczytać poziomy? czy może przeprowadzać jakąś próbną inicjalizację transmisji która po zwróceniu "false" będzie oznaczać że tryb pracy jest normalny?
    Czy można/należy to zrobić używając boot loadera?
    5. jakie zabezpieczenie trzeba zrobić żeby w razie podłączenia adaptera do układu zasilanego z zewnątrz nie spalić żadnego z układów przez dwa źródła napięcia 3.3V?
    Najlepiej gdyby dało się dalej normalnie czytać pamięć/komunikować z loggerem.
    6. Mam zamiar użyć przetwornika A/C MCP3202 - jakie filtrowanie powinienem zastosować? będzie on wykorzystywany do pomiaru napięcia pakietu oraz napięcia na czujniku prądu Allegro ACS752SCA-100 (oczywiście przez dzielniki)
    7. Jakie powinno być filtrowanie napięcia wejściowego z pakietu do układu gdy mamy do czynienia ze skokami napięcia rzędu 3-4V (napięcie w czasie pracy od 11V do 6V, ale najlepiej gdyby wspierało też wyższe napiecia...do 30V)? (napiecie podawane jest na regulator low drop 3,3V)
    8. Jeśli będę miał zewnętrzny moduł GPS i jego zasilaniem będzie sterowała Atmega to jeśli ona będzie pracować i pojawi się napięcie na UART mimo że moduł nie będzie miał zasilania bo Atmega go odłączy to czy GPS może ulec uszkodzeniu?

    Pozdrawiam

    0 28
  • #2 20 Sie 2009 13:58
    tmf
    Moderator Mikrokontrolery Projektowanie

    ad 1. moze byc taktowany wlasnym zegarem. Ew. mozesz wykorzystac zegar z FT, daj tylko jakis szeregowy rezystor, wbudowane w strukture ukladu diody zabezpieczajace obetna sygnal do wymaganego poziomu. Ich Imax wynosi ok. 1mA.
    ad 2. Mozna, dla pewnosci sprawdz wydajnosc pradowa tego wyjscia, jesli jest niewystarczajaca to uzyj wersji P procesora.
    ad 3. Sprawdz w nocie katalogowej zastosowanego regulatora.
    ad 4. Po prostu PC niech wysle polecenie jakies, twoj procek je odbierze i na to zareaguje. W koncu i tak jakis protokol transmisji musisz miec.
    ad 5. Troche nie rozumiem o co ci chodzi. Mozesz jasniej?
    ad 6. Tu nie mam pojecia, ale BTW, dlaczego nie chcesz wykorzystac wbudowane w procesor ADC? Potrzebujesz 12 bitowej rozdzielczosci? ADC procka + zewnetrzne zrodlo referencyjne powinno spelnic twoje oczekiwania.
    7. Mysle, ze nic specjalnego, regulator sobie poradzi. Policz tylko ile twoj uklad ciagnie pradu i czy przy 30V nie bedzie na regulatorze wydzielalo sie za duzo mocy.
    ad 8. Tez zalezy od modulu, moze nic sie nie stac, moze ulec uszkodzeniu. Zawsze zamiast sterowac zasilaniem mozesz go po prostu uspic, wtedy tez bedzie bral marginalna ilosc pradu.

    0
  • #3 20 Sie 2009 14:27
    Mat_91
    Poziom 25  

    Z tego co zrozumiałem to w momencie podłączenia układu do PC układ nie będzie zasilany z bateri- czy tak?

    W takim razie FT232 zasilasz z USB, jego wyjście regulatora 3V3 podpinasz do IOVCC i do niczego więcej go nie wykorzystujesz- to wyjście ma wydajność prądową bodajże 50mA więc dla uC, gps, pamięci... może być za mało:)
    Oprócz tego sam stabilizator 3V3 który wykorzystujesz do zasilania uC zasil z USB- i po problemie. Stabilizatorowi sie nic nie stanie no i nie narazisz FT232 na zbytnie obciążenie.

    A tylko w takim rozwiązaniu nie możesz mieć podpiętej baterii w momencie zasilania z USB.

    0
  • #4 20 Sie 2009 16:32
    tmf
    Moderator Mikrokontrolery Projektowanie

    Wystarczy dac diode i po klopocie. Problem z podlaczeniem LDO bezposrednio pod USB polega w tym, ze lamie to specyfikacje USB - urzadzenia niezainicjowane nie moga brac wiecej niz 0,5mA. Gole LDO moze ciagnac wiecej.

    0
  • #5 20 Sie 2009 16:39
    Mat_91
    Poziom 25  

    Ale przecież to będziesz miał jako urządzenie zainicjowane:p Urządzeniem tym będzie FT232, reszte prądu będzie pobierał układ docelowy.

    Problem z podłączeniem uC+GPS+dataflasha do wyjścia 3V3 układu FT232 polega na tym że ono ma dość nikłą wydajność prądową, a układ będzie pobierał na pewno więcej prądu.

    EDIT:
    W datasheet od FT232R wydajność prądowa wyjścia 3V3out = 50mA. W takim wypadku podłączenie całość pod ten pin odpada.

    Pozostają 2 opcje:
    a) zasilasz zewnetrzny stabilizator 3V3 z USB
    b) nie zasilasz całego układu z USB, jednak całość wymaga podłączenia zewnętrznego zasilania.

    0
  • #6 20 Sie 2009 18:15
    zbuffer
    Poziom 10  

    Dziękuję wszystkim za odpowiedzi!
    Zaczyna mi się układać wszystko w głowie....

    1. Jakie taktowanie atmegi mogę zastosować żeby to z tym FT działało? 8 MHz będzie ok?

    2. Układ ma być zrobiony tak żeby działał gdy:
    a) jest podpięty tylko do adaptera -> odczyt danych, reszta może być nieaktywna (jakieś programowe wyłączenie)
    b) jest podpięty tylko do badanego akumulatora(układu) -> monitorowanie i zapis danych, wszystkie czujniki działają
    c) jest podpięty zarówno do układu badanego jak i do adaptera -> odczyt parametrów on-line jak i odczytywanie pamięci itp., wszystko sprawne

    3. Nad użyciem ADC procka się jeszcze zastanawiam ale niestety przy tym czujniku prądu dostanę odczyt z dokładnością 0,2A w najlepszym przypadku ....przy zewnętrznym 0,05A.

    Oto co wymyśliłem:
    Logger modelarski na bazie atmegi64, adapter o FT232RL

    Regulator 5V to step-down LM2575S-5.0 - czy to nie zaszkodzi układowi, który korzysta z ADC? bo wybrany został tylko dlatego, że nie widzę regulatora low drop który wytrzyma ponad 25 V.
    Bonusem jest pomysł rozwiązania zasilania dzięki jego wejściu ON/OFF....o ile jest dobry;)
    Regulator 3.3V to LM1117.

    Mój pomysł jak widać polega na wykorzystaniu włącznika przetwornicy. Czy takie coś ma prawo działać? Czy przetwornicy nie zaszkodzi napięcie 5V nie pochodzące od niej samej jak zostanie wyłączona? (zarówno jak będzie podpięta do baterii jak i wtedy gdy nie)

    EDIT: zorientowałem się że to nie ma prawa działać! przecież będzie 5V niezależnie od źródła na ON/OFF :D :P
    Da się jakoś ten pomysł w inny sposób wykorzystać? zamiast rezystora jakieś inne elementy?
    Może MOSFET jakoś wpięty między rezystorem a 5V wychodzącym z przetwornicy?

    Z góry dzięki za pomoc!

    0
  • #7 20 Sie 2009 18:53
    tmf
    Moderator Mikrokontrolery Projektowanie

    Do Mat_91: niestety nie ma tak pieknie. Urzadzenie jest zainicjowane dopiero po enumeracji. I dopiero potem moze pobierac tyle pradu ile wskazalo w sygnaturze. Do tego czasu 0,5mA. Oczywiscie to i tak bedzie dzialalo na 99% portow USB. 50mA w zupelnosci wystarczy dla procesora i dataflash, z zasileniem GPS istotnie moze byc gorzej. Ale ten ma byc zasilany tylko z baterii jak mniemam.

    Do zbuffer:
    ad 1. Taktowanie ATMegi moze byc dowolne, wybierz takie, zeby dalo sie uzyskac pozadane przez ciebie tempo transmisji RS. A moze lepiej od razu zastosowac jakiegos AVR z USB?

    ad 2. Zalatwisz to procesorem. Kup jakis w wersji P, one biora mniej niz 0,4mA. FT zasil z USB, reszte z baterii. Dodatkowo mozesz Vcc USB podpiac na jakis pin procesora, coby wiedzial, ze zostal podpiety do PC, chociaz FT chyba ma stosowne wyjscie informujace o tym fakcie.

    ad 3. Jesli myslisz, ze realne uzyskanie 12-bitowej rozdzielczosci bedzie latwe to cie rozczaruje :) Jak uda ci sie uzyskac 10-bitow to bedzie sukces. Zastosuj najnizsze mozliwe Vref dla ATMegi i bedzie git - to chyba kolo 1,24V,. Zawsze mozesz zastosowac oversampling jesli chcesz dostac kolejne bity.

    Co do zasilania - nie mozesz zrobic wszystkiego na 5V?
    Przetwornica z zewnetrznym zasilanie bedzie dzialac ok.
    Co do sterowania zasilaniem - FT daje ci sygnal dla p-MOSa wlaczajacego zasilanie. Przejrzyj noty aplikacyjne z FT232, tam masz wszystko dokladnie rozrysowane.

    0
  • #8 20 Sie 2009 19:18
    zbuffer
    Poziom 10  

    tmf:
    ad1. Gdzie można takowy kupić bo jakoś nie widzę....? wiem że takie istnieją.
    ad2. Nie załatwię procesorem jak będzie podłączony jednocześnie adapter i układ badany(akumulator)....przecież chodzi ciągle o te dwa źródła napięcia....jak je przełączać.
    ad3. jeżeli na 12 bitowym uzyskam ledwo 10 bit to co dopiero na 10 bitowym.....? czemu najniższe napięcie referencyjne?

    Zasilać nie mogę z 5V bo mi to tylko utrudni życie....GPS działa na 3,3V, dataflash 3,3V.... znowu jakieś konwertert poziomów i inne cuda trzeba będzie robić.

    Co do noty katalogowej to faktycznie na jednym z pinów może być sygnał #PWREN dla pMosfeta tylko jak teraz tego użyć w układzie?
    wystarczy jak przez pMosfeta puszczę 5V z usb do pinu ON/OFF przetwornicy i pin ten przez opornik dużej wartości do GND?(bramka pod PWREN)
    natomiast samo zasilanie USB 5V puszczę przez drugiego pMosfeta do regulatora 3,3V (bramka pod PWREN)???
    czy w takim wypadku układ będzie poprawnie działał jak podłączę/odłaczę akumulator?
    czy przetwornica nie siądzie jak dostanie na ON/OFF sygnał dodatni, na wyście sygnał dodatni a na wejściu nie będzie nic?

    0
  • #9 20 Sie 2009 20:26
    Mat_91
    Poziom 25  

    Jak dla mnie to Ty kombinujesz trochę za bardzo:)

    W momencie podłączenia USB przetwornice powinieneś wyłączyć czyli podać stan wysoki na pin ON/OFF, wykorzystujesz do tego bezpośrednio pin PWREN. Za przetwornicą dajesz diode shotkiego, za dioda podpinasz zasilanie z USB a dalej już masz zwykły LDO 3V3.

    0
  • #10 20 Sie 2009 21:16
    zbuffer
    Poziom 10  

    Mat_91: mógłbyś to jakoś narysować czy coś bo nie bardzo rozumiem co znaczy za?
    Jak narysujesz to może odpowie na moje pytanie ale na wszelki wypadek je zadam: czy bierzesz pod uwagę że napięcie z USB pojawi się dużo wcześniej niż napięcie na PWREN?

    0
  • #11 20 Sie 2009 21:58
    Mat_91
    Poziom 25  

    Nom o tym ze PWREN zadziała z opóźnieniem szczerze mówiąc zapomniałem.

    Tak czy inaczej w załączniku przykład (dosłownie poglądowy wyjaśniający tylko idee).

    Logger modelarski na bazie atmegi64, adapter o FT232RL

    Dioda zabezpiecza LM2576 przed pojawieniem się napięcia z USB na wyjściu układu gdy na jego wejściu napięcia nie będzie. Nom i tak czy inaczej wykorzystujesz tylko jeden mosfet a nie 2 tak jak Ty proponowałeś:)

    0
  • #12 20 Sie 2009 22:55
    tmf
    Moderator Mikrokontrolery Projektowanie

    O wersje P zapytaj u dystrybutora Atmela. Nie kupowalem ich, bo jakos tak udalo mi sie je dostac przy okazji.
    Co do realnej rozdzielczosci ADC - problem nie lezy w tym, ze samo ADC cos psuje i nie uzyskuje deklarowanej rozdzielczosci, tylko w zakloceniach, ktore powoduja, ze najmlodszwe bity mozesz uwazac za generator liczb losowych :) Zrob testy zanim wpakujesz sie w rozwiazanie bez wyjscia. Poczytaj tez o filtrowaniu zasilania dla ADC. Niskie napiecie referencyjne daje ci to, ze ta sama rozdzielczosc (10 bitow) bedzie przekaladac sie na mniejsza skale napiecia, czyli rozdzielczosc w interesujacym cie przedziale napiecia (jak mniemam chcesz mierzyc spadek napiecia na kontrolnym rezystorze) wzrosnie. Do tego mozesz tez uzyc pomiaru roznicowego. Jesli zmiany napiecia na tym rezystorze nie sa zbyt szybkie to mozesz uzyskac dodatkowe 2-4 bity rozdzielczosci stosujac oversampling.
    Co do zasilania to zrobilbym to po prostu tak: dioda z USB do LDO, druga dioda z pakietu baterii do LDO. Bedzie to dzialac tak, ze dopoki sa baterie to uklad jedzie z baterii (zakladajac, ze daja napiecie wieksze niz USB), jak odlaczysz pakiet to uklad bedzie ciagnal prad z USB. Jedynie FT podlacz bezposrednio pod usb. Chyba najprosciej. Jesli z jakiegos powodu przy pracy na USB baterie nie powinny zasilac ukladu to wykorzystaj +5V z USB do sterowania nMOSem wylaczajacym baterie.

    0
  • #13 20 Sie 2009 23:58
    zbuffer
    Poziom 10  

    Mat_91: ok. teraz rozumiem. dzięki za schemat!
    szczerze mówiąc nie wiem czemu chciałem używać tego drugiego mosfeta :D chyba się zasugerowałem datasheetem i nie pomyślałem zupełnie że można bezpośrednio podłączyć.
    trochę mnie ta dioda jednak martwi.... jeżeli dam tam 1N-5819 to spadek wyniesie na niej ok. 0,4 V przy 150 mA (przybliżony maksymalny prąd)...zostanie więc 4,6V....dalej mamy regulator 3.3V...spadek ok. 1.1V...zostaje 3,5V. Można ufać że to wystarczy? bo to prawie na granicy specyfikacji...
    To jeszcze bym jakoś przeżył ale jest następny problem:
    5V zasila czujnik prądu - min. napięcie z DS'a 4,5V!
    ale nie to jest najgorsze.... czujnik podaje na wyjściu sygnał analogowy i jego 0 wypada przy Vcc/2. Mogę raczej zapomnieć o dokładnym pomiarze jak napięcie będzie się zmieniało zależnie od obciążenia diody:/

    Teraz zobaczyłem jeszcze schemat blokowy tej przetwornicy i tabelkę "absolute max ratings" -> wynika z niej że napięcie na ON/OFF musi być mniejsze od Vin:/ no to chyba wróciliśmy do początku:/ zresztą wg tego schematu użycie takie jak planowaliśmy raczej nie ma sensu.

    tmf: jak już wcześniej pisałem nie używam żadnego opornika do pomiaru tylko scalonego czujnika prądu korzystającego z efektu Halla!
    czujnik ten zasilany z 5 V podaje na wyjściu 0,5 - 2,5 - 4,5 V (-100/0/100 A). jego 0 wypada przy VCC/2....
    w ogóle fajnie by było jakby można wyizolować zakres 0-100 A czyli 2,5 - 4,5 V i jakoś to rozciągnąć na pełny zakres przetwornika zamiast na mniej niż połowę jak to jest przy użyciu zwykłego dzielnika rezystorowego bo zasadniczo interesuje mnie dodatni prąd.

    Co do tego zasilania to musi być wykonalne bo miałem regulator silnika bezszczotkowego w modelu samochodu, który można było programować zarówno po podłączeniu zasilania z baterii jak i tylko przy zasilaniu z USB i to też przez FTDI;)

    0
  • #14 21 Sie 2009 00:21
    atom1477
    Poziom 43  

    tmf napisał:
    Do Mat_91: niestety nie ma tak pieknie. Urzadzenie jest zainicjowane dopiero po enumeracji. I dopiero potem moze pobierac tyle pradu ile wskazalo w sygnaturze. Do tego czasu 0,5mA.



    A nie przesadzasz z tym prądem?

    0
  • #15 21 Sie 2009 10:01
    tmf
    Moderator Mikrokontrolery Projektowanie

    atom1477: nie, taka jest specyfikacja USB.

    zbuffer: co do zasilania to juz ci rozwiazanie dalem - dwie diody + regulator. Ew. dodatkowo pMOSFET sterowany z Vcc z USB dla odlaczenia baterii.
    Jesli chcesz zamienic zakres 2,5V-4,5V na 0-5V to najprosciej zastosuj wzmacniacz operacyjny.

    0
  • #16 21 Sie 2009 12:08
    atom1477
    Poziom 43  

    Przecież najmniejszy prąd jaki da się ustawić podczas enumeracji to 2mA, więc jakim cudem wcześniej jest 0,5mA?

    0
  • #17 21 Sie 2009 12:46
    kwesoly
    Poziom 15  

    atom1477 napisał:
    tmf napisał:
    Do Mat_91: niestety nie ma tak pieknie. Urzadzenie jest zainicjowane dopiero po enumeracji. I dopiero potem moze pobierac tyle pradu ile wskazalo w sygnaturze. Do tego czasu 0,5mA.



    A nie przesadzasz z tym prądem?


    Z tego co wiem przesadza - podany przez niego prąd to prąd jaki może pobierać układ w trybie uśpienia - suspend. Bez enumeracji układ dostaje 100mA.
    USB, POWER, wikipedia

    Dodano po 3 [minuty]:

    tmf napisał:
    Wystarczy dac diode i po klopocie. Problem z podlaczeniem LDO bezposrednio pod USB polega w tym, ze lamie to specyfikacje USB - urzadzenia niezainicjowane nie moga brac wiecej niz 0,5mA. Gole LDO moze ciagnac wiecej.

    Prosiłbym o linka czy jakieś odniesienie do tych 500uA...

    Dodano po 2 [minuty]:

    tmf napisał:
    Do Mat_91: niestety nie ma tak pieknie. Urzadzenie jest zainicjowane dopiero po enumeracji. I dopiero potem moze pobierac tyle pradu ile wskazalo w sygnaturze. Do tego czasu 0,5mA. Oczywiscie to i tak bedzie dzialalo na 99% portow


    Kolega chce użyć FT232 RL który bez problemu można ustawić żeby enumerowal się jako High Power Device potrzebujący 500mA.

    Dodano po 9 [minuty]:

    tmf napisał:

    ad 3. Jesli myslisz, ze realne uzyskanie 12-bitowej rozdzielczosci bedzie latwe to cie rozczaruje :) Jak uda ci sie uzyskac 10-bitow to bedzie sukces. Zastosuj najnizsze mozliwe Vref dla ATMegi i bedzie git - to chyba kolo 1,24V,. Zawsze mozesz zastosowac oversampling jesli chcesz dostac kolejne bity.


    Przetwornik ADC w procesorach ATRMEGA ze względu na konstrukcje osiąga rozdzielczość bezwzględną 2mV, dlatego datasheet zaleca nie używać Vref < 2V. Może lepiej użyć wzmacniacza operacyjnego żeby napięcie było w zakresie 0 <-> 5V ?

    Jeśli chcesz uzyskać faktycznie 10 bitów to trzeba będzie ostrożnie zaprojektować PCB żeby zakłócenia nie obcięły tak jak mówią koledzy ostatnich bitów.

    0
  • #18 21 Sie 2009 14:27
    tmf
    Moderator Mikrokontrolery Projektowanie

    Ok, moj blad. Istotnie urzadzenie moze brac do 100mA. Tylko niewiele z tego wynika, bo ciagle urzadzenie musi miec mozliwosc wchodzenia w tryb suspend, dla ktorego moze ciagnac do 0,5mA lub 2,5mA jako high power device. W FT istnieje mozliwosc blokowania wchodzenia w suspend, ale po co kombinowac jak z latwoscia mozna wszystko zrobic w pelni zgodnie ze specyfikacja. Stosowne schematy sa w notach do FT.

    Co do ADC to to ograniczenie bylo w starych AVRach, nowe juz maja obnizone Vref min do ok. 1V, a wewnetrzne Vref maja 1,1 lub 2,56V. Chyba wszystkie wersje P maja min. Vref=1V i co najmniej niektore ATMegi - sprawdzalem ATMega2560.

    0
  • #19 21 Sie 2009 18:30
    kwesoly
    Poziom 15  

    tmf napisał:
    Ok, moj blad. Istotnie urzadzenie moze brac do 100mA. Tylko niewiele z tego wynika, bo ciagle urzadzenie musi miec mozliwosc wchodzenia w tryb suspend, dla ktorego moze ciagnac do 0,5mA lub 2,5mA jako high power device. W FT istnieje mozliwosc blokowania wchodzenia w suspend, ale po co kombinowac jak z latwoscia mozna wszystko zrobic w pelni zgodnie ze specyfikacja. Stosowne schematy sa w notach do FT.

    Co do ADC to to ograniczenie bylo w starych AVRach, nowe juz maja obnizone Vref min do ok. 1V, a wewnetrzne Vref maja 1,1 lub 2,56V. Chyba wszystkie wersje P maja min. Vref=1V i co najmniej niektore ATMegi - sprawdzalem ATMega2560.


    Z trybem suspend masz racje, po prostu zwróciłem uwage na pomyłkę z obciążalnością przed enumeracją.

    Atmega64 w charakterystykach ADC wciąż podaje min reference 2V, ale bardzo możliwe że inne procesory - nowsze konstrukcje lub wersja P nie mają już tego ograniczenia.

    0
  • #20 23 Sie 2009 20:04
    zbuffer
    Poziom 10  

    Chyba wymyśliłem.
    Trochę zmieniła się koncepcja. W momencie gdy podłączony jest zarówno akumulator jak i USB zasilanie pobierane jest z akumulatora.

    Czy to będzie działać?
    Logger modelarski na bazie atmegi64, adapter o FT232RL

    0
  • #21 24 Sie 2009 00:02
    tmf
    Moderator Mikrokontrolery Projektowanie

    Ale ty uparty jestes. Jak ci pisalem - dwie diody - jedna z akumulatora do regulatora 3V3 i druga z USB do regulatora 3V3 (tego samego). Bedzie to dzialac dokladnie tak jak opisales. FTDI zasilany tylko z +5V z USB. To wszystko.

    0
  • #22 24 Sie 2009 00:08
    zbuffer
    Poziom 10  

    ale tak jak pisałem z 5V zasilany jest bezpośrednio czujnik prądu efektu halla i potrzebuję mieć stabilne 5V niezależne od prądu a na diodzie spadek napięcia mocno się zmienia zależnie od obciążenia.
    dzięki mosfetom o małej rezystancji Rds mogę zminimalizować jakikolwiek spadek napięcia.
    Da się to tak jak napisałem zrobić czy nie?
    Lepiej brać napięcie sprzed regulatora 5V czy zza niego (tak samo z opornikiem do masy)?

    0
  • #23 24 Sie 2009 08:37
    tmf
    Moderator Mikrokontrolery Projektowanie

    Czujnik halla przeciez zasilasz przez stabilizator 5V z pakietu akumulatorow. Tu zadnej magii nie ma. Z USB go zasilic nie mozesz bo 1) nie ma to sensu, 2) napiecie na USB wcale nie musi wynosic 5V i moze sie radosnie w dosyc szerokich granicach zmieniac.

    0
  • #24 24 Sie 2009 09:06
    zbuffer
    Poziom 10  

    no chyba że tak;) słuszna uwaga!

    teraz mam jeszcze jedno pytanie - jeżeli użyję zewnętrznego przetwornika A/C który musi czytać napięcie na czujniku prądu to lepiej zasilić go z 5V i kombinować coś z obniżeniem napięcia SPI do 3.3V czy normalnie zasilić z 3.3V i zrobić dzielnik na rezystorach dla wyjścia czujnika?
    jeśli lepiej zasilać czujnik i przetwornik z jednego napięcia to jak sprząc najlepiej te poziomy logiczne i czy pojawienie się napięcia na SPI wtedy gdy napięcie zasilające się nie pojawi na przetworniku (bo bateria nie będzie podpięta) nie uszkodzi przetwornika?

    0
  • #25 24 Sie 2009 10:51
    tmf
    Moderator Mikrokontrolery Projektowanie

    Dzielnik na rezystorach wprowadza ci dodatkowy staly blad wynikajacy z tolerancji rezystancji i szumy, ktore moga dac znac o sobie jesli chcesz miec cale 12 bitow dokladnosci. BTW, tak sobie zagladnalem do pdfa tego ADC i widze, ze dla niego napiecie zasilajace jest jednoczesnie napieciem referencyjnym. W takim przypadku musisz zastosowac jakies cholernie stabilne zrodlo zasilajace 3V3, bo zwykly LDO bedzie tak szumial, ze nawet o 10 bitach zapomnij, co stawia pod znakiem zapytania sens uzycia zewnetrznego ADC.
    W pdfie pisza, ze potencjal kazdego pinu nie moze byc wiekszy niz Vcc+0,6V, wiec teoretycznie ine powinienes miec napiecia na SPI przy odlaczonym zasilaniu scalaka - ale nie sadze, zeby to stanowilo istotny problem.
    Moze lepiej jednak zmienic czujnik Halla?

    0
  • #26 24 Sie 2009 12:05
    zbuffer
    Poziom 10  

    Czujnika nie zmienię bo go już mam. Zresztą bardzo wygodnie się go używa bo ma od razu bocznik do którego wystarczy przylutować wejściowy i wyjściowy kabel prądowy.
    Hmmm.....no dobrze....a jeżeli użyję wewnętrznego przetwornika ATmegi? mam wtedy korzystać z wewnętrznego napięcia referencyjnego 2,56V czy może dać jakieś zewnętrzne źródło napiecia ref. tylko jakie? dzielnika rezystorowego się nie pozbędę niestety w takim wypadku.
    Problem jest też z rozdzielczością. Nawet przy 10 bitach jest 0,2 A a przecież trudno będzie pełne 10 uzyskać....9 bit to już pomiar co 0,4A....trochę słabo.
    Może znasz/zna ktoś inny przetwornik A/C który by był tutaj sensowniejszy?
    Chciałem też mierzyć napięcie przetwornikiem ale w sumie to mogę robić wbudowanym w Atmegę bo przy 30 V zakresu rozdzielczość będzie ok. Dlatego ten przetwornik do czujnika prądu może być nawet 1-kanałowy....byle był tani, sensowny w tym rozwiązaniu i miał przynajmniej 12 bit.

    0
  • #27 24 Sie 2009 13:21
    tmf
    Moderator Mikrokontrolery Projektowanie

    Zanim ci bede mogl cos konkretniej poradzic to najpierw okresl sie jakich parametrow oczekujesz. Z jaka dokladnoscia chcesz mierzyc prad, jak szybko zmienia sie ten parametr? Czy jest to prad mniej wiecej staly i np. pomiar rzedu 10ms jest akceptowalny? Interesuje cie rozdzielczosc czy dokladnosc pomiaru?

    0
  • #28 24 Sie 2009 17:42
    zbuffer
    Poziom 10  

    Jeśli chodzi o pomiar prądu to myślę że rozdzielczość 0,1A byłaby super (trochę na wyrost...). Dokładność taka jaką można wycisnąć z tego czujnika
    http://www.datasheetcatalog.org/datasheets2/16/1670909_1.pdf
    Wg wykresów błędy są rzędu 0,5% a według tabeli typowo +-1% więc chodzi o to żeby ich nie powiększyć.
    Zmienność parametru może być dość duża jeśli chodzi o wartości ale szybkość nie powinna stanowić problemu...
    Szczególnie że zakładam wstępnie próbkowanie max 10 Hz jeśli chodzi o prąd i napięcie (takie są stosowane w rozwiązaniach komercyjnych)....możesz przyjąć że na 100% nie przekroczy 20 Hz (jakbym chciał bardzo zaszaleć:P)!
    Jeżeli uważasz że to ma sens to można pomyśleć o wyseparowaniu tylko zakresu dodatniego bo praktycznie ujemnych prądów się nie spodziewam (chociaż nigdy nie wiadomo do czego to może zostać wykorzystane;)....nie znam się jednak kompletnie na wzmacniaczach operacyjnych itp więc musiałbyś mnie chociaż jakoś nakierować czego muszę się dowiedzieć i jak to miałoby działać.

    Jeśli chodzi o napięcie to tutaj ważna jest bardziej dokładność bo napięcie na pakiecie nie zmienia się w tak dużym stopniu a istotną informacją jest jego poziom, jaki potrafi utrzymać akumulator. Powiedziałbym że 0,05 V powinno wystarczyć....0,1 V to już trochę dużo ale ostatecznie może być. Rozdzielczość powiedzmy 0,025 V. Zakres 0-30V.

    Jeśli chodzi o logikę to przypominam, że napięcie 3,3V i najchętniej interfejs SPI.

    Problem jest z tym, że ja nie chcę wydać na przesyłkę drugie tyle albo więcej niż na przetwornik a mieszkam w Krakowie....właściwie niewielki jest wybór w tutejszych sklepach:/

    Znalazłem inną wersję tego co przedtem proponowałem tylko ma 1 kanał i osobne zasilanie wejścia referencyjnego - MCP3201 - może taki?
    Generalnie najlepiej coś ze sklepu sklep.monster.pl

    0
  • Pomocny post
    #29 24 Sie 2009 20:58
    tmf
    Moderator Mikrokontrolery Projektowanie

    Tak myslalem, ze ten czujnik masz:) Zauwaz, ze wedlug DS blad tego czujnika wynosi 1%, czyli przy 100A masz +-1A. Sporo. Jesli mozesz zrobic test to poskladaj na plytce uniwersalnej prosty uklad - czujnik + jakas ATMega z zewnetrznym zrodlem referencyjnym. Poniewaz samplujesz jak piszesz max 20Hz, czyli masz 50ms/probke. ADC z ATMegi ma pelna rozdzielczosc chyba do 77kSPS, wiec mozesz zastosowac nawet 1024x oversampling, co powinno dac ci dodatkowo nawet 5 znaczacych bitow. Wydaje sie wiec, ze spokojnie na standardowym ADC ATMegi jestes wstanie zbudowac ten uklad. Oversampling ma ta zalete, ze w zasadzie szumy sa tu twoim przyjacielem :)
    Poczytaj stosowne AN: http://www.atmel.com/dyn/resources/prod_documents/doc8003.pdf

    0