Hirdetés
Talpon vagyunk, köszönjük a sok biztatást! Ha segíteni szeretnél, boldogan ajánljuk Előfizetéseinket!
-
Mobilarena
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
Nyirike
csendes tag
válasz
gyapo11 #12541 üzenetére
A táblázat nincs a kódban. Feszültségekből számolom vissza a termisztor ellenállását. És tesztek alapján ellenőriztem, hogy jó e a képlet.
A végén pedig az kapott ellenállás érték alapján visszafejtem a korábban mért ellenállás/hőmérséklet párok alapján kikalkulált együtthatók segítségével.
-
Nyirike
csendes tag
válasz
gyapo11 #12539 üzenetére
Ez a termisztor nem lineáris. A függvényt meg én alkottam meg amiből statisztikát csináltam és 0-200 ohm között 2%-s pontossággal tudom mérni. Sajnos ez elég tré pontosság, mert 1 ohm is már fokokat jelent ahogy emelkedik a hőmérséklet és csökken az ellenállás. Az a tartomány ami érdekel ott viszonylag pontos. 50 fok alatt meg nem nagyon érdekel, mert nem ez az üzemi működés.
Az hőfokot pedig az alábbi kalkulátorral számoltam ki:
https://sanjit.wtf/Calibrator/webCalibrator.htmlA termisztort meg kimértem 110-40 fokig fokonként ebből volt egy közelítő ohm/hőfok értékem. Ebből tudom amúgy hogy 50 fok alatt drasztikusan emelkedik az ellenállás 0 foknál már 5 kOhm.
A legbiztosabb az lenne ha beépítenék egy új hőfok jeladót ami teljes pontos lenne, de nem akartam a kocsihoz ennyire hozzá nyúlni.
A pontosságot úgy próbáltam növelni, hogy a lehető legkisebb szórású ellenállásokat használtam azokat 3 műszerrel megmértem, a tranzisztor nyitófeszültségét is 3 műszerrel mértem meg és így jutottam el a viszonylag pontos kalkulációhoz.
-
Nyirike
csendes tag
Köszi mindenkinek a segítséget. Működik viszonylag jól.
Amúgy ezt csináltam: [link] -
Nyirike
csendes tag
válasz
gyapo11 #12526 üzenetére
Tegnap megcsináltam a kapcsolást több ellenállás párral. Mindegyiknél ugyanaz a eredmény. Maximum 200ohmig tudom visszaszámolni a termisztor értékét, Hiába emelem 500 esetleg 1kOhmig.
Elkezdtem nézni a feszültségosztó képletét és mivel 90Ohm a felhúzója a műszernek, amint emelkedni kezd a drasztikusan a termisztor ellenállása annál kisebb értékben változik a rajta eső feszültség így a visszaszámoló képlettel egyre pontatlanabb.
A mutató amúgy 60-110 fok között mutat valamit így érthető hogy úgy lett belőve a felhúzója.
Tesztek alapján igazából e tartomány között viszonylag pontosan tudom mérni a termisztor értéket arduinoval persze lekövetve a tápfeszültséget ami 12 esetleg 14.4 vagy bármi más lehet.A képletek jól működnek, mert folyamatosan kiraktam a consolera a számolt feszültség eséseket a mutatón, a termisztoron és a plusz feszültségosztón és mindegyik az, amit számolok.
Tehát köszönöm a segítséget. A mutató és az arduino is jól megy úgy hogy nem zavarják be egymást.
Az általad írt Emitter követő tranzisztor bekötése pontosabb értéket adna? Tudnék 200 ohm fölé is számolni? Vagy érdemlegesen nem változna sokat az érték?
-
Nyirike
csendes tag
Van egy másik megoldás is. Lekötöm a műszert és PWM outputtal egy TIP120 mosfettel kamu jelet generálom a műszernek és akkor nem fogják zavarni egymást. Ezt korábban már teszteltem. És ment.
Az a gond ezzel a feszültségosztó dologgal, hogy 50-110 fok között 180 Ohm a különbség.
Ha rosszul választok feszültségosztót akkor sok mindent fog mutatni a műszer csak értelmes értéket nem.De ha meg túl magas akkor esélyes hogy az Arduinos mérésem lesz saccoló mint mérő.
180 Ohm range nem sok. Ehhez milyen feszültségosztót érdemes választani? 10k / 1k? már elég távol van nem? Vagy menjek feljebb?
-
Nyirike
csendes tag
válasz
Nyirike #12521 üzenetére
Valami ilyesmire gondoltam a kalkulációra:
A1 input feszültség számítása:
float inputValue = analogRead(A1);
float a1Voltage = (inputValue * 5.0) / 1024.0;
float termistorVoltage = a1Voltage / (330/(1330); //330 és 1k az osztóÍgy kijön a termisztoron eső feszültség:
Aztán tovább így tudom kiszámolni, hogy mennyi a termisztor értéke:
Rt = 90 * ((1/((12/termistorVoltage)-1));
// 90 ohm a felhúzó a mutatónak
// 12 bejövő feszültség a mutatóraOké a 12V az nem 12V de azt megoldom másképp mert azt mérem folyamatosan.
Ez így mennyire hülyeség?
-
Nyirike
csendes tag
válasz
gyapo11 #12520 üzenetére
Köszi.
Így gondoltad?
Így hogy változik a termisztor ellenállás mérése a kódban?
Eddig úgy csináltam hogy 4.7k ellenállással felhúztam 5V-ra mérés után ki tudtam számolni:
float vA1 = analogRead(A1);
float R2 = (float)4700 * (1023.0 / (float)vA1 - 1.0);Ez már így nem jó. Se a felhúzó nincs se a divider nincs benne.
-
Nyirike
csendes tag
Köszi a gyors választ.
Igen analóg bemenetre kötöm A1 ha jól emlékszem. A termisztort magában mértem és elég alacsony ellenállásokkal dolgozik. 250 Ohm-0 között van az értékelhető hőfok görbéje. A mutató 40 és 110 között mér és nekem sem kell nagyobb range. 9 fokban 1600Ohm, de igazából mindegy is.
Itt a mutató sematikus rajza.A TH az a Thermistor pin. Amúgy a 15 és 75 Ohm sorba van kötve (megmértem tehát úgy tűnik hogy 90 Ohm a felhúzó ellenállása a bejövő jelnek.
Hogy kellene akkor bekötnöm a arduinot? Mivel 0-12V lehet a TH-n pinen lévő feszültség emiatt ahogy írtad kellene a feszültség osztó.
A 90ohm-s felhúzó megkavarja a mérést is nem? Magában a termisztort tudom mérni egy 5V-ra való felhúzó ellenállással, de ha bekerül egy feszültség osztó akkor hogy változik a mérés?
Köszi
-
Nyirike
csendes tag
Sziasztok.
Vagy egy analóg műszerfalam. A vizhőfok mutatója úgy működik hogy 3 lába van. 12v/gnd/jel.
Szeretném arduinoval olvasni a jelet.
A jel egy sima thermistor ból jön, tehát változik az ellenállása hőfok függvényében. Az értékeket tudom. Sőt az értékeket is le tudom olvasni ha csak az arduino van a rendszerre kötve.A gond az hogy ha rákötöm azarduinot és a mutatót együtt, akkor rosszat mutat a mutató. Ki lehet Ezt szűrni valahogy? Hogy mind az arduino tudja olvasni és a mutató is jó jelet kapjon?
Köszi.
-
Nyirike
csendes tag
válasz
DigitXT #10958 üzenetére
Szia. Pont ebbe a hibába futottam. VR sensort kéne olvasnom de csak négyszög jelet olvas a cucc. A gond az hogy a VR szenzor tud néha 50 voltot is kiadni az olvasó meg max 18-t képes és négyszöget persze. Neten találtam https://sirhclabs.com/product/vr-to-hall-sensor-converter/ megoldást ami olcsó is de Amerikából. Gondolom szállítással együtt már nagyon nem éri meg. Meg jó lenne hamar megoldani, hogy tudjak haladni.
Neked mi volt a megoldásod erre? A MAX9924-t olvastam én is több helyen de SMD-vel én sem vagyok jóban
Új hozzászólás Aktív témák
- Kerékpárosok, bringások ide!
- Mobil flották
- Milyen billentyűzetet vegyek?
- Motoros topic
- Redmi Watch 5 - formás, de egyszerű
- exHWSW - Értünk mindenhez IS
- Kormányok / autós szimulátorok topikja
- Elfelejtettem a film címét
- Miért álltak az oldalak egy hétig, mi történt?
- Luck Dragon: Asszociációs játék. :)
- További aktív témák...
- Eladó Konfig I7 8700 16GB DDR4 120GB SSD 750GB HDD RTX2060 6GB!
- MacBook Air 15" M3 24GB / 1024GB / Midnight / International billentyűkiosztás / ÁFÁS SZÁMLA
- Autószimulátor! Leírásokkal, mindenestül, játékkal, kulcsrakészen!
- Precision 7670 16" 4K+ OLED érintők i7-12850HX RTX A2000 32GB 512GB NVMe ujjlolv IR kam gar
- Legion Y540-15IRH 15.6" FHD IPS i7-9750H GTX 1660 Ti 16GB 256GB NVMe + 500GB HDD magyar vbill gar
- Bomba ár! Lenovo ThinkPad L13 G3 - i5-1245U I 16GB I 256SSD I 13,3" FHD Touch I NBD Gari!
- LG 40WP95XP-W - 40" NANO IPS - 5120x2160 5K - 72Hz 5ms - TB 4.0 - HDR - AMD FreeSync
- Azonnali készpénzes Intel i3 i5 i7 i9 8xxx 9xxx processzor felvásárlás személyesen / csomagküldés
- Telefon felvásárlás!! Samsung Galaxy A70/Samsung Galaxy A71/Samsung Galaxy A72
- Új Dell 14 Inspiron 5435 FHD+ Ryzen7 7730U 4.5Ghz 16GB 512GB SSD Radeon RX Vega 8 Win11 Garancia
Állásajánlatok
Cég: FOTC
Város: Budapest