Rabu, 17 Maret 2021

Cara Program Esp8266 dengan Arduino

 Hai Sobat Arduino Indonesia,

Ada beberapa cara untuk memprogram ESP8266. Bisa menggunakan Arduino IDE atau MicroPython. Akan tetapi yang paling sering kami lakukan adalah dengan menggunakan Arduino IDE.  Adapun langkah-langkah sebelum programming adalah sebagai berikut :

  1. Sebelum memulai prosedur instalasi ini, pastikan di komputer sudah ada software arduino dengan versi baru dari Arduino IDE.
  2. Install ESP8266 Board di Arduino IDE (Windows, Mac OS X, Linux), Software Arduino yang baru terinstall pastinya belum ada board EPS8266, langkah pertama yang dilakukan adalah menambah board ESP8266 di Software Arduino.
  1. Untuk menginstal board ESP8266 di Arduino IDE Anda, ikuti instruksi berikut ini :
  • Di Software Arduino IDE Anda, buka File> Preferences

  • Masukkan http://arduino.esp8266.com/stable/package_esp8266com_index.json ke dalam bidang “Additional Boards Manager URLs” seperti yang ditunjukkan pada gambar di bawah ini. Kemudian, klik tombol “OK”:

  • Catatan: jika Anda sudah memiliki URL papan ESP32, Anda dapat memisahkan URL dengan koma sebagai berikut:

https://dl.espressif.com/dl/package_esp32_index.json, http://arduino.esp8266.com/stable/package_esp8266com_index.json

 

  • Masuk ke Boards Manager. Klik menu Tools > Board > Boards Manager…

  • Cari ESP8266 dan tekan tombol install untuk “ESP8266 by ESP8266 Community version x.x.x “:
  • Nah arduino akan mellakukan proses install board setelah beberapa detik.

Setelah terinstall kita bisa melakukan uji Instalasi

Untuk menguji instalasi add-on ESP8266, mari kita lihat apakah kita dapat berkedip LED dengan ESP8266 menggunakan bahasa pemrograman Arduino

Selasa, 16 Maret 2021

Bot Telegram untuk Project IOT

 Hallo Sobat Arduino Indonesia, 

Telegram Bot /  Bot Telegram merupakan fitur yang di miliki oleh telegram untuk bermain-main dengan IOT (*pada project ini). Nah pada tutorial ini, kami akan share bagaimana cara menggunakan bot telegram ini disambungkan dengan ESP8266.

Oke bahan bahan yang di butuhkan adalah sebagi berikut

  1. Nodemcu8266
  2. kabel microusb

Sebelum melakukan pemrograman, aktifkan dulu Telegram Bot dengan cara sebagai berikut :

AKTIFKAN BotFather

  • Buka Aplikasi Telegram dan search BotFather

 

  • Kemudian klik BotFather, klik START. Lalu ketik /newbot , 
 
  • Selanjutnya akan diminta memberikan nama bot, Jika sudah makan akan muncul Token, *untuk penamaan bot harus ada kata kata bot di belakang penamaan

 Ketahui ID Telegram yang sudah di install

  • Buka aplikasi Telegram, cari idbot
  • klik, kemudian klik start
  •  kemudian ketik /getid, maka akan muncul id telegram

Oke bot sudah di buat dengan nama yang ditulis tadi dan id juga sudah di dapat, sekarang masuk ke bot yang sudah di buat dan klik start


 Tahap selanjutnya adalah program ke arduino, sebelumnya siapkan 2 library berikut ini :

  1. Library CTBot
  2. Library ArduinoJson
Program seperti di bawah ini
 

#include "CTBot.h"
CTBot myBot;
String ssid = "gatinamassid"; //wajib diganti dengan ssidwifinya
String pass = "gantipaswifi"; //wajib diganti dengan password wifinya
String token = "gantitokenbotfather"; //wajib diganti dengan botfather token
const int id = gantidenganidbot; //wajib diganti dengan idbotnya

void setup() {
  Serial.begin(9600);
  Serial.println("Starting TelegramBot...");
  myBot.wifiConnect(ssid, pass);
  myBot.setTelegramToken(token);

  if (myBot.testConnection()) {
    Serial.println("Koneksi normal");
  } else {
    Serial.println("ada kesalahan koneksi");
  }

  myBot.sendMessage(id, "Tes IG");
  Serial.println("Pesan Sudah Terkirim");
}

void loop() {

}

 

Upload dan lihat di bot yang sudah di buat di telegram



Senin, 21 September 2020

Membuat Hand Sanitizer Otomatis dengan Arduino

 Hallo sobat Arduino Indonesia, pada tutorial seri belajar arduino ini, kami akan membuat alat hand sanitizer dengan menggunakan Arduino.


Untuk yang belum tau seperti bagaimana bisa di lihat di channel youtube di bawah ini

 
Adapun bahan bahan yang di butuhkan adalah sebagai berikut :
 
  1. Arduino Nano dan shield
  2. Sensor Ultrasonic
  3. Servo
  4. Part 3D 

Untuk skema rangkaian adalah seperti berikut :


Sedangkan untuk programming adalah seperti berikut :

 

/*
 * Sekolah Robot Indonesia
 * echo = pin 3
 * trig = pin 4
 * servo =pin 5
*/

#include  <Servo.h>
Servo myservo;

int echoPin = 3;
int trigPin = 4;
int servoPin = 5;

int servostandby = 100;
int servoaktif = 50;
int jarak = 9;


void setup() {
  Serial.begin(9600);
  myservo.attach(servoPin);
  myservo.write(servostandby);
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
 
}

void loop(){
  digitalWrite(trigPin, LOW);
  digitalWrite(echoPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);
 
  unsigned long duration = pulseIn(echoPin, HIGH);
  float jarakukur = duration / 29.0 / 2.0;
  Serial.println(jarakukur);
 
   if (jarakukur <= jarak){
      myservo.write(servoaktif);
      delay(400);
      myservo.write(servostandby);
      delay(800);
    }
}
Oke selamat mencoba, Salam Arduino Indonesia

Senin, 07 September 2020

Membuat Alat Pewaktu untuk cuci tangan dengan menggunakan Arduino dan Servo


Hallo sobat Arduino Indonesia, pada kesempatan kali ini , kami akan berbagi tutorial bagaimana membuat alat pewaktu cuci tangan selama 20 detik dengan menggunakan servo sebagai indikatornya.

Alat ini bekerja jika tangan kita berada di dekat ultrasonic dengan jarak kurang dari 10 cm, maka servo akan bekerja counting selama 20 detik.


Bahan yang di butuhkan

• Arduino Uno
• Sensor ultrasonic (untuk kali ini saya menggunakan SRF05)
• Mini Servo
• Projectboard
• Kabel Jumper

Adapun skema rangkaiannya sebagai berikut 


 

Untuk programmingnya adalah sebagai beriku, sebelumnya jangan lupa di masukkan library NewPing terlebih dahulu, baru di program.

#include<NewPing.h>
#include<Servo.h>

#define pinservo 7
#define trig 8
#define echo 9
#define maksimal 200

NewPing sonar(trig,echo,maksimal);
Servo myServo;

void setup() {
  Serial.begin(9600);
  myServo.attach(pinservo);
  myServo.write(180);
  delay(700);
  myServo.write(0);
  delay(700);
  myServo.write(180);
  delay(700);
 

}

void loop() {
  Serial.println(sonar.ping_cm());
  if(sonar.ping_cm()<10 && sonar.ping_cm()>0)
  {
    myServo.write(180);
    servohitung();
  }
  else
  {
    myServo.write(0);
  }

}

void servohitung() {
  Serial.println("Hitung Mundur");
  int setengahdetik = 40;

  for (int i = setengahdetik; i >= 0; i--) {

    myServo.write((int)(i * 4.5));
    delay(500);
  }



  delay(700);

}
Oke, selamat mencoba dan salam Arduino Indonesia

Minggu, 21 Juni 2020

Topi Pintar Cegah covid-19


Hallo Sobat Arduino Indonesia, di video diatas adalah merupakan salah satu inovasi yang mungkin bisa di aplikasikan pada kondisi saat ini yaitu pandemi covid 19, walaupun sekarang sudah masuk ke new normal, akan tetapi pencegahan virus covid 19 harus tetap dari sendiri, kita tau bahwa penularan covid 19 bisa terjadi lewat mukosa atau lewat hidung mata dan mulut. Kita sendiri paling sering menyentuh ke tiga bagian tubuh tersebut.

Maka dari itu kami membuat inovasi untuk peringatan dini ketika akan menyentuh mulut hidung dan mata.

Bahan yang di butuhkan antara lain,
-    Arduino nano
-    Sensor ultrasonic hcsr04
-    Buzzer
-    Potensiometer
-    Batere 9v dan konektor baterenya

Arduino nano disini debagai otak dari alat ini, kemudian sensor ultrasonic untuk mendeteksi jarak tertentu, buzzer sebagai bunyi peringatan dan potensiometer sebagai pengatur jarak tertentu.

Tentukan pin pin yang akan di pakai untuk alat ini


  • sensor ultrasonic, sensor ultrasonic mempunyai 4 pin, yaitu vcc, ground, trigger dan echo. Untuk trigger kami menyambungkan dengan pin 6, Echo disambung ke pin 7.
  • buzzer mempunyai 2 pin yaitu pin positif dan pin negatif, untuk positif sambung ke pin 5 dan negatif sambung ke gnd
  • potensiometer, karena kami menyambungkan dengan pin Analog 1.
Nah setelah ditentukan, mari kita wiring ke board (pcb lobang-lobang) atau ke pcb yang sudah di desain sendir.

Berikut untuk pemrograman
 yang perlu dilakukan sebelumnya adalah upload library new ping


#include <NewPing.h>
#define buzzer 5
#define setting A1

#define TRIGGER_PIN  6 
#define ECHO_PIN     7 
#define MAX_DISTANCE 200

NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE);

void setup() {
Serial.begin(9600);
pinMode(buzzer,OUTPUT);
}

void loop() {
  int bacasetting = analogRead(setting); 
  int jarak = map(bacasetting, 0, 1023, 0, 20);
  Serial.print(bacasetting);
  Serial.print("  |  ");
  Serial.print(jarak);
  Serial.print("  |  ");
  Serial.println(sonar.ping_cm());


  if(sonar.ping_cm()<jarak) //&& (sonar.ping_cm()>0) )
  {
    digitalWrite(buzzer,HIGH);
  }
  else
  {
    digitalWrite(buzzer,LOW);
  }
}

Link Youtube : https://youtu.be/LOTyIz5Bd7A

Selamat Mecoba, Salam Arduino Indonesia

Minggu, 24 Mei 2020

Membuat Scroll Text / Running Text / Tulisan berjalan dengan arduino dan display TFT 1.8"

Hallo Sobat Arduino Indonesia, Pada kali ini kami akan berbagai tutorial untuk membuat Scroll text atau running text atau tulisan berjalan pada TFT LCD 1.8" dengan menggunakan arduino Uno

TFT LCD (Thin film transistor liquid crystal display) adalah varian dari Liquid Crystal Display (LCD) yang menggunakan Transistor Film Tipis (TFT) teknologi untuk meningkatkan kualitas gambar seperti addressability dan kontras. TFT LCD matriks aktif LCD, berbeda dengan matriks pasif LCD atau sederhana, tampil dengan LCD dalam beberapa segmen. TFT LCD digunakan dalam peralatan termasuk televisi, monitor komputer, ponsel, video game portabel, PDA/Tablet, sistem navigasi dan proyektor.



Adapun bahan yang dibutuhkan adalah sebagai berikut :
  1. Arduino Uno
  2. TFT 1.8"
  3. Kabel Jumper male to male
  4. Projectboard
Library yang di butuhkan dalam pemrograman ini
  1.  Adafruit_GFX
  2. Adafruit_ST7735
Untuk wiring adalah sebagai berikut


Coding untuk scroll text / tulisan berjalan / running text sebagai berikut :


#include <Adafruit_GFX.h>  // Include core graphics library
#include <Adafruit_ST7735.h>  // Include Adafruit_ST7735 library to drive the display
#include <fonts/FreeSans9pt7b.h>
#include <fonts/FreeSans12pt7b.h>
#include <fonts/FreeSans18pt7b.h>
#include <fonts/FreeSans24pt7b.h>


// Declare pins for the display:
#define TFT_CS     10
#define TFT_RST    8  // You can also connect this to the Arduino reset in which case, set this #define pin to -1!
#define TFT_DC     9
// The rest of the pins are pre-selected as the default hardware SPI for Arduino Uno (SCK = 13 and SDA = 11)


// Create display:
Adafruit_ST7735 tft = Adafruit_ST7735(TFT_CS, TFT_DC, TFT_RST);

#define BLACK   0x0000
#define BLUE    0x001F
#define RED     0xF800
#define GREEN   0x07E0
#define CYAN    0x07FF
#define MAGENTA 0xF81F
#define YELLOW  0xFFE0
#define WHITE   0xFFFF


#include <Fonts/FreeSerif18pt7b.h>  // Add a custom font





int Variable1;  // Create a variable to have something dynamic to show on the display






void setup()  // Start of setup
{

  // Display setup:

  // Use this initializer if you're using a 1.8" TFT
  tft.initR(INITR_BLACKTAB);  // Initialize a ST7735S chip, black tab

  tft.fillScreen(ST7735_BLACK);  // Fill screen with black

  //tft.setRotation(0);  // Set orientation of the display. Values are from 0 to 3. If not declared, orientation would be 0,
                         // which is portrait mode.

  tft.setTextWrap(false);  // By default, long lines of text are set to automatically “wrap” back to the leftmost column.
                           // To override this behavior (so text will run off the right side of the display - useful for
                           // scrolling marquee effects), use setTextWrap(false). The normal wrapping behavior is restored
                           // with setTextWrap(true).

  tft.setTextColor(ST7735_WHITE);  // White on black
  tft.setTextSize(5);  // large letters
  tft.setRotation(1); // horizontal display
  //tft.println("Hello");

}  // End of setup




void scrolltext(int x, int y, const char *s, uint8_t dw = 1, const GFXfont *f = NULL, int sz = 1)
{
    int16_t x1, y1, wid = tft.width(), inview = 1;
    uint16_t w, h;
    tft.setFont(f);
    tft.setTextColor(YELLOW, BLACK);
    tft.setTextSize(sz);
    tft.setTextWrap(false);
    tft.getTextBounds((char*)s, x, y, &x1, &y1, &w, &h);
    //    w = strlen(s) * 6 * sz;

    for (int steps = wid + w; steps >= 0; steps -= dw) {
        x = steps - w;
        if (f != NULL) {
            inview = wid - x;
            if (inview > wid) inview = wid;
            if (inview > w) inview = w;
            tft.fillRect(x > 0 ? x : 0, y1, inview + dw, h, BLACK);
        }
        x -= dw;
        tft.setCursor(x, y);
        tft.print(s);
        if (f == NULL) tft.print("  "); //rubout trailing chars
        delay(5);
    }
}


void loop()
{
  
    scrolltext(0, 30, "Sekolah Robot Indonesia Mengucapkan Selamat Hari Raya Idul Fitri 1441 H , Mohon Maaf Lahir Dan Batin", 8, NULL, 6);
  
}

Senin, 20 April 2020

Membuat Sensor untuk Bilik disinfektan dengan Arduino

Halo sobat arduino, Pada kali ini kami akan berbagi tentang bagaimana membuat sensor untuk bilik disinfektan dengan menggunakan Arduino dan sensor IR.

Masih penasaran dengan cara kerja sensor ini, silahkan lihat video berikut ini terlebih dahulu


Adapun bahan yang di butuhkan adalah sebagai berikut :
  1. Arduino Nano / Promini
  2. Sensor IR E18 D-80
  3. Relay 1 channel modul
Rangkailah seperti dibawah ini

Untuk Programmingnya bisa di lihat di deskripsi dari video sebelumnya di channel ini.


Selamat mencoba, Salam Arduino Indonesia