BAB III PERENCANAAN DAN PEMBUATAN PERANGKAT LUNAK Bab ini membahas tentang perancangan perangkat lunak yang meliputi interface PC dengan mikrokontroller, design, database menggunakan Microsoft access untuk data user dan mencatat hasil pengambilan data dari sensor-sensor. sensor Tampilannya menggunakan Visual Bas Basic 6.0. Dalam pembuatan perencanaan perangkat ini diperlukan beberapa pengetahuan mengenai cara kerja dari beberapa perangkat tersebut yang meliputi peralatan – peralatan yang akan dikontrol dikontro atau dimonitor oleh personal komputer (PC). 3.1. Konstruksi alat Berikut adalah gambar perancangan konstruksi alat monitoring tegangan dan arus beban satu fasa tersebut; 32 33 Gambar 3.1 Rancangan alat monitoring tegangan dan arus 3.2.. Konfigurasi sistem Sistem minimum yang terdapat pada sistem monitoring parameter teganagan dan arus ini terbagi atas dua bagian dasar, yaitu bagian perangkat keras ((hardware) dan bagian perangkat lunak (software). ( ). Pada sistem minimum ini digunakan sebagai tatap muka (interface) dari komputer dengan perangkat keras (hardware (hardware), system monitoring ini meggunakan mikrokontroler AVR ATmega 16 yang merupakan mikrokontroler keluaran Atmel. Sedangkan untuk perencanaan sistem berdasarkan pada fungsi komunikasi data itu sendiri adalah dengan mengintegrasikan dan menghubungkan antara komputer komp dengan mikrokontroler. Mikrokontroller menerima masukan dari sensor tegangan dan arus, kemudian melalui komunikasi data serial RS-232 232 mengirimkan hasil – hasil monitoring tersebut ke komputer. Data dari Mikrokontroler yang dikirim melalui komunikasi serial s RS – 232 menuju komputer akan ditampilkan kedalam perangkat lunak (software) ( ) sehingga hasil monitoring secara keseluruhan dapat ditampilkan. 34 3.3. Blok diagram sistem Blok diagram sistem monitoring seperti terlihat pada Gambar 3.2 Sensor Arus PC AVR ATmega 16 Peralatan listrik Sensor Tegangan Gambar 3.2 Blok Diagram Sistem Prinsip kerja dari blok diagram diatas adalah PC yang menggunakan pemograman Visual Basic 6.0 berfungsi sebagai monitoring peralatan listrik yang di analisa, PC juga berfungsi sebagai interface mengirim data dan menerima data serial ke AVR ATmega 16 dalam bentuk digital tapi dalam skripsi ini PC hanya menerima data dari AVR ATmega 16 dalam bentuk digital. Saat saklar lampu di nyalakan sensor arus dan tegangan akan aktif, sehingga sensor- sensor tersebut menggirimkan sinyal atau data analog dalam bentuk tegangan maksimal 5 volt ke port.A ATmega 16 yang merupakan port ADC, selanjutnya data tegangan analog tersebut dikonversi menjadi data digital, kemudian data digital tersebut di tampilkan pada Personal Computer ( PC ) yang dilengkapi dengan perecord (penyimpan) data yaitu berupa database. Konfigurasi pin mikrokontroler yang digunakan pada proses monitoring parameter tegangan dan arus ini adalah sebagai berikut: • PortA.0 dihubungkan pada ground. • PortA.1 dihubungkan pada sensor arus. • PortA.2 di hubungkan pada sensor Tegangan. 35 Adapun alur dari proses monitoring melalui PC sebagai berikut: berikut • Pertama menghubungkan kabel serial RS-232 RS dari mikrokontrol AVR ke Comm serial computer atau USB. • Setelah kabel serial telah terhubung dengan benar, hubungkan kabel power alat monitoring dengan kontak listrik. maka proses roses selanjutnya akan masuk ke mengaktifkan system alat monitoring dan mulai start. • Kemudian sebagai ebagai monitoring beban load listrik yang sedang dioperasikan dan kemudian data di simpan di data data base, untuk dipakai final report. • Pada data base berfungsi sebagai penyimpan data keseluruhan dari hasil monitoring secara permanent sehingga data yang yang tersimpan bisa ditampilkan sewaktu-waktu. 3.4. Flowchart Gambar 3.3 adalah flowchart dari proses proses monitoring parameter tegangan dan arus listrik. Gambar 3.3 Flowchart Monitoring 36 3.5. Pembuatan Data base Database ini berfungsi sebagai system pencatat data user dari hasil monitoring peralatan listrik yang di analisa. Pada sistem database ini hanya menggunakan satu computer saja dan hanya dapat diolah melalui komputer saja untuk data usernya. Dalam perencanaan sistem database ini, data-data yang akan dimasukkan untuk user dari hasil monitoring adalah pada Tabel 3.1. Tabel 3.1 Parameter-parameter monitoring peralatan listrik. 3.6. Pembuatan ProgramVisual Basic Pembuatan program pada Visual Basic 6.0 melalui beberapa tahap. Tahap tersebut antara lain: 3.6.1. Desain Form Visual Basic 6.0 Form antar muka dibuat dengan menggunakan program aplikasi Microsoft Visual Basic 6.0 dengan sistem operasi Windows XP. Pada interface ini terdapat kontrol command yang berfungsi untuk mengirimkan karakter ke mikrokontroler. Juga terdapat Mscomm yang berfungsi sebagai alat komunikasi serial antara mikrokontroler dengan PC. Dimana PC akan menerima data dari mikrokontroler berupa data digital. Proses pengiriman data pada potongan program Visual Basic berikut ini. 37 Private Sub Timer1_Timer() f = MSComm2.Input Text1.Text = Mid(f, 1, 3) u = Mid(f, 5, 3) Text3.Text = Format(Date, "dd/mm/yy") Text4.Text = Format(Time, "hh::mm::ss") I = Format(Val(u) / 100, "0.00") Text2.Text = CStr(I) End Sub Potongan program visual basic di atas adalah jika command 1 pada VB diaktifkan, maka komunikasi serial antara mikrokontroler dengan PC akan berfungsi. Dimana PC akan menerima data dari mikrokontroler. Private Sub Form_Load() MSComm2.PortOpen = True End Sub Pada bagian ini akan dilakukan inisialisasi terhadap jalur RS –232 dengan inisialisasi terhadap bit per karakter, Stop bit, parity, baudrate dan nomer serial komunikasi. Dengan adanya inisialisasi ini, maka jalur komunikasi serial RS –232 siap digunakan. Adapun untuk inisialisasi kode persiapan port serial pada Visual Basic adalah pada potongan program diatas. Langkah beringkutnya adalah mendesain form utama yaitu, form proses monitoring dan data base. Data hasil dari monitoring langsung tersimpan di data base, seperti terlihat pada Gambar 3.4 dan Tabel 3.2. 38 Gambar 3.4 Tampilan Form Utama Tabel 3.2 Tampilan data record 39 Dalam form data record dapat dilihat, dimana data hasil monitoring terlihat seluruhnya, mulai dari awal start sampai terakhir dalam bentuk tabel, terlihat pada Tabel 3.2. Sedangkan pada potongan program berikut ini adalah mencari jumlah data terukur yang sebenarnya (konversi data). Mencari jumlah data terukur f = MSComm2.Input Text1.Text = Mid(f, 1, 3) u = Mid(f, 5, 3) I = Format(Val(u) / 100, "0.00") Berikut ini adalah potongan program Visual Basic untuk data record pada database Private Sub Timer2_Timer() a=a+1 If (a = 2) Then Data1.Recordset.AddNew Data1.Recordset!TANGGAL = Text3.Text Data1.Recordset!JAM = Text4.Text Data1.Recordset!TEGANGAN = Text1.Text Data1.Recordset!ARUS = Text2.Text Data1.Recordset.Update a=0 End If End Sub 40 3.7. Koneksi Visual Basic dengan Database Koneksi dari Visual Basic ke Microsoft Access database adalah menggunakan provider Microsoft ADO Data Control 6.0 OLEDB. Pada tugas akhir ini menggunakan source of connection yaitu use connection string. RecordSource = SELECT Tanggal, jam, tegangan, arus, FROM tabel1 Order by Tanggal String koneksi tersebut berfungsi untuk menghubungkan Visual Basic dengan database Access yang mempunyai service name db1.mdb. 3.8. Perencanaan Software AVR Atmega16 3.8.1. CodeVision AVR Merupakan suatu software yang digunakan dalam penulisan program yang nantinya akan di download pada mikrokontroller AVR ATMega16. Dapat dilihat seperti pada struktur program dibawah ini: Gambar 3.5 Code Vision AVR 2.03.4 CodeVision AVR merupakan software C-cross compiler, dimana program dapat ditulis menggunakan bahasa-C. Dengan menggunakan pemograman bahasa-C diharapkan waktu desain (deleloping time) akan menjadi lebih singkat. Setelah program dalam bahasa-C ditulis dan dilakukan kompilasi tidak terdapat kesalahan (error) maka proses download dapat dilakukan. Mikrokontroler AVR mendukung sistem download secara ISP (In-System Programming). Terlihat pada Gambar 3.6. 41 Gambar 3.6 Tampilan CodeVisionAVR Untuk memulai bekerja dengan CodeVisionAVR pilih pada menu File -New. Maka akan muncul kotak dialog. Pada Gambar 3.7. Gambar 3.7 Tampilan new file Pilih Project kemudian tekan OK, maka akan muncul kotak dialog pada Gambar 3.8. Gambar 3.8 Tampilan Option Di Wizard AVR 42 Pilih Yes untuk menggunakan Code Wizard AVR. Code Wizard AVR digunakan untuk membantu dalam men-generate program, terutama dalam konfigurasi chip mikrokontroler, baik itu konfigurasi Port, Timer, penggunaan fasilitas-fasilitas seperti LCD, interrupt, dan sebagainya. Code Wizard AVR ini sangat membantu programmer untuk setting chip sesuai keinginan. Berikut ini tampilan Code Wizard AVR untuk setting Chip dan Port dari mikrokontroler. Seperti terlihat pada Gambar 3.9 s.d Gambar 3.10. Gambar 3.9 Tampilan Option Di Wizard AVR Gambar 3.10 Tampilan Port A AVR 43 Untuk selanjutnya fasilitas-fasilitas lainnya dapat disetting sesuai kebutuhan dari pemrograman. Setelah selesai dengan Code Wizard AVR, selanjutnya pada menu File, pilih Generate, Save and Exit dan simpan pada direktori yang diinginkan.Terlihat pada Gambar 3.11. Gambar 3.11 Tampilan Save general project Lakukan seting pada programmernya agar program yang dibuat siap untuk ditransfer kedalam mikrokontroler. Pada menu pilih Setting ‡ Programmer. Gambar 3.12 Tampilan seting program 44 Pilihlah programmer sesuai dengan yang akan digunakan. Gambar 3.13 Tampilan seting program Kemudian pilih menu Project ‡ Configure Gambar 3.14 Tampilan project configure Setelah melakukan seting, lakukan Build All project dengan memilih menu Project Build All. 45 Gambar 3.15 Tampilan project build all Sisipkan program yang telah di buat, Jalankan program dengan memilih menu Project ‡ Compile. Gambar 3.16 Tampilan project compile 46 3.9. Perancangan Hardware Hardwar 3.9.1. Perancangan DC Power Suplay Supl Rangkain ini di gunakan untuk menghasilkan tegangan 5 Volt DC . Tegangan ini untuk suplay y source pada Mikrokontroller ATmega 16 . Adapun rangkainnya sebagai berikut. Gambar 3.1 3.17 Rangkaian DC power suplay 3.9.2. Perancangan Duel Power Suplay. Rangkain ini di gunakan untuk menghasilkan Tegangan ± 12 Volt DC, Tegangan ini di gunakan untuk mensuplay VCC pada IC LM 741. Gambar 3.1 3.18 Rangkaian duel power suplay 47 3.9.3. Perancangan Sensor Arus. Sensor Arus yang di gunakan dalam Tugas Akhir ini menggunakan sensor Arus type ACS712. Dimana rangkaian ini sebagai inputnya disuplay tegangan ± 5 Volt DC dari power suplay. suplay.. Gambar 3.1 3.19 Rangkaian sensor arus Output dari sensor Arus ini kemudian di masukan ke ADC mikrokontroller sebagai inputnya pada port A.1. Untuk ground pada mikrokontrol ini dapat di ambil dari ground power suplay, yang kemudian di hubungkan ke ADC mikrokontroller pada port A.0. 48 3.9.4. Perancagan Sensor ensor Tegangan Sensor Tegangan egangan yang ya di gunakan dalam Tugas Akhir ini menggunakan unakan sensor tegangan PT atau Power wer Transformer, Transfo menggunakan transformer stepdown down dari 220 volt AC ke 5 Volt AC , hasil dari konversi ini menghasilkan tegangan ± 4 Volt dc. dc mbar 3.20 3.2 Rangkaian konversi AC to DC Gambar Output dari sensor Tegangan ini kemudian di masukan ke ADC mikrokontroller ontroller sebagai inputnya input pada port A.2.