Mardian Satria Budiarto - Laporan Interface Mikrokontroler Dan PC [PDF]

  • 0 0 0
  • Suka dengan makalah ini dan mengunduhnya? Anda bisa menerbitkan file PDF Anda sendiri secara online secara gratis dalam beberapa menit saja! Sign Up
File loading please wait...
Citation preview

PRAKTIKUM SISTEM MIKROKONTROLER DAN TEKNIK ANTAR MUKA LAPORAN RESMI PERCOBAAN “Interface Mikrokontroller dan PC”



Dosen : Eka Prasetyono, S.ST., MT. Disusun oleh : Mardian Satria Budiarto 1303181006 2 D3 Elektro Industri A



TEKNIK ELEKTRO INDUSTRI POLITEKNIK ELEKTRONIKA NEGERI SURABAYA 2019/2020



Abstrak Komunikasi data serial adalah salah satu cara untuk berkomunikasi (menerima atau mengirim pesan) melalui perangkat elektronik. Komunikasi serial merupakan komunikasi yang pengiriman datanya dikirimkan per-elemen. Komunikasi serial mengirimkan dan menerima data komunikasinya dalam bentuk biner. Mikrokontroler merupakan sebuah chip yang fungsinya untuk pengendali rangkaian elektronika, dan memiliki kemampuan untuk menyimpan program. Perangkat ini biasanya tersusun dari Central Processing Unit atau CPU, input / output (I/O) tertentu, memori serta unit pendukung bisa berupa ADC (Analog to Digital Converter), yang sudah saling terintegrasi. Rumah cerdas adalah sebuah sistem aplikasi yang dirancang menggunakan computer guna memberikan kenyamanan, keamanan, serta penghematan energi yang dilakukan secara otomatis dengan kendali berasal dari penghuni rumah dan terprogram melalui computer untuk rumah tersebut. STMicroelectronics memperkenalkan tools yang disebut STM32CubeMX, yang digunakan sebagai alat untuk inisialisasi sistem mikrokontrolernya. Dari hasil inisialisasi ini akan diubah menjadi program code dalam aplikasi Keil uVision. Sehingga dengan begitu sistem mikrokontroler akan terprogram melalui inisialisasinya yang diubah menjadi program. GUI adalah seperangkat aplikasi yang menampilkan semua menu, ikon dan alat penunjuk lainnya yang menggantikan perintah ketik di shell. GUI pertama kali digunakan dalam komputer yang diproduksi oleh Apple yakni Machintosh dengan Steve Jobs sebagai penggagasnya. Pada percobaan ini yaitu Interface Mikrokontroller dan PC dilakukukan untuk membentuk suatu sistem otomasi rumah atau sistem kontrol rumah berbasis pada mikrokontroler. Mikrokontroler akan memproses program yang digunakan untuk mengontrol lampu dan pump dalam rumah. Sistem ini terkoneksi melalui sambungan kabel serial RS232 yang diaplikasikan secara virtual melalui alat bantu virtual serial port emulator. Dengan kata lain semua sistem yang dibangun kali ini hanya sebagai simulasi kontrol rumah cerdas.



1. Dasar Teori 1.1. Komunikasi Serial Komunikasi data serial adalah salah satu cara untuk berkomunikasi (menerima atau mengirim pesan) melalui perangkat elektronik. Komunikasi serial merupakan komunikasi yang pengiriman datanya dikirimkan per-elemen. Komunikasi serial mengirimkan dan menerima data komunikasinya dalam bentuk biner. Dimana setiap karakter akan diterjemahkan dari logic biner ASCII. Komunikasi serial terdiri dari berbagai jenis, diantaranya komunikasi serial RS-232, RS-485, dan yang umum digunakan adalah RS-232. Dengan transmisi serial, pengiriman data jarak jauh menjadi lebih efektif dibandingkan dengan transmisi paralel. Ada dua macam cara komunikasi serial yaitu Sinkron dan Asinkron. a)



komunikasi sinkron, clock dikirimkan Bersama dengan data serial, namun clock tersebut dibangkitkan sendiri – sendiri baik pada sisi pengirim maupun penerima. b) Komunikasi asinkron, tidak diperlukan clock karena data dikirimkan dengan kecepatan tertentu yang sama baik pengirim ataupun penerima. RS-232 adalah standar komunikasi serial yang didefinisikan sebagai antarmuka antara perangkat terminal data (Data Terminal Equipment/DTE) dan perangkat komunikasi data (Data Communications Equipment/DCE) yang menggunakan biner sebagai media pertukaran serialnya. Dalam hal ini DTE merupakan device atau perangkat komputer dan DCE merupakan modem. Komunikasi RS-232 diperkenalkan pada tahun 1962 dan 1997. Electronic Industries Association mempublikasikan 3 modifikasi pada standar RS-232 dengan menamainya menjadi EIA232. RS-232 mempunyai kecepatan 256 kbps atau akan lebih rendah dengan jarak kurang dsri 15 meter. 1.2. Mikrokontroller Mikrokontroler merupakan sebuah chip yang fungsinya untuk pengendali rangkaian elektronika, dan memiliki kemampuan untuk menyimpan program. Perangkat ini biasanya tersusun



dari Central Processing Unit atau CPU, input / output (I/O) tertentu, memori serta unit pendukung bisa berupa ADC (Analog to Digital Converter), yang sudah saling terintegrasi.



Mikrokontroler mempunyai kelebihan yaitu danya pendukung berupa input output (I/O) dan RAM. Karena ukuran mikrokontrolerbisa lebih kecil dan ringkas sehingga banyak digunakan dalam berbagai perkembangan teknologi. Misalnya pada mikrokontroler MCS51 yang merupakan mikrokomputer dari CMOS dengan spesifikasi 8 bit berkapasitas 4 KB Flash PEROM atau Programmable And Erasable Only Memory. Dengan begitu program mikrokontroler dapat dihapus dan ditulis lagi dengan mudah hingga ribuan kali. Penerapan teknologi high density non volatile memory diusung pada pembuatan mikrokontroler tersebut. keberadaan Flash PEROM on chip itu menjadikan mikrokontroler itu memiliki kemampuan in system programing atau bisa diprogram ulang dengan bantuan sistem tertentu. Dasar – dasar mikrokontroler tersusun atas, sistem input computer, sistem output computer, CPU, clock dan memori computer, program computer, dan sistem mikrokontroler. 1.3. Rumah Cerdas Rumah cerdas atau smart home merupakan sebuah aplikasi sistem gabungan antara teknologi dengan layanan atau aktivitas yang dapat dilakukan di rumah dengan tujuan untuk efisiensi dan kenyamanan penghuni rumah tersebut. Sistem rumah cerdas biasanya terdiri dari perangkat meonitoring, perangkat kontroling, dan akses computer. Rumah cerdas adalah sebuah sistem aplikasi yang dirancang menggunakan computer guna memberikan kenyamanan, keamanan, serta penghematan energi yang dilakukan secara otomatis dengan kendali berasal dari penghuni rumah dan terprogram melalui computer untuk rumah tersebut. Teknologi yang ditawarkan oleh rumah cerdas digunakan untuk memudahkan penghuni rumah dalam mengontrol berbagai peralatan di rumah seperti menyalakan atau mematikan lampu melalui PC 1.4. STM32 STM32 adalah Mikrokontroler yang menggunakan arsitektur ARM Cortex M yang saat ini popular digunakan dalam berbagai aplikasi karena mempunyai fitur yang banyak, kinerja yang baik, dan biaya yang murah. STMicroelectronics memperkenalkan tools yang disebut STM32CubeMX, yang digunakan sebagai alat untuk inisialisasi sistem mikrokontrolernya. Dari hasil inisialisasi ini akan diubah menjadi program code dalam aplikasi Keil uVision. Sehingga dengan begitu sistem mikrokontroler akan terprogram melalui inisialisasinya yang diubah menjadi program. Program yang dihasilkan merupakan deklarasi dari sisstem kerja mikrokontroler tersebut. Selanjutnya tinggal pengguna memasukkan program yang diinginkan untuk diproses dalam sistem tersebut. Tools STM32CubeMX adalah bagian dari STMicroelectronics STMCube. Software tools ini memudahkan development dengan mengurangi efford coding, waktu dan biaya. STM32Cube termasuk STM32CubeMX yang merupakan software tools yang memungkinkan pembuatan kode inisialisasi C menggunakan graphical wizard. Kode itu dapat digunakan di berbagai software pengembangan seperti keil uVision, GCC, IAR dll. Pada mikrokontroler STM32F4 yang memiliki inti prosesor ARM Cortex-M4, mempunyai system bus dengan lebar data 32 bit. Sehingga prosesor tersebut memiliki 232 (= 4294967296 atau 4 Giga) alamat yang berbeda. Jadi semua program memory, data memory, register hingga port I/O terorganisasi pada alamat dengan rentang dari0x0000 0000 hingga



0xFFFF FFFF. Jika pembaca membuka Reference Manual STM32F446xx pada halaman 57 akan ditemui periferal – periferal yang ditanamkan ke dalam mikrokontroler dan juga alamat yang digunakan. Misalnya, berdasarkan Reference Manual, Register yang terkait dengan GPIOA diletakkan pada alamat 0x4002 0000 – 0x4002 03FF. Alamat yang berbeda mungkin dijumpai untuk jenis mikrokontroler lain (seperti Tiva C Series). Contoh berikutnya adalah register terkait dengan SPI4 yang diletakan pada rentang alamat 0x4001 3400 – 0x4001 37FF 1.5. GUI GUI adalah seperangkat aplikasi yang menampilkan semua menu, ikon dan alat penunjuk lainnya yang menggantikan perintah ketik di shell. Hal ini membuat pengguna komputer menjadi lebih mudah mengoperasikan sebuah perangkat daripada mengingat perintah yang menggunakan teks pada sebuah kotak komando tertentu. Hal ini didasarkan bahwa manusia lebih mudah mengingat gambar dibanding tulisan. GUI pertama kali digunakan dalam komputer yang diproduksi oleh Apple yakni Machintosh dengan Steve Jobs sebagai penggagasnya. Namun belakangan sistem operasi lain mengikutinya, seperti misalnya Microsoft dengan GUI Windows-nya yang menjadi tren setter penggunaan start menu dan taskbar di bawah. Kelebihan/keutamaan dan kekurangan dari GUI : Kelebihan GUI : 1. Desain Grafis lebih menarik. 2. GUI memungkinkan user untuk berinteraksi dengan komputer secara lebih baik. 3. Memudahkan pengguna. 4. Menarik minat pengguna. 5. Resolusi gambar yang tinggi. Kekurangan GUI : 1. Memakan memory yang sangat besar. 2. Bergantung pada perangkat keras. 3. Membutuhkan banyak tempat pada layar komputer. 4. Tidak fleksibel.



2. Langkah Percobaan Ikuti langkah langkah berikut untuk bisa membuat aplikasi otomasi rumah secara virtual melalui perangkat simulasi: 1) Siapkan aplikasi simulasi berikut, a. Virtual Serial Port Emulator (VSPE) b. STM32 Cube MX c. Keil uVision d. Proteus (include library STM32) e. Visual Basic 6.0



2) Pertama, buka aplikasi VSPE untuk membuat port nya secara virtual. a) Klik icon “Create new device” b) Pilih “Device type” jenis “Connector”. Klik Next



c)



Pilih port berapa yang akan dibuat, lalu centang baud rate nya. Klik Finish



d) Akan menghasilkan seperti gambar di bawah ini. Artinya port sudah berhasil dibuat.



3) Selanjutnya buat sistem mikrokontrollernya. Buka aplikasi “STM32 Cube Mx” untuk inisialisasi pin mikrokontroller. a) Klik File  New Project



b) Cari board MCU nya. kali ini digunakan MCU STM32F1003R6. Klik 2x pada model seperti gambar di bawah ini.



c)



Pilih Connectivity  USART1. Lalu aktifkan mode “Asynchronous”



d) Atur baud rate dengan nilai 9600



f)



e)



Aktifkan global interrupt dengan centang USART1 global interrupt



Atur koneksi pin untuk output mikrokontroller, dengan klik (pin) yang akan digunakan. Pilih GPIO_Output



g) Beri nama Project yang dibuat pada kotak “Project Name” dan lokasi penyimpanannya pada kotak “Project Location”. Lalu pada kotak “Toolchain/IDE” pilih “MDK-ARM” agar saat mengenerate akan otomatis dihubungkan ke aplikasi Keil uVision. Dan terakhir klik “Generate Code”



4) Maka selanjutnya akan dialihkan ke aplikasi Keil uVision. a) Ketikkan Source Code berikut. (program digunakan untuk mengatur ON-OFF lampu dan Pump)



b) Kemudian klik icon “Build” untuk memeriksa kebenaran program (error tidaknya program dapat diketahui) Jika tidak ada error maka dapat dilanjutkan untuk membuat rangkaian pada proteus.



5) Buka aplikasi Proteus dan buatlah rangkaian seperti gambar di bawah ini.



a)



Setting konektor serial port dengan klik 2x pada komponennya. Maka akan muncul tampilan seperti berikut. Pilih port yang telah dibuat pada awal percobaan yaitu COM7, pilih baud rate 9600 lalu klik OK



b) Selanjutnya masukkan program mikrokontroller yang telah dibuat di aplikasi STM32 Cube dan Keil uVision. Caranya dengan klik 2x pada komponen STM32, maka akan muncul tampilan



seperti gambar di bawah ini. Klik icon pada kotak “Program File”. Cari file program yang telah tersimpan lalu klik OK



c)



Jika telah selesai rangkaian dapat disimulasikan dengan klik icon play di pojok kiri bawah seperti terlihat pada gambar berikut.



d) Maka akan tampilan akan seperti gambar di bawah ini. Kotak hitam “Virtual Terminal” berfungsi untuk menampilkan perintah dari interface yang dipilih.



e)



Selanjutnya untuk interface pada Visual Basic akan didesain seperti berikut dengan program yang digunakan untuk koneksi komunikasi antara interface GUI dengan mikrokontroler.



f)



Ketika tombol ON Lampu 1 di klik, sistem akan menjalankan perintah untuk menghidupkan lampu 1, begitupun tombol yang lainnya



3. Analisa Pada percobaan ini yaitu Interface Mikrokontroller dan PC dilakukukan untuk membentuk suatu sistem otomasi rumah atau sistem kontrol rumah berbasis pada mikrokontroler. Mikrokontroler akan memproses program yang digunakan untuk mengontrol lampu dan pump dalam rumah. Sistem ini terkoneksi melalui sambungan kabel serial RS232 yang diaplikasikan secara virtual melalui alat bantu virtual serial port emulator. Dengan kata lain semua sistem yang dibangun kali ini hanya sebagai simulasi kontrol rumah cerdas. Namun pada dasarnya sama saja dengan pengaplikasian lapangan. Hanya perlu mengganti virtual port dengan kabel serial, sistem sudah dapat digunakan untuk mengontrol peralatan elektronik dalam rumah. Percobaan ini membutuhkan bebrapa aplikasi untuk membangun sistemnya yaitu, 1. STM32 Cube Digunakan untuk membangun mikrokontroler melalui inisialisasi sistem kerjanya yang kemudian akan diubah (di-generate) dalam bentuk program. 2. Keil uVision Digunakan untuk membangun mikrokontroler yang telah degenerate code untuk dimasukkan program yang akan diolah oleh sistem mikrokontroler. 3. Proteus Digunakan untuk membentuk rangkain dari sistem yang akan dibangun mulai dari MCU STM32 nya, komponen lampu, pump (motor), dan port RS232. 4. VirtualSerial Port Emulator Digunakan untuk mengkoneksikan antara port yang ada di proteus dengan port yang digunakan untuk interface GUI. 5. Visual Basic Digunakan untuk membangun tampilan GUI, yang berfungsi untuk mengontrol dari kerja sistem. Berdasarkan hasil simulasi yang dilakukan diperoleh bahwa, ketika tombol ON Lampu 1 diklik, maka sistem akan menjalankan agar lampu 1 menyala. Ketika OFF ditekan maka lampu akan padam, begitupun dengan lampu 2. Pada pump juga demikian, ketika tombol ON diklik, motor akan bekerja dan saat tombol OFF ditekan motor akan berhenti. Proses komunikasi antara GUI dengan mikrokontroler dapat dilihat melalui kotak tampilan Virtual Terminal. Saat tombol GUI di klik akan tampil angka yang merupakan identitas dari tombol tersebut. Untuk kotak Virtual Terminal satunya akan menampilkan perintah dari hasil klik tombol GUI. Missal



ketika tombol OFF Lampu 1 diklik, virtual terminal pertama akan menampilkan angka “3” dan virtual terminal kedua akan menampilkan tulisan “Lampu 1 OFF”. Untuk program yang digunakan yaitu, while (1) { HAL_UART_Receive_IT(&huart1, (uint8_t *)data, 1); if(atoi(data) == 1){ HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_RESET); HAL_UART_Transmit(&huart1, (uint8_t *)"Lampu 1 ON\r\n", 13, 200); HAL_Delay(100); } if(atoi(data) == 2) { HAL_GPIO_WritePin(GPIOA, GPIO_PIN_6, GPIO_PIN_RESET); HAL_UART_Transmit(&huart1, (uint8_t *)"Lampu 2 ON\r\n", 13, 200); HAL_Delay(100); Arti dari program tersebut adalah, HAL_UART_Receive_IT(&huart1, (uint8_t *)data, 1); berarti program memulai UART untuk menerima perintah dari data. If disini digunakan ketika data yang terbaca sama dengan angka 1 maka mikrokontroler akan menerjemahkan untuk menyalakan lampu 1 dengan menampilkan instruksi "Lampu 1 ON” pada layar virtual terminal. Hal tersebut berlaku untuk if data sama dengan angka yang lainnya.



4. Kesimpulan Berdasarkan pada percobaan ini dapat disimpulkan bahwa, 1. Kontrol rumah cerdas dapat dilakukan secara virtual melalui simulasi. 2. Tingkat kerumitan sistem tergantung dari seberapa banyak fitur yang digunakan dan bagaimana orang yang mengerjakan sistem tersebut. 3. Komunikasi serial secara langsung menggunakan kabel asli dapat digantikan dengan komunikasi serial melalui port virtual.



5. Daftar Pustaka Modul ajar Mikrokontroler dan Teknik Antar Muka https://studylibid.com/doc/172251/a.-komunikasi-serial--rs232https://catatantkj123.blogspot.com/2017/03/pengertian-komunikasi-serial.html https://misterikomputer.wordpress.com/2013/05/08/pengertian-port-serial-rs232/ http://repository.dinamika.ac.id/id/eprint/441/1/2009-III-303.pdf http://jtiik.ub.ac.id/index.php/jtiik/article/download/156/pdf https://www.komputermedia.com/pengertian-mikrokontroler/ https://www.nn-digital.com/blog/2019/06/09/pemrograman-stm32-menggunakan-keil-uvisionstm32cubemx/ https://predator-technology.blogspot.com/2013/10/pengertian-gui-graphical-user-interface.html