Posts

Showing posts from December, 2011

Robot pertamaku (line follower)

Image
Tampilan dari atas

Rangkaian gabungan LM35, ADC0804, PIC16F84A dan L293D

Image
Rangkaian Rangkaian ini berfungsi untuk membaca suhu dan menggerakkan motor dc, yang mana kecepatan motor dc dipengaruhi oleh besarnya suhu yang di baca oleh sensor suhu lm35, semakin besar suhu maka motor dc akan bergerak semakin cepat.   Alur dari rangkaian ini adalah  IC LM35 membaca suhu dan memiliki keluaran berupa tegangan(analog). Keluaran LM35(analog) dibaca ADC0804 dan memiliki keluaran digital 8 bit (hexadesimal). Keluaran ADC0804(digital) dibaca PIC16F84A dan memberikan sinyal keluaran pulsa. Keluaran PIC16F84(pulsa) dibaca L293D dan mengatur kecepatan motor dc sesuai dengan pulsa yang diberikan PIC16F84. Rangkaian yang digunakan untuk kalibrasi pembacaan sensor suhu (lm 35) dan keluaran adc0804. Rangkaian kalibrasi Untuk mendapatkan nilai output dari adc0804 dapat dilakukan dengan menekan SW1 setiap ada perubahan nilai suhu. Kalibrasi kecepatan dilakukan dengan metode trying and error (coba-coba) dengan memberi nilai output di program, deng

Cara kalibrasi sensor dengan menggunakan excel

Image
1. Catat yang dibaca sensor dan keluaran sensor, misal sensor jarak (untuk jarak 10 cm, hitung keluarannya, 20cm, 30 cm dll) dan sensor suhu(untuk suhu 10 C, hitung keluarannya, 20 C, 30 C, dll). 2. Masukkan hasil yang dibaca sensor dan keluaran sensor tadi ke dalam excel, contoh tabel 1. Tabel 1 3. Blok data dari kata "desimal" sampai angka "15" dan pilih Insert Line, seperti gambar 1 Gambar 1 4. Maka akan dihasilkan grafik seperti gambar 2. Gambar 2 5. Klik kanan grafik dan pilih Add Trendline, seperti gambar 3. Gambar 3 6. Contreng "Display Equation on Chat" dibagian bawah, seperti gambar 4. Gambar 4 7. Maka akan didapatkan rumus yang akan kita gunakan dalam program untuk membaca keluaran sensor. Lihat gambar 5. Gambar 5 8. Karena dalam grafik dihasilkan x = 1, 2, 3, 4, 5, 6 maka kita harus mengalikan nilai x dengan 10 dan berarti didapatlah rumusnya y=0,24571x+0,4 Selesai.

Sistem lampu merah di simpang 4 dengan menggunakan PLC

Image
Tampilan Running Tampilan Sistem Sistem ini menggunakan compiler GMWIN V3.63. Cara membuka file : Ekstrak file Klik project >> open >> browse ke folder hasil ektrak >> def0006.prj Klik program >> open >> noname06.src Blok semua tampilan yang ada Copy hasil blok atau Ctrl + C Buat File baru (GM4) Paste atau Ctrl + V Running Cara menggunakan GMWIN V3.63, klik disini . Program GMWIN V3.63 dapat download disini . Sistem diatas dapat download  disini . Apabila ada yang tidak jelas dalam program diatas langsung saja komentar dibawah ini. Terima Kasih.

Cara menggunakan simulasi PLC GMWIN V3.63

Image
Tampilan GMWIN V3.63 1. Buka aplikasi bernama GMWIN 2. Klik Project >> New... (Seperti Gambar 1) Gambar 1 3. Pilih GM4 >> Klik Ok (Seperti Gambar 2) Gambar 2 4. Klik Ok sampai muncul tampilan seperti gambar 3 Gambar 3 5. Fungsi-fungsi yang dapat digunakan di  GMWIN V3.63 ( Gambar 4 ) Gambar 4 6. Klik icon fungsi dan letakkan seperti di gambar 5.     Dibawah ini saya menggunakan hanya fungsi input dan output sebagai contoh. Gambar 5    7. Klik bagian yang ditunjukan digambar 6 Gambar 6    8. Maka akan muncul tampilan seperti gambar 7, ketik "input" dan klik OK. Gambar 7 9. Klik Assign (AT) dan ketik "%I0.0.0" (persen i nol titik nol titik nol) dan klik OK. (Seperti Gambar 8) Gambar 8 10. Dan selanjutnya klik icon seperti gambar 9. Gambar 9 11.  Maka akan muncul tampilan seperti gambar 10, ketik "output" dan klik OK. Gambar 10    12.  Klik Assign (AT) dan keti

Contoh Program Searching Nama dalam Bahasa C versi 2

Image
Tampilan #include <stdio.h> #include <stdlib.h> #include <conio.h> #include <windows.h> struct maha { char nama[30]; char search[30]; }siswa[20]; enum jawab { benar, salah }ketemu; int searching(int a, maha siswa[20]) { int i, j; ketemu = salah; for(i=0;i<a;i++){ j=0; while(j<30){ if (siswa[i].nama[j] == siswa[20].search[j]){ if(j==29 && siswa[i].nama[29] == siswa[20].search[29]){ ketemu = benar; break; } j++; }else if(siswa[i].nama[j] != siswa[20].search[j]){ break; } } } return ketemu; } void main() { int x, i; char input[10], plh[1]; printf("Masukkan jumlah peserta : "); gets(input); x=atoi(input); printf("Masukkan nama: \n"); for(i=0;i<x;i++) { gets(siswa[i].nama); } pilih: for(i=0;i<31;i++) { siswa[20].search[i]=NU

Program pengurutan nama dalam bahasa C/C++

Image
Tampilan #include <stdio.h> #include <stdlib.h> struct maha{ char nama[30]; }siswa[20]; void Urut(int a, maha siswa[20]){ int i, j, l; maha temp; for (i=0;i<a;i++){ for (j=i+1;j<a;j++){ for (l=0;l<30;l++){ if (siswa[i].nama[l] < siswa[j].nama[l]){ break; }else if (siswa[i].nama[l] > siswa[j].nama[l]){ temp=siswa[i]; siswa[i]=siswa[j]; siswa[j]=temp; break; } } } } } void main(){ int x, i; char input[10]; printf("Masukkan Jumlah Peserta : "); gets(input); x=atoi(input); printf("Masukkan Nama: \n"); for(i=0;i<x;i++){ gets(siswa[i].nama); } Urut(x, siswa); printf("\n"); printf("Setelah diurutkan : \n"); for(i=0;i<x;i++){ printf("%s\n", siswa[i].nama); } } Ingin mencoba program, klik disini Ingin download source code, klik  disini . Source code ini menggunakan compiler Turbo C++, Turbo C++ dapat download  disini . Apabila a

Program Searching Nama dalam Bahasa C/C++

Image
Tampilan Source Code : #include <stdio.h> #include <stdlib.h> struct maha { char nama[30]; char search[30]; }siswa[20]; enum jawab { benar, salah }ketemu; int searching(int a, maha siswa[20]) { int i, j; ketemu = salah; for(i=0;i<a;i++){ j=0; while(j<30){ if (siswa[i].nama[j] == siswa[20].search[j]){ if(j==29 && siswa[i].nama[29] == siswa[20].search[29]){ ketemu = benar; break; } j++; }else if(siswa[i].nama[j] != siswa[20].search[j]){ break; } } } return ketemu; } void main() { int x, i; char input[10]; printf("Masukkan Jumlah Peserta : "); gets(input); x=atoi(input); printf("Masukkan Nama: \n"); for(i=0;i<x;i++) { gets(siswa[i].nama); } printf("Masukkan Nama : "); gets(siswa[20].search); printf("\nYang Anda Cari "); if(searching(x, siswa) == benar){ p

Contoh Program dalam Bahasa Ruby

Image
Hari ini, tepatnya sih malam ini saya mau sharing sebuah program yang kami(satu kelompok) buat saat tugas besar semester dua kemarin. Langsung aja ya : Tampilan Utama Contoh-contoh script kode yang ada didalamnya : 1.Delete Data Bahasa Ruby # Delete file test2.txt File.delete("test2.txt") 2.Delete Data Bahasa Ruby begin path = gets.chomp arr = IO.readlines(path) b = arr[0].to_i a = b + 200 puts arr[1] p puts a puts arr[0] uts arr[2] puts arr[3] puts arr[4] "ensure retu puts arr[5] rescue puts "Error #{$! }rn path end 3.Rename Data Bahasa Ruby # Rename a file from test1.txt to test2.txt File.rename( "test.txt", "test2.txt" ) 4.Save Data Bahasa Ruby a=gets.to_i path = gets.chomp aFile = File.new(path, "w") if aFile syswrite(a) aFile aFile ..syswrite("\n") gets else end puts "Unable to open file! " Pengen mencoba programnya, klik disini . Bermi

Contoh Program Polling dalam Bahasa C/C++

Image
Assalammu'alaikum, Wr, Wb Hari ini saya ingin sharing ilmu dan informasi tetapi saya bingung mau sharing apa? Saya cari sana, saya cari sini, nah waktu buka-buka data semester dua saya ketemu program yang kami (satu kelompok) buat untuk tugas mid semester 2. Programnya berjalan dengan baik, meskipun banyak script yang aneh-aneh haha biasa newbie gan (bahasa kaskus).  Langsung saja saya sharing program ini kepada teman-teman. Inti dari program ini hanya untuk polling, dan yang dapat di lakukan oleh program ini adalah input nama dan id, mengurutkan data berdasarkan nama, mengurutkan data berdasarkan hasil poling terbesar sampai terkecil, dan searching berdasarkan nama dan id. Langsung aja ya : Screenshoot 1 Screenshoot 2 Ingin mencoba program, klik  disini Ingin download source code, klik  disini . Source code ini menggunakan compiler Turbo C++, Turbo C++ dapat download  disini . Apabila ada yang tidak jelas dalam source code diatas langsung saja komenta

Algoritma Cinta Seorang Remaja

Image
// OK, ngomong masalah cinta, emang nggak ada matinya. // Kali ini, saya mendapatkan ilham bahwa cinta merupakan representasi suatu bahasa pemrograman. // Begini ceritanya. // Saat pertama kali bertemu, itu adalah tahap inisisalisasi. // Sourcecodenya mungkin: cinta : Integer // tapi sebenernya tidak bisa *integer, karena cinta tidak bisa di nilai maxCinta , minCinta : integer // masa-masa pacaran akan dialami sebelum menikah while ( nikah != true ) // andaikan saja maxCinta <- 100 minCinta <- -1 // pertama tidak ada yang dekat dan belum jadian pdkt <- 0 jadian <- false // Saat Kenalan terjadi repeat // dapat kenalan baru alokasi(kenalan) telepon <- true sms <- true ketemuan <- true // jika cocok rasa cinta akan timbul // jika rasa cinta sudah ada maka akan jadian if(cocok) cinta <- cinta + 1 jadian <- true else dealokasi(kenalan) // jika tidak cocok maka akan cari yang lain kenalan <- kenalanBaru jadian <- false