Posts

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