Mei 2011 ~ Mekatronika USD

Jumat, 27 Mei 2011

Arduino S3V3 Revision2

Arduino Single-Sided Serial Board (version 3)

If you don't have an easy way to order an Arduino board or kit, you can etch this PCB design by hand and solder it together. It is pin-compatible with the Arduino Diecimila, and should work with any Arduino shield.
This is the third revision of the board: the Arduino Single-Sided Serial version 3, or s3v3, or Arduino Severino. It was designed by Adilson Akashi,

These files are licensed under the Creative Commons Attribution Share-Alike 2.5 license.


Share

Rabu, 11 Mei 2011

Contoh - Contoh Interface Menggunakan Delphi

1. Monitor Suhu & Kelembaban Udara Dengan DT-SENSE SHT11 Module
Aplikasi ini menggunakan DT-SENSE SHT11 Module dan DT-AVR Low Cost Micro System untuk membangun sebuah sistem monitoring suhu dan kelembaban udara berbasis komputer. Program untuk sisi komputer dibangun dengan bantuan Borland® Delphi 7.0© sedangkan program untuk sisi mikrokontroler ditulis dalam bahasa C CodeVisionAVR©.
CodeVisionAVR is copyright by Pavel Haiduc, HP InfoTech s.r.l.
Borland is registered trademark of Borland Software Corporation.
Borland Delphi 7.0 is copyright by Borland Software Corporation


2. Konversi Data Digital ke Analog
Sebuah contoh penggunaan DT-I/O DAC-08 untuk melakukan konversi data digital dari komputer menjadi sinyal analog. DT-AVR Low Cost Micro System akan menghubungkan DT-I/O DAC-08 dengan komputer. Program aplikasi pada sisi komputer ditulis dalam bahasa Borland® Delphi 7.0© sedangkan program untuk DT-AVR Low Cost Micro System ditulis dalam bahasa C.
Borland is registered trademark of Borland Software Corporation.
Borland Delphi 7.0 is copyright by Borland Software Corporation.


3. Kendali Motor Stepper melalui USB
Aplikasi ini menggunakan PC-Link USBer sebagai media kendali motor stepper dengan bantuan SPC Stepper Motor. Mode kerja PC-Link USBer yang digunakan di sini masih sama dengan AN135 yaitu bit bang. Program aplikasi komputer ditulis dalam bahasa Borland® Delphi™ 7.0©.
Borland is registered trademark of Borland Software Corporation.
Borland Delphi 7.0 is copyright by Borland Software Corporation.

4. Kontrol Motor DC Secara Serial
Artikel ini akan menjelaskan cara pengaturan motor DC dengan menggunakan PC melalui bantuan PC Link Serial PPI dan SPC DC Motor. Program di PC dirancang dengan menggunakan bantuan Borland® Delphi 7.0©
Borland is registered trademark of Borland Software Corporation.
Borland Delphi 7.0 is copyright by Borland Software Corporation.

5. PC Phone Interface
Aplikasi ini memberikan contoh sederhana mengenai pembuatan program aplikasi Windows® untuk PC-Link Serial PPI dengan bantuan Borland ® Delphi™ 7.0© dan library SerLib.DLL. Komputer dapat membaca penekanan tombol keypad pada pesawat telepon, melakukan panggilan ke nomor yang telah tersimpan, dan menerima telepon masuk (off-hook).
Borland is registered trademark of Borland Software Corporation.
Borland Delphi 7.0 is copyright by Borland Software Corporation.

6. Kontrol Motor Stepper Secara Serial
Pada aplikasi ini AN147 dikembangkan lebih lanjut untuk kendali arah dan kecepatan motor stepper dengan bantuan modul SPC Stepper Motor. Aplikasi ini menggunakan 2 macam komunikasi ke PC-Link Serial PPI yaitu komunikasi secara paralel dan komunikasi secara I²C.
Borland is registered trademark of Borland Software Corporation.
Borland Delphi 7.0 is copyright by Borland Software Corporation.

7. Mini Reklame pada Graphic LCD 320x240.
Pada aplikasi ini, LCD Grafik 320x240 digunakan untuk menampilkan 4 gambar berwarna secara bersamaan maupun bergantian. DT-AVR Low Cost Micro System yang berfungsi sebagai kontroler utama terhubung dengan LCD Controller (SED1357) untuk menampilkan gambar. IC Dataflash AT45DB041B digunakan sebagai media penyimpan gambar yang akan ditampilkan. Program pada sisi mikrokontroler dikembangkan dengan editor Programmer Notepad dan kompiler AVR GCC pada WinAVR. Selain itu dikembangkan juga program menggunakan Borland Delphi 7.0 untuk mengisikan gambar ke dalam dataflash.
Borland is registered trademark of Borland Software Corporation.
Borland Delphi 7.0 is copyright by Borland Software Corporation.
Programmer Notepad is is Copyright © 2002-2010 Simon Steele.

8. Bluetooth Chatting.
Aplikasi ini membahas perihal penggunaan 2 buah modul SPC BLUETOOTH MODULE yang dapat digunakan untuk aplikasi chatting melalui 2 buah PC. Program pada aplikasi kali ini dikembangkan dengan mengggunakan bahasa pemograman DELPHI 7. Jarak jangkauan maksimal antar modul bluetooth ini sekitar 10m.
Borland Delphi Enterprise Version 7.0 is copyright by Borland Software Corporation


**semua file bisa anda download dengan cara klik link diatas (file PDF)

Share

Delphi dan Sistem Embedding – Port Serial RS-232

OK sekarang kita akan membuat contoh sederhana interfacing PC dengan mikrokontroler lewat port serial.
Di contoh ini, mikrokontroler digunakan untuk mengendalikan 4 LED dan membaca 4 saklar. Tugas komputer adalah mengendalikan ke-8 LED tersebut dan membaca posisi saklar.
Program Mikrokontroler
Mikrokontroler menggunakan sebuah AT89S52 dan menggunakan bahasa assembler. Berikut skematiknya.
Skematik ini tidak menampilkan rangkaian RS-232, hanya langsung menggunakan symbol COMPIM. Untuk rangkaian RS-232 converter bisa diliat di sini.
AT89S52 bekerja pada frekuensi 11.0592 MHz dan baud rate pada 9600 bps. Tugas utama mikro adalah selalu mengecek data dari port serial, sub-rutinCommand_Receive dan memproses perintah yang diterima, sub-rutinCommand_Process. Perintah menggunakan 1 karakter ASCII, ‘A’ – ‘G’.
Berikut adalah daftar perintah dari PC:
  • ‘A’: toggle LED yang terhubung ke P2.0
  • ‘B’: toggle LED yang terhubung ke P2.1
  • ‘C’: toggle LED yang terhubung ke P2.2
  • ‘D’: toggle LED yang terhubung ke P2.3
  • ‘E’: semua LED ON
  • ‘F’: semua LED OFF
  • ‘G’: membaca posisi saklar, jika saklar ON semua mikro akan mengirim ’00′ dan jika OFF semua mikro akan mengirim ’0F’.
Program mikro bisa di download di sini.
Pada dasarnya, mikro memfungsikan port serial pada mode 1 dengan baud rate 9600 bps. Pada saat dimulai program langsung menyalakan semua LED. Dan mikrokontroler sebagian besar menghabiskan waktunya untuk membaca command dari port serial.
Program Komputer
Tampilan program komputer bisa dilihat di bawah ini dan source codenya bisa di download di sini.
Bagian utama dari program Delphi adalah:
Prosedure EnumComport
Prosedure ini adalah prosedure untuk membaca registry untuk mengetahui COM apa saja yang terinstal di komputer. Berikut cuplikan kodenya:
procedure TForm5.EnumComPorts(Ports: TStrings);
var
KeyHandle: HKEY;
ErrCode, Index: Integer;
ValueName, Data: string;
ValueLen, DataLen, ValueType: DWORD;
TmpPorts: TStringList;
begin
ErrCode := RegOpenKeyEx(
HKEY_LOCAL_MACHINE,
‘HARDWARE\DEVICEMAP\SERIALCOMM’,
0,
KEY_READ,
KeyHandle);
if ErrCode <> ERROR_SUCCESS then
begin
//raise EComPortExt.Create(‘EnumComPorts’,CError_RegError, ErrCode);
MessageBox(Handle,’Registry Error’,pchar(Application.Title),MB_OK or MB_ICONERROR);
exit;
end;
TmpPorts := TStringList.Create;
try
Index := 0;
repeat
ValueLen := 256;
DataLen := 256;
SetLength(ValueName, ValueLen);
SetLength(Data, DataLen);
ErrCode := RegEnumValue(
KeyHandle,
Index,
PChar(ValueName),
{$IFDEF DELPHI_4_OR_HIGHER}
Cardinal(ValueLen),
{$ELSE}
ValueLen,
{$ENDIF}
nil,
@ValueType,
PByte(PChar(Data)),
@DataLen);
if ErrCode = ERROR_SUCCESS then
begin
SetLength(Data, DataLen);
TmpPorts.Add(Data);
Inc(Index);
end
else
if ErrCode <> ERROR_NO_MORE_ITEMS then
MessageBox(Handle,’Registry error’,pchar(Application.Title),MB_OK or MB_ICONERROR);
until (ErrCode <> ERROR_SUCCESS) ;
TmpPorts.Sort;
Ports.Assign(TmpPorts);
finally
RegCloseKey(KeyHandle);
TmpPorts.Free;
end;
end;
prosedur ini digunakan di event Combobox1 onDropdown:
procedure TForm5.ComboBox1DropDown(Sender: TObject);
begin
EnumComPorts(ComboBox1.Items);
end;
Pada saat ComboBox1 mengalami even Ondropdown, maka akan ditambahkan item2 baru berupa nama com yang terinstal di PC.
Prosedur Buka COM
ApdComport dibuka oleh button1, button dengan caption “Open”. Berikut cuplikan programnya:
procedure TForm5.Button1Click(Sender: TObject);
var
ComNo:integer;
S:string;
begin
if ComboBox1.ItemIndex=-1  then
begin
MessageBox(Handle,’Please select a COM’,pchar(Application.Title),
MB_OK or MB_ICONERROR);
ComboBox1.SetFocus;
exit;
end;
S:=Copy(ComboBox1.Text,4,Length(ComboBox1.Text)-3);
ComNo:=StrToInt(s);
try
ApdComPort1.ComNumber:=ComNo;
ApdComPort1.Open:=true;
Except
Port_State:=false;
end;
end;
Pertama program mengecek apakah COM sudah dipilih dengan membaca ComboBox1.Itemindex, jika bernilai -1, berarti belum ada com yang dipilih. Program akan menampilkan pesan error. Jika sudah ada com yang terpilih, program akan mengambil nomor comnya, dengan membuang string “COM”.
Lalu apdComport coba dibuka dengan membuat property open menjadi true. Jika gagal, misal karena com yang bersangkutan telah dipakai oleh aplikasi lain, maka sebuah variabel Port_State akan bernilai false. Variable ini digunakan untuk mengecek apakah com telah sukses dibuka atau tidak. Setiap pengiriman atau penerimaan data akan selalu mengecek variable ini. Pengiriman baru bisa dilakukan apabila com telah sukse dibuka, jika tidak akan error.
Menyalakan atau Mematikan LED
Menyalakan atau mematikan LED dilakukan dengan mengirim perintah yang telah ditentukan di atas. LED bisa diatur secara individu atau secara bersamaan. Misal untuk untuk mengatur LED yang terhubung ke P2.0 dilakukan dengan mengirim karakter “A”:
procedure TForm5.CheckBox1Click(Sender: TObject);
begin
if not Port_State then exit;
ApdComPort1.Output:=’A';
end;
Sedangkan program untuk menyalaka semua LED:
procedure TForm5.Button3Click(Sender: TObject);
begin
if not Port_State then exit;
ApdComPort1.Output:=’E';
end;
Prosedur Membaca Saklar
Untuk membaca saklar, pertama program akan mengirim perintah membaca saklar, kemudian membaca data yang dikirim oleh mikro.
procedure TForm5.Button5Click(Sender: TObject);
var
S:string;
TheData,code: integer;
begin
if not Port_State then exit;
ApdComPort1.Output:=’G';
S:= ReadSerialData(100);
val(‘$’+S,TheData,code);
Label2.Caption:=’SW1 OFF’;
Label3.Caption:=’SW2 OFF’;
Label4.Caption:=’SW3 OFF’;
Label5.Caption:=’SW4 OFF’;
TheData:= not TheData;
if (TheData and 1 = 1)  then
Label2.Caption:=’SW1 ON’;
if (TheData and 2 = 2)  then
Label3.Caption:=’SW2 ON’;
if (TheData and 4 = 4)  then
Label4.Caption:=’SW3 ON’;
if (TheData and 8 = 8)  then
Label5.Caption:=’SW4 ON’;
end;
Program pembacaan data dilakukan di fungsi ReadSerialData:
function TForm5.ReadSerialData(TimeOut: integer): string;
var
i: integer;
begin
Result:=”;
while ApdComPort1.InBuffUsed=0  do
begin
Dec(TimeOut);
Sleep(1);
Application.ProcessMessages;
if TimeOut=0  then exit;
end;
Sleep(10);
for I := ApdComPort1.InBuffUsed downto 1 do
Result:=Result+ApdComPort1.GetChar;
end;
Fungsi ini akan membaca data yang diterima oleh port serial selama waktu tertentu,TimeOut. Buffer input port serial dibaca dulu (InBuffUsed), apabila selalu 0 dalam waktu TimeOut, berarti tidak ada data. Jika ada maka data dibaca per karakter (byte) melalui perintah ApdComport.GetChar. Data yang diterima akan selalu ASCII. Misal jika semua saklar pada posisi ON maka data yang diterima adalah “0F”. Program harus mengecek data yang diterima tersebut untuk menentukan semua posisi saklar.
Share

Kamis, 05 Mei 2011

SINGLE-PHASE INDUCTION MOTORS

There are probably more single-phase ac induction motors in use today than the total of all the other types put together.
It is logical that the least expensive, lowest maintenance type of ac motor should be used most often. The single-phase ac induction motor fits that description.
Unlike polyphase induction motors, the stator field in the single-phase motor does not rotate. Instead it simply alternates polarity between poles as the ac voltage changes polarity.
Voltage is induced in the rotor as a result of magnetic induction, and a magnetic field is produced around the rotor. This field will always be in opposition to the stator field (Lenz's law applies). The interaction between the rotor and stator fields will not produce rotation, however. The interaction is shown by the double-ended arrow in figure 4-10, view A. Because this force is across the rotor and through the pole pieces, there is no rotary motion, just a push and/or pull along this line.
Figure 4-10. - Rotor currents in a single-phase ac induction motor.
32NE0449.GIF (18964 bytes)
Now, if the rotor is rotated by some outside force (a twist of your hand, or something), the push-pull along the line in figure 4-10, view A, is disturbed. Look at the fields as shown in figure 4-10, view B. At this instant the south pole on the rotor is being attracted by the left-hand pole. The north rotor pole is being attracted to the right-hand pole. All of this is a result of the rotor being rotated 90° by the outside force. The pull that now exists between the two fields becomes a rotary force, turning the rotor toward magnetic correspondence with the stator. Because the two fields continuously alternate, they will never actually line up, and the rotor will continue to turn once started. It remains for us to learn practical methods of getting the rotor to start.
There are several types of single-phase induction motors in use today. Basically they are identical except for the means of starting. In this chapter we will discuss the split-phase and shaded-pole motors; so named because of the methods employed to get them started. Once they are up to operating speed, all single-phase induction motors operate the same.
Share

Skema Motor Stepper

Motor Stepper adalah motor DC yang gerakannya bertahap (step per step) dan memiliki akurasi yang tinggi tergantung pada spesifikasinya. Setiap motor stepper mampu berputar untuk setiap stepnya dalam satuan sudut (0.75, 0.9, 1.8), makin keil sudut per step-nya maka gerakan per step-nya motor stepper tersebut makin presisi.
Motor stepper banyak digunakan untuk aplikasi-aplikasi yang biasanya cukup menggunakan torsi yang kecil, seperti untuk penggerak piringan disket atau piringan CD. Dalam hal kecepatan, kecepatan motor stepper cukup cepat jika dibandingkan dengan motor DC. Motor stepper merupakan motor DC yang tidak memiliki komutator. Pada umumnya motor stepper hanya mempunyai kumparan pada statornya sedangkan pada bagian rotornya merupakan magnet permanent. Dengan model motor seperti ini maka motor stepper dapat diatur posisinya pada posisi tertentu dan/atau berputar ke arah yang diinginkan, searah jarum jam atau sebaliknya.
Kecepatan motor stepper pada dasarnya ditentukan oleh kecepatan pemberian data pada komutatornya. Semakin cepat data yang diberikan maka motor stepper akan semakin cepat pula berputarnya. Pada kebanyakan motor stepper kecepatannya dapat diatur dalam daerah frekuensi audio dan akan menghasilkan putaran yang cukup cepat.
Untuk mengatur gerakan motor per step-nya dapat dilakukan dengan 2 cara berdasarkan simpangan sudut gerakannya yaitufull step dan half step.
Tabel 1. Motor Stepper dengan Gerakan Full Step[1]
Step
S3
S2
S1
S0
1
0
0
0
1
2
0
0
1
0
3
0
1
0
0
4
1
0
0
0
1
0
0
0
1









Gambar 1. Kontruksi Motor Stepper dalam Satu Kali Putaran dengan gerakkan Full Step
Tabel 2. Motor Stepper dengan Gerakan Half Step
Step
S3
S2
S1
S0
1
0
0
0
1
2
0
0
1
1
3
0
1
0
0
4
0
1
1
0
5
0
1
0
0
6
1
1
0
0
7
1
0
0
0
8
1
0
0
1
1
0
0
0
1







Gambar 2. Kontruksi Motor Stepper dalam Gerakkan Half Step
Share

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | free samples without surveys