Car Engine Monitor #1


Ide untuk membuat sesuatu terkait dengan mesin mobil diawali oleh permintaan kakak laki-laki saya yang sangat menyukai mobil tua, yang oleh saya seringkali dianggap lebih banyak membawa masalah ketimbang memudahkan kehidupan. Dia meminta saya untuk melakukan sesuatu dengan elektronika sehingga berguna untuk mobil tuanya, yaitu sebuah VW beetle buatan tahun 1960-an.

bug

 

engine

clean old dashboard

 

spechless

 

 

Setelah melakukan sedikit review dan diskusi singkat, ada beberapa point yang menurut saya bisa saja ditambahkan untuk vintage car, yaitu:

  • Digital RPM meter/Tachometer
  • Digital engine/oil temperature monitor
  • Electronic ignition system
  • Replace carburetor system with injection system

Sesuai dengan urutannya,  modifikasi/tambahan yang saya sebutkan diatas berurut dari yang paling mudah dilakukan hingga yang tinggi tantangannya.  Berikut akan saya bahas satu persatu.

1. Digital RPM meter/Tachometer

Kebanyakan “vintage car” belum menyediakan instrument untuk memonitor jumlah putaran mesin (RPM = Rotate Per Minute). Saya kira akan sangat memudahkan (mungkin karena terbiasa) bila pada saat mengemudikan kendaraan kita bisa mengetahui kondisi putaran mesin.  Dari Tachometer ini sekilas kita juga bisa mengetahui kesehatan atau kondisi mesin kendaraan kita. Beberapa hal yang terkait dengan nilai bacaan tachometer adalah:

  • Iddle/stationary RPM, pada saat mobil dalam menyala tetapi tidak dalam kondisi berjalan berapakah nilai bacaan RPM yang tepat? Hal ini tidak sama untuk semua kendaraan, namun masing-masing manufaktur sudah mendefinisikan pada masing-masing jenis mesin.
  • Curva perbandingan antara jumlah putaran mesin dengan torsi yang dihasilkan.

  • Fuel consumption terkait dengan point diatas.
  • Batas maksimum dan usia kerja, oli, dan fast moving komponen mesin.
  • dan lainnya

Ada beberapa teknik yang umum digunakan untuk membaca putaran mesin dari sisi sensor untuk membaca pulsa, yaitu :

  • Electric direct couple dengan tegangan dari primer koil ignition. Artinya,  kita melakukan kopling langsung dengan tegangan primer di platina. Pada primer koil ignition yang terhubung dengan kontak platina akan terdapat tegangan pulsa dikarenakan memutus sambungan platina pada saat bekerja untuk menghasilkan tegangan primer koil iginition bagi busi.

direct coupling

  • Electric inductive couple. Letaknya tidak terlalu jauh dari direct couple,  namun secara induktif  dengan menggunakan lilitan kita membaca induksi tegangan sekunder dari ignition atau katakanlah kita mengambil pulsa dari salah satu kabel busi.

inductive coupling

 

  • Electro mechanic. Diperlukan pemasangan sensor pada bagian mesin yang berputar. Sebagai contoh bisa menggunakan hall effect sensor atau mungkin optocoupler, untuk menghasilkan pulsa sesuai dengan putaran mesin. Adakalanya dengan pengaturan yang lebih komplek metode ini dapat memberikan masukan yang lebih akurat sehingga persis memberikan bacaan posisi camshaft, hal ini bermanfaat untuk mengendalikan mesih lebih jauh (ignition timming dan injector timming).

electro mechanical couling

Dua metode pertama di atas terkait dengan proses pengapian kendaraan yang secara detil bisa dibaca pada link berikut ignition system.

Sinyal pulsa dari salah satu sumber yang saya sebutkan di atas lalu di hubungkan ke pin interrupt microcontroller di mana sebuah timer di-trigger oleh sinyal ini lalu dibaca nilainya. Dengan mengetahui waktu antara pulsa pulas ini dan jumlah silender kendaraan dengan perhitungan dapat diketahui berapa jumlah putaran mesin dalam satu menit.

RPM = 60 / (jumlah silinder * waktu antara pulsa)

Contoh: bila waktu antara pulsa adalah 0.010 (10ms) maka rpm adalah

RPM = 60/(4*0.01)

= 60/0.04

= 1.500*

*untuk mechnical pick up perlu di sesuaikan lagi perhitungannya.

RPM schematic + Temp (PT100)

Rangkaian di atas adalah bagian mikrontroller dan 2 buah 4 digit seven segment, rangkaian ini mampu menampilkan 2 buah besaran display yang saya peruntukan bagi besaran RPM dan temperatur mesin.

Sinyal dari rangkaian pick up di atas selanjutnya men-trigger interupsi, waktu antara interupsi dihitung oleh timer yang dimiliki mikrokontroller. Jeda waktu inilah yang kemudian dihitung dan diolah menjadi besaran jumlah putaran mesin dalam satu detik, setelah tentunya dihitung pula jumlah silinder atau untuk sensor jenis ketiga diperhitungkan juga jumlah pulsa dalam satu rotasi.

Seven segment di-trigger secara bergantian oleh sebuah transistor yang dikontrol oleh sebuah 3 ke 8 decoder. Alternatif metode lain bisa juga dengan menggunakan serial sift register (74HC595) untuk men-drive seven segment dan lebih hemat port (serial data). Akan tetapi karena saya tidak punya librari-nya di ExpressSCH jadi memakai metode ini saja di gambar ya, toh tidak sulit bila ingin mengantinya.

Perhatikan signal conditioning untuk  PT100 yang mengkonversi 0-300’C menjadi  0-5Volt yang bisa di-sampling oleh internal ADC mikrocontroller.  Karena masih ada banyak pin mikrocontroller yang belum terpakai maka kita masih bisa menambahkan input analog lain, seperti kita bisa membaca 2 besaran temperatur untuk olie mesin dan satu lagi untuk air intake atau yang lainnya.

Selanjutnya pilihan kembali kepada kita seperti apa tampilan yang diinginkan apakah berupa 7 Segment, LED bar atau LED circular.

 

note: beberapa gambar adalah ilustrasi dari berbagai sumber

semoga bermanfaat

Dian Kurniawan

Advertisements

3 thoughts on “Car Engine Monitor #1

  1. Terimakasih Pak atas referensinya,

    Jadi saya mau buat rpm meter digital Pak, dengan menggunakan lcd sebagai output dan atmega sebagai mikrokontrollernya.
    Untuk inputan/sensingan atmega dari mana ya pak? Setahu saya dari induksi busi, tapi konsepnya bagaimana? Apakah perlu induktor untuk menurunkan indikasi busi ke tegangan atmega (5 volt?

    mohon pencerahannya

    Maturnuwun,

  2. Selamat pagi pak.
    Terimakasih atas referensinya.. 🙂

    Mau tanya Pak, jadi saya ingin buat rpm meter digital portable dengan kontrol atmega. Saya masih kesulitan untuk input atau sinyalnya.
    Diatas dibahas melalui induksi busi. Bagaimana konsep rangkaiannya? Mengingat busi bekerja dengan tegangan tinggi dan atmega hanya 5 volt. Apakah perlu induktor untuk menurunkan voltage busi tadi?

    Terimakasih dan Maturnuwun pak..

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s