Logowanie za pomocą serwisów społecznościowych
Logowanie tradycyjne
Milanos.pl. Skorzystaj z szybkiej rejestracji.
Szeryf
ponad 7 lat temu
#xmega: Przyznam ze nie mialem do czynienia z xmega, bawie sie raczej atmega328. Jak pewnie wiesz tanie atmegi maja bardzo kiepskie ADC wiec w jednym z projektow uzylem 4 kanalowego 16bit ADC - ads1115. Na ebay kupisz go za niecale 3E, jego zaleta jest to ze ma wewnetrzne zrodlo referencyjne i programowalny "gain amplifier", niski pobor mocy i calkiem dobra rozdzielczosc. Przy pomocy przetwornika mierzylem prady w zakresie 4-20mA z dokladnoscia 1uA. Jesli pozostaniesz przy ADC xmegi to polecam zadbac o stabilne i dobrze przefiltrowanie napiecie zasilania (jesli zasilacz to kondensatoryduzej pojemnosci na wyjsciu), uzylbym takze nadprobkowania - jeden wynik liczyc ze sredniej z 16 lub 32 probek co nieco zniweluje szum przetwornika i zasilania i poprawi rozdzielczosc samego ADC. Nie wiem czy xmega ma wbudowany regulator zrodla referencyjnego dla ADC, jesli nie to bardzo stabilne zasilanie jest kluczowym czynnikiem stabilnych wynikow.
FoxMurder
ponad 7 lat temu
@Szeryf: Wiesz ja zauważyłem że atmega ma ADC niskiej rozdzielczości ale za to stabilny. W xmega tych 2 megasamplowych jest na odwrót, dstatecznie stabilne, ale mogłoby być minimalnie lepiej. Teraz mi skacze wyniczek gdy podłączę mierzone napięcie całkowicie bezpośrednio, np 1V, o 1-2 punkty, jak pamiętam to adc w Atmega32 mi w ogóle nie skakało, albo max 1 pkt. I nie ma znaczenia że dam najniższą prędkość adc w xmega. I oczywiście robię uśrednianie, tzn pobór 10 próbek po czym sumowanie i dzielenie przez 10. Nieco pomaga. Wezmę ze starego mierniczka który niegdyś zrobiłem ADS7828. 12 bit ale regulowany ref, co oznacza że przy 4,095V będę miał 1mV / 1 bit. I jest też dość stabilny, też czasem skacze o max ok 1 punkt przy ref ok 2,5V.
Ale będzie wymagał przetworniczki aby śmigał na 5V abym mógł dać ref te 4V. Zobaczymy co z tego wyjdzie.
A ads1115 teraz nie widze na alleguwno. B chyba bym szarpał. A ponad 3 tygodnie mi się nie chce czekać. Ale dokładności tego 1 uA to zazdraszczam.
Pokażesz mi schemat wzmacniacza do pomiaru w szczególności małych prądów który użyłeś? Chciałem zrobić pomiar 2mA lub 20mA, i potem zakres 1000mA.
Szeryf
ponad 7 lat temu
@FoxMurder: Dalem tylko rezystor choc powinien byc tez dodatkowy duzy rezystor i maly kondensator jako filtr dolnoprzepustowy. Jak napisalem wspomniany ADS1115 ma programowalny wzmacniacz a dodatkowo caly uklad ma wspolpracowac z sygnalem 4-20 przy ktorym moglem sobie pozwolic na duzy rezystor i spadek na nim kilku volt. Ponizej zakresy w ktorych pracuje ADS1115 przy wykorzystaniu wbudowanego wzmacniacza.
To boost small signals, the gain can be adjusted on the ADS1x15 chips in the following steps:
GAIN_TWOTHIRDS (for an input range of +/- 6.144V)
GAIN_ONE (for an input range of +/-4.096V)
GAIN_TWO (for an input range of +/-2.048V)
GAIN_FOUR (for an input range of +/-1.024V)
GAIN_EIGHT (for an input range of +/-0.512V)
GAIN_SIXTEEN (for an input range of +/-0.256V)
Szeryf
ponad 7 lat temu
@FoxMurder: Jedyny problem przy ADC1115 to jego powolnosc, oscyloskop na nim najwyzej dla zakresu audio.
FoxMurder
ponad 7 lat temu
@Szeryf: To nie jest do oscyloskopu przecież to ma mniej niż 1000 sampli na sekunde. Nawet z atmega ledwo da się wycisnąć częstotliwości audio. Na xmega widać ledwo 200Khz. Ale mniejsza o to. Bardziej mnie nurtuje jak robić symetryczne pomiar tak by nie był zaburzony odbiór sztucznej masy przez różne rezystory dzielników napięć.
Szeryf
ponad 7 lat temu
@FoxMurder: ADS1115 moze dodatkowo pracowac jako 2 przetworniki roznicowe, nie testowalem.
www_spiria_com/en/blog/iot-m2m-embedded-solutions/measuring-small-currents-adc
FoxMurder
ponad 7 lat temu
@Szeryf: ten co mam 12 bitowy też może. W sumie może zobaczę jak tego się używa. Ale to też mnie nie ratuje za bardzo bo muszę dać dzielniki napięcia i wzmocnić napięcie najpierw.
FoxMurder
ponad 7 lat temu
@Szeryf: nagle mi się ten mój adc po i2c nie uruchamia czy sam nie wiem.
Niby czyta dane z 3 kanałów ale zawsze są sztywne 1033 1033 i 1034. Ale jak odłączę kable to jest tak samo. Już nie wiem sam.
Mam co prawda bascom ale działało na xmega128a3. Teraz nie. Kurwica mnie strzela.
FoxMurder
ponad 7 lat temu
Nie, jednak na xmega128 a3 działa nadal.
Tylko nie na xmega128 a1
Szeryf
ponad 7 lat temu
@FoxMurder: Wczesniej tez probowalem pisac na bascomie ale po namowie kumpla z pracy sprobowalem arduino. Arduino to swietna sprawa - polecam jesli nie pisales jeszcze ...
FoxMurder
ponad 7 lat temu
@Szeryf: Ale nie ma chyba do xmega w arduino
nie masz może na zbyciu tego ads1115?
FoxMurder
ponad 7 lat temu
@Szeryf: Niedolutowane piny TQFP, nawet nie widać że nie było kontaktu... jestem niedoj@%em.
FoxMurder
ponad 7 lat temu
@Szeryf: chociaż to nie wyjaśnia czemu nie działało na TWI-F a tylko na C