Berikut ini photo dan video hasil eksperimen:

GUI yang direalisasi pada VB.net
Demo Video
Cara Pembuatan:
Skematik pada Arduino (Duemilanove / Severino)

List Program untuk Arduino
// program kontrol LEDRGB melalui serial(RS232) 9600bps // Mikrokontroler : Arduino Duemilanove // Oleh :Aan Darmawan // Tanggal : 26 Desember 2010 // cara pengendalian :terima informasi dari serial dengan kode "000" s/d "999" // urutan pengendalian 1 byte red, 1 byte green dan 1 byte blue // 0=berarti tergelap , 9=berarti terterang // web http://valfa.blogspot.com // int ledrPin = 9; int ledgPin = 10; // LED dihubungkan ke digital PWM pin 9,10,11 int ledbPin = 11; int faderValue = 0; int fadegValue = 0; int fadebValue = 0; void setup() { Serial.begin(9600); // aktifkan komunikasi serial 9600 bps pinMode(ledrPin,OUTPUT); pinMode(ledgPin,OUTPUT); pinMode(ledbPin,OUTPUT); } void loop() { if(Serial.available()>0) // baca byte pertama sebagai data LED merah { faderValue = Serial.read(); faderValue=(faderValue-47)*10.34; } if(Serial.available()>0) // baca byte kedua sebagai data LED hijau { fadegValue = Serial.read(); fadegValue=(fadegValue-47)*22.00; } if(Serial.available()>0) // baca byte ketiga sebagai data LED biru { fadebValue = Serial.read(); fadebValue=(fadebValue-47)*25.50; } // 3 brs berikut untuk cek saja di computer via serial, bisa dihapus Serial.print(faderValue);Serial.print(','); Serial.print(fadegValue);Serial.print(','); Serial.println(fadebValue); // kirim ke PIN 9,10,11 analogWrite(ledrPin, faderValue); analogWrite(ledgPin, fadegValue); analogWrite(ledbPin, fadebValue); delay(500); } Programming pada VB.net (visual studio 2008) Buat Disain GUI sebagai berikut:Programming : Public Class Form1 Dim red, green, blue As Integer Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click ColorDialog1.ShowDialog() red = ColorDialog1.Color.R() \ 28.3333 green = ColorDialog1.Color.G() \ 28.3333 blue = ColorDialog1.Color.B() \ 28.3333 TextBox1.Text = red & green & blue SerialPort1.Write(TextBox1.Text) BackColor = ColorDialog1.Color End Sub Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load TextBox1.ReadOnly=True SerialPort1.PortName="COM2" ' Sesuaikan dengan komputer anda SerialPort1.Open() SerialPort1.Write("000") 'RGB=000=black End Sub End Class Catatan: Pada Properties Object SerialPort1, jangan lupa disesuaikan nama port serialnya (SerialPort1.PortName) dengan yang tersedia di PC/Notebook anda. Selamat bereksperimen..... GBU
8 comments:
keren.. keren... lengkap banget tulisannya. bikin ngiler yang liat.. mantaps...
Oia.. saya ada ide, sudah saya tanggapi komentar mas Aan di blog saya. :) senang punya teman main Arduino.. hehehe
salam kenal
Very nice project ! Kami tunggu pengembangan yang lebih mantaap ya pak Aan.
Thanks 4 d support
teman, untuk pembuatan GUI warna pada VB.Net nya lebih mendetail dong jlasinnya.. pliss.. ato kirim ke denimunandar14@gmail.com
@Deni M: saya kira sudah jelas, tidak ada yang disembunyikan... itu semua apa adanya... :-), selamat bereksperimen.....
mas cara menghitung resistornya gimana?
sama cara mencari (10.34) , (22.00) , (25.50) itu semua ?
@Radit:
menghitung tresistor,tentukan arus maksimum untuk LED, kemudian pakai rumus pembagi tegangan (Vr+VLed=5V)
karena VLed warna Merah,Hijau dan BIru berbeda-beda, maka di sesuaikan dengan parameter pengali tiap warna yang 10.34, 22 dan 25.5.
angkanya dari mana? itu perhitungan dengan asumsi Vled biru ketika mendapat kode "9", maka yang masuk nilai Vled biru adalah 10 (maksimum 10x25.5 = 255)
Untuk parameter warna lain diperoleh secara coba-coba agar menghasilkan warna tampilan mendekati warna yang dipilih di komputer
mas shere dong pendeteksi warna sensor RGB dengan menampilkan warna ke vb net?
caranya gmna yah?
Post a Comment