Ручка управления сервоприводом с помощью RFID - PullRequest
1 голос
/ 21 июня 2019
#include <SPI.h>
#include <MFRC522.h>
#include <Servo.h>
Servo myservo;
int potpin = 0;
int val;
#define SS_PIN 10
#define RST_PIN 9
MFRC522 mfrc522(SS_PIN, RST_PIN);

void setup() {
    Serial.begin(115200);
    SPI.begin();
    mfrc522.PCD_Init();
    Serial.println("Arduino RFID");
    myservo.attach(3);
    myservo.write(0);
}

void loop() {

    val = analogRead(potpin);

    if (!mfrc522.PICC_IsNewCardPresent()) {
        return;
    }

    if (!mfrc522.PICC_ReadCardSerial()) {
        return;
    }

    String content= "";
    for ( byte i = 0; i < mfrc522.uid.size; i++ ) {
        content.concat(String(mfrc522.uid.uidByte, HEX));
        if( i < mfrc522.uid.size-1 ) content += "-";
    }

    content.toUpperCase();
    Serial.println();
    Serial.println("UID tag :'" + content + "'");
    Serial.print(content);

    if (content == "55-33-2C-83")
        val = map(val, 0, 1023, 0, 150);
    else if (content == "91-2B-D2-2F")
        val = map(val, 0, 1023, 0, 60);

    myservo.write(val);
    delay(15);
}

Это мой код. Я хочу, чтобы мой сервопривод поворачивался от 0 до 180 при сканировании RFID определенного тега и поворачивался от 0 до 60 при сканировании другого тега. Но проблема в том, что я хочу изменить положение сервопривода при сканировании RFID один раз. Вышеуказанная программа запускается, когда rfid сканирует тег после удаления, он не работает. Просьба помочь, предоставив некоторые коды

...