Kamis, 11 Juli 2019

Cara Membuat Aplikasi Weblink Resep Makanan dan Minuman Online Berbasis Android


MEMBUAT APLIKASI WEBLINK RESEP MAKANAN BERBASIS ANDROID 

Assalammualaikum Wr. Wb.


Nama Saya Rizqy Dwi Syahputra
Saya akan memberikan tutorial bagaimana cara membuat  Aplikasi Resep Makanan berbasis Android yang dapat digunakan untuk smartphone/ponsel dengan tampilan program yang sederhana sesuai dengan sistem yang praktis berupa aplikasi smartphone/ponsel yang dengan mudah dapat diakses dan hasilnya dapat diterima oleh masyarakat.
Alat dan Software:
  • Laptop
  • JDK
  • Eclipse/Android Studio
  • ADT
  • SDK
  • Referensi/buku buat panduan, dll.
Aplikasi ini memiliki 4 Activity yaitu:
  • Halaman Menu Utama (TabHost)
  • Menu Makanan
  • Menu Minuman
  • Menu Tentang
Aplikasi ini masih tahap pengembangan karena itu mungkin akan ada pembahruan, berikut untuk screenshot-nya : 
                           
                                                         - Tampilan Resep Makanan

-Tampilan Resep Minuman


-Tampilan Tentang


-Tampilan contoh video Resep Ayam Rica Rica


-Tampilan contoh Video Jus Jambu




Berikut adalah source code nya :

1. MainActivty.java
package com.example.rizqy_161021401417;
import android.os.Bundle;
import android.app.TabActivity;
import android.content.Intent;
import android.widget.TabHost;

@SuppressWarnings("deprecation")
public class MainActivity extends TabActivity {

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        TabHost tabhost = getTabHost();
        TabHost.TabSpec spec;
        Intent intent;
        
        intent = new Intent().setClass(this, ActivityMakanan.class);//content pada tab yang akan kita buat
        spec = tabhost.newTabSpec("Resep Makanan").setIndicator("Resep Makanan",null).setContent(intent);//mengeset nama tab dan mengisi content pada menu tab anda.
        tabhost.addTab(spec);//untuk membuat tabbaru disini bisa diatur sesuai keinginan anda
        
        intent = new Intent().setClass(this, ActivityMinuman.class);
        spec = tabhost.newTabSpec("Resep Minuman").setIndicator("Resep Minuman",null).setContent(intent);
        tabhost.addTab(spec);
        
        intent = new Intent().setClass(this, ActivityTentang.class);
        spec = tabhost.newTabSpec("Tentang").setIndicator("Tentang",null).setContent(intent);
        tabhost.addTab(spec);

    }
}

2. ActivityMakanan.java
package com.example.rizqy_161021401417;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;

public class ActivityMakanan extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_makanan);
    }
    public void open1(View view) {
     Intent browserIntent=new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.youtube.com/watch?v=b7pcR_PhY50"));
     startActivity(browserIntent);
    }
  
    public void onCreate1(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_makanan);
    }
    public void open2(View view) {
     Intent browserIntent=new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.youtube.com/watch?v=aevmFRd8Bzw"));
     startActivity(browserIntent);
    }
    public void onCreate2(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_makanan);
    }
    public void open3(View view) {
     Intent browserIntent=new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.youtube.com/watch?v=_L8pmcvQCto"));
     startActivity(browserIntent);
    }
    public void onCreate3(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_makanan);
    }
    public void open4(View view) {
     Intent browserIntent=new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.youtube.com/watch?v=y7pt5oTv7AU"));
     startActivity(browserIntent);
    }
    public void onCreate4(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_makanan);
    }
    public void open5(View view) {
     Intent browserIntent=new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.youtube.com/watch?v=d6GT8JKrJW4"));
     startActivity(browserIntent);
    }
   
    
    
}

3. ActivityMinuman.java
package com.example.rizqy_161021401417;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;

public class ActivityMinuman extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_minuman);
    }
    public void open1(View view) {
     Intent browserIntent=new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.youtube.com/watch?v=TfgacBwlz24"));
     startActivity(browserIntent);
    }
  
    public void onCreate1(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_minuman);
    }
    public void open2(View view) {
     Intent browserIntent=new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.youtube.com/watch?v=wH-l1CBaRR8"));
     startActivity(browserIntent);
    }
    public void onCreate2(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_minuman);
    }
    public void open3(View view) {
     Intent browserIntent=new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.youtube.com/watch?v=98VKeqah1Nc"));
     startActivity(browserIntent);
    }
    public void onCreate3(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_minuman);
    }
    public void open4(View view) {
     Intent browserIntent=new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.youtube.com/watch?v=_-nxvKfhIYQ"));
     startActivity(browserIntent);
    }
    public void onCreate4(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_minuman);
    }
    public void open5(View view) {
     Intent browserIntent=new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.youtube.com/watch?v=cIzrEcQ20po"));
     startActivity(browserIntent);
    }
   
    
    
}


4. ActivityTentang.java
package com.example.rizqy_161021401417;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
public class ActivityTentang extends Activity {
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_tentang);
 }
 @Override
 public boolean onCreateOptionsMenu(Menu menu) {
  // Inflate the menu; this adds items to the action bar if it is present.
  getMenuInflater().inflate(R.menu.activity_tentang, menu);
  return true;
 }
 @Override
 public boolean onOptionsItemSelected(MenuItem item) {
  // Handle action bar item clicks here. The action bar will
  // automatically handle clicks on the Home/Up button, so long
  // as you specify a parent activity in AndroidManifest.xml.
  int id = item.getItemId();
  if (id == R.id.action_settings) {
   return true;
  }
  return super.onOptionsItemSelected(item);
 }
}


5. activity_main.xml
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@android:id/tabhost"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical" >

        <TabWidget
            android:id="@android:id/tabs"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="bottom" />

        <FrameLayout
            android:id="@android:id/tabcontent"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_gravity="bottom" />

    </LinearLayout>
</TabHost>

6. activity_makanan.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
 >
    <Button
        android:id="@+id/button1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:onClick="open1"
        android:text="Ayam Rica Rica" />
    <Button
        android:id="@+id/button2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:onClick="open2"
        android:text="Nasi Goreng" />
    <Button
        android:id="@+id/button3"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:onClick="open3"
        android:text="Mie Ayam" />
    <Button
        android:id="@+id/button4"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:onClick="open4"
        android:text="Es Campur" />
    <Button
        android:id="@+id/button5"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:onClick="open5"
        android:text="Bebek Goreng" />
</LinearLayout>


7. activity_minuman.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
 >
    <Button
        android:id="@+id/button1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:onClick="open1"
        android:text="Jus Alpukat" />
    <Button
        android:id="@+id/button2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:onClick="open2"
        android:text="Jus Jambu" />
    <Button
        android:id="@+id/button3"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:onClick="open3"
        android:text="Jus Sirsak" />
    <Button
        android:id="@+id/button4"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:onClick="open4"
        android:text="Just Jeruk" />
    <Button
        android:id="@+id/button5"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:onClick="open5"
        android:text="Jus Mangga" />
</LinearLayout>


8. activity_tentang.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.menumakanandanminuman.ActivityTentang" >
    <TextView
        android:id="@+id/TextView01"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="22dp"
        android:text="Dibuat Oleh " />
    <TextView
        android:id="@+id/TextView02"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/TextView01"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="36dp"
        android:text="Nama : Rizqy Dwi Syahputra" />
    <TextView
        android:id="@+id/TextView03"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/TextView02"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="18dp"
        android:text="NIM : 161021401417" />
    <TextView
        android:id="@+id/TextView04"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/TextView02"
        android:layout_below="@+id/TextView03"
        android:layout_marginTop="22dp"
        android:text="06TPLM001 STMIK ERESHA" />
    <TextView
        android:id="@+id/TextView05"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"
        android:layout_marginBottom="45dp"
        android:text="Versi Aplikasi 0.1" />
</RelativeLayout>

9. Jangan lupa menambah codingan AndroidManifest.xml sebagai berikut

    <uses-permission android:name="android.permission.INTERNET" />


10. Untuk link download apk bisa Disini


Demikian yang disampai kurang lebihnya mohon maaf, Semoga apa yang disampaikan dapat bermanfaat dan berfaedah untuk kita semua. Atas perhatiannya saya ucapkan terima kasih.

Wassalamualaikum Wr. Wb.

Selasa, 09 Juli 2019

Makalah Tentang Kecerdasan Buatan "Robotika dan Sistem Sensor"


KECERDASAN BUATAN


ROBOTIKA DAN SISTEM SENSOR






Disusun Oleh :

-         Abdullah (161011400114)

-      Dedi Tri Kurniawan (161011400512)

-         Rizki Dwi Syahputra (161021401417)



Kelas : 06TPLM001 (Reguler B)



PROGRAM STUDI TEKNIK INFORMATIKA

STMIK ERESHA

2019





BAB I

PENDAHULUAN



A.      LATAR BELAKANG MASALAH

Teknologi komputer, terutama robotika di masa sekarang sudah menjadi bagian penting dalam kehidupan manusia. Robot sendiri yaitu peralatan elektro-mekanik atau bio-mekanik, atau gabungan peralatan yang menghasilkan gerakan yang otonomi maupun gerakan berdasarkan gerakan yang diperintahkan. Robot dalam beberapa hal dapat menggantikan peran manusia, hal ini terlihat pada robot-robot yang diterapkan dalam berbagai bidang seperti industri, kesehatan (health), pertahanan (defense), pertanian (agriculture), penelitian (research), pemainan (game), dan lain-lain. Dalam industri modern, robot telah mengambil alih posisi para pekerja di pabrik-pabrik. Misalnya dalam industri automotif, alat elektronik, peranti komputer, robot telah menjadi penggerak utama dari industri ini. Alasan utama penggunaan robot adalah karena, robot dalam kondisi tertentu (syarat minimum operasi terpenuhi) dapat menjadi pekerja yang ideal, robot memiliki tingkat akurasi dan efisiensi yang tinggi, serta yang lebih penting adalah biaya operasinya rendah dengan output yang dihasilkan lebih tinggi.

Ada beberapa tipe robot, yang secara umum dapat dibagi menjadi dua kelompok yakni robot manipulator dan robot mobil (mobile robot). Robot manipulator dicirikan dengan memiliki lengan (arm robot), dan banyak digunakan untuk robot industri. Sedangkan robot mobil merupakan robot yang dapat bergerak berpindah tempat, meskipun nantinya robot tersebut juga dipasang manipulator. Robot mobil dapat dikelompokkan lagi menjadi tiga yaitu robot daratan (ground robot), robot air (Underwater Robot), dan robot terbang (aerial robot). Ketiga jenis robot ini sangat banyak dikembangkan karena melihat sifatnya yang sangat fungsional.

Perkembangan ini dapat dilihat dari teknologi mikrokontroler yang merupakan suatu terobosan teknologi mikroprosessor dan mikrokomputer. Mikrokontroler ini banyak digunakan pada berbagai sistem kontrol.

Untuk membuat robot cerdas kita harus melakukan pertimbangan -pertimbangan yang sering menjadi kendala dalam perancangan sebuah robot, sebab terkadang jika mengutamakan salah satu faktor misalnya faktor kecepatan, maka faktor yang lainnya seperti kestabilan gerak bisa saja tidak tercapai. Untuk mengatasi berbagai kendala tersebut, maka harus dilakukan studi yang sekaligus merancang sebuah robot dengan mempertimbangkan dan memilih bagian-bagian pembangun robot yang tepat, dan spesifikasinya sesuai dengan kebutuhan, sehingga tujuannya dapat tercapai.

Agar dapat mencapai semua itu kita dapat mempelajari robot Boe-bot sebagai bahan dasar untuk mempelajari robot. Robot Boe-bot ini ada yang beroda dan berkaki. Salah satu cara kerja dari robot Boe-bot ini yaitu dapat mendeteksi adanya penghalang dengan menggunakan sensor Infrared (IR), sensor ini akan bekerja dengan menyusuri dinding dengan mendeteksi jarak. Dimana sensor jarak digunakan untuk mengetahui posisi robot terhadap dinding dan sensor lantai yang akan mendeteksi garis putih.

Dengan diketahuinya posisi ini maka robot dapat memberikan keputusan gerakan apa yang akan dilakukan, yaitu menghindari adanya penghalang (dinding).



B.   RUMUSAN MASALAH

Adapun rumusan masalah yang akan dibahas yaitu :

1.      Bagaimana robot itu bisa diciptakan dengan adanya sensor,

2.      Bagaimana mengimplementasikan robot pendeteksi warna benda beserta lokasinya yang berbasis sistem lego mindstorm education nxt,

3.      Bagaimana membuat antarmuka yang baik secara hardware maupun software untuk keperluan pengendalian robot, dan

4.      Bagaimana pembuatan robot dan sensor dengan benar.



C.   TUJUAN

Adapun tujuan dalam pembuatan makalah ini yaitu :



1.         Mengetahui jenis-jenis dan pengertian dari sistem sensor.

2.         Mengetahui dengan detail tentang robot,

3.         Mengetahui dengan detail tentang sensor, dan

4.         Mengetahui pengimplementasian tentang robot.




BAB II

PEMBAHASAN



A.   PENGERTIAN ROBOT DAN SENSOR

Robot adalah sebuah alat mekanik yang dapat melakukan tugas fisik, baik menggunakan pengawasan dan kontrol manusia, ataupun menggunakan program. Robot biasanya digunakan untuk tugas yang berat, berbahaya, pekerjaan yang berulang dan kotor. Robot juga dilengkapi dengan sensor untuk pendeteksi terhadap sesuatu hal, misalnya seperti sensor panas.

Pada makalah ini akan dijelaskan jenis-jenis dan pengertian dari sistem sensor yang banyak digunakan pada robot. Sesuai dengan namanya atau sering disebut dengan Artificial Intelegensi (AI), Kecerdasan buatan adalah salah satu cabang sains komputer yang mempelajari otomatisasi tingkah laku cerdas yang didasarkan pada prinsip-prinsip teoritikal dan terapan yang menyangkut struktur data yang digunakan dalam representasi pengetahuan, algoritma yang diperlukan dalam penerapan pengetahuan itu, serta teknik-teknik bahasa dan pemprograman yang dipakai dalam implementasinya dan yang paling banyak menerapkan konsep kecerdasan buatan adalah dunia robotika.

Sensor adalah piranti yang menerima input berupa suatu besaran atau sinyal fisik yang kemudian mengubahnya menjadi besaran atau sinyal lain yang diteruskan ke kontroler. Terdapat banyak jenis sensor yang digunakan pada pembuatan robot.

Robot juga membutuhkan masukan (input) yang akan menentukan apa yang harus dilakukan oleh robot. Input ini umumnya masuk ke dalam otak robot dengan berbagai macam cara. Ada yang menggunakan remote, atau diberikan sebelum robot diaktifkan dan ada juga yang langsung diberikan pada robot melalui programnya. Hal ini sangat berlaku bagi robot-robot industri pada umumnya.



B.       KOMPONEN UTAMA DALAM ROBOT

Adapun komponen utama dalam robot, yaitu :

1.  Controller

Bagian ini berfungsi untuk menjalankan program, menerima dan mengolah setiap informasi dari input sensor, dan juga yang mengirim dan mengendalikan output pada actuator, indikator, atau juga audio. Controller ini merupakan bagian paling utama dalam robot, ini seperti otak pada manusia.

2.  Actuator

Bagian ini seperti otot pada manusia. Fungsinya adalah untuk menggerakan. Untuk robot yang beroda biasanya menggunakan DC Motor, sebagai pemutar roda, dan membuat robot berpindah tempat, dan untuk robot yang berjalan menggunakan kaki, Motor Servo adalah pilihan yang tepat. Motor Sevo adalah DC Motor yang dapat diatur putarannya.

3.  Sensor

Jika manusia memiliki indera maka robot memiliki sensor. Ada banyak jenis-jenis sensor robot, manusia hanya memiliki 5 indera, robot bisa memiliki sensor dengan jumlah yang tidak terbatas. Karena robot makhluk elektronik, dan teknologi yang cepat berkembang.

4.  Battery

Merupakan sumber energi bagi robot. Seperti otak manusia yang membutuhkan nutrisi, dan badan yang membutuhkan kabohidrat atau vitamin. Listrik adalah darah bagi robot, dan robot bisa mendapatkan kebutuhan listrik untuk controller, sensor, actuator dan semua komponen elektronik, dari battery.

5.  Kabel

Kabel pada robot ini seperti urat jalan mengalirnya darah pada setiap komponen pada robot, dan juga sebagai saraf yang menjadi jalan data untuk input dan output.

6.  Frame

Sebagai tulang yang menyangga antara servo pada robot. Juga yang membentuk robot menjadi berbagai macam, dan penunjang penampilan robot. Untuk robot beroda seperti line follower frame cukup berbentuk kotak, atau lingkaran saja, sebagai penyangga DC Motor dan tempat meletakan controller.



7.  Chassis

Rangka utama pada robot, biasanya menjadi badan bagi si robot. Biasanya sebuah chassis pada robot dipasang berbagai macam frame, dengan jumlah lebih banyak.

8.  Support

Yang dimaksud Support disini yaitu komponen pendukung terbentuknya robot, seperti baud dan mur.



C.   JENIS ROBOT DARI SEGI BENTUK

1. Robot Mobile

Merupakan jenis robot yang paling diminati karena pembuatannya yang sangat mudah, setidaknya untuk membuat robot mobile seseorang harus mengerti tentang mikrokontroler dan sensor-sensor elektronik.

2.  Robot Jaringan

Robot ini bisa dibilang lebih canggih dibandingkan dengan robot mobile. Robot jaringan memungkinkan pemiliknya untuk mengontrol robot menggunakan jaringan internet dengan protokol TCP/IP. Dengan kecanggihan internet ini, koneksi robot jaringan, proses kontrol, dan monitoringnya dapat dilakukan melalui jaringan.

3.  Robot Manipulator (Tangan)

Robot ini hanya memiliki satu tangan saja seperti tangan manusia yang fungsinya untuk memegang atau memindahkan barang, contoh robot ini adalah robot las di Industri mobil, robot merakit elektronik dan lain-lain.

4.  Robot Humanoid

Merupakan robot yang sering muncul belakangan ini. Penampilan keseluruhan dari robot humanoid menyerupai manusia bahkan robot ini dirancang khusus untuk mampu melakukan interaksi dengan peralatan maupun lingkungan yang dibuat untuk manusia. Robot ini juga memiliki dua bagian kaki dan dua bagian tangan yang layaknya manusia, dan untuk bagian wajahnya robot ini juga memiliki bagian mata, mulut dan sebagainya.



5.  Robot Berkaki

Robot ini memiliki kaki seperti hewan atau manusia yang mampu melangkahkan kakinya, seperti robot serangga, robot kepiting dan lain-lain.

6.  Flying Robot

Merupakan robot yang mampu terbang, robot ini dirancang menyerupai pesawat model yang diprogram khusus untuk memonitor keadaan di tanah dari atas, dan untuk meneruskan komunikasi.

7.  Underwater Robot

Jenis robot ini sangatlah canggih, karena dapat digunakan di bawah laut untuk memonitor kondisi bawah laut dan juga untuk mengambil sesuatu di bawah laut.



D.   SENSOR BERDASARKAN FUNGSI

Secara umum berdasarkan fungsi dan penggunaannya sensor dapat dikelompokan menjadi 5 bagian yaitu :

1.    Thermal sensor (sensor panas) yaitu sensor yang digunakan untuk mendeteksi gejala perubahan panas/temperature/suhu pada suatu dimensi benda/dimensi ruang tertentu.

2.    Optic sensor (sensor cahaya) yaitu sensor yang mendeteksi perubahan cahaya dari sumber cahaya, pantulan cahaya ataupun bias cahaya yang mengernai benda/ruangan.

3.    Mechanic sensor (sensor mekanis) yaitu sensor yang mendeteksi perubahan gerak mekanis, seperti perpindahan atau pergeseran atau posisi, gerak lurus dan melingkar, tekanan, aliran, level dsb.

4.    Sensor Ultrasonic yaitu secara khas menggambarkan suatu sensor yang mengirimkan sinyal berfrekuensi tinggi melalui jarak yang dapat diatur, dan bereaksi terhadap perubahan dalam gelombang tekanan suara yang disebabkan oleh gerakan.

5.    Sensor Jarak (Proximity Sensor) yaitu tidak seperti sensor mekanik yang lain dan dapat mendeteksi objek tanpa bersentuhan secara fisik.



E.   JENIS SENSOR PADA ROBOT

Adapun jenis-jenis sensor pada robot, yaitu :

1. Sensor Sentuh (Touch Sensor)

Merupakan jenis sensor yang akan mendeteksi ketika disentuh, ibarat kulit. Touch Sensor pada dasarnya adalah saklar yang memiliki berbagai jenis bentuk. Pada robot digunakan untuk untuk mendeteksi keberadaan suatu obyek pada tangan robot dan mencegah tabrakan antara bot dengan suatu obyek, dan masih banyak lagi.

Sensor sentuh pada dasarnya adalah saklar dengan berbagai macam variasi bentuknya. Rangkaian sensor sentuh pada umumnya menggunakan resistor pull-up ataupun pull-down seperti terlihat pada Gambar 2. Rangkaian menggunakan resistor pull-up bersifat active low yang berarti rangkaian mengeluarkan sinyal 1 kecuali saat saklar aktif. Hal ini berkebalikan dengan rangkaian menggunakan resistor pull-down yang bersifat active low, yaitu rangkaian mengeluarkan sinyal 0 kecuali saat saklar aktif. Nilai resistor pull-up dan pull down berkisar antara 1 – 10 kΩ. Dari kedua rangkaian tersebut, rangkaian pull-up lebih banyak digunakan dibanding rangkaian pull down.





Gambar Dasar Rangkaian Saklar



Contoh sensor sentuh sederhana berupa sungut (whisker) beserta diagram pengkabelannya. Rangkaian ini sebetulnya merupakan rangkaian pull up dengan kedua sungut berfungsi sebagai saklar. Rangkaian akan mengeluarkan sinyal 1 saat sungut tidak tertekan. Jika sungut tertekan maka sinyal output akan menjadi 0 karena sungut dihubungkan dengan ground.





Gambar Diagram pengkabelan untuk rangkaian sungut



Pilihan lain yang dapat digunakan sebagai sensor sentuh adalah microswitch yang merupakan saklar SPDT. Microswitch adalah saklar tekan yang aktif jika ada obyek menyentuh/mendorong tuas dan sering juga disebut sebagai limit switch.



Gambar Microswitch beserta rangkaiannya



Hal yang perlu diperhatikan dalam penggunaan sensor sentuh adalah robot yang menggunakan sensor ini haruslah dapat berhenti secara mendadak sehingga kurang cocok untuk robot dengan kecepatan tinggi. Untuk deteksi obyek lebih lanjut dapat digunakan sensor non-kontak seperti ultrasonik ataupun inframerah.

2.  Sensor Cahaya (Light Sensor)

Sensor cahaya mempunyai banyak kegunaan pada sistem otomasi. Beberapa contohnya antara lain deteksi kertas pada printer, penentuan banyaknya lampu yang dibutuhkan suatu ruangan, dan penentuan nyala lampu blitz pada kamera.

Berdasarkan panjang gelombangnya sensor cahaya diklasifikasikan menjadi sensor inframerah, cahaya tampak dan ultraviolet.

Pada mobile robot sensor cahaya kebanyakan digunakan untuk dua hal, yaitu penjejak garis dan deteksi obyek. Robot penjejak garis menggunakan sensor cahaya untuk menentukan garis yang berwarna gelap dengan lantai yang berwarna terang atau sebaliknya. Sensor deteksi obyek dapat dibagi menjadi dua, yaitu sensor proksimasi dan sensor pengukuran jarak.

Peranti yang digunakan sebagai sensor cahaya yaitu :

a.  Fotoresistor (Light Dependant Resistor)

Merupkan resistor yang mempunyai nilai resistansi yang berubah sesuai dengan intensitas cahaya tampak yang menimpanya.

Fotoresistor dihubungkan dengan resistor lain untuk membentuk rangkaian pembagi tegangan untuk diukur beda tegangannya. Nilai R dipilih sehingga nilai Vout diusahakan berada pada rentang 0 – 5 V. Untuk penggunaan umum nilai R dapat dipilih 330 atau 470Ω. Output dari rangkaian fotoresistor dapat dihubungkan dengan komparator untuk mendapatkan sinyal biner (on/off) ataupun ADC.

b.  Fototransistor

Merupakan transistor (biasanya dari jenis NPN) yang dapat meneruskan arus sesuai dengan banyaknya intensitas cahaya yang mengenainya.

Cahaya pada fototransistor menggantikan peranan arus basis, semakin banyak intensitas cahaya, semakin banyak arus yang dapat dialirkan dari kolektor ke emitor. Rangkaian pada gambar fototransistor bersifat active low, yang berarti tegangan output berbanding terbalik dengan intensitas cahaya yang diterima. Output rangkaian fototransistor biasanya dihubungkan dengan pengkondisi sinyal

biner seperti inverting transistor, komparator, ataupun Schmidt trigger. Fototransistor sering ditemui dalam kemasan berpasangan dengan LED (biasanya inframerah) membentuk rangkaian optokopler (atau optoisolator) dan optoreflektor.

c.  Fotodioda

Merupakan dioda yang peka terhadap cahaya. Jika diberi cahaya maka tegangan output akan berkurang, begitu juga keadaan sebaliknya.

Fotodioda dapat mengalirkan arus yang berarah sebaliknya (dari katoda ke anoda) saat diberi cahaya.



Gambar Rangkaian Fotoresistor, Fototransistor, dan Fotodioda



3.  Sensor Inframerah (Infrared Sensor)

Sinar inframerah adalah sinar atau gelombang elektromagnet yang mempunyai frekuensi lebih rendah (atau dengan kata lain panjang gelombang lebih besar) dari warna merah. Penggunaan inframerah yang paling populer adalah pada peranti remote control TV. Sinar inframerah yang dipancarkan mempunyai frekuensi 38 – 40 kHz untuk membedakan dengan pancaran sinar inframerah lain (misal dari lampu atau sinar matahari).

Pada penerima demodulator digunakan mengubah sinyal tersebut menjadi sinyal biner biasa. Jenis lain sensor inframerah adalah Passive Infra Red (PIR). PIR dapat digunakan untuk mendeteksi manusia atau binatang yang ada di dekatnya melalui radiasi inframerah dari panas tubuh yang dipancarkan. Sensor ini digunakan misalnya pada pintu otomatis atau sistem alarm.



Gambar Penerima inframerah



4.  Sensor Ultrasonik

Gelombang ultrasonik dipancarkan oleh transmiter dan pantulannya diterima oleh receiver. Sonar (Sound Navigating and Ranging) tidak terpengaruhi oleh warna dan sifat pantulan cahaya dari obyek, namun kemampuannya akan menurun jika obyek terbuat dari material tertentu yang dapat menyerap gelombang suara (peredam suara).



Gambar Rangkaian transmitter ultrasonik (McComb & Priedko, 2006)



Gambar Rangkaian receiver ultrasonik (McComb & Priedko, 2006)

Gambar diatas menunjukkan contoh rangkaian transmitter dan receiver untuk sensor proksimasi ultrasonik. Gelombang suara yang digunakan mempunyai

frekuensi 40 kHz yang dihasilkan oleh timer 555 pada rangkaian multivibrator astabil yang kemudian dikuatkan oleh suatu transistor untuk kemudian dipancarkan oleh transduser ultrasonik.

Pantulan dari obyek diterima oleh transduser ultrasonik pada rangkaian receiver yang mempunyai dua buah opamp, masing-masing berfungsi sebagai penguat dan komparator. Semakin dekat suatu obyek dengan receiver maka semakin kuat pula sinyal yang diterima receiver (jangan lupa bahwa jenis material obyek juga bepengaruh).

Output komparator akan bernilai rendah atau tinggi jika sensor dijauhkan atau didekatkan dengan obyek. Pengaturan sensitivitas sensor dilakukan dengan mengatur R2 pada rangkaian receiver. Sensitivitas sensor ultrasonik ini menyangkut seberapa dekat/jauh jarak obyek saat output sensor bernilai tinggi. Jarak maksimal sensor ini maksimal dapat mencapai 3 m.



5.  Enkoder

Enkoder adalah peranti untuk mengukur gerak dengan output berupa rangkaian pulsa digital. Dengan mencacah bit tunggal atau melakukan dekoding rangkaian bit, pulsa dapat dikonversikan menjadi posisi absolut atau inkremental.

Enkoder ada dua, yaitu :

a.    Enkoder inkremental menghasilkan pulsa digital yang dihitung untuk menentukan perpindahan relatif poros.



b.    Enkoder  absolut  menggunakan  piringan  yang  memiliki  beberapa  jalur/track berupa kode digital untuk menunjukkan posisi absolut poros.



Jenis enkoder yang banyak digunakan yaitu enkoder magnetik dan enkoder optik.



a.  Enkoder magnetik menggunakan sensor efek Hall sebagai detektor magnet. Pada poros dipasangkan sejumlah magnet (atau dapat juga hanya berupa takikan/tonjolan pada poros), misalnya 16 buah, yang menghasilkan output pulsa dengan jumlah yang sama setiap putaran porosnya.



Gambar 16 Enkoder



b.  Enkoder optik biasanya menggunakan LED inframerah sebagai simber cahaya, fototransistor atau foto dioda sebagai detektor cahaya serta suatu piringan. Terdapat dua prinsip kerja yang pertama yaitu berdasarkan warna hitam-putih (atau gelap-terang) pada piringan enkoder (Gambar 1), yang kedua yaitu berdasarkan ada tidaknya lubang pada piringan enkoder (Gambar 2).



Gambar 1                                             Gambar 2



Berdasarkan kode digital yang digunakan terdapat dua jenis piringan, yaitu yang menggunakan kode biner dan gray-code. Gray-code adalah modifikasi dari kode biner yang digunakan untuk mencegah kesalahan baca dari fototransistor. Pada gray-code ini setiap transisi dari sektor yang bertetangga menyebabkan perubahan hanya 1 bit.

Enkoder digunakan pada mobile robot terutama untuk aplikasi odometri. Odometri adalah penentuan posisi dan orientasi robot di ruang relatif terhadap suatu referensi berdasarkan jumlah putaran rodanya.

6.  Kompas

Kompas adalah sensor yang menunjukkan arah/orientasi robot pada bidang mendatar yang digunakan sebagai alat bantu navigasi robot. Gambar 18 menunjukkan salah satu contoh kompas yaitu modul CMPS03 dari Devantech. Modul ini menggunakan sensor medan magnet Philips KMZ51 untuk mengukur medan magnet bumi. Output sensor ini dapat berupa PWM atau I2C. Jika dipilih PWM, maka output akan mengeluarkan pulsa selama 1 ms untuk 00 hingga 36,99ms untuk 359,990, dengan kata lain mempunyai sensitivitas 0,1 ms/0 dan offset 1 ms. Untuk I2C modul mengirimkan data yang dapat berupa byte (0 – 255) atau word (0 – 3599) untuk satu putarannya.





Gambar Modul kompas CMPS03



7.  Akselerometer

Merupakan sensor yang digunakan untuk mengukur percepatan (perubahan kecepatan). Pada robot akselerometer dapat digunakan pada robot untuk aplikasi antara lain robot swatimbang (self balanced robot), robot berjalan, deteksi benturan, detektor getaran, dan deteksi G-force. Salah satu contoh akselerometer adalah modul Memsic MX2125 dari Parallax. Sensor ini dapat mengindra percepatan pada dua sumbu.





8.  Color Sensor

Sama seperti light sensor atau InfraRed sensor, color sensor juga bisa mendeteksi gelap terang dengan menangkap warna hitam dan putih. Tapi selain itu, Color Sensor juga dapat mendeteksi warna lainnya seperti merah, biru, kuning, dan sebagainya. Pada aplikasinya color sensor juga bisa digunakan untuk membuat robot Line Follower, bahkan yang lebih canggih, yaitu : dapat mengikuti garis dengan warna yang lebih spesifik.





Gambar Color Sensor



9.  Distance Sensor

Merupakan jenis sensor yang digunakan untuk mendeteksi objek dengan cara mengukur jarak objek tersebut. Sensor ini bisa mengukur jarak dengan sangat akurat. Dalam robot, sensor ini berguna sebagai mata, robot dapat melihat objek didepannya dengan sensor ini. Contoh Distance Sensor yang paling sering digunakan adalah Ultrasonic sensor. Cara kerjanya sama persis seperti mulut dan telinga pada kelelawar.





10. Sound Sensor

Sensor ini digunakan untuk mendeteksi suara disekitar robot. Melalui program sensor ini bisa membedakan suara yang nyaring, suara yang tidak nyaring, dan hening. Intensitasnya bisa diatur manual, atau melalui program, tergantung jenis Sound Sensor yang dipakai. Untuk jenis Voice Recognition, itu bisa diprogram untuk mendengar kata (bahasa) yang digunakan manusia.



11. Balance Sensor

Sensor ini biasa digunakan untuk membuat robot tetap seimbangdan mengetahui kemiringan, membantu bangun saat robot terjatuh.



12. Gas Sensor

Sensor ini berfungsi untuk mendeteksi berbagai jenis gas atau asap yang ada disekitar. Seperti hidung pada manusia, dapat membedakan yang mana gas yang biasa dan mana gas yang berbahaya. Contoh penerapan gas sensor ini adalah untuk robot penjinak Bom, atau robot GreenBird.



13. Temperatur Sensor

Sensor ini sama seperti kulit manusia yang dapat merasakan panas dan dingin.

Dengan temperatur sensor robot dapat mengenali suhu yang ada disekitarnya.

F. CONTOH PROJECT ROBOTIKA

Membuat Lampu LED Berjalan menggunakan Arduino Uno

Tampilan Awal Aplikasi Arduino Uno



Alat dan Bahan
  • 5 Buah LED 5mm atau LED 3mm (Warna Bebas)
  • 5 Buah Resistor 100Ω Ohm
  • 6 Buah Kabel Jumper
  • 1 Buah Protoboard
  • 1 Buah Arduino
Rangkaian Lampu LED Berjalan Menggunakan Arduino UNO

Keterangan
  • Pin GND Arduino (Warna Hitam) ke GND/KATODA LED0, 1, 2, 3, dan 4 (Warna Hitam)
  • Pin 4 (Warna Hijau) ke Resistor
  • Pin 3 (Warna Orange) ke Resistor
  • Pin 2 (Warna Merah) ke Resistor
  • Pin 1(Warna Ungu) ke Resistor
  • Pin 0 (Warna Biru) ke Resistor
  • Sisi lain dari semua Resistor di hubungkan ke Positif LED (1 LED = 1 Resistor dan seterusnya)
Sketch Program
Dalam Sketch Program Lampu LED Berjalan Menggunakan Arduino UNO ada beberapa cara Sketch Program untuk dapat menyalakan LED nya, berikut ini saya akan paparkan Sketch Program dengan Aktif HIGH.
Sketch Program Cara Pertama :


Sketch Program Cara Kedua :


Keterangan :
  • Fungsivoid setup () dalam sebuah program arduino adalah semua perintah yang akan di baca sekali.
  • Fungsivoid loop () dalam sebuah program arduino adalah semua perintah yang akan di baca berulang-ulang.



BAB IV

PENUTUP



A.   KESIMPULAN

Kesimpulan yang dapat diambil dari pembuatan makalah ini yaitu bahwa robot tidak akan berhasil dibuat jika tidak ada sensor, bahasa pemrograman, dan uji coba pada robot itu sendiri sampai benar-benar menjadi robot yang siap pakai. Dengan adanya sensor, robot dapat membedakan berbagai macam cahaya, suara, bahaya, dll. Karena robot adalah salah satu alat yang sangat canggih, maka dinegara maju khususnya robot menjadi teknologi yang sangat mudah berkembang pesat. Bahkan dipambrik-pabrik yang besar misalnya pabrik mobil, disana sudah banyak menggunakan tenaga kerja robot untuk menghasilkan output pabrik yang lebih bnyak dan lebih cepat.






DAFTAR PUSTAKA



http://eprints.uny.ac.id/6811/1/Jurnal%20Skripsi.pdf



http://digilib.unimed.ac.id/public/UNIMED-Course-Robotika.pdf



http://digilib.its.ac.id/public/ITS-Undergraduate-10272-Paper.pdf



http://repository.usu.ac.id/bitstream/123456789/27566/5/Chapter%20I.pdf



http://elib.unikom.ac.id/files/disk1/105/jbptunikompp-gdl-s1-2007-sarianengs-5239-09---bab-i.pdf



http://www.gunadarma.ac.id/library/articles/graduate/industrialtechnology/2010/Artik el_10405805.pd