• Tidak ada hasil yang ditemukan

Penerapan Finite State Machine Untuk Merancang Pengendali Motor Stepper Menggunakan Vhdl

N/A
N/A
Protected

Academic year: 2021

Membagikan "Penerapan Finite State Machine Untuk Merancang Pengendali Motor Stepper Menggunakan Vhdl"

Copied!
6
0
0

Teks penuh

(1)

139

Penerapan

Finite State Machine

Untuk Merancang Pengendali

Motor Stepper Menggunakan Vhdl

Arief Budijanto Universitas Widya Kartika Email : [email protected]

ABSTRAK

Makalah ini menjelaskan tentang proses pembelajaran mata kuliah perancangan chip digital berbasis proyek yang menerapkan Finite State machine (FSM) sebagai metode untuk merancang pengendali motor stepper menggunakan VHDL. Motor stepper yang digunakan dalam studi kasus ini adalah motor stepper unipolar. Dimana motor stepper tersebut dikendalikan dengan 2 mode, yaitu half-step dan full-step. Pengendalian pada mode full step terdiri dari 2 cara yaitu dengan kendali 1 phase ON dan 2 phase ON. Pengendali motor stepper diimplementasikan pada chip Complex Programmable Logic Device (CPLD) dengan seri EPM3032ALC44-4. Dari hasil simulasi waktu yang dibutuhkan dari input sampai ke output membutuhkan waktu 3 ns.

Kata kunci : Pengendali, Motor Stepper, FSM, VHDL

PENDAHULUAN

Perancangan Chip Digital merupakan teknologi yang perkembangannya sangat pesat. Sehingga dalam dunia pendidikan dibidang elektronika dan komputer perlu dikembangkan metode - metode perancangan chip digital agar lulusan

mahasiswa dapat mendukung

perkembangan teknologi perancangan chip. Dalam makalah ini akan dijelaskan tentang perancangan chip digital dengan studi kasus perancangan pengendali motor stepper jenis unipolar yang menerapkan finit state

machine sebagai metodenya.

Finite State Machine ini merupakan cara

untuk memudahkan perancang dalam membuat VHDL coding dengan cara menkonversikan state diagram dalam VHDL

coding. Kendali motor stepper yang

dirancang menggunakan mode half step dan

full step yang disimulasik menggunakan

perangkat lunak Max Plus yang merupaka produk dari Altera, Inc.

Finite State Machine

Sistem digital dapat diklasifikasikan sebagai rangkaian kombinasional dan Sekuensial (berurutan). Pada sistem digital kombinasional ini nilai output ditentukan oleh nilai input pada kondisi saat ini. Sedangkan sistem digital sekuensial output tidak hanya tergantung pada kondisi input saat ini, tetapi juga tergantung pada kondisi input sebelumnya, sehingga pada sistem ini dibutuhkan suatu memory (register) untuk

menyimpan informasi biner. Diagram blok sistem digital sekuensial diperlihat pada gambar 1.

Finite state machine (FSM) dalam

perancangan sistem digital merupakan metode yang digunakan untuk merancang rangkaian digital sekuensial. FSM dapat diklasifikasikan sebagai Mealy Machine dan

Moore Machine (Short, 2009). Diagram blok FSM ditunjukkan pada gambar 2. Pada

mealy machine, output merupakan fungsi

dari current state dan nilai dari inputnya. Sedangkan moore machine, output merupakan fungsi dari current state saja.

Combinational Circuit Register Output clock Input

Gambar 1. Diagram Blok Rangkaian sekuensial (Mano & Ciletti, 2013)

Next State Logic (Combinational)

Current State Register (Sequential)

Output Logic (Combinational)

clock

Synchromous reset Asynchromous reset

Mealy outputs

Next State Logic (Combinational)

Current State Register (Sequential)

Output Logic (Combinational)

clock

Synchromous reset Asynchromous reset

Moore outputs Moore Mealy Inputs Inputs

Gambar 2. Diagram blok FSM Mealy & Moore

(2)

140 A B 0/0 1/1 1/0 0/0 Reset B 0 A 0 C 1 Reset 0 1 0 0 1 1

a. Mealy Machine b. Moore Machine

Gambar 3. State Diagram(Short, 2009). Motor Stepper

Motor stepper adalah salah satu jenis motor dc yang dikendalikan dengan pulsa-pulsa digital. Prinsip kerja motor

stepper adalah bekerja dengan mengubah

pulsa elektronis menjadi gerakan mekanis diskrit dimana motor stepper bergerak berdasarkan urutan pulsa yang diberikan kepada tiap-tiap koil motor stepper tersebut. Pulsa digital yang diberikan pada koil motor

stepper berupa level logika ‘1’ dan ‘0’ yang ditunjukkan pada tabel 1. dan tabel 2.

Tabel 1. Pulsa digital untuk mode full step

dengan 1 Phase ON T Y0 Y1 Y2 Y3 1 1 0 0 0 2 0 1 0 0 3 0 0 1 0 4 0 0 0 1 N S N S OFF OFF ON OFF N S N S OFF OFF ON OFF Step 1 Step 2 N S ON OFF OFF OFF S N N S OFF OFF OFF ON S N Step 3 Step 4

Gambar 4. Putaran Motor Stepper Mode Full Step 1 Phase ON

Tabel 2. Pulsa digital untuk mode full step

dengan 2 Phase ON T Y0 Y1 Y2 Y3 1 1 1 0 0 2 0 1 1 0 3 0 0 1 1 4 1 0 0 1 N S ON ON OFF OFF S S N N OFF ON OFF S S S N N ON N Step 1 Step 2 ON OFF ON N S OFF S N S N ON OFF ON N S OFF S N S N Step 3 Step 4

Gambar 5 Putaran Motor Stepper Mode Full Step 2 Phase ON

Tabel 3. Pulsa digital untuk mode full step

T Y0 Y1 Y2 Y3 1 1 0 0 0 2 1 1 0 0 3 0 1 0 0 4 0 1 1 0 5 0 0 1 0 6 0 0 1 1 7 0 0 0 1 8 1 0 0 1

(3)

141 N S N S OFF OFF ON OFF N S ON ON OFF OFF S S N N Step 1 Step 2 N S N S OFF OFF ON OFF OFF ON OFF S S S N N ON N Step 3 Step 4 N S ON OFF OFF OFF S N ON OFF ON N S OFF S N S N Step 5 Step 6 N S OFF OFF OFF ON S N N S N S S N ON OFF ON OFF Step 7 Step 8

Gambar 6 Putaran Motor StepperMode Half Step

METODOLOGI

Metodologi perancangan pengendali

motor stepper dengan VHDL meliputi : 1. Desain diagram blok chip

2. Tabel fungsi chip

3. Desain FSM dari tabel fungsi chip

4. Implementasi FSM dalam VHDL coding Konfigurasi pin output chip pengendali motor stepper ditunjukkan pada gambar 7. Dimana fungsi pin adalah sebagai berikut:

DIR : untuk mengatur arah putaran MD0,MD1 : untuk mengatur mode putaran

yaitu half step atau full step CLK : masukan pulsa clock

RST : Masukan pin reset DIR MD0 MD1 CLK RST Y0 Y3 Y2 Y1 Stepper Motor Controller

Gambar . 7 Diagram blok pengendali motor

stepper

Sedangkan fungsi pin nya ditunjukkan pada tabel 4.

Tabel 4. Fungsi chip

INPUT OUTPUT

DIR MD

1 MD0 RST MODE

0 0 0 0 Full Step Clockwise 1 Phase On 0 0 1 0 Full Step Clockwise 2 Phase ON 0 1 0 0 Half Step Clockwise

x 1 1 0 Unused

1 0 0 0 Clockwise 1 Pgase Full Step Anti ON 1 0 1 0 Clockwise 2 Phase Full Step Anti

ON

1 1 0 0 Half Step Anti

Clockwise

x x x 1 Reset Condition

Setelah membuat diagram blok dan tabel fungsi chip, kemdudian dilanjutkan dengan membuat diagram FSM pengenddali motor

stepper. Diagram tersebut ditunjukkan pada gambar 8.

(4)

142 SF0 Reset 0/1000 SF2 SF1 SF3 1/0001 0/0100 1/1000 0/0010 0/0001 1/0010 1/0100 Reset SG0 SG2 SG1 SF3 1/0011 1/1001 0/0110 1/0110 0/1001 1/1100 0/1100 0/0011

a. Full Step 1 Phase ON b. Full Step 2 Phase

ON SH3 SH2 SH1 SH0 SH7 SH6 SH5 SH4 Reset 1/1000 1/0110 1/0010 1/0100 1/0011 1/0001 1/1001 1/1100 0/1000 0/0110 0/0100 0/1100 0/0011 1/0010 0/0001 0/1001

c. Full Step 2 Phase ON

Gambar 8. FSM Pengendali Motor Stepper Implementasi VHDL coding dilakukan dengan cara mentransfer FSM dari pengendali motor

stepper. Berikut deklarasi entity VHDL

ditunjukkan pada gambar 9.

Gambar 9. Deklarasi Entity VHDL

HASIL DAN PEMBAHASAN

Hasil simulasi VHDL coding dengan mode

kendali motor stepper yang berbeda-beda akan dijelaskan melalui gambar diagram waktu dibawah ini.

Gambar 10. Merupakan hasil simulasi kendali motor stepper dengan mode = “00” dan dir = ‘0’. Motor stepper dikendalikan dengan cara 1

phase ON. Pada kondisi awal pin reset

berlogika ‘1’, sehingga dalam konsisi reset yang mengakibatkan output Y = “0000”. Setelah pin reset diberikan logika ‘0’ maka

output Y dalam kondisi normal, yaitu sesuai tabel 1, dan putaran motor stepper searah jarum jam.

Gambar 10. Deklarasi Entity VHDL

Gambr 11. Merupakan hasil simulasi kendali motor stepper dengan cara 1 phase ON

dengan kondisi mode = “00” dan dir = ‘1’, sehingga arah putaran motor stepper

berlawanan dengan arah putaran jarum jam.

Gambar 11. Deklarasi Entity VHDL Gambar 12. Merupakan hasil simulasi kendali motor stepper dengan cara 2 phaseON, yaitu dengan meberikan logika pada pin mode = “01” dan dir = ‘0’, sehingga arah putaran motor stepper searah dengan arah putaran jarum jam.

ENTITY M_Stepper1 IS PORT (

reset,dir,clk : IN STD_LOGIC;

mode : IN STD_LOGIC_vector(1 downto 0); Y : OUT STD_LOGIC_vector(3 downto 0) );

(5)

143 Gambar 12. Deklarasi Entity VHDL

Gambr 13. Merupakan hasil simulasi kendali motor stepper dengan cara 2 phaseON , yaitu dengan memberikan logika pada pin mode = “01” dan dir = ‘1’ , sehingga arah putaran motor stepper berlawanan dengan arah putaran jarum jam.

Gambar 13. Deklarasi Entity VHDL Gambr 14. Merupakan hasil simulasi kendali motor stepper dengan mode = “10” dan dir = ‘0’, sehingga arah putaran motor stepper

berlawanan dengan arah putaran jarum jam.

Gambar 14. Deklarasi Entity VHDL Gambr 15. Merupakan hasil simulasi kendali motor stepper dengan metode half step dan memberikan logika pada pin mode = “10” dan

dir = ‘0’ sehingga arah putaran motor stepper

searah dengan arah putaran jarum jam. Tetapi derajat simpangannya lebih kecil setengahnya dari simpangan full step.

Gambar 15. Deklarasi Entity VHDL Gambar 16. merupakan hasil simulasi kendali motor stepper dengan metode half step dan memberikan logika pada pin mode = “10” dan

dir = ‘1’ sehingga arah putaran motor stepper

berlawanan dengan arah putaran jarum jam. Tetapi derajat simpangannya lebih kecil setengahnya dari simpangan full step.

Gambar 16. Deklarasi Entity VHDL Gambar 17. Merupakan hasil simulasi kendali motor stepper dengan mode = “11”. Pada kondisi ini output Y berlogika “0000” karena kondisi ini memang dirancang tidak digunakan untuk mengendalikan motor

stepper.

Gambar 17. Deklarasi Entity VHDL Konstruksi pin chip pengendali motor stepper menggunakan CPLD seri EPM3032ALC44-4 ditunjuukan pada gambar 18. Dan matriks waktu tunda perambatan sinyal digital (time

(6)

144 membutuhkn waktu 3 ns. Matriks waktu tunda ditunjukkan pada gambar 19.

Gambar 18. Konstruksi pin chip Pengendali Motor Stepper

Gambar 19. Matriks Waktu Tunda Perambatan Sinyal Digital

KESIMPULAN

Kesimpulan yang dapat diambil dari simulasi pengendali motor stepper adalah sebagai berikut:

1. Chip pengendali dapat mengendalikan motor stepper dengan metode full step

dan half step.

2. Pada metode full step ada 2 cara pengendalian berdasarkan fasenya, yaitu 1 phase ON dan 2 phase ON.

3. Chip diimplementasikan pada komponen CPLD seri EPM3032ALC44-4.

4. Chip membutuhkan waktu tunda perambatan dari input menuju output chip sekitar 3 ns.

DAFTAR PUSTAKA

Rushton, Andrew, (2011), Vhdl For Logic Synthesis, John Wiley & Sons, Ltd, United Kingdom.

Platt, Charles, (2013), Encyclopedia of Electronic Components Volume 1, O’Reilly Media, Inc. 1005 Gravenstein Highway North, Sebastopol, CA 95472. Iuliana C, Alin D. P, Adrian G, (2010), Finite

State Machine Design And Vhdl Coding Techniques, 10th International

Conference On Development And Application Systems, Suceava, Romania, May 27-29.pp.273-278.

Kavita S, Abhilasha S, FPGA Based System Login Security Lock Design Using Finite State Machine, IOSR Journal of Electronics and Communication Engineering, Volume 5, Issue 3 (Mar. - Apr. 2013), PP 70-75.

Mano, M. Morris, Ciletti, Michael D, (2013), Digital Design With an Introduction to the Verilog HDL, Prentice Hall.

Short, Keneth L., (2009), VHDL for engineers, Pearson Education, Inc., Upper Saddle River, New Jersey.

Smith, Douglas J., (1997), HDL Chip Design, Doone Publications, Madison, AL,USA.

Gambar

Gambar 4. Putaran  Motor Stepper Mode Full  Step 1 Phase ON
Gambar 6 Putaran Motor  Stepper Mode Half  Step
Gambar 8.  FSM  Pengendali Motor Stepper  Implementasi  VHDL coding  dilakukan dengan  cara  mentransfer  FSM  dari  pengendali  motor  stepper
Gambar 13. Deklarasi Entity VHDL  Gambr  14.  Merupakan  hasil  simulasi  kendali  motor  stepper   dengan  mode  =  “10”   dan  dir  =

Referensi

Dokumen terkait

This project is designing a Design for Test (Dff) technique to test embedded memory called Finite State Machine (FSM) Memory Built-In Self Test

Dari pengujian yang telah dilakukan hasil dari kecerdasan buatan FSM ( Finite State Machine ) pada game Adventure “ Castle Of Illusion ” ini karakter NPC ( Non Playable

Pengujian Metode Finite State Machine pada gim Pada proyek program gim “The Mahasiswa” ini, penulis menggunakan metode finite state machine untuk membangun aspek interaksi

Hasil dari penelitian ini adalah terealisasinya suatu game dengan menerapkan metode finite state machine untuk menentukan respon karakter non- player character yang

Penelitian ini menjelaskan tentang bagaimana membuat strategi menyerang yang dilakukan oleh NPC dengan menggunakan Hierarchy Finite State Machine untuk mendesain

Movement Distance Testing 4.6 FSM process testing The results of testing the FSM Finite State Machine process on this tool to detect changes in the location data from the marked

Pembuatan aplikasi game edukasi untuk pembelajaran transportasi bahasa inggris bagi anak sekolah dasar dengan metode fisher yates shuffle dan metode finite state machine FSM Hafis

Dengan mengimplementasikan algoritma finite state machine FSM ke dalam game 3D ini bertujuan untuk memberikan kontribusi signifikan dalam mengatasi tantangan pembelajaran fisika dalam