vineri, 21 octombrie 2016

Masurare turatie cu senzor Hall si Arduino

   Am testat cateva sketch-uri de masurare a turatiei cu un senzor Hall si cu o placa Arduino, initial, folosindu-ma de informatiile de pe pagina oficiala Arduino si anume de materialul din articolul Reading Fan RPM 
in care se conecteaza un ventilator de procesor la alimentarea de 12V si iesirea senzorului Hall incorporat se conecteaza la 5V printr-o rezistenta de 10k, exact ca in articolul Reading PC Fan RPM with an Arduino
   Cu aceasta ocazie am facut is un filmulet, numit masurare turatie ventilator cu senzor Hall folosind Arduino
   Sketch-ul din articolul Reading Fan RPM afisa informatia doar in ecranul de moniorizare seriala, asa ca am cautat prin afisajele mele unul care se poate conecta repede, si primul gasut a fost un modul cu 8 cifre din 7 segmente fiecare controlate de un MAX7219, acesta se conecteaza simplu, cum am prezentat in articolul de AICI, schema de conectare fiind foarte simpla:
   Am combinat sketch-ul anterior cu cel pentru MAX7219 si mi-a iesit sketch-ul reading_RPM1.ino, cu care am facut filmuletul masurare turatie ventilator cu senzor Hall folosind Arduino (2)
   Am testat si varianta de sketch in care ce foloseste o intrare analogica, cum este prezentat pe site-ul oficial Arduino in materialul Tachometer adaptand sketch-ul de acolo cu partea de afisaj cu MAX7219, rezultandu-mi sketch-ul rpm_analoginput1.ino in care iesirea senzorului Hall este conectata la A0 (am pastrat rezistenta de 10k la 5V) si am facut filmuletul masurare turatie ventilator cu senzor Hall folosind Arduino (4) in care se vede modul de afisare:
   Dupa ce am mai cautat pe net, am consatat ca tot partea testata initial e mai precisa, deoarece foloseste "intreruperi" ale microcontrolerului ATmega.. nu intru in amanunte ca nu ma pasioneaza sa reinventez roata, dar am testat si un sketch al lui mare programator, Nick Gammon, de data asta fiind multumit de rezultate, in sensul ca variatia indicatiilor nu este mare ca in celelalte cazuri. pentru cei ce vor sa aprofundeze acest mod de citire, le recomand articolul Interrupts scris de Nick Gammom si articolul AttachInterrupt de pe site-ul oficial Arduino.
   Sketch-ul testat a fost gasit la www.mikrocontroller.net si a fost adaptat de mine pentru afisajul cu MAX7219, devenind RPM_intr_nick_gammon_1.ino si am facut 2 filmulete in care se vede ca unde motorul ventilatorului are turatii constante afisarea este ok:

Niciun comentariu:

Trimiteți un comentariu