Daftar Isi:
- Langkah 1: Pilih Kawat Sigal
- Langkah 2: Perpanjang Kawat ke Papan Arduino
- Langkah 3: Analisis Sinyal
- Langkah 4: Kode Analisis Sinyal Anda
- Langkah 5: Identifikasi Filter
- Langkah 6: Penyaringan: Bagian 1
- Langkah 7: Penyaringan: Bagian 2
- Langkah 8: Penyaringan: Bagian 3
- Langkah 9: Penyaringan: Bagian 4
Video: Gunakan Arduino untuk Menampilkan RPM Mesin: 10 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:55
Panduan ini akan menjelaskan bagaimana saya menggunakan Arduino UNO R3, layar LCD 16x2 dengan I2C, dan strip LED untuk digunakan sebagai pengukur kecepatan mesin dan lampu shift di mobil trek Acura Integra saya. Ini ditulis dalam istilah seseorang dengan beberapa pengalaman atau paparan perangkat lunak Arduino atau pengkodean secara umum, perangkat lunak matematika MATLAB, dan membuat atau memodifikasi sirkuit listrik. Di masa depan, ini dapat direvisi agar lebih mudah dipahami oleh seseorang yang tidak memiliki pengalaman dengan topik ini.
Langkah 1: Pilih Kawat Sigal
Anda harus mendapatkan sinyal yang berhubungan dengan kecepatan mesin. Dimungkinkan untuk menambahkan sistem yang mengukur kecepatan engine tetapi jauh lebih praktis untuk menggunakan kabel yang ada yang membawa informasi kecepatan engine. Satu mobil mungkin memiliki banyak sumber untuk ini, dan mungkin sangat bervariasi bahkan dari tahun ke tahun pada model kendaraan tunggal. Untuk keperluan tutorial ini saya akan menggunakan contoh mobil saya, trek modifikasi Acura Integra LS 2000. Saya menemukan di mesin saya (B18B1 dengan OBD2) ada tegangan keluar yang tidak terpakai yaitu 12V tinggi dan turun ke 0V setelah menyelesaikan putaran penuh.
Hal-hal yang akan membantu mengidentifikasi sinyal kecepatan engine potensial:
- Diagram pengkabelan untuk kendaraan Anda
- Mencari forum untuk kendaraan Anda yang melibatkan sinyal mesin/ECU
- Mekanik atau penggila mobil yang ramah
Langkah 2: Perpanjang Kawat ke Papan Arduino
Setelah Anda memilih sinyal yang sesuai, Anda harus memperluasnya ke mana pun Anda menempatkan papan Arduino Anda. Saya memutuskan untuk menempatkan milik saya di dalam kendaraan tempat radio dulu berada, jadi saya mengarahkan kabel baru dari mesin, melalui grommet karet di dinding api, dan langsung ke area radio. Karena sudah ada banyak sekali panduan cara untuk mengupas, menyolder, dan melindungi kabel, saya tidak akan menjelaskan proses ini.
Langkah 3: Analisis Sinyal
Di sinilah hal-hal bisa menjadi rumit. Memiliki pemahaman umum tentang analisis dan kontrol sinyal akan sangat membantu Anda, tetapi dapat dilakukan dengan sedikit pengetahuan.
Kabel sinyal yang dipilih kemungkinan besar tidak akan menyemburkan nilai yang tepat dari kecepatan mesin. Ini perlu dibentuk dan dimodifikasi untuk memberikan jumlah RPM mesin yang Anda inginkan. Karena setiap mobil yang berbeda dan pilihan kabel sinyal mungkin berbeda, mulai saat ini saya akan menjelaskan bagaimana saya menggunakan sinyal posisi dari distributor pada Integra saya.
Sinyal saya biasanya 12V dan turun ke 0V saat menyelesaikan satu putaran penuh. Jika Anda mengetahui waktu untuk menyelesaikan satu putaran penuh, atau satu putaran penuh, ini dapat dengan mudah diterjemahkan ke dalam putaran/menit menggunakan beberapa konsep dasar.
1 / (detik per siklus) = siklus per detik, atau Hz
Revolusi per menit = Hz * 60
Langkah 4: Kode Analisis Sinyal Anda
Metode ini membutuhkan waktu yang dibutuhkan sinyal input untuk menyelesaikan satu siklus penuh. Untungnya perangkat lunak Arduino IDE memiliki perintah yang melakukan hal itu, PulseIn.
Perintah ini akan menunggu sinyal untuk melewati ambang batas, mulai menghitung, dan berhenti menghitung ketika ambang batas dilewati lagi. Ada beberapa detail yang harus diperhatikan saat menggunakan perintah, jadi saya akan menyertakan tautan ke informasi PulseIn di sini:
PulseIn akan mengembalikan nilai dalam mikrodetik, dan untuk menjaga agar matematika tetap sederhana, ini harus segera diubah menjadi detik normal. Mengikuti matematika pada langkah sebelumnya, durasi waktu ini dapat disamakan langsung ke RPM.
Catatan: setelah coba-coba saya menemukan distributor menyelesaikan dua putaran untuk setiap putaran poros engkol mesin, jadi saya hanya membagi jawaban saya dengan 2 untuk memperhitungkan itu.
Langkah 5: Identifikasi Filter
Jika Anda beruntung sinyal Anda tidak akan 'noise' (fluktuasi) dan kecepatan mesin Anda akan tepat. Dalam kasus saya, ada banyak suara yang datang dari distributor yang sering memberikan tegangan jauh dari yang diharapkan. Ini berubah menjadi pembacaan yang sangat salah dari kecepatan mesin yang sebenarnya. Kebisingan ini perlu disaring.
Setelah beberapa analisis sinyal, hampir semua kebisingan datang pada frekuensi (Hz) yang jauh lebih tinggi daripada yang dihasilkan mesin itu sendiri (yang berlaku untuk sebagian besar sistem dinamis nyata). Ini berarti filter lolos rendah adalah kandidat yang ideal untuk menangani hal ini.
Sebuah filter lolos rendah memungkinkan frekuensi rendah (diinginkan) untuk melewati dan melemahkan frekuensi tinggi (tidak diinginkan).
Langkah 6: Penyaringan: Bagian 1
Merancang filter dapat dilakukan dengan tangan, namun menggunakan MATLAB akan mempercepat ini secara signifikan jika Anda memiliki akses ke perangkat lunak.
Filter lolos rendah dapat disamakan dengan fungsi transfer (atau fraksi) dalam domain Laplace (domain frekuensi). Frekuensi input akan dikalikan dengan pecahan ini dan outputnya adalah sinyal yang difilter yang hanya memiliki informasi yang ingin Anda gunakan.
Satu-satunya variabel dalam fungsi adalah tau. Tau sama dengan 1/Omega, dimana Omega adalah frekuensi cutoff yang anda inginkan (harus dalam radian per detik). Frekuensi cutoff adalah batas di mana frekuensi yang lebih tinggi darinya akan dihilangkan dan frekuensi yang lebih rendah darinya akan dipertahankan.
Saya mengatur frekuensi cutoff sama dengan RPM yang tidak akan pernah dicapai mesin saya (990 RPM atau 165 Hz). Grafik FFT menunjukkan secara kasar frekuensi apa yang dibawa sinyal mentah saya dan frekuensi yang keluar dari filter.
Langkah 7: Penyaringan: Bagian 2
Di sini MATLAB digunakan lagi untuk kepentingan waktu. Frekuensi cutoff ditentukan, dan dari situ fungsi transfer yang dihasilkan ditampilkan. Perlu diingat pecahan ini hanya berlaku untuk domain Laplace dan tidak bisa langsung digunakan pada mikrokontroler berbasis waktu seperti Arduino UNO R3.
Langkah 8: Penyaringan: Bagian 3
MATLAB memiliki perintah yang akan mengubah fungsi kontinu (domain frekuensi) menjadi fungsi diskrit (domain waktu). Output dari perintah ini akan memberikan persamaan yang dapat dengan mudah dimasukkan ke dalam kode Arduino IDE.
Langkah 9: Penyaringan: Bagian 4
Dalam sketsa Arduino, sertakan variabel u dan y sebelum pengaturan. Perintah float hanya mendefinisikan bagaimana variabel akan menyimpan data (hal-hal seperti nilai maksimum, desimal, dll…) dan tautan ke informasi lebih lanjut tentang ini akan disediakan di sini: https://www.arduino.cc/reference/en/language /varia…
Dalam loop di mana konversi dari sinyal mentah menjadi kecepatan mesin sedang berlangsung, sertakan variabel u dan persamaan kelipatan y. Ada beberapa cara untuk menggunakan ini, tetapi variabel u harus disetel sama dengan sinyal input mentah yang diukur, dan variabel y akan menjadi nilai yang difilter.
Direkomendasikan:
Cara Mengatur Samsung Galaxy S7 Dengan Android 8.0 untuk Hanya Menampilkan Layar untuk Satu Aplikasi!!: 5 Langkah
Cara Mengatur Samsung Galaxy S7 Dengan Android 8.0 untuk Hanya Menampilkan Layar untuk Satu Aplikasi!!: Instruksi ini akan menunjukkan kepada Anda cara mengatur samsung galaxy s7 Anda untuk menampilkan layar hanya untuk satu aplikasiIni bagus jika Anda memiliki bayi/anak yang suka bermain dengan ponsel Anda atau ingin memastikan ponsel Anda tetap dalam satu aplikasi hanya ketika orang lain
Gunakan Cortana dan Arduino untuk Mengontrol RGB Led atau Ledstrips Dengan Suara Anda!: 4 Langkah (dengan Gambar)
Gunakan Cortana dan Arduino untuk Mengontrol RGB Led atau Ledstrips Dengan Suara Anda!: Dalam instruksi ini saya akan menunjukkan kepada Anda bagaimana Anda dapat mengontrol led RGB atau strip led dengan suara Anda. Ini dilakukan oleh aplikasi CoRGB yang tersedia secara gratis di toko aplikasi windows. Aplikasi ini adalah bagian dari proyek CortanaRoom saya. Ketika Anda selesai dengan
Gunakan Modul Bluetooth HC-05 untuk Mewujudkan Komunikasi Mikro:bit Dengan Ponsel: 9 Langkah (dengan Gambar)
Gunakan Modul Bluetooth HC-05 untuk Mewujudkan Komunikasi Mikro:bit Dengan Ponsel: Dalam bab Menggunakan Modul Bluetooth HC-06 untuk Mewujudkan Komunikasi Mikro:bit Dengan Ponsel, kita telah membahas tentang cara menggunakan HC-06 untuk mewujudkan komunikasi antara mikro: bit dan ponsel. Kecuali HC-06, ada modul Bluetooth umum lainnya
Gunakan Modul Bluetooth HC-06 untuk Mewujudkan Komunikasi Mikro:bit Dengan Ponsel: 8 Langkah (dengan Gambar)
Gunakan Modul Bluetooth HC-06 untuk Mewujudkan Komunikasi Mikro:bit Dengan Ponsel: Banyak teman di sekitar saya yang bermain mikro:bit memberi tahu saya bahwa koneksi Bluetooth mikro:bit tidak stabil. Sangat mudah untuk memutuskan sambungan. Jika kita menggunakan micropython, Bluetooth bahkan tidak dapat digunakan. Sebelum masalah ini diselesaikan oleh micro:bit office
Gunakan SSH dan XMing untuk Menampilkan Program X Dari Komputer Linux di Komputer Windows: 6 Langkah
Menggunakan SSH dan XMing untuk Menampilkan Program X Dari Komputer Linux di Komputer Windows: Jika Anda menggunakan Linux di kantor, dan Windows di rumah, atau sebaliknya, Anda mungkin terkadang perlu masuk ke komputer di lokasi lain , dan menjalankan program. Nah, Anda dapat menginstal X Server, dan mengaktifkan SSH Tunneling dengan SSH Client Anda, dan satu