#define LED_PIN 13
#include <SoftwareSerial.h>
#include <Servo.h> // Servo PIN 6 Digital
Servo servo1;
int PinTimbangan = A0; // Pin Sensor Timbangan di A0
int NilaiTimbangan = 0; // Nilai Awal Timbangan
SoftwareSerial RFID(2, 3);
String Teks;
String TeksCek;
char c;
void setup()
{
Serial.begin(9600);
RFID.begin(9600);
Serial.println("Mulai");
servo1.attach(6); // Pin Servo di Digital 6
servo1.writeMicroseconds(1500);
tutuppalang1();
pinMode(LED_PIN, OUTPUT); //Sets LED pin as output
digitalWrite(LED_PIN, LOW); //Turn off LED
}
void loop()
{
NilaiTimbangan = analogRead(PinTimbangan);
while(RFID.available()>0){
delay(5);
digitalWrite(LED_PIN, HIGH); //Turn on LED
c=RFID.read();
Teks += c;
}
if(Teks.length()>10) Cek();
Teks="";
}
void Cek()
{
Teks=Teks.substring(1,11);
if (TeksCek != Teks) {
NilaiTimbangan = analogRead(PinTimbangan);
Serial.print("Tag:");
Serial.print(Teks);
Serial.print("Timbangan:");
Serial.println(NilaiTimbangan);
digitalWrite(LED_PIN, LOW); //Turn off LED
TeksCek = Teks;
bukapalang1();
}
}
void bukapalang1()
{
servo1.write(90); // Turn Servo Left to 45 degrees
delay(3000);
tutuppalang1();
}
void tutuppalang1()
{
servo1.write(180); // Turn Servo Left to 45 degrees
delay(1000);
}
Comments