Arduino-val szeretnék fordulatszámot mérni 0-120 ford/min tartományban hall szenzor modullal és mágnessel. Ismertek rá valamilyen tutorialt, leírást, ami alapján el tudok indulni?
Mennyi tapasztalatod van hozzá?
Nézd meg egy példában, hogyan kell kezelni a hall szenzort, aztán rakj össze egy számlálót a kódban, és kb készen is vagy vele.
Bruhhh. Az a gázos, hogy még rendes leírást sem találok ennek a hardvernek a kommunikációs módjáról. Utalás van rá, hogy simán 0 vagy 1 jelet ad le GPIO-jelleggel aszinkron módon, de nem igazán látom át, hogy akkor mit lehet azzal kezdeni.
De tételezzük fel, hogy igazam van abban, hogy hogyan működik:
Simán mágnest lát, vagy nem lát mágnest, és ez alapján 0 vagy 1.
Indítani kéne egy taszkot, ami mondjuk 5 másodpercenként fut le. Ez a taszk fogja egy integer változó értékét olvasni (ebben tároljuk, hogy hány pozitív érzékelés volt), majd 0-zuk (minden futáskor, azaz 5 másodpercenként). A két értékből szorzás-osztás segítségével megkapod a fordulatszámot.
A nehezebb rész: hogyan adjunk hozzá egy változóhoz egyet, amikor van valami érték.
Én úgy gondolom, hogy inicializálnod kéne egy sztandard gpio drivert, ami nem csinál nagyon semmit. Beállítod, hogy a megadott GPIO porton fogadjon interruptot. Ez az interrupt az az esemény, amikor 1-be lép az eszköz. Azaz szakszóval mondva (mivel valószínűleg az arduino könyvtárban is így találod meg) Rising Edge interrupt figyelését kell beállítanod (azaz amikor 0-ból 1-be vált, azaz felfutó él). Ezen felül beállítasz egy interrupt-kezelő függvényt is, ami nem csinál mást, csak a globális int változód értékét megnöveli eggyel.
Remélem ezzel tudsz valamit kezdeni így, konkrét arduino kódom nincs, de a módszer az ez. Ha valami nem világos, írj rám.
#2 vagyok
ezt találtam segítségként:
Itt a rising interruptot kell a pinre beállítani, amire kötötted a szenzort.
Példakód a linken. A kezelő függvényben meg növeled a számlálót.
További kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!