Kamis, 24 Juni 2010

Interfacing Paralel Port >> Rangkaian ADC menggunakan Port Paralel

    Port Paralel DB25 terdiri dari tiga bagian yaitu 8 buah Pin Data, 5 buah Pin Status dan 4 buah Pin Control.( Baca Lagi Artikel tentang Port parallel). Sehingga dengan pin-pin tersebut kita dapat memamfatkannya untuk berbagai keperluan. Salah satu fungsinya adalah untuk mengambil data dari luar atau dari lingkungan, dengan kata lain data berupa inputan baik digital maupun analog, seperti temperature. Namun Data Analog yang diambil tidak dapat langsung diolah tetapi harus diposes terlebih dahulu karena data tersebut adalah data analog. (baca Materi ADC). Sehingga kita membutuhkan hardware tambahan berupa IC ADC dan Rangkaian ADC pendukungnya.
    Dibawah ini adalah rangkaian ADC yang menggunakan sebuah IC0804 dan port parallel sebagai jalur data nanti. 4.

Gambar.1 Rangkaian ADC menggunakan PORT PARALEL

    Rangkaian ADC diatas dihubungkan ke komputer melalui port paralel pada Pin Data 0 hingga 7 ( Pin 2 hingga Pin 9 DB25 ) untuk membaca data ADC dari Sistem Tersebut.  Sinyal Status yang digunakan adalah Error ( Pin 15 DB25 ) yang dihubungkan ke Pin 5 IC ADC 0804 ( negasi INTR ). Dan dua buah sinyal kontrol dibutuhkan dari komputer untuk mengaktifkan ADC (Pin 2 dan Pin 3 ADC (negasi RD dan negasi WR)), Pin Kontrol yang digunakan adalah Pin 1 dan Pin 16 DB25 (negasi Strobe dan Negasi Init). Sebenarnya Pin 2 dan 3 IC ADC 0804 dapat langsung dihubungkan ke ground namun hal tersebut akan menyebabkan kita kesulitan untuk mlakukan pengontrtolan ADC saat melakukan pembacaan data.
    Dan untuk sinyal masukan ( Input Analog ) akan kita hubungkan ke Pin 6 IC ADC 0804. Input ini dapat berasal dari Sensor Suhu/Temperatur seperti LM35 atau dari sensor Ping atau juga dari sensor Infrared dan paling mudah menggunakan Sensor Posisi (Potensiometer). Dan untuk Programnya dapat kita buat dengan mengguanakn Visual Basic 6.0 ,Delphi ,C atau bahasa pemrograman lainnya.

Selamat Mencoba!
Saya juga sedang belajar untuk melakukannya. Sekarang saya bagikan terlebih dahulu informasinya jadi kita bisa sama-sama belajar.

Selasa, 22 Juni 2010

Rangkaian Saklar Sentuh menggunakan IC555 Monostable

Baca Postingan Sebelumnya>> Rangkaian Saklar Sentuh menggunakan IC555

Pada postingan sebelumnya saya telah menuliskan cara membuat rangkaian saklar sentuh otomatis menggunakan IC555. Kali ini kita akan mencoba memodifikasi Rangkaian Saklar sentuh yang telah kita buat tadi. Sehingga cara kerjanya akan sedikit berbeda. Kita akan menambahkan beberapa komponen sehingga rangkaian awal kita akan lebih kompleks.
Rangkaian Saklar sentuh yang akan kita buat akan menghasilkan delay sekitar 1 detik sebelum menggerakkan rangkaian Hardware yang akan kita kendalikan atau hubungkan kerangkaian. Delay yang dihasilkan adalah kombinasi dari rangkaian IC555 yang dibuat monostable dan Kapasitor (C4) serta dioda (D1). Untuk membuatnya,silakan gunakan rangkaian yang telah ada. Selanjutnya modifikasi sedikit sehingga rangkaian yang kita buat akan seperti gambar dibawah.

Gambar.1 Saklar Sentuh menggunakan IC555

Mungkin itu dulu yang bisa saya berikan . Untuk Eksperimen elektronika lainnya akan saya postingkan di hari berikutnya.


Baca juga:
Aplikasi Photodetector Sebagai Saklar Sentuh
Rangkaian Saklar Sentuh menggunakan IC555


Referensi: Buku Hobi elektronika.Penulis Dedy Rusmandi

Rangkaian Saklar Sentuh Menggunakan IC555

    Saklar Sentuh merupakan sebuah saklar otomatis dimana ketika kita menyentuh "sensor sentuh" maka secara otomatis akan menjalankan rangkaian yang terhubung,misalnya ke peralatan listrik rumah tangga. Pada artikel sebelumnya,saya telah membuat sebuah saklar sentuh menggunakan sebuah Sensor Photodetector (baca Aplikasi Photodetector Sebagai Saklar Sentuh) namun kali ini kita akan mencoba membuat sebuah saklar sentuh menggunakan IC555.
    Aplikasi IC555 ini sendiri sangat banyak diantaranya adalah untuk membuat berbagai rangkaian otomatis, timer dan juga counter serta berbagai rangkaian yang dapat dibuat. Salah satu aplikasi yang pernah saya buat adalah Rangkaian LED berjalan (Running Led) silakan baca artikel sebelumnya. "Membuat Rangkaian LED berjalan dengan IC 555". Dan kali ini kita akan mecoba membuat Rangkaian Saklar Sentuh menggunakan IC555.

Rangkaian Saklar Sentuh Menggunakan IC555
    Sebelum kita membuatnya,ada baiknya jika kita menyediakan dahulu komponenapa saja yang kita butuhkan. Adapun komponen tersebut antara lain:
>> Sebuah IC555
>> Resistor 1MOhm, 47KOhm masing-masing 2 buah
>> Dioda 1N4001 4 buah
>> Relay 9 volt dan juga Relay 12Volt
>> Kapasitor 0,1uF dua buah, 1uF dua buah, 100uF (u =  mikro)
>> Pelat Konduktor (bisa seng atau juga besi)

Rangkaian Saklar Sentuh Menggunakan IC555
Tambahan dari saya, Sebaiknya anda membuat rangkaian saklar sentuh ini menggunakan proto board sehingga nantinya komponen-komponen tersebut dapat digunakan untuk aplikasi lainnya.
Baiklah,Langsung saja kita membuat rangkaian saklar sentuh menggunakan IC555. Silkan anda membuat rangkaiannya seperti gambar dibawah.

Rangkaian Saklar Sentuh Menggunakan IC555
Gambar.1 Rangkaian Saklar Sentuh
    Cara kerja dari Rangkaian Saklar Sentuh yang kita buat ini cukup sederhana. Kita hanya perlu memberikan sinyal pemancing (Sinyal Trigger) pada plat konduktor. Tidak besar hanya sekita 0,5mA dan sinyal tersebut kita dapatkan dari tubuh kita sendiri karena tubuh manusia memiliki Listrik statis dan cukup untuk mentrigger rangkaian tersebut.
    Untuk lebih lengkapnya silakan baca artikel berikutnya. "Rangkaian Saklar Sentuh menggunakan IC555 monostable".

Baca juga:
Aplikasi Photodetector Sebagai Saklar Sentuh


Referensi: Buku Hobi elektronika.Penulis Dedy Rusmandi

Bahasa Pemrograman C dan C++


Berbicara tentang C++ dan C sebagai bahasa pendahulunya, C merupakan termasuk bahasa pemrograman tingkat menengah. Pencipta C adalah Brian W. Kernighan dan Dennis M. Ritchie pada tahun 1972. C merupakan bahasa pemrograman terstruktur yang membagi program ke dalam sejumlah blok dan sub program'. Tujuannya adalah untuk memudahkan dalam pembuatan dan pengembangan program. Program yang ditulis dengan C mudah sekali dipindahkan dari satu jenis mesin ke mesin lain. Hal ini karena adanya standarisasi C yaitu ANSI (American National Standards Institute) yang men%adi acuan para pembuat compiler C. C++ diciptakan satu dekade setelah C. C++ diciptakan oleh Bjarne Stroustroup dari Laboratorium Bell, AT&T pada tahun 1983. Pada awalnya C++ diberi nama " A better C". Nama C++ sendiri diberinama oleh Rick Mascitti. Adapun tanda ++ berasal dari operator increment pada bahasa C.




Keistimewaan C++ adalah karena bahasa ini mendukung OPP (Object Oriented Programming). Tujuan utama pembuatan C++ adalah untuk meningkatkan produktivitas pemrogram dalam membuat aplikasi. Kebanyakan pakar setuju bahwa OOP dan C++ mampu mengurangi kompleksitas terutama program yang terdiri dari 10.000 baris lebih, bahkan dapat meningkatkan produktivitas 2X lipat dari C, Pascal dan Basic.

Program C++ dapat dibuat menggunakan sebarang editor teks maupun editor sekaligus compilernya. Program utama berekstensi (.CPP). Pada saat kompilasi program utama bersama dengan file header (.h) akan diterjemahkan oleh compiler menjadi file obyek (.OBJ). Selanjutnya file obyek ini bersama-sama dengan 9ile obyek lain dan 9ile library &..-B' dikaitkan men%adi satu oleh linker.
Hasilnya adalah file (.exe) executable.




Compiler C++ yang telah beredar di pasaran antara lain Microsoft C/C++ dan Visual C++. Keduanya dari Microsoft. Sementara Borland international juga mengeluarkan Turbo C++ dan Borland C++.



Berikut ini contoh program sederhana yang akan kita buat menggunakan bahasa C++

#include
void main()
{
cout << “Hello world.\n”;
}


Setelah dicompile dan dirun, hasilnya adalah muncul pada layar "Hello World".

Dikutip dari diktat "Rosihan Ari Yuana,S.Si,M.kom"

Senin, 21 Juni 2010

Pemrograman Sensor PING >> Pemrograman LCD dengan Bahasa C menggunakan CodeVisionAVR pada Mikrokontroler ATMEGA8535


    Dari hasil file yang telah di generate tersebut kita akan mendapatkan hasil file yang sudah siap digunakan. Untuk LCD, kita hanya perlu menambahkan sedikit skrip. Namun file tersebut masih belum bisa kita mamfaatkan untuk mengoperasikan sensor ping.

   Skrip yang akan kita tambahkan kedalam blog kita kurang lebih seperti ini:

#include
#include
#include


#define ping1 PORTA.0
#define in_ping1 PINA.0
#define kecepatan 34.4F

float jarak;
unsigned char* str[21];
unsigned int counter;


// Timer 0 overflow interrupt service routine
interrupt [TIM0_OVF] void timer0_ovf_isr(void)
{
// Place your code here
  counter++;
}

Dan Program Utamanya seperti berikut:

while (1)
      {
      // Place your code here
      TCNT0 = 0;
      counter = 0;
      DDRA = 0xFF ;   
      ping1=1; 
      delay_us(5);
      ping1 = 0;
      DDRA = 0x00;
      while(in_ping1 == 0);
      TCCR0 = 0x01; 
      while(in_ping1== 1);
      TCCR0=0x00;
      jarak = (((((float)counter*256)+TCNT0)/1400)/2)*kecepatan;
      
       lcd_clear();
       lcd_gotoxy(0,0);
       lcd_putsf("jarak1 = ");
       ftoa(jarak,2,str);
       lcd_gotoxy(9,0);
       lcd_puts(str);
      delay_ms(100);

      
      };
}


    Simpan File ini dan kemudian Downloadkan ke Mikrokontroler ATMEGA8535.Kemudian hubungkan Mikrokontroler dengan Sensor PING dan LCD. Sensor PING dihubungkan ke PortA.0 dan LCD di PortC.  Dan operasikan Sistem Mikrokontroler ATMEGA8535 dan Sensor Ping. Jika benar maka LCD akan menampilkan data jarak yang diambilnya. Tingkat akurasi jarak yang diambil dapat dipastikan dengan sebuah penggaris. Jika jarak yang di Ambil kurang presisi maka kita dapat menambahkan nilai Hold Off sebesar 750 us.
    Ingat Jarak minimal sensor PING ini sekityar 3 cm dan maksimal sekitar 3 meter. Jadi kondisikan jarak anda dalam rentang tersebut.


Minggu, 20 Juni 2010

Interfacing Mikrokontroler ATMEGA8535 dengan LCD dan Sensor PING

   Siapa yang tidak tahu alat ukur jarak Seperti penggaris, Meteran atau yang lainnya. Tapi tahukah anda elektronik yang dapat digunakan untuk mengukur? Dan Tahukah anda jika kita Sendiri dpat membuat Alat Ukur digital tersebut? Yap,.....Kali ini kita akan belajar bagaimana menggunakan sebuah sensor untuk mengukur jarak yang dikombinasikan dengan LCD untuk menampilkan data yang diambilnya. Dan tentu saja kita akan menggunakan Sebuah Mikrokontroler sebagai Otaknya.
    Sebelum memulainya, Ada baiknya jika kita terlebih dahulu menyediakan peralatan apa saja yang kita butuhkan. Antara Lain:
> LCD 2x16
> Sistem Minimum Mikrokontroler ATMEGA8535
> Sensor Jarak

    Disini saya sendiri menggunakan Sebuah LCD 2x16 dan juga sebuah Sensor jarak Keluaran Paralax (Sensor PING)Lihat data sheetnya disini http://www.parallax.com/dl/docs/prod/acc/28015-PING-v1.3.pdf. Untuk Rangkaiannnya, Saya akan menghubungkan Sensor PING ke PortA.0 dan LCD ke PortC.
    Untuk Programnya sendiri, kita akan menggunakan bahasa pemrograman C dengan CodeVisionAVR(Baca Artikel Sebelumnya). Adapun Langkah-langkahnya adalah sebagai berikut:
>Buka CodeVisionAVR
>Buat program baru dengan memilih File>New>Project>klik OK>Muncul Jendela Confirm Klik Ok lagi
>Akan muncul CodeWizardAVR.Lakukan Setting Terhadap Chip, Timer dan LCD seperti gambar. Ditunjukan Oleh Gambar 1,2 dan 3 berturut-turut.
> Klik File>Generate,save and Exit dan simpan ketiga file dengan nama Ping

Gambar.1 Setting Chip Mikrokontroler AVR
Gambar.2 Setting Timer


Gambar.3 Setting LCD

>Hasil dari generate Codewizard tersebut akan menghailkan file seperti ini:

/*********************************************
Deskripsi
*********************************************/

#include

// Alphanumeric LCD Module functions
#asm
   .equ __lcd_port=0x15
#endasm
#include

// Declare your global variables here

// Timer 0 overflow interrupt service routine
interrupt [TIM0_OVF] void timer0_ovf_isr(void)
{
// Place your code here
 
}

void main(void)
{
// Declare your local variables here

// Input/Output Ports initialization
// Port A initialization
// Func0=In Func1=In Func2=In Func3=In Func4=In Func5=In Func6=In Func7=In
// State0=T State1=T State2=T State3=T State4=T State5=T State6=T State7=T
PORTA=0x00;
DDRA=0x00;

// Port B initialization
// Func0=In Func1=In Func2=In Func3=In Func4=In Func5=In Func6=In Func7=In
// State0=T State1=T State2=T State3=T State4=T State5=T State6=T State7=T
PORTB=0x00;
DDRB=0x00;

// Port C initialization
// Func0=In Func1=In Func2=In Func3=In Func4=In Func5=In Func6=In Func7=In
// State0=T State1=T State2=T State3=T State4=T State5=T State6=T State7=T
PORTC=0x00;
DDRC=0x00;

// Port D initialization
// Func0=In Func1=In Func2=In Func3=In Func4=In Func5=In Func6=In Func7=In
// State0=T State1=T State2=T State3=T State4=T State5=T State6=T State7=T
PORTD=0x00;
DDRD=0x00;

// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: 1382,400 kHz
// Mode: Normal top=FFh
// OC0 output: Disconnected
TCCR0=0x02;
TCNT0=0x00;
OCR0=0x00;

// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer 1 Stopped
// Mode: Normal top=FFFFh
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;

// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer 2 Stopped
// Mode: Normal top=FFh
// OC2 output: Disconnected
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;

// External Interrupt(s) initialization
// INT0: Off
// INT1: Off
// INT2: Off
MCUCR=0x00;
MCUCSR=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x00;

// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
// Analog Comparator Output: Off
ACSR=0x80;
SFIOR=0x00;

// LCD module initialization
lcd_init(16);

while (1)
      {
      // Place your code here

      };
}


Bersambung ke Pemrograman Sensor PING dengan Bahasa C/CodeVisionAVR






   

Jumat, 18 Juni 2010

Membuat Rangkaian LED berjalan dengan IC 555

    Rangkaian Led berjalan sebenarnya adalah pengembangan dari logika flip-flop yang merupakan dasar dari Rangkaian Logika Sekuensial. Rangkaian sekuensial adalah rangkaian logika yang memiliki output yang tidak tergantung pada inputnya saja tetapi juga pada outputnya juga. Selain itu juga rangkaian logika sekuensial dapat mengingat logika yang dijalankannya.
    Untuk membuat sebuah rangkaian Led Berjalan sebenarnya relative mudah. Kita hanya membutuhkan IC counter untuk melakukan pencacahan dan juga bertindak sebagai timer. Selain itu kita juga membutuhkan gerbang yang dapat dirangkaia sebagai sebuah Rangkaian logika flip-flop.
    Disini saya menggunkan sebuah IC555 yang merupakan IC counter dan sekaligus Timer yang dapat digunakan untuk berbagai keperluan. Rangkaian penggunaan IC ini pun ada yang bersifat Monostable dan Astable. Pada rangkaian LED berjalan / Running Led ini saya menggunakan rangkaian Astable dan dikombinasikan dengan IC decode yang memilik 10 output dari keluarga IC4000. Dirangkaian Led berjalan yang akan kita buat, IC4017 akan bertindak sebagai Rangkaian Logika sekuensial.
Untuk lebih jelasnya sebaiknya kita langsung merangkai Rangkaian Led Berjalan ini. Dan kita membutuhkan komponen lainnya seperti :
- Supply tegangan 9 volt
- resistor 1KOhm dan juga 220Ohm secukupnya
- Led 8 buah
- Variabel resistor 10 Kohm
- Kapasitor Tipe Elco 100uF
- IC555
- IC4017
Dan semua komponen yang kita miliki akan  kita rangkai menjadi sebuah Rangkaian Led Berjalan.  Untuk lebih jelas lihat gambar rangkaian led berjalan / Running Led dibawah


Gambar.1 Rangkaian Led Berjalan / Running Led 8 Bit dengan IC Counter

Sedikit Penjelasan Tentang Rangkaian Led Berjalan Diatas
    Rangkaian Led Berjalan yang kita buat terdiri atas dua buah rangkaian. Yang pertama adalah rangkaian counter (rangkaian Astabel IC555) dan yang kedua adalah rangkaian logika sekuensial (IC4017). Rangkaian Counter IC555 merupakan sumber utama Clock yang akan mencacah IC4017. Jika IC4017 ini tercacah maka Kondisi selanjutanya adalah :
Led akan mulai berjalan dari Led yang paling atas dan diikuti oleh led dibawahnya dan seterusnya. Jeda antar led akan sama tergantung pada Besar nilai resistansi pada resistor variabel kecuali pada saat Led kedelapan dan akan kembali keled yang pertama akan memiliki jeda yang lebih panjang. Untuk Lama Jeda ini dapat kita ataur menggunakan Resistor Variabel. Semakin Besar nilai Resistansi pada resistor variabel maka jedanya akan semakin lama dan sebaliknya.

Sekian dari saya, Selamat Mencoba!

Referensi:
Bahan Ajar Elektronika Digital, Irmawan, MT
Galery utama Livewire 1.11 Pro



MENGGERAKAN MOTOR STEPPER DENGAN MIKROKONTROLER MCS51/AT89S51 MENGGUNAKAN BAHASA ASSEMBLY

   Motor stepper  adalah Motor yang berkerja perlangkah (step by step) berdasarkan sinyal yang diberikan pada masing-masing jalur yang ada. Tidak seperti motor pada umumnya, motor stepper memiliki kumparan pada statornya sedangkan bagian rotornya merupakan magnet permanent.
    Aplikasi Motor Stepper dalam dunia elektronika amat banyak terutama yang membutuhkan torsi yang kecil dengan tingkat akurasi yang tinggi. Contohnya pada CDROM (alat pemutar disket),Floppy Disk,atau pada printer tipe lama. Dan jenisnya pun beragam tergantung kebutuhan dan pemamfaatannya.
    Dalam percobaan yang saya lakukan, saya menggunakan sebuah motor stepper yang saya dapat dari sebuah printer Epson STYLUS C43SX.


Gambar 1. Motor Stepper

     Bisa kita lihat jika pin dari motor ini ada 4 buah. Saya sendiri mengubah posisi pin 3 menjadi pin dua dan pin 2 menjadi pin 3 (dilihat dari jumper bertandah biru) karena alasan tertentu sehingga programnya nanti akan sedikit berbeda.
    Jika pada keadaan normal,kita akan memberikan sinyal pada motor stepper secara berurutan 0001,0010,0100 dan 1000 dengan jeda tiap stepnya maka pada percobaan ini saya memberikan sinyal seperti ini 0001,1000,0010 dan 0100 dengan jeda sekitar 50 ms.Dan Motor steppernya sendiri saya hubungkan di Port1 Mikrokontroler At89s51. Sehingga Contoh Program Untuk Menggerakan Motor Stepper Menggunakan Bahasa Assembly yang kita buat akan seperti ini:

ORG 00H
MULAI:
    MOV P1,# 01H
    ACALL TUNDA
    MOV P1,#08H
    ACALL TUNDA
    MOV P1,# 02H
     ACALL TUNDA
     MOV P1,# 04H
     ACALL TUNDA

WAIT:
    AJMP  MULAI

 TUNDA:
    MOV R1,#50  
TUNDA1:
    MOV R0,#0H
     DJNZ     R0,$   
     DJNZ R1,TUNDA1
     RET    
 END


Artikel terkait:
Membuat sendiri driver motor stepper
Membuat Sistem Minimum Mikrokontroler MCS51/AT89S51 Sendiri
Membuat Delay Satu Detik Untuk Mikrokontroler MCS51 Dengan Bahasa Assembly
Menggerakkan Motor Stepper Menggunakan ATMEGA8535 dengan Bahasa C (CodeVisionAVR)


Menggerakkan Motor Stepper Menggunakan ATMEGA8535 dengan Bahasa C (CodeVisionAVR)

    Disini saya menggunakan sebuah motor steper yang saya dapat dari printer STYLUS C43SX.


Gambar 1. Motor Stepper

     Bisa kita lihat jika pin dari motor ini ada 4 buah. Saya sendiri mengubah posisi pin 3 menjadi pin dua dan pin 2 menjadi pin 3 (dilihat dari jumper bertandah biru).
    Selanjutnya Kita akan menghubungkan ke 4 pin tersebut langsung ke mikrokontroler pada Pin A 0-3 tanpa melalui driver ULN2003/ULN2803 ataupun L293D. Karena kita akan mengujicobakan apakah stepper kita dalam keadaan baik.
    Saya menggunakan CodevisionAVR untuk mendownloadkan program yang akan kita buat ke mikrokontroler ATMEGA8535. Jadi anda cukup melakukan settingan sedikit untuk PORT dan Chip.Setelah itu digenerate dan save.
Ketikkan Listing berikut pada program utama anda dan downloadkan ke ATMEGA8535.

Listing Program:

#include
#include
#include
// Declare your global variables here

void main(void)
{
// Declare your local variables here

// Input/Output Ports initialization
PORTA=0x00;
DDRA=0x0F;

while (1)
      {
      // Place your code here
       PORTA=0x01;
       delay_ms(50);
       PORTA=0x08;
       delay_ms(50);
       PORTA=0x02;
       delay_ms(50);
       PORTA=0x04;
       delay_ms(50);
      };
}

   
Artikel Terkait:
Membuat sendiri driver motor stepper
MENGGERAKAN MOTOR STEPPER DENGAN MIKROKONTROLER MCS51/AT89S51 MENGGUNAKAN BAHASA ASSEMBLY

Membuat Sendiri Rangkaian Driver Motor Stepper

    Untuk menggerakan motor stepper, kita tentunya membutuhkan sebuah rangkaian driver karena stepper membutuhkan supply tegangan dan arus yang cukup besar untuk dapat beropersi. Untuk membuat rangkaian driver ini sebenarnya tidak terlalu sulit. Kita hanya membutuhkan beberapa komponen seperti transistor, dioda dan juga resistor. Adapun rangkaian yang akan kita buat adalah seperti gambar.1 dibawah

Gambar.1 Driver Motor Stepper

    Pada rangkaian driver motor stepper tersebut, kita cukup menggunakan transistor tipe NPN 2N2222 dan dioda 1N4001. Dapat juga kita gunakan transistor dan dioda dengan tipe yang berbeda. Karena Fungsi transistor disana adalah sebagai saklar elektris. Dan ujung-ujung pin dari rangkaian tersebut akan kita hubungkan pada sinyal input yang akan kita berikan pada motor stepper.
    Pin PA0 hingga Pin PA3 akan kita hubungkan pada jalur output di mikrokontroler yang kita gunakan.  Sedangkan supply tegangan akan kita berikan dari luar tergantung kebutuhan atau tipe Motor Stepper yang kita gunakan. Bisa 5 volt,12 volt bahkan 24 volt.
    Jika ingin lebih mudahnya kita dapat menggunakan Driver motor Seperti L293D,L298,ULN2003 atau yang lainnya. Sehingga rangkaiannya akan lebih sederhana dan simpel.

Interfacing Mikrokontroler ATMEGA8535 dengan LCD|Program LCD dengan CodeVisionAVR

    LCD (Liquid Crystal Display) adalah sebuah komponen elektronika yang banyak digunakan untuk menampilkan data yang berasal dari CPU (dalam hal ini kita menggunakan mikrokontroler). Data yang ditampilkan oleh LCD dapat berupa angka maupun huruf. Bahkan, dipasaran sekarang telah tersedia LCD yang dapat menampilkan Grafik.
    Belakangan ini LCD lebih dipilih dari LED (seven-segment LED or Multisegment LED) untuk tampilan, disebabkan oleh beberapa hal sebb:
harga LCD sudah murah.
Mampu menampilkan angka,huruf, dan grafik (besar dan kecil). Lebih kontras dari LED.
Dapat di refresh sendiri tanpa bantuan CPU. Beda halnya dengan LED harus di refresh dari CPU.
Mudah untuk memprogram huruf dan grafik.
   
LCD yang beredar dipasaran memiliki banyak tipe tergantung dari penggunaan dan kebutuhan user. Antara lain:
A dengan kode : DMC16106A, DMC1606C, DMC16117
B dengan kode: DMC16106B, DMC16207, DMC16230,
C dengan kode: DMC20261, DMC24227, DMC24138, dll.


Gambar 1. posisi pin untuk beberapa LCD dari Optrex.
    Pada percobaan ini kita akan menggunakan LCD 2x16 Tipe A. Dan kita juga akan menggunakan Bahasa Pemrograman C menggunakan Codevision AVR untuk membuat program yang akan kita downloadkan ke Mikrokontroler ATMEGA8535.
    Langkah-langkahnya adalah sebagai berikut. Rangkaialah Modul LCD anda ( Ingat, Terlebih dahulu perhatikan Letak Pin VCC dan Ground. Jangan tertukar!) dan hubungkan dengan Mikrokontroler ATMEGA8535. Kita menggunakan PortC sebagai jalur hubungan Mikro-C dan LCD. Dan Programnya sebagai berikut:
>Buka CodeVisionAVR
>Buat Project Baru dengan cara Klik File>New selanjutanya muncul Jendela Create New File
>pilih project dan klik ok  dan ok lagi pada jendela confirm dan akan muncul jendela CodeWizardAVR
>lakukan setting terhadap Chip mikrokontroler dan juga LCD


Gambar.2 Setting Chip


Gambar.3 Setting LCD

>selanjutanya klik file>generate,save and exit
>beri nama ketiga file dengan LCD

Hasil dari generate file tersebut akan menghasilkan listing program dalam bahasa C. Dan kita cukup menambahkan Skrip program dalam program utamanya (Yang Diblok berwarna Hitam). Seperti ini:
#include
#include

// Alphanumeric LCD Module functions
#asm
   .equ __lcd_port=0x15 ;PORTC
#endasm
#include

unsigned char* str[17];
// Declare your global variables here

void main(void)
{
PORTC=0x00;
DDRC=0xFB;

ACSR=0x80;
SFIOR=0x00;

// LCD module initialization
lcd_init(16);

while (1)
      {
      // Place your code here
      lcd_clear();
      lcd_gotoxy(0,0);
      lcd_putsf("My Blog");   
     
      lcd_gotoxy(0,1);
      lcd_putsf("Andiero.co.cc");

      };
}

    Yang diberi warna merah merupakan karakter yang akan ditampilkan di LCD. Dan Gambar di bawah adalah beberapa jenis LCD yang banyak digunakan.




Senin, 14 Juni 2010

PRAKTIKUM PEMROGRAMAN MIKROKONTROLER ATMEGA8535

I.    Tujuan Percobaan
  1. Mengenal Mikrokontroler AVR ATMega8535 serta mengetahui dan memahami prinsip kerja mikrokontroler
  2. Mengenal dan menguasai pemrograman mikrokontroler AVR ATMega 8535 dengan menggunakan software Basic Compiler (BASCOM)
  3. Mengetahui dan membuat aplikasi mikrokontroler sebagai pusat kontrol suatu sistem

II.    Alat dan Bahan
1.    Sistem minimum AVR ATMega 8535 dan downloadernya
2.    Satu unit PC dengan dilengkapi software  BASCOM
3.    Power Supply 5 volt
4.    Microcontroller Training Board

Klik disini untuk download file lengkapnya

PRAKTIKUM PENGENALAN MATLAB PADA SISTEM KONTROL



Andiero. Praktikum MATLAB.

Matlab adalah singkatan dari Matrix Laboratory, software yang dibuat dengan menggunakan bahasa ini dibuat oleh The Mathworks.inc dan telah memasuki versi 6.5 Rilis 13. kekuatan matlab terletak pada :

  1. Kemudahan manipulasi struktur matriks.
  2. Jumlah routine-routine powerful yang berlimpah yang terus berkembang.
  3. Kekuatan fasilitas grafik tiga dimensi yang sangat memadai.
  4. Sistem scripting yang memberikan keleluasaan bagi pengguna untuk mengembangkan dan memodifikasi software untuk kebutuhan sendiri.
  5. Kemampuan interface( misal dengan bahasa C, word dan mathematica).
  6. Dilengkapi dengan toolbox, simulink, stateflow dan sebagainya, serta mulai melimpahnya source code di internet yang dibuat dalam matlab( contoh toolbox misalnya : signal processing, control system, neural networks dan sebagainya).

Semua itu merupakan perangkat yang powerful untuk menyelesaikan permasalahan sains dan teknik terutama untuk wilayah dimana komputasi numerik harus dibuat.


I.    Tujuan Percobaan
1.    Mengenal dan dapat mengoperasikan program MATLAB pada PC.
2.    Memiliki keterampilan dasar menggunakan MATLAB untuk operasi aljabar matriks sederhana.
3.    Mengenal fungsi‐fungsi dalam MATLAB.
4.    Memahami penggunaan MatLab dalam analisis dan desain sistem control.

II.    Bahan Percobaan
1.    Komputer
2.    Program (Software) MatLab.


Klik disini Untuk Download Materi Lengkapnya

Analog to Digital Converter

Pada dasarnya semua besaran yang digunakan dalam kehidupan sehari-hari kita baik Orang Umum maupun engineer merupakan suatu besaran analog. Besaran-besaran analog ini dapat berupa intensitas cahaya, temperatur, tekanan, jarak, dan masih banyak lagi.

            Besaran-besaran analog ini, jika ingin kita gunakan sebagai data digital maka kita membutuhkan proses konversi data tersebut dari analog ke digital baik secara hardware maupun secara software.Karena proses digital sendiri hanaya mengenal bilangan digital berupa bilangan bolean 0 dan 1. Sedangkan nilai dari besaran analog ini bermacam-macam.

            Misal kita menggunakan suatu sensor,katakanlah sensor suhu LM35 maka data yang diambil adalah temperatur. Selanjutnya keluaran dari sensor bisa berupa tegangan atau arus yang dapat berubah-ubah sesuai dengan perubahan temperatur. Jika tidak salah unuk LM35 tiap perubahan 1oC akan menghasilkan perubahan tegangan output sebesar 10mV.

            Karena keluaran sensor juga masih dalam bentuk tegangan/arus yang jika dibaca hanya memiliki dua kemungkinan 1 (mewakili 5 volt)atau 0(mewakilik 0 volt). Maka kita membutuhkan hardware tambahan yaitu ADC.

ADC merupakan komponen yang mengubah besaran analog (dalam hal ini tegangan yang berpadanan dengan temperatur) dan dikonversi menjadi besaran digital.

ADC memiliki beberapa karakteristik penting:

a. Input voltage range

b. Bit resolution

c. Sampling rate


ADC memiliki beberapa jenis bit resolution, antara lain 8 bit, 10 bit, 12 bit, 16 bit dan bahkan 20 bit. Apa yang dimaksud dengan bit resolution?

Setiap tegangan input yang dikonversi menjadi digital hasilnya harus berupa deretan 1 dan 0 yang merepresentasikan besar tegangan tersebut. Katakanlah dengan ADC 8 bit, maka tegangan input harus dikonversi menjadi 00000000 (0 desimal) sampai 11111111 (255 desimal).



Contoh:
Temperatur --- Tegangan --- Keluaran ADC

0 --- 0 V --- 00000000 = 0 desimal

100 --- 5 V --- 11111111 = 255 desimal

50 --- 2.5 V --- 10000000 = 128 desimal


Sekarang kita bisa mencari hubungan antara temperatur dengan keluaran ADC dengan memperhatikan:

a. Range temperatur 0 – 100 derajat celcius

b. Range output sensor 0 – 5 Volt

c. Range input ADC 0 – 5 Volt

d. Resolusi ADC 8 bit = 0 – 255


Range output sensor (b) dan range input ADC (c) harus sama, apabila tidak, perlu memakai ‘signal conditioner’ untuk menyamakan range tegangan. Signal conditioner biasanya berupa rangkaian Operational Amplifier, bukan sampo cuci rambut :) Kita lupakan dulu masalah rangkaian signal conditioner.

0 derajat celcius ekivalen dengan 0


100 derajat celcius ekivalen dengan 255

Jadi persamaannya:

Keluaran ADC = (255/100) * temperatur

Atau
Temperatur = (100/255) * keluaran ADC

Misalnya keluaran ADC adalah 154, maka temperaturnya adalah 60.39 derajat

celcius
Pertanyaannya, kalau temperaturnya 43 derajat celcius, berapa keluaran ADC?

Keluaran ADC = (255/100) * 43 = 109.65

Benar?
Hmm... kenapa jadi ada angka koma? Padahal bilangan biner 8 bit tidak ada angka koma ya? Keluaran dari ADC adalah tanpa koma karena hanya 8 bit. Jadi keluaran ADC adalah integer dari 109.65 = 109

Jadi persamaannya perlu disempurnakan:

Keluaran ADC = | (255/100)*temperatur | atau INT( (255/100) * temperatur )



Sekian! Semoga bermamfaat!

Cara Baru Penyebaran Virus, Spyware dan Malware

    Siapa yang tidak tahu Virus?. Baik itu Virus penyakit dan Virus Komputer pasti identik dengan namanya masalah dan penyakit. Bagi kita yang selalu berinteraksi dengan komputer pasti tahu apa yang akan terjadi jika komputer kita terkena virus?
    Virus ,spyware dan sejenisnya adalah software yang dirancang untuk menyerang suatu sistem komputer baik itu pribadi maupun instansi dengan berbagai tujuan. Ada yang bertujuan untuk mencuri data atau informasi dari komputer orang lain, meruak suatu file ,mengganggu kinerja software lain bahakan ada yang sampai merusak hardware komputer kita. Dan masih banyak lagi tujuan lainnya.
    Virus terus berkembang seiring dengan berkembangnya teknologi komputer dan perangkat lunak. Tak jarang virus dapat benar-benar identik dengan software yang terinsatal pada komputer kita ataupun juga berperan sebagai sistem komputer sehingga hal ini menyebabkan Antivirus tak dapat mengenalinya dan juga tak dapat mengeksekusinya. Namun berkembangnya Virus, Antivirus juga ikut berkembang. Bahkan Antivirus lokal di Indonesia juga mengalami perkembangan dan kemajuan yang lumayan pesat sehingga sedikit menyulitkan penyebaran virus.
    Tapi tidak ada kata menyerah bagi para pembuat virus, kini ada suatu cara untuk menyebarkan virus secara aman dan tidak dicurigai yakni dengan menyelipkannya dalam suatu file yang ter-kompres-i seperti file zip atau juga rar. Beberapa pihak seperti gmail tidak pernah mencurigai file tipe ini sehingga celah ini dimamfaatkan oleh Para Pembuat virus.
    Bahkan antivirus saat ini juga kurang mewaspadai penyebaran virus dengan cara ini. Namun kita tidak perlu panik ataupun terlalu khawatir terhadap hal ini. Masih ada cara untuk mengantisipasinya. Salah satunya adalah selalu mengupdate Antivirus kita baik lokal maupun lainnya.



Catatan. Semua file download yang saya berikan, InsyaAllah adalah file yang aman. Terima Kasih!

Jumat, 11 Juni 2010

PRAKTIKUM PENGENDALI PID MENGGUNAKAN MATLAB

TUJUAN
-    Mahasiswa mampu mengenal Pengendali PID
-    Mahasiswa dapat memahami karakteristik Pengendali PID
-    Mahasiswa mampu menggunakan pengendali PID dalam pengendalian sistem kendali

ALAT DAN BAHAN
  1.      Komputer
  2.      Software Matlab 6.0
  3.      Modul Praktikum

DASAR TEORI
    Pengendali PID ini paling banyak dipergunakan karena sederhana dan mudah dipelajari serta tuning parameternya. Lebih dari 95% proses di industry menggunakan pengendali ini. Pengendali ini merupakan gabungan dari pengedali proportional (P), integral (I), dan  derivative (D).


Klik Disini Untuk Download Materi Lengkapnya

Mengembalikan File atau Folder yang Disembunyikan oleh Virus

Baca Artikel Sebelumnya "Membuat Super hidden File atau folder"

            Kebanyakan virus yang kita temukan cenderung untuk mengkopi nama file atau folder dalam Sistem Operasi untuk mempertahankan dirinya. Dan tentu saja file atau folder asli akan disembunyikannya. Hal ini tidak jarang membuat sebagian dari kita kesal atas ulah si Virus.

            Tapi tahukah anda dengan cara yang sama dari artikel sebelumnya "Membuat Super hidden File atau folder" kita bias mengembalikan file atau folder yang telah hilang tadi. Caranya adalah dengan mengubah tanda + menjadi -.             Contohnya kita akan mengembalikan lagi folder Ebook yang telah kita hilangkan. Pada command Prompt ketikan Attrib -s -h ebook /s /d dan enter dan Folder Ebook Telah kembali.

            Tapi bagaimana jika kita tidak tahu file dan folder apa saja yang telah disembunyikan oleh virus. Caranya adalah dengan mengetikan perintah ini pada Drive yang kita inginkan Attrib +a +r -h -s /s /d enter . Saya jamin semua file dan folder tersembunyi akan muncul.


Selamat mencoba!

Tips Windows Xp| Membuat Super hidden File atau folder

    Kadang kala kita menginginkan sebuah privasi untuk menjaga beberapa file pribadi kita agar tidak dilihat oleh orang lain apalagi disalahgunakan. Tentunya kita harus menyembunyikan file tersebut ditempat yang sangat aman agar tidak diketahui keberadaannya.
    Kita bisa saja menggunakan beberapa software Bantu untuk menyimpan file kita tersebut atau menggunakan software untuk mengunci folder kita agar tidak bisa digunakan oleh orang lain.Lihat artikel Tentang Software Pengaman File Pribadi.
    Selain menggunakan software masih ada banyak cara untuk melakukannya. Dan berikut saya akan membagi sedikit cara yang bisa kita gunakan. Kita akan menggunakan Command Prompt untuk melakukannya.

Catatan: saya telah memunculkan semua file yang berattribut hidden.Sebagai bukti perhatikan icon desktop.ini yang samar.(Attribut hidden).

Disini saya akan menyembunyikan Folder Ebook yang terdapat di Drive H (Perhatikan Icon Layar di Gambar.1).

Gambar.1 Folder yang akan disembunyikan

Langkah-langkahnya:
Buka Command Prompt. Caranya Tekan tombol Windows + R dan ketikan CMD klik OK
Muncul Jendela Command Prompt
Dan Pindahkan ke drive  H dengan mengetikan H: dan enter
Selanjutnya kita tinggal menyembunyikan folder Ebook dengan menggunakan perintah Attrib. Caranya ketikan Perintah berikut
Attrib +s +h ebook /s /d dan enter
Proses akan berjalan tidak terlalu lama dan ..............................................................
Folder Ebook telah menghilang

Gambar.2 Icon Ebook Telah Menghilang

Sedikit Penjelasan tentang perintah attrib
Attrib merupakan perintah untuk menampilkan atau merubah attribut suatu file.( Lebih jelasnya ketikan help dan enter pada Command Prompt )
Untuk +s. Adalah perintah untuk mengatur Attribut suatu file menjadi system
Untuk +h. Adalah perintah untuk mengatur attribut suatu file menjadi hidden
Ebook adalah nama file yang akan di ubah attributnya
/s melakukan proses di semua folder dan sub folder
/d melakukan proses pada folder juga

Untuk lebih jelas ketikan help attrib di jendela command prompt.
Agar kita lebih mahir ayo kita lanjutkan ke Artikel selanjutnya
"Mengembalikan File atau Folder yang Disembunyikan oleh Virus"

Membuat Kalender menggunakan Microsoft Visual Basic 6.0 (Bagian 2)

Untuk membuat kalender menggunakan visual basic ada dua cara. Cara yang pertama menggunakan Fasilitas yang telah disediakan oleh Visual Basic 6.0 dan cara kedua dengan menggunakan Listing program dan beberapa kontrol label.
    Untuk Cara yang pertama silakan anda baca artikel sebelumnya. Kali ini kita akan mencoba membuat kalender dengan visual basic 6.0 menggunakan cara yang Kedua. Untuk cara yang kedua ini kita akan mengggunakan beberapa kontrol seperti label dan timer. Adapun langkah-langkahnya adalah sebagai berikut.
>> Buka Program Visual Basic Pada komputer anda
>>tambahkan 4 buah kontrol label pada form dan sebua kontrol timer serta sebuah kontrol command button. Dan ubah nilai propertie masing-masing seperti berikut
--Name: lblhari,lblbulan,lbltahun dan lblangka untuk timer ganti jadi tmrwaktu  command1 ganti jadi keluar
--Interval beri nilai 1000
>>atur tampilannya seperti berikut. (atau sesuai kebutuhan anda)

Gambar.1 tampilan program

>>selanjutnya ketikan listing berikut
Private Sub keluar_Click()
Unload Me
End Sub

Private Sub tmrwaktu_Timer()
Dim andi As Variant
andi = Now
lblhari.Caption = Format(andi, "dddd")
lblbulan.Caption = Format(andi, "mmmm")
lbltahun.Caption = Format(andi, "yyyy")
lblangka.Caption = Format(andi, "d")
End Sub

>>jalankan program yang dibuat. Hasilnya seperti ini
Gambar.2 Program yang telah jadi

Penjelasan. Sama seperti program sebelumnya yang telah kita buat,untuk program kelender ini kita juga masih menggukaan format waktu yang ada dari sistem komputer kita. Jika kita ingin melakukan pengaturan maka kita atur sistem komputer kita sendiri.
Download script lengkapnya disini

Membuat Kalender menggunakan Microsoft Visual Basic 6.0

    Pada Artikel sebelumnya telah dibahas tentang membuat Jam Analog dan juga Jam digital dengan Visual Basic. Dan Kali ini kita akan mencoba membuat Kalender dengn menggunakan Visual Basic.
    Untuk membuat kalender menggunakan visual basic ada dua cara. Cara yang pertama menggunakan Fasilitas yang telah disediakan oleh Visual Basic 6.0 dan cara kedua dengan menggunakan Listing program dan beberapa kontrol label.
    Kali ini kita akan mencoba membuat kalender dengan visual basic 6.0 menggunakan cara yang pertama. Adapun langkah-langkahnya adalah sebagai berikut.
>> Buka Program Visual Basic Pada komputer anda
>>Selanjutnya kita akan menanbahkan kontrol baru pada toolbox. Caranya klik menu project>components atau tekan tombol Kontrol (Ctrl) dan T bersamaan. Lihat Gambar.1

 Gambar.1 Menambah Components baru

>>selanjutnya akan muncul jendela components. Dan beri centang pada microsoft calendar control 8.0>klik ok. (lihat gambar.2)

Gambar.2 Menambah Kontrol Kelendar

>>dan pada toolbox akan bertambah sebuah kontrol baru yaitu kontrol kalender yang akan kita gunakan.

Gambar.3 Kontrol kalendar

>>dengan kontrol ini kita akan membuat kalendar dengan cepat.
>>silakan tambahkan kontrol ini ke form dan jalankan. Maka Kalendar telah siap untuk digunakan.
>>untuk men-setting kalender ini kita bisa melakukan pengaturan pada propertiesnya tanpa harus menggunakan listing program.

Dan untuk cara kedua silakan baca Artikel selanjutnya.



Membuat Jam Digital dengan Microsoft Visual Basic 6.0

    Pada Artikel sebelumnya saya telah menuliskan cara untuk membuat Jam Analog dengan Visual Basic. Kali ini kita akan membuat sebuah jam digital menggunakan visual basic 6.0. Untuk membuatnya tentu sangat mudah berbeda dengan membuat jam analog sebelumnya yang sedikit rumit. Karena kita hanya akan menggunakan beberapa kontrol dan script yang pendek untuk membuat jam digital ini.
    Adapun langkah-langkah atau cara-cara membuatnya adalah sebagai berikut:
>>Buka program Visual Basic Anda (Disini selalu saya yakin jika anda telah menginstal program visual basic dikomputer anda dan anda sudah memiliki basic untuk menggunakannya).
>>Pada Form Anda Tambahkan sebuah kontrol label dan juga sebuah kontrol timer seperti gambar.1

Gambar.1 Form Lay Out

>>ubah propertisnya menjadi
Name    : Jam untuk label dan tmrjam untuk timer
Pada interval timer beri nilai selain nol misal 1000

>>selanjutnya klik dua kali kontrol timer atau buka jendela code dan ketikan listing berikut

Private Sub tmrjam_Timer()
Jam.Caption = Time
End Sub

>>Dan jalankan program yang anda buat. Hasilnya seperti ini
Gambar.2 Program yang telah jadi

Sedikit penjelasan:Listing program yang kita tulis " Jam.Caption = Time" akan mengambil waktu dari sistem sehingga waktu yang akan ditampilkan di Form adalah waktu dari sistem yang kita set dari komputer kita masing-masing.

Download Script Program ini Disini.




Dasar-dasar Kontrol PID

Andiero. Hingga saat ini, Kontrol PID masih tetap populer digunakan diberbagai industri untuk mengendalikan besaran variabel dari suatu proses produksi. Kontrol PID sendiri sudah ada sejak lama bahkan sebelum sistem digital berkembang dimulai dari penggunaan logika analog untuk memecahkan permasalahan yang sifatnya mekanis.

Namun sekarang, Seiring perkembangan teknologi digital. Kontrol PID juga ikut berkembang dan sifatnya semakin sederhana bahkan sudah ada dalam bentuk modul yang dapat digunakan secara luas. Karena sifatnya yang sederhana itulah, operator yang melakukan pengendalian suatu proses tidak perlu memahami perhitungan aritmatika yang rumit, cukup mengandalkan pengalamannya dalam melakukan tuning untuk menentukan parameter PID.

Berikut ini kita akan membahas dasar-dasar Kontrol PID secara umum.

Pengendali Proposional
Pengendali proposional memiliki keluaran yang sebanding/proposional dengan besarnya sinyal kesalahan (selisih antara besaran yang diinginkan dengan harga aktualnya). Secara lebih sederhana dapat dikatakan, bahwa keluaran Pengendali proporsional merupakan perkalian antara konstanta proporsional dengan masukannya. Perubahan pada sinyal masukan akan segera menyebabkan sistem secara langsung mengubah keluarannya sebesar konstanta pengalinya.

Pengendali proporsional memiliki 2 parameter, pita proporsional (proportional band) dan konstanta proporsional. Daerah kerja kontroller efektif dicerminkan oleh Pita proporsional, sedangkan konstanta proporsional menunjukkan nilai faktor penguatan terhadap sinyal kesalahan,  Kp.
  1. Ciri-ciri kontroler proporsional harus diperhatikan ketika kontroler tersebut diterapkan pada suatu sistem. Secara eksperimen, pengguna kontroller proporsional harus memperhatikan ketentuan-ketentuan berikut ini: 
  2. Kalau nilai Kp kecil, kontroler proporsional hanya mampu melakukan koreksi kesalahan yang kecil, sehingga akan menghasilkan respon sistem yang lambat. 
  3. Kalau nilai Kp dinaikkan, respon sistem menunjukkan semakin cepat mencapai keadaan mantabnya. Namun jika nilai Kp diperbesar sehingga mencapai harga yang berlebihan, akan mengakibatkan sistem bekerja tidak stabil, atau respon sistem akan berosilasi.

Kontroler Integral
Kontroller integral berfungsi menghasilkan respon sistem yang memiliki kesalahan keadaan mantap nol. Kalau sebuah plant tidak memiliki unsur integrator (1/s ), kontroller proporsional tidak akan mampu menjamin keluaran sistem dengan kesalahan keadaan mantabnya nol. Dengan kontroller integral, respon sistem dapat diperbaiki, yaitu mempunyai kesalahan keadaan mantapnya nol.

Kontroler integral memiliki karakteristik seperti halnya sebuah integral. Keluaran kontroller sangat dipengaruhi oleh perubahan yang sebanding dengan nilai sinyal kesalahan. Keluaran kontroler ini merupakan jumlahan yang terus menerus dari perubahan masukannya. Kalau sinyal kesalahan tidak mengalami perubahan, keluaran akan menjaga keadaan seperti sebelum terjadinya perubahan masukan.

Sinyal keluaran kontroler integral merupakan luas bidang yang dibentuk oleh kurva kesalahan penggerak- lihat konsep numerik. Sinyal keluaran akan berharga sama dengan harga sebelumnya ketika sinyal kesalahan berharga nol.

Ketika digunakan, kontroler integral mempunyai beberapa karakteristik berikut ini: 
  1. Keluaran kontroler membutuhkan selang waktu tertentu, sehingga kontroler integral cenderung memperlambat respon.
  2. Ketika sinyal kesalahan berharga nol, keluaran kontroler akan bertahan pada nilai sebelumnya.
  3. Jika sinyal kesalahan tidak berharga nol, keluaran akan menunjukkan kenaikan atau penurunan yang dipengaruhi oleh besarnya sinyal kesalahan dan nilai Ki .
  4. Konstanta integral Ki yang berharga besar akan mempercepat hilangnya offset. Tetapi semakin besar nilai konstanta Ki akan mengakibatkan peningkatan osilasi dari sinyal keluaran kontroler.

Kontroler Diferensial
Karakteristik kontroler diferensial adalah sebagai berikut:
  1. Kontroler ini tidak dapat menghasilkan keluaran bila tidak ada perubahan pada masukannya (berupa sinyal kesalahan).
  2. Jika sinyal kesalahan berubah terhadap waktu, maka keluaran yang dihasilkan kontroler tergantung pada nilai Td dan laju perubahan sinyal kesalahan.
  3. Kontroler diferensial mempunyai suatu karakter untuk mendahului, sehingga kontroler ini dapat menghasilkan koreksi yang signifikan sebelum pembangkit kesalahan menjadi sangat besar. Jadi kontroler diferensial dapat mengantisipasi pembangkit kesalahan, memberikan aksi yang bersifat korektif, dan cenderung meningkatkan stabilitas sistem .
Berdasarkan karakteristik kontroler tersebut, kontroler diferensial umumnya dipakai untuk mempercepat respon awal suatu sistem, tetapi tidak memperkecil kesalahan pada keadaan tunaknya. Kerja kontrolller diferensial hanyalah efektif pada lingkup yang sempit, yaitu pada periode peralihan. Oleh sebab itu kontroler diferensial tidak pernah digunakan tanpa ada kontroler lain sebuah sistem.

Software Pengaman File Pribadi

1. Folder Lock

Sistem operasi Windows memang menyediakan fasilitas penyembunyi folder. Sayangnya banyak orang yang sudah mengerti bagaimana membuatnya menjadi tak tersembunyi lagi. Folder Lock mungkin bisa menjadi alternatif pilihan.

Folder Lock merupakan software pengunci folder. Program ini muncul sekitar 2 tahun yang lalu. Fungsinya hampir sama seperti gembok. Folder Lock akan memunculkan kotak dialog untuk mengisi password setiap file yang diklik. Tak hanya mengunci, file yang dilindungi pun akan menjadi tersembunyi. Fasilitas yang ditawarkan juga beragam, mulai dari perlindungan dari virus, mengenkripsi dan mengacak data.

Aplikasi ini berukuran 1,82 MB dan dapat berjalan pada platform Windows 98/ME/NT/2000/XP. Program ini bisa diperoleh melalui situs www.newsoftwares.net/folderlock. Sayangnya program tersebut merupakan shareware yang tidak gratis karena Anda harus mengeluarkan kocek US untuk mendapatkannya.

2. Cryptainer LE 5.0.1

Software ini akan membuatkan Anda kontainer data atau folder yang digunakan untuk menyimpan berbagai ragam data. Anda tinggal memasukkan file-file yang akan dienkripsi ke dalam folder tersebut. Tidak hanya bisa bekerja di PC (komputer), program ini juga bisa digunakan dalam media penyimpanan lain seperti USB Drive, CD ROM, Flash Disk dan lainnya.

Selain berfungsi melindungi data, software ini juga mampu melindungi e-mail. Anda bisa mendapatkan software ini secara cuma-cuma alias gratis melalui situs http://www.cypherix.co.uk/cryptainerle/. Sama seperti Folder Lock, program ini bisa berjalan pada platform Windows 98/ME/NT/2000/XP

3. MySecretFolder
Software ini memberikan opsi pada pengguna untuk memilih fitur menyembunyikan direktori atau perlindungan folder dengan password. Opsi pertama hanya menyembunyikan saja tanpa pemberian password. Opsi kedua hanya memberikan perlindungan file dengan password saja.

Aplikasi ini dapat berjalan pada platform Windows 98, ME, 2000, Server 2003 dan Windows XP. Untuk pengunduhan, dukungan dan update, dapat diakses melalui situs http://www.my-secret-folder.com/.

4. FileGhost

FileGhost merupakan salah satu tool keamanan yang bisa digunakan untuk memproteksi file atau folder. Dengan program ini, secara aman Anda bisa mengunci, menyembunyikan, menolak (deny) file reading, file writing, mencegah langkah penghapusan file (deleting), penyalinan (copying), pemindahan (moving, pengubahan nama file/folder (renaming) dan replacing.

Sabtu, 05 Juni 2010

Dasar-dasar pemrograman Input Output untuk mikrokontroler MCS51 menggunakan bahasa assembly.

    Hubungan Input Output dalam penggunaan Mikrokontroler merupakan hal terpenting. Karena nantinya akan banyak digunakan keterkaitan antara Input dan Output. Input atau masukan yang digunakan akan berupa sebuah sensor atau dapat juga sebuah saklar yang memberikan masukan ke mikrokontroler dan menjalankan intruksi yang ditunjuk sesuai masukan yang diberikan.
    Masukan yang diberikan bisa berupa data analog ataupun juga berupa data digital. Untuk data yang bersifat analaog maka kita akan membutuhkan perlakuan yang berbeda baik terhadap Rangkaian Hardware maupun juga untuk softwre yang akakn dibuat. Namun jika data inputan yang kita gunakan berpa sinyal-sinyal digital 1 , 0 ataupun dapat juga dalam bentuk gelombang persegi yang dinamis maka kita cukup mendefinisikannya sesuai kebutuhan dan ketentuannya.
    Berikut kita akan mencoba menggunakan sebuah saklar ( Push Button ) sebagai Inputan dan Led sebagai indikator/keluarannya. Kita akan menggunakan Push Button (PB) di Port1.0  dan 8 Buah Led di PORT.2 . Untuk Rangkaiannya dapat dilihat gambar dibawah.


Gambar.1 Rangkaian Mikrokontroler MCS51

    Selanjut kita membuat program untuk menajalankan sistem yang telah kita buat. Seperti biasa kita siapkan juga apa yang kita butuhkan seperti kabel ISP downloader STK200, Software ISP Programer buatan Asim Khan ataupun juga ATMEL ISP Programer, program kompiler ASM51 dan Text Editor untuk kita menuliskan listingt program assembly nanti.
    Silakan buka notepad,ketikan listing program berikut:

$MOD51
$TITLE(IO)

    ORG     0000H
LOOP:
    MOV     A,P1.0
    CJNE     A,#01H,BUKAN
YA:
    MOV     A,#0FFH
    SJMP     LED
BUKAN:
    MOV     A,#00
LED:
    MOV     P2,A
    SJMP     LOOP

    Cara kerja dari program yang kita buat adalah sebagai berikut. Jika kita menekan memberikan logika pada PORT1.0 dengan cara menekan PB maka nilai tersebut akakn kita pindahkan ke Register A (ACC) selanjut mikrokontroler akan mengecek jika nilai tersebut 1 maka akan lompat ke label YA namun jika logika yang di dapat 0 maka akan melompat ke label BUKAN. Selanjutnya jika label YA yang didapat,Register A akan akan kita isi dengan nilai 255 selanjutnya nilai tersebut akakn kita pindahkan ke PORT2 dan ditampilkan ke LED. Sebaliknya jika 0 maka LED akan tetap mati.(lihat label BUKAN,nilai register A adalah nol)

Jumat, 04 Juni 2010

Membuat Power Supply Dari Serial Port

   Dalam dunia elektronika (khususnya Arus lemah),power supply akan menjadi hal yang amat sangat dibutuhkan. Kita bisa mendapatkanya dari sebuah baterai ataupun dari sebuah adaptor. Tentunya untuk adaptor kita dapat membuatnya sendiri menggunakan rangakaian penyearah dn transformator. Namun tahukah anda jika kita dapat membuatnya sendiri menggunakan computer kita. Paralel Port, Serial Port dan USB dapat digunakan sebagai sumber tegangan dc. Cukup dengan sedikit modifikasi,kita sudah dapat menggunakannnya.
    Kali ini kita akan mencoba membuat rangkaian power supply menggunakan serial port sebagai sumber catu dayanya. Rangkaiannya dapat dilihat dibawah.

Gambar.1 Rangkaian Catu daya
    Dari gambar tersebut pin yang akan kita gunakan adalah pin TD,DTR dan DTS. Dalam kondisi normalnya DTR dan RTS memberikan tegangan 12 volt namun tegangan ini akan menurun jika ada beban. Penurunan tegangan sekitar 1 sampai 2 volt setiap kenaikan penarikan arus sebesar 1mA. Dan arus maksimum yang dapat ditarik dari serial port ini hanya 7-10mA dan dapat berbeda tergantung pembuat card serial port.

Catatan. Sebaiknya sebelum dicobakan di rangkaian,lakukan pengukuran terlebih dahulu menggunakan Multitester. Cek besar tegangan yang keluar dari serial port sebelum dan sesudah menggunakan rangkaian.

Penulis tidak bertanggungjawab atas penggunaan artikel ini.

Sumber.Buku pegangan I/O BUS dan MOTHERBOARD

Membuat Sistem Pengendali Lampu Taman Sederhana dengan Port Paralel Komputer

    Bahasan kali ini sebenarnya sudah cukup tua. Karena pembahasan mengenai port paralel telah banyak dibahas oleh para ahlinya. Dan penggunaannya juga sekarang mulai ditinggalkan. Mengingat sekarang hampir semua komunikasi antara manusia dan mesin ( HMI) banyak menggunkan port USB yang semakin praktis. Tapi apa salahnya jika saya kembali membahas mengenai aplikasi dan penggunaan port paralel sebagai media pengendali otomatis.
    Kali ini kita akan menggunakan porty paralel sebagai saklar otomatis pengendali listrik rumahan(Sebagai Objek yang akan dikendalikan adalah lampu taman). Untuk saklar yang menghubungkan antara Listrik rumahan dan komputer kita gunakan sebuah relay spst 9-12 volt. Rangkaiannya dapat dilihat digambar.1


Gambar.1 rangkaian pengendali lampu taman

    Dan program yang kita gunakan adalah Visual basic 6.0. Karena program ini sangat praktis apalagi kita juga dapat mensimulassikan kasusu yang kita buat.
Langsung saja kita akan membuat program yang akakn kita gunakan untuk sistem pengendali lampu taman menggunakan port paralel.
Langkah-langkahnya sebagai berikut:
>>Hubungkan rangkaian sistem anda ke Port paralel Komputer,kemudian buka program visual basic 6.0 (Sudah terintal di komputer)
>>Buat folder baru beri nama project dan simpan file inpout32.dll di folder tersebut
>>Saya telah menganggap jika anda telah mampu menguasai VB 6.0 ini
>>Buat tampilan Form seperti ini
Gambar.2 layuot Program

>>Tambahkan sebuah modul dan copykan listing ini
Public Declare Function Inp Lib "inpout32.dll" _
Alias "Inp32" (ByVal PortAddress As Integer) As Integer
Public Declare Sub Out Lib "inpout32.dll" _
Alias "Out32" (ByVal PortAddress As Integer, ByVal value As Integer)
Public Declare Sub sleep Lib "kernel 32" (ByVal dwMilliseconds As Long)

>>Bisa juga di jendela code. Anda tinggal mengganti public menjadi private

>>Selanjutnya copy listing program berikut ke jendela code
Private Sub taman_Click()
If taman.Caption = "Taman_off" Then
taman.Caption = "Taman_on"
taman1.Caption = "Taman1_on"
taman2.Caption = "Taman2_on"
Out 888, 3
led1.FillColor = vbYellow
led2.FillColor = vbYellow
Else
taman.Caption = "Taman_off"
taman1.Caption = "Taman_off"
taman2.Caption = "Taman_off"
Out 888, 0
led1.FillColor = vbBlack
led2.FillColor = vbBlack
End If
End Sub

Private Sub taman1_Click()
If taman1.Caption = "Taman1_off" Then
taman1.Caption = "Taman1_on"
Out 888, 1
led1.FillColor = vbYellow
taman.Caption = "Taman2_off"
taman2.Caption = "Taman2_off"
led2.FillColor = vbBlack
Else
taman.Caption = "Taman2_off"
taman1.Caption = "Taman1_off"
Out 888, 0
led1.FillColor = vbBlack
End If
End Sub

Private Sub taman2_Click()
If taman2.Caption = "Taman2_off" Then
taman2.Caption = "Taman2_on"
Out 888, 2
led2.FillColor = vbYellow
taman.Caption = "Taman2_off"
taman1.Caption = "Taman1_off"
led1.FillColor = vbBlack
Else
taman.Caption = "Taman2_off"
taman2.Caption = "Taman2_off"
Out 888, 0
led2.FillColor = vbBlack
End If
End Sub

>>simpan program anda di folder project yang sam dengan file inpout32.dll tadi dan silakan jalankan program yang anda buat.

Silakan download scriptnya disini.
Silakan download artikelnya disini

Baca juga semua artikel yang terkait