logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Logger modelarski na bazie atmegi64, adapter o FT232RL

zbuffer 20 Sie 2009 13:11 5257 28
  • #1 6913116
    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
  • #2 6913314
    tmf
    VIP Zasłużony dla elektroda
    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.
  • #3 6913417
    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.
  • #4 6913867
    tmf
    VIP Zasłużony dla elektroda
    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.
  • #5 6913892
    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.
  • #6 6914148
    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!
  • #7 6914271
    tmf
    VIP Zasłużony dla elektroda
    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.
  • #8 6914372
    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?
  • #9 6914600
    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.
  • #10 6914833
    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?
  • #11 6915049
    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ś:)
  • #12 6915354
    tmf
    VIP Zasłużony dla elektroda
    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.
  • #13 6915583
    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;)
  • #14 6915645
    Konto nie istnieje
    Poziom 1  
  • #15 6916218
    tmf
    VIP Zasłużony dla elektroda
    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.
  • #16 6916676
    Konto nie istnieje
    Poziom 1  
  • #17 6916759
    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.
  • #18 6917257
    tmf
    VIP Zasłużony dla elektroda
    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.
  • #19 6918038
    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.
  • #20 6926411
    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
  • #21 6927301
    tmf
    VIP Zasłużony dla elektroda
    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.
  • #22 6927315
    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)?
  • #23 6927631
    tmf
    VIP Zasłużony dla elektroda
    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.
  • #24 6927692
    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?
  • #25 6927996
    tmf
    VIP Zasłużony dla elektroda
    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?
  • #26 6928243
    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.
  • #27 6928476
    tmf
    VIP Zasłużony dla elektroda
    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?
  • #28 6929400
    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
  • Pomocny post
    #29 6930168
    tmf
    VIP Zasłużony dla elektroda
    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
REKLAMA