Assalamu’alaikum wa rochmatullohi wa barokatuh
Salam sejahtera buat kita semua, semoga kita semua selamat di perjalanan sampai ke tujuan
Perjalanan perancangan ecu berbasis arduino telah menyelesaikan tahap ke-2, yaitu perancangan tachometer. Untuk merancang tachometer berbasis arduino gampang-gampang susah. Gampang karena di internet sudah banyak yang nge-share, susahnya saat akan diwujudkan secara riil, komponen yang mendukungnya (sesuai dengan artikel yang di share) belum ada. Dan saat dirancangpun belum tentu langsung jalan, masih ada faktor “jika Allah mengizinkan”, alias insya Allah.
Alhamdulillah arduino yang motogokil sudah berjalan. Sudah bisa mengukur putaran, menampilkan dan terkalibrasi (lihat gambar judul). Komponen yang digunakan sebahagian besar bersifat umum untuk penggemar arduino, yaitu :
- Arduino uno, kabel usb, kabel power 9V, power supply adaptor atau battery 9V
- Kabel jumper
- LCD bisa 1602 atau 1604 dan yang lainnya
- Potensio 10k ohm, meter untuk mengatur ke kontrasan lcd
- Sensor optik (modul tcrt5000)
Gambar rangkaian asalnya nya dengan menggunakan project board kira-kira seperti ini
Kemudian karena mencari photodetector nggak dapat, ahirnya diputuskan untuk menggunakan modul trcr500, yang sudah sering dipakai pada robot line tracer.Penampakan tcrc5000
Jadi tidak usah bikin rangkaian led ir dan photodetector ir. Tinggal colok saja kaki VCC dan GND ke pin+5V dan GND pada board arduino. Kemudian hubungan kaki DO pin D1 pada arduio. Beginilah hasil modifikasi dari project board sebelumnya
Kemudian skrip programnya adalah seperti ini (lebih sederhana dibandingkan versi aslinya)
/*
* Optical Tachometer
*
* Uses an TCRC5000 to implement an optical tachometer.
* Pin 2 (interrupt 0) is connected across the D0 on TCRC5000.
*
* Code based on: www.instructables.com/id/Arduino-Based-Optical-Tachometer/
* Coded by: motogokil.com
*/
volatile byte rpmcount;
unsigned int rpm;
unsigned long timeold;
// include the library code:
#include <LiquidCrystal.h>
// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);
void rpm_fun()
{
//Each rotation, this interrupt function is run twice, so take that into consideration for
//calculating RPM
//Update count
rpmcount++;
}
void setup()
{
lcd.begin(16, 4); // intialise the LCD
lcd.setCursor(0,0);
lcd.print(“== TACHOMETER ==”);
lcd.setCursor(0,1);
lcd.print(“RPM=”);
lcd.setCursor(0,4);
lcd.print(” by motogokil “);
//Interrupt 0 is digital pin 2, so that is where the IR detector is connected
//Triggers on FALLING (change from HIGH to LOW)
attachInterrupt(0, rpm_fun, RISING);
rpmcount = 0;
rpm = 0;
timeold = 0;
}
void loop()
{
//Update RPM every second
delay(1000);
//Don’t process interrupts during calculations
detachInterrupt(0);
//Note that this would be 60*1000/(millis() – timeold)*rpmcount if the interrupt
//happened once per revolution instead of twice. Other multiples could be used
//for multi-bladed propellers or fans
rpm = 30*1000/(millis() – timeold)*rpmcount;
timeold = millis();
rpmcount = 0;
//Print out result to lcd
lcd.setCursor(4,1);
lcd.print(rpm/2*1.03576); //calibrated with tachometer
//Restart the interrupt processing
attachInterrupt(0, rpm_fun, RISING);
}
Ok, sementara sampai di sini dulu langkah perancangan ecu berbasis arduino. Selajutnya akan dirancang penentuan waktu pengapian dan durasi injektor pada rpm tertentu. Dan inilah yang menjadi inti dari semua program ecu yang terkait dengan performa engine.
Lebih dan kurangnya mohon maaf, sumbang sarannya dari para ahli sangat diharapkan. Semoga bermanfaat, wassalamu’alaikum wa rochmatullohi wa barokatuh.
bahasa program arduino kok mirip bahasa c ya?
angka statis 1.03576 dapat darimana ya?
perbandingan antara tampilan di lcd dangan hasil pengukuran tachometer
Awas prothol pakk DOHC kan lebih rumit pakk
Bro, kalau beli arduino/genuino starter kit yg original, ada referensi kah?
wah nggak tahu bro, yang jelas harganya bisa 2 sampai 3x lipat dari versi clone nya
sementara ane pakai versi clone yg agak bagus, menurut praktisinya sih nggak masalah
beli clone yg pake atmega 328 tipe DIP gan, sedikit lebih mahal tp AVR mudah diganti jika rusak, dan multi fungsi bisa buat programmer, gaush beli usbasp lagi 😀
Kirain pake raspberry pi3
ntar menyusul, kalau sdh tambah ruwet
Minta sekalian bahasa programnya ya om. Ane jg pgn cuma kendala bahasa program aja 😀
Apaan itu om
Coba cek aja om di internet. Mantep deh
Motherboard gitu ya om ? Buat ngapain aja ? Ane sering liat di socmed, tapi bingung sendiri wkwkwk
Singleboard computer om. macam micro komp tujuannya banyak om. Cek youtube aja fungsi raspberry. Hehehe
Itu Honda MainBoard bro. Pake bahasa Hondarduino v1.1 buat oprek DOHC Operstruk.
:v
sip banget sharingnya. perlu dicontohkan pemasangan sensornya. apa di cakram?
https://kupasmotor.wordpress.com/2016/09/01/oli-yang-bagus-untuk-mesin-itu-tidak-butuh-viscosity-index-yang-tinggi-tinggi-amat-banyak-yang-salah-mengerti-soal-vi-dan-hths/
di magnet
sip, terima kasih
display ganti yg 240X320 pak, lebih informatif dan bisa nampilin grafik. harga juga masih terjangkau
berapaan harganya tuh ?
ditoped sekitar 80rban pak, rgb color, dan sudh touchscreen pula 😀
dan terakhir, jika untuk produk safety lebih baik pindah ke CV avr, atw atmel studio
arduino punya sedikit bug.
https://youtu.be/648Tx5N9Zoc
ok trims atas sarannya
seblumnya memang pakai avr