Untitled

 avatar
unknown
plain_text
7 days ago
2.5 kB
3
Indexable
#define BLYNK_TEMPLATE_ID "TMPL6DGgEh8ZF"
#define BLYNK_TEMPLATE_NAME "PELATIHAN BBPVP"
#define BLYNK_AUTH_TOKEN "ikKXKjXRlhdyqkep82-eXIXLJ0oOUo1G"

#include <BlynkRpcClient.h>
#include <Blynk.h>
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
#include <Servo.h>

char ssid[] = "parah";
char pass [] = "Rudisalim";
char auth[] = "ikKXKjXRlhdyqkep82-eXIXLJ0oOUo1G";

int val1;
int val2;
int val3;
int val4;
int val5;
int val6;


#define ledanjing D1
#define ledbabi D3
#define ledcacing D4
#define servoPin D4
#define pot A0

Servo myServo;
int servoAngle;
BlynkTimer Timer;


void setup() {
  // put your setup code here, to run once:
  Serial.begin(115200);
  Blynk.begin(auth, ssid, pass);
  pinMode(ledanjing, OUTPUT);
  pinMode(ledbabi, OUTPUT);
  pinMode(ledcacing, OUTPUT);
  myServo.attach(servoPin, 500, 2400); // attach ke pin servo
  myServo.write(servoAngle); // posisi awal
  Timer.setInterval(1000L, sendData);
  Blynk.virtualWrite(V9, "Motor Servo Control");
}

void sendData(){
  int potValue = analogRead(pot);
  const int conversi = map(potValue , 0, 1023, 0, 100);
  Blynk.virtualWrite(V4, conversi);
  Blynk.virtualWrite(V9, potValue);
  //Blynk.virtualWrite(V4, random(0, 100));
  //Blynk.virtualWrite(V5, random(0, 200));
}

BLYNK_WRITE(V0){
  val1 = param.asInt();
  if (val1 == 1){
    digitalWrite(D1, HIGH);
    delay(100);
  }else if(val1 == 0){
    digitalWrite(D1, LOW);
    delay(100);
  }
}

BLYNK_WRITE(V1){
  val2 = param.asInt();
  if (val2 == 1){
    digitalWrite(D3, HIGH);
    delay(100);
  }else if(val2 == 0){
    digitalWrite(D3, LOW);
    delay(100);
  }
}

BLYNK_WRITE(V2){
  val3 = param.asInt();
  if (val3 == 1){
    digitalWrite(D4, HIGH);
    delay(100);
  }else if(val3 == 0){
    digitalWrite(D4, LOW);
    delay(100);
  }
}

BLYNK_WRITE(V3){
  val4 = param.asInt();
  if (val1 == HIGH){
    analogWrite(D1, val4);
  }else{
    val4 = 0;
  }
}

BLYNK_WRITE(V6){
  val5 = param.asInt();
  
  if (val5 == 1){
    servoAngle += 10;
    if (servoAngle > 180) servoAngle = 180;
     myServo.write(servoAngle);
     Blynk.virtualWrite(V8, servoAngle);
  }
}

BLYNK_WRITE(V7){
  val6 = param.asInt();
   if (val6 == 1){
    servoAngle -= 10;
    if (servoAngle < 0) servoAngle = 0;
     myServo.write(servoAngle);
     Blynk.virtualWrite(V8, servoAngle);
  }
}


void loop() {
  // put your main code here, to run repeatedly:
  Blynk.run();
  Timer.run();

}
Editor is loading...
Leave a Comment