BAB 2
LANDASAN TEORI
2.1 Perkembangan Pengaturan proyektor secara remote melalui komputer telah dimulai oleh perusahaan Hitachi. Pengaturan ini dilakukan dengan aplikasi yang bernama Projector Control Application (disingkat PJCtrl). Aplikasi ini membuat user dapat mengontrol fungsi-fungsi dari LCD proyektor Hitachi milik user melalui desktop PC atau laptop. Aplikasi ini dapat membantu mengurangi biaya yang berhubungan dengan pergantian batere, kehilangan remote control dan lainnya. Blok diagram dari pengontrolan proyektor Hitachi ini adalah :
Gambar 2.1 Blok Diagram Pengontrolan Proyektor Hitachi 7
8 PJCtrl ini dapat dipakai untuk langsung mengontrol proyektor yang memiliki RJ-45 LAN port. Data dari aplikasi ini dapat dikirim langsung dari jaringan ke LAN port proyektor. Apabila jenis proyektor yang dikontrol tidak memiliki LAN port, maka data yang dikirim dari jaringan harus melalui Ethernet to Serial Converter dahulu baru data diubah menjadi serial dan dikirim ke port serial proyektor untuk diproses. Selain melalui jaringan, proyektor juga dapat langsung terhubung dengan PJCtrl melalui kabel LAN atau RS232.
Sampai saat ini, Projector Control Application milik Hitachi mampu : •
Mematikan serta menghidupkan proyektor
•
Mengatur RGB dari proyektor
•
Mengatur 5 proyektor Hitachi dengan tipe yang sama secara bersamaan.
•
Mengatur suara, video, serta pengaturan tingkat lanjut (advanced control) seperti ketajaman gambar, factor gamma, warna dan sebagainya.
Minimum system requirement dari aplikasi ini adalah : •
Windows 2000 Professional SP4 atau Windows XP Professional
•
Pentium III 500 Mhz atau lebih
•
128MB RAM
9 •
3MB HDD yang free
•
LAN Port (RJ-45) atau RS-232C Port
Jenis-jenis proyektor LCD Hitachi yang compatible dengan PJCtrl Hitachi adalah : Tabel 2.1 Proyektor LCD Hitachi tanpa RJ-45 LAN Port Proyektor LCD Hitachi tanpa RJ-45 LAN Port* CP-RS55 CP-X328 CP-RS56 CP-X340 CP-RS57 CP-X345 CP-RX60 CP-X430 CP-RX61 CP-X440 CP-S210 CP-X444 CP-S220 CP-X880 CP-S225 CP-X885 CP-S235 CP-X990 CP-S240 CP-X995 CP-S318 CP-X1230 CP-S335 ED-S3170 CP-S420 ED-S3350 CP-SX5600 ED-X3270 CP-X250 ED-X3280 CP-X251 ED-X3400 CP-X253 ED-X3450 CP-X260 *memerlukan Ethernet to Serial Converter
10 Tabel 2.2 Proyektor LCD Hitachi dengan RJ-45 LAN Port Proyektor LCD Hitachi dengan RJ-45 LAN Port CP-S245 CP-X445 CP-SX1350 CP-X505 CPX2 CP-X605 CP-X255 CP-X608 CP-X265 CP-X1200 CP-X268a CP-X1250 CP-X443 ED-X8255
Projector Control Application Hitachi ini dapat di-download secara gratis di website Hitachi yaitu www.hitachi.us [6].
2.2 TCP/IP TCP/IP (Transmission Control Protocol/Internet Protocol) merupakan suatu protocol yang dikembangkan oleh Departemen Pertahanan Amerika Serikat pada tahun 1970an dan dimaksudkan untuk membuat suatu jaringan yang tahan terhadap kondisi apapun. Model TCP/IP ini terdiri dari 4 layer yaitu layer application, layer tansport, layer internet dan layer network access .
2.2.1 Layer Application Layer application pada TCP/IP ini menangani masalah high-level protocols, representasi, encoding dan dialog control. Layer Application ini
11 mempunyai protokol untuk mendukung file transfer, e-mail, network management, name management dan remote login.
2.2.2 Layer Transport Layer transport menyediakan suatu logical connection antara sumber dan tujuan. Layer transport melakukan segmentasi terhadap data menjadi paket, lalu mengirimkan paket-paket data dari sumber ke tujuan melalui jaringan. Layer Transport ini menyediakan flow control dengan metode sliding window, dan juga menyediakan
reabilitas
dengan
penggunaan
sequence
number
dan
acknowledgement. Protocol pada layer ini terdiri dari TCP (Transmission Control Protocol) dan UDP (User Datagram Protocol). TCP bersifat connection-oriented sedangkan UDP bersifat connectionless-oriented.
2.2.3 Layer Internet Layer internet ini memiliki tujuan untuk memilih jalur terbaik untuk aliran data di dalam suatu jaringan. Pada layer ini terjadi pemilihan jalur terbaik serta packet switching. Protocol utama pada layer ini adalah IP (Internet Protocol). IP ini merupakan suatu protocol yang bersifat connectionless dan best effort. IP tidak mempermasalahkan isi dari paket data namun hanya berfokus pada mencari jalur terbaik bagi paket data tersebut. IP seringkali dikatakan unreliable karena IP tidak melakukan error checking serta correction.
12 Pada layer internet ini, terdapat IP address. IP address merupakan alamat dari device yang berada pada jaringan. IP address ini dapat dimiliki oleh server, printer, client computer, router atau device jaringan yang lain. IP address ini terdiri dari kumpulan 32 bit biner. Agar lebih mudah dilihat, IP address ini biasanya direpresentasikan dalam 4 bilangan desimal yang dipisahkan dengan titik. Tiap bilangan desimal ini mewakili 8 bit. Contoh : IP address dalam biner
: xxxxxxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx
IP address dalam decimal :
x
.
x
.
x
.
x
2.2.4 Layer Network Access Layer ini menghubungkan paket-paket data dari layer atas masuk ke dalam koneksi fisik jaringan. Pada layer ini, paket-paket data berubah menjadi nilai-nilai tegangan untuk dikirimkan ke dalam jaringan, atau untuk kasus jaringan fiber optic, paket data berubah menjadi cahaya. Device-device seperti NIC (Network Interface Card) atau modem beroperasi pada layer ini.
Pada layer Network Access ini terdapat teknologi LAN. LAN (Local Area network) merupakan suatu jaringan data yang mencakup area yang kecil, mencapai beberapa ribu meter. LAN biasanya digunakan untuk menghubungkan device-device dalam satu gedung.
13 Salah satu bagian dari teknologi LAN yang sering digunakan adalah Ethernet. Standard Ethernet yang pertama, dikeluarkan pada tahun 1980 oleh konsorsium antara Digital Equipment Company, Intel, dan Xerox (DIX). Sampai sekarang, Ethernet menjadi teknologi yang sangat banyak digunakan di seluruh dunia.
Di dalam spesifikasi Ethernet, terdapat beberapa jenis media (copper, fiber optic) dan bandwith (10Mbps,100Mbps,dan lainnya). Jenis Ethernet yang banyak dipakai adalah 100Base-Tx. 100Base-Tx ini menggunakan kabel UTP (Unshielded Twisted Pair) dengan hambatan 100Ω . 100Base-Tx ini dapat mengirim data dengan jangkauan terjauh hingga 100 m dan menggunakan konektor RJ-45 sebagai interfacenya.
2.3 Network Devices Network devices adalah devices yang digunakan untuk memperpanjang koneksi kabel, koneksi yang terpusat, merubah format data serta mengatur transfer data. Beberapa contoh network devices ini adalah switch dan router.
2.3.1 Router Router adalah network device yang dapat menguatkan sinyal, mengkonsentrasikan beberapa koneksi, merubah format data serta mengatur
14 transfer data. Router dapat dihubungkan dengan WAN (Wide Area Network), router juga dapat menghubungkan beberapa LAN (Local Area Network) yang jaraknya jauh. Router mengirimkan data ke bagian tertentu berdasarkan alamat IP.
2.3.2 Switch Switch adalah network device yang dapat menentukan apakah data yang diterima harus berada dalam jaringan atau tidak, serta dapat memberikan data hanya ke bagian yang membutuhkan. Switch tidak dapat melakukan pengubahan terhadap format data yang ditransmisikan. Switch merupakan device layer 2 yang melakukan transmisi berdasarkan MAC address [1].
2.4 Serial Ports Serial port adalah port yang digunakan untuk melakukan komunikasi antar device secara serial, yaitu data dikirimkan bit per bit secara berurutan. 2 jenis interface yang paling umum digunakan adalah RS-232 dan RS-485.
2.4.1 RS-232 RS-232 (Recommended Standard 232) adalah interface yang dapat digunakan untuk menghubungkan komputer dengan device lainnya, seperti
15 printer, modem dan lainnya. Kegunaan lainnya mengubah suatu interface menjadi tipe lainnya, misalnya mengubah port RS-232 menjadi RS-485. RS-232 dirancang untuk mengatur komunikasi antar 2 device dengan batas jarak 15 sampai 30 meter, bergantung juga terhadap bit rate dan tipe kabel. RS-232 menggunakan unbalanced line, maksudnya tegangan sinyal diberikan hanya ke 1 kawat dan sisanya dihubungkan ke ground (disebut juga single-ended).
Keuntungan dari RS-232 adalah : •
Dapat ditemukan di setiap PC (1 atau lebih port RS-232)
•
Jarak dapat menjangkau 15-30 meter
•
Kebutuhan kabel yang lebih sedikit untuk hubungan 2 arah
Kelemahan dari RS-232 adalah : •
Untuk jarak yang lebih panjang harus digunakan interface lain
•
Data rate maksimum 20000 bps
•
Hanya dapat menghubungkan 2 device
•
Umumnya mikrokontroller hanya memiliki 1 buah serial port, sehingga walaupun komputer mempunyai lebih dari 1, tetap hanya 1 link yang digunakan
16 •
Jika pada ujung sambungan membutuhkan data paralel, maka harus dikonversi dulu
Standar RS-232 yang paling baru adalah TIA/EIA-232-F. Adapun yang dikeluarkan oleh ITU dan CCITT yang mirip adalah V.28. RS-232 (TIA/EIA-232) memiliki standar dalam nama dan fungsi sinyal, karakteristik elektrikal sinyal, aspek mekanikal, serta penamaan pin. Berdasarkan standard, RS-232 dirancang memiliki 25 pin, akan tetapi kebanyakan komputer dan device lainnya jarang menggunakan semua pinnya. Pin yang dihubungkan 9 (walaupun jarang), bahkan ada device yang hanya membutuhkan 3 atau 2 pin saja untuk hubungan 1 arah. Konektor RS-232 dengan 25 pin biasanya disebut DB-25 dan untuk RS-232 dengan 9 pin disebut DB-9. Pada PC, paralel port menggunakan 25-pin female sedangkan 25-pin serial port menggunakan konektor male. Berikut adalah tabel penamaan pin dari RS-232 serta gambar dari DB-25 dan DB-9:
Gambar 2.2 DB-9 dan DB-25
Gambar dari kiri atas, berputar searah jarum jam : 25-pin male, 9-pin male, 9-pin female dan 25-pin female
17
Gambar 2.3 DB-25 Male dan Female
Gambar 2.4 DB-9 Male dan Female Tabel 2.3 Penamaan Pin DB-9 dan DB-25 Pin(9-pin) 1 2 3 4 5 6 7 8 9 -
Pin (25-pin) 8 3 2 20 7 6 4 5 22 1, 9-19, 21, 23-35
Sinyal CD RD TD DTR GND DSR RTS CTS RI Tidak digunakan
Sumber DCE DCE DTE DTE DCE DTE DCE DCE
Tipe Kontrol Data Data Kontrol kontrol Kontrol Kontrol Kontrol
Deskripsi Carrier Detect Received Data Transmitted Data Data Terminal Ready Signal Ground Data Set Ready Request To Send Clear To Send Ring Indicator
-
-
-
18 DCE (Data Circut-terminating Equipment) umumnya menunjukkan bagian modem atau device lainnya. DTE (Data Terminate Equipment) umumnya merupakan serial port dari PC. Biasanya tidak terlalu diperhatikan yang mana DCE dan DTE, tapi di setiap link harus mempunyai 1 DCE dan 1 DTE. DCE dan DTE ini menentukan yang mana sebagai input dan output pada konektor.
Pin CD merupakan pin kontrol untuk menunjukkan terjadinya koneksi dengan device, yaitu dengan cara mendeteksi adanya sinyal dengan frekuensi yang diharapkan. RD disebut juga dengan RX atau RXD, untuk proses penerimaan data. TD disebut juga TX atau TXD, untuk proses pengiriman data. DTR sebagai indicator kapan device akan digunakan. Sebagai balasan untuk DTR, maka device mengeluarkan sinyal DSR untuk menyatakan bahwa device sudah siap dan terhubung. GND merupakan sinyal ground. RTS berfungsi untuk meminta persetujuan untuk mengirim data. Respon dari sinyal ini adalah CTS yang menyatakan bahwa device sudah siap menerima. RI merupakan pendeteksi adanya sinyal lain dalam saluran komunikasi.
Banyak perangkat device yang menggunakan konektor serial selain DB25 maupun DB-9 dalam melakukan koneksi serialnya, misalkan menggunakan DIN-8.
DIN-8 ini berukuran lebih kecil daripada DB-9 dan DB-25, serta
berbentuk lingkaran. Konektor ini biasanya digunakan untuk console port
19 sehingga dapat mengontrol suatu device. Gambar dari DIN-8 beserta dengan penamaan pin-pinnya adalah :
Gambar 2.5 DIN 8-pin Tabel 2.4 Penamaan Pin DIN 8-pin Pin 1 2 3 4,8 5 6 7
Sinyal DTR CTS TD SG RD RTS DCD
Fungsi Data terminal ready Clear to send Transmitted data Signal Ground Received data Request to send Data carrier detect
Sinyal data pada RS-232 ditandai dengan level tegangan -5 V untuk nilai logik 1, dan level tegangan 5 untuk nilai logik 0. Sinyal kontrol menggunakan tegangan logik yang positif. Tegangan bernilai positif menunjukkan bahwa fungsi on, sedangkan untuk tegangan bernilai negatif berarti fungsi off. Tegangan minimum yang diperlukan untuk input adalah yang lebih besar dari 3 V (logik 0 di RD atau on pada input kontrol) dan lebih kecil dari -3V (logik 1 di RD atau off pada input kontrol). Tegangan di antara -3 dan 3 V tidak akan didefinisikan.
20 Untuk output driver RS-232, paling tidak harus bernilai 5 V dengan beban 3 kΩ. Output driver maksimum adalah 15 V.
RS-232 memiliki slew rate yang lebih kecil dari 30 V per mikro-detik. Slew rate adalah besaran yang menunjukkan seberapa cepat tegangan berubah ketika output berganti atau berubah nilainya. Slew rate berguna untuk meningkatkan kualitas sinyal yang selama perjalanan yang jauh terjadi refleksi tegangan akibat sinyal yang naik dan turun dengan cepat. Slew rate juga membatasi kecepatan maksimum link. Untuk slew rate 30 V/μs, output membutuhkan 0.3 μs untuk berubah dari 5 V menjadi -5 V. Dengan kecepatan maksimum 20000 bps, jika dimisalkan ada 1 bit, maka dibutuhkan 50 μs atau 166 kali switching time.
Banyak mikrokontroller yang menggunakan input dan output logic 5 V daripada tegangan RS-232. Perubahan tegangan dari logic 5 V ke port RS-232 menggunakan chip yang digunakan untuk tujuan ini, yaitu MAX232. MAX232 pertama kali dikeluarkan oleh Maxim Semiconductor yang hanya membutuhkan catu daya +5V.
21 Tabel 2.5 Tegangan 5 V untuk Logik TTL dan CMOS Parameter Output logik-rendah(max) Output logik-tinggi(min) Input logik-rendah (max) Input logik-tinggi (min)
Logik TTL (V) Logik CMOS (V) 74HCT (V) 0,4 0,1 0,1 2,4 3,5 3,5 0,8 1 0,8 2 3,5 2
MAX232 memiliki 2 buah driver yang mengkonversi input TTL menjadi output RS-232 serta 2 buah receiver yang menerima input RS-232 dan mengubahnya ke output CMOS yang kompatibel. Driver dan receiver membalikkan sinyalnya. Kapasitor digunakan untuk menyimpan energi sebagai persediaan, dengan nilai yang direkomendasikan 1 μF atau lebih.
Gambar 2.6 MAX232
22 Beberapa contoh lain chip interface RS-232 untuk mengkonversi adalah : •
MAX232A, merupakan bentuk pengembangan MAX232 yang awal, dengan kemampuan operasi dalam kecepatan yang lebih tinggi dan menggunakan kapasitor yang lebih kecil yaitu 0.1 μF
•
MAX233, tidak membutuhkan kapasitor, tapi lebih mahal
•
Max3221, digunakan untuk sambungan RS-232 yang hanya menggunakan 1 driver dan 1 receiver
•
dan sebagainya
2.4.2 RS-485 RS-485 adalah salah satu interface serial yang memiliki jarak lebih jauh serta lebih cepat dibandingkan dengan RS-232. RS-485 tidak seperti RS-232 yang hanya dapat menghubungkan 2 device, tapi lebih, dapat mencapai 256. RS485 atau TIA/EIA-485 memiliki standar lain yang mirip yaitu ISO/IEC 8482.1993.
Kelebihan RS-485 dibandingkan dengan RS-232 adalah: •
Kemampuan dalam jaringan, maksudnya dapat dihubungkan dengan banyak device karena RS-485 merupakan multidrop interface yang dapat memiliki banyak driver dan receiver
23 •
Jangkauan yang dapat mencapai 1,2 km
•
Bit rate yang cepat yaitu 10 Mbps
TIA/EIA-485 merancang 2 buah jalur yaitu A dan B. Input dengan logik 1 akan membuat jalur A lebih positif dibandingkan B. Hal sebaliknya berlaku jika input dengan logik 0, maka jalur B akan lebih positif dibandingkan A. Jika pada receiver input A lebih positif dibandingkan B, maka outputnya akan bernilai logik 1. Input yang diberikan harus berkisar antara -7 V sampai 12 V. Maksimum perbedaan tegangan antara A dan B tidak boleh melebihi 6 V.
Gambar 2.7 Balanced Line
RS-485 tidak menggunakan jalur tidak seimbang (unbalanced) seperti RS-232, melainkan menggunakan balanced. Keuntungan dengan menggunakan balanced line ini adalah lebih kebal terhadap gangguan noise. Jalur balanced ini juga yang menyebabkan RS-485 dapat berjalan lebih jauh. Setiap sinyal pada kabel, memiliki tegangan yang tandanya berkebalikan dengan tegangan lainnya.
24 Noise yang ada dapat dihilangkan karena tandanya yang berkebalikan ini. Gambar skematik dari RS-485 adalah sebagai berikut :
Gambar 2.8 Skema Dalam Driver dan Receiver RS-485
Nilai logik 1 pada input driver akan menyebabkan transistor Q1 dan Q4 aktif, serta Q2 dan Q3 tidak aktif. Tegangan di jalur A akan menyebabkan Q6 aktif. Tegangan rendah di jalur B menyebabkan Q7 aktif. Karena jalur A lebih positif dibandingkan B, maka output di receiver akan berlogik 1. Hal ini juga
25 berlaku untuk sebaliknya. Nilai logik 0 pada input driver akan menyebabkan transistor Q2 dan Q3 aktif, serta Q1 dan Q4 menjadi tidak aktif. Q5 dan Q8 aktif. Karena jalur B lebih positif dibandingkan A, maka output di receiver akan berlogik 0.
RS-485 menggunakan tegangan 5 V. Untuk outputnya antara A dan B harus berbeda minimal 1.5 V. Perbedaan input A dan B harus sekitar 0.2 V. Jika A lebih positif 0.2 V dibandingkan B, maka output receiver akan melihat sebagai logik 1. Jika B yang lebih positif, maka output receiver akan melihat sebagai logik 0. Jika perbedaan lebih kecil dari 0.2 V, maka output tidak dapat didefinisikan. Untuk arusnya dibatasi sampai 250 mA.
Kecepatan data pada RS-485 dipengaruhi oleh panjang kabel. Semakin panjang kabel, maka bit rate atau kecepatan data harus berkurang. Untuk kecepatan data di atas 90 kbps, RS-485 dapat digunakan sampai dengan jarak 1,2 km. Jika kecepatan data lebih cepat, misalnya 1 Mbps, maka panjang kabel yang diijinkan turun menjadi 120 m. Untuk kecepatan 10 Mbps diperlukan panjang kabel 15m.
Link dalam RS-485 dibagi menjadi 2 yaitu secara full duplex dan half duplex. Kebanyakan RS-485 menggunakan link half duplex, yaitu driver dan
26 receiver yang banyak berbagi (share) 1 jalur sinyal. Full duplex juga dapat digunakan dimana setiap arah memiliki jalur sinyalnya sendiri.
Jalur full duplex pada RS-485 menggunakan chip untuk mengkonversi tegangan TTL yaitu Texas Instruments ’ SN75179B differential driver dan receiver. Driver dapat mengubah tegangan 5 V TTL ke RS-485 dan receiver akan mengubah balik. Dalam full duplex, pengaturan dilakukan dengan cara master dan slave. Master mengontrol semua jaringan dan memberikan ijin untuk pengiriman. Setiap driver master terhubung dengan semua receiver slave, sebaliknya semua slave juga terhubung dengan master. Setiap slave akan membaca pesan dari master, untuk menentukan slave mana yang akan beroperasi. Slave yang ditunjuk sesuai alamat akan mengirim balik ke jalur lainnya yang berpasangan.
Gambar 2.9 Full-duplex
Jalur half-duplex digunakan jika hanya ada beberapa driver dan receiver. Semua berbagi jalur. Jadi hanya 1 device yang dapat mengirim pada suatu waktu.
27 Kelemahannya yaitu tidak menjamin bahwa jalur yang akan dilalui itu kosong untuk pengiriman. Tapi kelebihannya yaitu menghemat jumlah bit pada port serta menghemat kabel. Chip untuk mengubah tegangan TTL ke RS-485 adalah Texas Instruments ’ SN75176B differential bus transceiver.
Gambar 2.10 Half-duplex
Waktu dalam pengiriman sinyal menuju receiver dipengaruhi oleh panjang fisikal dari kabel, frekuensi yang dibawa dan seberapa cepat sinyal
28 berjalan. Ketika panjang kabel pendek, dan frekuensi rendah, maka waktu yang diperlukan oleh sinyal hanya sedikit mempengaruhi kualitas sinyal. Sinyal yang diterima dapat diasumsikan identik. Untuk kabel yang panjang serta frekuensi yang tinggi, waktu yang diperlukan sinyal sangat penting atau signifikan dalam kualitas sinyal. Tegangan yang terefleksikan harus dikurangi untuk dapat mengetahui sinyal yang dikirimkan dengan jelas. Parameter yang menentukan adalah cable delay.
Cable delay adalah waktu yang diperlukan sinyal dalam berjalan di kabel. Waktu delay ini merupakan panjang kabel fisikal dibagi dengan kecepatan sinyal dalam kabel. Kecepatan sinyal elektronik dalam kabel ini sangat besar, yaitu 8
sekitar 2/3 sampai 3/4 kecepatan cahaya dalam ruang hampa yaitu 2x10 m/s (8 8
inci/nano detik) sampai 2,25x10 m/s (9 inci/nano detik). Untuk delay 1 arah, maka kabel dengan panjang yang berbeda akan menghasilkan delay sebesar [7] : Tabel 2.6 Cable Delay Panjang (m) Delay 1 arah(μs , 8inci/nano detik)
0.6 0.003
3 30 0.015 0.15
300 1.5
1200 15
29 2.5. NET Framework Pada bulan Juni 2006, Microsoft memperkenalkan teknologi .NET. Salah satu aspek yang penting dari teknologi ini adalah independensinya pada bahasa pemrograman serta platform. Programmer dapat membuat suatu aplikasi dengan menggunakan beberapa bahasa pemrograman yang berbeda. Bahasa pemrograman yang berbeda ini dapat digabungkan oleh .NET Framework menjadi satu program. Dengan demikian, masing-masing programmer dapat menggunakan bahasa pemrograman pilihannya,sesuai dengan pilihannya. Aplikasi yang menggunakan .NET juga tidak memiliki ketergantungan pada platform, atau dikatakan platform independent. Teknologi .NET juga menggunakan konsep software reuse, sehingga programmer tidak perlu membuat ulang semua komponen yang telah ada, namun hanya perlu menggunakan yang sudah ada, dengan demikian programmer dapat lebih fokus pada masalah utama yang lain sehingga mempercepat waktu pembuatan suatu aplikasi dan menghemat cost.
Microsoft .NET Framework merupakan pusat dari teknologi .NET. Framework inilah yang mengatur dan mengeksekusi aplikasi .NET. Framework ini mengandung class library (Framework Class Library), menyediakan security dan kemampuan programming lainnya.
Common Language Runtime (CLR) merupakan salah satu bagian penting dalam .NET Framework. CLR merupakan bagian yang mengeksekusi program .NET. Program yang dibuat dicompile menjadi Microsoft Intermediate Language (MSIL). Setelah itu,
30 MSIL baru dicompile lagi menjadi machine code untuk dijalankan. Dua tahap kompilasi ini tidak seperti proses kompilasi yang biasa. Proses kompilasi yang biasa hanya terdiri dari tahap yaitu progam yang dibuat langsung dicompile menjadi machine language untuk dieksekusi. Alasan utama CLR menggunakan dua tahap proses kompilasi adalah platform independence (portability antara operating system), language interoperability (independence antara bahasa pemrograman) dan fitur lainnya seperti memory management dan security.
Syarat agar aplikasi .NET bersifat platform independence adalah .NET framework harus terdapat di dalam operating system tersebut. Dengan platform independence berarti aplikasi yang dibuat untuk dijalankan dalam suatu operating system, dapat pula dijalankan dalam operating system yang lain. Kemampuan ini menghemat waktu dan cost karena tidak perlu lagi untuk memodifikasi program saat ingin menjalankannya di platform yang berbeda. Selain itu, aplikasi yang dibuat juga dapat menargetkan dirinya pada pasar yang lebih besar karena sebelum ada teknologi ini, perusahaan pembuat software harus mempertimbangkan costnya dahulu sebelum memutuskan untuk membuat softwarenya pada platform lain. Dengan adanya teknologi .NET, hal ini tidak perlu menjadi pertimbangan lagi. .NET juga memudahkan dalam proses deployment aplikasi karena proses deployment dapat dilakukan pada banyak jenis device yang mendukung .NET framework. Misalkan aplikasi .NET yang berbasiskan web dapat diakses baik oleh komputer maupun PDA (Personal Digital Assistant) yang mendukung .NET framework.
31 .NET framework juga menyediakan language interoperability. Program yang ditulis dalam bahasa-bahasa pemrograman yang berbeda, dicompile menjadi MSIL. Bagian dari bahasa-bahasa pemrograman yang berbeda ini digabung menjadi satu program pada saat berbentuk MSIL. MSIL membuat .NET framework bersifat language independence karena aplikasi .NET yang dibuat tidak terpaku pada bahasa pemrograman tertentu saja. Setiap programmer dapat memilih bahasa pemrograman apa saja yang bisa dicompile menjadi MSIL. Bahasa pemrograman yang demikian disebut dengan .NET– compliant language. Bahasa-bahasa pemrograman yang mendukung .NET yaitu : Tabel 2.7 Bahasa Pemrograman yang Mendukung .NET APL C# COBOL Component Pascal
Curriculum J# Oz Eiffel Jscript Pascal Fortran Mercury Perl Haskell
Oberon
RPG Scheme Smalltalk
Visual Basic .NET Visual C++ .NET
Python Standard ML
CLR juga menyediakan fitur untuk memory management dan security. Hal ini dapat mempermudah pekerjaan programmer karena dengan bahasa pemrograman lain seperti C++, programmer harus menangani memory management sendiri. Hal ini dapat menyebabkan masalah apabila programmer salah dalam menangani memory management sehingga memory menjadi penuh dan aplikasi menjadi tidak dapat berjalan. Memory management yang ditangani oleh .NET membuat suatu program lebih reliable dan memberi kebebasan pada programmer untuk lebih fokus pada penyelesaian masalah program yang utama.
32 .NET framework juga menyediakan sekumpulan library class yang disebut dengan Framework Class Library (FCL). FCL ini terdiri dari komponen-komponen yang dapat digunakan langsung oleh programmer, sehingga programmer tidak perlu membuatnya sendiri dan menghemat waktu [8].
2.6 Modul Ethernet to Serial Gateway (EG-SR-7150MJ) EG-SR-7150MJ merupakan suatu modul buatan WIZnet Inc yang dapat mengubah data serial menjadi data TCP/IP. Modul ini dapat mengirim data dari perangkat serial ke TCP/IP atau juga menerima data dari TCP/IP. Fitur utama dari modul ini yaitu : •
Konektor RJ-45 untuk melakukan hubungan dengan Ethernet.
•
Mendukung command serial.
•
Stabilitas dan reabilitas yang baik dengan menggunakan Chip WIZnet W3150A, sebuah fully hardwired TCP/IP stack.
•
Program konfigurasi yang mudah digunakan dan powerful.
•
Interface 10/100 Mbps Ethernet.
•
Maksimum kecepatan serial 230kbps.
•
RoHS compliant.
33 Spesifikasi dari EG-SR-7150MJ : Tabel 2.8 Spesifikasi EG-SR-7150MJ Category Form Factor LAN Interface Protocol CPU Serial Interface Serial Signals Serial parameters
Management
Specifications 2mm Pitch 2x6 pins, 62x40 mm 10/100 Mbps auto-sensing, RJ-45 connector TCP, UDP, IP, ARP, ICMP, MAC, (IGMP, PPPoE) AT89C51RC2 (8bit MCU and 32K Flash) RS 232 (LVTTL) TXD, RXD, RTS, CTS, GND Parity : None, Even, Odd Data bits : 7, 8 Flow control : RTS/CTS, XON/XOFF Speed : up to 230Kbps Configuration utility based on Windows
Temperature Humidity Power Size
0℃~70℃ (Operating), -40℃~85℃ (Storage) 10~90% 150mA @ 3.3V (max) 40mm x 62mm x 17mm
Modul ini disertai suatu program configuration tool untuk mengatur modul ini.
2.6.1 Configuration Tool Fitur-fitur yang terdapat dalam program konfigurasi ini yaitu : 1. Search Fungsi Search ini digunakan untuk mencari keberadaan modul yang sama di dalam suatu jaringan yang sama. Metode pencarian dilakukan dengan UDP broadcast. Apabila ditemukan keberadaan modul yang lain, maka MAC addressnya akan ditampilkan ke user di bagian “Module List”. Fungsi search ini
34 dapat pula digunakan untuk mencari modul yang sama pada jaringan yang berbeda. Untuk melakukan ini, mode ”Direct IP search” harus dipilih dahulu dan modul lain harus diberi alamat IP terlebih dahulu. Pada cara ini, bukan UDP lagi yang digunakan, melainkan dengan TCP.
2. Setting Untuk melakukan setting, maka pertama-tama harus dipilih dahulu salah satu modul dari “Module List”, setelah itu nilai-nilai konfigurasi dari modul yang dipilih tersebut akan ditampilkan. User kemudian dapat mengubah-ubah konfigurasi tersebut dan setelah selesai, user tinggal menekan tombol “Setting” dan kemudian modul yang diubah konfigurasinya tersebut memiliki konfigurasi yang baru.
3. IP Configuration method: Static, DHCP Modul ini dapat diberi alamat IP dengan dua cara, yaitu dengan static atau DHCP. Pada cara static, user menentukan sendiri alamat IP modul, sedangkan pada cara DHCP, alamat IP modul ditentukan secara otomatis dari sebuah server DHCP.
35 4. Operation mode : TCP server, TCP client, UDP Modul ini mendukung 3 mode operasi, yaitu TCP server, TCP client dan UDP. Diagram mode UDP :
Gambar 2.11 Diagram Mode UDP
Perbedaan antara mode TCP dan UDP adalah mode TCP menjamin pengiriman data dengan adanya ACK, sedangkan UDP tidak menjamin pengiriman data tetapi UDP dapat bekerja lebih cepat karena tidak menggunakan ACK. Pada mode UDP, pertama-tama tidak dilakukan permintaan untuk melakukan koneksi seperti pada TCP/IP.
36 Diagram mode TCP server :
Gambar 2.12 Diagram Mode TCP server
Pada mode TCP server, Local IP, Subnet, gateway address dan local port number harus dikonfigurasi terlebih dahulu. Modul EG-SR-7150MJ ini kemudian menunggu permintaan koneksi dari komputer host. Jika permintaan untuk koneksi datang, maka terjadi koneksi dan kemudian data dapat dikirimkan dari komputer ke modul atau dari modul ke komputer.
37 Diagram mode TCP client :
Gambar 2.13 Diagram Mode TCP client
Pada mode TCP client, Local IP, Subnet, gateway address, server IP dan server port number harus dikonfigurasi terlebih dahulu. Modul EG-SR-7150MJ lalu melakukan permintaan kepada komputer untuk melakukan koneksi. Setelah koneksi tercipta antara komputer dan modul, maka data dapat dikirimkan dari modul ke komputer atau dari komputer ke modul.
38 5. Serial command method: H/W trigger, S/W trigger Pada menu ini, user dapat menentukan bagaimana caranya memasuki mode serial command. Mode ini dapat dimasuki dengan dua cara, melalui hardware (H/W trigger) atau melalui software (S/W trigger).
Pada metode H/W trigger, mode serial command dimasuki dengan membuat H/W trigger pin menjadi low, dan untuk keluar dari mode serial command H/W trigger pin dikembalikan ke posisi high.
Pada metode S/W trigger, mode serial command dapat dimasuki apabila user memasukkan 3 karakter yang ditentukan oleh user sendiri. 3 karakter ini dapat ditentukan oleh user dengan memasukkan nilainya di program configuration tool. Untuk keluar dari mode ini, digunakan command WR.
6. Delimiter: Time, Size, Character User dapat menentukan bagaimana data serial diatur dan dikirim ke Ethernet. Hal ini dilakukan dengan mengatur 3 buah delimiter yaitu time, size dan character. Apabila semua delimiter ini bernilai 0, maka data serial akan langsung dikirim tanpa kondisi apapun.
39 7. Inactivity time Inactivity time dapat ditentukan oleh user di program configuration tool. Inactivity time ini menentukan berapa lama koneksi akan ditutup setelah koneksi terjadi apabila tidak ada transmisi data.
8. Upload Upload digunakan untuk meng-upload firmware melalui jaringan.
2.6.2 Spesifikasi Serial Command Frame Format untuk command : Tabel 2.9 Frame Format Command Deskripsi STX Command Code Parameter ETX Length(Bytes) 1 2 Variable 1
Frame Format untuk reply : Tabel 2.10 Frame Format Reply Deskripsi Length(Bytes)
STX
Reply Code 1
1
Parameter Variable
ETX 1
40 Karakter STX dan ETX yang digunakan yaitu : Tabel 2.11 Karakter STX dan ETX Setting STX ETX
Karakter ‘<’ ; ‘>’ ;
Hex = 3Ch Hex = 3Eh
Karakter yang digunakan untuk reply codenya yaitu : Tabel 2.12 Reply Code Reply Code S F 1 2 E
Deskripsi Command berhasil dilakukan Command gagal dilakukan Invalid command Invalid parameter Enter Serial Command Mode
41 Flow Chart cara kerja modul :
Gambar 2.14 Flowchart Modul Wiznet
Modul ini memiliki konfigurasi default yang telah diset oleh pembuatnya. Reset ini juga dapat dilakukan oleh user dengan me-low-kan pin reset. Setting defaultnya yaitu :
42 Tabel 2.13 Setting Default Wiznet IP configuration Local IP address Subnet mask Gateway address Local port number Server IP address Server port number Operation mode Serial port Serial command method
Static 192.168.11.2 255.255.255.0 192.168.11.1 5000 192.168.11.3 5000 TCP server mode 9600 bps 8-N-1 H/W trigger
Command Code yang digunakan yaitu : Tabel 2.14 Command Code Wiznet Command
Parameter
Deskripsi
WI
xxx.xxx.xxx.xxx
Set Local IP
WS
xxx.xxx.xxx.xxx
Set Subnet mask
WG
xxx.xxx.xxx.xxx
Set Gateway
WP
0~65535
Set Local IP’s port number
WD
0 : Static
WM
0 : TCP server, 1 : TCP client, 2 : UDP
Set the operation mode
WC
0 : startup
TCP client method
,
1 : DHCP
,
1 : any character
Set the IP configuration method
43 WB
Set the serial baud rate, data,
XXXX [Baudrate]
1: 115200, 2: 57600, 3: 38400, 4: 19200,
parity and flow control. 4bytes:[Baud][data byte][parity][flow]
5: 9600,
6: 4800,
7: 2400,
8: 1200
[data byte] 7 : 7bit, [parity]
0 : no parity 1 : Odd,
[Flow]
8: 8bit
2 :Even
0 : no 1 : Xon/Xoff, 2 :RTS/CTS
WT
0 : Disable 1 : H/W trigger
Set the serial command method 2 : S/W trigger
WE
xxxxxx
Set the command mode character
WX
xxx.xxx.xxx.xxx
Set server IP address
WN
0~65535
Set server port number
WR OC
Restart XX
Set delimiter character in hex
44 OS
0~255
Set delimiter size
OT
0~65535
Set delimiter time
OI
0~65535
Set Inactivity timer value
RI
Get Local IP
RS
Get Subnet mask
RG
Get Gateway
RP
Get Local IP’s port number
RD
Get the IP configuration method
RM
Get the operation mode
RC
Get the TCP client method
RB
Get the serial baud rate
RT
Get the serial command method
RE
Get the command mode character
RF
Get the firmware version
RX
Get the server IP address
RN
Get the server port number
QC
Get delimiter character in hex
45 QS
Get delimiter size
QT
Get delimiter time
QI
Get Inactivity timer value
2.6.3 PIN Assignment
Gambar 2.15 Pin Assignment Wiznet
46 Fungsi-fungsi dari tiap pinnya yaitu [5] : Tabel 2.15 Fungsi Pin Wiznet Nama 3.3 V /RESET RXD CTS TXD RTS
Fungsi Power Low Active Reset RS-232 Data Input RS-232 Clear To Send RS-232 Data Output RS-232 Request To Send Apabila Factory Reset bernilai low dan pin /RESET diaktifkan Factory Reset maka konfigurasi akan kembali ke nilai default Buat H/W Trigger menjadi low H/W Trigger untuk memasuki serial command mode Apabila /PSEN bernilai low dan pin /RESET diaktifkan, /PSEN maka modul akan memasuki bootloader untuk koneksi FLIP
I/O Input Input Input Output Output Input Input Input