Forum Sains Indonesia

Ilmu Terapan => Teknik Elektro => Ilmu Teknik => Mikrokontroler dan Robotika => Topik dimulai oleh: nissan_genesis pada Juni 24, 2010, 09:30:43 AM

Judul: minta bantuan itung putaran
Ditulis oleh: nissan_genesis pada Juni 24, 2010, 09:30:43 AM
hai kawan2 semua  ;D saya mo minta bantuan nih..  ;)

saya dapet "pertanyaan" dari dosen penguji saya waktu sidang kemaren, yaitu cara ngitung putaran permenit sebuah alat. misal kipas angin, bor dll... dia bilang alat yang saya bikin buat TA itu terlalu standar karena cuma baca ADC terus hasilnya ditampilin ke lcd 16x2. sebenernya selain emang kerjanya cuma itu, saya baru bisa itu doank ma beberapa fungsi standar uC lah kayak nge'drive led, baca pushbutton dll. ya namanya juga baru bisa banget jadi baru dikit yang saya ngerti tentang uC  :'(

syarat yang dia kasih adalah alat yang saya bikin harus pake phototransistor ma photodioda, terus hasil putarannya ditampilin kalo gak di 7 segment; di lcd juga oke... bingung deh apa yang harus dilakukan  ???

nah setelah "konsul" ma mbah gugel, saya dapet gambaran dikit yaitu fitur yang dipakenya berarti counter dari uC tersebut. mati gaya deh saya belum ngerti apa2 tentang counter  :-\

hardwarenya sih saya udah rada ngerti & udah bikin, pake "piringan" dari fiber bekas tempat oli yang dibikin kira2 kayak gambar ini :

(http://img8.imageshack.us/img8/5145/uploadeq.jpg)

kenapa lubangnya harus 4? karena pas pertama kali nyari contoh saya dapetnya yang model begitu jadi langsung aja saya bikin. eh kesini2nya saya liat2 lagi ternyata pake 1 lubang juga bisa  :o kagok udah dibikin jadi pake yang ada aja deh...


naah sekarang inti permasalahannya  :P

ada yang bisa bantu gak programnya begimana terus settingannya gimana terus timer/counter berapa yang harus dipake (saya pake codevision versi ba***an  ;D terus uCnya saya pake atmega8535 bekas TA kemaren kristalnya 11,0592) pokoknya hal2 yang diluar hardware deh...

haduuh waktunya udah rada deket ke "sidang" lanjutan itu, tinggal 1 minggu lagi  :'( dari kemaren nyari referensi gak dapet2, sekalinya dapet malah gak ngerti  :-[


mohon bantuannya ya kawan2, terima kasih sebelumnya  ;)
Judul: Re: minta bantuan itung putaran
Ditulis oleh: nissan_genesis pada Juni 25, 2010, 01:30:11 AM
disundul...


disundul...


disundul...


:D
Judul: Re: minta bantuan itung putaran
Ditulis oleh: bino pada Juni 26, 2010, 12:16:31 AM
Kayaknya bisa pake IR LED and IR phototransistor (bisa di brodol dari mouse).

trus , saat si phototransistor dapet sinar dari LED nya, kan kaki nya jadi HIGH.
Catet waktunya sebagai "awal"(miliseconds ?), saat dia dapet HIGH lagi, bandingkan waktunya dengan waktu awal, catat waktu nya untuk replace "waktu awal".

Konversi hasil perbandingan ke RPM ,
Tampilkan ke LCD.

Kalau di Arduino, kayaknya cuma butuh satu interupt saja, plus LCD library.

Mungkin akan lebih ruwet kalau harus detect arah putaran, butuh 2 set transmiter dan receiver, di arrange pada sudut tertentu. Coba deh liat jeroan nya mouse model lama (yang pake bola).

Mudah mudahan seperti itu.
-bino-
Judul: Re: minta bantuan itung putaran
Ditulis oleh: nissan_genesis pada Juni 26, 2010, 02:28:10 PM
IR led itu yang gak nyala apa2 ya kalo diaktifin?? tapi keliatan di kamera hp yang resolusi rendah??

buat pronsip kerjanya sih ane ngerti om, dan emang kedua barang itu yang ane pake...

masalahnya setting codevisionnya ma programnya yang saya gak ngerti :D

siapa tau ada yang punya contoh gitu :P
Judul: Re: minta bantuan itung putaran
Ditulis oleh: bino pada Juni 27, 2010, 02:08:44 AM
MCU nya pake apa sih boss , kalau pake ATMega 8/168/328 ... solder aja si ATMEGA itu ngikutin skema ARDUINO single side.
http://arduino.cc/en/Main/ArduinoBoardSerialSingleSided3   (kumplit tinggal sablon)

Nah terus code nya ya tinggal copy-edit-paste dari code yang udah banyak berserakan.
Salah satu conto nya --> http://www.instructables.com/id/Arduino-Based-Optical-Tachometer/step3/IR-Detector-Circuit/

Mohon maap , saya cuma agak ngerti code untuk arduino, kalau ASM ASM gak cukup otak saya
Judul: Re: minta bantuan itung putaran
Ditulis oleh: nissan_genesis pada Juni 28, 2010, 02:43:20 AM
waduh sebenernya bukan itu yang saya cari om, tapi thank's masukannya... saya pake atmega8535...


mungkin ada yang lain yang mau nambahin???
Judul: Re: minta bantuan itung putaran
Ditulis oleh: Too Payz pada Juni 29, 2010, 02:27:53 PM
Kutip
kenapa lubangnya harus 4? karena pas pertama kali nyari contoh saya dapetnya yang model begitu jadi langsung aja saya bikin. eh kesini2nya saya liat2 lagi ternyata pake 1 lubang juga bisa ;:o kagok udah dibikin jadi pake yang ada aja deh...
4 lubang atau 1 lubang atau 100 lubang sama saja.
Semakin banyak lubang semakin tinggi resolusinya (beberapa aplikasi seperti pada mouse)
Banyak lubang sesuaikan kebutuhan perancangan.
Untuk kasus-mu lubang sesuaikan dengan kecepatan motor DC.
Semakin cepat motor DC lubang semakin sedikit, semakin lambat motor DC lubang semakin banyak.

Nah, biar sidang gampang jawabnya dan ga ribet pake 1 lubang aja..
Dijamin mudah jawabnya..  ;D   ;D
RPM = Rotasi Per Menit, 1 RPM = 1 putaran 1 menit.
jadi RPM adalah banyaknya putaran setiap 1 menit.
Misal pada motorDC terdeteksi nilai Counter Lubang (CL)=50 untuk 1 lubang berarti CL=200 untuk 4 lubang, pada 1 menit maka :
karena motor-nya sama maka nilai RPM 1 lubang dan 4 lubang harus sama, beda berarti salah

Masalahnya adalah 1 menit terlalu lama untuk sistem tertentu.
Jika sampling time menjadi 1 detik, artinya perhitungan RPM setiap 1 detik lalu ditampilkan di LCD.
Misal pada 1 lubang nilai CL=20 pada 1 detik, berarti pada 4 lubang 80 pada 1 detik, maka:
Misal pada 1 lubang nilai CL=20 pada 0.5 detik, berarti pada 4 lubang 80 pada 0.5 detik, maka:

Kutip
naah sekarang inti permasalahannya ;:P

ada yang bisa bantu gak programnya begimana terus settingannya gimana terus timer/counter berapa yang harus dipake (saya pake codevision versi ba***an  ;D terus uCnya saya pake atmega8535 bekas TA kemaren kristalnya 11,0592) pokoknya hal2 yang diluar hardware deh...
Pada CoViAVR..
yang digunakan
Smoga membantu  ;)   ;)   :D
Judul: Re: minta bantuan itung putaran
Ditulis oleh: nissan_genesis pada Juni 29, 2010, 11:45:56 PM
Kutip
kenapa lubangnya harus 4? karena pas pertama kali nyari contoh saya dapetnya yang model begitu jadi langsung aja saya bikin. eh kesini2nya saya liat2 lagi ternyata pake 1 lubang juga bisa ;:o kagok udah dibikin jadi pake yang ada aja deh...
4 lubang atau 1 lubang atau 100 lubang sama saja.
Semakin banyak lubang semakin tinggi resolusinya (beberapa aplikasi seperti pada mouse)
Banyak lubang sesuaikan kebutuhan perancangan.
Untuk kasus-mu lubang sesuaikan dengan kecepatan motor DC.
Semakin cepat motor DC lubang semakin sedikit, semakin lambat motor DC lubang semakin banyak.

Nah, biar sidang gampang jawabnya dan ga ribet pake 1 lubang aja..
Dijamin mudah jawabnya..  ;D   ;D
RPM = Rotasi Per Menit, 1 RPM = 1 putaran 1 menit.
jadi RPM adalah banyaknya putaran setiap 1 menit.
Misal pada motorDC terdeteksi nilai Counter Lubang (CL)=50 untuk 1 lubang berarti CL=200 untuk 4 lubang, pada 1 menit maka :
  • 1 Lubang ==> RPM = 50 x 1 menit = 50 RPM
  • 4 Lubang ==> RPM = (200 / 4 ) x 1 menit = 50 RPM
karena motor-nya sama maka nilai RPM 1 lubang dan 4 lubang harus sama, beda berarti salah

Masalahnya adalah 1 menit terlalu lama untuk sistem tertentu.
Jika sampling time menjadi 1 detik, artinya perhitungan RPM setiap 1 detik lalu ditampilkan di LCD.
Misal pada 1 lubang nilai CL=20 pada 1 detik, berarti pada 4 lubang 80 pada 1 detik, maka:
  • 1 Lubang ==> RPM = 20 x (60S / 1S) = 1200 RPM
  • 4 Lubang ==> RPM = (80 / 4) x (60S / 1S) = 1200 RPM
Misal pada 1 lubang nilai CL=20 pada 0.5 detik, berarti pada 4 lubang 80 pada 0.5 detik, maka:
  • 1 Lubang ==> RPM = 20 x (60000mS / 500mS) = 2400 RPM
  • 4 Lubang ==> RPM = (80 / 4) x (60000mS / 500mS) = 2400 RPM

Kutip
naah sekarang inti permasalahannya ;:P

ada yang bisa bantu gak programnya begimana terus settingannya gimana terus timer/counter berapa yang harus dipake (saya pake codevision versi ba***an  ;D terus uCnya saya pake atmega8535 bekas TA kemaren kristalnya 11,0592) pokoknya hal2 yang diluar hardware deh...
Pada CoViAVR..
yang digunakan
  • Interupsi eksternal mode falling edge atau rising edge (sesuaikan hardwarenya)
  • Interupsi timer (Setiap 1 detik biar mudah)
  • Library LCD
Smoga membantu  ;)   ;)   :D


makasiii om payz,, saya save page'nya ya buat dibaca2 lagi :D