Seminar Nasional Teknologi Informasi dan Komunikasi 2013 (SENTIKA 2013) Yogyakarta, 9 Maret 2013
ISSN: 2089-9815
IDENTIFIKASI KEMASAN CIP MIKROPENGENDALI ATMEL MENGGUNAKAN SISTEM INTERAKTIF BERBASIS ATURAN DAN FAKTA PADA CLIPS Arief Hendra Saptadi Program Pascasarjana Teknik Elektro, Fakultas Teknik, Universitas Gadjah Mada Yogyakarta Jl. Grafika No. 2, Kampus UGM, Yogyakarta 55281 Telp. (0274) 510983 E-mail:
[email protected] ABSTRACT In the electronic circuit design which involves microcontroller, the designer must take into account the type of IC package being used. To correctly select an appropriate packaging type from hundreds of microcontroller chips is not an easy task. The goal of this research is to design a chip package identification system using interactive system based on rules and facts on CLIPS. The system consisted of two separate CLIPS scripts, namely application.clp and data.clp. The first one is used to handle user interface and data processing, while the latter is for storing required data. The user interacts with the system by typing through the console. From the tests performed, it can be concluded that the system had been able to search for appropriate package type, to display it and to store package data from user input. Nevertheless, the system is very susceptible to data redundancy. In subsequent development, it is expected that the system could perform classification through the use of parsing technique and use SQL database system. Keywords: Identification, Microcontroller chip, Interactive, CLIPS ABSTRAKS Dalam perancangan rangkaian elektronik yang melibatkan mikropengendali, perancang harus mempertimbangkan jenis kemasan IC (integrated circuit) yang digunakan. Memilih tipe kemasan yang tepat dari sekian ratus cip mikropengendali bukanlah pekerjaan yang mudah. Penelitian ini bertujuan untuk merancang sebuah sistem identifikasi kemasan cip menggunakan sistem interaktif berbasis aturan dan fakta pada CLIPS. Sistem ini terdiri dari dua skrip CLIPS yang terpisah, yaitu application.clp dan data.clp. Skrip pertama digunakan untuk menangani antarmuka pengguna dan pemrosesan data, sementara skrip berikutnya untuk menyimpan data yang diperlukan. Pengguna berinteraksi dengan system melalui pengetikan pada konsol. Dari hasil pengujian dapat disimpulkan bahwa sistem telah dapat mencari tipe kemasan, menampilkannya dan menyimpan data kemasan dari masukan pengguna. Namun demikian, sistem sangat rentan terhadap redundansi data. Pada pengembangan selanjutnya, sistem diharapkan dapat mengklasifikasikan dengan teknik parsing dan menggunakan sistem basis data SQL. Kata Kunci: Identifikasi, Cip Mikropengendali, Interaktif, CLIPS Flat No Lead/Micro Lead Frame Package atau QFN/MLF) (Atmel, 2010). Dua digit angka terdepan pada masing-masing kode tersebut menunjukkan jumlah “kaki” atau pin yang terdapat di cip seperti dalam Gambar 1.
1.
PENDAHULUAN Manufaktur semikonduktor pada umumnya menyediakan berbagai keping atau cip mikropengendali (microcontroller) dalam beragam jenis kemasan (package type). Dalam satu jenis cip yang sama sekalipun, juga dapat dijumpai beberapa tipe kemasan dengan dimensi fisik yang berbeda. Hal ini pada dasarnya didorong oleh penggunaan cip tersebut pada papan rangkaian tercetak (printed circuit board) dengan tata letak komponen yang berbeda-beda. Informasi mengenai bentuk fisik dan jenis kemasan dari suatu cip dapat diperoleh dari lembar data (datasheet) yang menyertainya. Sebagai contoh untuk cip ATmega8A keluaran dari ATMEL, pada lembar data dapat diketahui bahwa terdapat tiga kode kemasan, masing-masing adalah 32A (yang termasuk jenis Thin Plastic Quad Flat Package atau TQFP), 28P3 (berjenis Plastic Dual Inline Package atau disingkat PDIP) dan 32M1-A (termasuk Quad
Gambar 1. Informasi jenis kemacan cip pada lembar data Dalam lembar data yang sama juga terdapat gambaran fisik dari jenis kemasan TQFP, PDIP maupun QFN/MLF tersebut, sebagaimana ditampilkan dalam Gambar 2. Selain bentuk kemasan, dijelaskan pula fungsi dari masing-masing nomor pin. 96
Seminar Nasional Teknologi Informasi dan Komunikasi 2013 (SENTIKA 2013) Yogyakarta, 9 Maret 2013
ISSN: 2089-9815
(dual, quad atau array) maupun penggunaan khusus untuk aplikasi daya (power) seperti dalam Gambar 3 berikut ini.
Gambar 2. Gambaran fisik cip dalam lembar data Meski lembar data menyediakan informasi yang sangat lengkap, namun menelusurinya satu per satu untuk mengetahui data jenis kemasan suatu cip adalah sesuatu yang tidak efisien. Oleh karena itu dibutuhkan suatu sistem yang menyimpan data jenis kemasan dari berbagai cip, sehingga pengguna dapat memperoleh informasi dari sistem tersebut secara cepat dan akurat melalui sebuah pencarian. Tujuan dari penelitian ini adalah menciptakan sebuah prototipe sistem interaktif berbasis aturan dan fakta, menggunakan bahasa pemrograman CLIPS untuk membantu pencarian kode kemasan cip secara cepat. Interaksi yang terjadi diharapkan dalam bentuk antarmuka dialog, dimana pengguna mengetikkan kode cip dan sistem kemudian menampilkan informasi jenis kemasan. Jika sistem tidak memiliki data suatu cip, maka pengguna dapat mengetikkannya sesuai informasi yang diperoleh dari lembar data cip tersebut.
Gambar 3. Klasifikasi kemasan (Philips Semiconductor, 2000) Bagi seorang perancang rangkaian elektronika, jenis kemasan adalah salah satu pertimbangan utama dalam pemilihan cip mikropengendali. Hal ini dilatarbelakangi oleh tata letak pemasangan komponen dalam papan rangkaian tercetak yang diusahakan seefisien mungkin, sehingga bentuk dan dimensi fisik dari cip mikropengendali haruslah disesuaikan. 2.2
Mikropengendali ATMEL AVR Mikropengendali telah lama digunakan dalam dunia elektronik untuk menangani tugas-tugas pengendalian yang lazimnya dilakukan secara manual menjadi sebuah sistem otomasi. Sekitar lebih dari tiga dekade yang lalu, kehadirannya dimulai dari kemunculan mikropengendali seri 8051 dari Intel (Barnett, 2007). Dewasa ini mikropengendali seri AVR dari ATMEL (www.atmel.com) jamak digunakan karena dapat beroperasi sangat cepat namun dengan jumlah instruksi yang sudah dikurangi atau RISC (Reduced Instruction Set Computing), berharga rendah, dapat diprogram berulang kali secara langsung melalui rangkaian yang menyatu (in-circuit programmable) dan perangkat lunak pengembangannya dapat diperoleh secara cuma-cuma (Pardue, 2005). Selain didukung penuh oleh dunia industri yang mengaplikasikannya sebagai “otak” pengendali dalam berbagai produk elektronik, cip ATMEL AVR juga banyak dipergunakan dalam berbagai proyek akademis.
2. TINJAUAN PUSTAKA 2.1 Kemasan Cip Mikropengendali Mikropengendali adalah sebuah mikrokomputer (yaitu sebuah komputer berukuran kecil) yang memasukkan sebagian besar perangkat atau peripheral dan memori yang diperlukan di dalam sebuah rangkaian terintegrasi tunggal (integrated circuit) bersama dengan CPU (Central Processing Unit). Jadi dapatlah dikatakan bahwa mikropengendali sesungguhnya adalah “mikrokomputer dalam sebuah cip” (Barnett, 2007). Ditinjau dari pemasangannya pada papan rangkaian tercetak, secara garis besar cip mikropengendali dibagi menjadi tiga jenis kemasan, yaitu Through Hole Packages, Surface Mount Packages dan Contacless Packages (Philips Semiconductor, 2000). Masing-masing kemudian diklasifikasikan berdasarkan jenis bahan yang digunakan (keramik, metal atau plastik), susunan pin 97
Seminar Nasional Teknologi Informasi dan Komunikasi 2013 (SENTIKA 2013) Yogyakarta, 9 Maret 2013
Seri AVR terdiri dari mikropengendali 8-bit dan 32 bit dengan lima famili produk sebagai berikut (Atmel, 2013): 32-bit AVR UC3 AVR XMEGA Microcontroller megaAVR Microcontroller 8-bit tinyAVR Battery Management Automotive AVR Pada sebagian besar aplikasi, megaAVR adalah famili yang terpopuler karena tepat digunakan sebagai pembelajaran awal mikropengendali dengan harga yang relatif terjangkau.
ISSN: 2089-9815
Basis pengetahuan menyimpan pengetahuan yang akan digunakan oleh mesin inferensi untuk membuat suatu kesimpulan berdasarkan fakta yang diterima. Kesimpulan yang diperoleh, merupakan respon dari Sistem Pakar terdapat permintaan dari pengguna akan keahlian tertentu.
2.3
Sistem Pakar Sistem Pakar atau Expert Systems adalah sistem komputer yang meniru kemampuan pembuatan keputusan dari seorang pakar (McLeod & R. Schell, 2008). Sistem pakar digunakan di bidang tertentu dengan sebuah spesialisasi dan tidak diciptakan untuk memecahkan permasalahan yang bersifat umum. Saat ini sistem pakar banyak digunakan dalam kasus-kasus khusus pada berbagai bidang, seperti bisnis, kedokteran, sains dan teknik. Sistem Pakar merupakan salah satu bidang pada Kecerdasan Buatan atau Artificial Intelligence (sebagaimana diperlihatkan dalam Gambar 4) yang memanfaatkan sepenuhnya pengetahuan tertentu untuk menyelesaikan permasalahan, setaraf dengan seorang pakar. Pengetahuan sebagaimana dimaksud dapat berupa keahlian atau pengetahuan yang umumnya didapat dari buku, majalah atau orangorang yang memiliki pengetahuan. Gambar 5 menjelaskan konsep dasar dari Sistem Pakar yang berbasis pengetahuan. Seorang pengguna memberikan fakta ke sistem, lalu menerima nasehat ahli atau keahlian.
Gambar 5. Bagian-Bagian Penyusun Sistem Berbasis Pengetahuan (Giarratano & Riley, 1998) Sistem Pakar terkait dengan kemampuannya dalam memecahkan masalah, merupakan salah satu perangkat sistem informasi berbasis komputer yang digunakan dalam Sistem Pendukung Keputusan, selain Sistem Pendukung Kelompok (Group Support Systems/GSS), Sistem Informasi Perusahaan (Enterprise Information Systems/EIS), Sistem Manajemen Pengetahuan (Knowledge Management Systems/KMS) dan Jaringan Saraf Tiruan (Artificial Neural Network/ANN) (Turban, Aronson & Liang, 2005). 2.4 CLIPS CLIPS atau C Language Integrated Production Systems adalah perangkat sistem pakar yang awalnya dikembangkan oleh Software Technology Branch (STB), NASA/Lyndon B Johnson Space Center (Giarratano, 2007). Sejak pertama kali diluncurkan pada tahun 1986, CLIPS telah mengalami berbagai macam pembaharuan dan peningkatan hingga versi terakhir, 6.3 Quicksilver Beta (26 Maret 2008). CLIPS dirancang untuk memfasilitasi pengembangan perangkat lunak dalam memodelkan pengetahuan atau keahlian manusia. Sebagai bahasa pemrograman, CLIPS mendukung tiga pendekatan dalam merepresentasikan pengetahuan, yaitu berbasis aturan (rule-based) yang utamanya ditujukan untuk memperoleh pengetahuan secara heuristis berdasarkan pengalaman, prosedural (procedural) dengan menggunakan deffunction dan fungsi-fungsi generik untuk memperoleh pengetahuan secara prosedural dan berorientasi objek (object-oriented) yang terangkum dalam COOL (CLIPS Object-Oriented Language) (Giarratano, 2007). CLIPS juga mendukung integrasi dengan bahasa pemrograman lain, khususnya Java dan C. CLIPS dapat dipanggil dari bahasa prosedural lainnya, menjalankan fungsinya dan setelah selesai, mengembalikan kontrol ke bahasa tersebut. Demikian pula sebaliknya. CLIPS dapat memanggil
Gambar 4. Beberapa Bidang dalam Kecerdasan Buatan (Giarratano & Riley, 1998) Di dalam Sistem Pakar terdapat dua komponen. 98
Seminar Nasional Teknologi Informasi dan Komunikasi 2013 (SENTIKA 2013) Yogyakarta, 9 Maret 2013
ISSN: 2089-9815
dilakukan proses pencarian kesalahan (debug), diikuti dengan mengulangi pembuatan kode. Proses ini berjalan demikian seterusnya hingga dalam pengujian unit sudah tidak ditemukan lagi permasalahan dan aplikasi siap untuk dirilis.
fungsi eksternal bahasa lain dan ketika eksekusi selesai, CLIPS mengambil alih kendali program. Dalam lingkungan sistem operasi Windows, CLIPS dapat dijalankan melalui mode DOS (Gambar 6) atau Windows (Gambar 7). Saat ini perangkat lunak CLIPS berlisensikan public domain dan pengembangannya dilakukan oleh komunitas open source yang beralamatkan di situs http://clipsrules.sourceforge.net/.
3.1
Spesifikasi Perangkat lunak yang digunakan untuk mengembangkan sistem ini adalah: 1. CLIPS versi 6.3 Beta (mode Windows) 2. Notepad++ versi 6.1.6 Seluruh pengembangan dilakukan pada lingkungan Windows 7 Service Pack 1 menggunakan komputer laptop dengan spesifikasi: 1. Prosesor Intel Pentium Dual Core T2370 (1,73 GHz, 533 MHz FSB, 1 MB L2 Cache) 2. Cakram keras berkapasitas 500 GB 3. Memori utama berkapasitas 2 GB 3.2
Sistem Implementasi skrip CLIPS untuk permasalahan ini adalah dalam bentuk dua arsip terpisah. Application.clp digunakan untuk menangani antarmuka pengguna dan pemrosesan data. Sedangkan data.clp berfungsi untuk menyimpan data jenis kemasan dari berbagai cip. Kedua file tersebut terletak dalam folder chip. Interaksi yang terjadi antara kedua arsip tersebut dapat digambarkan seperti dalam Gambar 9.
Gambar 6. CLIPS dalam mode DOS
Gambar 7. CLIPS sebagai aplikasi Windows 3.
METODOLOGI PENELITIAN Metode yang digunakan dalam penelitian ini adalah rekayasa perangkat lunak dengan model simple process (Gambar 8). Model ini dipilih karena ruang lingkup permasalahan yang tidak begitu luas dan dapat ditangani secara langsung oleh seorang pemrogram.
Gambar 9. Interaksi antara pengguna dan sistem Tahap-tahap interaksi yang terjadi: 1. Pengguna mengetikkan kode cip untuk mencari jenis kemasannya 2. Application.clp selanjutnya mencari data kemasan tersebut dalam Data.clp 3a. Jika kemasan ditemukan, Data.clp mengembalikan data kemasan ke Application.clp 3b. Namun jika tidak ditemukan, maka Data.clp mengirimkan pesan kesalahan kepada Application.clp 4a. Application.clp menampilkan data kemasan cip kepada pengguna 4b. Application.clp menampilkan pesan kepada pengguna bahwa kemasan cip tidak ditemukan
Gambar 8. Model Simple Process (Tsui & Karam, 2009) Langkah awal dari alur kerja dimulai dengan menyatakan permasalahan (problem statement). Langsung diikuti dengan tahap pembuatan kode program (coding), kompilasi (compile) dan pengujian unit (unit test). Jika dalam kedua tahap terakhir terdapat permasalahan, maka akan 99
Seminar Nasional Teknologi Informasi dan Komunikasi 2013 (SENTIKA 2013) Yogyakarta, 9 Maret 2013
5. 6. 7.
dan menawarkan kepada pengguna untuk memasukkan data Pengguna memasukkan data kemasan melalui Application.clp Application.clp selanjutnya menyimpan data kemasan ke Data.clp Application.clp memberikan konfirmasi bahwa data telah disimpan
ISSN: 2089-9815
Dalam rule locate, data yang tersimpan di slot ?chip selanjutnya dicocokkan dengan pola data pada file data.clp. Jika cocok, sistem akan menampilkan jenis kemasan untuk cip tersebut dan berhenti, seperti berikut: (defrule locate (locate ?chip) (package ?type ?chip) => (printout t "The available package types for AT" ?chip " are " ?type "." crlf crlf) (halt) )
3.3 Algoritma dan Pemrograman 3.3.1 Application.clp Skrip application.clp yang ditulis dalam CLIPS berfungsi untuk menangani antarmuka pengguna dan seluruh pemrosesan data di dalam skrip data.clp seperti pencarian fakta, pembukaan file, pembacaan data, penulisan data hingga penutupan file. Algoritma untuk skrip ini adalah sebagai berikut:
Gambar 12. Pendefinisian rule locate Namun jika tidak ditemukan, maka sistem akan beralih ke rule unknown. Dalam rule ini, sistem akan menampilkan pesan dan menunggu masukan dari pengguna mengenai jenis kemasan dari cip tersebut. Setelah diketikkan, masukan akan tersimpan dalam slot ?type.
1. 2. 3.
Muat Data.clp Tampilkan antarmuka untuk pengguna Tunggu masukan kode cip dari pengguna. Jika terdapat masukan, lanjutkan ke langkah 4 4. Cari tipe kemasan berdasarkan kode cip 5. Jika ditemukan, tampilkan tipe kemasannya. Jika tidak, lanjutkan ke langkah 6 6. Tampilkan pesan bahwa tipe kemasan untuk kode cip tersebut tidak ditemukan dan minta pengguna untuk menambahkan data 7. Tunggu masukan tipe kemasan dari pengguna. Jika terdapat masukan, lanjutkan ke langkah 8. 8. Baca file Data.clp 9. Tambahkan kode cip dan tipe kemasan 10. Tutup file Data.clp 11. Tampilkan pesan bahwa data telah disimpan.
(defrule unknown (locate ?chip) (not (package ?type ?chip)) => (printout t "The system cannot find … … … … (bind ?type (read))
Gambar 13. Pendefinisian rule unknown Berikutnya sistem akan membuka file data.clp, memasukkannya ke dalam objek file.read dan melakukan beberapa operasi string, seperti membaca baris data dalam file.read, menemukan string eof sebagai penanda akhir dari kumpulan fakta lalu menghapusnya. Setelah seluruh operasi tersebut selesai, objek file.read selanjutnya ditutup melalui serangkaian instruksi ini:
Gambar 10. Algoritma pada skrip Application.clp Saat pertama dijalankan, skrip pada file ini akan mendefinisikan rule bernama begin untuk kondisi awal, dalam hal ini adalah memuat file data.clp, mengatur tampilan antarmuka dan menunggu input dari pengguna (Gambar 11).
(open "chip/data.clp" file.read "r") (bind ?kb (readline file.read)) (bind ?index (str-index "(eof)" ?kb)) (bind ?rawFacts (sub-string 1 (?index 1) ?kb)) (close file.read)
(defrule begin => (load “chip/data.clp”) (reset) (printout t “” crlf) … … … (printout t “>> “) (bind ?chip (read)) (printout t “>> “) (assert (locate ?chip)) )
Gambar 14. Pembacaan file data.clp Sistem lalu akan membuka kembali data.clp ke dalam objek file.write. Dilanjutkan dengan mencetak baris fakta yang sudah diperbaharui (tanpa string eof) dan menutup objek file.write setelah selesai. (open "chip/data.clp" file.write "w") (printout file.write ?rawFacts) (close file.write)
Gambar 11. Pendefinisian rule begin
Gambar 15. Penulisan file data.clp Pada tahap terakhir, sistem akan membuka kembali data.clp ke dalam objek file.open, menulisnya dengan fakta yang diketikkan oleh
Masukan selanjutnya ditampung dalam slot ?chip yang akan digunakan dalam rule locate untuk mencari data. 100
Seminar Nasional Teknologi Informasi dan Komunikasi 2013 (SENTIKA 2013) Yogyakarta, 9 Maret 2013
pengguna lalu menghapus objek tersebut. Setelah memunculkan beberapa pesan, sistem kemudian berhenti.
ISSN: 2089-9815
mengeksekusi urutan perintah (yang ditandai dengan cetak tebal) sebagaimana dalam Gambar 16 di dalam CLIPS dengan mode Windows. Seluruh respon dari pengguna, meliputi pengisian kode cip untuk mencari tipe kemasan dan mengisikan kode kemasan untuk kode cip yang belum terdapat dalam data.clp, juga dilakukan melalui pengetikan pada konsol.
(open "chip/data.clp" file.open "a") (printout file.open " (package "" " ?type " " ?chip") (eof))" crlf) (close file.open) (printout t “… (printout t “… (halt)
CLIPS> (clear) CLIPS> (load "chip/application.clp") Defining defrule: begin +j+j Defining defrule: locate +j+j+j Defining defrule: unknown =j+j+j TRUE CLIPS> (reset) CLIPS> (run)
Gambar 16. Penutupan file data.clp 3.3.2 Data.clp Skrip data.clp berfungsi untuk menyimpan data kode cip dan tipe kemasannya. File ini berisi definisi fakta bernama descriptor yang diakhiri oleh string eof, dengan pola slot sebagai berikut: (package ?type ?chip) dimana: ?type menyatakan jenis kemasan suatu cip, jika lebih dari satu maka dipisahkan oleh tanda koma. ?chip menyatakan nama cip Sebagaimana contoh dalam cuplikan kode berikut:
Gambar 18. Eksekusi aplikasi Adapun tampilan antarmuka dialog yang muncul adalah sebagaimana diperlihatkan dalam Gambar 19. Pada tahap ini, sistem menunggu pengguna untuk mengetikkan kode cip.
(deffacts descriptor (package 44A,40P6,44J,44M1-A mega8535) (package 44A,40P6,44J,44M1-A mega8535l) … … … (eof))
Gambar 19. Tampilan antarmuka dialog
Gambar 17. Pendefinisian fakta descriptor
Setelah pengguna mengetikkan nama chip dan sistem menemukan jenis kemasannya, maka hasilnya akan ditampilkan sebagaimana dalam Gambar 20. Pada contoh ini pengguna mencari tipe kemasan untuk kode cip ATmega8 dan sistem menunjukkan bahwa tipenya adalah 32A, 28P3 dan 32M1-A.
Ada pun jenis famili cip ATMEL yang dipilih adalah megaAVR. Sedangkan data tipe kemasan yang disimpan dalam file data.clp adalah untuk kode cip berikut ini: mega8535 mega8535L mega8 mega8L mega16 mega16L mega48P mega88P mega168P mega48A mega48PA mega88A mega88PA mega168A mega168PA mega328 mega328P mega169 mega169V
Gambar 20. Tampilan jenis kemasan ditemukan Namun bila tidak ditemukan, maka sistem akan meminta input dari pengguna mengenai jenis kemasan sesuai lembar data chip yang dimaksud. Pada contoh tersebut, pengguna mencari tipe kemasan untuk mikropengendali Attiny2313 yang tidak terdapat dalam data tersimpan (Gambar 21). Pengguna kemudian memasukkan data kemasan untuk cip yang dimaksud.
4. PENGUJIAN DAN PEMBAHASAN 4.1 Pengujian Pengujian sistem dilakukan dengan 101
Seminar Nasional Teknologi Informasi dan Komunikasi 2013 (SENTIKA 2013) Yogyakarta, 9 Maret 2013
ISSN: 2089-9815
4. Pengaturan tampilan antarmuka dialog dapat memanfaatkan sepenuhnya instruksi printout yang dikombinasikan dengan bind. 5. Proses penyimpanan data masih sangat memungkinkan terjadinya redundansi. 5.2
Saran Sebagai perbaikan dan pengembangan selanjutnya, berikut ini adalah beberapa hal yang disarankan: 1. Dalam pengisian data dari pengguna, perlu adanya strategi pengaturan pola data untuk meminimalkan redundansi data. 2. CLIPS dapat diarahkan untuk mengklasifikasikan jenis kemasan cip melalui teknik parsing. 3. Pada kumpulan data yang sangat banyak, penggunaan flat file perlu digantikan dengan SQL.
Gambar 21. Tampilan jenis kemasan tidak ditemukan Bila terdapat masukan jenis kemasan dari pengguna, maka di dalam file data.clp akan terdapat tambahan data baru yang terletak tepat sebelum string eof. Dalam contoh ini adalah jenis kemasan untuk cip ATtiny2313 (sebagaimana ditunjukkan oleh panah dalam Gambar 22).
PUSTAKA Atmel. 2010. 8-bit AVR Microcontrollers with 8K Bytes In-System Programmable Flash. ATmega8 ATmega8L. Summary. Atmel Corporation. Atmel. 2013. AVR 8-bit and 32-bit Microcontroller. (Online), (http://www.atmel.com/products/microcontroller s/avr/default.aspx, diakses 4 Januari 2013). Barnett, R. O’Cull & L. Cox, S. 2007. Embedded C Programming and the Atmel AVR (Second Edition). Delmar: Cengage Learning. Giarratano, J. C. 2007. CLIPS User’s Guide. Quicksilver Beta. NASA/Lyndon B. Johnson Space Center. Giarratano, J. C & Riley, G. D. 1998. Expert Systems: Principles and Programming (Third Edition), Course Technology. McLeod Jr & R. Schell, G.P. 2008. Sistem Informasi Manajemen (Management Information Systems) (Edisi 10). Jakarta: Penerbit Salemba Empat. Pardue, J. 2005. C Programming for Microcontrollers. Smiley Micros. Philips Semiconductor. 2000. Integrated Circuit Packages Data Handbook. Philips Semiconductor. Tsui, F. & Karam, O. 2009. Essentials of Software Engineering (Second Edition). Sudbury: Jones and Bartlett Publishers, LLC. Turban, E., Aronson, J. E. & Liang, Ting-Peng. 2005. Decision Support Systems and Intelligent Systems (Sistem Pendukung Keputusan dan Sistem Cerdas) (Edisi 7 Jilid 1). Yogyakarta: Penerbit ANDI.
Gambar 22. Tambahan data dalam file data.clp 4.2
Pembahasan Dari hasil eksekusi tersebut dapat disimpulkan bahwa tampilan antarmuka dialog untuk menemukan jenis kemasan sesuai nama cip yang diketikkan oleh pengguna telah berjalan baik. Meski demikian sistem ini sangat rentan terhadap redundansi data, dimana untuk chip berjenis sama namun berbeda varian, akan dapat memiliki jenis kemasan yang sama. Sebagai contoh untuk ATmega8 dan variannya, ATmega8L, memiliki jenis kemasan yang sama, seperti berikut: (package 32A,28P3,32M1-A mega8) (package 32A,28P3,32M1-A mega8l) Oleh karena itu perlu dipikirkan pola data yang meminimalkan terjadinya redundansi data mengingat amatlah lazim bahwa suatu cip memiliki beragam varian. Selain itu perlu dipikirkan pula kemungkinan adanya kode cip yang berbeda namun memiliki jenis kemasan yang sama. 5. PENUTUP 5.1 Kesimpulan Berdasarkan perancangan dan hasil-hasil pengujian tersebut maka dapat disimpulkan beberapa hal sebagai berikut: 1. Pendefinisian rule akan selalu mengikuti definisi fakta dan rule tidak akan dapat dijalankan tanpa adanya fakta yang mendukung. 2. Perubahan jumlah rule akan berpengaruh terhadap perubahan jumlah fakta. 3. Penambahan satu atau beberapa rule sekaligus ke dalam suatu file dapat dilakukan melalui skrip yang terdapat di dalam file lain. 102