contoh pararel php
TRANSCRIPT
5/7/2018 Contoh Pararel PHP - slidepdf.com
http://slidepdf.com/reader/full/contoh-pararel-php-559aba8d81c05 1/15
Laporan Akhir UTS Project
(05 Oktober 2002)
Web Based Motor Control
Disusun oleh :
Wira Sanjaya ( 23400050 )Anthony Muliadi ( 23400069 )
Ari Gunawan ( 23400121 )Stefanus Feno ( 23400165 )
Jurusan Teknik ElektroFakultas Teknologi IndustriUniversitas Kristen Petra
Surabaya2002
5/7/2018 Contoh Pararel PHP - slidepdf.com
http://slidepdf.com/reader/full/contoh-pararel-php-559aba8d81c05 2/15
1
1. PendahuluanPengontrolan peralatan elektronik dengan WEB, telah banyak dikembangkan oleh
sebagian orang yang tertarik dalam aplikasi pemograman yang berbasis WEB dan
elektronika tentunya. Pengontrolan melalui WEB mempunyai banyak keuntungan,
dimana dapat mengatasi jarak dan waktu, karena kita dapat mengontrol dimana saja dan
kapan saja. Untuk dapat mengkontrolnya, kita membutuhkan suatu bahasa pemograman
yang mendukung aplikasi yang berbasis WEB, seperti html, jsp, visual basic, php, asp,
cgi dan sebagainya.
Pada kesempatan ini kami berkerja dalam suatu team, mencoba merealisasi pengontrolan
yang berbasis pada WEB yang juga merupakan tugas dalam mata kuliah Project Jurusan
Teknik Elektronika Universitas Kristen Petra Surabaya. Pengontrolan motor H-bridge
kami lakukan dengan hubungan antar koneksi client dan server dalam suatu jaringan
internet, dimana client dapat mengontrol motor H-Bridge yang terhubung pada server.
Disini kami menghubungkan motor H-Bridge pada parallel port yang kemudian
dijalankan (execute) dengan program Turbo C dan diakses dengan PHP untuk aplikasi
pada WEB serta server yang digunakan adalah apache.
Pelaksanaan dalam merealisasikan pengontrollan yang berbasis WEB, team kami dibagi
menjadi 2 bagian (dalam mencari data, referensi dan informasi), 2 orang untuk Hardware
dan 2 orang untuk Software. Pembuatan Hardware dan Software kami lakukan dengan
bersama-sama
2. Spesifikasi Sistem
A. Web Enable
Pengontrolan motor H - Bridge, menggunakan hubungan interkoneksi client - server
melalui Web Browser. Untuk mengakses file HTML dan PHP kami menggunakan
Internet Explorer 5.0 dan Server Apache, yang kemudian mengexecute file EXE untuk
menjalankan motor H - Bridge yang terhubung pada parallel port (LPT1).
B. Output Port
Untuk parallel port yang digunakan adalah LPT1 dengan address 378h. Untuk
menggerakkan motor, data dioutputkan ke parallel port dengan nilai tertentu yangdiinginkan dalam bentuk desimal.
C. Command
Perintah yang digunakan untuk mengexecute file EXE melalui Web, kami menggunakan
PHP 4.1.1 dan perintah untuk mengeluarkan data ke parallel port pada file EXE dibuat
dengan bahasa pemograman Turbo C. Perintah - perintah tersebut akan dijelaskan secara
terinci pada bagian Software.
D. Rangkaian
Pada proses awal, kami melakukan pengujian terhadap program dengan menghubungkan parallel port ke Hardware LED pada masing - masing pinnya (D0 - D7), yang kemudian
untuk tahap selanjutnya direalisasikan dengan rangkaian motor H - Bridge yang akan
dijelaskan pada bagian Hardware.
5/7/2018 Contoh Pararel PHP - slidepdf.com
http://slidepdf.com/reader/full/contoh-pararel-php-559aba8d81c05 3/15
2
E. Operating System
Server Apache yang digunakan dalam aplikasi ini adalah dalam Windows Operating
System khususnya Windows 98.
3. Hardware
A. Rangkaian H-Bridge
Karakteristik transistor yang digunakan BD 140
Ic maks 405 mA - 2 A
hfe 25 – 50
Rangkaian H-Bridge
5/7/2018 Contoh Pararel PHP - slidepdf.com
http://slidepdf.com/reader/full/contoh-pararel-php-559aba8d81c05 4/15
3
Rangkaian H-Bridge untuk Satu Arah Putaran
Vsaturasi pada transistor = 0.2 Volt, Vmotor = 3 Volt, Vcc = 5 Volt dan Imotor = 200
mA (tanpa beban), maka diperoleh harga Rk.
Ic = (hfe x Ib)+ Iceo (Iceo dapat diabaikan), maka diperoleh harga Ib, R1 dan R2.
B. Inverting
Inverting menggunakan XNOR untuk mengatasi input kembar pada switching
A B Output
0 0 1
0 1 0
1 0 0
1 1 1
5/7/2018 Contoh Pararel PHP - slidepdf.com
http://slidepdf.com/reader/full/contoh-pararel-php-559aba8d81c05 5/15
4
Table kebenaran XNOR
Rangkaian H-Bridge didisain aktif pada kondisi Low (transistor bersifat saturasi),
sehingga jika input pada switching berharga 1 maka motor tidak akan jalan. Bila terjadi
input yang kembar pada switching, maka output yang terhubung pada switching akanselalu berharga 1 (motor tidak akan jalan, transistor bersifat cut off)
C. Parallel port
Pin pada parallel port
Arus source (Ioh) 2.6 mA dan arus sink (Iol) 24 mA.
Data yang dikeluarkan akan dihubungkan dengan 74LS374 octal latch yang berfungsi
mempertahankan data pada saat data dikirim ke parallel port dan bila ada data baru yang
dikirimkan ke parallel port, maka data tersebut akan langsung menginterupt rangkaian
untuk data yang baru, karena program execute akan menjalankan data lama sampai
selesai, bila ada data baru maka data pertama tetap dijalankan dan tidak dapat diinterupt
oleh data baru.
5/7/2018 Contoh Pararel PHP - slidepdf.com
http://slidepdf.com/reader/full/contoh-pararel-php-559aba8d81c05 6/15
5
Output Address yang digunakan untuk mengeluarkan data adalah 0x378 (nilai dalamheksadesimal). Parallel port yang digunakan adalah LPT1.
4. Software
A. Flow Diagram
B. Arsitektur Software
5/7/2018 Contoh Pararel PHP - slidepdf.com
http://slidepdf.com/reader/full/contoh-pararel-php-559aba8d81c05 7/15
6
C. PHP
PHP adalah suatu bahasa pemograman open source pada aplikasi WEB, dimana script ini
bersifat server-side yang ditambahkan ke dalam tag-tag HTML. Skript ini membuatsuatu halaman WEB tidak lagi bersifat statis tetapi juga bersifat dinamis. PHP juga
mempunyai keuntungan yaitu dapat mendukung aplikasi CGI, walaupun tanpa
menggunakan program CGI, sehingga client dapat mengexecute program exe yang
digunakan untuk menjalankan motor H-Bridge pada server. Script PHP juga dapat
berinteraksi dengan bahasa pemograman, seperti Turbo C, Delphi, perl dan lainnya.Contoh program untuk memanggil file move.php :
<?
header("location : ..\cgi-bin\move.php"); /*menuju ke file move.php
?>
Kemudian untuk mengexecute file exe menggunkan perntah exec. Contoh program
sederhana untuk menjalankan file exe.
<?
exec("..\cgi-bin\move.exe"); /*perintah exec untuk memanggil file move.exe
?>
maka file php secara otomatis menjalankan file move.exe sampai waktu tertentu,
tergantung delay yang diberikan pada file move.exe. Disini PHP yang digunakan adalah
PHP ver 4.1.1 dan Internet Explore 5.0
D. Turbo C
C++ adalah bahasa pemograman yang berada diantara bahasa tingkat rendah (bahasa
pemograman yang berbasis pada mesin, seperti Assembly) dan bahasa pemograman
tingkat tinggi (bahasa pemograman yang berorientasi pada user atau manusia, seperti
Pascal). Bahasa pemograman tingkat tinggi mempunyai kompatibilitas yang tinggi antar
platform, karena itu kita dapat membuat suatu program yang berorientasi pada mesin.
Kami menggunakan bahasa pemograman C++ dalam pembuatan program execute untuk
menjalankan motor H-Bridge yang terhubung pada parallel port Hal ini antara lain
disebabkan karena beberapa kelebihan yang disebutkan diatas.
Adapun data port yang dipakai untuk pengaksesan parallel port (0x378) adalah sebagai
berikut :
5/7/2018 Contoh Pararel PHP - slidepdf.com
http://slidepdf.com/reader/full/contoh-pararel-php-559aba8d81c05 8/15
7
Data Port (0x378)
Tipe data include yang digunakan adalah dos.h. Untuk mengeluarkan data keparallel portmenggunakan perintah outport(alamat_port,data); dimana alamat_port yang digunakan
adalah standar address pada parallel port (dalam heksadesimal) dan data yang
dikeluarkan dalam bentuk desimal.
Untuk mengeluarkan data output pada bahasa C/C++ digunakan file header dos.h
sedangkan fungsi yang digunakan outportb(portaddress,data); Portaddress adalah alamat
port yang digunakan yang dapat dilihat pada tabel diatas untuk masing-masing port (data,
control) dan data adalah data yang ingin kita tuliskan ke port tersebut.
Struktur Umum Penulisan Program :
#include<dos.h>
void main()
{
outport(portaddress,data);
}
Contoh Deklarasi Program Akses Parallel Port Untuk Satu Pin :
/* Program Untuk Menyalakan Pin 2 Pada Parallel Port */
#include<dos.h>
#include<conio.h>
void main()
{
outport(0x378,1); /* Digunakan Data 1 hexadec Sesuai Dengan Tabel Diatas */
}
Bila program diatas dijalankan maka yang tampak dilayar komputer hanyalah suatukedipan pada layar monitor tetapi dalam hal ini program sudah berjalan dan ketika kami
simulasikan pada Program Parallel Monitor dan Led, tampak Led no 1 yang semula padam setelah program ini dijalankan menyala.
Untuk mengirimkan lebih dari 1 data dapat digunakan fungsi penjumlahan. Misalnya
untuk menyalakan semua led (data 2 sampai dengan data 9) maka kita berikan :
5/7/2018 Contoh Pararel PHP - slidepdf.com
http://slidepdf.com/reader/full/contoh-pararel-php-559aba8d81c05 9/15
8
data= data0 +data1 +data2 +data3 +data4 +data5 +data6 +data7
data= 1+ 2+ 4+ 8+ 16+ 32+ 64+ 128 = 255
*/Contoh Program Yang Dipakai Untuk Menghidupkan Semua Led*/
#include<dos.h>
void main(){
outport(0x378,255);
}
Dari simulasi-simulasi yang dilakukan ternyata diperoleh bahwa nyala led kadang tidak
bisa terlihat karena begitu cepat padam dan begitu cepat pula nyala. Maka untuk itu
digunakan suatu instruksi yang disebut delay. Delay digunakan untuk menunda
pengeluaran data dalam jangka waktu tertentu, atau untuk mengatur jeda antar
pengiriman data dan pengambilan data. Misalnya jika diinginkan mengirimkan data
untuk menyalakan pin 0, pin 1, pin 2, pin 3, pin 4, pin 5, pin 6, pin 7 dari port data secara
bergantian setiap 1 detik, pin 1 menyala selama 1 detik, pin 2 menyala selama 1 detik,dan seterusnya dapat digunakan delay. Fungsi delay ini akan menahan eksekusi suatu
perintah dalam jangka waktu yang ditentukan.
Cara penggunaan delay
File header yang digunakan : dos.h
Fungsi yang digunakan : delay(x); x merupakan satuan dalam milidetik, delay(100)
artinya tunggu 100 milidetik.
Contoh :
Program akan menyalakan pin 0, pin 1, pin 2, pin 3, pin 4, pin 5, pin 6, pin 7 port data
berurutan dan masing masing pin akan menyala selama 1 detik.
/* Program Running Led */
#include<dos.h>
void main()
{
/* nyalakan pin 0 dan tunggu 1 detik */
outportb(0x378, 1);
delay(1000);
/* nyalakan pin 0 dan tunggu 1 detik */
outportb(0x378, 2);
delay(1000);/* nyalakan pin 0 dan tunggu 1 detik */
outportb(0x378, 4);
delay(1000);
/* nyalakan pin 0 dan tunggu 1 detik */
outportb(0x378, 8);
delay(1000);
/* nyalakan pin 0 dan tunggu 1 detik */
outportb(0x378, 16);
delay(1000);
/* nyalakan pin 0 dan tunggu 1 detik */
outportb(0x378, 32);delay(1000);
/* nyalakan pin 0 dan tunggu 1 detik */
outportb(0x378, 64);
delay(1000);
5/7/2018 Contoh Pararel PHP - slidepdf.com
http://slidepdf.com/reader/full/contoh-pararel-php-559aba8d81c05 10/15
9
/* nyalakan pin 0 dan tunggu 1 detik */
outportb(0x378, 128);
delay(1000);
}
Untuk program execute tidak mutlak harus menggunakan bahasa pemrograman C++.Program exe dapat dibuat dengan bahasa pemograman yang lain dan dapat dikenali oleh
server yang digunakan, disini kami menggunakan server apache untuk menjalankan
script PHP, dimana PHP mengexecute program exe yang dibuat dengan bahasa
pemograman Turbo C++.
E. Aplikasi Software
Program index.htm
<html>
<head>
<title>home</title></head>
<body bgcolor="#006666">
<form action=proses.php method=post>
<p align="center"><font size="+2"> <b><font color="#000099" face="Comic Sans MS"
size="+3">WELCOME</font></b></font>
<p align="center"><b><font face="Comic Sans MS" color="#FFFFFF">ENTER THE
RIGHT
PASSWORD TO VISIT</font> </b>
<p align="center"><b><font face="Courier New" size="+2" color="#FFFF00">WEB
BASED H-BRIDGE MOTOR CONTROL</font></b>
<p align="center"><b><font color="#000066">PASSWORD</font></b><fontcolor="#99FF99">
:</font>
<input type=password max length=20 size+20 name=password>
<br>
<br>
<input type=submit value="send" name="submit">
<br>
<p align="center">
<p align="center"><font size="4" color="#FFFFFF">By </font>
<p align="center"><font size="4" color="#FFFFFF">The Team Of Petra</font><br>
<br><p> </p></form>
</body>
</html>
5/7/2018 Contoh Pararel PHP - slidepdf.com
http://slidepdf.com/reader/full/contoh-pararel-php-559aba8d81c05 11/15
10
Tampilan Web Pada index.htm
Program index2.htm
<html>
<head>
<title>control</title>
<script language="JavaScript">
<!--
function MM_reloadPage(init) { //reloads the window if Nav4 resized
if (init==true) with (navigator) {if
((appName=="Netscape")&&(parseInt(appVersion)==4)) {
document.MM_pgW=innerWidth; document.MM_pgH=innerHeight;
onresize=MM_reloadPage; }}
else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH)
location.reload();
}
MM_reloadPage(true);
// -->
</script>
</head>
<body bgcolor="#0099CC">
<div id="Layer1" style="position:absolute; left:163px; top:508px; width:103px;
height:51px; z-index:1">
<form name="form2" method="get" action="kiri.php">
<div align="center">
<input type="submit" name="left" value="LEFT">
</div>
</form>
</div>
5/7/2018 Contoh Pararel PHP - slidepdf.com
http://slidepdf.com/reader/full/contoh-pararel-php-559aba8d81c05 12/15
11
<div id="Layer2" style="position:absolute; left:738px; top:498px; width:112px;
height:37px; z-index:2">
<form name="form3" method="get" action="kanan.php">
<div align="center">
<input type="submit" name="right" value="RIGHT">
</div></form>
</div>
<p align="center"><b><font size="+5" face="Geneva, Arial, Helvetica, san-serif"
color="#FFFFFF">Y</font><font size="6" face="OCR A Extended"
color="#000000">OU
ARE NOW IN </font></b></p>
<p align="center"><font color="#000000"><b><font size="6" face="OCR A
Extended">THE
CONTROL AREA </font></b></font> </p>
<form name="form1" method="get" action="maju.php">
<div align="center"><p>
<input type="submit" name="up" value="UP">
</p>
</div>
</form>
<p align="center"> </p>
<p align="center"><img src="picture/Z3-Haven.JPG" width="454" height="340"></p>
<p align="center"> </p>
<form name="form4" method="get" action="mundur.php">
<div align="center">
<input type="submit" name="down" value="DOWN"></div>
</form>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"> </p>
</body>
</html>
5/7/2018 Contoh Pararel PHP - slidepdf.com
http://slidepdf.com/reader/full/contoh-pararel-php-559aba8d81c05 13/15
12
Tampilan Web Pada index2.htm
Program maju.php
<?
exec("..\cgi-bin\maju.exe"); /*mengexecute file maju.exe
header ("location : index2.htm"); /*kembali ke index2.htm setelah diexecute
?>
Program mundur.php
<?
exec("..\cgi-bin\mundur.exe"); /*mengexecute file mundur.exe
header ("location : index2.htm"); /*kembali ke index2 setelah diexecute
?>
Program kanan.php
<?
exec("..\cgi-bin\kanan.exe"); /*mengexecute file kanan.exe
header ("location : index2.htm"); /*kembali ke index2 setelah diexecute
?>
Program kiri.php
<?
exec("..\cgi-bin\kiri.exe"); /*mengexecute file kiri.exe
header ("location : index2.htm"); /*kembali ke index2 setelah diexecute
?>
Program maju.c
#include<dos.h> /*menggunakan include dos.h
void main()
{
int i;
outport(0x378,0); /*mengeset harga awal 0
5/7/2018 Contoh Pararel PHP - slidepdf.com
http://slidepdf.com/reader/full/contoh-pararel-php-559aba8d81c05 14/15
13
delay(500);
for(i=0;i<=200;i++) /*proses looping
{
outport(0x378,250); /*mengeluarkan data ke parallel port
delay(5000);}
}
Program mundur.c
# include<dos.h>
void main()
{
int i;
outport(0x378,0); /*mengeset harga awal 0
delay(500);
for(i=0;i<=200;i++) /*proses looping
{
outport(0x378,245); /*mengeluarkan data ke parallel port
delay(5000);
}
}
Program kanan.c
# include<dos.h>
void main()
{int i;
outport(0x378,0); /*mengeset harga awal 0
delay(500);
for(i=0;i<=200;i++) /*proses looping
{
outport(0x378,254); /*mengeluarkan data ke parallel port
delay(5000);
}
}
Program kiri.c
# include<dos.h>
void main()
{
int i;
outport(0x378,0); /*mengeset harga awal 0
delay(500);
for(i=0;i<=200;i++) /*proses looping
{
outport(0x378,251); /*mengeluarkan data ke parallel portdelay(5000);
}
}
5/7/2018 Contoh Pararel PHP - slidepdf.com
http://slidepdf.com/reader/full/contoh-pararel-php-559aba8d81c05 15/15
14
5. Kesimpulan
1. Pengontrolan melalui Web bersifat server side, yang berarti semua proses dilakukan di
server yang kemudian dapat diakses oleh client melalui Web Browser.
2. Pengontrolan melalui Web dapat menggunakan PHP untuk mengganti penggunaanCGI.
3. Program Execute yang digunakan dapat dibuat dengan beberapa bahasa pemograman,
terutama yang dapat dikenali oleh web server.
4. Program execute berfungsi mengeluarkan data ke parallel port yang kemudian
menggerakkan motor H-Bridge.
Permasalahan
1. Data yang dikeluarkan ke parallel port tidak dapat diinterupt jika ada data baru yang
masuk ke parallel port, sehingga harus menunggu program exe dijalankan sampai selesai, baru kemudian data yang baru dapat dijalankan.
2. Adanya interval waktu tertentu pada saat adanya pergantian data baru yang dikirim
dari client ke server, karena pengaruh kecepatan dalam pengiriman data pada suatu
server.
3. Web Server yang digunakan harus tidak berbasiskan UNIX karena web server yang
berbasiskan UNIX tidak dapat mengenali file Execute, sehingga pada saat diupload harus
menggunakan web server yang tidak berbasiskan UNIX.
Target sampai dengan UTS
1. Menyelesaikan Software yang disimulasikan dengan Hardware LED yang dapat
diakses melalui internet.2. Dapat disimulasikan untuk menyalakan dan mematikan LED.
Hasil yang telah dicapai
1. Dapat memahami dan mengerti sistem kerja dari Hardware dan Software yang kami
lakukan secara keseluruhan.
2. Program execute dapat dijalankan pada Hardware, untuk sementara ini menggunakanLED.
3. Dapat dijalankan pada komputer client yang terhubung dalam suatu jaringan komputer
menggunakan server apache.
4. Rangkaian H-Bridge, tetapi belum sempurna.
Rencana kerja setelah UTS
1. Menyelesaikan Rangkaian H-Bridge yang belum sempurna, karena arus yang menuju
ke motor sangat kecil.
2. Menambahkan Inverting pada H-Bridge untuk mengatasi input kembar pada switching
dan Octal Latch untuk menginterupt data.