Fórum témák

» Több friss téma
Fórum » Arduino
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
Lapozás: OK   728 / 853
(#) tbarath válasza icserny hozzászólására (») Feb 15, 2022 1 / 1
 
És akinél a gugli nincs bevezetve, annak kikeressük, vagy mi a fene?
Ezt tényleg komolyan kérdezem, mert olyan kérdések merülnek fel mostanában itt, amiket hamarabb megtalál guglival, mint hogy ide beírja. És persze, segítünk a kezdőknek, tényleg, de a lustáknak is? Ez nem csak erre a topic-ra vonatkozik...
(#) TavIR-AVR válasza Kovidivi hozzászólására (») Feb 15, 2022 /
 
Az olvadó jég _egyensúlyi_ értékű. Az bizony 0 fok (kicsit függ a nyomástól!)

A forrásban levő az 100 fok (nyomásfüggő és oldott anyag függő kicsit), de 99...101 foknak simán vehető...
(#) TavIR-AVR válasza Jonni hozzászólására (») Feb 15, 2022 / 1
 
3 perc google (mert a PC-t is be kellett kapcsolni):
TavIR - LM35
(#) dB_Thunder válasza tbarath hozzászólására (») Feb 15, 2022 1 / 1
 
Idézet:
„És akinél a gugli nincs bevezetve, annak kikeressük, vagy mi a fene?”

Mindig van olyan illető aki kinyalja a "lusta" hátsóját, ezért mindig lesznek lusták!!
Pedig csak hagyni kéne érlelődni a kérdezőt!

(#) wbt válasza TavIR-AVR hozzászólására (») Feb 15, 2022 /
 
Kb. 3-5 fok eltérés lehetséges, sajnos. (nyomás, sótartalom, egyéb szennyeződések, oldott klór stb.)
(#) sdrlab válasza wbt hozzászólására (») Feb 15, 2022 / 1
 
Nem hinném, hogy ekkora eltérés kialakulna..., de akkor végezd desztillált vízzel(vagy legalább ioncserélttel). Ez csak megoldható azért....
(#) Jonni válasza icserny hozzászólására (») Feb 15, 2022 /
 
Kipróbáltam az alsó kodot. Hmmm .. Elég pontatlan , (pedig LM35 egy lineáris IC, elvileg pontos kéne legyen. 20 °C helyett 22,3 °C -t mér) Tavir weboldalon azt írják hogy
Idézet:
„Külső Aref feszültséget a lapon egy helyen találunk: a rendszerszintű 3.3V-ot. Ezt egyszerű átkötéssel lehet megoldani, amikor a Aref kivezetést a lap 3.3V tápkivezetésére kell áthidalni.”
Miért kell áthidalni? Akkor mi lesz ha áthidalom? És ezt is kicsit bonyolultan fogalmazták meg
Idézet:
„Fontos! Ha az AVR ADC-je külső referenciafeszültséggel lesz használva TILOS a belső referenciát beállítani – ez a belső referencia-áramkör meghibásodását okozza!”
(#) sargarigo válasza Jonni hozzászólására (») Feb 15, 2022 / 1
 
Arról van szó, hogy kétféle referenciát lehet választani. Első eset a beépített 1.1V, és akkor ezt osztja 1024 részre, de ekkor a bemenetet le kell osztani hogy max 1.1V legyen, így tudja összehasonlítani. Vagy választhatsz külső referenciát, ami magasabb bemenő feszültséget enged meg. Itt azt mondta, hogy a külső referenciát választod, amihez odavezeted a 3.3V-ot. Mivel a 3.3V kívülről érkezik, és magasabb mint a belső 1.1V, ezért nem szabad egyszerre mindkettőt alkalmazni, mert meg fog sülni valami. A 3.3 erősebb mint az 1.1V.
(#) Jonni válasza sargarigo hozzászólására (») Feb 15, 2022 1 /
 
Na végre egy rendes személy aki segít és nem a másikat ocsárolja.

Köszi sargarigo!!!!!!!!
(#) Jonni válasza TavIR-AVR hozzászólására (») Feb 15, 2022 1 /
 
Ezt a kódot már tegnap is megtaláltam, (bár beletelt vagy 8 percbe) úgy kötöttem be ahogy Projekt: LM35 hőmérő mérési eredmények kiírása az I2C LCD-re sorok után van. És ezt a kódot hasznaltam
  1. #include <LiquidCrystal_I2C.h>
  2. LiquidCrystal_I2C lcd(0x3F, 16, 2);
  3.  
  4. byte Degree[] = {
  5.         B00111,
  6.         B00101,
  7.         B00111,
  8.         B00000,
  9.         B00000,
  10.         B00000,
  11.         B00000,
  12.         B00000
  13. };
  14.  
  15. #define sensorPin A2
  16.  
  17. void setup() {
  18.     lcd.init();
  19.     lcd.backlight();
  20.     lcd.createChar(0, Degree);
  21. }
  22.  
  23. void loop() {
  24.     int reading = analogRead(sensorPin);
  25.     float voltage = reading * (5.0 / 1024.0);
  26.     float temperatureC = voltage * 100;
  27.     lcd.setCursor(0, 0);
  28.     lcd.print("Temperature:");
  29.     lcd.setCursor(0, 1);
  30.     lcd.print(temperatureC, 1);
  31.     lcd.write(0); // print the custom degree character
  32.     lcd.print("C ");
  33.     float temperatureF = (temperatureC * 9.0 / 5.0) + 32.0;
  34.     lcd.print(temperatureF, 1);
  35.     lcd.write(0); // print the custom degree character
  36.     lcd.print("F ");
  37.     delay(1000);
  38. }
és a képen látható eredményt kaptam. Ezért nem jó

szerk: annyit írtam át rajta ,hogy nekem i2c címe nem 0x3F hanem 0x27
A hozzászólás módosítva: Feb 15, 2022
(#) sargarigo válasza Jonni hozzászólására (») Feb 15, 2022 /
 
Az adatlapját elnézve 25C-on kb 3.6V kellene hogy kijöjjön belőle. Ez mérd már meg, hogy tényleg annyi-e! Olyan mintha az adc túl nagy feszt kapna. De csak törpölök.
Referencia jó helyen van?
A hozzászólás módosítva: Feb 15, 2022
(#) user1914 válasza Jonni hozzászólására (») Feb 15, 2022 /
 
Szevasz!
Ez egy analóg hőmérséklet mérő.
Talán ezzel sikerülhet.
  1. }
  2.  
  3. void loop() {
  4.   // read the sensor
  5.   for (int x = 0; x < 64; x++) { // 64(max) analogue readings for averaging
  6.     total = total + analogRead(A0); // add each value
  7.   }
  8.   // temp conversion
  9.   tempC = total * 0.001632; // value to tempC >>> change last two or three digits slightly to calibrate temp <<<
  10.   tempF = tempC * 1.8 + 32; // Celcius to Fahrenheit
  11.  
  12.   Serial.print("The temperature is  ");
  13.   Serial.print(tempC, 1); // one decimal place
  14.   Serial.print(" Celcius  ");
  15.   Serial.print(tempF, 0); // no decimal places
  16.   Serial.println(" Fahrenheit");
  17.  
  18.   total = 0; // reset total
  19.   delay(500); // slows readings
  20. }

Üdv. M
A hozzászólás módosítva: Feb 16, 2022
Moderátor által szerkesztve
(#) Elektro.on válasza Jonni hozzászólására (») Feb 15, 2022 /
 
Érdekes. Neked ott a végén van még egy potya "T" betű is.
A kód szerint az nem kéne ott legyen.
Írtad, hogy csak az IIC címét írtad át, de az ide feltöltött kódodban nem az van.
Konkrétan azt másold ide fel légyszíves. Az ilyen "csak ezt átírom" -nál előfordult nálam is néha, hogy belekerült akaratomon kívül egy gombnyomás oda ahová nem akartam. Nehéz észrevenni, és keresheti az ember a hibát.

szerk:
Más ha belső referenciát haszál a lapod akkor ha 5V ref nél ha 135,7°C akkor 1,1V reerencia feszülségre 29.8°C jönne ki.
A hozzászólás módosítva: Feb 15, 2022
(#) Elektro.on válasza Jonni hozzászólására (») Feb 15, 2022 /
 
Nah lejárt az időm nem ment át a módosítás.

Szóval ha a te Arduinód nem 5 hanem 1,1 voltot használ referenciának akkor ez lehet a hiba.
ezt le ellenőrizheted. fogsz egy 1,5V os ceruza elemet, leosztod a feszültségét a felére mondjuk 2db 4K7 ellenállással. Ez méred az Arduinóval. kiíratod a mért értéket, számítások nélkül csak az Ad konverzió eredményét. (0-1024)
Ha a kapott érték 700 körüli akkor 1,1V -os a referenciád , ha 150 körüli akkor 5V.

Ha 1,1 akkor a kódodban átírhatod a 25. sort.
  1. float voltage = reading * (5.0 / 1024.0);

helyett
  1. float voltage = reading * (1.1 / 1024.0);


Vagy megváltoztatod a referencia feszültséget a"tavir-AVr oldal alapján.
A hozzászólás módosítva: Feb 15, 2022
(#) Jonni válasza sargarigo hozzászólására (») Feb 15, 2022 /
 
25°C-on nem jöhet ki 3.6V. Ott elvileg 250mV kéne kijöjjön. De meg is mértem és 20°C -on 224 mV jön ki ami meg 22,4 °C nak felelne meg és ez már elég közel van de nem pont jó
(#) Elektro.on válasza Jonni hozzászólására (») Feb 15, 2022 /
 
A maximum amit kiadhat magából normál működésnél az LM35 az 1,5V (ez a 150°C)
de ha a műszeredet jól megvizsgálod mérési tolerancia szempontjából , 20-50 mV szerintem benne van a szórásban.
(#) Jonni válasza Elektro.on hozzászólására (») Feb 15, 2022 /
 
A T betü azért van ott mert ez nem 16x2es hanem 40x2-es lcd. És kódba nincsen lezáró nulla ami lezárná a sort.
  1. #include <LiquidCrystal_I2C.h>
  2. LiquidCrystal_I2C lcd(0x27, 16, 2);
  3.  
  4. byte Degree[] = {
  5.         B00111,
  6.         B00101,
  7.         B00111,
  8.         B00000,
  9.         B00000,
  10.         B00000,
  11.         B00000,
  12.         B00000
  13. };
  14.  
  15. #define sensorPin A2
  16.  
  17. void setup() {
  18.     lcd.init();
  19.     lcd.backlight();
  20.     lcd.createChar(0, Degree);
  21. }
  22.  
  23. void loop() {
  24.     int reading = analogRead(sensorPin);
  25.     float voltage = reading * (5.0 / 1024.0);
  26.     float temperatureC = voltage * 100;
  27.     lcd.setCursor(0, 0);
  28.     lcd.print("Temperature:");
  29.     lcd.setCursor(0, 1);
  30.     lcd.print(temperatureC, 1);
  31.     lcd.write(0); // print the custom degree character
  32.     lcd.print("C ");
  33.     float temperatureF = (temperatureC * 9.0 / 5.0) + 32.0;
  34.     lcd.print(temperatureF, 1);
  35.     lcd.write(0); // print the custom degree character
  36.     lcd.print("F ");
  37.     delay(1000);
  38. }


A belső referenciát nem ezzel a parancsal kapcsolod be?
  1. analogReference(INTERNAL);


ez nincs a kódba
(#) Elektro.on válasza Jonni hozzászólására (») Feb 15, 2022 /
 
Valóban, de valahol olvastam, hogy vannak olyan AVR vezérlők amive az alapértelmezet az 1,1V.

Én igazából PIC et használok MikroPascal környezetben, illetve ESP32 és ESP8266 -ot Arduino környezetben.

AVR ben nem vagyok annyira othon.

szerk:

Infó az Arduino referenciákról.
A hozzászólás módosítva: Feb 15, 2022
(#) Jonni válasza user1914 hozzászólására (») Feb 15, 2022 /
 
Köszi. Ránézek majd erre is
(#) Elektro.on válasza Jonni hozzászólására (») Feb 15, 2022 /
 
Te konkrétan melyiket használod?
A hozzászólás módosítva: Feb 15, 2022
(#) Jonni válasza Elektro.on hozzászólására (») Feb 15, 2022 /
 
Amit utoljára írtam , azzal próbálkoztam. ez az
(#) Elektro.on válasza Jonni hozzászólására (») Feb 15, 2022 /
 
Én a board ra gondoltam. Arduino -Uno stb.
(#) Jonni válasza Elektro.on hozzászólására (») Feb 15, 2022 /
 
Arduino nano + 40x2 karakteres LCD I2C -vel + LM35
(#) Elektro.on válasza Jonni hozzászólására (») Feb 15, 2022 /
 
Akkor meg is van szerintem. Az oldal szerint amit linkeltem.... default 3,3V
Fotó csatolva.
A hozzászólás módosítva: Feb 15, 2022

nano.png
    
(#) sargarigo válasza Jonni hozzászólására (») Feb 15, 2022 /
 
Idézet:
„25°C-on nem jöhet ki 3.6V. Ott elvileg 250mV kéne kijöjjön.”

Vállalom, ezek szerint elnéztem az adatlapot. Ettől még a referencia lesz a baj
(#) Jonni válasza sargarigo hozzászólására (») Feb 15, 2022 /
 
OK .OK.. köszi
Nézzük tovább
(#) Jonni válasza Elektro.on hozzászólására (») Feb 15, 2022 /
 
TavIR oldalán azt írja át kell hidalni aref-et meg a 3,3V-t. Ez még mindig nem stimmel hogy milyen esetbe kell áthidalni...
A hozzászólás módosítva: Feb 15, 2022
(#) Jonni válasza Jonni hozzászólására (») Feb 15, 2022 /
 
Sanszos , hogy aref egy bemenet ahol egy nagyon fix feszültség mehet be 1.1V, 3.3V, 5V stb. És azért hidalja át mert igy adja meg a bemenő 3.3V-t. És ebbe az esetbe a setupba
  1. analogReference(EXTERNAL);
parancsot kell használni
(#) Elektro.on válasza Jonni hozzászólására (») Feb 15, 2022 /
 
Nem kell dedikált feszültségek közül választani, csak ne lépd túl az AVR határait. Szerintem az AVR tápja a maximum ami adható neki.
(#) vargham válasza Elektro.on hozzászólására (») Feb 15, 2022 /
 
Ez nem a sima (AVR) Nano-ra vonatkozik, hanem az ARM-ra. A kérdező nem AVR-t használ?
Következő: »»   728 / 853
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem