Rangkaian Tachometer Arduino untuk Pembacaan Yang Tepat

Coba Instrumen Kami Untuk Menghilangkan Masalah





Tachometer adalah alat yang mengukur RPM atau kecepatan sudut benda yang berputar. Ini berbeda dari speedometer dan odometer karena perangkat ini menangani kecepatan linier atau tangensial tubuh sementara tachometer a.k.a. 'tach' menangani RPM yang lebih mendasar.

Oleh Ankit Negi



Tachometer terdiri dari penghitung dan pengatur waktu yang keduanya bekerja bersama menyediakan RPM. Dalam proyek kami, kami akan melakukan hal yang sama, menggunakan Arduino kami dan beberapa sensor, kami akan mengatur penghitung dan pengatur waktu dan mengembangkan tach praktis dan mudah kami .

Prasyarat

Penghitung tidak lain adalah perangkat atau pengaturan yang dapat menghitung kejadian biasa tertentu seperti lewatnya titik dalam disk saat dalam rotasi. Awalnya penghitung dibangun menggunakan pengaturan dan hubungan mekanis seperti roda gigi, ratchet, pegas, dll.



Tetapi sekarang kita menggunakan counter yang memiliki sensor dan elektronik yang lebih canggih dan sangat presisi. Timer adalah elemen elektronik yang mampu mengukur interval waktu antar kejadian atau mengukur waktu.

Di Arduino Uno kami ada pengatur waktu yang tidak hanya melacak waktu tetapi juga mempertahankan beberapa fungsi penting Arduino. Di Uno kami memiliki 3 timer bernama Timer0, Timer1 dan Timer2. Timer ini memiliki fungsi berikut- • Timer0- Untuk fungsi Uno seperti delay (), millis (), micros () atau delaymicros ().

• Timer1- Untuk kerja perpustakaan servo.

• Timer2- Untuk fungsi seperti nada (), bukan satu ().

Bersama dengan fungsi-fungsi ini, 3 timer ini juga bertanggung jawab untuk menghasilkan Output PWM ketika perintah analogWrite () digunakan di pin yang ditunjuk PMW.

Konsep Interupsi

Di Arduino Uno alat tersembunyi hadir yang dapat memberikan akses ke banyak fungsi kepada kami yang dikenal sebagai Interupsi Timer. Interupsi adalah serangkaian peristiwa atau instruksi yang dijalankan ketika dipanggil mengganggu fungsi perangkat saat ini, yaitu tidak peduli apa kode Uno Anda dieksekusi sebelumnya tetapi setelah Interrupt disebut Arduino, jalankan instruksi yang disebutkan di Interrupt.

magnet pada poros motor

Sekarang Interupsi dapat dipanggil pada kondisi tertentu yang ditentukan oleh pengguna menggunakan Sintaks Arduino inbuilt. Kami akan menggunakan Interupsi ini dalam proyek kami yang membuat tachometer kami lebih tegas dan juga lebih tepat daripada proyek Tachometer lain yang ada di seluruh web.

Komponen yang dibutuhkan untuk proyek Tachometer ini menggunakan Arduino

• Sensor Efek Hall (Gbr.1)

modul sensor efek hall

• Arduino Uno

Papan Arduino UNO

• Magnet kecil

magnet kecil

• Kabel jumper

• Benda Berputar (Poros motor)

Motor DC

Pengaturan Sirkuit

• Pengaturan untuk membuat adalah sebagai berikut-

• Pada poros yang akan diukur kecepatan putarannya dipasang magnet kecil dengan menggunakan lem atau selotip listrik.

• Sensor Hall Effect memiliki detektor di depan dan 3 pin untuk koneksi.

• Pin Vcc dan Gnd masing-masing terhubung ke pin 5V dan Gnd dari Arduino. Pin Output dari sensor dihubungkan ke pin digital 2 dari Uno untuk memberikan sinyal input.

• Semua komponen dipasang di papan dudukan dan detektor Hall ditunjukkan dari papan.

Pemrograman

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
}

Unggah kodenya.

Ketahui kodenya

Tachometer kami menggunakan sensor Hall Effect Sensor Hall Effect berdasarkan efek Hall yang dinamai menurut penemunya Edwin Hall.

Efek Hall adalah fenomena pembangkitan tegangan melintasi konduktor pembawa arus ketika medan magnet diperkenalkan tegak lurus dengan aliran arus. Tegangan ini dihasilkan karena fenomena ini membantu dalam pembangkitan sinyal Input. Seperti yang disebutkan Interupsi akan digunakan dalam proyek ini, untuk memanggil Interupsi kita harus mengatur beberapa kondisi. Arduino Uno memiliki 2 kondisi untuk memanggil Interrupts-

RISING- Ketika digunakan ini, Interupsi dipanggil setiap kali sinyal Input berubah dari LOW ke HIGH.

FALING-Saat digunakan ini, Interrupt dipanggil ketika sinyal beralih dari HIGH ke LOW.

Kami telah menggunakan RISING, yang terjadi adalah ketika magnet yang ditempatkan di poros atau objek berputar mendekati detektor Hall Sinyal input dihasilkan dan Interupsi dipanggil, Interupsi memulai fungsi Interrupt Service Routine (ISR), yang mencakup kenaikan dalam menghitung nilai dan dengan demikian menghitung berlangsung.

Kami telah menggunakan fungsi millis () dari Arduino dan previoustime (variabel) dalam korespondensi untuk mengatur timer.

Jadi RPM akhirnya dihitung menggunakan hubungan matematis-

RPM = Hitungan / Waktu yang Diperlukan Mengubah milidetik menjadi menit dan penataan ulang kita mendapatkan rumus = 60 * 1000 / (milis () - previoustime) * hitungan.

Penundaan (1000) menentukan interval waktu setelah nilai RPM akan diperbarui di layar, Anda dapat menyesuaikan penundaan ini sesuai dengan kebutuhan Anda.

Nilai RPM yang diperoleh ini selanjutnya dapat digunakan untuk menghitung kecepatan tangensial benda berputar menggunakan hubungan- v = (3,14 * D * N) / 60 m / s.

Nilai RPM juga dapat digunakan untuk menghitung jarak yang ditempuh dengan roda atau cakram yang berputar.

Alih-alih mencetak nilai ke monitor Serial, perangkat ini dapat dibuat lebih berguna dengan menghubungkan layar LCD (16 * 2) dan baterai untuk penggunaan yang lebih baik.




Sepasang: Sirkuit Pengemudi Motor Stepper menggunakan IC 555 Berikutnya: Rangkaian Pengukur Kapasitansi Digital Menggunakan Arduino