Archive for April, 2010

Sensor Suhu LM 35

April 24, 2010

LM 35 ini sejenis sensor yang dapat mengukur suhu panas yang akurat dalam pembacaan suhu panas pada sensor LM35.

Sensor LM35 memiliki sinyal berupa analog sehingga nilainya menjadi linier dan untuk mengetahui berapa niali yang akan di hasilkan setiap pemanasan per detiknya membutuhkan berupa ADC sebagai konversi dari suhu panas menjadi tegangan.

Aktifkan ADC pilih enable, tegangan referensi di ambil dari AVCC, clock 125.000 kHz. Setting LCD pada PORTC.
File>> generate save and exit.
Lakukan pengujian sensor menggunakan mikrokontroler :
– Siapkan Modul AVR
– Siapkan sensor LM 35 hubungkan pada PORTA.0
– Hubungkan LCD pada PORTC sebagai penampil suhu

– Hubungkan  kabel serial ke PC untuk tampilan menggunakan HyperTerminal

Download Program menggunakan LCD

Download Program menggunakan PC

RTC 1307

April 24, 2010

Real Time clock …

Gambar Skematik RTC – DS 1307.

Motor Servo

April 24, 2010

Motor Servo yang cocok untuk actuator robot , kemudahan dalam memprogram dan catu daya rendah sehingga menghemat baik untuk pin I/O  dan catu suplay nya.

motor servo terbagi menjadi  dua yaitu Servo Standar dengan putaran 180 derjaat dan servo kontinue dengan putaran 360 derajat.

PWM Motor DC

April 22, 2010

Pulse Width Modulation merupakan gelombangkotak dengan duty cyle tertentu menghasilkan beragai nilai yang benbeda-beda dari bentuk gelombang kotak.

PWM biasanya di gunakan untuk pengaturan kecepatan motor,

contoh rangkaian menggunakan Transistor.

prinsip keja adalah tranasitor tersebut sebagai saklar otomatis sehingga arus yang melewati dari VCC tersebut dapat di atur  besarnya sehingga putaran motor pun akan dapat di atur pula. tegangan yang masuk pada Colector transistor untuk di lewatkan pada Emiter dengan cara memicu pada bagian Basis Transistor. besar kecilnya tegangan pemicu akan mengahasil kan beasar kecilnya tegangan yang di leawatkan Transistor sehingga  kecepatan Putaran motor pun dapat di control melalui tegangan picu pada basis yang terhubung dengan mikrokontroler.

Rangkain Driver menggunakan 1 buah Transistor NPN  seperti gambar di Atas hanya dapat mengotor pada 1 arah putaran motor, nah jika anda membutuhkan 2 arajh putaran motor maka membutuhkan 2 buah Transistor NPN dan 2 buah Transistor PNP yang di bentuk H-bried, untuk rangkaian H-Bried terkadang di temukan banyak kendala dan tidak sempurnanya yang di hasilkan dari rangkaian itu di karenakan kesulitan dalam menentukan nilai Resistor sebagai pemicu., sering terjadi panas pada bagian transistor tersebut.

jika ada yang mudah kenapa yang repot-repot . driver motor yang sudah jadi berbentuk IC pun sudah banyak tersedia contoh L293, L298 .

Rankaian driver L208.

Rangkain Driver L298 memiliki 2 terminal output motor DC max 30 volt dengan 4 pengontrol arah dan 2 buah pengotrol PWM motor. driver ini sangat cocok untuk driver robot-robot.

contoh program sederhana untuk rangkaaian Driver L298.

#include <mega16.h>

#define cw1   PORTD.2 //cw  motor1

#define ccw1 PORTD.3 //ccw motor1

#define cw2   PORTD.6 //cw  motor2

#define ccw2 PORTD.7 //ccw motor2

void main(void) {

PORTD=DDRD=0xff; TCCR1A=0b10100011; TCCR1B=0b00000001;

OCR1A=1000; // PWM_Motor1

OCR1B=1000; // PWM_Motor2

cw1=0;ccw1=1;

cw2=1;ccw2=0;

}

ATmega16

April 21, 2010

AVR merupakan seri mikrokontroler CMOS 8-bit buatan Atmel, berbasis arsitektur RISC (Reduced Instruction Set Computer). Hampir semua instruksi dieksekusi dalam satu siklus clock. AVR mempunyai 32 register general-purpose, timer/counter fleksibel dengan mode compare,  interrupt internal dan eksternal, serial UART, programmable Watchdog Timer, dan  mode power saving, ADC dan PWM internal. AVR juga mempunyai In-System Programmable Flash on-chip yang mengijinkan memori program untuk diprogram ulang dalam sistem menggunakan hubungan serial SPI. ATMega16. ATMega16 mempunyai  throughput mendekati 1 MIPS per MHz membuat disainer sistem untuk mengoptimasi konsumsi daya versus kecepatan proses.

Beberapa keistimewaan dari AVR ATMega16 antara lain:
1.   Advanced RISC Architecture
130 Powerful Instructions – Most Single Clock Cycle Execution
32 x 8 General Purpose Fully Static Operation
Up to 16 MIPS Throughput at 16 MHz
On-chip 2-cycle Multiplier
2.   Nonvolatile Program and Data Memories
8K Bytes of In-System Self-Programmable Flash
Optional Boot Code Section with Independent Lock Bits
512 Bytes EEPROM  512 Bytes Internal SRAM
Programming Lock for Software Security

3.  Peripheral Features
Two 8-bit Timer/Counters with Separate Prescalers and Compare Mode

Two 8-bit Timer/Counters with Separate Prescalers and Compare Modes

One 16-bit Timer/Counter with Separate Prescaler, Compare Mode, and  Capture Mode

Real Time Counter with Separate Oscillator Four PWM Channels
8-channel, 10-bit ADC
Byte-oriented Two-wire Serial Interface
Programmable Serial USART
4. Special Microcontroller Features
Power-on Reset and Programmable Brown-out Detection
Internal Calibrated RC Oscillator
External and Internal Interrupt Sources
Six Sleep Modes: Idle, ADC Noise Reduction, Power-save, Power-down, Standby and Extended Standby
5. I/O and Package
32 Programmable I/O Lines
40-pin PDIP, 44-lead TQFP, 44-lead PLCC, and 44-pad MLF
6.  Operating Voltages
2.7 – 5.5V for Atmega16L
4.5 – 5.5V for Atmega16

Pin-pin pada ATMega16 dengan kemasan 40-pin DIP (dual in-line package) ditunjukkan oleh gambar 1. Guna memaksimalkan performa, AVR menggunakan arsitektur Harvard (dengan memori dan bus terpisah untuk program dan data).

Port sebagai input/output digital ATMega16 mempunyai empat buah port yang bernama  PortA, PortB, PortC, dan PortD. Keempat port tersebut merupakan jalur  bi-directional dengan pilihan  internal pull-up. Tiap port mempunyai tiga buah register bit, yaitu DDxn, PORTxn, dan PINxn. Huruf ‘x’mewakili nama huruf dari port sedangkan huruf ‘n’ mewakili nomor bit. Bit DDxn terdapat pada I/O address DDRx, bit PORTxn terdapat pada

I/O address PORTx, dan bit PINxn terdapat pada I/O address PINx. Bit DDxn dalam register DDRx (Data Direction Register) menentukan arah pin. Bila DDxn diset 1 maka  Px berfungsi sebagai pin output. Bila DDxn diset 0 maka Px berfungsi sebagai pin input.Bila PORTxn diset 1 pada saat pin terkonfigurasi sebagai pin input, maka resistor pull-up akan diaktifkan. Untuk mematikan resistor  pull-up, PORTxn harus diset 0 atau pin dikonfigurasi sebagai pin output. Pin port adalah  tri-state setelah kondisi reset. Bila PORTxn diset 1 pada saat pin terkonfigurasi sebagai pin output maka pin port akan berlogika 1. Dan bila PORTxn diset 0 pada saat pin terkonfigurasi sebagai pin output maka pin port akan berlogika 0. Saat mengubah kondisi port dari kondisi  tri-state  (DDxn=0, PORTxn=0) ke kondisi  output high (DDxn=1, PORTxn=1) maka harus ada kondisi peralihan apakah itu kondisi pull-up enabled  (DDxn=0, PORTxn=1) atau kondisi output low (DDxn=1, PORTxn=0).  Biasanya, kondisi pull-up enabled dapat diterima sepenuhnya, selama lingkungan impedansi tinggi tidak memperhatikan perbedaan antara sebuah  strong high driver  dengan sebuah  pull-up. Jika ini bukan suatu masalah, maka bit PUD pada register SFIOR dapat diset 1 untuk mematikan semua pull-up dalam semua port. Peralihan dari kondisi input dengan pull-up ke kondisi output low juga menimbulkan masalah yang sama. Kita harus menggunakan kondisi  tri-state (DDxn=0, PORTxn=0) atau kondisi output high (DDxn=1, PORTxn=0) sebagai kondisi transisi.

Download Data Sheet ATmega16

Download ATmega8535