#include <SoftwareSerial.h>
#include <Servo.h>
#include <MD_Parola.h> // Library MD_Parola
#include <MD_MAX72xx.h> // Library MD_MAX72
#include <SPI.h> // Library SPI
SoftwareSerial module_bluetooth(0, 1); // pin RX | TX
Servo myservogarpu;
Servo myservokanan;
Servo myservokiri;
Servo myservokecepatan;
int pos = 0;
int servo_speed = 25;
char data = 0;
const int relay = 4;
const uint16_t WAIT_TIME = 1000;
//deklarasi dot matrix
#define HARDWARE_TYPE MD_MAX72XX::FC16_HW
#define MAX_DEVICES 8 // Instruksi untuk mengatur berapa banyak dotmatrix yang digunakan
#define CLK_PIN 9 // Deklarasi CLK pada pin 13 Arduino
#define CS_PIN 10 // Deklarasi CS pada pin 10 Arduino
#define DATA_PIN 11 // Deklarasi Data pada pin 11 Arduino
//deklarasiMotorDC
#define IN1 2 // deklarasi pin IN1
#define IN2 3 // deklarasi pin IN2
// Hardware SPI connection
MD_Parola Mx = MD_Parola(HARDWARE_TYPE, CS_PIN, MAX_DEVICES);
// Arbitrary output pins
// MD_Parola P = MD_Parola(HARDWARE_TYPE, DATA_PIN, CLK_PIN, CS_PIN, MAX_DEVICES);
void setup()
{
//setup relay
pinMode(relay, OUTPUT);
digitalWrite(relay, HIGH);
//setup MotorDC
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
//setupServo
myservogarpu.attach(12);
myservokanan.attach(5);
myservokiri.attach(6);
myservokecepatan.attach(7);
Serial.begin(9600);
//setup dot matrix
Mx.begin(); // instruksi untuk memulai
Mx.setIntensity(3); // instruksi untuk mengatur intensitas cahaya (0-15)
}
void loop()
{
// Mx.print("HALLO"); // instruksi untuk menampilkan karakter
// delay(5000);
// Mx.displayClear();
// Mx.print("Matrix");
// delay(5000);
// Mx.displayClear();
if(Serial.available() > 0)
{
data = Serial.read();Serial.print(data); //Pembacaan dan ditampilkan data yang masuk
Serial.print("\n");
//Data yang masuk
if(data == '1'){
myservogarpu.write(100);
}
if(data == '2'){
myservogarpu.write(0);
}
if(data == '3'){
// Motor A dan B berputar ke kanan 2000 ms (2 detik) dengan kecepatan penuh
digitalWrite(relay, HIGH);
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
delay(2000); // Jeda 2 detik
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
}
if(data == '4'){
// Motor A dan B berputar ke kiri 2000 ms (2 detik) dengan kecepatan penuh
digitalWrite(relay,LOW);
digitalWrite(IN1, LOW);
digitalWrite(IN2, HIGH);
delay(2000); // Jeda 2 detik;
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
}
if(data == '5'){
myservokecepatan.write(80);
}
if(data == '6'){
myservokecepatan.write(120);
}
if(data == '7'){
myservokanan.write(100);
myservokiri.write(0);
}
if(data == '8'){
myservokanan.write(0);
myservokiri.write(0);
}
else if (data == '9'){
myservokanan.write(0);
myservokiri.write(100);
}
}
}
#include <MD_Parola.h> // Library MD_Parola
#include <MD_MAX72xx.h> // Library MD_MAX72
#include <SPI.h> // Library SPI
SoftwareSerial module_bluetooth(0, 1); // pin RX | TX
Servo myservogarpu;
Servo myservokanan;
Servo myservokiri;
Servo myservokecepatan;
int pos = 0;
int servo_speed = 25;
char data = 0;
const int relay = 4;
const uint16_t WAIT_TIME = 1000;
//deklarasi dot matrix
#define HARDWARE_TYPE MD_MAX72XX::FC16_HW
#define MAX_DEVICES 8 // Instruksi untuk mengatur berapa banyak dotmatrix yang digunakan
#define CLK_PIN 9 // Deklarasi CLK pada pin 13 Arduino
#define CS_PIN 10 // Deklarasi CS pada pin 10 Arduino
#define DATA_PIN 11 // Deklarasi Data pada pin 11 Arduino
//deklarasiMotorDC
#define IN1 2 // deklarasi pin IN1
#define IN2 3 // deklarasi pin IN2
// Hardware SPI connection
MD_Parola Mx = MD_Parola(HARDWARE_TYPE, CS_PIN, MAX_DEVICES);
// Arbitrary output pins
// MD_Parola P = MD_Parola(HARDWARE_TYPE, DATA_PIN, CLK_PIN, CS_PIN, MAX_DEVICES);
void setup()
{
//setup relay
pinMode(relay, OUTPUT);
digitalWrite(relay, HIGH);
//setup MotorDC
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
//setupServo
myservogarpu.attach(12);
myservokanan.attach(5);
myservokiri.attach(6);
myservokecepatan.attach(7);
Serial.begin(9600);
//setup dot matrix
Mx.begin(); // instruksi untuk memulai
Mx.setIntensity(3); // instruksi untuk mengatur intensitas cahaya (0-15)
}
void loop()
{
// Mx.print("HALLO"); // instruksi untuk menampilkan karakter
// delay(5000);
// Mx.displayClear();
// Mx.print("Matrix");
// delay(5000);
// Mx.displayClear();
if(Serial.available() > 0)
{
data = Serial.read();Serial.print(data); //Pembacaan dan ditampilkan data yang masuk
Serial.print("\n");
//Data yang masuk
if(data == '1'){
myservogarpu.write(100);
}
if(data == '2'){
myservogarpu.write(0);
}
if(data == '3'){
// Motor A dan B berputar ke kanan 2000 ms (2 detik) dengan kecepatan penuh
digitalWrite(relay, HIGH);
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
delay(2000); // Jeda 2 detik
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
}
if(data == '4'){
// Motor A dan B berputar ke kiri 2000 ms (2 detik) dengan kecepatan penuh
digitalWrite(relay,LOW);
digitalWrite(IN1, LOW);
digitalWrite(IN2, HIGH);
delay(2000); // Jeda 2 detik;
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
}
if(data == '5'){
myservokecepatan.write(80);
}
if(data == '6'){
myservokecepatan.write(120);
}
if(data == '7'){
myservokanan.write(100);
myservokiri.write(0);
}
if(data == '8'){
myservokanan.write(0);
myservokiri.write(0);
}
else if (data == '9'){
myservokanan.write(0);
myservokiri.write(100);
}
}
}