Thursday, April 25, 2019

PENGOPERASIAN MOTOR SERVO MENGGUNAKAN ARDUINO

LAPORAN 5 

PENGOPERASIAN MOTOR SERVO MENGGUNAKAN ARDUINO


        Motor servo adalah sebuah perangkat atau aktuator putar (motor) yang dirancang dengan sistem kontrol umpan balik loop tertutup (servo), sehingga dapat di set-up atau di atur untuk menentukan dan memastikan posisi sudut dari poros output motor.

pada percobaan yang pertama yaitu menggerakkan motor servo yang geraknya di atur berdasarkan derajat menggunakan arduino

RANGKAIAN 


Setelah merangkai masukkan program berikut

#include <Servo.h>
int servoPin = 3;
Servo Servo1;

void setup(){
  Servo1.attach(9);
}
void loop(){
 Servo1.write(0);
 delay(1000);
 Servo1.write(90);
 delay(1000);
 Servo1.write(180);
 delay(1000);
}

      Berdasarkan program di atas pergerakan motor servo akan bergerak dari sudut 0 derajat ke sudut 90 derajat kemudian bergerak ke sudut 180 derajat dan di ulang dari 0 derajat sampai power di cabut. Pergerakan ini diberi delay yaitu 1 detik.

Percobaan selanjutnya yaitu menambahkan arduino pada rangkaian.

RANGKAIAN 

Setelah menambahkan arduino ubahlah program di atas

#include <Servo.h>

Servo servo1;
int potpin =0;
int val;

void setup()
{
  servo1.attach(9);
  
}
void loop()
{
  val = analogRead(potpin);
  val = map(val, 0, 1023, 0, 180);
  servo1.write(val);
}

      Program pada Loop berfungsi untuk.
  1. nilaipot= analogRead(potpin); menyimpan nilai dari potensio pada variabel nilai pot
  2. nilaipot= map(nilaipot, 0, 1023, 10, 180); mengkonversi nilai potensio dari 0-1023 menjadi 10-180, ini menyesuaikan dengan jenis servo yang digunakan, yaitu hanya bisa sampai maksimal 180 derajat.
Fungsi dari potensio dari rangkaian di atas adalah untuk menggerakkan motor servo tersebut.

Percobaan selanjutnya adalah menambahkan satu motor servo dan satu potensio

RANGKAIAN 

Setelah merangkai masukkan program berikut

#include <Servo.h>
int potpin1 = 0;
int potpin2 = 1;
Servo Servo1, Servo2;
int val1;
int val2;

void setup(){
Servo1.attach(9);
  Servo2.attach(8);
}
void loop(){
val1 = analogRead(potpin1);
val2 = analogRead(potpin2);
val1 = map(val1, 0, 1023, 0, 180);
 val2 = map(val2, 0, 1023, 0, 180);
 Servo1.write(val1);
 Servo2.write(val2);
}

      Program di atas yaitu adanya penambahan program untuk servo ke 2 di fungsi loop. Programnya sama dengan satu servo kita hanya tinggal menggandakan dan memberi penomoran. Program akan berkerja yaitu jika kita menggerakkan potensio yang kiri maka motor servo yang di atas akan bergerak dan jika kita menggerakan potensio yang di kanan maka motor servo yang di bawah akan bergerak.

No comments:

Post a Comment

Kontrol LED Menggunakan NodeMCU

Pada praktikum kali ini akan dijelaskan mengenai cara mengkontrol LED menggunakan Blynk Example Browser yang dijalankan menggunakan modul ...