Minggu, 04 Mei 2014

ANTARMUKA (KOMUNIKASI SERI

ANTARMUKA DENGAN PORT PARALEL DB 25 (OUTPUT)
            UNTUK MENGENDALIKAN ARAH PUTARAN MOTOR DC

Tujuan
      Mahasiswa mampu mengantarmukakan hardware dengan PC melalui port parallel DB 25.
      Mahasiswa mampu mengeluarkan data dari PC melalui port parallel.
      Mahasiswa mampu membuat aplikasi menggunakan bahasa pemrograman Borland Delphi untuk antarmuka melalui port paralel. 

Dasar Teori
 Port  paralel  banyak  digunakan  dalam  berbagai  macam  aplikasi  antarmuka. Port ini  hanya  membutuhkan  rangkaian eksternal sederhana untuk melakukan suatu tugas tertentu. Port paralel ini terdiri dari 4 jalur kontrol, 5 jalur status dan 8 jalur data. Biasanya dapat Anda jumpai sebagai  port pencetak (printer), dalam bentuk konektor DB-25 betina (female).




 Cara paling sederhana untuk mengeluarkan data melalui port paralel adalah dengan mengirimkan data ke alamat register Data yaitu alamat base+0. Jika alamat dasar yang digunakan adalah 378h, maka data dikirim ke alamat 378h untuk mengeluarkan data melalui port paralel pin nomor 2 sampai dengan 9.

Tabel Alamat register
Register Name
Address
Direction
Data
Base + 0
Out
Status
Base + 1
In
Control
Base + 2
In/Out


             

Alat dan Bahan
      Satu set PC 
      Tool Pemrograman Borland Delphi.
      Kabel LPT
      Kabel DB 25 Male
      Hardware Rangkaia Driver Motor   

Prosedur
a.       Mengeluarkan data dengan masukan dari Tedit
1.      Buatlah simulasi hard ware pengendali kecepatan motor dua arah sebagai berikut :
 
2.      Buatlah Rancangan atau layout PCB sebagi berikut :






3.      Buatlah progam pada progam Delphi sebagai berikut : 

4.      Komponen/Objek yang digunakan dan pengaturan propertiesnya adalah :
5.       
Komponen
Properti
Nilai
 Edit1
Text
1
Button1
Caption
Send
Button 2
Caption
Exit
Shape1
Shape
StCircle
Shape2
Shape
StCircle


6.      Masukkan perintah-perintah pada kejadian/event disetiap komponen di bawah ini.
Nama Komponen
 Event
 Perintah
Deklarasi
-
var
  Form1: TForm1;   data:  integer;

implementation

{$R *.dfm} procedure Out32(PortAddress:smallint;Value:smallint); stdcall; external 'inpout32.dll'; function Inp32(PortAddress:smallint):smallint;stdcall;  external 'inpout32.dll';
 Button1
 OnClick
procedure TForm1.Button1Click(Sender: TObject);
begin
data:=strtoint(edit1.Text);
out32 ($378,data);
if (data and 1)=1 then shape2.Brush.Color:=clblue
else shape2.Brush.Color:=clwhite;
if (data and 2)=2 then shape1.Brush.Color:=clgreen
else shape1.Brush.Color:=clyellow;

end;
Button2
OnClick
procedure TForm1.Button2Click(Sender: TObject);
begin
application.Terminate;
end;

end.

7.      Simpan semua file dpr dan unit kemudian jalankan program.
8.      Tekan tombol kemudian  amati apa yang terjadi pada komponen hard ware yang di buat(motor akan bergerak kekanan atupun kekiri tergantung data yang kita masukkan )  .
Data Hasil Dan Pembahasan
a.       Data Progam
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, jpeg;

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Button1: TButton;
    StaticText1: TStaticText;
    StaticText2: TStaticText;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Image1: TImage;
    Shape1: TShape;
    Shape2: TShape;
    Label1: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Label13: TLabel;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  data: integer;

implementation

{$R *.dfm}
procedure Out32 (PortAddress:smallint;Value:smallint);
stdcall;external'inpout32.dll';
function inp32(PortAddress:smallint):smallint;stdcall;external'inpout32.dll';
procedure TForm1.Button1Click(Sender: TObject);
begin
data:=strtoint(edit1.Text);
out32 ($378,data);
if (data and 1)=1 then shape2.Brush.Color:=clblue
else shape2.Brush.Color:=clwhite;
if (data and 2)=2 then shape1.Brush.Color:=clgreen
else shape1.Brush.Color:=clyellow;

end;

procedure TForm1.Button2Click(Sender: TObject);
begin
application.Terminate;
end;

end.
end.










Gambar display Progam  dan gambar pada hardware










Gambar penggabungan pada kelompok besar sebagai pintu otomatis
a.       Ketika pintu tertutup ,                         b. Ketika pintu terbuka
 


Pembahasan
Pada tugas akhir saya menggunakan port pararel ini memiliki 2 unsur penting yaitu pada software dan hardware .
Pertama pada softwarenya yaitu ketika kita memasukkan suatu progam , kita menggunakan perulangan (if ,else ) dan juga menggunakan  out32($378,data) yang berarti bahwa output yang kita gunakan pada port printer ,hal ini di sebabkan bahwa hard ware yang kita gunakan menggunakan  sinyal pemicu dari output register data pada pin kaki ke 2 dan 3 di DB 25  pada port printer , selain itu stetement if else kita gunakan sebagi indikator pada PC dimana bila kita masukkan data 1 dan motor berputar kekanan maupun kekiri maka pada progam delphi akan mengeluarkan warna dan warna yng muncul ini kita setting pada shape  .
Kedua pada hardware  yaitu output yang diletakkan pada port printer  Register Data yang beralamatkan $ 378 pada pin 2 dan 3 dan fungsinya sebagai sinyal pemicu putaran kekiri mauun kekanan
Selain itu progam pada softwarenya di buat untuk mengubah dari data inputan bilangan desimal ke bilangan biner jika berlogika 1 dan 0 dimana saya gunakan inputan Cuma 1 dan 2 agar progam maupun hardware dapat berjalan dengan baik



Kesimpullan
Dari data hasil yang diperoleh  dapat di buat kesimpulan bahwa progam delpi dapat menjalan kan hardware yang berupa motor yang diletakkan pada output port printer ( Register Data ) untuk mengatur arah putaran motor tersebut
Dan progam pada delphi menggunakan perulangan if , else yaitu jika pada inputan diberi nilai bilangan desimal maka progam akan mengubah menjadi bilangan biner yang akan dimanfaatkan sebagi sinyal pemicu arah putaran motor kekiri maupun kekanan .

Tidak ada komentar:

Posting Komentar