• Tidak ada hasil yang ditemukan

RANCANG BANGUN MECHANICAL ARM ROBOT UNTUK PEMINDAH BARANG BERDASARKAN UKURAN - POLSRI REPOSITORY

N/A
N/A
Protected

Academic year: 2024

Membagikan "RANCANG BANGUN MECHANICAL ARM ROBOT UNTUK PEMINDAH BARANG BERDASARKAN UKURAN - POLSRI REPOSITORY"

Copied!
5
0
0

Teks penuh

(1)

Koding Arduino Uno

#include <Servo.h>

#include <LiquidCrystal_I2C.h>

#include <Wire.h>

#include <Adafruit_PWMServoDriver.h>

Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver();

#define MIN_PULSE_WIDTH 544

#define MAX_PULSE_WIDTH 2400

#define DEFAULT_PULSE_WIDTH 1500

#define FREQUENCY 50

uint8_t servonum0 = 0;

uint8_t servonum1 = 2;

uint8_t servonum2 = 4;

uint8_t servonum3 = 6;

uint8_t servonum4 = 8;

Servo servo1;

Servo servo2;

LiquidCrystal_I2C lcd(0x27, 16, 2);

int trigPin = 8;

int echoPin = 9;

int trigPin2 = 10;

int echoPin2 = 11;

void setup() { delay(1000);

Serial.begin (9600);

lcd.begin();

(2)

lcd.setCursor(0,0);

lcd.print("Panjang=");

lcd.setCursor(0,1);

lcd.print("Lebar=");

pinMode(trigPin, OUTPUT);

pinMode(echoPin, INPUT);

pinMode(trigPin2, OUTPUT);

pinMode(echoPin2, INPUT);

servo1.attach(4);

servo2.attach(5);

pwm.begin();

pwm.setPWMFreq(FREQUENCY);

delay(1000);

}

void loop() { int j ;

int duration, distance;

digitalWrite (trigPin, HIGH);

delayMicroseconds (10);

digitalWrite (trigPin, LOW);

duration = pulseIn (echoPin, HIGH);

distance = (duration/2) / 29.1;

int duration2, distance2;

digitalWrite (trigPin2, HIGH);

delayMicroseconds (10);

digitalWrite (trigPin2, LOW);

duration = pulseIn (echoPin2, HIGH);

distance2 = (duration/2) / 29.1;

double a = 17;

double b = 14;

(3)

double panjang = a - distance;

double lebar = b - distance2;

double dimensi = panjang * lebar;

lcd.setCursor(8,0);

lcd.print(panjang);

lcd.setCursor(9,1);

lcd.print(lebar);

Serial.print("Panjang:");

Serial.print(panjang);

Serial.println();

delay(200);

Serial.print("Lebar:");

Serial.print(lebar);

Serial.println();

delay(200);

Serial.print("Dimensi:");

Serial.print(dimensi);

Serial.println();

delay(200);

if (dimensi >20 && dimensi <=44){

pwm.setPWM(servonum0, 0, pulseWidth(10));

delay(1000);

servo1.write(160); //Gripper buka servo2.write(42);

delay(3000);

pwm.setPWM(servonum1, 0, pulseWidth(30));

(4)

delay(2000);

servo1.write(42);

servo2.write(160);

delay(4000);

pwm.setPWM(servonum1, 0, pulseWidth(10));

delay(1000);

pwm.setPWM(servonum0, 0, pulseWidth(90));

pwm.setPWM(servonum0, 0, pulseWidth(130));

pwm.setPWM(servonum0, 0, pulseWidth(160));

delay(3000);

pwm.setPWM(servonum1, 0, pulseWidth(20));

delay(1000);

servo1.write(160); //Gripper buka servo2.write(42);

delay(4000);

pwm.setPWM(servonum1, 0, pulseWidth(0));

delay(1000);

}

if (panjang <=6 && lebar <=6){

pwm.setPWM(servonum0, 0, pulseWidth(90));

delay(3000);

}

if (dimensi >=45){

pwm.setPWM(servonum0, 0, pulseWidth(10));

delay(1000);

servo1.write(160); //Gripper buka servo2.write(42);

delay(3000);

pwm.setPWM(servonum1, 0, pulseWidth(30));

(5)

delay(2000);

servo1.write(42);

servo2.write(160);

delay(4000);

pwm.setPWM(servonum1, 0, pulseWidth(10));

delay(1000);

pwm.setPWM(servonum0, 0, pulseWidth(80));

delay(1000);

pwm.setPWM(servonum1, 0, pulseWidth(20));

delay(1000);

servo1.write(160); //Gripper buka servo2.write(42);

delay(4000);

pwm.setPWM(servonum1, 0, pulseWidth(0));

delay(1000);

} }

int pulseWidth(int angle){

int pulse_wide, analog_value;

pulse_wide = map(angle, 0, 180, MIN_PULSE_WIDTH, MAX_PULSE_WIDTH);

analog_value = int(float(pulse_wide) / 1000000 * FREQUENCY * 4096);

Serial.println(analog_value);

return analog_value;

}

Referensi

Dokumen terkait

BERBASIS MIKROKONTROLER ATmega 8535”, untuk diuji, dipertahankan dan dipertanggungjawabkan di hadapan Dewan Penguji Tugas Akhir (Skripsi) Jurusan Elektro Fakultas

Adapun judul yang diambil dalam penulisan laporan akhir ini adalah ” Rancang Bangun Perangkat Lunak Robot Pemindah Barang Dengan Aplikasi Android Berbasis Bluetooth

Alhamdulillahirabbil’alamin, Segala puji dan syukur saya ucapkan kehadiran Allah SWT atas segala nikmat-Nya, karena berkat rahmat dan karunia-Nya maka penulis

Prinsip kerja dari arus searah adalah membalik fasa tegangan dari gelombang yang mempunyai nilai positif dengan menggunakan komutator, maka dengan memberikan beda tegangan

Hasil dari uji coba yang telah dilakukan, didapat bahwa algoritma A-Star dapat digunakan dalam rancang bangun robot pemindah barang untuk mencari rute jalur

Hasil dari uji coba yang telah dilakukan, didapat bahwa algoritma A-Star dapat digunakan dalam rancang bangun robot pemindah barang untuk mencari rute jalur

Hasil dari uji coba yang telah dilakukan, didapat bahwa algoritma A-Star dapat digunakan dalam rancang bangun robot pemindah barang untuk mencari rute jalur

Metode Baru Robot Pengantar Menu Makanan Menggunakan Android dengan Kendali PID Berbasis Mikrokontroler.. Ludony, Stephanie Graciela., Melisa Mulyadi, Kumala