Bab II Landasan Teori
II.1 Dasar-dasar sistem kendali Sejarah perkembangan sistem kendali diawali dengan revolusi industri I dan II sedangkan Perang Dunia I dan II mempercepat perkembangannya. James Watts menemukan generator sentrifugal (1767); Minovzky menemukan pengendalian kapal laut (1922); metoda analisis kepekaan ditemukan oleh Nyquist (1932); Hazen pada tahun 1934 menemukan sistem kendali posisi; metoda analisis fungsi frekuensi masukan-tunggal keluaran-tunggal (single masukan single keluaran = SISO) dikembangkan oleh Bode pada tahun 1940; sedangkan W.R. Evans pada tahun 1950 mengembangkan metoda analisis tempat kedudukan akar (root locus). Sistem kendali modern diawali pada tahun 1960, yaitu untuk masukanjamak keluaran-jamak (multi masukan multi keluaran = MIMO) yang berdasarkan pada teorema vektor matriks. Disusul dengan berkembangnya sistem kendali optimal (yang memenuhi kriteria-kriteria tambahan), sistem stokastik (tak tentu, yang berdasarkan pada teorema probabilitas), sistem kendali adaptif (yang mempunyai kemampuan untuk beradaptasi), sistem kendali yang mampu untuk belajar (learning control system) yang merupakan metoda dalam intelegensia buatan; sampai dengan sistem kendali komputer (computer control system). II.1.1 Definisi dan pengertian sistem kendali Sistem kendali adalah hubungan antara komponen yang membentuk sebuah konfigurasi sistem yang akan menghasilkan tanggapan sistem yang diharapkan. Diagram blok sistem kendali secara umum digambarkan sebagai berikut Masukan
Kendalian (Plant)
Keluaran
Gambar II.1. Diagram blok sistem kendali secara umum Masukan dan keluaran merupakan variabel atau besaran fisik. Keluaran merupakan hal yang dihasilkan oleh kendalian (yang dikendalikan) sedangkan
23
masukan adalah yang mempengaruhi kendalian (keluaran). Kedua dimensi masukan dan keluaran tidak harus sama. Sebagai contoh sistem pengendali kecepatan motor DC berikut ini. e
ω
Kendalian (Plant)
Gambar II.2. Diagram blok sistem kendali kecepatan pada motor DC Masukan e berupa tegangan sementara keluarannya berupa kecepatan sudut
ω sehingga pengaturan kecepatan sudut diatur dengan pengaturan pemberian tegangan yang diberikan ke motor. II.1.2 Sistem kendali loop terbuka dan loop tertutup Sistem kendali loop terbuka (loop terbuka system) adalah sistem kendali yang tidak terdapat elemen yang mengamati keluaran yang terjadi untuk dibandingkan dengan masukannya (yang diinginkan) meskipun menggunakan sebuah pengendali (controller) untuk memperoleh tanggapan yang diinginkan. Sebagai contoh pada pengendalian kecepatan putaran motor DC dengan loop terbuka digambarkan sebagai berikut Set point
Kecepatan Kendali
Plant
Gambar II.3. Diagram sistem kendali kecepatan secara loop terbuka Adapun sistem kendali loop tertutup atau disebut juga sistem kendali umpan balik (feedback control system) adalah sistem kendali yang mempunyai elemen umpan balik yang berfungsi untuk mengamati keluaran yang terjadi untuk dibandingkan dengan masukannya (yang diinginkan). Selisih antara set point dengan umpan balik digunakan sebagai masukan komputasi untuk menentukan seberapa besar nilai sinyal kendali yang diberikan ke plant sehingga parameter-parameter kendali yang diharapkan dapat implementasikan. Diagram blok sistem kendali secara loop tertutup digambarkan sebagai berikut.
24
Set point + _
Error
Kendali
Plant
Kecepatan
Umpan balik Gambar II.4. Diagram sistem kendali kecepatan secara loop tertutup Pada sistem loop tertutup, kemampuan regulasi dapat ditingkatkan akan tetapi isu kestabilan menjadi hal yang penting karena mungkin saja koreksi terhadap error yang terjadi dapat menyebabkan osilasi sehingga sistem tidak stabil.. II.1.3 Kinerja sistem kendali Kinerja sistem kendali sangatlah penting sehingga pada proses perancangan dan pengembangan sistem, parameter-parameter kinerja menjadi acuan hasil yang diharapkan. Kinerja sistem pada domain waktu dengan masukan step merupakan acuan yang umum digunakan. Kinerja sistem dengan masukan step dalam domain waktu, dinyatakan dalam grafik berikut ini.[2]
Gambar II.5. Kinerja sistem kendali dalam domain waktu Secara umum, karakteristik sistem tersebut dinyatakan: •
Waktu tunda (delay time), td adalah waktu yang diperlukan respon mencapai 50% nilai akhir pada pertama kali
•
Waktu naik (rise time), tr adalah waktu yang diperlukan respon untuk naik 0% sampai 100% dari nilai akhirnya (untuk redaman kurang) atau dari 10% sampai dengan 90% dari nilai akhirnya (untuk redaman lebih) 25
•
Waktu puncak (peak time), tp adalah waktu yang diperlukan respon untuk mencapai puncak simpangan yang pertama kali
•
Lewatan maksimum (maximum overshoot), Mp adalah perbandingan antara puncak tertinggi dari kurva respon terhadap nilai akhir respon.
•
Waktu penetapan (settling time), ts adalah waktu yang diperlukan agar kurva respon mencapai dan tetap berada di dalam batas-batas yang dekat dengan nilai akhir.
II.2 Logika fuzzy Teori himpunan fuzzy pertama kali diperkenalkan oleh Prof. Lotfi A Zadeh pada tahun 1965 dalam papernya yang berjudul “Fuzzy Sets”. Logika fuzzy lahir berdasarkan fenomena-fenomena alam yang tidak dapat dinyatakan dengan logika bolean. Misalnya suhu udara yang lebih dari 300C dinyatakan panas dan yang kurang dari 300C dinyatakan dengan dingin, lalu jika suhu 29,990C dalam kehidupan nyata apakah dapat dikatakan dengan dingin dan suhu 30,010C dikatakan dengan panas? Tentu sangat tidak adil jika perubahan hanya 0.01 0C dijadikan acuan justifikasi panas/dingin. Dengan logika fuzzy maka permasalahan ini dapat direpresentasikan dengan lebih baik yakni adanya parameter himpunan fuzzy dan derajat keanggotaan. Penggunaan logika fuzzy sangat luas dari peralatan industri, diagnosa penyakit dalam bidang kedokteran, pemodelan sistem pemasaran, riset operasi dalam bidang ekonomi, klasifikasi dan pencocokan pola, bidang kendali dan lain sebagainya. II.2.1 Himpunan crisp dan himpunan fuzzy Himpunan crisp A didefinisikan oleh item-item yang ada pada himpunan itu. Jika a∈ A, maka nilai yang berhubungan dengan a adalah 1, namun jika a∉A maka nilai yang berhubungan dengan A adalah 0. Adapun himpunan fuzzy didasarkan pada gagasan untuk memperluas jangkauan fungsi karakteristik sedemikian hingga fungsi tersebut akan mencakup bilangan real pada interval [0,1]. Nilai keanggotaannya menunjukkan bahwa suatu item tidak hanya bernilai benar atau salah, nilai 0 menunjukkan salah, nilai 1 menunjukkan benar akan tetapi juga nilai-nilai yang terletak antara 0 dan 1. Misalkan saja klasifikasi umur didasarkan sebagai berikut: 26
MUDA
umur < 35 tahun
SETENGAH BAYA
35 ≤ umur ≤ 55 tahun
TUA
umur > 55 tahun
Dengan pendekatan crisp, sangat tidak adil jika umur 34 tahun dinyatakan muda dan 35 dinyatakan setengah baya. µ[x] 1
Setengah baya
0 35 55 Umur Gambar II.6. Klasifikasi umur dengan pendekatan crisp Adapun dalam logika fuzzy, derajat keanggotaan dalam rentang 0 sampai dengan 1 sehingga sebuah klasifikasi nilai dapat direpresentasikan dengan lebih baik. II.2.2 Fungsi keanggotaan (membership function) Fungsi keanggotaan adalah suatu kurva yang menunjukkan pemetaan titiktiik masukan data ke dalam nilai keanggotaannya (derajat keanggotaan) yang memiliki nilai interval antara 0 dan 1. Misalkan saja pengklasifikasian umur seseorang yang dapat masuk dalam 2 himpunan berbeda, muda dan setengah baya, setengah baya dan tua. Seberapa besar keberadaannya dalam himpunan tersebut dapat dilihat pada nilai keanggotaannya, sebagai contoh dalam menyatakan umur dinyatakan dalam gambar berikut ini. Muda
µ[x] 1
Setengah baya
Tua
0,5 0,25 0
35 40 45 50 55
Umur
Gambar II.7. Klasifikasi umur dengan logika fuzzy Pada Gambar di atas terlihat bahwa : •
Seseorang yang berumur 40 tahun, termasuk dalam himpunan muda dengan µmuda [40] = 0,25; namun umur tersebut juga termasuk dalam himpunan setengah baya dengan µsetengah baya [40] = 0,5.
27
•
Seseorang yang berumur 50 tahun, termasuk dalam himpunan tua dengan µtua [50] = 0,25, namun umur tersebut juga termasuk dalam himpunan setengah baya dengan µsetengah baya [50] = 0,5.
Pada himpunan crisp, nilai keanggotaannya hanya ada dua kemungkinan, yaitu antara 0 atau 1, sedangkan pada himpunan fuzzy nilai keanggotaannya pada rentang antara 0 sampai dengan 1. Apabila x memiliki nilai keanggotaan fuzzy µA[x] = 0, berarti x tidak menjadi anggota himpunan A, juga apabila x memiliki nilai keanggotaan fuzzy µA[x] = 1 berarti x menjadi anggota penuh pada himpunan A. Bentuk-bentuk fungsi keanggoataan yang umum seperti: fungsi linier (segitiga, trapesium), kuadratik, fungsi gaussian dan fungsi-fungsi yang spesifik. Bentuk fungsi manakah yang paling baik? Bentuk segitiga dan trapesium lebih populer karena kesederhanaan dan komputasi yang lebih mudah. Bentuk fungsi keanggotaan dengan 1 nilai disebut dengan singleton. Jika ingin menghasilkan keluaran yang lebih halus maka perlu digunakan fungsi dengan orde yang lebih tinggi. Berikut bentuk fungsi-fungsi yang umum digunakan dalam mendefinisikan fungsi keanggotaan.
a) Fungsi segitiga
(b) Fungsi trapesium
(c) Fungsi gaussian
(d) Fungsi kuadratik
Gambar II.8. Bentuk-bentuk umum fungsi keanggotaan Dalam tataran implementasi hardware, pemilihan bentuk fungsi keanggotaan juga perlu memperhatikan kemampuan komputasi hardware yang akan digunakan,
28
seperti misalnya bentuk fungsi gaussian perlu dukungan hardware yang mampu melakukan komputasi aritmatik yang lebih daripada bentuk fungsi segitiga atau trapesium.
II.2.3 Langkah pengembangan kendali fuzzy Langkah-langkah pengembangan kendali fuzzy digambarkan dalam diagram blok berikut ini.[1]
Defuzzifikasi
Referensi r(t)
Fuzzifikasi
KENDALI FUZZY Inferensi fuzzy
Rule
Keluaran Masukan y(t) u(t) PROSES
Gambar II.9. Diagram blok pengembangan kendali fuzzy
•
Fuzzifikasi, yakni pemetaan nilai-nilai masukan (masukan crisp) yang berasal dari sistem yang dikontrol (besaran non fuzzy) ke dalam himpunan fuzzy menurut fungsi keanggotaannya. Untuk mengubah masukan crisp menjadi masukan fuzzy, terlebih dahulu harus menentukan fungsi keanggotaan untuk tiap masukan crisp, kemudian proses fuzzyfikasi akan mengambil masukan
crisp dan membandingkan dengan fungsi keanggotaan yang telah ada untuk menghasilkan harga masukan fuzzy. Himpunan fuzzy tersebut merupakan masukan fuzzy yang akan diolah secara fuzzy pada proses berikutnya.
•
Inferensi fuzzy, yakni pemetaan himpunan masukan ke himpunan keluaran dengan prinsip logika fuzzy (aturan jika-maka). Pada tahap ini, diproses hubungan antara nilai-nilai masukan dan nilai-nilai keluaran yang dikehendaki melalui aturan-aturan (rules) yang didefinisikan. Aturan ini nantinya yang akan menentukan respon sistem terhadap berbagai kondisi dan gangguan yang terjadi pada sistem. Rules yang dipakai adalah jenis “if - then“. Berikut ini contoh rules, “Jika Error NB dan CE NB maka Keluaran NB “ Pada penggunaan dua antecendent atau lebih, untuk
mempermudah dapat
digunakan matriks. Proses inferensi fuzzy akan mengevaluasi masukan fuzzy yang didapat dari proses fuzzifikasi untuk tiap antecendent dari rule dengan
29
menentukan rule strength dari tiap-tiap rule, karena antecendent dihubungkan dengan operator AND maka rule strength diambil dari strength value yang terkecil dari antecendent.
•
Defuzzifikasi yakni proses pemetaan dari himpunan fuzzy hasil inferensi ke dalam aksi kendali non fuzzy (crisp keluaran). Ada beberapa metoda yang umum dalam proses defuzzyfikasi seperti: centre of area/gravity, centre of
largest area, first of maxima/last of maxima, middle of maxima dan mean of maxima. II.2.4 Contoh aplikasi fuzzy dalam kehidupan sehari-hari Kendali fuzzy sudah banyak diimplementasikan dalam banyak perangkat, sebagai contoh diantaranya:[1]
•
Kontroller neuro-fuzzy pada mesin cuci Matsushita Electric Group. Dengan kendali fuzzy, mesin cuci mampu menentukan jumlah putaran secara otomatis berdasarkan jenis dan banyaknya kotoran, serta jumlah pakaian yang dicuci.
Gambar II.10. Mesin cuci dengan teknologi kendali fuzzy
•
Kendali fuzzy untuk transmisi gigi otomatis pada mobil produksi Nissan. Kendali fuzzy pada transmisi gigi otomatis ini mampu menghemat penggunaan bahan bakar 12-17 persen.
Gambar II.11. Mobil dengan transmisi otomatis menggunakan kendali fuzzy
30
•
Rice cooker National/®Panasonic® Kendali fuzzy digunakan untuk mengatur kandungan air dalam masakan
Gambar II.12. Rice cooker dengan kendali fuzzy Dan masih banyak lagi aplikasi kendali fuzzy yang telah diimplementasikan dalam kehidupan sehari-hari seperti:
•
Kendali otomatis pada bendungan oleh Tokyo Electric Power.
•
Penyederhanaan kendali pada robot oleh Hirota, Fuji Electric,Toshiba dan Omron
•
Prediksi gempa bumi oleh Seismology Bureau of Metrology, Jepang.
•
Diagnosa kanker oleh Kawasaki Medical School
•
Kendali pada vacum cleaner oleh Matsushita
•
Dan lain-lain
II.2.5 Kelebihan dan kekurangan kendali fuzzy Kendali
fuzzy
mempunyai
kelebihan-kelebihan
dibanding
kendali
konvensional, seperti:[1]
•
Kendali fuzzy lebih dapat beroperasi dengan baik pada lingkungan yang banyak terdapat gangguan.
•
Desain kendali fuzzy lebih murah dan memberikan hasil yang lebih baik dibanding kendali dengan berbasiskan pemodelan
•
Kendali fuzzy lebih mudah untuk dikostumisasi dengan melakukan tuning
rulenya •
Kendali fuzzy lebih mudah untuk dipelajari dan lebih mudah dalam melakukan desain untuk diaplikasikan dalam kehidupan nyata.
31
Adapun kekurangan-kekurangan pada kendali fuzzy seperti:[5]
•
Secara matematis belum ada jaminan kestabilan sistem
•
Tidak adanya kemampuan belajar, kondisi ini kemudian diatasi dengan neuro
fuzzy. •
Penentuan bentuk fungsi keanggotaan dan jumlah rule yang paling optimal tidak selamanya mudah.
•
Proses verifikasi dan validasi pada fuzzy expert system perlu dilakukan testing extra.
II.3 PWM (Pulse width modulation) PWM merupakan mekanisma utuk membangkitkan sinyal keluaran yang periodenya berulang antara high dan low, dimana kita dapat mengontrol durasi sinyal high dan low sesuai dengan yang kita inginkan. Duty cyle merupakan prosentase periode sinyal high dan periode sinyal, prosentase duty cycle akan berbanding lurus dengan tegangan rata-rata yang dihasilkan. Berikut ilustrasi sinyal PWM, misalkan kondisi high 5 V dan kondisi low 0 V. pwm_o clk a) Duty cyle 25% , V rata-rata 1,25 V pwm_o clk b) Duty cyle 50% , V rata-rata 2,5 V pwm_o clk c) Duty cyle 75% , V rata-rata 3,75 V Gambar II.13. PWM dengan variasi duty cycle Pembangkitan
sinyal
PWM
menggunakan
fungsi
timer/counter
yang
dibandingkan nilainya dengan sebuah register tertentu. Beberapa mikrokontroller,
32
s seperti yang g penulis gunnakan (ATM Mega 8535) telah menyeediakan fasilitas PWM s secara built in sehingga mempermuddah dalam pengembangaan. I II.3.1 PWM M mode phaase correct Dalaam ATMega 8535 dapat dihasilkan PWM P modee phase corrrect dimana n nilai registerr counter TC CNTx yang mencacah m naaik dan turunn secara teruus menerus a akan selalu dibandingka d an dengan reegister pembanding OCR Rx. Hasil perrbandingan r register TCN NTx dengann OCRx diggunakan untuk membanngkitkan sinnyal PWM y yang dikeluaarkan melalu ui sebuah pinn Ocx sepertti dalam gam mbar berikut ini [9]
Gam mbar II.14. P PWM mode phase correect P Pada PWM M 8 bit, makka frekuenssi dan duty cycle padaa mode pha ase correct d dirumuskan fPWM M=
fosc Nx512
DPWM M=
OCRx x 100% 255
D Dimana: fPWM M = Frekuensi PWM fosc = Frekuensi osilator N
= Skala cloock
D
= Duty cyccle
33
I II.3.2 PWM M mode fast Pada mode m fast hampir h samaa dengan moode phase ccorrect, han nya register T TCNTx meencacah naikk tanpa meencacah turuun seperti tterlihat dalaam gambar b berikut ini [9 9]
Gambar III.15. PWM mode m fast P Pada PWM M 8 bit, makka frekuenssi dan duty cycle padaa mode pha ase correct d dirumuskan fPWM M=
fosc Nx 256
DPWM M=
OCRx x 100% 255
D Dimana: fPWM M
= Frekuensi PWM
Foscc
= Frekuensi kristal
N
= Skala clock
D
c = Duty cycle
I II.3.3 Pre skalar s padaa PWM P skalar merupakan faktor penngali clock (skala clockk) sehinggaa frekuensi Pre r register TCN NT dapat diaatur. Misalkaan pre skalar 8 berarti bahwa TCNT T akan naik s setiap 8 sikllus clock. Peerbedaan anttara tanpa daan dengan prre skalar diiilustrasikan d dalam gambbar berikut inni
34
Gambaar II.16. (a) Timer/counte T er tanpa presskalar
Gambar II.16. (b) Tim mer/counter dengan presskalar 8
D Dengan mem masukkan faaktor preskaalar dalam menentukan m ffrekuensi PW WM, maka k dapat membuat kita m freekuensi PW WM yang beeragam, tidaak harus sam ma dengan f frekuensi osilator. I II.3.4 Anallog vs PWM M pada penggendali mottor DC Pada awalnya, pengendaliann kecepatan motor DC C yang umuum dengan m menggunaka an tegangan analog. Teggangan analoog ini kemuddian dikuatkkan terlebih d dahulu sesuuai dengan daerah d kerjaa plant sebeelum diberikkan ke plan nt. Adapun p pengendalian n motor DC C dengan PW WM, tegang gan PWM teetap akan teetapi durasi a antara sinyaal high denggan keseluru ruhan sinyall yang diatuur untuk meendapatkan t tegangan ratta-ratanya. Tegangan T raata-rata ini yang y kemudiian dikuatkaan sebelum d diberikan kee plant. Kareena frekuensi PWM yangg tinggi, makka motor akaan berputar s secara haluss, tidak terseentak. Dengan PWM juuga dapat dittekan kehilaangan daya y yang digunaakan untuk menggerakkkan motor karena tegaangan yangg diberikan b berupa teggangan mak ksimalnya atau tidakk diberikann tegangan sehingga p pembuangan n daya ditraansistor dapaat dihindari, beda halnyya dalam pengendalian
35
m motor secaraa analog. Beerikut ilustraasi yang meenjelaskan peerbedaan pengendalian m motor secaraa analog dann secara PWM M.
Gambar II..17.(a) Pengeendalian mootor secara anallog
(b) Pengendaliaan motor seccara PWM
P Pengendalia an motor seecara analogg dapat meenggunakan beberapa konfigurasi k s seperti: com mmon emittter, commonn collector, transistor daya darlington dan M MOSFET daaya. Berikut rangkaian ppengendali motor m secara analog.
(a)) Common emitter e
or (b) Common collecto
(c) Tran nsistor daya Darlington
(d) MO OSFET dayaa
Gambbar II.18. Beeberapa rangkkaian pengendalian motor secara annalog
36
Pada pengendalian motor secara analog, tegangan lebih yang digunakan motor dibuang ke transistor sehingga terjadi pemborosan daya. [3]
(b) Pemasangan transistor daya
(a) Rangkaian ketika transistor dalam keadaan half-on
Gambar II.19. Transistor daya sebagai pengendali motor Efisiensi penggunaan daya motor dinyatakan sebagai Efisiensi = Pmotor/Pmasukan = (Vm x IA )/((Vcc x IA)+(VBE x IB) Dimana VBE ≅ 0, 7 volt (Pada rangkaian Darlington 0,7 x n volt) dan IB jauh lebih kecil dari pada IA sehingga effisiensi dinyatakan sebagai Efisiensi = Vmotor/Vmasukan Adapun pada PWM, efisiensi daya dapat ditingkatkan karena tidak ada pembuangan daya ke transistor. Transistor bekerja dengan mode on atau off yang diatur periodenya secara PWM. Ketika sinyal dalam kondisi high, motor DC diberi tegangan, dalam kondisi low tegangan 0 diberikan, akan tetapi tidak berarti bahwa motor akan berhenti bergerak, kondisi ini seperti model pengayuhan pada sepeda, ketika sepeda dikayuh, sepeda mendapat energi untuk bergerak, akan tetapi ketika tidak dikayuh sepeda masih dalam keadaan bergerak dalam waktu tertentu. Karena frekuensi yang tinggi pada sinyal PWM, maka gerakan motor berjalan secara halus, tidak terasa tersentak. Jadi, ada 2 keuntungan pengendalian motor DC dengan teknik PWM dibandingkan dengan analog:
•
Peningkatan effisiensi daya karena tidak ada pembuangan daya lebih seperti pada pencatudayaan secara analog. 37
•
Tidak memerlukan DAC ketika pengendali motor akan diintegrasikan dengan pengendali digital
II.4 Motor DC Motor merupakan perangkat listrik yang mengubah energi listrik menjadi energi mekanik. Motor DC banyak digunakan di berbagai peralatan karena torsinya yang besar seperti pada mesin bubut, mesin CNC, tracking antena atau sistem konveyer. Model motor DC yang disederhanakan terlihat dalam gambar di bawah ini i
R
La ω J
e
e
b
Gambar II.20. Model motor DC Sistem motor DC yang mempunyai medan konstan dengan pengendalian pada armatur diperlihatkan pada gambar di atas. Resistansi dan induktansi armatur dinotasikan oleh Ra dan La. Tegangan balik motor em (t) dinyatakan sebagai: em (t ) = K bω (t )
(2 - 1)
dimana θ merupakan posisi shaft motor, ω adalah kecepatan sudut shaft, dan Kb adalah konstanta dependent-motor. Jumlah momen inersia yang dihubungkan ke shaft motor adalah J, dan b adalah gesekan rekatan (viscous). Dengan memisalkan τ sebagai torsi yang dihasilkan oleh motor, kita tuliskan
τ =J
dθ d 2θ +b 2 dt dt
τ =J
dω + bω dt
atau (2-2)
Torsi yang dihasilkan untuk motor ini diberikan oleh
τ = K
T
ia
(2.3)
38
dimana ia adalah arus armatur dan KT merupakan suatu konstanta. Persamaan akhir yang diperlukan untuk persamaan tegangan rangkaian armatur adalah e = i a R a + La
dia + em dt
(2.4)
II.5 Kelinieran sistem Pada umumnya, komputasi berbagai metode kendali menganggap bahwa
plant adalah linier, padahal pada kenyataanya sulit sekali hardware linier sempurna. Untuk mengatasi ketidaklineran ini dapat menggunakan beberapa metoda, metoda yang mudah diimplementasikan dengan membuat lookup table atau membatasi sistem hanya pada daerah kerja liniernya saja.
II.6 Mikrokontroller (ATMega 8535) ATMega8535 merupakan mikrokontroller keluarga AVR produksi Atmel. Mikrokontroler AVR ini memiliki arsitektur RISC 8 bit, dimana semua instruksi dikemas dalam kode 16 bit dan sebagian besar instruksi dalam 1 (satu) siklus
clock, berbeda dengan instruksi MCS51 yang membutuhkan 12 siklus clock. Hal ini terjadi karena kedua jenis mikrokontroler tersebut memiliki arsitektur yang berbeda. AVR berteknologi RISC (Reduced Instruction Set Computing), sedangkan seri MCS51 berteknologi CISC (Complex Instruction Set Computing) Mikrokontroller ATMega8535 termasuk keluarga RISC produksi Atmel. Fiturfitur pada ATMega8535 sebagai berikut:
•
130 macam instruksi yang hampir semuanya dieksekusi dalam 1 siklus
clock •
32 x 8 bit register serbaguna
•
Kecepatan mencapai 16 MIPS dengan clock 16 MHz
•
8 Kbyte Flash Memori, yang memiliki fasilitas In-System Programming
•
512 Byte internal EEPROM
•
512 Byte SRAM
•
Programming lock, fasilitas untuk mengamankan kode program
•
2 buah timer/counter 8-bit dan 1 buah timer/counter 16-bit
•
4 saluran keluaran PWM
39
•
8 chaannel ADC 10-bit 1
•
Seriaal USART
•
Mastter/Slave SPI PI serial Interrface
•
Seriaal TWI dan I2C
•
On-cchip analog Comparatorr
K Konfigurasi PIN dan arssitektur ATM Mega 8535 sebagai berikkut
Gambbar II.21. Koonfigurasi pinn ATMega 88535
Gaambar II.22. Arsitektur ATMega A 85335
40