Pengujian Rangkaian Display Seven Segmen Pengujian Rangkaian Driver Motor Stepper

Program di atas bertujuan untuk menyalakan mematikan LED yang terhubung ke P0.0 dan P0.2 Secara bergantian flip - flop. Perintah Setb P0.0 akan menjadikan P0.0 berlogika high yang menyebabkan LED tidak mendapat hubungan dengan ground sehingga LED akan mati. Perintah Clr P0.2 akan menjadikan P0.2 berlogika low yang menyebabkan LED terhubung dengan ground sehingga LED akan menyala. Call delay akan menyebabkan LED ini menyala dna mati selama beberapa saat. Perintah jmp Loop akan menjadikan program tersebut berulang, sehingga akan tampak LED tersebut menyala secara bergantian flip - flop. Jika program tersebut diisikan ke mikrokontroller AT89S51, kemudian mikrokontroller dapat berjalan sesuai dengan program yang diisikan, maka rangkaian minimum mikrokontroller AT89S51 telah bekerja dengan baik.

4.2. Pengujian Rangkaian Display Seven Segmen

Pengujian pada rangkaian ini dapat dilakukan dengan menghubungkan rangkaian ini dengan rangkaian mikrokontroler, kemudian memberikan data tertentu pada port serial dari mikrokontroler. Seven segmen yang digunakan adalah common anoda, dimana semen akan menyala jika diberi logika 0 dan sebaliknya segmen akan mati jika diberi logika 1. Universitas Sumatera Utara Dari hasil pengujian diperoleh data yang harus dikirimkan ke port serial untuk menampilkan angka desimal adalah sebagai berikut: Angka Data yang dikirim 1 0ECH 2 18H 3 88H 4 0C4H 5 82H 6 02H 7 0E8H 8 0h 9 80H 20H Program yang diisikan pada mikrokontroler untuk menampilkan nilai-nilai tersebut adalah sebagai berikut: bil0 equ 20h bil1 equ 0ech bil2 equ 18h bil3 equ 88h bil4 equ 0c4h Universitas Sumatera Utara bil5 equ 82h bil6 equ 02h bil7 equ 0e8h bil8 equ 0h bil9 equ 80h Loop: mov sbuf,bil0 Jnb ti, Clr ti sjmp loop Program di atas akan menampilkan angka 0 pada semua seven segmen. Sedangkan untuk menampilkan 3 digit angka yang berbeda pada seven segmen adalah dengan mengirimkan ke 3 data angka yang akan ditampilkan pada seven segmen. Programnya adalah sebagai berikut : Loop: mov sbuf,bil1 Jnb ti, Clr ti mov sbuf,bil2 Jnb ti, Clr ti mov sbuf,bil3 Jnb ti, Clr ti sjmp loop Program di atas akan menampilkan angka 1 pada seven segmen ketiga, angka 2 pada seven segmen kedua dan angka 3 pada seven segmen pertama Universitas Sumatera Utara

4.3. Pengujian Rangkaian Driver Motor Stepper

Rangkaian driver motor stepper ini terdiri dari empat masukan dan empat keluaran, dimana masing-masing masukan dihubungkan dengan mikrokontroler AT89S51 dan keluarannya dihubungkan ke motor stepper. Rangkaian ini akan bekerja memutar motor stepper jika diberi sinyal high 1 secara bergantian pada ke-4 masukannya. Rangkaiannya seperti gambar di bawah : Gambar 4.3. Rangkaian Driver Motor Stepper Rangkaian ini terdairi dari 2 buah transistor NPN TIP 122 dan 2 buah transistor PNP TIP 127. Masing-masing transistor dihubungkan ke P0.0, P0.1, P0.2 dan P0.3 pada mikrokontroler AT89S51. Basis dari masing-masing transistor diberi tahanan 10 Kohm untuk membatasi arus yang masuk ke transistor. Kolektor dihubungkan dengan kumparan yang terdapat pada motor stepper, kemudian kumparan dihubungkan dengan sumber tegangan 12 volt.dan emitor dihubungkan ke ground. Universitas Sumatera Utara Jika P0.0 diberi logika high 1, yang berarti basis pada transistor TIP 122 mendapat tegangan 5 volt, maka transistor akan aktip. Hal ini akan menyebabkan terhubungnya kolektor dengan emitor, sehingga kolektor mendapatkan tegangan 0 volt dari ground. Hal ini menyebabkan arus akan mengalir dari sumber tegangan 12 volt ke kumparan, sehingga kumparan akan menghasilkan medan magnet. Medan magnet ini akan menarik logam yang ada pada motor, sehingga motor mengarah pada kumparan yang memiliki medan magnet tersebut. Jika kemudian P0.0 di beri logika low 0, yang berarti transistor tidak aktip dan tidak ada arus yang mengair pada kumparan, sehingga tidak ada medan magnet pada kumparan. Dan disisi lain P0.1 diberi logika high 1, sehingga kumparan yang terhubung ke P0.1 akan menghasilkan medan magnet. Maka motor akan beralih kearah kumparan yang terhubung ke P0.1 tersebut. Seterusnya jika logika high diberikan secara bergantian pada input dari driver motor stepper, maka motor stepper akan berputar sesuai dengan arah logika high 1 yang diberikan pada inputnya. Untuk memutar dengan arah yang berlawanan dengan arah yang sebelumnya, maka logika high 1 pada input driver motor stepper harus diberikan secara bergantian dengan arah yang berlawanan dengan sebelumnya. Program yang diberikan pada driver motor stepper untuk memutar motor stepper adalah sebagai berikut : mov a,11h putar: mov P0,a acall tunda Universitas Sumatera Utara Rl a jmp putar Program diawali dengan memberikan nilai 11h pada pada accumulator a, kemudian program akan memasuki rutin buka pintu. Nilai a diisikan ke port 0, sehingga sekarang nilai port 0 adalah 11h. ini berarti P0.0 dan P0.4 mendapatkan logika high sedangkan yang lainnya mendapatkan logika low, seperti table di bawah ini, P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 P0 1 1 Program dilanjutkan dengan memanggil rutin tunda. Lamanya tunda akan mempengaruhi kecepatan perputaran motor. Semakin lama maka tunda, maka perputaran motor akan semakin lambat. Perintah berikutnya adalah Rl a, perintah ini akan memutar nilai yang ada pada accumulator a, seperti tampak pada table di bawah ini, a 1 1 Rl a 1 1 Dst.................. Nilai pada accumulator a yang awalnya 11h, setelah mendapat perintah Rl a, maka nilai pada accumulator a akan merubah menjadi 22h. Kemudian program akan melihat apakah kondisi sensor buka pintu dalam keadaan high 1 atau low 0. Jika high 1, Nilai yang ada pada accumulator a, akan kembali diisikan ke port 0, maka nilai di port 0 akan berubah menjadi 22h, ini berarti P0.1 dan P0.5 mendapatkan logika high sedangkan yang lainnya mendapatkan logika low, seperti table di bawah ini, Universitas Sumatera Utara P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 P0 1 1 Sebelumnya telah dibahas bahwa P0.0, P0.1, P0.2, dan P0.3 dihubungkan ke masukan driver motor stepper, dengan program di atas maka P0.0, P0.1, P0.2, dan P0.3 akan mendapatkan nilai high 1 secara bergantian. Hal ini menyebabkan motor stepper akan berputar membuka pintu.Hal yang sama juga berlaku ketika motor berputar kaearah sebaliknya, perbedaannya hanya pada perintah rotate. Jika pada perintah berlawanan arah jarum jam digunakan rotate left Rl , maka pada perintah searah jarum jam digunakan perintah rotate right Rr. Perputaran perintah Rr diperlihatkan pada table berikut, a 1 1 R r a 1 1 Dst...................

4.4. Pengujian Rangkaian Penerima Sensor