WEB SECARA ONLINE DAN REALTIME
Disusun oleh :
Moch. Anang NurChambali
0534010120/FTI/SI
Kepada
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN”
JAWA TIMUR
iii ABSTRAK
Keterlambatan atau kesalahan dalam penanganan membuka atau menutup
pintu air pada sungai merupakan sebuah masalah yang serius apalagi kalau sampai
merugikan masyarakat. Sistem pengaturan dan monitoring yang terdapat pada
sistem kendali konvensional masih belum efisien yang ada pada aplikasi
sebelumnya, dimana bergantung pada pengamatan manusia yang berada di sekitar
pintu air. Pada sistem kendali modern, proses pengaturan dan monitoring dapat
dilakukan dari jarak jauh melalui internet. Tugas akhir ini adalah salah satu
contoh sistem kendali modern.
Tugas akhir ini dibuat dengan tujuan untuk membuat simulasi sistem
pengaturan dan monitoring pintu air melalui Internet yang dapat melakukan
proses monitoring, data acquisition. dan controlling. Proses dikendalikan
menggunakan Mikrokontroler AT89S51 yang terhubung dengan komputer server
rnelalui kabel serial.
Hasil pengujian menunjukkan bahwa simulasi sistem ini sudah dapat
berjalan dengan baik beserta dengan fitur-fiturnya yaitu monitoring, data
acquisition, dan controlling pintu air, sedangkan kecepatan pergerakan pintu air
sangat bergantung pada konstruksi gear box, motor, kecepatan koneksi internet
yang digunakan beserta spesifikasi komputer yang digunakan sebagai server.
Kata kunci:
i
KATA PENGANTAR
Segala puji bagi Allah SWT yang telah memberikan limpahan rahmat dan
ilmu yang bermanfaat serta kesabaran sehingga penulis dapat menyelesaikan Tugas
Akhir yang berjudul Prototype Buka Tutup Pintu Air Berbasis Web Secara Online
Dan Realtime, guna memenuhi persyaratan kelulusan di Universitas Pembangunan
Nasional “Veteran” Jawa Timur Fakultas Teknologi Industri Jurusan Teknik
Informatika.
Dengan adanya bantuan berupa saran serta dukungan baik secara langsung
maupun tidak langsung dari beberapa pihak maka pembuatan Tugas Akhir ini dapat
terwujud,oleh karena itu penulis mengucapkan banyak terima kasih kepada :
1. Keluarga tercinta yang telah banyak memberikan dukungan yang sudah tak
terhitung lagi jumlahnya.
2. Dekan Fakultas Teknologi Industri UPN “Veteran” JATIM Bapak Ir.
Sutiyono, MT
3. Ketua Jurusan Teknik Informatika UPN ”Veteran” JATIM Bapak Basuki
Rahmat, S. SI, MT dan Bapak Budi Nugroho, S. Kom selaku dosen
pembimbing yang telah banyak memberikan arahan dan saran dalam
pengerjaan Tugas Akhir ini.
4. Para Bapak /Ibu Dosen Pengajar Jurusan Teknik Informatika dan Sistem
ii
Semoga semua kebaikan dan niat baik dari semua pihak yang telah membantu
terwujudnya Tugas Akhir ini dapat dibalas oleh Allah SWT.
Masih banyak kekurangan dalam penyelesaian Tugas Akhir ini, maka dengan
segala kerendahan hati penulis bersedia menerima saran dan kritik dari pembaca
sekalian guna mendapatkan hasil yang lebih baik dalam tugas-tugas selanjutnya.
Semoga dengan adanya tulisan ini banyak memberikan manfaat yang baik
bagi semua pihak.
Surabaya, 5 September 2010
iv
DAFTAR TABEL ... xiii
BAB I PENDAHULUAN... 1
2.3.1 Dasar Mikrokontroler... 11
2.4 Motor DC ... 13
2.5 Komunikasi Serial... 14
2.5.1 Konverter Logika RS232 ... 15
v
2.7.10 Fungsi odbc_fetch_into... 21
2.7.11 Fungsi odbc_result... 21
2.7.12 Fungsi odbc_result_all ... 22
2.8 SQL Server 2005 ... 22
2.8.1 Sintak SQL Server 2005 ... 22
2.9 ODBC... 25
2.10 Macromedia Dreamweaver MX... 25
2.11 Database ... 28
2.11.1 Pengertian Database ...28
2.11.2 Entity Relation Diagram (ERD)... 29
BAB III ANALISA DAN PERANCANGAN SISTEM... 31
3.1 Analisa Sistem ... 31
3.2 Perancangan Sistem ... 32
vi
3.2.2 Flowchart Diagram ... 34
3.2.2.1 Flowchart Login... 34
3.2.2.2 Flowchart Buka Tutup Pintu air ... 35
3.2.3 Diagram Berjenjang ... 35
3.2.4 Spesifikasi Kebutuhan Sistem... 36
3.2.5 Context Diagram ... 38
3.3.2 Perancangan Mikrokontroler AT89S51 Dengan RS232... 44
3.3.3 Perancangan Miniatur ... 45
3.3.3.1 Sistem Penggerak ... 46
3.3.3.2 Input Sensor ... 46
3.4 Perancangan Antarmuka Perangkat Lunak ... 47
BAB IV IMPLEMENTASI SISTEM ... 50
4.1 Implementasi Lingkungan... 50
4.2 Implementasi data ... 51
vii
4.4.1 Implementasi Miniatur ... 55
BAB V EVALUASI DAN UJICOBA ... 57
5.1 Ujicoba Perangkat Hardware... 57
5.1.1 Pengujian mikrokontroler AT89S51 ... 57
5.1.2 Koneksi Software Dengan USB Converter RS 232 ... 58
5.1.3 Pengisian Program Mikrokontroler... 59
5.2 Ujicoba Aplikasi ... 59
5.2.8 Form Informasi Ketinggian Level Air Dan Posisi Pintu ... 67
5.3 Ujicoba Miniatur ... 67
5.3.1 Konfigurasi... 67
viii
5.3.1.2 Konfigurasi Komputer Client... 69
5.3.2 Ujicoba Database... 73
5.3.3 Ujicoba Sistem Pada Web Client... 75
BAB VI KESIMPULAN DAN SARAN ... 80
6.1 Kesimpulan ... 80
ix
DAFTAR GAMBAR
No Teks Halaman
2.1 Proses Sistem Kendali... 9
2.2 Sistem Kendali Lingkar Terbuka ... 9
2.3 Sistem Kendali Lingkar Tertutup... 9
2.4 Sistem Kerja Motor DC ... 14
2.5 Tampilan Awal Macromedia Dreamweaver MX... 26
2.6 One To One Relationship... 30
3.11 Diagram Blok Sistem Buka Tutup Pintu Air ... 43
3.12 Diagram Sistem Kontrol ... 43
3.13 Koneksi Pin AT89S51 Dengan RS 232 ... 44
3.14 Miniatur Sistem Buka Tutup Pintu Air ... 46
x
4.6 Miniatur Sitem Buka Tutup Pintu Air... 58
5.1 RS 232 Converter to USB... 57
5.2 Pemasangan LED Pada Mikrokontroler AT89S51 ... 58
5.3 Pengisian Program Pada Mikrokontroler ... 59
5.4 Form Menu Utama... 60
5.13 Webcam Logitech QuickCam For Notebook Pro... 65
5.14 Tampilan Video Streaming... 66
5.20 Ujicoba Miniatur Pada Posisi Level 0 Pada Kondisi Sebenarnya... 70
5.21 Ujicoba Miniatur Pada Posisi air Level 0 Tampilan Web Client... 71
5.22 Ujicoba Miniatur Pada Posisi Level 3 Pada Kondisi Sebenarnya... 71
5.23 Ujicoba Miniatur Pada Posisi air Level 3 Tampilan Web Client... 71
5.24 Ujicoba Miniatur Pada Posisi Level 7 Pada Kondisi Sebenarnya... 72
5.25 Ujicoba Miniatur Pada Posisi air Level 7 Tampilan Web Client... 72
5.26 Ujicoba Miniatur Pada Posisi Level 10 Pada Kondisi Sebenarnya... 73
5.27 Ujicoba Miniatur Pada Posisi air Level 10 Tampilan Web Client... 73
5.28 Posisi Ketinggian Pada Level 8 ... 74
xi
5.35 Hasil Laporan 1 April - 19 Juli ... 77
5.36 Laporan Grafik ... 78
5.37 Laporan Option Tanggal Grafik Akusisi... 79
xii
DAFTAR TABEL
No Teks Halaman
3.1 Kebutuhan Internal... 37
3.2 Kebutuhan External... 37
3.3 Kebutuhan Nonfungsional ... 38
3.4 Tabel Fungsi Kaki Mikrokontroler ... 45
4.1 Tabel-Tabel Basis Data ... 51
5.1 Hasil Pengujian Pada Rangkaian Mikrokontroler AT89S51 ... 58
5.2 Ketinggian Air Sebenarnya ... 62
BAB I
PENDAHULUAN
1.1 Latar Belakang
Keterlambatan atau kesalahan dalam penanganan membuka atau menutup
pintu air pada sungai merupakan sebuah masalah yang serius apalagi kalau sampai
merugikan masyarakat. Pemerintah kota sudah berusaha meminimalisasi
banyaknya daerah yang menjadi korban banjir dengan membangun sebuah
gardu-gardu pengawas level air sungai pada titik-titik tertentu. Akan tetapi pada sistem
ini masih belum efektif dikarenakan masih bergantung pada pengamatan manusia,
sedangkan untuk memonitoring level air sungai harus dilakukan terus-menerus
selama 24 jam. Oleh karena itu diperlukan adanya suatu sistem yang secara
otomatis dapat memonitoring level air sungai serta mentransmisikan datanya
secara otomatis, sehingga dapat dilakukan pengaturan pada pintu air sebagai
upaya untuk meminimalisasi keterlamatan ataupun kesalahan penanganan pintu
air sungai tersebut. Sistem tersebut dalam penerapannnya terbagi menjadi tiga
proses yaitu :
Monitoring : proses untuk pengambilan data level ketinggian permukaan air.
Data Acquisition : pengawas pintu air dapat melihat data-data atau
informasi-informasi ketinggian air terukur yang telah tersimpan dalam
database.
Controlling : pengawas dapat mengontrol pintu air dengan berdasarkan
Dari ketiga proses di atas diharapkan terjadinya banjir yang mendatangkan
kerugian yang besar dapat ditekan lagi.
1.2 Perumusan Masalah
Masalah-masalah yang dibicarakan dalam tugas akhir ini yaitu :
1. Aplikasi pada bidang penanganan pintu air masih belum banyak ada.
2. Mengaplikasikan teknologi pada bidang penanggulangan banjir sehingga
pemanfaatan teknologi pada bidang ini dapat menjadi lebih berkembang
seiring dengan perkembangan teknologi secara global.
3. Mekanisme manual dalam pengaturan dan monitoring pintu air selama ini
masih belum efisien.
4. Pembuatan sistem pengaturan dan monitoring pintu air secara otomatis.
5. Menggunakan database untuk mengolah data agar data yang diolah lebih
terstruktur.
6. Untuk merancang dan membangun simulasi sistem pengaturan dan
monitoring pintu air melalui internet.
7. Pembuatan simulasi sistem pengaturan dan monitoring pintu air dapat
dikendalikan dari jarak jauh dalam hal ini melalui Internet.
1.3 Batasan Masalah
Agar pembahasan tentang sistem ini lebih terarah, penulis membatasi
permasalahan yang akan dibahas pada proyek tugas akhir ini antara lain :
1. Sistem pengaturan dan monitoring pintu air ini dibuat dengan menggunakan
hanya sebagai unit pengolah dan pengatur port yang difungsikan sebagai
portable data, tidak membahas mengenai stuktur hardware dari AT89S51.
2. Simulasi sistem pengaturan dan monitoring pintu air ini menggunakan web
client sebagai user interface untuk mengontrol sistem tersebut melalui
internet.
3. Database yang digunakan adalah SQL Server 2005.
4. Bahasa Assembler digunakan untuk operasional mikrokontroller AT89S51.
Penggunaan bahasa Assembler ini disebabkan karena kemudahan dalam
perancangan dan pembuatannya.
5. Pengambilan data ketinggian air dengan menggunakan sensor level
ketinggian air yang dilakukan pada satu titik.
6. Cara kerja dari sistem pengaturan dan monitoring pintu air ini di
implementasikan dengan menggunakan miniatur.
7. Rangkaian elektronik hanya pendukung dari sistem ini.
8. Visual Basic 6 yang sudah teraplikasi sebelumnya untuk digunakan sebagai
program pada komputer yang berfungsi sebagai controller.
1.4 Tujuan
Adapun tujuan yang ingin dicapai dalam tugas akhir ini adalah :
1. Mengaplikasikan teknologi pada bidang penanganan pintu air sehingga
pemanfaatan teknologi pada bidang ini dapat menjadi lebih berkembang
seiring dengan perkembangan teknologi secara global.
2. Untuk merancang dan membangun simulasi sistem pengaturan dan
3. Merancang dan membuat hardware yang dapat mensimulasikan sistem
apikasi buka tutup pintu air menggunakan detektor level air.
4. Membuat aplikasi web client berbasis PHP yang dapat berhubungan dengan
aplikasi Visual Basic agar dapat mengontrol hardware yang telah dibuat.
5. Menguji coba hardware dan software sistem aplikasi buka tutup pintu air
menggunakan dektor level air.
1.5 Manfaat
Adapun manfaat yang ingin dicapai dalam tugas akhir ini adalah :
1. Membantu pemantauan ketinggian permukaan air sungai pada komputer
agar lebih mudah dilakukan dan lebih terstruktur dan terkomputerisasi
seiring perkembangan jaman.
2. Memberikan kemudahan bagi penjaga pintu air untuk bisa mengontrol
ketinggian air sungai sehingga dapat meminimalkan terjadinya banjir,
sehingga memberikan kenyamanan pada daerah-daerah rawan banjir yang
berada di sekitar pinggiran sungai.
3. Memberikan kemudahan bagi petugas pintu air dalam mengontrol pintu air
tanpa harus di tempat.
1.6 Metode Penelitian
Dalam rangka mempersiapkan penyusunan skripsi, metode penelitian yang
digunakan untuk mengumpulkan data, fakta dan keterangan bahan-bahan yang
ada hubungannya dengan masalah yang akan dibahas, maka penulis melakukan
1. Studi Literatur
- Mencari literature atau data-data yang berhubungan dengan
mikrokontroler AT89S51, PHP dan semua komponen yang dipakai dalam
pembuatan alat tugas akhir ini dan mempelajarinya.
- Mempelajari tentang dasar teori yang digunakan dalam menyelesaikan
tugas akhir.
2. Pembuatan alat
- Membuat rangkaian simulasi sistem pengaturan dan monitoring pintu air.
- Membuat miniatur simulasi sistem pengaturan dan monitoring pintu air
untuk mengetahui cara kerja dari sistem.
- Mendesain dan membuat program untuk mengakses dan mengontrol
sistem pengaturan dan monitoring pintu air dari komputer.
- Membuat tampilan web client dengan menggunakan Dreamweaver MX.
- Membuat database dengan menggunakan SQL Server 2005.
- Menggabungkan hardware dan software yang telah dibuat.
3. Analisa Sistem dan Pengujian Alat
Pengujian ini dilakukan untuk mengetahui apakah simulasi sistem
pengaturan dan monitoring pintu air sesuai dengan yang diharapkan dan
kemudian membuat analisa dari hasil pengujian tersebut.
4. Kesimpulan
Pengambilan kesimpulan yang dibuat meliputi evaluasi tahap akhir terhadap
pengoperasian simulasi sistem pengaturan dan monitoring pintu air yang
5. Pembuatan Laporan
Laporan dibuat berdasarkan dari seluruh kegiatan yang dilakukan serta
meliputi evaluasi tahap akhir terhadap pengoperasian alat dan pemanfaatan
dari alat tersebut.
1.7 Sistematika Penulisan
Dalam laporan tugas akhir ini, pembahasan disajikan dalam enam bab
dengan sistematika pembahasan sebagai berikut:
BAB I PENDAHULUAN
Bab ini membahas tentang latar belakang masalah, rumusan masalah,
batasan masalah, tujuan penelitian, manfaat penelitian, metode penelitian
dan sistematika penulisan.
BAB II DASAR TEORI
Bab ini membahas dasar teori untuk menunjang penyelesaian masalah dalam
tugas akhir ini. Teori dasar yang diberikan meliputi : mikrokontroler, motor
DC, Assembly, database Microsoft SQL Server 2005, Visual Basic 6 dan
PHP
BAB III ANALISIS DAN DESAIN SISTEM
Dalam bab ini akan dibahas analisa dan desain sistem secara terstruktur,
yang dilengkapi dengan beberapa diagram dan pseudocode algoritma..
BAB IV IMPLEMENTASI SISTEM
Bab ini membahas spesifikasi sistem, perangkat apa saja yang berhubungan
dengan sistem dan berbagai macam implementasi sistem lainnya.
BAB V UJI COBA DAN EVALUASI
Bab ini membahas skenario uji coba yang akan dilaksanakan dan
pelaksanaan dari uji coba atau testing terhadap sistem yang telah dibuat.
BAB VI PENUTUP
Bab ini adalah bab terakhir yang menyajikan kesimpulan serta saran dari
BAB II
DASAR TEORI
2.1 Monitoring Pintu Air
Sistem monitoring pada pintu air sungai sangat diperlukan untuk
mengawasi keadaan permukaan air sungai yang selalu berubah mengalami pasang
surut dan untuk mengatur atau mengontrol jumlah debit air yang akan mengalir
ke hilir sebelum nantinya air tersebut akan diterima oleh masyarakat oleh karena
itu diperlukan adanya suatu sistem yang secara otomatis dapat memonitoring level
air sungai serta mentramisikan datanya secara otomatis, sehingga dapat dilakukan
pengaturan pada pintu air sebagai upaya untuk meminimalisasi keterlambatan
ataupun kesalahan penanganan pintu air sungai tersebut. Sistem ini lebih efisien
jika dibandingkan dengan kebanyakan sistem yang dipakai selama ini yaitu hanya
mengandalkan pengawasan dari penjaga pintu air.
2.2 Sistem Pengendalian
Untuk keperluan pengendalian, pengaturan dan supervisi dari suatu
peralatan teknik biasanya diperlukan alat pendeteksi berupa alat ukur sinyal
listrik, dimana pada awalnya sinyal ini biasanya mempunyai besaran fisika yang
bisa diukur sesuai dengan harga besarannya. Besaran sinyal fisika ini kemudian
diubah menjadi sinyal listrik oleh sensor/ detektor melalui pengukuran.
Pengendalian biasanya menggunakan sensor untuk mendeteksi / mengukur
keluaran yang akan dikembalikan sebagai umpan balik (feed back) untuk
PROSES
PIRANTI
AKTUATOR PROSES
PIRANTI
AKTUATOR PROSES KONTROLER
SENSOR
point). Sistem pengendalian ini disebut sebagai sistem kendali lingkar tertutup
(Closed Loop Control). Pengendalian yang tidak memanfaatkan outputnya
sebagai umpan balik untuk dibandingkan dengan masukan selaku refrensi, disebut
sebagai sistem kendali lingkar terbuka (Open Loop Control). Lebih jelasnya dapat
dilihat pada Gambar 2.1 proses yang dikendalikan , Gambar 2.2 sistem kendali
lingkar terbuka, Gambar 2.3 sistem kendali lingkar tertutup.
masukan (input) keluaran (output)
Gambar 2.1 Proses sistem kendali
masukan (input) keluaran (output)
Gambar 2.2 Sistem kendali lingkar terbuka
set point
2.3 Mikrokontroler
Sering didengar istilah mikroprosesor, mikrokomputer, dan mikrokontroler
karena itu penting bagi kita untuk mengetahui perbedaannya. Mikroprosesor
adalah bagian CPU (Central Processing Unit) dari sebuah komputer tanpa
memory, I/O, dan peripheral yang dibutuhkan oleh suatu sistem yang lengkap.
Supaya dapat bekerja, mikroprosesor memerlukan perangkat pendukung seperti
RAM, ROM, I/O. Bila sebuah mikroprosesor dikombinasi dengan I/O dan
memory (RAM/ ROM) akan dihasilkan sebuah mikrokomputer. Sebagai
terobosan mikrokomputer ini dapat juga dibuat dalam bentuk single chip yaitu
Single Chip Microcomputer (SCM) yang selanjutnya disebut sebagai
mikrokontroler.
Mikrokontroler adalah salah satu dari bagian dasar dari suatu sistem
komputer. Meskipun mempunyai bentuk yang jauh lebih kecil dari suatu
komputer pribadi dan komputer mainframe, mikrokontroler dibangun dari
elemen-elemen dasar yang sama. Secara sederhana, komputer akan menghasilkan
output spesifik berdasarkan inputan yang diterima dan program yang dikerjakan.
Seperti umumnya komputer, mikrokontroler adalah alat yang mengerjakan
instruksi-instruksi yang diberikan kepadanya. Artinya, bagian terpenting dan
utama dari suatu sistem terkomputerisasi adalah program itu sendiri yang dibuat
oleh seorang programmer. Program ini menginstruksikan komputer untuk
melakukan jalinan yang panjang dari aksi-aksi sederhana untuk melakukan tugas
2.3.1 Dasar Mikrokontroler
Sebuah mikrokontroler memiliki beberapa perlengkapan dasar, antara lain
adalah CPU, Alamat, Data, Pengendali, Memori, RAM, ROM, Input/ Output. Central Processing Unit (CPU)
Unit pengelola pusat (CPU) terdiri atas dua bagian yaitu unit pengendali
(CU) serta unit aritmatika dan logika (ALU). Fungsi utama unit pengendali
adalah untuk mengambil, mengkode, dan melaksanakan urutan instruksi
pada sebuah program yang tersimpan dalam memori. Sedangkan unit
aritmatika atau perhitungan bertugas untuk menangani operasi perhitungan
maupun bolean dalam program. Alamat
Untuk mencari rumah seseorang ditempat lain kita memerlukan alamat
supaya kita dapat menemukan dan tidak tersesat begitu pula dengan
mikroprosesor atau mikrokontroler, apabila suatu alat dihubungkan dengan
mikrokontroler maka harus ditetapkan terlebih dahulu (address) dari alat
tersebut. Untuk menghindari terjadinya dua alat bekerja secara bersamaan
yang mungkin akan menyebabkan kerusakan. Data
CPU mikrokontroler AT89S51 mempunyai lebar bus 8 bit. Pena data 8 bit
pada AT89S51 (D0, …..D7) ini terletak didalam chip karena jumlah pena
luar pada mikrokontroler terbatas. Pena untuk bus data di multipleks dengan
Pengendali
Selain bus alamat dan bus data mikroprosesor atau mikrokontroler
dilengkapi juga dengan bus pengendali (control bus), yang fungsinya untuk
menyerempakkan operasi mikroprosesor atau mikrokontroler dengan operasi
rangkaian luar. Contoh pena pengendali ini antara lain ALE, PSEN, WR,
RD, interupsi dan lain-lain Memori
Mikroprosesor dan mikrokontroler memerlukan memori untuk menyimpan
program atau data. Ada beberapa tingkatan memori, diantaranya register
internal, memori utama, dan memori massal. Sesuai dengan urutan tersebut
waktu aksesnya dari yang lebih cepat ke yang lebih lambat.
- Register internal adalah memori didalam ALU, waktu akses sangat
cepat, umumnya kurang dari 100 ns.
- Memory utama adalah memory yang ada pada suatu sistem, waktu
aksesnya lebih lambat dibandingkan register internal, yaitu antara 200
sampai 1000 ns.
- Memori massal adalah memori untuk penyimpanan berkapasitas tinggi,
biasanya berbentuk disket, pita magnetic, atau kaset.
RAM
RAM (Random Access Memory) pada mikrokomputer bisa mencapai ukuran
sekian megabyte dan bisa di-upgrade ke ukuran yang lebih besar dan
berlokasi di luar chip CPU-nya, sedangkan RAM pada mikrokontroler ada di
misalnya 128 byte, 256 byte dan seterusnya dan ukuran yang relatif kecil
inipun dirasa cukup untuk aplikasi-aplikasi mikrokontroler.
ROM
ROM (Read Only Memory) diisi saat proses produksinya. Informasi yang
dituliskan harus dipesan oleh pelanggan sebelum chip diberikan. Dalam
sistem mikrokontroler, informasi ini dapat dibaca oleh CPU tetapi tidak
dapat dirubah. ROM adalah memori yang paling sederhana, kecil, dan
murah. Sifat memori program ini non volatile, artinya tetap akan tersimpan
walaupun tidak diberi catu daya. Input/ Output
Pin I/O adalah kaki untuk jalur keluar atau masuk sinyal sebagai hasil
keluaran ataupun masukan bagi program. Keluaran dan masukan pada
mikrokomputer jauh lebih kompleks dibandingkan dengan mikrokontroler,
yang jauh lebih sederhana, selain itu, pada mikrokontroler tingkat akses
keluaran dan masukan bisa dalam satuan per bit.
2.4 Motor DC
Motor DC adalah suatu mesin yang berfungsi untuk mengubah energi
listrik menjadi energi mekanik, energi gerak tersebut berupa putaran rotor.
Pengubahan bentuk energi tadi berdasarkan kejadian suatu penghantar yang dialiri
arus listrik dan berada di dalam medan magnet. Bila tegangan diberikan pada
kumparan maka akan timbul medan magnet yang menyebabkan kumparan
berputar. Putaran kumparan akan tergantung pada arus dan tegangan yang
mengunakan kumparan yang berputar. Kecepatan motor DC mempunyai selang
kecepatan yang lebar yaitu antara kecepatan awal putaran per menit hingga
beberapa putaran maksimal. Karena putaran motor tergantung pada tegangan yang
diberikan pada motor tersebut, maka dalam sistem kontrol motor DC memang
yang paling mudah dikendalikan dibanding dengan motor AC. Jadi , salah satu
kelebihan dari motor DC yaitu kecepatan kerja dari motor DC mudah diatur dalam
suatu rentang kecepatan yang lebar atau pengaturan yang teliti pada keluaran
motornya.
Gambar 2.4 Sistem kerja motor DC
2.5 Komunikasi Serial
Komunikasi serial merupakan komunikasi di mana pengiriman data
dilakukan per bit sehingga Iebih lambat dihandingkan dengan komunikasi paralel.
seperti pada port printer yang mampu mengirim 8 bits sekaligus dalam sekali
detak.
Pada komunikasi serial port dibagi menjadi dua kelompok. yaitu Data
dan DCE seperti modem, plotter, scanner. sedangkan contoh dan DTE seperti
Terminal di komputer. Spesifikasi elektronik dan serial port berdasarkan pada
Electronic industry Association (EIA), seperti berikut:
- “Space” (logika 0) merupakan tegangan antara +3 hingga +25V.
- “Mark” (logika 1) merupakan tegangan antar -3 hingga -25V.
- Daerah antara +3V hingga -3V tidak didefinisikan atau tidak terpakai.
- Tegangan open circuit tidak holeh melebihi 25V.
- Arus hubungan singkat tidak botch melebihi 500mA.
2.5.1 Konverter Logika RS232
Jika peralatan yang digunakan dengan logika TTL, maka sinyal port serial
harus dikonversikan terlehih dahulu ke pulsa TTL sebelum digunakan dan
sebaliknya sinyal dan peralatan harus dikonversikan ke logika RS232 sebelum
dimasukkan ke port serial. Konverter yang paling mudah digunakan adalah
MAX232. Di dalam IC mi terdapat charge Pump yang akan membangkitkan +10
Volt dan -10 Volt dan sumber +5 Volt. Dalam IC DIP (Dual In-Line Package) 16
pin (8 pin x 2 baris) ini terdapat 2 buah transmitter dan 2 receiver. Sering juga
chip DS275 digunakan sebagai buffer serial.
2.6 Pre Hypertext Preprocessor (PHP)
PHP adalah singkatan dan Pre Hypertext Preprocessor. Ia merupakan
bahasa berbentuk script yang ditempatkan pada server dan diproses pada server
(sever-side). Hasilnya yang akan dikirimkan ke client, tempat pemakai
Secara khusus. PHP dirancang untuk membentuk web dinamis. Artinya.
dapat membentuk suatu tampilan berdasarkan permintaan terkini seperti
menampilkan isi database ke halaman web. Keunggulan server-side antara lain:
Tidak diperlukan kompatibilitas browser atau harus rnenggunakan
browser tertentu, karena serverlah yang akan mengerjakan script PHP.
Hasil yang dikirimkan kembali ke browser umumnya bersifat teks atau
gambar saja sehingga pasti dikenal oleh browser apapun.
Dapat memanfaatkan sumber-sumber aplikasi yang dimiliki oleh server,
misalnya koneksi ke database.
Script tidak dapat “diintip” dengan menggunakan fasilitas view HTML
source.
Ada 2 cara yang biasa digunakan untuk menuliskan script PHP, yaitu :
a. Embeded Script: yaitu meletakkan script PHP diantara tag-tag HTML
b. Non Embeded Script: yaitu pembuatan program murni PHP, dimana
Kode PHP diawali dengan “<?php” dan diakhiri dengan “?>”. Pasangan kedua
kode inilah yang berfungsi sebagai tag kode PHP. Berdasarkan tag inilah, pihak
server dapat memahami kode PHP dan kemudian memprosesnya lalu hasilnya
dikirim ke browser. Model kerja PHP yaitu ketika berkas PHP yang diminta
didapatkan oleh web server, isinya segera dikirimkan ke mesin PHP dan mesin
inilah yang memproses dan memberikan hasilnya (berupa kode HTML) ke web
server, selanjutnya web server menyampaikan ke client.
Salah satu kelebihan dan PHP adalah mampu berkomunikasi dengan berbagai
database. Dengan demikian. menampilkan data yang bersifat dinamis yang
diambil dan database, merupakan hal yang mudah untuk diimplementasikan. Oleh
sebab itu PHP sangat cocok untuk membangun halaman-halaman web dinamis.
Pada saat ini PHP sudah dapat berkomunikasi dengan berbagai database
meskipun dengan kelengkapan yang berbeda-beda seperti:
MySQL.
Microsoft Access.
Interbase.
dB(Visual FoxPro, Visual dBase, dan semacamnya).
Oracle.
2.7 Mengkoneksi Database Melalui PHP
PHP menyediakan sejumlah fungsi berawalan “odbc_” yang bermanfaat
untuk mengakses database melalul ODBC. Beberapa diantaranya dibahas di
2.7.1 Fungsi odbc_connect
Fungsi ini berguna untuk menghubungkan nama sumber data ODBC.
Format pemanggilnya:
odbc_connect( nama_sumber_data, nama pemakai, password)
Argumen pertama berupa DSN. Argumen kedua berupa nama pemakai database
dan argumen ketiga berupa password pemakai. Bila sumber data tidak dilengkapi
pemakai dan password, keduanya perlu diisi dengan string kosong.
Fungsi ini menghasilkan nilai balik bertipe interger, berupa pengenal
hubungan ke sumber data. Fungsi ini menghasilkan nilal FALSE kalau hubungan
gagal dibuka.
2.7.2 Fungsi odbc_close
Fungsi ini berguna untuk menutup hubungan dengan sumber data ODBC. Format
pemanggilnya:
odbc_close( pengenal_huhungan)
Dalam hal ini, pengenal_hubungan adalah nilai yang dihasilkan oleh
odbc_connect.
2.7.3 Fungsi odbc_do atau odbc_exec
Fungsi ini berguna untuk mengeksekusi permintaan yang terdapat pada
string_query terhadap hubungan yang dinyatakan dalam pengenal_hubungan.
Format pemanggilnya:
odbc_do(pengenal_hubungan, string_query)
odbc_exec( pengenal_hubungan. string_query)
Dalam hal ini pengenal_hubungan adalah nilai yang dihasilkan oleh
Fungsi odbc_do atau odbc_exec memberikan nilai balik bertipe integer
yang menyatakan pengenal hasil. Nilai ini yang digunakan sebagai acuan pada
berhagai fungsi, seperti odbc_fetch_row dan odbc_num_fields. Bila nilai balik
berupa FALSE. itu menandakan bahwa permintaan yang dilakukan tidak valid.
2.7.4 Fungsi odbc_num_fields
Fungsi ini berguna untuk memperoleh jumlah field yang terdapat pada
suatu hasil. Format pemanggialan fungsi ini:
odbc_num_fields( pengenal_hasil)
Dalam hal ini, pengenal_hasil adalah nilai yang diperoleh dan fungsi odbc_do
atau odbc_exec. Bila terjadi sesuatu kesalahan, fungsi memberikan nilai balik
berupa FALSE.
2.7.5 Fungsi odbc_num_rows
Fungsi ini berguna untuk memperoleh jumlah record yang terdapat pada
suatu hasil. Pada perintah INSERT, DELETE, dan UPDATE fungsi ini
menghasilkan jumlah record yang dipengaruhi oleh pernyataan-pernyataan
tersebut. Format pemanggil fungsi ini:
odbc_num_rows( pengenal_hasil)
pada beberapa driver, fungsi ini terkadang memberikan nilai FALSE
sesudah pernyataan SELECT dilakukan. Jadi odbc_num_records belum tentu
menghasilkan jumlah record hasil SELECT. Dalam hal ini pengenal_hasil adalah
nilai yang diperoleh dari fungsi odbc_do atau odbc_exec.
2.7.6 Fungsi odbc_field_name
Fungsi ini berguna untuk memperoleh panjang kolom. Format pemanggilnya:
Dalam hal ini pengenal_hasil adalah nilai yang diperoleh dan fungsi odbc_do atau
odbc_exec dan nomor_kolom adalah nomor kolom dan nama kolom yang ingin
diperoleh. Penomoran kolom dimulai dari 1. Fungsi ini memberikan nilai balik
FALSE kalau terjadi sesuatu kesalahan.
2.7.7 Fungsi odbc_field_len
Fungsi ini berguna untuk memperoleh panjang kolom. Format
pemanggilnya:
odbc_field_len(pengenal_hasil, nomor_kolom)
Dalam hal ini pengenal_hasil adalah nilal yang diperoleh dan fungsi odbc_do atau
odbc_exec dan nomor_kolom adalah nomor kolom. Penomoran kolom dimulai
dari 1. Fungsi ini memberikan nilai balik FALSE kalau terjadi sesuatu kesalahan.
2.7.8 Fungsi odbc_field_type
Fungsi ini berguna untuk memperoleh tipe kolom. Format pemanggilnya:
odbc_field_type( pengenal_hasil, nomor_kolom)
Dalam hal in pengenal_hasil adalah nilai yang diperoleh dan fungsi odbc_do atau
odbc_exec dan nomor_kolom adalah nomor kolom. Penomoran kolom dimulai
dari 1. Fungsi ini memberikan nilai balik FALSE kalau terjadi sesuatu kesalahan.
2.7.9 Fungsi odbc_fetch_row
Fungsi ini berguna untuk memperoleh sebuah baris dan sebuah himpunan
hasil. Format pemanggilnya:
Odbc_fetch_row(pengenal_hasil, nomor_baris)
Dalam hal ini pengenal_hasil adalah nilal yang diperoleh dan fungsi odbc_do atau
Argumen kedua bersifat optional. Jika tidak disertakan, baris berikutnya yang
akan diproses.
Hasil fungsi ini berupa TRUE kalau baris ditemukan atau FALSE kalau
terjadi sesuatu kesalahan. Hasil TRUE menyatakan posisi kursor pada baris yang
dituju. Untuk mendapatkan data baris, diperlukan menggunakan fungsi
odbc_result.
2.7.10 Fungsi odbc_fetch_into
Fungsi ini mempunyai kegunaan seperti pada odbc_fetch_row, tetapi hasilnya
dikirim ke array, bentuk pemanggilnya:
odbc_fetch_into( pengenal_hasil, nomor_baris, array_field)
Dalam hal ini pengenal_hasil adalah nilai yang diperoleh dan fungsi odbc_do atau
odbc_exec dan nomor_baris adalah nomor baris dan baris yang ingin diperoleh.
Hasil baris akan diletakkan pada argumen ketiga (array_field). argumen ketiga ini
harus berupa referensi. Nilai balik fungsi ini berupa jumlah kolom yang dihasilkan
atau FALSE kalau terjadi sesuatu kesalahan.
2.7.11 Fungsi odbc_result
Fungsi ini mempunyai kegunaan untuk memperoleh nilai dan sebuah
kolom pada baris sekarang. Bentuk pemanggilnya:
odbc_result( pengenal_hasil, kolom)
Argumen pertama adalah nilai yang diperoleh dan fungsi odbc_do. Argumen
kedua dapat diisi dengan nomor kolom ataupun nama kolom. Penomoran kolom
dimulai dan nomor 1. nilai balik fungsi ini berupa string yang menyatakan nilai
kolom. Bila terjadi sesuatu kesalahan. nilai halik berupa FALSE
2.7.12. Fungsi odbc_result_all
Fungsi ini mempunyai kegunaan untuk menampilkan semua baris dan suatu hasil
ke browser. Bentuk pemanggilnya:
odbc_result_all(pengenal_hasil.format)
Argumen pertama adalah nilai yang diperoleh dan fungsi odbc_do. Argumen
kedua (bisa ada bisa tidak ada) berupa string yang menyatakan format tabel yang
akan dihasilkan pada browser. Nilai balik fungsi ini berupa jumlah baris yang
dihasilkan oleh fungsi odbc_do atau odbc_exec.
2.8 SQL Server 2005
Micrososft SQL Server 2005 merupakan perangkat lunak Relational
Database Management System ( RDBMS ) yang handal. Didukung untuk
mendesain proses transaksi yang besar. SQL Server 2005 bukanlah bahasa
pemrograman tetapi sub-language yang terdiri dari 30 pernyataan khusus dengan
tuas mengelola database. Pernyataan SQL server diintegrasikan pada bahasa
pemrograman yang sebenarnya seperti Visual Basic 6.0.
2.8.1 Sintak SQL Server 2005
Ada banyak sintak yang disediakan SQL Server 2005 untuk
mempermudah pengolahan data, contoh sintak dalam SQL Server 2005 adalah
sebagai berikut :
Select ( mengakses data )
Pernyataan select digunakan untuk mengakses dan mengambil data dari
SELECT [ ALLIDISTINCT ] pilih_kolom [ INTO (
tabel_baru)]
[ FROM { nama_tabel/ nama_view}]
[ WHERE klausa]
Where ( memilih baris )
Pernyataan where digunakan untuk memilih baris mana yang akan
digunakan dalam database dari suatu tabel, contoh sintak penggunaan
where :
SELECT list_kolom FROM nama_tabel WHERE kondisi
Delete ( menghapus data )
Baris-baris yang tidak terpakai dapat dihapus dengan pernyataan delete,
contoh sintak penggunaan delete :
DELETE FROM nama_tabel
WHERE syarat
Menciptakan Tabel
Tabel diciptakan melalui pernyataan create table, sebagai contoh :
CREATE TABLE nama_tabel (
ID_Barang (tipe data),
Nama_Barang (tipe data) Mengubah Struktur Tabel
Setelah suatu tabel tercipta, kadangkala perlu dilakukan perubahan struktur
tabel, hal ini dapat dilakukan dengan pernyataan ALTER TABLE, sebagai
contoh :
ALTER TABEL nama_tabel
Menambah Data
Bila data telah tercipta, pemasukan data pada SQL Server dapat dilakukan
dengan perintah insert table untuk memasukkan data dalam suatu tabel,
sebagai contoh :
INSERT INTO nama_tabel
VALUES ( kondisi )
Mengubah Data
Data yang telah tersimpan pada tabel dapat diubah dengan menggunakan
pernyataan update, sebagai contoh :
UPDATE nama_tabel
SET kolom = ‘nama_data’
WHERE syarat = ‘syarat’
SET untuk menentukan kolom yang akan diubah dan nilai
penggantinya.
WHERE menentukan kondisi dari baris-baris yang akan diganti.
Fungsi Agregate
Merupakan fungsi-fungsi yang hasilnya diambil dari proses tiap baris pada
tabel. Fungsi-fungsi tersebut adalah :
COUNT ( * ) untuk mendapatkan jumlah baris ( cacah data ).
SUM ( kolom ) untuk mendapatkan hasil penjumlahan data.
MAX ( kolom ) untuk mendapatkan nilai tertinggi ( maksimum ).
MIN ( kolom ) untuk mendapatkan nilai terendah ( minimum ).
2.9 ODBC
ODBC (Open Database Connectivity) merupakan suatu aplikasi yang
berfungsi untuk menjembatani beberapa jenis database dengan aplikasi yang
menggunakannya. ODBC menggunakan Dynamic Link Library (DLL) yang
disediakan oleh berbagai vendor Database Management System (DBMS) untuk
menyediakan layanan akses ke masing-masing jenis database. Dan bila jadi
perubahan atau perpindahan database maka tidak perlu perubahan sama sekali
pada aplikasi. Yang harus dilakukan hanyalah menyesuaikan DSN (Data Source
Name) yang terdapat pada ODBC yang diakses oleh aplikasi yang bersangkutan.
2.10 Macromedia Dreamweaver MX
Pada awalnya para web designer memakai program-program manual dalam membuat web. Dengan memasukkan satu persatu perintah HTML sehingga membuat web membutuhkan waktu yang lama, tidak efisien, terlalu rumit (salah rnemasukkan perintah program menjadi error). Akhirnya muncul program- program web yang menyediakan perintab-perintab HTML dan perintah-perintah
web lainnya dengan secara visual. Pembuatan web menjadi lebih efisien, banyak macam variasi tambahan dan lebih cepat. Salah satu program itu adalah
Macromedia Dreamweaver MX.
Gambar 2.5. Tampilan Awal Macromedia Dreaweaver MX
Dalam ruang kerja Macromedia Dreamweaver MX semua fungsi-fungsinya telah dijadikan jadi satu dalam satu Aplication Window, antara lain:
a. Document Window
Ketika membuat halaman web, Document Window adalah tempat untuk memanipulasi rancangan atan kode secara visual.
b. Document Toolbar
Panel ini memberikan akses drag and drop yang cepat untuk menampilkan semua hal di dalam Insert Menu. Pengguna dapat menyisipkan elemen, image file dan lainnya dalam bentuk apapun dengan meng-klik tunggal mouse.
c. Property Inspector
Panel kecil ini digunakan apabila memerlukan perubahan pada suatu elemen di
Docoment Windows, misalnya penebalan kata atau kalimat yang ada di Document Windows.
d. Insert Bar
ditambahkan adalah berupa kode-kode HTML yang mernungkinkan untuk mengatur hal pada obyek yang ditambahkan tadi.
e. Panel Groups
Panel Groups adalab panel-panel yang dijadikan menjadi satu kelompok. Untuk memperluas suatu kelompok panel caranya adalah dengan meng-klik panah yang terletak pada sebelah kiri dan nama pengelompokan.
f. Site Panel
Panel ini membuat berfungsi untuk menangani file dan folder pada web yang sedang dibuat. Panel ini juga memberikan Layanan untuk memperlihatkan situs,
remote dan mencoba file pada server yang bekerja pada situs tersebut. g. Main Development Area
Tempat menempatkan image dasar atau memanipulasi Javasript yang kompleks.
h. Preview/Debug In Browser
Dokumen dapat dilihat di sebuah browser sebelum menyimpannya, (dengan memilih ikon ini dan memilih sebuah browser dan daftar browser). Ketika
Dreamweaver MX di-install, maka program secara otomatis mengenali browser
mana yang di-install dan menempatkan mereka ke dalam menu dropdown.
Debugger memungkinkan pengguna untuk memeriksa syntax atau logical error
pada kode javascript. pengguna dapat menulis kode pada Code View dan kemudian menjalankan debugger untuk maju ke Iangkah selanjutnya dan memeriksa error.
i. File Status
Menampilkan menu pop-up File Status j. Reference
Sebuah ciri khusus yang sangat baik pada Dreamweaver MX adalah penambahan refrensi O’Reilly, Referensi menyediakan pilihan HTML, CSS atau Javascript. k. Code Navigation
Setelah memulai debugging kode dengan menggunakan debugger dan Dream weaver MX, dapat dilanjutkan kode Javascript dengan menggunakan Code Navigation.
l. Refresh Design View
m. Code View
Ketika menciptakan halaman web. Dreamwearer MX rnenghasilkan kode HTML di bawahnya. Tidak peduli apa yang dibuat di dalam Document Window kode tersebut pada akhimya adalah apa yang dihasilkan. Untuk melihat kode ini, klik
Code View. Melalui tampilan ini dapat dimodifikasi.
n. Design View
Elemen drag dan drop, ketikkan ke dalamnya atau sisipkan beberapa image dan atur ukurannya. Design View menyediakan representasi visual yang lebih baik daripada kode yang ada di baliknya. ini sepertinya merupakan tampilan yang akan sering digunakan.
o. Document Tile
Semua halaman web harus memiliki sebuah judul. Jika judul proyek disebut My Company”, ketikkan Welcome to My Company pada kotak input title dan tekan
enter. Sebuah judul akan ditampilkan di bagian atas Document Window. Document Title juga akan muncul di atas setiap browser window
2.11 Database
Database dipakai untuk menyimpan data sehingga dapat dimanipulasi dengan mudah. Tanpa database, programmer akan membuat prosedur-prosedur yang rumit untuk memanipulasi data. Dengan menggunakan PHP dalam pembangunan web. membuat semua model database seperti Microsoft® Access, Microsoft® SQL Server. Oracle, dan sebagainya dapat diakses sejauh database
tersebut mempunyai hubungan dengan ODBC (Open Data Base Conectivity) yaitu interface pemrograman yang memungkinkan aplikasi mengakses data dalam sistem manajemen database yang menggunakan standar akses SQL (Structured Query Language).
2.11.1 Pengertian Database
Database dipakai untuk aplikasi sederhana sampai yang rumit dimana rnelibatkan beberapa user. Oleh karena itu Database dibagi sesuai dengan kompleksitasnya. Ada dua model Database. yaitu:
a. Database yang berdiri sendiri (Stand alone). Merupakan database yang sangat sederhana karena disimpan dalam sistem file lokal dan mengakses pada mesin yang sama. Database ini hanya dipakai untuk satu aplikasi saja.
b. Database terhagi (File share). Hampir sama dengan database stand-alone, tetapi dapat diakses oleh beberapa user. Database ini akan mengalami masalah jika aplikasi memerlukan banyak perhitungan dan pada saat yang bersamaan ada pengaksesan ke dalam database.
2.11.2 Entity Relation Diagram (ERD)
Sebuah ERD mendokumentasikan data sebuah informasi dengan cara menentukan data-data apa yang terdapat dalam setiap entity dan bagaimana relationship (hubungan) antara sebuah entity dengan yang lainnya.
Di bawab ini akan dijelaskan beberapa hal yang dapat digunakan dalam ERD:
a. Entity (Obyek data) adalah “sesuatu” atau “obyek” yang ada dalam dunia nyata yang dapat dibedakan dan obyek Iainnya. Entity dapat berupa environmental element (elemen di sekitar sistem yang berhubungan dengan sistem tersebut),
resource (sumber daya yang herhuhungan dengan sistem yang ada). Entity
digambarkan dengan (kata benda tunggal) di dalamnya.
b. Attribute adalah menguraikan bagian-bagian yang ada berdasarkan jumlah dan entity yang mempunyai tipe yang sama dan kemudian membagi-bagikan bagian-bagian tersebut.
c. Identifier ialah atribut yang mengidentifikasikan sebuah entity secara unik. d. Relationship ialah hubtingan yang terjadi antara dua buah entity dan digambarkan dengan garis dan sebuah kata kerja disampingnya.
e. Connectivity ialah jumlah yang menunjukkan berapa kali sebuah entity muncul dalam relasi dengan entity lainnya. Ada 3 jenis hubungan, yaitu:
1. One-to-one relationship
dengan satu anggota entity pada entity yang berbeda
Relationship_1 Entity_1
Entity_2
Gambar 2.6. One To One Relationship
2. One-to-many
Merupakan hubungan antara salah satu anggota entity yang satu dengan beberapa anggota entity yang lainnya
Relationship_1 Entity_1
Entity_2
Gambar 2.7. One To Many Relationship
3. Many-to-many
Merupakan hubungan antara beberapa anggota entity yang satu dengan beberapa anggota entity yang lainnya
Relationship_1 Entity_1
Entity_2
BAB III
ANALISA DAN PERENCANAAN SISTEM
Simulasi sistem pengaturan dan monitoring pintu air melalui internet dan
tugas akhir ini adalah sebuah simulasi sistem yang dapat digunakan untuk
membantu dan memberikan kemudahan bagi penjaga pintu air untuk bisa
mengontrol ketinggian air sungai khususnya pada daerah hilir atau dataran rendah
agar tidak meluap (banjir). Simulasi sistem pengaturan dan monitoring pintu air
melalui internet ini dalam penerapannya terbagi menjadi tiga proses yaitu:
- Monitoring: Proses untuk menampilkan data level ketinggian permukaan air
sungai.
- Data Acquisition: Proses pengambilan data level ketinggian permukaan air
sehingga pengawas pintu air dapat melihat data-data atau informasi-informasi
ketinggian air terukur yang telah tersimpan dalam database.
- Controlling: Pengawas dapat mengontrol pintu air dengan herdasarkan data- data
level ketinggian air yang didapat.
Pada bab ini merupakan bagian perencanaan dan bagian pembuatan
perangkat lunak dan perangkat keras, yang akan dibahas tentang langkah-langkah
perencanaan dan pembuatan tugas akhir, yang merupakan pokok bahasan utama
dalam pembuatan tugas akhir ini.
3.1 Analisa Sistem
Pada bab ini, dibuat perancangan dan pembuatan dari sistem pengendalian
pintu air sungai yang semula dikendalikan secara manual yang kemudian akan di
otomatisasikan berbasiskan online. Bagian pembuatan perangkat lunak meliputi
sedangkan untuk bagian pembuatan perangkat keras yang meliputi perangkat
mekanik serta perangkat elektronik. Pembuatan perangkat mekanik terdiri dari
desain mengenai miniatur itu sendiri yaitu pembuatan miniatur sungai dan pintu
air sungai. Sedangkan pembuatan perangkat keras elektronik terdiri dari
pembuatan rangkaian sistem mikrokontroler AT89S51, rangkaian sensor air dan
rangkaian driver motor.
3.2 Perancangan Sistem
Sub bab ini menjelaskan mengenai proses desain perangkat lunak yang
akan dibuat dan hardware yang digunakan. Proses desain sistem dalam sub-bab
ini akan dibagi menjadi beberapa tahap yaitu : alur umum sistem, spesifikasi
kebutuhan sistem, alur umum, flowchart program PHP, perancangan data,
perancangan antarmuka dan perancangan hardware.
Aplikasi ini merupakan sistem yang bisa mempermudah pihak pengelola
pintu air setempat dalam hal kepraktisan, efisien membutuhkan waktu yang relatif
singkat untuk menggerakkan pintu air. Adapun sub-sub perancangan yang akan
dilakukan untuk merancang sistem ini, sub perancangan tersebut meliputi :
Manajemen Umum
Tambah, hapus, edit pengguna (operator).
Menentukan konfigurasi pada aplikasi sistem secara otomatis atau
manual.
Laporan
Format laporan dapat ditampilkan berupa teks.
Mekanisme dan Penerapan Sistem
Petugas mengatur aplikasi web client pada ketinggian level air (0-10)
tertentu maka pintu air melakukan aksi buka atau tutup (0%-100%)
sesuai pengaturan pintu yang telah ditetapkan.
Jika level air telah mencapai level 10 (maksimal) alarm akan bunyi.
3.2.1 Alur Umum Sistem
Pembuatan alat pengaturan pintu air sungai di perairan pasang surut
dengan pengoperasian berbasis mikrokontroler AT29S51 terdiri dari 2 bagian
yaitu pembuatan perangkat keras (hardware) dan perangkat lunak (software).
Gambaran secara umum tugas akhir ini dapat dilihat dari gambar 3.1.
Gambar 3.1 Diagram sistem pengaturan pintu air
Prinsip kerja dari alat ini adalah sensor level air menerima perubahan
ketinggian permukaan air sungai dan masukan dari sensor akan diteruskan ke
rangkain mikrokontroer AT89S51. Pada rangkaian mikrokontroler, data analog
yang diterima dihubungkan dengan pin pada port yang dimiliki mikrokontroler.
Dengan menggunakan program Assembly mikrokontroler, data yang diterima dari Miniatur
sensor level air, diproses atau diolah PC kemudian dikirim melalui port ke
rangkaian penggerak motor pintu air. Penggerak motor pintu air menggunakan
tegangan sebesar 5 volt DC pada motor agar penggerak motor pintu air dapat
bekerja sesuai kondisi pasang surutnya air sungai.
3.2.2 Flowchart Diagram
Perancangan flowchart digunakan untuk menggambarkan sejumlah proses
terstruktur dalam sistem, berorientasikan pada aliran proses yang terjadi. Demi
memudahkan pembaca orang awam dalam mengerti isi dari web client aplikasi
ini. Adapun perancangan aplikasi web client sistem pengaturan pintu air ini
adalah sebagai berikut:
3.2.2.1Flowchart Login
Login hanya bisa dilakukan oleh pegawai yang sudah terdaftar (operator).
Login ini dilakukan oleh pegawai yang akan melaksanakan tugasnya sebagai
penjaga pintu air sekaligus mengontrol pergerakan pintu air pada saat kondisi
tertentu.
Gambar 3.2 Flowchart Login Pada web client
3.2.2.2Flowchart Buka Tutup Pintu Air
Flowchart buka pintu air ini menjelaskan tentang informasi yang diterima
oleh sensor level air, yang sebelumnya harus diatur lewat aplikasi web client pada
ketinggian air berapa pintu air melakukan aksi setelah itu sistem akan berjalan
secara otomatis.
Gambar 3.3 Flowchart Buka Tutup Pintu Air
3.2.3 Diagram Berjenjang
Pada diagram berjenjang terdapat beberapa level dan beberapa sub
proses diantaranya : pada level 0 terdapat tiga proses yang terdiri dari proses data,
pintu air, dan proses pembuatan laporan. Pada masing – masing proses ini
memiliki sub proses juga untuk lebih jelasnya lihat Gambar 3.4. T
Ketinggian pintu air yang diinginkan
B lebih rendah dari A
End
A = posisi pintu yang diinginkan B = posisi pintu sekarang
Gambar 3.4 Diagram berjenjang
3.2.4 Spesifikasi Kebutuhan Sistem
Tabel dibawah ini berisi kebutuhan-kebutuhan dari perangkat sistem buka
tutup pintu air otomatis. Penjelasan mengenai tabel-tabel adalah sebagai berikut :
ReqID : setiap kebutuhan memiliki ID yang unik. Penjelasan mengenai ID
sebagai berikut :
1. Karakter pertama : ‘F’ atau ‘N’ mempresentasikan/ mewakili
fungsional atau nonfungsional.
2. Group karakter kedua terdiri dari dua huruf untuk kategori : IA untuk
kategori internal appication dan EA untuk external application.
Description : setiap kebutuhan memiliki sebuah/mewakili SMART
description.
Priority : setiap kebutuhan memiliki prioritas : ”Must” – menandakan
sebuah kebutuhan yang harus diimplementasikan. “Optional” –
menandakan sebuah kebutuhan yang akan diimplementasikan hanya jika
1. Kebutuhan Fungsional
Kebutuhan fungsional menjelaskan layanan yang dapat diberikan atau
fungsi-fungsi yang ada pada sistem yang dibangun.
Kebutuhan Internal
Adalah faktor-faktor yang dapat dilihat/ diobservasi oleh pengembang dari
sistem, contohnya :
Redibility
Testability
Tabel 3.1 Kebutuhan Internal
ReqID Description Priority
FIA01 Pengembang dapat menambahkan fitur/ software
baru terhadap sistem.
Optional
FIA02 Pengembang dapat merubah sistem operasi aplikasi.
Optional
Kebutuhan External
Adalah faktor-faktor yang dapat diobservasi oleh stakeholder :
Contohnya :
Corretness
Robustness
Performance
Tabel 3.2 Kebutuhan External
ReqID Description Priority
FEA01 Pengguna mampu melakukan login/ logout
pada aplikasi di komputer.
Must
FEA02 Pengguna dapat melakukan penyimpanan
setting pada aplikasi.
Must
FEA03 Pengguna dapat melakukan setting mode
otomatis atau manual pada aplikasi.
Must
FEA04 Pengguna dapat mengolah data pegawai(menambah, merubah, menghapus).
FEA05 Pengguna dapat memantau keadaan air dan pintu air secara realtime.
Must
FEA06 Pengguna dapat melihat laporan tentang keadaan air dan pintu secara berkala.
Optional
FEA07 Pengguna dapat mencetak hasil laporan pemantauan pada database.
Optional
2. Kebutuhan Nonfungsional
Adalah batasan-batasan sistem atau batasan-batasan pada saat proses
pengembangan.
Tabel 3.3 Kebutuhan Nonfungsional
ReqID Name Description Priority N01 Platform Sistem diimplementasikan dengan
PHP
Must
N02 Platform Web Optional
N03 Performance Kinerja mokrokontroler dikontrol menggunakan aplikasi dan web client.
Must
N04 Performance Sistem mampu merespons posisi air dan pintu.
Must
N05 Usability Sistem dapat digunakan dengan mudah.
Must
N06 Reliability Tingkat keakuratan 90%. Must
N07 Robustness Sistem mampu bertahan (tidak hang) ketika pintu air bergerak dan posisi air mengalami perubahan di waktu yang sama.
Must
N08 Deployment Sistem sudah harus melewati unit test sebelum di deploy.
Must
N09 Deployment Hasil dari coding harus didokumentasikan.
Must
3.2.5 Context Diagram
Merupakan pengembangan proses yang tertinggi dalam tingkatan (level)
dan berhubungan dengan beberapa entity yang terlibat langsung dengan
pengolahan data dalam sistem yang dibuat. Context diagram yang dimaksud
mengacu pada Gambar 3.1 dimana proses terhubung dengan 2 (dua) entity yaitu
Gambar 3.5 Diagram Context
3.2.6 Data Flow Diagram
Dari diagram berjenjang di atas maka bisa digambarkan lebih detail lagi
untuk proses pada masing-masing level dengan membuat DFD (Data Flow
Diagram). Data Flow Diagram (DFD) adalah suatu diagram yang menggunakan
notasi-notasi untuk menggambarkan arus dari data sistem, yang penggunaannya
sangat membantu untuk memahami sistem secara logika, tersruktur dan jelas.
Data Flow Diagram menggambarkan aliran data yang bergerak dari dan ke dalam
proses. Untuk membuat DFD penulis menggunakan tools yaitu Power Designer 6
Process Analyst.
3.2.6.1DFD Level 0
DFD level 0 merupakan hasil decompose dari DFD level context. Untuk
Gambar 3.6. DFD Level 0
3.2.6.2 DFD Level 1 Sub Buka Pintu
DFD level 1 sub buka pintu merupakan hasil decompose dari proses buka
pintu DFD level 0. Untuk lebih jelasnya bisa dilihat pada gambar berikut ini:
Gambar 3.7 DFD Level 1 Sub Buka Pintu
3.2.6.3DFD Level 1 Sub Tutup Pintu
DFD level 1 sub tutup pintu merupakan hasil decompose dari proses tutup
Gambar 3.8 DFD Level 1 Sub Tutup Pintu
3.2.7 Entity Relationship Diagram
Entity relationship diagram (ERD) merupakan suatau rancangan
pemodelan struktur database yang akan dibuat dengan menunjukkan hubungan
atau relasi yang terjadi. Ada 2 macam perancangan ERD yang digunakan dalam
penyusunan tugas akhir ini. Pada perancangan data ini menjelaskan tentang 2
model data yaitu : Model Data Konseptual/ Conceptual Data Model dan Model
Data Fisik/ Physical Data Model. Untuk lebih jelasnya akan dijelaskan dibawah
ini.
3.2.7.1CDM (Conceptual Data Model)
Model data konseptual pada aplikasi ini mempresentasikan rancangan
basis data konseptual di aplikasi. Berikut ini model data konseptual yang
digambar dengan menggunakan perangkat lunak Power Designer 12, lebih
Gambar 3.9 Conceptual Data Model
3.2.7.2PDM (Physical Data Model)
Model data ini dibuat dengan cara me-generete diagram model data
konseptual di atas. Diagram data fisik ini menghasilkan tabel-tabel yang akan
digunakan dalam implementasi database pada aplikasi.
Gambar 3.10 Physical Data Model
3.3 Perancangan Hardware
Pada bagian perancangan tugas akhir ini dapat digambarkan diagram blok
MINIATUR
KONTROLER
SENSOR RS 232 LEVEL
Gambar 3.11 Diagram blok sistem buka tutup pintu air
Pada Gambar dapat diketahui hardware yang digunakan terhubung pada komputer
(PC) menggunakan komunikasi serial RS 232, sehingga pada hardware tersebut
juga memerlukan sebuah input/ output serial RS 232 sebagai penerjemah agar
dapat berkomunikasi dengan komputer. Data yang telah didapat kemudian
diteruskan pada Mikrokontroler AT89S51 dan kemudian diproses untuk
membuka/ menutup pintu air sesuai dengan perintah yang diberikan oleh
komputer (PC).
3.3.1 Diagram Sistem Kontrol
Sistem pengontrolan yang digunakan pada sistem buka tutup pintu air ini
menggunakan metode sistem kendali lingkar tertutup (Closed Loop Control) yang
pengendaliannya menggunakan sensor untuk mendeteksi/ mengukur keluaran
yang akan dikembalikan sebagai umpan balik (feed back) untuk dibandingkan
dengan masukan selaku referensi atau titik penyetelan (setting point).
set point
3.3.2 Perancangan Mikrokontroler AT89S51 dengan RS232
Adapun rancangan penggunaan mikrokontroler khususnya penggunaan
port-port pada mikrokontroler AT89S51 yang nantinya akan terhubung dengan
serial RS 232, rancangan ini memudahkan pengerjaan yang nantinya akan
diterapkan pada mikrokontroler.
Gambar 3.13 Koneksi pin AT89S51 dengan RS 232
Pada Gambar dapat diketahui bahwa perancangan hardware untuk realisasi tugas
akhir ini menggunakan modul utama berupa minimum sistem AT89S51. Port 0
pada mikrokontroler digunakan sebagai port output untuk menghidupkan lampu.
Port 3 sebagai port fungsi spesial, misal untuk komunikasi serial, interupt, timer/
counter, dan external data memory write/ read strobe. Untuk sistem peralatan ini
fungsi yang dipakai adalah komunikasi serial, pada port 3.0 sebagai RXD dan
Tabel 3.4 Tabel Fungsi Kaki Mikrokontroler
Port Mikroontroler Fungsi
P0.1 Buka Pintu Air P0.2 Tutup Pintu Air P0.5 Sensor Ketinggian Pintu P0.6 Sensor Ketinggian Air
P2.0 Data ADC
Pembuatan miniatur sungai ini digunakan untuk memberikan simulasi
aliran sungai dari hulu ke hilir, sehingga dapat diketahui bagaimana kinerja dari
bagian-bagian yang terdapat pada simulasi sistem pengaturan dan monitoring
pintu air.
Pembuatan miniatur ini menggunakan bahan dasar yaitu akrilik ketebalan
3 mm dan menggunakan satu buah box plastic. Desain dari miniatur ini berbentuk
persegi panjang dimana pada masing-masing ujungnya terdapat lubang sebagai
masuknya air dan keluarnya air. Satu buah box plastic berfungsi sebagai tempat
pembuangan air dari miniatur, selain itu juga terdapat pompa air yang diletakkan
didalam box plastic.
Gambar 3.14 Miniatur sistem buka tutup pintu air
3.3.3.1Sistem Penggerak
Miniatur pintu penggerak ini akan digerakkan dengan sebuah motor DC
yang telah dilengkapi oleh gearbox. Dalam hal ini motor yag telah dilengkapi
gearbox tidak bekerja sendirian karena motor gearbox tersebut dilengkapi dengan
gear dan as penggerak pada pintu air dapat digerakkan dengan motor gearbox,
sehingga posisi dari pintu air dapat diatur.
3.3.3.2Input Sensor
Sensor yang digunakan dalam plant miniatur pintu air sungai ini, baik
sensor ketinggian air maupun sensor posisi pintu air adalah potensiometer yang
membedakan adalah jika sensor ketinggian air menggunakan potensiometer putar
sedangkan untuk sensor posisi pintu menggunakan potensiometer geser. Disini
ID PEGAWAI
PASSWORD
yang sesuai sebagai inputan ke ADC yang nantinya akan mengeluarkan nilai
digital yang akan digunakan sebagai indikator.
Cara kerja dari sensor ketinggian air ini yaitu sensor akan membaca
perubahan ketinggian air dari pelampung yang terhubung ke potensiometer.
Pelampung yang terdorong oleh tekanan air akan bergerak ke atas maupun ke
bawah dan akan memutar potensiometer sehingga potensiometer akan
memberikan perubahan nilai tegangan sesuai dengan besar kecilnya perubahan
nilai resistansinya. Sama halnya dengan cara kerja sensor posisi pintu yaitu sensor
akan membaca perubahan posisi pintu yaitu setiap gerakan naik/ turun pintu yang
langsung terhubung dengan sensor akan meggesser pontensiometer sehingga
potensio akan memberikan perubahan nilai tegangan sesuai besar kecilnya
perubahn nilai resistensinya.
3.4 Perancangan Antarmuka Perangkat Lunak
Perancangan antarmuka merupakan perancangan halaman aplikasi web
client yang akan berinteraksi langsung dengan pengguna, rancangan ini di desain
sesederhana mungkin untuk memudahkan pengguna untuk pengoperasikan
aplikasi ini, ada beberapa rancangan antarmuka yang dapat dijelaskan sebagai
berikut :
Gambar 3.15 Form Login
KETINGGIAN AIR : 100% SETTING PINTU AIR
Setelah berhasil melewati login pegawai akan memasuki form utama sebagai berikut :
Gambar 3.16 Form Monitoring
Dari form utama jika masuk menu setting akan muncul form sebagai berikut :
Gambar 3.17 FormSetting Pintu
Dari form pegawai jika masuk menu pegawai akan muncul form sebagai berikut : KETINGGIAN AIR PINTU AIR
100% 100%
KETINGGIAN AIR PINTU AIR
Gambar 3.18 Form pegawai
Dari form pegawai jika masuk menu laporan akan muncul form sebagai berikut :
Gambar 3.19 Form laporan
ID_PEG NAMA_PEG ALAMAT_PEG JENIS_KELAMIN_PEG
KODE_LAP TANGGAL JAM POSISI_AIR POSISI_PINTU PEGAWAI UPDATE
NEW DELETE
BAB IV
IMPELEMENTASI SISTEM
Pada Bab IV ini akan dibahas mengenai implementasi dari rancangan
sistem yang telah dibuat pada bab III. Bagian implementasi sistem kali ini
meliputi lingkungan implementasi, implemantasi data, implementasi proses,
implementasi antar muka, dan impelementasi alat peraga.
4.1 Implementasi Lingkungan
Pada bagian ini akan dijelaskan mengenai perangkat keras dan perangkat
lunak yang digunakan pada implementasi sistem kali ini.
Perangkat keras :
- 1 buah laptop berprosesor Intel Atom N280 1.66 Ghz
- SDRAM DDR2 1 GB PC-6400
- Harddisk 160 GB
- Miniatur simulasi pintu air(perangkat mekanik serta perangkat elektronik).
- USB converter RS 232.
- Webcam Logitech QuickCam For Notebook Pro
Perangkat perangkat lunak :
- Sistem operasi Microsoft Windows XP Home Edition service pack 3.
- Assembly sebagai bahasa pemograman untuk memprogram
mikrokontroler.
- PHP sebagai bahasa pemograman yang digunakan untuk aplikasi web