Wednesday

Komunikasi Serial Menggunakan Mikrokontroler Atmel AVR ATmega atau ATTiny

Mikrokontroler Atmega 8A

Mikrokontroler keluarga AVR seperti ATMega, ATTiny, XMega adalah mikrokontroler yang memiliki banyak fitur dalam 1 chip, sehingga sangat memudahkan pemrogramanya.

Fitur komunikasi mikrokontroler dengan device lain (dengan mikrokontroler lain, computer, eeprom external, sd card, gps, dll) saat ini sangat dimudahkan, terlebih lagi tidak memboroskan penggunaan pin I/O

Beberapa jenis komunikasi yang didukung mikrokontroler keluarga AVR antara lain :
- ISP
- USART ( Serial RS232 )
- Two Wire Serial Interface ( I2C )


Komunikasi USART atau dikenal dengan Serial adalah salah satu protokol komunikasi mikrokontroler  yang banyak dipergunakan untuk komunikasi dengan computer, karena kemudahan setting dan instalasinya.

Apakah komunikasi langsung antara mikrokontroler dan computer dapat dilakukan? jawabnya Bisa... tapi mengapa banyak peralatan seperti modem, ponsel, bluetooth, data logging , barcode masih menggunakan hubungan serial (com)?

Alasan penggunaan komunikasi serial (com) adalah, dari saat computer menggunakan windows untuk pertama kalinya, sampai dengan windows terbaru, protokol serial tidak pernah berubah, bandingkan dengan protokol usb, akan berubah untuk setiap versi windows, sehingga peralatan akan dengan mudah diaplikasikan pada computer dengan os windows pada berbagai versi


USB to Serial  (TTL) Nokia DKU-5
Tapi bila  peralatan seperti modem, ponsel, bluetooth, data logging , barcode menggunakan komunikasi serial, mengapa ditancapkan pada port usb? bukan pada port serial (com)?
Memang peralatan tersebut ditabcapkan pada port usb, akan tetapi hubungan pada software pada computer adalah komunikasi serial, bisa dilihat pada device manager, port usb hanya sebagai jalur keluar masuk dimana data usb tsb ditangani oleh driver dan diubah menjadi data serial (com).

Syarat komunikasi serial dapat dilakukan dengan benar antara mikrokontroler dengan computer adalah :
- clock
- port serial
- data bits
- stop bits
- parity bit

Komunikasi serial dapat dilakukan dengan Full Duplex ( Tx dan Rx  dapat dilakukan dalam waktu bersamaan )

Banyak Aplikasi yang dapat dibuat bila mikrokontroler dihubungkan dengan computer antara lain :
- data logging
- robotika
- kendali peralatan
- monitor peralatan
- modem email melalui radio amatir / HT
- modem chatting melalui radio amatir / HT
- program penjualan toko dengan barcode scaner
- antrian pada bank, kantor ,dll
- program isi ulang pulsa, token listrik, dll dengan antar muka ponsel

Peralatan yang diperlukan untuk koneksi mikrokontroler dan computer sangat mudah didapat di toko elektronik atau membeli secara online
Peralatan yang diperlukan ada 3  :
- Computer
- USB to Serial (computer baru terutama laptop baru tidak terdapat port serial)
- Mikrokontroler

USB to Serial adalah converter yang menggunakan merubah data USB menjadi serial (com), converter ini mengunakan ic yang berbeda2, salah satunya PL-2303 dengan kecepatan transfer data 115.200 bps
kita dapat menggunakan kabel data Nokia DKU-5 / CA-42 atau  sejenisnya (DKU-5 menggunakan IC PL-2303)
USB to Serial ( TTL) dengan IC PL-2303
USB to Serial (TTL) dengan IC PL-2303

Untuk penggunaan DKU-5, cari datasheet pin out kabel data, dan perlu diingat, keterangan Tx kabel DKU-5 dihubungkan dengan Tx Mikrokontroler dan Rx kabel DKU-5 dihubungkan dengan Rx Mikrokontroler, pin Rx Mikrokontroler  diperlukan resistor pull up
berbeda dengan USB to Serial seperti gambar diatas, pemasangan adalah sebaliknya Tx ke Rx, Rx ke Tx

Koneksi USB to Serial (TTL) yang menggunakan IC PL-2303 dengan mikrokontroler tidak diperlukan pembagi teganggan ataupun converter (RS232) serial to TTL kecuali langsung menggunakan port serial (com) bawaan computer yang level tegangganya -15V dan +15V

Berikut wiring penggunaan DKU-5 sebagai jalur komunikasi serial antara computer dengan mikrokontroler :

Koneksi DKU-5 dan Mikrokontroler
Dari gambar diatas, pada datasheet Atmega8A, [pin 2 = RXD], [pin 3 = TXD], [pin 8 & 22 = GND]
Pada mikrokontroler seri lain, wiring sama, yang berbeda posisi pin TXD, RXD ( lihat datasheet mikrokontroler yang dipakai )

Download Driver USB to Serial (TTL) prolific PL-2303 HXA
Ukuran file : 3 MB
Jenis File : exe

Driver ini dapat dipergunakan untuk DKU-5, CA-42, USB to Serial lain dengan IC PL-2303 HX

Yang perlu diperhatikan dalam komunikasi serial adalah panjang kabel.
Untuk data keluaran (contoh  DKU-5) yang dikonversi menggunakan IC RS232 menuju IC RS232 lain yang dihubungkan dengan mikrokontroler,
- panjang kabel max 15 meter (dengan sembarang kabel listrik) dan kecepatan transfer harus diturunkan sampai data dikirim dan diterima tanpa kesalahan.
- dengan penggunaan kabel low-capacitance, panjang kabel max 300 meter

-  tanpa penggunaan RS232, panjang kabel antara DKU-5 ke mikrokontroler max 2-3 meter

Bila menginginkan panjang kabel max 1200m, pergunakan konverter RS485, dengan persyaratan kabel merupakan kabel twisted (kabel pelintir/bukan kabel sejajar)  dan kecepatan transfer data max dengan rumusan :

Kecepatan transfer max (bps) = ( 100.000.000 / panjang kabel (meter) )

misal : panjang kabel 1000 meter, maka kecepatan max yang diijinkan : 100.000.000 / 1000 = 100.000 bps

Program Mikrokontroler Atmega Tx & Rx Serial Data

//=>> Computer Application / Hyperterminal Serial Setting
// BaudRate : 115200
// DataBits : 8
// StopBits : 2
// Parity : Odd
// FlowControl : None
//=>> Computer Application / Hyperterminal Serial Setting

//---888-88.blogspot.com
//---Atmega8A
//---microcontroler crystal freq 11.0592 MHz
//---Vcc := 5V
//---Data Rx memicu interupsi

//------------- start program

.def data0=r16
.def data1=r17
.def data2=r18
.equ clock=11059200 //-- Freq Crystal yang dipergunakan (Hz)
.equ rate=115200  //-- Setting BaudRate (bps)
.equ ubbr_value=(clock/(16*rate))-1
.org 0x0000
rjmp main
.org 0x000B
rjmp USART_RXC
main:
ldi data0,low(ramend)
out spl,data0
ldi data0,high(ramend)
out sph,data0

//---inisialisasi port
//-- 0b* * * * * * 00 (* = user setting, bit d0 = RXD, bit d1 = TXD)
ldi data0,0b00000000 
out ddrd,data0
//-- 0b* * * * * * 01 (* = user setting, bit d0 = RXD, bit d1 = TXD)
ldi data0,0b11111101
out portd,data0
nop
//---inisialisasi port
rcall USART_Init
sei

//--------------------------main program
prog:
rjmp prog
//--------------------------main program

//--- Rutin Receive Data
USART_RXC:
in data2,UDR
// data2 berisi data string yang diterima dari computer
// pergunakan data sesuai kebutuhan di area ini (Receive Data)
// misal : data string yang diterima akan dikirim kembali ke computer
// mengunakan program hyperterminal windows
// apa yanag kita ketik di keyboard akan ditampilkan pada monitor hyperterminal
//--- data2, dikirim melalui jalut Tx
rcall usart_tx
//--- data2, dikirim melalui jalut Tx 
reti
//--- Rutin Receive Data

//--- Rutin Send Data
usart_tx:
sbis UCSRA,UDRE
rjmp usart_tx
out UDR,data2
ret
//--- Rutin  Send Data

//----------- inisialisasi USART
USART_Init:
ldi data1,high(ubbr_value)
ldi data0,low(ubbr_value)
//-- Set baud rate
out UBRRH, data1
out UBRRL, data0
//-- Enable receiver and transmitter
ldi data0, (1<<RXEN)|(1<<TXEN)|(1<<RXCIE)|(0<<UCSZ2)
out UCSRB,data0
//-- Set frame format: 8data, 2stop bit, odd parity
ldi data0, (1<<URSEL)|(1<<USBS)|(1<<UCSZ1)|(1<<UCSZ0)|(0<<UCPOL)|(1<<UPM0)|(1<<UPM1)
out UCSRC,data0
ret
//----------- inisialisasi USART
//------------- end program


bersambung....

CgnSa Program Monitoring System berbasis Dekstop Computer


CgnSa Dekstop

CgnSa Dekstop
CgnSa adalah program monitoring system yang menghubungkan Computer dengan peralatan Digital-In, Digital-Out, Analog-In untuk memantau kondisi / status kontak peralatan elektrik.
Kondisi / status kontak peralatan akan ditampilkan pada Monitor Computer, sehingga dengan peralatan yang berjumlah banyak dapat dipantau kondisinya pada Monitor Computer di ruang operator

Dimana CgnSa diaplikasikan?
- Industri yang perlu memonitor dan mengendalikan banyak peralatan dengan banyak kontrol panel
- Scurity / Kantor / Gudang dapat memonitor seluruh pintu / jendela gedung yang dihubungkan dengan switch alaram
- Gedung untuk memonitor dan mengendalikan peralatan seperti ac, lampu, heater, dll
- PowerPlant untuk monitoring status generator, ketel uap, level bahan bakar
- Memantau Peralatan Otomatis / Robotika
- dll

Fungsi : 



 1.CgnSa
 CgnSa adalah software monitoring system yang dibubungkan dengan jaringan peralatan (Digital-In, Digital-Out, Analog-In) untuk memantau status yang ditampilkan pada Monitor Computer(Dekstop).
CgnSa dapat menangani 255 address peralatan pada 1000 port indikator/switch, dan 1000 port analog input (tergantung pada lisensi yang dipergunakan).

Koneksi CgnSa dengan peralatan adalah serial melalui jalur USB support sampai dengan 255 port (tergantung pada lisensi yang dipergunakan).

Kemudahan CgnSa adalah pada pembuatan LayOut, karena berbasis gambar sehingga dapat dibuat dengan CorelDraw , Adobe, gambar tangan yang di scan, sampai foto kamera, dan posisi panel indikator dan teks tinggal digeser-geser ke tempat yang diinginkan.

Harga lisensinya juga tidak semahal program monitoring seperti SCADA, DCS yang pada tahun 2013 lalu Rp.200.000.000,- (dua ratus juta rupiah) dan jauh lebih mudah pada aplikasinya


2.Digital-In (Digital Input)
Berfungsi untuk menerima masukan switch peralatan, dihubungkan dengan rellay monitoring kontaktor, dipasang pada kontrol panel, menerima 2 logika / kondisi On dan Off

3.Digital-Out (Digital Output)
Berfungsi untuk mengendalikan switch peralatan, dihubungkan dengan relay trigger kontaktor peralatan, dipasang pada kontrol panel, mengeluarkan 2 logika / kondisi On dan Off

4.Analog-In (Analog Input)
Berfungsi untuk menerima masukan berupa level teganggan 0V - 2.56V  /  0V -5V, dapat dihubungkan dengan peralatan instrumen / sensor, dipasang pada kontrol panel / pada area sensor

Instalasi
Peralatan (Digital-In, Digital-Out, Analog-In) dapat dihubungkan bersamaan pada 1 jalur kabel data dengan  setting address(alamat) berbeda


Monday

Pengertian Teknologi menurut 888-88

Dari judul posting ini dapat dipastikan bahwa "Pengertian Teknologi"  menurut saya, dan tidak peduli dengan pengertian oleh pihak/orang lain, jadi dipastikan ini adalah pengertian "sak karepku dewe"....

Apa yang kita dibayangkan saat mendengar/ membaca kata2 "Teknologi" ?? sebagian besar dari kita akan membayangkan sesuatu yang hebat, kecangihan, dll

Hidup saya dimulai saat jaman TV hitam putih dan hanya ada siaran TVRI yang setiap bulan pasti didatangi petugas dan ditagih iuran TVRI

Bila saya perhatikan, model komunikasi saat itu adalah :
- TV hitam putih dengan siaran TVRI
- Telephon rumah sistem switch alias muter-muter lempengan angka bila mau telephon
- PJKA yg sekarang PT.KAI (kereta api) komunikasi berita menggunakan radio SSB,  telephon engkol, morse dan kemudian radio SSB ditinggalkan diganti dengan telex
- Pesan tulisan menggunakan surat dengan prangko dan tercepat telegram melalui POS Indonesia
- Warga banyak yang punya radio komunikasi Amatir
- Tape / audio player dengan pita Kaset
- Telepati he..he..he...

Tahun berjalan, muncul
- video player (VCR), yaitu video player yang menggunakan pita kaset
- TV berwarna
- telephon dengan dial tone alias DTMF, (telephon sudah di pencet2)
- game poket (game watch) didareah saya, anak2 kecil menyebutnya "gembot" isinya game tetris
- dingdong (Game Station di mal2)

- Nintendo, Sega (game station pribadi), Nintendo awalnya super mario bros, sega kurang tau, krn gak punya

Tahun berjalan lagi,
- siaran TV tidak hanya TVRI, muncul RCTI, TPI
- computer "jangkrik" mulai banyak, computer ini menggunakan disket 5" lebih, harus pakai 2 biji, atas dan bawah, satu untuk OS Dos, satu lagi untuk memory, kapasitas disket ini masih dalam KB max nya 512 KB 
- muncul videoplayer yang dikenal "laser disc", cuma ukuran disc nya sebesar piringan hitam

Tahun lagi-lagi berjalan,
- Muncul Pager ( Pesan Text yang hanya dapat menerima), tapi Pager hanya bisa bertahan sebentar saja..
- Muncul Ponsel yang sebesar dan seberat batu paving jalan dengan jaringan AMPS , jangkauan signal operator terbatas di kota besar saja. dikota besar pun masih harus cari2 signal. Ponsel ini hanya bisa buat komunikasi suara, belum bisa sms
- muncul videoplayer yang dikenal "VCD", ukuran disc nyasudah seperti ukuran CD sekarang, kapasitasnya masih kecil

Tahun berjalan lagi gak mau berhenti,
- computer dengan HDD sudah muncul, dengan OS windows, media penyimpanan masih disket, tapi ukuranya lebih kecil dan kapasitasnya 1,1MB
- ponsel GSM muncul, bisa komunikasi suara dan SMS operatornya teklomsel dan disusul indosat. Harga perdananya lumayan dari 750rb - 1jt untuk telkomsel, dan 500rb untuk indosat, itupun jangkauan signal masih terbatas, sedang AMPS sudah meluas.
- ponsel GSM sudah bermacam2, tapi yang paling ok adalah erricsson versi "T"
- YM sudah banyak dipakai

Tahun berjalan tidak bisa di hentikan,
- USB port muncul, Memori Flash Disc muncul, OS Windows sudah update
- ponsel GSM sudah banyak macemnya,makin lama makin kecil, operator tambah XL, perdana sudah banyak yang 25 rb jangkauan signal makin luas.
- operator AMPS mulai banyak yang tutup, hanya bersisa 1 operator dan akhirnya tutup juga
- laptop sudah mulai banyak bermunculan

Tahun sudah tidak berjalan, tapi sudah naik motor, jadi kita sudah tau apa saja peningkatan di bidang teknologi,
Mengapa terjadi peningkatan teknologi ?? apa penyebabnya?
ternyata setelah mengamati dari saya mulai hidup sampai sekarang hanya 1 benang merahnya.."UKURAN".

Ukuran yang dimaksud meliputi tebal,panjang,lebar.
kita ilustrasikan komponen penguat daya (transistor)
- jaman tabung kuno, ukuran transistor sebesar botol kecap
- jaman tabung moderen, ukuran transistor sebesar lipstick
- jaman silikon kuno ,ukuran transistor sebesar 1/2 lipstick
- jaman silikon moderen, ukuran transistor lebih kecil dari bakteri

Bayangkan untuk membuat peralatan yang bekerja seperti ponsel kita sekarang
- dengan tabung  memerlukan ruang lebar sekali, bisa2 sebesar lapangan bola dan daya yang sangat besar
- dengan silikon kuno, memerlukan ruang kira2 selebar kamar tidur
- dengan silikon moderen yang di kemas dalam teknologi mikro/nano, ya.. sebesar ponsel kita sekarang

Kadang pengertian teknologi tinggi adalah sesuatu yang memiliki kecapatan tinggi, ukuran kecil dengan jumlah komponen yang sangat banyak, kosumsi daya rendah.
tapi apa yang dapat menjadikan suatu teknologi bisa dibuat dengan spesifikasi teknologi tinggi? lagi2 "UKURAN"

Jarak antar semi konduktor dan konduktornya berpengaruh pada kapasitas yang mempengaruhi kecepatan elektron bergerak dan pembuangan daya.

Jarak yang semakin tipis, mengakibatkan waktu elektron berpindah semakin pendak, daya yang terbuang menjadi panas semakin rendah.

dengan jarak yang tipis, dan ukuran yang sangat kecil, maka dalam suatu wafer silikon dengan ukuran 5mm x 5mm dapat ditempatkan komponen transistor, diode, capacitor dalam jumlah yang sangat banyak dan dibentuk dengan fungsi yang dibutuhkan.

Jadi teknologi bukanya mengurangi jumlah komponen individual, melainkan menambah komponen individual dengan ukuran kecil tetapi ditempatkan dalam tempat yang sempit