Litar Arduino Tachometer untuk Bacaan Tepat

Cuba Instrumen Kami Untuk Menghapuskan Masalah





Tachometer adalah alat yang mengukur RPM atau halaju sudut badan berputar. Ia berbeza dengan speedometer dan odometer kerana alat ini menangani halaju linier atau tangen badan sementara tachometer a.k.a. “tach” memperkatakan RPM yang lebih mendasar.

Oleh Ankit Negi



Tachometer terdiri daripada pembilang dan pemasa yang kedua-duanya bekerja sama menyediakan RPM. Dalam projek kami, kami akan melakukan perkara yang sama, dengan menggunakan Arduino dan beberapa sensor kami akan menyiapkan pembilang dan pemasa dan mengembangkan tach kami yang berguna dan mudah .

Prasyarat

Kaunter tidak lain hanyalah alat atau persediaan yang dapat mengira kejadian biasa yang berlaku seperti melewati titik dalam cakera semasa dalam putaran. Pada mulanya kaunter dibina menggunakan susunan mekanikal dan jalinan seperti roda gigi, ratchet, pegas dll.



Tetapi sekarang kita menggunakan kaunter yang mempunyai sensor dan elektronik yang lebih canggih dan tepat. Timer adalah elemen elektronik yang dapat mengukur selang waktu antara peristiwa atau mengukur masa.

Di Arduino Uno kami terdapat pemasa yang tidak hanya mengesan masa tetapi juga mengekalkan beberapa fungsi penting Arduino. Di Uno kami mempunyai 3 pemasa bernama Timer0, Timer1 dan Timer2. Pemasa ini mempunyai fungsi berikut- • Timer0- Untuk fungsi Uno seperti delay (), millis (), micros () atau delaymicros ().

• Pemasa1- Untuk kerja perpustakaan servo.

• Timer2- Untuk fungsi seperti nada (), notone ().

Bersama dengan fungsi ini, 3 pemasa ini juga bertanggungjawab untuk menghasilkan Output PWM apabila arahan analogWrite () digunakan dalam pin yang ditentukan PMW.

Konsep Gangguan

Di Arduino Uno ada alat tersembunyi yang dapat memberikan akses kepada banyak fungsi kepada kami yang dikenal sebagai Timer Interrupts. Interrupt adalah sekumpulan peristiwa atau arahan yang dilaksanakan apabila dipanggil mengganggu fungsi semasa peranti, tidak peduli apa pun kod yang Uno anda laksanakan sebelumnya tetapi sekali Interrupt disebut Arduino laksanakan arahan yang disebut dalam Interrupt.

magnet pada aci motor

Sekarang Interrupt boleh dipanggil pada keadaan tertentu yang ditentukan oleh pengguna menggunakan Arduino Syntax terbina dalam. Kami akan menggunakan Interrupt ini dalam projek kami yang menjadikan tachometer kami lebih tegas dan lebih tepat daripada projek Tachometer lain yang terdapat di seluruh web.

Komponen yang diperlukan untuk projek Tachometer ini menggunakan Arduino

• Sensor Kesan Dewan (Gamb. 1)

modul sensor kesan dewan

• Arduino Uno

Papan Arduino UNO

• Magnet kecil

magnet kecil

• Wayar pelompat

• Objek Berputar (Poros motor)

Motor DC

Persediaan Litar

• Persediaan untuk membuat adalah seperti berikut-

• Pada poros yang kecepatan putarannya diukur dilengkapi dengan magnet kecil menggunakan lem atau pita elektrik.

• Sensor Hall Effect mempunyai pengesan di depan dan 3 pin untuk sambungan.

• Pin Vcc dan Gnd masing-masing disambungkan ke pin Arduino 5V dan Gnd. Pin output sensor disambungkan ke pin digital 2 Uno untuk memberikan isyarat input.

• Semua komponen dipasang di papan pelekap dan pengesan Hall ditunjukkan dari papan.

Pengaturcaraan

int sensor = 2 // Hall sensor at pin 2
volatile byte counts
unsigned int rpm //unsigned gives only positive values
unsigned long previoustime
void count_function()
{ /*The ISR function
Called on Interrupt
Update counts*/
counts++
}
void setup() {
Serial.begin(9600)
//Intiates Serial communications
attachInterrupt(0, count_function, RISING) //Interrupts are called on Rise of Input
pinMode(sensor, INPUT) //Sets sensor as input
counts= 0
rpm = 0
previoustime = 0 //Initialise the values
}
void loop()
{
delay(1000)//Update RPM every second
detachInterrupt(0) //Interrupts are disabled
rpm = 60*1000/(millis() - previoustime)*counts
previoustime = millis() //Resets the clock
counts= 0 //Resets the counter
Serial.print('RPM=')
Serial.println(rpm) //Calculated values are displayed
attachInterrupt(0, count_function, RISING) //Counter restarted
}

Muat naik kod.

Ketahui kodnya

Tachometer kami menggunakan Hall Effect Sensor Hall Effect sensor didasarkan pada kesan Hall yang dinamakan sempena penemu Edwin Hall.

apa kad nic

Hall Effect adalah fenomena penghasilan voltan merentasi konduktor arus semasa medan magnet diperkenalkan tegak lurus dengan aliran arus. Voltan ini dihasilkan kerana fenomena ini membantu dalam penghasilan isyarat Input. Seperti disebutkan, Interrupt akan digunakan dalam projek ini, untuk memanggil Interrupt, kita harus menetapkan beberapa keadaan. Arduino Uno mempunyai 2 syarat untuk memanggil Interrupts-

RISING - Apabila digunakan ini, Interrupt dipanggil setiap kali isyarat Input beralih dari RENDAH ke TINGGI.

FALING-Apabila digunakan ini, Interrupt dipanggil apabila isyarat beralih dari HIGH ke RENDAH.

Kami telah menggunakan RISING, apa yang berlaku adalah apabila magnet yang diletakkan di poros atau objek berputar mendekati detektor Hall Isyarat input dihasilkan dan Interrupt dipanggil masuk, Interrupt memulakan fungsi Interrupt Service Routine (ISR), yang meliputi kenaikan dalam nilai kiraan dan dengan itu kiraan berlaku.

Kami telah menggunakan fungsi millis () Arduino dan previoustime (variabel) dalam korespondensi untuk menyiapkan pemasa.

Oleh itu, RPM akhirnya dikira menggunakan hubungan matematik-

RPM = Kiraan / Masa yang diambil Menukar milisaat menjadi minit dan penyusunan semula kita mendapat formula = 60 * 1000 / (milis () - previoustime) * kiraan.

Penundaan (1000) menentukan selang waktu selepas itu nilai RPM akan diperbarui di layar, anda dapat menyesuaikan penundaan ini sesuai dengan keperluan anda.

Nilai RPM yang diperoleh ini dapat digunakan lebih jauh untuk mengira halaju tangen objek berputar dengan menggunakan relasi- v = (3.14 * D * N) / 60 m / s.

Nilai RPM juga dapat digunakan untuk mengira jarak yang dilalui oleh roda berputar atau cakera.

Daripada mencetak nilai ke Serial monitor, peranti ini dapat dibuat lebih berguna dengan menyambungkan paparan LCD (16 * 2) dan bateri untuk penggunaan yang lebih baik.




Sebelumnya: Litar Pemandu Motor Stepper menggunakan IC 555 Seterusnya: Litar Meter Kapasitansi Digital Menggunakan Arduino