30 September 2011

TUGAS BAHASA INGGRIS BISNIS 1



 1. TUGAS MEMO 
 
MEMORANDUM

From           : Marketing Manager                                                 Date: 29th September 2011
To               : General Manager
Subject       : Recruitment sales

In order to meet target in sales of our product, we need to rise rate of sales. It is needed to expand market area. I think we have no choice but recruit some new employees for sales position.

Can you follow up ‘recruitment’ to meet our recruitment?
If possible, next month I would like to have 10 new employees in my division.

Cc. Finance Manager


                                   
   Marketing Manager




2. TUGAS TELEX

DATE : Jakarta, 29th September 2011
TO : TELECOMUNICATION INDONESIA
ATTN : DOCUMENT 
FM : PT. ICON PLUS INDONESIA
CC : PT. M+R Forwarding Indonesia Jakarta / Mr. Danang




Exercise 2: Count and Non-Count Nouns

Identify the following nouns as count nouns or non-count nouns according to their usual meaning.

television
atmosphere
food
cup
car
person
tooth
money
News
water
soap
hydrogen
geography
pencil
soup
minute

ANSWER
Countable Noun:                   Uncountable Noun:
-          Television                         - Money
-          Car                                   - Geography
-          Person                              - Atmoshphere
-          Pencil                               - Water
-          Tooth                               - Food
-          Soap                                 - Soup
-          Cup                                  - Hydrogen
-          Minute                             - News


Exercise 3: Determiners

Choose the correct determiners in the following sentences.
  1. He does’t have (many/much) money.
  2. I would like (afew/alittle) salt on my vegetables.
  3. She bought (that/those) cards last night.
  4. There are (less/fewer) students in this room than in the next room.
  5. There is (too much/too many) bad news on television tonight.
  6. I do not want (these/this) water.
  7. This is (too many/too much) information to learn.
  8. A (few/little) people left early.
  9.  Would you like (less/fewer) coffee than this?.
  10. This jacket costs (too much/too many).

ANSWER
  1. Much
  2. A little
  3. Those
  4. Fewer
  5. Too much
  6. This
  7. Too many
  8. A few
  9. Less
  10. Too much

Exercise 4: Article

In the following sentences supply the article (a, an, or the) if they are necessary. If no article is necessary, leave the space blank.
  1. Jason’s father bought him ________ bicycle than he had wanted for his birthday.
  2. ­­­­­­­­­­­­­_______ Statue of Liberty was a gift of friendship from ______ France to _____ United States.
  3. Rita is studying _____ English and _____ math this semester.
  4. ____ judge asked _____ witness to tell _____ truth.
  5. Please give me _____ cup of _____ coffee with ______ cream and _____ sugar.
  6. ______ big books on ______ table are for my history class.
  7. No one in ______ Spanish class knew ______ correct answer to ____ Mrs. Perez’s question.
  8. My _____ car is four years old and it still runs well.
  9. When you go to ____ store, please buy _____ bottle of ____ chocolate milk and ____ dozen oranges.
  10. There are only ____ few seats left for ____ tonight’s musical at _____ university.
  11. John and Marcy went to _____ school yesterday and then studied in ____ library before returning home.
  12. ____ Like Erie is one of _____ five Great Lakes in ____ North America.
  13. On our trip to _____ Spain, we crossed ____ Atlantic Ocean.
  14. ____ mount Rushmore is the site of ______ magnificent tribute to ____ four great Amirican presidents.
  15. What did you eat for _____ breakfast this morning?.
  16. Louie played _____ basketball and ____ basketball at ____ Boys’Club this year.
  17. Rita plays ____ violin and her sister plays ____ guitar.
  18. While we were in _____ Alaska, we saw _____ Eskimo village.
  19. Phil can’t go to ____ movies tonight because he has to write ____ essay.
  20. David attended ____ Princeton University.
  21. Harry has been admitted to _____ School of Medicine at _____ midwestern university.
  22. Mel’s grandmother is in _____ hospital, so we went to visit her ____ last night.
  23. ____ political science class is taking _____ trip io ____ Soviet Union in ____ spring.
  24. ______ Queen Elizabeth II is ____ monarch of _____ Great Britain.
  25. ______ Declaration of  Independence was drawn up in 1776.
  26. Scientists hope to send _____ expedition to _____ Mars during _____1980s.
  27. Last night there was _____ bird singing outside my house.
  28. ______ chair that you are sitting in is broken.
  29. ______ Civil War was fought in ______ United States between 1861 and 1865.
  30. ______ Florida State University is smaller than ____ University of Florida.

ANSWER
1.      a
2.      The,-, -
3.      -, -
4.      a, -, a
5.      a, -, -, -
6.      The, the
7.      The, the, -
8.     
9.      The, -, a, a
10.  a, -, the
11.  The, the
12.  -, the, the
13.  The, the
14.  -, the, -
15.  a
16.  -, -, the
17.  -, -
18.  The, an
19.  The, an
20.  The
21.  The, the
22.  The, -
23.  The, a, the, the
24.  The, a, the
25.  The
26.  An, the, -
27.  a
28.  The
29.  The, the
30.  The, the


Exercise 5: Other

Fill in the blanks with the appropriate form of other.
  1. This pen isn’t working. Please give me ____. (singular)
  2. If you’re still thirsty. I’ll make _____ pot of coffee.
  3. This dictionary has a page missing. Please give me __________. (the last one)
  4. He does not need those book. He needs ______. (all the remaining)
  5. There are thirty people in the room. Twenty are from Latin America and ______ are from ______ countries.
  6. Six people were in the store. Two were buying meat. ______ was looking at magazines. _______ was eating a candy bar. _______ were walking around looking for more food. (notice the verbs)
  7. this glass of milk is sour. _______ glass of milk is sour too.
  8. the army was practicing its drills. One group was doing artillery practice. _____was marching; ________ was at attention; and _______ was practicing combat tactics.
  9. There are seven students from Japan. ________ are from Iran, and ______ are from _____ places.
  10. We looked at four cars today. The first two were far too expensive, but _______ ones were reasonably priced.

ANSWER:
1.      Another
2.      Another
3.      Other
4.      Other
5.      Another, other
6.      Another, other, another
7.      Another
8.      Other, -, other
9.      Another, -, other
10.  Another


Exercise 6: Simple Present and Present Progressive

Choose either the simple present or present progressive in the following sentences.
  1. Something __________ (smell) very good.
  2. We _________ (eat) dinner at seven o’clock tonight.
  3. He ________ (practice) the piano every day.
  4. They _________ (drive) to school tomorrow.
  5. I ___________ (believe) you.
  6. Maria ________ (have) a cold.
  7. Jorge _________ (swim) right now.
  8. John __________ (hate) smoke.
  9. Jill always _______ (get) up at 6:00 A.M.
  10. Jerry _____________ (mow) the lawn now.

ANSWER:
1.      Smells
2.      Are eating
3.      Practices
4.      Are driving
5.      Believe
6.      Is having
7.      Is swimming
8.      Hates
9.      Gets
10.  Is mowing

Exercise 7: Simple Past Tense and Past Progressive

Use either the simple past tense or the past progressive in the following sentences as appropriate.
  1. Gene _________ (eat) dinner when his friend called.
  2. While Maria was cleaning the apartment, her husband ________ (sleep).
  3. At three o’clock this morning, Eleanor _________ (study).
  4. When Mark arrived, the Johnsons ______ (have) dinner, but they stopped in order to talk to him.
  5. John ________ (go) to France last year.
  6. When the teacher _______ (enter) thye room, the students were talking.
  7. While Joan was writing the report, Henry _______ (look) for more information.
  8. We ______________ (see) this movie last night.
  9. At one time, Mr. Roberts _____________ (owa) this building.
  10. Jose ___________ (write) a letter to his family when his pencil _______ (break).

ANSWER:
1.      Was eating
2.      Slept
3.      Studied
4.      Was having
5.      Went
6.      Entered
7.      Looked
8.      Saw
9.      Owed
10.  Was writing, broke

Exercise 8: Present Perfect and Simple Past

Use either the present perfect or the simple past in the following sentences.
  1. John __________ (write) his report last night.
  2. Bob ___________ (see) this movie before.
  3. Jorge _________ (read) the newspaper already.
  4. Mr. Johnson ___________ (work) in the same place for thirty-five years, and he is not planning to retire yet.
  5. We ___________ (begin; negative) to study for the test yet.
  6. George __________ (go) to the store at ten o’clock this morning.
  7. Joan __________ (travel) around the world.
  8. Betty __________ (write) a letter last night.
  9. Guilermo ___________ (call) his employer yesterday.
  10. We _________________ (see;negative) this movie yet.

ANSWER:
1.      Written
2.      Has seen
3.      Has already read
4.      Has worked
5.      Have not began
6.      Went
7.      Has traveled
8.      Written
9.      Called
10.  Have not seen

Exercise 9: Past Prefect and Simple Past

Supply the past perfect or simple past in the following sentences.
  1. The Policeman read the suspect his rights after he _____ (arrest) him.
  2. After John __________ (wash) his clothes, he began to study.
  3. George ___________ (wait) for one hour before the bus came.
  4. Maria ____________ (enter) the university after she had graduated from the community college.
  5. Jeanette ___________ (wash) the pipettes after she had completed the experiment.
  6. Jane sent a letter to her university after she __________ (receive) her schilarship check.
  7. After the stewardesses had served lunch to the passengers, they __________ (sit) down.
  8. The car _____________ (flip) ten times before it landed on its roof.
  9. We corrected our papers after we _____________ (take) the quiz.
  10. John ____________ (live) in Miami for one year when his parents came to visit.

ANSWER:
1.      Had aressted
2.      Had washed
3.      Had waited
4.      Entered
5.      Washed
6.      Had received
7.      Sat
8.      Had flipped
9.      Had took
10.  Lived
read more “TUGAS BAHASA INGGRIS BISNIS 1”

25 September 2011

Program Servo Menggunakan Arduino


Servo adalah perangkat sejenis motor yang dapat diputar dalam besaran sudut tertentu yang diinginkan. Servo terdiri dari empat komponen dasar, yaitu: motor, gear, feedback device (berupa potensiometer) dan rangkaian pengontrol. Motor akan memutar poros servo –melalui beberapa gear– dan potensiometer secara bersamaan. Potensiometer mengirim sinyal kepada rangkaian pengontrol. Apabila rangkaian pengontrol mendeteksi posisi yang benar, maka rangkaian pengontrol akan menghentikan motor.

Kegunaan Servo

Servo biasa digunakan untuk steering/kemudi pada pesawat atau mobil RC, untuk lengan robot, untuk pengarah sensor dan untuk keperluan lain yang membutuhkan gerakan.

Cara Kerja Servo

Servo dapat digerakkan dengan mengirimkan pulsa tegangan 5V DC yang diulang setiap 20 milidetik. Panjang pulsa menentukan posisi putaran. Servo dirancang untuk menerima pulsa tegangan dengan variasi 0.75 milidetik sampai dengan 2.25 milidetik.
Pada umumnya servo yang ada di pasaran sekarang ini mempunyai jangkauan gerakan 0 s.d 180 derajat. Ini berarti pulsa 0.75 milidetik untuk 0 derajat. Pulsa 2.25 milidetik untuk 180 derajat dan pulsa 1.5 milidetik untuk 90 derajat.

Mengontrol Servo dengan Arduino

Mengontrol Servo dengan Arduino relatif mudah, sudah tersedia library Servo untuk Arduino yang manualnya dapat anda baca di http://arduino.cc/en/Reference/Servo
Ingin mencoba menggunakan servo? Di bawah ini contoh bagaimana menggerakan servo menggunakan Arduino.

Pertama: Sediakan sebuah servo untuk percobaan ini, tidak perlu yang mahal, anda bisa coba menggunakan servo yang ini.

Kedua: Sambungkan servo ke Arduino. Pin 5V Arduino ke kabel merah Servo. Pin GND Arduino ke kabel hitam Servo dan pin 9 Arduino ke kabel putih/orange pada Servo. Kira-kira seperti pada gambar ini:

Ketiga: Jalankan software Arduino dan salin program di bawah ini.

#include
Servo myservo;              // buat objek servo
int pos;                    // Koreksi oleh Agung Cahyawan
void setup() {
    myservo.attach(9);      // set servo pada pin 9
}
void loop() {
    // bergerak dari 0 sampai 180 derajat
    for(pos = 0;pos < 180;pos += 1) {
        myservo.write(pos); // posisikan servo pada sudut 'pos'
        delay(15);          // tunggu 15 milidetik
    }
    // bergerak dari 180 sampai 0 derajat
    for(pos = 180;pos>=1;pos-=1)     {
        myservo.write(pos); // posisikan servo pada sudut 'pos'
        delay(15);          // tunggu 15 milidetik
    }
}

Upload program ini ke Arduino dan lihat gerakan pada servo. Kalau rangkaian dan program sudah benar, maka servo akan bergerak bolak-balik dari 0 ke 180 derajat, kemudian balik lagi dari 180 ke 0 derajat. Begitu seterusnya.

Program di atas adalah contoh, silahkan anda kembangkan sendiri untuk keperluan lain. Ide eksperimen: Menggabungkan dengan program servo ini dengan pembaca suhu. Nilai suhu ditampilkan dalam bentuk jarum penunjuk servo. Bisa kan? :D

Sumber :

http://blog.indorobotika.com/category/tutorial

read more “Program Servo Menggunakan Arduino”

Kelebihan Arduino


Arduino merupakan sistem mikrokontroler yang relatif mudah dan cepat dalam membuat aplikasi elektronika maupun robotika. Buktinya ada beberapa kursus robotika yang dulunya mengajarkan pemrograman AVR menggunakan bahasa C/C++, kini telah beralih ke pemrograman menggunakan Arduino.


Saking ‘mudah’-nya Arduino, ada golongan orang yang merasa anti dengan Arduino. Golongan ini menganggap Arduino adalah pembodohan karena tidak mengajarkan teknik yang mendalam tentang mikrokontroler dan pemrograman-nya. Pendapat ini tidak benar, karena kalau kita belajar pemrograman Visual Basic pun sebenarnya kita sedang belajar hal yang dipermudah oleh Microsoft – kita tidak belajar interupsi bios untuk membaca keyboard, mendalami memory VGA untuk menuliskan teks, mempelajari direct access harddisk untuk menyimpan database, dsb. Tetapi tidak ada yang menganggap Visual Basic sebagai pembodohan bukan? :)
Ok, lanjutkan ke topik semula. Di bawah ini ada beberapa kelebihan yang membuat Arduino menarik minat hobbyist dan orang awam yang tertarik dengan elektronika.

Open Source

Hardware maupun software Arduino adalah open source. Artinya kita bisa membuat tiruan atau clone atau board yang kompatibel dengan board Arduino tanpa harus membeli board asli buatan Italy. Kalaupun kita membuat board yang persis dengan desain asli, kita tidak akan dianggap membajak (asalkan tidak menggunakan trade mark ‘Arduino’).

Tidak memerlukan chip programmer

Chip pada Arduino sudah dilengkapi dengan bootloader yang akan menangani proses upload dari komputer. Dengan adanya bootloader ini kita tidak memerlukan chip programmer lagi, kecuali untuk menanamkan bootloader pada chip yang masih blank.

Koneksi USB

Sambungan dari komputer ke board Arduino menggunakan USB, bukan serial atau parallel port. Sehingga akan mudah menghubungkan Arduino ke PC atau laptop yang tidak memiliki serial/parallel port.

Fasilitas chip yang cukup lengkap

Arduino menggunakan chip AVR ATmega 168/328 yang memiliki fasilitas PWM, komunikasi serial, ADC, timer, interupt, SPI dan I2C. Sehingga Arduino bisa digabungkan bersama modul atau alat lain dengan protokol yang berbeda-beda.

Ukuran kecil dan mudah dibawa
Ukuran board Arduino cukup kecil, mudah di bawah kemana-mana bersama laptop atau dimasukan ke dalam saku.

Bahasa pemrograman relatif mudah

Walaupun bahasa pemrograman Arduino adalah bahasa C/C++, tetapi dengan penambahan library dan fungsi-fungsi standar membuat pemrograman Arduino lebih mudah dipelajari dan lebih manusiawi. Contoh, untuk mengirimkan nilai HIGH pada pin 10 pada Arduino, cukup menggunakan fungsi digitalWrite(10, HIGH); Sedangkan kalau menggunakan bahasa C aslinya adalah PORTB |=(1<<2);

Tersedia library gratis

Tersedia library yang sangat banyak untuk menghubungkan Arduino dengan macam-macam sensor, aktuator maupun modul komunikasi. Misalnya library untuk mouse, keyboard, servo, GPS, dsb. Berhubung Arduino adalah open source, maka library-library ini juga open source dan dapat di download gratis di website Arduino.

Pengembangan aplikasi lebih mudah

Dengan bahasa yang lebih mudah dan adanya library dasar yang lengkap, maka mengembangkan aplikasi elektronik relatif lebih mudah. Contoh, kalau kita ingin membuat sensor suhu. Cukup membeli sebuah IC sensor suhu (misalnya LM35) dan menyambungkan ke Arduino. Kalau suhu tersebut ingin ditampilkan pada LCD, tinggal membeli sebuah LCD dan menambahkan library LCD pada program yang sama, dan seterusnya.

Komunitas open source yang saling mendukung

Software Linux, PHP, MySQL atau WordPress perkembangannya begitu pesat karena merupakan software open source dimana ada komunitas yang saling mendukung pengembangan proyek. Demikian juga dengan Arduino, pengembangan hardware dan software Arduino didukung oleh pencinta elektronika dan pemrograman di seluruh dunia. Contoh, interface USB pada Arduino Uno mengambil dari LUFA project. Library dan contoh-contoh program adalah sumbangan dari beberapa programmer mikrokontroler, seperti Tom Igoe, dsb.
Anda seorang pengguna Arduino dan merasa ada kelebihan lain dari Arduino? Silahkan cantumkan di bagian komentar.

Sumber :
http://blog.indorobotika.com/category/arduino
read more “Kelebihan Arduino”

Arduino Uno Board

Akhirnya board Arduino Uno sebagai penerus dari Arduino sebelumnya (Duemilanove) diluncurkan [Blog Arduino]. Arduino Uno pada awalnya akan diberi nama Arduino Uno Punto Zero (bahasa Italia) yang artinya Arduino 1.0. Akan tetapi supaya namanya singkat dan gampang diingat oleh dunia, akhirnya dipilih nama Arduino Uno, atau Arduino versi 1.0

Arduino Uno mempunyai perubahan yang cukup signifikan dibandingkan perubahan dari board Diecimila ke Duemilanove (2009).
Perubahan yang ada pada Arduino Uno dapat diringkas sebagai berikut:
  1. Tidak menggunakan chip konverter USB FTDI FT232RL, melainkan menggunakan ATMega8U2 yang diprogram secara khusus sehingga proses upload dan komunikasi serial lebih cepat.
  2. Menggunakan LUFA project sebagai framework USB untuk AVR yang relatif kecil dan cepat.
  3. Ukuran bootloader lebih kecil, hanya seperempat bootloader lama karena menggunakan Optiboot. Akibatnya akan tersedia lebih banyak ruang untuk menyimpan program.
  4. Board Arduino dapat dikenali sebagai keyboard, mouse, joystick, dsb. dengan cara memprogram chip Atmega8U2,
  5. Sudah memiliki logo sendiri (trade mark).
Walaupun demikian, ukuran Arduino Uno tetap kompatibel dengan shield-shield sebelumnya. Formasi pin dan jarak antar header pun masih tetap sama sehingga shield-shield yang kita miliki tetap bisa dipakai.
Sumber :
http://blog.indorobotika.com/category/arduino
http://arduino.cc
read more “Arduino Uno Board”

Analog Input dan Output pada Arduino

Pada saat kita menggunakan tombol sebagai sinyal input/masukan pada pin input Arduino maka sebenarnya kita hanya memberikan dua kemungkinan kondisi sinyal masukan yaitu tombol tertekan atau tombol tidak tertekan. Pada saat tombol tertekan kita menghubungkan atau memberikan tegangan 5 volt pada masukan sedangkan sebaliknya pada saat tombol dilepas hanya memberikan tegangan 0 volt.

Kondisi input yang demikian dikenal sebagai digital input dengan logika 1 dan 0, dimana 1 untuk tegangan HIGH atau 5 volt dan 0 untuk tegangan LOW atau 0 volt.  Begitu juga halnya pada sisi output, jika hanya melibatkan dua kondisi keluaran seperti misalnya saat menghidupkan dan memadamkan led pada suatu saat tertentu maka kita hanya melibatkan dua kondisi output digital. Output digital 1 atau HIGH dengan output tegangan 5 volt dan output digital 0 atau LOW dengan output tegangan 0 volt.

Pada beberapa sistim kontrol, pengolahan input dan output secara digital mungkin sudah memenuhi kinerja yang dibutuhkan. Akan tetapi pada kondisi tertentu ada kemungkinan dihadapkan pada kondisi input dan output yang membutuhkan besaran yang berubah-ubah dengan nilai yang kontinyu dan tidak lagi hanya dengan dua keadaan seperti halnya sinyal digital.  Sinyal semacam ini disebut sebagai sinyal analog, sebagai contoh saat kita menghubungkan sensor yang tegangan keluarannya bervariasi dalam kisaran dari 0 volt sampai 5 volt. Maka dalam hal ini Arduino sebagai kontroler harus mampu mengidentifikasi/mengolah semua variasi tegangan keluaran dari sensor yang dihubungkan pada pin inputnya tersebut. Begitu juga halnya saat diperlukan tegangan output yang membutuhkan nilai tegangan yang bervariasi, seperti misalnya saat kita menginginkan mengatur tingkat keterangan sebuah led atau berubahnya kecepatan sebuah motor.

ANALOG INPUT

Arduino khusus menyediakan 6 kanal (8 kanal pada model Mini dan Nano, dan 16 pada model Mega) untuk difungsikan sebagai analog input. Analog ke digital converternya menggunakan resolusi 10 bit yang berarti range nilai analog dari 0 volt sampai 5 volt akan dirubah kenilai integer 0 sampai 1023, atau resolusinya adalah 5 volt/1024=4,9mV per unit dimana itu berarti nilai digital yang dihasilkan akan berubah setiap perubahan 4,9mV dari tegangan input analognya. Akan tetapi range input analog dan resolusi tersebut dapat dirubah dengan fungsi analogReference().

Perintah yang digunakan untuk fungsi analog input ini adalah:
  1. analogRead(pin): berfungsi untuk membaca nilai analog pada input pin yang akan menghasilkan nilai integer antara 0-1023.
  2. analogReference(parameter): berfungsi untuk menentukan referensi yang digunakan. Parameternya meliputi:
  • DEFAULT: default analog reference yaitu 5V (pada board Arduino 5V) atau 3,3 volt (pada board Arduino 3,3 V)
  • INTERNAL: built-in referensi internal tergantung pada jenis mikrokontroler yang terpasang pada board Arduino, 1.1 volt pada ATmega168 atau ATmega328 dan 2.56 volt pada ATmega8.
  • INTERNAL1V1: a built-in referensi internal 1.1V (khusus Arduino Mega)
  • INTERNAL2V56: a built-in referensi internal 2,56V (khusus Arduino Mega)
  • EXTERNAL: pilihan referensi yang tergantung pada tegangan yang diberikan pada pin AREF(hanya dengan range tegangan 0 sampai 5V).
Perlu untuk diperhatikan, jangan menggunakan referensi dibawah 0 volt atau lebih dari 5 volt dan pastikan memilih referensi external sebelum perintah analogRead() jika menghubungkan pin AREF dengan referensi eksternal karena jika tidak akan bisa merusak mikrokontrol.

ANALOG OUTPUT

Secara teori suatu analog output akan mengeluarkan output tegangan bervariasi sesuai dengan nilai yang dikehendaki, maka seharusnya pin output analog Arduino seharusnya mampu mengeluarkan tegangan output dengan kisaran tegangan dari 0 V sampai 5V. Akan tetapi tidak demikian adanya, karena pin-pin Arduino yang difungsikan sebagai output sebenarnya hanya mampu sebagai digital output yaitu hanya mampu mengeluarkan tegangan 0V atau 5V.  Lalu bagaimana Arduino menangani Analog Output tersebut? Arduino menggunakan cara Pulsa Wide Modulasi (PWM) atau modulasi lebar pulsa untuk menghasilkan analog output yang dikehendaki. Metode PWM ini menggunakan pendekatan perubahan lebar pulsa untuk menghasilkan nilai tegangan analog yang diinginkan. Pin yang difungsikan sebagai PWM analog output akan mengeluarkan sinyal pulsa digital dengan frekwensi 490 Hz dimana nilai tegangan analog diperoleh dengan merubah Duty Cycle atau perbandingan lamanya pulsa HIGH terhadap periode (T) dari sinyal digital tersebut. Jika pulsa HIGH muncul selama setengah dari periode sinyal maka akan menghasilkan duty cycle 5o% yang berarti sinyal analog yang dihasilkan sebesar setengah dari tegangan analog maksimal yaitu 1/2 dari 5 V atau sama dengan 2,5 V begitu juga halnya jika pulsa HIGH hanya seperempat bagian dari periode sinyal maka tegangan analog identik yang dihasilkan adalah 1/4 dari 5V = 1,25 V dan seterusnya.

Perintah yang digunakan untuk output analog adalah analogWrite (pin,value), dimana:
  • Pin: nomor pin Arduino yang akan digunakan sebagai analog output
  • value: nilai duty cycle yang diinginkan dengan nilai 0-255, yang berarti nilai 0 untuk 0Volt dan 255 untuk tegangan keluaran maksimum atau 5Volt.
Berikutnya mari kita mencoba aplikasi input output analog ini secara langsung pada Arduino. Untuk yang pertama saya menggunakan potensiometer yang dihubungkan pada analog pin 0 seperti pada gambar berikut ini:


Pada latihan ini akan menampilkan pada serial monitor nilai input analog yang dihasilkan dengan merubah posisi potensiometer. Sketchnya sebagai berikut:

int analogPin = 0;
int val = 0;
void setup() {
  Serial.begin(9600);
}
void loop() {
  val = analogRead(analogPin);
  Serial.println(val,DEC); //tampilkan pada serial monitor dalam desimal
  Serial.println(val,BIN); //tampilkan pada serial monitor dalam biner
  delay(1000); //merefresh tampilan setiap 1 detik
}
 
Dan berhasil…posisi potensio mentok minimal akan menghasilkan nilai 0 dan posisi potensio mentok maksimal menghasilkan nilai 1023 atau 1111111111(biner).
Lanjut berikutnya mencoba analog output dengan mengeluarkan sinyal analog ke pin 9 yang dihubungkan dengan rangkaian seri resistor dan led seperti rangkaian berikut:


sketchnya adalah:

int kecerahan = 0;
int levelperubah = 5;//step perubahan kecerahan 

void setup()  {
Serial.begin(9600);
} 

void loop()  {
  analogWrite(9, kecerahan);
  Serial.println(kecerahan);//tampilkan kecerahan di serial monitor
  kecerahan = kecerahan + levelperubah;//perbaharui nilai kecerahan
  if (kecerahan == 0 || kecerahan == 255) {//jika mencapai nilai batas
    levelperubah = -levelperubah ; //berubah kenilai sebaliknya
  }
  delay(500);
}
 
Hasilnya kecerahan led akan berubah setiap 1/2 detik dengan step perubahan 5 digit, setelah mencapai kecerahan maksimum (tampilan pada serial monitor 255) akan meredup kembali sampai led padam (tampilan pada serial monitor 0) dan akan terus berulang kembali begitu seterusnya.
Terakhir mengkombinasikan analog input dari potensiometer untuk mengatur analog output mengatur kecerahan dari led, berikut gambar:

Sketchnya sebagai berikut:

const int analogInPin = 0;  // analog input pada pin analog 0
const int analogOutPin = 9; // analog output pada pin 9/terpasang led

int sensorValue = 0;        // variable input analog
int outputValue = 0;        // variable output analog

void setup() {
  // inisialisasi komunikasi serial pada 9600 bps:
  Serial.begin(9600);
}

void loop() {
  // membaca nilai analog in:
  sensorValue = analogRead(analogInPin);
  // memetakan kedalam kisaran output analog:
  outputValue = map(sensorValue, 0, 1023, 0, 255);
  // merubah nilai analog output:
  analogWrite(analogOutPin, outputValue);           

  // mencetak pada serial monitor:
  Serial.print("sensor = " );
  Serial.print(sensorValue);
  Serial.print("  output = ");
  Serial.println(outputValue);
  // tunggu 20 milidetik sebelum lanjut ke pembacaan berikutnya
  delay(20);
}
 
Pada sketch diatas digunakan function “map()” untuk memetakan input analog yang resolusinya 1024 ke output analog yang resolusinya hanya 256.


Referensi:
read more “Analog Input dan Output pada Arduino”

30 September 2011

TUGAS BAHASA INGGRIS BISNIS 1



 1. TUGAS MEMO 
 
MEMORANDUM

From           : Marketing Manager                                                 Date: 29th September 2011
To               : General Manager
Subject       : Recruitment sales

In order to meet target in sales of our product, we need to rise rate of sales. It is needed to expand market area. I think we have no choice but recruit some new employees for sales position.

Can you follow up ‘recruitment’ to meet our recruitment?
If possible, next month I would like to have 10 new employees in my division.

Cc. Finance Manager


                                   
   Marketing Manager




2. TUGAS TELEX

DATE : Jakarta, 29th September 2011
TO : TELECOMUNICATION INDONESIA
ATTN : DOCUMENT 
FM : PT. ICON PLUS INDONESIA
CC : PT. M+R Forwarding Indonesia Jakarta / Mr. Danang




Exercise 2: Count and Non-Count Nouns

Identify the following nouns as count nouns or non-count nouns according to their usual meaning.

television
atmosphere
food
cup
car
person
tooth
money
News
water
soap
hydrogen
geography
pencil
soup
minute

ANSWER
Countable Noun:                   Uncountable Noun:
-          Television                         - Money
-          Car                                   - Geography
-          Person                              - Atmoshphere
-          Pencil                               - Water
-          Tooth                               - Food
-          Soap                                 - Soup
-          Cup                                  - Hydrogen
-          Minute                             - News


Exercise 3: Determiners

Choose the correct determiners in the following sentences.
  1. He does’t have (many/much) money.
  2. I would like (afew/alittle) salt on my vegetables.
  3. She bought (that/those) cards last night.
  4. There are (less/fewer) students in this room than in the next room.
  5. There is (too much/too many) bad news on television tonight.
  6. I do not want (these/this) water.
  7. This is (too many/too much) information to learn.
  8. A (few/little) people left early.
  9.  Would you like (less/fewer) coffee than this?.
  10. This jacket costs (too much/too many).

ANSWER
  1. Much
  2. A little
  3. Those
  4. Fewer
  5. Too much
  6. This
  7. Too many
  8. A few
  9. Less
  10. Too much

Exercise 4: Article

In the following sentences supply the article (a, an, or the) if they are necessary. If no article is necessary, leave the space blank.
  1. Jason’s father bought him ________ bicycle than he had wanted for his birthday.
  2. ­­­­­­­­­­­­­_______ Statue of Liberty was a gift of friendship from ______ France to _____ United States.
  3. Rita is studying _____ English and _____ math this semester.
  4. ____ judge asked _____ witness to tell _____ truth.
  5. Please give me _____ cup of _____ coffee with ______ cream and _____ sugar.
  6. ______ big books on ______ table are for my history class.
  7. No one in ______ Spanish class knew ______ correct answer to ____ Mrs. Perez’s question.
  8. My _____ car is four years old and it still runs well.
  9. When you go to ____ store, please buy _____ bottle of ____ chocolate milk and ____ dozen oranges.
  10. There are only ____ few seats left for ____ tonight’s musical at _____ university.
  11. John and Marcy went to _____ school yesterday and then studied in ____ library before returning home.
  12. ____ Like Erie is one of _____ five Great Lakes in ____ North America.
  13. On our trip to _____ Spain, we crossed ____ Atlantic Ocean.
  14. ____ mount Rushmore is the site of ______ magnificent tribute to ____ four great Amirican presidents.
  15. What did you eat for _____ breakfast this morning?.
  16. Louie played _____ basketball and ____ basketball at ____ Boys’Club this year.
  17. Rita plays ____ violin and her sister plays ____ guitar.
  18. While we were in _____ Alaska, we saw _____ Eskimo village.
  19. Phil can’t go to ____ movies tonight because he has to write ____ essay.
  20. David attended ____ Princeton University.
  21. Harry has been admitted to _____ School of Medicine at _____ midwestern university.
  22. Mel’s grandmother is in _____ hospital, so we went to visit her ____ last night.
  23. ____ political science class is taking _____ trip io ____ Soviet Union in ____ spring.
  24. ______ Queen Elizabeth II is ____ monarch of _____ Great Britain.
  25. ______ Declaration of  Independence was drawn up in 1776.
  26. Scientists hope to send _____ expedition to _____ Mars during _____1980s.
  27. Last night there was _____ bird singing outside my house.
  28. ______ chair that you are sitting in is broken.
  29. ______ Civil War was fought in ______ United States between 1861 and 1865.
  30. ______ Florida State University is smaller than ____ University of Florida.

ANSWER
1.      a
2.      The,-, -
3.      -, -
4.      a, -, a
5.      a, -, -, -
6.      The, the
7.      The, the, -
8.     
9.      The, -, a, a
10.  a, -, the
11.  The, the
12.  -, the, the
13.  The, the
14.  -, the, -
15.  a
16.  -, -, the
17.  -, -
18.  The, an
19.  The, an
20.  The
21.  The, the
22.  The, -
23.  The, a, the, the
24.  The, a, the
25.  The
26.  An, the, -
27.  a
28.  The
29.  The, the
30.  The, the


Exercise 5: Other

Fill in the blanks with the appropriate form of other.
  1. This pen isn’t working. Please give me ____. (singular)
  2. If you’re still thirsty. I’ll make _____ pot of coffee.
  3. This dictionary has a page missing. Please give me __________. (the last one)
  4. He does not need those book. He needs ______. (all the remaining)
  5. There are thirty people in the room. Twenty are from Latin America and ______ are from ______ countries.
  6. Six people were in the store. Two were buying meat. ______ was looking at magazines. _______ was eating a candy bar. _______ were walking around looking for more food. (notice the verbs)
  7. this glass of milk is sour. _______ glass of milk is sour too.
  8. the army was practicing its drills. One group was doing artillery practice. _____was marching; ________ was at attention; and _______ was practicing combat tactics.
  9. There are seven students from Japan. ________ are from Iran, and ______ are from _____ places.
  10. We looked at four cars today. The first two were far too expensive, but _______ ones were reasonably priced.

ANSWER:
1.      Another
2.      Another
3.      Other
4.      Other
5.      Another, other
6.      Another, other, another
7.      Another
8.      Other, -, other
9.      Another, -, other
10.  Another


Exercise 6: Simple Present and Present Progressive

Choose either the simple present or present progressive in the following sentences.
  1. Something __________ (smell) very good.
  2. We _________ (eat) dinner at seven o’clock tonight.
  3. He ________ (practice) the piano every day.
  4. They _________ (drive) to school tomorrow.
  5. I ___________ (believe) you.
  6. Maria ________ (have) a cold.
  7. Jorge _________ (swim) right now.
  8. John __________ (hate) smoke.
  9. Jill always _______ (get) up at 6:00 A.M.
  10. Jerry _____________ (mow) the lawn now.

ANSWER:
1.      Smells
2.      Are eating
3.      Practices
4.      Are driving
5.      Believe
6.      Is having
7.      Is swimming
8.      Hates
9.      Gets
10.  Is mowing

Exercise 7: Simple Past Tense and Past Progressive

Use either the simple past tense or the past progressive in the following sentences as appropriate.
  1. Gene _________ (eat) dinner when his friend called.
  2. While Maria was cleaning the apartment, her husband ________ (sleep).
  3. At three o’clock this morning, Eleanor _________ (study).
  4. When Mark arrived, the Johnsons ______ (have) dinner, but they stopped in order to talk to him.
  5. John ________ (go) to France last year.
  6. When the teacher _______ (enter) thye room, the students were talking.
  7. While Joan was writing the report, Henry _______ (look) for more information.
  8. We ______________ (see) this movie last night.
  9. At one time, Mr. Roberts _____________ (owa) this building.
  10. Jose ___________ (write) a letter to his family when his pencil _______ (break).

ANSWER:
1.      Was eating
2.      Slept
3.      Studied
4.      Was having
5.      Went
6.      Entered
7.      Looked
8.      Saw
9.      Owed
10.  Was writing, broke

Exercise 8: Present Perfect and Simple Past

Use either the present perfect or the simple past in the following sentences.
  1. John __________ (write) his report last night.
  2. Bob ___________ (see) this movie before.
  3. Jorge _________ (read) the newspaper already.
  4. Mr. Johnson ___________ (work) in the same place for thirty-five years, and he is not planning to retire yet.
  5. We ___________ (begin; negative) to study for the test yet.
  6. George __________ (go) to the store at ten o’clock this morning.
  7. Joan __________ (travel) around the world.
  8. Betty __________ (write) a letter last night.
  9. Guilermo ___________ (call) his employer yesterday.
  10. We _________________ (see;negative) this movie yet.

ANSWER:
1.      Written
2.      Has seen
3.      Has already read
4.      Has worked
5.      Have not began
6.      Went
7.      Has traveled
8.      Written
9.      Called
10.  Have not seen

Exercise 9: Past Prefect and Simple Past

Supply the past perfect or simple past in the following sentences.
  1. The Policeman read the suspect his rights after he _____ (arrest) him.
  2. After John __________ (wash) his clothes, he began to study.
  3. George ___________ (wait) for one hour before the bus came.
  4. Maria ____________ (enter) the university after she had graduated from the community college.
  5. Jeanette ___________ (wash) the pipettes after she had completed the experiment.
  6. Jane sent a letter to her university after she __________ (receive) her schilarship check.
  7. After the stewardesses had served lunch to the passengers, they __________ (sit) down.
  8. The car _____________ (flip) ten times before it landed on its roof.
  9. We corrected our papers after we _____________ (take) the quiz.
  10. John ____________ (live) in Miami for one year when his parents came to visit.

ANSWER:
1.      Had aressted
2.      Had washed
3.      Had waited
4.      Entered
5.      Washed
6.      Had received
7.      Sat
8.      Had flipped
9.      Had took
10.  Lived

25 September 2011

Program Servo Menggunakan Arduino


Servo adalah perangkat sejenis motor yang dapat diputar dalam besaran sudut tertentu yang diinginkan. Servo terdiri dari empat komponen dasar, yaitu: motor, gear, feedback device (berupa potensiometer) dan rangkaian pengontrol. Motor akan memutar poros servo –melalui beberapa gear– dan potensiometer secara bersamaan. Potensiometer mengirim sinyal kepada rangkaian pengontrol. Apabila rangkaian pengontrol mendeteksi posisi yang benar, maka rangkaian pengontrol akan menghentikan motor.

Kegunaan Servo

Servo biasa digunakan untuk steering/kemudi pada pesawat atau mobil RC, untuk lengan robot, untuk pengarah sensor dan untuk keperluan lain yang membutuhkan gerakan.

Cara Kerja Servo

Servo dapat digerakkan dengan mengirimkan pulsa tegangan 5V DC yang diulang setiap 20 milidetik. Panjang pulsa menentukan posisi putaran. Servo dirancang untuk menerima pulsa tegangan dengan variasi 0.75 milidetik sampai dengan 2.25 milidetik.
Pada umumnya servo yang ada di pasaran sekarang ini mempunyai jangkauan gerakan 0 s.d 180 derajat. Ini berarti pulsa 0.75 milidetik untuk 0 derajat. Pulsa 2.25 milidetik untuk 180 derajat dan pulsa 1.5 milidetik untuk 90 derajat.

Mengontrol Servo dengan Arduino

Mengontrol Servo dengan Arduino relatif mudah, sudah tersedia library Servo untuk Arduino yang manualnya dapat anda baca di http://arduino.cc/en/Reference/Servo
Ingin mencoba menggunakan servo? Di bawah ini contoh bagaimana menggerakan servo menggunakan Arduino.

Pertama: Sediakan sebuah servo untuk percobaan ini, tidak perlu yang mahal, anda bisa coba menggunakan servo yang ini.

Kedua: Sambungkan servo ke Arduino. Pin 5V Arduino ke kabel merah Servo. Pin GND Arduino ke kabel hitam Servo dan pin 9 Arduino ke kabel putih/orange pada Servo. Kira-kira seperti pada gambar ini:

Ketiga: Jalankan software Arduino dan salin program di bawah ini.

#include
Servo myservo;              // buat objek servo
int pos;                    // Koreksi oleh Agung Cahyawan
void setup() {
    myservo.attach(9);      // set servo pada pin 9
}
void loop() {
    // bergerak dari 0 sampai 180 derajat
    for(pos = 0;pos < 180;pos += 1) {
        myservo.write(pos); // posisikan servo pada sudut 'pos'
        delay(15);          // tunggu 15 milidetik
    }
    // bergerak dari 180 sampai 0 derajat
    for(pos = 180;pos>=1;pos-=1)     {
        myservo.write(pos); // posisikan servo pada sudut 'pos'
        delay(15);          // tunggu 15 milidetik
    }
}

Upload program ini ke Arduino dan lihat gerakan pada servo. Kalau rangkaian dan program sudah benar, maka servo akan bergerak bolak-balik dari 0 ke 180 derajat, kemudian balik lagi dari 180 ke 0 derajat. Begitu seterusnya.

Program di atas adalah contoh, silahkan anda kembangkan sendiri untuk keperluan lain. Ide eksperimen: Menggabungkan dengan program servo ini dengan pembaca suhu. Nilai suhu ditampilkan dalam bentuk jarum penunjuk servo. Bisa kan? :D

Sumber :

http://blog.indorobotika.com/category/tutorial

Kelebihan Arduino


Arduino merupakan sistem mikrokontroler yang relatif mudah dan cepat dalam membuat aplikasi elektronika maupun robotika. Buktinya ada beberapa kursus robotika yang dulunya mengajarkan pemrograman AVR menggunakan bahasa C/C++, kini telah beralih ke pemrograman menggunakan Arduino.


Saking ‘mudah’-nya Arduino, ada golongan orang yang merasa anti dengan Arduino. Golongan ini menganggap Arduino adalah pembodohan karena tidak mengajarkan teknik yang mendalam tentang mikrokontroler dan pemrograman-nya. Pendapat ini tidak benar, karena kalau kita belajar pemrograman Visual Basic pun sebenarnya kita sedang belajar hal yang dipermudah oleh Microsoft – kita tidak belajar interupsi bios untuk membaca keyboard, mendalami memory VGA untuk menuliskan teks, mempelajari direct access harddisk untuk menyimpan database, dsb. Tetapi tidak ada yang menganggap Visual Basic sebagai pembodohan bukan? :)
Ok, lanjutkan ke topik semula. Di bawah ini ada beberapa kelebihan yang membuat Arduino menarik minat hobbyist dan orang awam yang tertarik dengan elektronika.

Open Source

Hardware maupun software Arduino adalah open source. Artinya kita bisa membuat tiruan atau clone atau board yang kompatibel dengan board Arduino tanpa harus membeli board asli buatan Italy. Kalaupun kita membuat board yang persis dengan desain asli, kita tidak akan dianggap membajak (asalkan tidak menggunakan trade mark ‘Arduino’).

Tidak memerlukan chip programmer

Chip pada Arduino sudah dilengkapi dengan bootloader yang akan menangani proses upload dari komputer. Dengan adanya bootloader ini kita tidak memerlukan chip programmer lagi, kecuali untuk menanamkan bootloader pada chip yang masih blank.

Koneksi USB

Sambungan dari komputer ke board Arduino menggunakan USB, bukan serial atau parallel port. Sehingga akan mudah menghubungkan Arduino ke PC atau laptop yang tidak memiliki serial/parallel port.

Fasilitas chip yang cukup lengkap

Arduino menggunakan chip AVR ATmega 168/328 yang memiliki fasilitas PWM, komunikasi serial, ADC, timer, interupt, SPI dan I2C. Sehingga Arduino bisa digabungkan bersama modul atau alat lain dengan protokol yang berbeda-beda.

Ukuran kecil dan mudah dibawa
Ukuran board Arduino cukup kecil, mudah di bawah kemana-mana bersama laptop atau dimasukan ke dalam saku.

Bahasa pemrograman relatif mudah

Walaupun bahasa pemrograman Arduino adalah bahasa C/C++, tetapi dengan penambahan library dan fungsi-fungsi standar membuat pemrograman Arduino lebih mudah dipelajari dan lebih manusiawi. Contoh, untuk mengirimkan nilai HIGH pada pin 10 pada Arduino, cukup menggunakan fungsi digitalWrite(10, HIGH); Sedangkan kalau menggunakan bahasa C aslinya adalah PORTB |=(1<<2);

Tersedia library gratis

Tersedia library yang sangat banyak untuk menghubungkan Arduino dengan macam-macam sensor, aktuator maupun modul komunikasi. Misalnya library untuk mouse, keyboard, servo, GPS, dsb. Berhubung Arduino adalah open source, maka library-library ini juga open source dan dapat di download gratis di website Arduino.

Pengembangan aplikasi lebih mudah

Dengan bahasa yang lebih mudah dan adanya library dasar yang lengkap, maka mengembangkan aplikasi elektronik relatif lebih mudah. Contoh, kalau kita ingin membuat sensor suhu. Cukup membeli sebuah IC sensor suhu (misalnya LM35) dan menyambungkan ke Arduino. Kalau suhu tersebut ingin ditampilkan pada LCD, tinggal membeli sebuah LCD dan menambahkan library LCD pada program yang sama, dan seterusnya.

Komunitas open source yang saling mendukung

Software Linux, PHP, MySQL atau WordPress perkembangannya begitu pesat karena merupakan software open source dimana ada komunitas yang saling mendukung pengembangan proyek. Demikian juga dengan Arduino, pengembangan hardware dan software Arduino didukung oleh pencinta elektronika dan pemrograman di seluruh dunia. Contoh, interface USB pada Arduino Uno mengambil dari LUFA project. Library dan contoh-contoh program adalah sumbangan dari beberapa programmer mikrokontroler, seperti Tom Igoe, dsb.
Anda seorang pengguna Arduino dan merasa ada kelebihan lain dari Arduino? Silahkan cantumkan di bagian komentar.

Sumber :
http://blog.indorobotika.com/category/arduino

Arduino Uno Board

Akhirnya board Arduino Uno sebagai penerus dari Arduino sebelumnya (Duemilanove) diluncurkan [Blog Arduino]. Arduino Uno pada awalnya akan diberi nama Arduino Uno Punto Zero (bahasa Italia) yang artinya Arduino 1.0. Akan tetapi supaya namanya singkat dan gampang diingat oleh dunia, akhirnya dipilih nama Arduino Uno, atau Arduino versi 1.0

Arduino Uno mempunyai perubahan yang cukup signifikan dibandingkan perubahan dari board Diecimila ke Duemilanove (2009).
Perubahan yang ada pada Arduino Uno dapat diringkas sebagai berikut:
  1. Tidak menggunakan chip konverter USB FTDI FT232RL, melainkan menggunakan ATMega8U2 yang diprogram secara khusus sehingga proses upload dan komunikasi serial lebih cepat.
  2. Menggunakan LUFA project sebagai framework USB untuk AVR yang relatif kecil dan cepat.
  3. Ukuran bootloader lebih kecil, hanya seperempat bootloader lama karena menggunakan Optiboot. Akibatnya akan tersedia lebih banyak ruang untuk menyimpan program.
  4. Board Arduino dapat dikenali sebagai keyboard, mouse, joystick, dsb. dengan cara memprogram chip Atmega8U2,
  5. Sudah memiliki logo sendiri (trade mark).
Walaupun demikian, ukuran Arduino Uno tetap kompatibel dengan shield-shield sebelumnya. Formasi pin dan jarak antar header pun masih tetap sama sehingga shield-shield yang kita miliki tetap bisa dipakai.
Sumber :
http://blog.indorobotika.com/category/arduino
http://arduino.cc

Analog Input dan Output pada Arduino

Pada saat kita menggunakan tombol sebagai sinyal input/masukan pada pin input Arduino maka sebenarnya kita hanya memberikan dua kemungkinan kondisi sinyal masukan yaitu tombol tertekan atau tombol tidak tertekan. Pada saat tombol tertekan kita menghubungkan atau memberikan tegangan 5 volt pada masukan sedangkan sebaliknya pada saat tombol dilepas hanya memberikan tegangan 0 volt.

Kondisi input yang demikian dikenal sebagai digital input dengan logika 1 dan 0, dimana 1 untuk tegangan HIGH atau 5 volt dan 0 untuk tegangan LOW atau 0 volt.  Begitu juga halnya pada sisi output, jika hanya melibatkan dua kondisi keluaran seperti misalnya saat menghidupkan dan memadamkan led pada suatu saat tertentu maka kita hanya melibatkan dua kondisi output digital. Output digital 1 atau HIGH dengan output tegangan 5 volt dan output digital 0 atau LOW dengan output tegangan 0 volt.

Pada beberapa sistim kontrol, pengolahan input dan output secara digital mungkin sudah memenuhi kinerja yang dibutuhkan. Akan tetapi pada kondisi tertentu ada kemungkinan dihadapkan pada kondisi input dan output yang membutuhkan besaran yang berubah-ubah dengan nilai yang kontinyu dan tidak lagi hanya dengan dua keadaan seperti halnya sinyal digital.  Sinyal semacam ini disebut sebagai sinyal analog, sebagai contoh saat kita menghubungkan sensor yang tegangan keluarannya bervariasi dalam kisaran dari 0 volt sampai 5 volt. Maka dalam hal ini Arduino sebagai kontroler harus mampu mengidentifikasi/mengolah semua variasi tegangan keluaran dari sensor yang dihubungkan pada pin inputnya tersebut. Begitu juga halnya saat diperlukan tegangan output yang membutuhkan nilai tegangan yang bervariasi, seperti misalnya saat kita menginginkan mengatur tingkat keterangan sebuah led atau berubahnya kecepatan sebuah motor.

ANALOG INPUT

Arduino khusus menyediakan 6 kanal (8 kanal pada model Mini dan Nano, dan 16 pada model Mega) untuk difungsikan sebagai analog input. Analog ke digital converternya menggunakan resolusi 10 bit yang berarti range nilai analog dari 0 volt sampai 5 volt akan dirubah kenilai integer 0 sampai 1023, atau resolusinya adalah 5 volt/1024=4,9mV per unit dimana itu berarti nilai digital yang dihasilkan akan berubah setiap perubahan 4,9mV dari tegangan input analognya. Akan tetapi range input analog dan resolusi tersebut dapat dirubah dengan fungsi analogReference().

Perintah yang digunakan untuk fungsi analog input ini adalah:
  1. analogRead(pin): berfungsi untuk membaca nilai analog pada input pin yang akan menghasilkan nilai integer antara 0-1023.
  2. analogReference(parameter): berfungsi untuk menentukan referensi yang digunakan. Parameternya meliputi:
  • DEFAULT: default analog reference yaitu 5V (pada board Arduino 5V) atau 3,3 volt (pada board Arduino 3,3 V)
  • INTERNAL: built-in referensi internal tergantung pada jenis mikrokontroler yang terpasang pada board Arduino, 1.1 volt pada ATmega168 atau ATmega328 dan 2.56 volt pada ATmega8.
  • INTERNAL1V1: a built-in referensi internal 1.1V (khusus Arduino Mega)
  • INTERNAL2V56: a built-in referensi internal 2,56V (khusus Arduino Mega)
  • EXTERNAL: pilihan referensi yang tergantung pada tegangan yang diberikan pada pin AREF(hanya dengan range tegangan 0 sampai 5V).
Perlu untuk diperhatikan, jangan menggunakan referensi dibawah 0 volt atau lebih dari 5 volt dan pastikan memilih referensi external sebelum perintah analogRead() jika menghubungkan pin AREF dengan referensi eksternal karena jika tidak akan bisa merusak mikrokontrol.

ANALOG OUTPUT

Secara teori suatu analog output akan mengeluarkan output tegangan bervariasi sesuai dengan nilai yang dikehendaki, maka seharusnya pin output analog Arduino seharusnya mampu mengeluarkan tegangan output dengan kisaran tegangan dari 0 V sampai 5V. Akan tetapi tidak demikian adanya, karena pin-pin Arduino yang difungsikan sebagai output sebenarnya hanya mampu sebagai digital output yaitu hanya mampu mengeluarkan tegangan 0V atau 5V.  Lalu bagaimana Arduino menangani Analog Output tersebut? Arduino menggunakan cara Pulsa Wide Modulasi (PWM) atau modulasi lebar pulsa untuk menghasilkan analog output yang dikehendaki. Metode PWM ini menggunakan pendekatan perubahan lebar pulsa untuk menghasilkan nilai tegangan analog yang diinginkan. Pin yang difungsikan sebagai PWM analog output akan mengeluarkan sinyal pulsa digital dengan frekwensi 490 Hz dimana nilai tegangan analog diperoleh dengan merubah Duty Cycle atau perbandingan lamanya pulsa HIGH terhadap periode (T) dari sinyal digital tersebut. Jika pulsa HIGH muncul selama setengah dari periode sinyal maka akan menghasilkan duty cycle 5o% yang berarti sinyal analog yang dihasilkan sebesar setengah dari tegangan analog maksimal yaitu 1/2 dari 5 V atau sama dengan 2,5 V begitu juga halnya jika pulsa HIGH hanya seperempat bagian dari periode sinyal maka tegangan analog identik yang dihasilkan adalah 1/4 dari 5V = 1,25 V dan seterusnya.

Perintah yang digunakan untuk output analog adalah analogWrite (pin,value), dimana:
  • Pin: nomor pin Arduino yang akan digunakan sebagai analog output
  • value: nilai duty cycle yang diinginkan dengan nilai 0-255, yang berarti nilai 0 untuk 0Volt dan 255 untuk tegangan keluaran maksimum atau 5Volt.
Berikutnya mari kita mencoba aplikasi input output analog ini secara langsung pada Arduino. Untuk yang pertama saya menggunakan potensiometer yang dihubungkan pada analog pin 0 seperti pada gambar berikut ini:


Pada latihan ini akan menampilkan pada serial monitor nilai input analog yang dihasilkan dengan merubah posisi potensiometer. Sketchnya sebagai berikut:

int analogPin = 0;
int val = 0;
void setup() {
  Serial.begin(9600);
}
void loop() {
  val = analogRead(analogPin);
  Serial.println(val,DEC); //tampilkan pada serial monitor dalam desimal
  Serial.println(val,BIN); //tampilkan pada serial monitor dalam biner
  delay(1000); //merefresh tampilan setiap 1 detik
}
 
Dan berhasil…posisi potensio mentok minimal akan menghasilkan nilai 0 dan posisi potensio mentok maksimal menghasilkan nilai 1023 atau 1111111111(biner).
Lanjut berikutnya mencoba analog output dengan mengeluarkan sinyal analog ke pin 9 yang dihubungkan dengan rangkaian seri resistor dan led seperti rangkaian berikut:


sketchnya adalah:

int kecerahan = 0;
int levelperubah = 5;//step perubahan kecerahan 

void setup()  {
Serial.begin(9600);
} 

void loop()  {
  analogWrite(9, kecerahan);
  Serial.println(kecerahan);//tampilkan kecerahan di serial monitor
  kecerahan = kecerahan + levelperubah;//perbaharui nilai kecerahan
  if (kecerahan == 0 || kecerahan == 255) {//jika mencapai nilai batas
    levelperubah = -levelperubah ; //berubah kenilai sebaliknya
  }
  delay(500);
}
 
Hasilnya kecerahan led akan berubah setiap 1/2 detik dengan step perubahan 5 digit, setelah mencapai kecerahan maksimum (tampilan pada serial monitor 255) akan meredup kembali sampai led padam (tampilan pada serial monitor 0) dan akan terus berulang kembali begitu seterusnya.
Terakhir mengkombinasikan analog input dari potensiometer untuk mengatur analog output mengatur kecerahan dari led, berikut gambar:

Sketchnya sebagai berikut:

const int analogInPin = 0;  // analog input pada pin analog 0
const int analogOutPin = 9; // analog output pada pin 9/terpasang led

int sensorValue = 0;        // variable input analog
int outputValue = 0;        // variable output analog

void setup() {
  // inisialisasi komunikasi serial pada 9600 bps:
  Serial.begin(9600);
}

void loop() {
  // membaca nilai analog in:
  sensorValue = analogRead(analogInPin);
  // memetakan kedalam kisaran output analog:
  outputValue = map(sensorValue, 0, 1023, 0, 255);
  // merubah nilai analog output:
  analogWrite(analogOutPin, outputValue);           

  // mencetak pada serial monitor:
  Serial.print("sensor = " );
  Serial.print(sensorValue);
  Serial.print("  output = ");
  Serial.println(outputValue);
  // tunggu 20 milidetik sebelum lanjut ke pembacaan berikutnya
  delay(20);
}
 
Pada sketch diatas digunakan function “map()” untuk memetakan input analog yang resolusinya 1024 ke output analog yang resolusinya hanya 256.


Referensi: