Saturday 29 August 2020

Kuis 1 : Komponen Pendukung



RANGKAIAN DRIVER MOTOR STEPPER

1. Tujuan [back]
-Mengetahui bentuk rangkaian driver motor stepper
-Memahami prinsip kerja rangkaian driver motor stepper

2. Alat dan Bahan [back]
  • Switch
  • Inverter
  • Resistor
  • Dioda
  • Transistor NPN
  • Motor Stepper Unipolar
3. Dasar Teori [back]
Komponen yang dibutuhkan:
  • Switch

Sakelar adalah sebuah perangkat yang digunakan untuk memutuskan jaringan listrik, atau untuk menghubungkannya. Jadi saklar pada dasarnya adalah alat penyambung atau pemutus aliran listrik. Selain untuk jaringan listrik arus kuat, saklar berbentuk kecil juga dipakai untuk alat komponen elektronika arus lemah
  • Inverter



Gerbang Logika Inverter adalah salah satu Gerbang Logika dengan satu sinyal masukan dan juga satu sinyal keluaran.

Inverter juga disebut sebagai gerbang Komplemen (lawan) dimana sinyal keluaran selalu berlawanan dengan sinyal masukan.



  • Resistor



Resistor adalah komponen elektronika yang berfungsi untuk menghambat atau membatasi aliran listrik yang mengalir dalam suatu rangkain elektronika.
  • Dioda


Dioda adalah komponen elektronika yang terdiri dari dua kutub dan berfungsi menyearahkan arus. Komponen ini terdiri dari penggabungan dua semikonduktor yang masing-masing diberi doping (penambahan material) yang berbeda, dan tambahan material konduktor untuk mengalirkan listrik.
  • Transistor NPN

Transistor NPN adalah transistor bipolar yang menggunakan arus listrik kecil dan tegangan positif pada terminal Basis untuk mengendalikan aliran arus dan tegangan yang lebih besar dari Kolektor ke Emitor Cara kerja transistor NPN adalah jika kaki basis transistor diberi tegangan bias maka arus pda kolektor akan mengalir ke kaki emitor.

  • Motor Stepper Unipolar


Stepper motor merupakan salah satu jenis aktuator elektrik yang dapat bergerak secara memutar (rotation). Keunggulan dari stepper motor adalah gerakannya yang dapat dikendalikan dengan mudah. Namun memerlukan sebuah rangkaian pengontrol dengan menggunakan prinsip kerja pulsa.  unipolar stepper motor, bekerja dengan menggunakan setengah dari lilitan pada setiap statornya. Sehingga kabel yang disediakan pada unipolar stepper motor biasanya lebih dari empat. Dimana terdapat sebuah common, yang dapat diberikan ke ground atau VCC. Motor stepper merupakan piranti elektromekanik yang mengkonversi pulsa-pulsa listrik menjadi gerakan mekanik. Rotor  (shaft) motor stepper berotasi dalam kenaikan langkah diskret ketika pulsa perintah listrik diterapkan ke motor dalam urutan yang sesuai. Urutan pulsa berhubungan dengan arah putaran motor. Kecepatan rotasi motor berhubungan dengan frekuensi masukan. Tabel 1 menjelaskan tentang pola pemrograman mode kerja full-step dari motor stepper.

Tabel 1.                      Pola Pemrograman Full-Step Pada Port Mikrokontroler

PD0

PD3

PB2

PD2

1

1

0

0

0

1

1

0

0

0

1

1

1

0

0

1

 

Tabel di atas merupakan pola putaran searah jarum jam (clockwise). Untuk putaran berlawanan jarum jam (counter clockwise), maka urutan pola harus dibalik. Motor stepper dengan tipe unipolar adalah motor stepper yang mempunyai 2 buah lilitan yang masing-masing lilitan ditengah-tengahnya diberikan sebuah tap seperti  tampak pada gambar 3.


                                                   Gambar 1.                Unipolar Motor stepper

Motor ini mempunyai step tiap 30° dan mempunyai dua buah liliatan yang didistribusikan berseberangan 180° di antara kutub pada stator. Sedangkan pada rotonya menggunakan magnet permanen yang berbentuk silinder dengan mempunyai 6 buah kutub, 3 kutub selatan dan 3 buah kutub utara. Sehingga dengan konstrusi seperti ini maka jika dibutuhkan ke presisian dari motor stepper yang lebih tinggi dibutuhkan pula kutub-kutub pada stator dan rotor yang semakin banyak pula. Pada gambar 12.4, motor tersebut akan bergerak setiap step sebesar 30° dengan 4 bit urutan data (terdapat dua buah lilitan dengan tap, total lilitan menjadi 4 lilitan).Ketelitian dari magnet permanen di rotor dapat sampai 1.8° untuk tiap stepnya. Ketika arus mengalir melalui tap tengah pada lilitan pertama akan menyebabkan kutub pada stator bagian atas menjadi kutub utara sedangkan kutub stator pada bagian bawah menjadi kutub selatan. Kondisi akan menyebabkan rotor mendapat gaya tarik menuju kutub-kutub ini. Dan ketika arus yang melalui lilitan 1 dihentikan dan lilitan 2 diberi arus maka rotor akan mengerak lagi menuju kutub-kutub ini. Sampai di sini  rotor sudah berputar sampai 30° atau 1 step. 

            Gambar 2.                Urutan Data Untuk Motor Stepper Tipe Unipolar (torsi normal)

                Gambar 3.                Urutan Data Motor Stepper Tipe Unipolar (torsi besar)

Untuk meningkatkan torsi yang tidak terlalu besar maka dapat digunakan urutan pemberian data. Dimana terdapat dua buah lilitan yang di beri arus pada suatu waktu. Dengan pemberian urutan data seperti ini akan menghasilkan torsi yang lebih besar dan tentunya membutuhkan daya yang lebih besar. Dengan urutan data baik pada Gambar 3 di atas akan menyebabkan motor berputar sebanyak 24 step atau 2 putaran.


4. Percobaan [back]
1. Susun rangkaian seperti pada gambar



2.Setelah itu tekan Run

Prinsip Kerja:
Untuk mendapatkan full step, maka input yang dimasukkan harus sesuai dengan tabel berikut

Tabel 1.                      Pola Pemrograman Full-Step Pada Port Mikrokontroler

 

Bit 1

Bit 2

Bit 3

Bit 4

Kondisi 1

1

1

0

0

Kondisi 2

0

1

1

0

Kondisi 3

0

0

1

1

Kondisi 4

1

0

0

1

Saat Kondisi 1, pada bit 1 dan 2 berlogika 1, input akan diteruskan melewati inverter sehingga dihasilkan output berlogika 0. Logika 0 menandakan tidak ada arus yang mengalir sehingga arus nya tidak cukup untuk membangkitkan base transistor. Maka transistor dalam keadaan off dan rangkaian yang terhubung ke pada motor stepper menjadi open circuit. Sedangkan untuk bit 3 dan 4 yang berlogika 0, akan diteruskan menuju inverter sehingga dihasilkan logika 1. Logika 1 menandakan adanya arus yang mengalir menuju resistor. Setelah melewati resistor akan menuju ke basis transistor, karena ada arus yang cukup maka arus mengaktifkan basis transistor sehingga rangkaian yang terhubung ke motor stepper dalam keadaan closed circuit. Basis transistor yang sudah aktif menyebabkan arus dari collector dapat mengalir menuju emittor, namun karena adanya dioda dalam keadaan reverse, arus tidak dapat mengalir. Sehingga dapat disimpulkan tidak ada arus yang mengalir ke motor stepper, atau apabila dilogika kan dalam logika 0. Karena motor stepper dihubungkan dengan VCC maka untuk aktif, input yang lain perlu di ground kan. Sehingga untuk pin input motor stepper yang terhubung ke bit 3 dan bit 4 dalam keadaan aktif. Pada saat ini motor dalam keadaan vertikal. Hal ini terus berlanjut sesuai dengan urutan kondisi pada tabel. Setiap pindah kondisi, motor akan berputar 180° ke arah kiri.



6. Link Download [back]
Materi - Download
Datasheet Inverter - Download
Datasheet Transistor NPN - Download
Datasheet Motor Stepper Unipolar - Download
File HTML - Download
File Rangkaian Simulasi - Download
Video Rangkaian Simulasi - Download

1. Diketahui motor stepper dengan logika 1 pada bit 1 dan 2, dan logika 0 pada bit 3 dan 4. Apabila input bit diubah menjadi kondisi berikut, bit 1 bernilai 0, bit 2 bernilai 1, bit 3 bernilai 1, dan bit 4 bernilai 0. Maka stepper motor akan berada dalam posisi... 
a. 
 bergerak ke kiri

b. 

 bergerak ke kanan

c. 
 bergerak ke kiri

d.
  bergerak ke kanan

e.
 bergerak ke kiri

 bergerak ke kiri
Jawaban : a.
Pembahasan: 
Apabila bit 2 dan 3 berlogika 1, input akan diteruskan melewati inverter sehingga dihasilkan output berlogika 0. Logika 0 menandakan tidak ada arus yang mengalir sehingga arus nya tidak cukup untuk membangkitkan base transistor. Maka transistor dalam keadaan off dan rangkaian yang terhubung ke pada motor stepper menjadi open circuit. Sedangkan untuk bit 1 dan 4 yang berlogika 0, akan diteruskan menuju inverter sehingga dihasilkan logika 1. Logika 1 menandakan adanya arus yang mengalir menuju resistor. Setelah melewati resistor akan menuju ke basis transistor, karena ada arus yang cukup maka arus mengaktifkan basis transistor sehingga rangkaian yang terhubung ke motor stepper dalam keadaan closed circuit. Basis transistor yang sudah aktif menyebabkan arus dari collector dapat mengalir menuju emittor, namun karena adanya dioda dalam keadaan reverse, arus tidak dapat mengalir. Sehingga dapat disimpulkan tidak ada arus yang mengalir ke motor stepper, atau apabila dilogika kan dalam logika 0. Karena motor stepper dihubungkan dengan VCC maka untuk aktif, input yang lain perlu di ground kan. Sehingga untuk pin input motor stepper yang terhubung ke bit 1 dan bit 4 dalam keadaan aktif. Pada saat ini motor dalam keadaan horizontal dan motor berputar 180° ke arah kiri.

2. Apabila bit 1 dan 2 berlogika 0 kemudian bit 3 dan 4 berlogika 1, maka stepper motor akan berada pada posisi...
a. 
 bergerak ke kiri

b. 

 bergerak ke kanan

c. 
 bergerak ke kiri

d.
  bergerak ke kanan

e.
 bergerak ke kiri
Jawaban: e. 
Pembahasan: 
Apabila bit 3 dan 4 berlogika 1, input akan diteruskan melewati inverter sehingga dihasilkan output berlogika 0. Logika 0 menandakan tidak ada arus yang mengalir sehingga arus nya tidak cukup untuk membangkitkan base transistor. Maka transistor dalam keadaan off dan rangkaian yang terhubung ke pada motor stepper menjadi open circuit. Sedangkan untuk bit 1 dan 2 yang berlogika 0, akan diteruskan menuju inverter sehingga dihasilkan logika 1. Logika 1 menandakan adanya arus yang mengalir menuju resistor. Setelah melewati resistor akan menuju ke basis transistor, karena ada arus yang cukup maka arus mengaktifkan basis transistor sehingga rangkaian yang terhubung ke motor stepper dalam keadaan closed circuit. Basis transistor yang sudah aktif menyebabkan arus dari collector dapat mengalir menuju emittor, namun karena adanya dioda dalam keadaan reverse, arus tidak dapat mengalir. Sehingga dapat disimpulkan tidak ada arus yang mengalir ke motor stepper, atau apabila dilogika kan dalam logika 0. Karena motor stepper dihubungkan dengan VCC maka untuk aktif, input yang lain perlu di ground kan. Sehingga untuk pin input motor stepper yang terhubung ke bit 1 dan bit 2 dalam keadaan aktif. Pada saat ini motor dalam keadaan vertikal kembali dan motor berputar 180° ke arah kiri.

Monday 24 August 2020

Latihan 1 Teknik Interface (Perangkat Lunak)


  • Memahami penggunaan EMU 8086
  • Mengetahui program mencetak 3 digit angka ke layar
2. Alat dan Bahan [back]
  • Software EMU 8086
3. Dasar Teori [back]
Emu8086 merupakan aplikasi emulator bagi pemrograman bahasa assembler atau mikrokontroler. Dengan menggunakan aplikasi emulator, kita dapat mensimulasikan apakah program kontrol hardware yang kita buat sudah benar atau masih salah.

Dalam “emu8086” terdapat beberapa menu, antara lain:
  1. Emulate : untuk menjalankan emulator kode program yang kita buat
  2. Compile : untuk membuat (compile) “binary executable file” atau ekstensi “.com” atau “.exe” dari kode program.
  3. Run : menjalankan aplikasi dari emulator yang dihasilkan (execute).
  4. Single Step : Menjalankan aplikasi dengan cara tracing (diproses perbaris kode program).
Memulai pemrograman bahasa Assembler terdiri dari beberapa kode operasi code (op code) dan pseudo ops. Bentuk instruksinya adalah op code diikuti operand. Opcode adalah perintah yang akan dilaksanakan, sedangkan operand dpaat terdiri dari sumber (source) dan tujuan (destination).
Misal : MOV AX,BX
Opcode dari contoh di atas adalah MOV, sedangkan operandnya adalah AX, BX. Maksud kode di atas adalah perintah untuk menyalin data yang ada di register BX (source operand) ke register AX (destination operand).
Pseucode operation (pseudo ops) adalah perintah kepada assembler untuk memberitahukan apa yang harus dilakukan terhadap data, percabangan bersyarat, perintah macro dan listing. Beberapa pseudo ops yang sering dijumpai adalah sebagai berikut :

Untuk menjalankan Klik  “compile” kemudian pilih lokasi di mana file executable akan disimpan, lalu “single step”, sehingga hasilnya akan terlihat seperti dibawah ini :

Contoh operasi penambahan dan pengurangan bahasa assembler menggunakan "Emu8086"

Untuk menjalankan Klik  “compile” kemudian pilih lokasi di mana file executable akan disimpan, lalu “single step”, atau bisa langsung "Run" sehingga hasilnya akan terlihat seperti dibawah ini :
Hasil program penambahan dan pengurangan


4.Penjelasan [back]
    MULAI:   MOV AX,469            ;Perintah untuk memasukkan nilai 469 ke register AX

                     XOR CX,CX           ; Perintah melakukan logika XOR register CX dengan register 
                                                      CX agar nilai dalam register CX dapat direset, CX=0

    ULANG1:  MOV BH,10            ; Perintah untuk memasukkan nilai 10 ke register BH

                        DIV BH                ; Perintah untuk membagi nilai pada register AX dengan nilai                                                           pada register BH

             PUSH   AX                     ; Perintah untuk memasukkan nilai register AX ke STACK

             INC CX                          ; Perintah untuk melakukan increment pada register CX atau                                                             menambahkan satu kepada register CX

             XOR AH,AH                  ; Perintah untuk melakukan logika XOR register AH dengan 
                                                    register AH agar nilai dalam register AH dapat direset, AH=0
    
             CMP AL,00                   ; Perintah untuk compile nilai register AL, apakah AL=0 atau tidak.

             JNE ULANG1               ; Perintah untuk lompat ke ULANG1 apabila nilai register 
                                                    tidak sama, apabila sama maka program dilanjutkan ke Ulang2

    Ulang2:  pop dx                      ; Perintah untuk mengeluarkan isi register dari STACK 
                                                    menjadi register dx

             mov dl,dh                       ; Perintah untuk memindahkan nilai dh ke dl atau memindahkan 
                                                    nilai sisa

             add dl,30h                      ; Perintah untuk menambahkan 30hexa ke dalam register dl

             mov ah,02                      ; Perintah untuk memindahkan nilai 02 ke dalam register ah

             int 21h                            ; Perintah untuk menampilkan isi register ke layar

             Loop   ulang2                 ; Perintah untuk melakukan looping ke ulang2

             MOV AH,4CH                 ; Perintah untuk memindahkan nilai 4Chexa ke register AH

             int 21h                            ; Akhir program

5. Percobaan [back]
    a. Buka aplikasi EMU 8086
    b. Ketik Program pada software seperti gambar

c. Jalankan Program sehingga tampil pada layar
 
Simulasi - Download
List Program - Download
Video - Download

8. Contoh Soal [back]
        1. Untuk menambahkan nilai register dengan angka hexa tertentu pada bahasa assembly menggunakan perintah...
a. PUSH
b. MOV
c. ADD
d. LOOP
e. DIV
Jawaban : c.ADD
Pembahasan : 
Fungsi perintah berikut.
PUSH ; Memasukkan nilai register ke dalam STACK
MOV : Memindahkan nilai ke dalam register
ADD : Menambahkan nilai ke dalam register 
LOOP : Mengulangi perintah
DIV : Melakukan operasi pembagian

2. Untuk mengeluarkan nilai di dalam stack kemudian dimasukkan pada register tertentu merupakan fungsi dari perintah ...
a. CMP
b. INT
c. INC
d. PUSH
e. POP
Jawaban : e.POP
Pembahasan:
Fungsi perintah berikut.
CMP : Melakukan proses compile untuk nilai register/ membandingkan nilai register
INT : Untuk menampilkan isi register ke layar
INC : Untuk menambahkan satu digit ke dalam nilai register
PUSH : Memasukkan nilai register ke dalam STACK
POP : Mengeluarkan nilai dari STACK untuk dimasukkan ke register tertentu