Getting Started with Arduino gives you lots of ideas for Arduino projects and helps you get going on them right away.
Showing posts sorted by relevance for query arduino-if. Sort by date Show all posts
Showing posts sorted by relevance for query arduino-if. Sort by date Show all posts
Monday 18 May 2015
Menghidupkan 3 Buah Lampu Arduino dengan Compiler C#
Hai sobat jurikablog sebenarnya pengiriman data melalui serial port sangat sederhana, cukup menggunakan method Write dengan parameter berupa string yang ingin dikirim. disini jufrikablog mencontohkan jika sobat ingin membuat program compile untuk mematikan dan menghidupkan lampu pada arduino dengan simple
1. Alat dan bahan
3 Buah software : arduino simulator / memakai proteus isis , virtual port setting , dan sharpdevelop atau visual studio c#
2. buat program compiler nya dengan design yang akan jadi seperti ini (komponen : button , serialport, timer, label, textbox)
3. lalu masukan program ini ke tombol send
serialPort1.Write(textBox1.text);
4.dan pada button on setting seperti ini (contoh pada button on untuk lampu led 1 memakai karakter 'a')
Button2.Enabled = false;
Button5.Enabled = true;
serialPort.Write('a'); // lihat karakter a di arduino untuk menghidupkan lampu led a
dan pada button off kebalikannya (false dan truenya) dan sesuaikan pembacaan karaternya
5. pada void main formnya kita setting serial port open terlebih dahulu
serialPort1.Open();
6. atur timer menjadi 500 ms dan ubah dari false jadi true
dan juga pada serialport atur com yang akan digunakan (misal com1)
7. pada program arduino buat seperti ini
int LEDA=13;
int LEDB=12;
int LEDC=8;
void setup()
{
Serial.begin(9600);
pinMode(LEDA,OUTPUT);
pinMode(LEDB,OUTPUT);
pinMode(LEDC,OUTPUT);
}
void loop()
{
if (Serial.available())
{
char inChar = (char)Serial.read();
if(inChar=='a')digitalWrite(LEDA,1);
else if (inChar=='b')digitalWrite(LEDB,1);
else if (inChar=='c')digitalWrite(LEDC,1);
else if (inChar=='d')digitalWrite(LEDA,0);
else if (inChar=='e')digitalWrite(LEDB,0);
else if (inChar=='f')digitalWrite(LEDC,0);
else {
digitalWrite(LEDA,0);
digitalWrite(LEDB,0);
digitalWrite(LEDC,0);
}
}
}
8. Masukan program tersebut ke dalam rangkaian arduino tadi dengan cara seperti digambar
9. Setelah sukses setting com nya di db 9 nya (contoh com 3) dan baud rate 9600
10. lalu jalankan program di c# dan simulasi arduino nya cek video berikut sob :D
note : untuk menghubungkan virtual port bisa di setting dengan software virtual port bisa download disini
Monday 23 February 2015
HARDWARE :: sensor api pengganti UVtron dan Thermal array
yaitu pake remotenya nintendo wii.
sensor api paket hemat dari remote wii ini rupanya cuman setengah harga dari UVtron+driver loh (kalo pake harga batam).
pada bagian depan dari remote ini memiliki kamera infra merah dengan spesifikasi berikut:
1. kamera resolusi 1024×768
2. Up to 4 blob (cahaya IR terang melebihi thresholdnya)
3. 100 proses gambar perdetik
3. interfacing i2c
4. output i2c berupa koordinat dari 4 blob tersebut.
1. kamera resolusi 1024×768
2. Up to 4 blob (cahaya IR terang melebihi thresholdnya)
3. 100 proses gambar perdetik
3. interfacing i2c
4. output i2c berupa koordinat dari 4 blob tersebut.
wiring cameranya:
Jika menggunakan crystal quartz (4kaki) :
bentuk jadinya
![images1](https://handritoar.files.wordpress.com/2011/11/images1.jpeg?w=914)
![3625806085_61cc9ba881](https://handritoar.files.wordpress.com/2011/11/3625806085_61cc9ba881.jpg?w=150&h=112)
![DCF compatable JPEG Img](https://handritoar.files.wordpress.com/2011/11/dsc00053.jpg?w=150&h=112)
![photo3](https://handritoar.files.wordpress.com/2011/11/photo3.jpg?w=150&h=112)
![photo4](https://handritoar.files.wordpress.com/2011/11/photo4.jpg?w=150&h=112)
yang keren dari internet, yang tengah / yang jelek itu punya saya
cuman lum dilanjutkan, timahnya habis trus resistor ma capasitor ada dibawah pcb :p
setelah itu tinggal dihubungkan ke arduino dan pasang kaca hitam bawaannya.
jika ingin pakai library arduinonya download PVision.zip ubah ke ZIP ya
jika ingin pakai library arduinonya download PVision.zip ubah ke ZIP ya
tapi jika gak mau pakai library, ini contoh akses IR kamera nya:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 | // Wii Remote IR sensor test sample code by kako // modified output for Wii-BlobTrack program by RobotFreak #include int IRsensorAddress = 0xB0; int slaveAddress; int ledPin = 13; boolean ledState = false ; byte data_buf[16]; int i; int Ix[4]; int Iy[4]; int s; void Write_2bytes(byte d1, byte d2) { Wire.beginTransmission(slaveAddress); Wire.send(d1); Wire.send(d2); Wire.endTransmission(); } void setup() { slaveAddress = IRsensorAddress >> 1; // This results in 0x21 as the address to pass to TWI Serial.begin(38400); pinMode(ledPin, OUTPUT); // Set the LED pin as output Wire.begin(); // IR sensor initialize Write_2bytes(0x30,0x01); delay(10); Write_2bytes(0x30,0x08); delay(10); Write_2bytes(0x06,0x90); delay(10); Write_2bytes(0x08,0xC0); delay(10); Write_2bytes(0x1A,0x40); delay(10); Write_2bytes(0x33,0x33); delay(10); delay(100); } void loop() { ledState = !ledState; if (ledState) { digitalWrite(ledPin,HIGH); } else { digitalWrite(ledPin,LOW); } //IR sensor read Wire.beginTransmission(slaveAddress); Wire.send(0x36); Wire.endTransmission(); Wire.requestFrom(slaveAddress, 16); // Request the 2 byte heading (MSB comes first) for (i=0;i i=0; while (Wire.available() && i < 16) { data_buf[i] = Wire.receive(); i++; } Ix[0] = data_buf[1]; Iy[0] = data_buf[2]; s = data_buf[3]; Ix[0] += (s & 0x30) < Iy[0] += (s & 0xC0) < Ix[1] = data_buf[4]; Iy[1] = data_buf[5]; s = data_buf[6]; Ix[1] += (s & 0x30) < Iy[1] += (s & 0xC0) < Ix[2] = data_buf[7]; Iy[2] = data_buf[8]; s = data_buf[9]; Ix[2] += (s & 0x30) < Iy[2] += (s & 0xC0) < Ix[3] = data_buf[10]; Iy[3] = data_buf[11]; s = data_buf[12]; Ix[3] += (s & 0x30) < Iy[3] += (s & 0xC0) < for (i=0; i { if (Ix[i] < 1000) Serial.print( " " ); if (Ix[i] < 100) Serial.print( " " ); if (Ix[i] < 10) Serial.print( " " ); Serial.print( int (Ix[i]) ); Serial.print( "," ); if (Iy[i] < 1000) Serial.print( " " ); if (Iy[i] < 100) Serial.print( " " ); if (Iy[i] < 10) Serial.print( " " ); Serial.print( int (Iy[i]) ); if (i Serial.print( "," ); } Serial.println( "" ); delay(3); } |
sumber:
https://handritoar.wordpress.com/2011/11/28/sensor-api-paket-hemat-tapi-efisien/
.
.
Subscribe to:
Posts (Atom)