Referenční napětí

jankop
Příspěvky: 1029
Registrován: 06 zář 2017, 20:04
Reputation: 0
Bydliště: Brno
Kontaktovat uživatele:

Re: Referenční napětí

Příspěvek od jankop » 12 bře 2019, 08:51

Narazil jsem na tohle:
If you're using an external reference voltage (applied to the AREF pin), you must set the analog reference to EXTERNAL before calling analogRead(). Otherwise, you will short together the active reference voltage (internally generated) and the AREF pin, possibly damaging the microcontroller on your Arduino board.
Z toho bych dedukoval, že po startu Arduino nechá referenci na EXTERNAL, a teprve při použití ji přepne na AVcc nebo funkcí analogReference(); určený stav. To se dá dokonce změřit voltmetrem na ARef

Uživatelský avatar
pavel1tu
Příspěvky: 2054
Registrován: 26 říj 2017, 08:28
Reputation: 0
Bydliště: Trutnov
Kontaktovat uživatele:

Re: Referenční napětí

Příspěvek od pavel1tu » 12 bře 2019, 10:35

OK

Tak ATmega si generuje nebo použije ref.napětí jen v době měření ?

tak budu napájet švába pro Aref z výstupu ATmega
pokud toho švába nevyčudí zpětné napětí z ATmega,
tak po nastavení ext.ref.U zapnu ten výstup na "1"
a teprve poté se bude generovat napětí do Aref

zatím nemám součástky abych to testnul :-)

pak dám vědět
UNO, NANO, Mikro, PRO mini, DUE, ESP32S2, RPi PICO
Pavel1TU
"Správně napsaný kod lze číst jako knihu"

ohruska
Příspěvky: 235
Registrován: 08 pro 2017, 20:56
Reputation: 0

Re: Referenční napětí

Příspěvek od ohruska » 12 bře 2019, 12:47

Proč nechceš použít ADS1115. Je velmi přesný a má přepínatelné vstupní rozsahy...

Uživatelský avatar
pavel1tu
Příspěvky: 2054
Registrován: 26 říj 2017, 08:28
Reputation: 0
Bydliště: Trutnov
Kontaktovat uživatele:

Re: Referenční napětí

Příspěvek od pavel1tu » 12 bře 2019, 13:52

ohruska píše:
12 bře 2019, 12:47
Proč nechceš použít ADS1115. Je velmi přesný a má přepínatelné vstupní rozsahy...
hmmm, kouknu na něj ... ale další místo, spotřeba + peníze

jako modul stojí 1,5USD, jako šváb je po 10ks za 20USD :-D
UNO, NANO, Mikro, PRO mini, DUE, ESP32S2, RPi PICO
Pavel1TU
"Správně napsaný kod lze číst jako knihu"

ArduXPP
Příspěvky: 361
Registrován: 14 pro 2017, 19:31
Reputation: 0
Kontaktovat uživatele:

Re: Referenční napětí

Příspěvek od ArduXPP » 12 bře 2019, 16:37

Já jsem viděl samotný čip po 10 kusech za 10USD :) Nebo i jako modul za 1.43USD.

jankop
Příspěvky: 1029
Registrován: 06 zář 2017, 20:04
Reputation: 0
Bydliště: Brno
Kontaktovat uživatele:

Re: Referenční napětí

Příspěvek od jankop » 12 bře 2019, 18:26

Ještě se vrátím k použití externí reference. Teď jsem si s tím hrál a měřil multimetrem. Je to vcelku jednoduché.
Po resetu procesoru je AREF zapojen jako vstup pro externí referenční napětí VRef.
Jak už jsem zmiňoval, to může být v rozsahu 1 volt až napájecí napětí Vcc.
Vstupní měřené napětí by pochopitelně nemělo být vyšší než referenční napětí.
Pokud neuděláme opatření, tak při prvním použití funkce analogRead() v programu se reference přepne na napětí AVcc tj. na napájecí napětí, a pin AREF se přepne na výstup a objeví se na něm napětí AVcc.
Pokud před prvním použitím funkce analogRead() v programu dáme funkci analogReference(EXTERNAL), pak zůstane pin AREF trvale jako vstup a nehrozí kolize/zkrat/poškození s externí referencí
Pokud potřebuji použít externí referenci, tak stačí udělat v podstatě pouze toto:

Kód: Vybrat vše

void setup() {
  analogReference(EXTERNAL);
//  ...
}
void loop() {
//  ...
  int neco = analogRead(A0);
//  ...
}
Pokud by se někomu hodil rozsah měření cca 1V, pak lze snadno funkcí analogReference(INTERNAL) zapnout vnitřní referenci 1,1V. Prvním zavoláním analogRead(); se na pinu Aref objeví vnitřní napětí 1,1V a je možné ho v klidu multimetrem změřit. Pak stačí tuto konstantu použít v programu pro dosažení vyšší přesnosti.

Uživatelský avatar
pavel1tu
Příspěvky: 2054
Registrován: 26 říj 2017, 08:28
Reputation: 0
Bydliště: Trutnov
Kontaktovat uživatele:

Re: Referenční napětí

Příspěvek od pavel1tu » 12 bře 2019, 19:07

Heuréka,

děkuji, teď jsem si to podle tvého návodu vyzkoušel na UNU - včera jsem nic nenaměřil - zapoměl jsem na to AnalogRead().

Musím si dát přestávku - připletl jsem se do rvačky - jeden "nepřízpůsobivý" poté co byl přistižen při krádeži se dost hustě pustil do slečny z ostrahy, tak jsem ji šel podpořit.
Jsem z toho trošku vykolejenej, že chlap kolem 150kg se takto pustil do slečny skoro třetinové váhy. Trochu tekla krev.

Du na panáka
UNO, NANO, Mikro, PRO mini, DUE, ESP32S2, RPi PICO
Pavel1TU
"Správně napsaný kod lze číst jako knihu"

jankop
Příspěvky: 1029
Registrován: 06 zář 2017, 20:04
Reputation: 0
Bydliště: Brno
Kontaktovat uživatele:

Re: Referenční napětí

Příspěvek od jankop » 12 bře 2019, 19:54

Tak doufám, že ta krev byla toho chlapa :)

Uživatelský avatar
pavel1tu
Příspěvky: 2054
Registrován: 26 říj 2017, 08:28
Reputation: 0
Bydliště: Trutnov
Kontaktovat uživatele:

Re: Referenční napětí

Příspěvek od pavel1tu » 12 bře 2019, 20:07

Bohužel té slečny.
Na takový chlapy nesahám, ještě by mne zažaloval právník z nějaký neziskovky, placený z mých daní, za rasový útok.
UNO, NANO, Mikro, PRO mini, DUE, ESP32S2, RPi PICO
Pavel1TU
"Správně napsaný kod lze číst jako knihu"

Uživatelský avatar
pavel1tu
Příspěvky: 2054
Registrován: 26 říj 2017, 08:28
Reputation: 0
Bydliště: Trutnov
Kontaktovat uživatele:

Re: Referenční napětí

Příspěvek od pavel1tu » 02 srp 2019, 21:10

Tak jsem pokročil,

používám ext. ref U - přesný zdroj napětí,
teď chci snížit na minimum spotřebu odporového děliče - jaký minimální proud stačí aby tekl děličem, resp. kolik proudu si vezme analogový vstup ATmega328 ?
UNO, NANO, Mikro, PRO mini, DUE, ESP32S2, RPi PICO
Pavel1TU
"Správně napsaný kod lze číst jako knihu"

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 7 hostů