Monday, June 26, 2023

ALAT PENYIRAMAN TANAMAN SECARA OTOMATIS

 

Apa kabar, Sobat Projek semoga kita dalam keadaan sehat semuanya. Jumpa lagi dengan blog coba proyek, kali ini kita akan membuat sebuah project baru kita, kita akan membuat sebuah projek yang sangat dasar dan simple namun tetap memiliki manfaat baik dalam kemudahan dalam menyiram tanaman, Baiklah sobat projek kita akan memperkenalkan satu demi satu komponen dan sensor apa saja yang digunakan untuk membuat "Penyiraman Tanaman Secara Otomatis"

#Adapun komponen yang kita gunakan yaitu :

1. Sebuah Mikrocontroler Arduino 
2. Satu buah Pompa Air Mini/ Bisa Juga kita menggunakan Selenoid Valve(kran otomatis)
3. Satu buah Sensor Kelembaban Tanah
4. Kabel Jumper Secukupnya
5. Papan Sirkuit/Breadboard

# Setelah semua komponen diatas lengkap maka selanjutnya kita akan merangkainya menjadi sebuah alat yang menyatuh, langkah - langkah dalam merangkai sebagaimana terdapat pada gambar berikut :



Rangkailah komponen sesuai dengan gambar yang tertera diatas dengan jalur komponennya sebagai berikut :
1. Pin Vcc dari arduino dihubungkan ke port Vcc papan Sirkuit
2. Pin Ground Arduino dihubungkan juga ke port Ground papan sirkuit
3. Vcc Relay dan sensor Kelembaban dihubungkan ke port Vcc papan 
    begitu juga Ground pada Relay dan Sensor Kelembaban dihubungkan 
    dengan port Ground pada papan
4. Kabel sinyal pada sensor berwarna orange di hubungkan ke pin A1 
    pada arduino 
5. Pin Sinyal In Relay Dihubungkan dengan pin 5 arduino
5. Pin NO Relay dihubungkan dengan VAC PLN
6. Pin Com Relay dihubungkan dengan VAC Motor / Pompa AC
7. Pin GND Motor/Pompa AC dihubungkan dengan Netral PLN

#setelah rangkaian dihubungkan maka selanjutnya menguplod sketch kodingnya ke Board Arduino. Adapun Sketch sebagai berikut :


* Program Penyiraman Tanaman Otomatis ditulis dan dibuat oleh NFA Project dan Coba Proyek */

#define SoilMois A0           //Sensor pada pin A0
int sensorValue = 0;          //Variabel penampung nilai sensor pada pin A0(analoge o)
int pump = 5;                 //Pin Pompa pada pin 5

void setup() {
  Serial.begin(9600);         //Mulai komunikasi serial
  pinMode(pump, OUTPUT);      //Setting pada kondisi hight I/O atau low
  pinMode(SoilMois, INPUT);
}

void loop() {
  sensorValue = analogRead(SoilMois);   //Baca sensor
  Serial.print("Nilai Analog : ");      
  Serial.println(sensorValue);          //Tampilkan nilai analog sensor
  delay(1000);                           //Jeda 100ms
  if (sensorValue < 600){               //Jika nilai analog sensor < 500, maka
    digitalWrite(pump, HIGH);           //Pompa ON
  Serial.println("LAGI MENYIRAM TANAMAN"); //tampilan serial terminal lagi nyiram
  Serial.println("TANAMAN KERING");//tanaman kering
  }
  else{                                 //Jika tidak, maka
    digitalWrite(pump, LOW);            //Pompa OFF
    Serial.println("TANAMAN TELAH DISIRAM");//selesai siram
    Serial.println("POMPA MATI");//pompa mati
  }
}



Copy dan pastekan koding diatas ke IDE arduino atau software arduino kemudia di verifikasi dan setelah itu upload deh....setelah upload ke mesin arduino atau mikon-Nya arduino maka selesai sudah projek sederhana diatas.

*semoga bermanfaat*


Biar Lebih Paham simak video di youtube channel NFAproject3502 berikut :









Thursday, May 21, 2020

MEMBUAT TEMPAT SAMPAH OTOMATIS MEMBUKA DAN MENUTUP

Apa kabar, Sobat Projek semoga kita dalam keadaan sehat semuanya. Jumpa lagi dengan blog coba proyek dalam sebuah tutorial ataupun percobaan baru kita atau apalah namanya yang jelas kali ini kita akan membuat sebuah projek yang sangat dasar dan simple namun tetap memiliki manfaat baik dalam kemudahan membuang sampah pada tempatnya atau memiliki nilai edukasi kepada anak-anak alias childrent terhadap pengenalan dunia koding tentu tidak luput juga bagi mereka yang ingin belajar dasar pemograman Arduino. Baiklah sobat projek kita akan memperkenalkan satu demi satu komponen dan sensor apa saja yang digunakan untuk membuat "Tempat Sampa Otomatis"

#Adapun komponen yang kita gunakan yaitu :

1. Sebuah Mikrocontroler Arduino 
2. Satu buah Servo
3. Satu buah Sensor Ultrasonik
4. Satu buah Tempat Sampah
5. Kabel Jumper Secukupnya
6. Papan Sirkuit/Breadboard

# Setelah semua komponen diatas lengkap maka selanjutnya kita akan merangkainya menjadi sebuah alat yang menyatuh, langkah - langkah dalam merangkai sebagaimana terdapat pada gambar berikut :



ROBOT AVOIDER – Electro Royal | By: Juna NetOs

Rangkailah komponen sesuai gambar yang tertera pada gambar diatas dengan jalur komponennya sebagai berikut :
1. Pin Vcc dari arduino dihubungkan ke port Vcc papan Sirkuit
2. Pin Ground Arduino dihubungkan juga ke port Ground papan sirkuit
3. Vcc servo dan sensor ultrasonik dihubungkan ke port Vcc papan begitu juga Ground pada servo dan ultrasonik dihubungkan dengan port Ground pada papa
4. Kabel sinyal pada servo berwarna kuning di hubungkan ke pin 6 pada arduino 
5 Pin Triger pada ultrasonik dihubungkan dengn pin 7 pada Arduino
6. Pin Echo Pada Ultrasonik dihubungkan dengan pin 4 pada arduino, setelah rangkaian dihubungkan maka selanjutnya meng uplod sketch kodingnya ke Board Arduino. Adapun Sketch sebagai berikut :
####################################################

#include <Servo.h>
int const trigPin =7;
int const echoPin =4;
Servo servo;//Buat object 1 buah motor servo

void setup()
{
  servo.attach(6);
pinMode(trigPin, OUTPUT); 
pinMode(echoPin, INPUT); 
 Serial.begin(9600);    // the GPRS baud rate
}

void loop()
{       int duration, distance;
digitalWrite(trigPin, HIGH); 
delay(1);
digitalWrite(trigPin, LOW);
// Measure the pulse input in echo pin
duration = pulseIn(echoPin, HIGH);
// Distance is half the duration devided by 29.1 (from datasheet)
distance = (duration/2) / 29.1;
// if distance less than 0.5 meter and more than 0 (0 or less means over range) 
Serial.print(distance);
  Serial.println(" cm");
if (distance <= 50 && distance >=2) 
{
servo.write(50);
    //delay(3000);
} else {

servo.write(160);
}
// Waiting 60 ms won't hurt any one
delay(1500);

}


####################################################

Copy dan pastekan koding diatas ke IDE arduino atau software arduino kemudia di verifikasi dan setelah itu upload deh....setelah upload ke mesin arduino atau mikon-Nya arduino maka selesai sudah projek sederhana diatas.





 
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Tunggu Video DIY -nya 
di youtube ya ...........................sahabat projek











Saturday, December 15, 2018

ARM ROBOT


ARM Robot menurut fik, merupakan langkah awal membuat robot dalam bentuk yang lebih komplek, jika seseorang memahami tahap demi tahap dalam pembuatan ARM ini maka dia dapat berkreasi dengan sendiri sehingga dapat membuat sesuatu yang jauh lebih rumit dan lebih canggih, robot lengan ini merupakan pondasi dalam mengembangkan hal yang jauh lebih komplek.

Cara Kerja :
ARM dilengkapi dengan 4 buah potensio yang memiliki fungsi yang berbeda yang saya berinama pot1, pot2, pot3 dan pot 4. pot1 berada pada ujung lengan yang fungsinya mirip jari yang dapat menjepit benda/bahan apa yang akan kita ingin untuk dijepit, jika pot1 ini diputar ke kanan maka jarinya akan membuka begitu juga sebaliknya jika diputarle kiri maka jarinya akan menutup, kemudian pada pot2 jika diputar akan bergerak ke kiri atau akan yang mana fungsinya sama denga pergelangan tangan, kemudian pada pot3 yang memiliki fungsi sama dengan siku yang dapat mengangkat dan meletakkan sesuatu benda yang telah dijepit pot1, begitu juga denga pot4 yang memiliki fungsi sama dengan lengan tangan

Komponen yang digunakan
1 Arduino Uno
2 Servo 4 buah
3 Potensio 4 buah
4 Kabel Jumper secukupnya
5 Kemudian dudukan pada lengan robot yang saya gunakan, merupakan bekas jam hilman (peralatan perekaman curah hujan manual milik BMKG) yang telah rusak, untuk sobat semua bisa menggunakan media apa saja sebagai dasar peletakkan ARM.





Wednesday, November 8, 2017

MENGENAL INTERRUPT PADA ARDUINO

Interrupt Service Routine (ISR) atau interrupt adalah suatu keadaan dimana saat pemicu program interrupt dipicu baik secara eksternal ataupun internal, program interrupt akan menghentikan sejenak program lain yang sedang dijalankan dan melaksanakan program interrupt tersebut.
Pada arduino Interrupt dapat digunakan dengan menambahkan program berikut pada program yang ingin kita berikan fungsi interrupt.

-      attachInterrupt (interrupt, ISR, mode)//[eksternal interrupt]
-      attachInterrupt (pin, ISR, mode) (hanya Arduino Due)

AttachInterrupt [eksternal interrupt] memudahkan kita dalam mengolah data pada arduino. Pada setiap boards arduino kebanyakan memiliki 2 pin interrupt. pada arduino uno, memiliki 2 buah pin interrupt yang dapat difungsikan, yaitu pin 2 digital (int 0), dan pin 3 digital (int 1). Dibawa ini merupakan ketersediaan pin interupsi pada berbagai board arduino

-      int  pada Board arduino :  int.0 int.1 int.2 int.3 int.4 int.5
-      Untuk board arduino Uno, dan Ethernet yaitu pin : 2, 3
-      Untuk board arduino Mega2560 yaitu : 2, 3, 21, 20, 19, 18
-      Untuk board arduino Leonardo yaitu : 3, 2, 0, 1 7

Pada setiap int memiliki pasangan yang bisa dipasangkan dengan pin interrupt yang tersedia diatas antara lain :

-      Pada arduino uno  int0 dan pin 2 serta int1 dan pin 3 atau sebaliknya sesuai dengan keinginan kita
-      Pada arduino mega int4 dan pin 19 serta int5 dan pin 18

Pada kondisi diatas jika kita menginginkan penggunaan interrupt lebih dari 2 buah interrupt misalnya, kita ingin membuat 3 buah interrupt maka boar yang digunakan adalah board maga atau leonardo, pada kasus ini kita akan menggunakan mega sehingga pin yang digunakan adalah pin 2,3 dan 19 untuk dipasangkan degan int0,int1 dan int4
-         Int0   = pin 2
-         Int1   = pin 3
-         Int5   = pin 19  

Mode interrupt external (AttachInterrupt ) terdiri atas 4 kondisi, yaitu:

1.  LOW, fungsi interrupt yang dijalankan untuk kondisi pin rendah,
2.  CHANGE, fungsi interrupt yang dijalankan setiap kali perubahan pin nilai,
3.  RISING, fungsi interrupt yang dijalankan jika terjadi perubahan nilai pin dari LOW ke HIGH,
4.  FALLING, fungsi interrupt yang dijalankan jika terjadi perubahan nilai pin dari HIGH ke LOW.

Contoh sketch :
#include <OneWire.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include "RTClib.h"
#include <SPI.h>

#define RAIN_GAUGE_PIN 2
#define RAIN_GAUGE_INT 0 //INT0
int rainCounter = 0;
float rain;
long lastDebounce0 = 0;
long debounceDelay = 1000;
// Set the LCD address to 0x3f for a 16 chars and 2 line display
LiquidCrystal_I2C lcd(0x3F, 2,1,0,4,5,6,7,3, POSITIVE);
RTC_DS3231 rtc;
char dayOfTheWeek[7][12] = {"Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu"};

void setup()
{
// initialize the LCD
lcd.begin(20,4);
Serial.begin(9600);
pinMode(RAIN_GAUGE_PIN,INPUT);
digitalWrite(RAIN_GAUGE_PIN,HIGH);
attachInterrupt(0,countRain,FALLING);//INTERRUPH
return;
//(tahun, bulan, tanggal, jam, menit, detik)
//rtc.adjust(DateTime(2017, 7, 28, 22, 26, 0));
}


void countRain()
{
if((millis()-lastDebounce0)> debounceDelay)
  {
  rainCounter++;
  rain = (rainCounter*0.2); // 1pulsa berharga 0.2mm
  lastDebounce0 = millis();
  }
}


void loop()
{
  DateTime now = rtc.now();
  Serial.println(rain);
  lcd.setCursor(0, 1); //baris pertama
  lcd.print("CH : ");
  lcd.print(rain);
  lcd.print("mm");
  lcd.print(now.year(), DEC);
  lcd.print('/');
  lcd.print(now.month(), DEC);
  lcd.print('/');
  lcd.print(now.day(), DEC);
  lcd.print("<>");
  lcd.print(now.hour(), DEC);
  lcd.print(':');
  lcd.print(now.minute(), DEC);
  lcd.print(':');
  lcd.print(now.second(), DEC);
  lcd.println();

}

Saturday, October 21, 2017

BERMAIN DENGAN SERVO

Rangkai Komponen
Servo memiliki peranan yang penting sama halnya dengan motor stepper, terutama dalam mengontrol gerakan sebuah alat atau sistem yang membutuhkan gerakan memutar terbatas misalnya gerakan lengan robot, gerakan membuka dan menutup katub dan masih banyak lagi fungsi lain dari servo. Motor servo biasa digunakan dalam aplikasi-aplikasi di industri, selain itu juga digunakan dalam berbagai aplikasi lain seperti pada mobil mainan radio kontrol, robot, pesawat, dan lain sebagainya. motor servo berfungsi untuk menentukan dan memastikan posisi sudut dari poros output motor.Pada pembahasan kali ini kita akan membahas tentang servo, adapun komponen yang digunakan adalah.

1.        Arduino Uno
2.        Servo mini

3.        Kabel Jumper Secukupnya


Gambar 1.1 Rangkaian Servo 

Pada Gambar diatas merupakan rangkain servo dimana kabel kuning sebagai transfer data dimasukkan ke pin nomor 7. Kabel Hitam dan Mareh sebagai ground dan VCC, setelah komponen dirangkai maka selanjutnya copy dan paste-kan koding dibawa ini ke dalam IDE arduino kemudian verify dan upload ke dalam board arduino. adapun sketchnya atau kodingnnya adalah sebagai berikut :

Koding/Sketch:
#include <Servo.h>
 Servo myservo;  // create servo object to control a servo
                           // twelve servo objects can be created on most boards
 int pos = 0;    // variable to store the servo position

void setup()
{
  myservo.attach(7);  // attaches the servo on pin 9 to the servo object
}

void loop()
{
  for(pos = 0; pos <= 180; pos += 1) // goes from 0 degrees to 180 degrees
  {                                  // in steps of 1 degree
    myservo.write(pos);              // tell servo to go to position in variable 'pos'
    delay(15);                       // waits 15ms for the servo to reach the position
  }
  for(pos = 180; pos>=0; pos-=1)     // goes from 180 degrees to 0 degrees
  {                               
    myservo.write(pos);              // tell servo to go to position in variable 'pos'
    delay(15);                       // waits 15ms for the servo to reach the position
  }
}

lebih lengkapnya saksikan video berikut untuk lebih memahami dalam menggunakan servo dengan arduino





Thursday, May 18, 2017

MONITORING LEVEL AIR VIA SMS


Kali ini kita akan membahas tentang monitorng level air via sms, jadi monitoring level disini bisa level air sungai jangan sampai kebanjiran monitoring air diwaduk, monitoring level tank di rumah dan lain-lain tergantung kebutuhan kita, baik langsung saja namun sebelum kita memulai projek ini kita akan menyiapkan beberapa komponen dan modul yang digunakan anatara lain :

1. Arduino uno
2. SIM900 a kit 4.0
3. Kabel jumper
4. Sensor ultrasonik
5. Buzzer

Setelah kita menyiapkan semua komponen dan mikrokontrollernya langkah selanjutnya adalah menrangkainya kedalam sebuah papan rangkaian

a. Rangkaian






b. Upload sketch

Setelah proses merangkai rangkain telah dilakukan maka langkah yang paling ditunggu-tunggu yaitu membuat sketcnya (koding), tapi jangan khawatir kodingnyat ane telah siapakan, nah...kita tinggal memasukkan sketch dibawa ini kedalam IDE arduino dan diupload. adapun sketchnya sebagai berikut

#include <SoftwareSerial.h>
#define trigger 4
#define echo 5
#define buzzer 7
SoftwareSerial mySerial(2,3);
String noHP;
float time=0,distance=0;

void setup()
  {
   mySerial.begin(9600);//
   Serial.begin(9600);    // the GPRS baud rate
   noHP="082395436245";// no hp bisa di ganti
   delay(500);
   pinMode(trigger,OUTPUT);
   pinMode(echo,INPUT);

   pinMode(buzzer, OUTPUT);
   Serial.print("Level water");
   Serial.print("Indicator");
   delay(2000);
  }

void loop()
  {
   digitalWrite(trigger,LOW);
   delayMicroseconds(2);
   digitalWrite(trigger,HIGH);
   delayMicroseconds(10);
   digitalWrite(trigger,LOW);
   delayMicroseconds(2);
   time=pulseIn(echo,HIGH);
   distance=time*340/20000;
   Serial.print("Space Wall  :");
   Serial.print(distance);
   Serial.print("Cm");
   Serial.print("Level water is :");
   Serial.print("Status SMS  :");
   delay(2000);

 if(distance)
   {
    sendsms(noHP,"Air penuh");
    delay(1000);
    digitalWrite(buzzer, HIGH);
    Serial.print("water :Full");
    Serial.print("Status sms  :sending..");
    delay(2000);

   }
  }
  //Send a text message
void sendsms(String nomorHP,String pesan)
  {
   mySerial.print("AT+CMGS=");
   mySerial.write((byte)34);
   mySerial.print(nomorHP);
   mySerial.write((byte)34);
   mySerial.println();
   delay(1000);
   Serial.println();
   mySerial.print(pesan);
   mySerial.write((byte)26);
   mySerial.println();
   delay(2000);
   Serial.println("water full");
  }

Pada sketch diatas ane sengaja tidak mencantumkan jarak dalam penentuan kondisi sebab, penentuan kondisi disesuikan dengan projek masing-masing.baik demikian pembahasan projek ini kurang lebih mohon maaf...kalau ada yang kurang mohon di koreksi yoo...Terima Kasih

SEMOGA BERMANFAAT ...Sampai jumpa pada bahasan berikutnya. 


Thursday, April 20, 2017

KONFIGURASI RASPBERRY Pi MELALUI PC/Leptop

Pada artikel ini membahas tentang cara mengkoneksikan dan mengakses Raspberry Pi melalui PC/Laptop. Dengan mengakses melalui PC/Laptop berarti kita tidak perlu lagi mengkoneksikan keyboard, mouse, display HDMI atau bahkan WiFi dongle ke board Raspberry Pi. Semua tugas perangkat tadi “digantikan” dengan perangkat yang ada di PC/Laptop


Komponen yang digunakan adalah :

1. Kabel LAN/Ethernet CAT5 (saya gunakan tipe cross)
2. MicroSD card reader
3. PC/Laptop dengan port ethernet/LAN dengan OS Windows 7
4. Software PuTTY
5. Raspberry Pi yang sudah terinstall Debian Wheezy


Langka-langkah dalam Setup koneksi Raspberry ke PC/Laptop

1. Hubungkan Raspberry Pi ke port Ethernet yang ada di Laptop menggunakan kabel Ethernet dan hubungkan power Raspberry. Kemudian pada Laptop buka Control Panel\Network and Internet\Network and Sharing Center,  perhatikan bahwa akan muncul koneksi baru (biasanya dengan nama Local Area Connection). Pastikan bahwa ini ada benar koneksi dari Raspberry Pi.


2. Berikutnya periksa Properties dari Local Area Connection, klik pada Local Area Connection, klik Properties kemudian pilih Internet Protocol Version 4 (TCP/IPv4) dan klik Properties. Pilih Obtain an IP address automatically, dan Obtain DNS server address automatically, kemudian klik OK.


3. Selanjutnya pada Laptop, buka cmd dan pastikan prompt berada  pada lokasi   C://windows/system32/. Kemudian cek konfigurasi koneksi jaringan dengan mengetik perintah ipconfig. Pada tampilan yang dihasilkan cek alamat IP pada konfigurasi Local Area Connection (pada gambar dilingkari kuning). Pada contoh kali ini alamat yang dihasilkan 169.254.15.196, catat alamat ini.

4. Langkah berikutnya matikan Raspberry Pi, kemudian ambil microSD yang terpasang pada slot memory. Masukkan microSD ke card reader yang terpasang pada laptop, dan buka, anda akan melihat beberapa file sistem yang tersimpan pada microSD. Hati-hati dengan file-file ini, jangan sampai ada yang terhapus!!!

5. Berikutnya adalah memberikan alamat IP statis pada Raspberry Pi. Buka file dengan nama cmdline.txt, kemudian tambahkan pada akhir file tersebut ip=169.254.15.191. Alamat ini hanya contoh, sesuaikan dengan alamat yang anda dapatkan pada langkah 3 tadi. Alamat yang diisikan harus unik, tapi masih dalam range subnet mask. Untuk ini, anda cukup mengganti angka terakhir pada alamat IP yang ada pada Laptop. Contoh: pada laptop 169.254.15.1 anda bisa ganti 169.254.15.3.


6. Simpan file yang sudah di edit tadi. Kemudian masukkan kembali microSD ke slot Raspberry Pi dan nyalakan dan tunggu beberapa detik hingga proses booting selesai dan koneksi telah siap.

7. Untuk mengecek apakah seting koneksi berhasil, pada Laptop buka cmd kemudian ping ke alamat Rapberry Pi yang anda set tadi. Jika berhasil tampilan akan tampak seperti berikut. Pada tahap ini berarti seting koneksi Raspberry Pi ke Laptop selesai.




Akses Raspberry Pi dari Laptop dengan PuTTY

Untuk akses Raspberry Pi dari Laptop secara SSH (shell) bisa dilakukan dengan PuTTY.

1. Buka program PuTTY, pada dialog yang muncul isikan alamat IP Raspberry dengan port 22 dan Save kemudian Open.


2. Klik yes pada dialog Security Alert yang muncul, kemudian lakukan proses login seperti biasa. login: pi, password: raspberry.

3. Raspberry Pi sudah siap dieksplor.