Entuzjaści sprzętu open-source powszechnie uwielbiają aplikacje Arduino. Dziś przedstawiamy interaktywny instrument muzyczny Arduino RFID, idealny do relaksu i rozrywki. Projekt ten wykorzystuje moduły RFID i MP3 do odtwarzania określonych nut na podstawie danych zebranych przez moduł RFID, tworząc interaktywną grę muzyczną odpowiednią do rozrywki dla dzieci.W projektach elektronicznych, oprócz modułów RFID, powszechnie stosowane są również cewki indukcyjne. Używając kodu koloru induktora , możemy szybko zidentyfikować kluczowe parametry, takie jak indukcyjność i tolerancja, co ma kluczowe znaczenie dla precyzyjnego projektowania obwodów. Na przykład, jeśli planujesz w przyszłości dodać obwód filtra do projektu instrumentu muzycznego, zrozumienie kodów kolorów cewek indukcyjnych ułatwi wybór odpowiedniej cewki.
Krok 1: Demonstracja zawartości
Moduł RC522 Mini RFID RF IC do wykrywania, odczytu, zapisu i przesuwania kart, mały rozmiar, 13,56 MHz
Moduł używany w tym projekcie.
To jest schemat okablowania RFID
Krok 2: Konfiguracja sprzętu
1.Arduino Uno 1
2. moduł RFID RC522 1
3. tagi RFID 7
4. moduł DF MP3 1
5.8-omowy głośnik 1
Krok 3:
Opublikuj kilka zdjęć sprzętu, aby dać ludziom wizualne zrozumienie
Zlokalizuj kodowanie dla każdego tagu przez port szeregowy Arduino. W szczególności otwórz przykładowe pliki Arduino, przejdź do folderu RFID, otwórz plik cardread i załaduj go. Następnie zeskanuj tag RFID za pomocą czytnika RFID i sprawdź kodowanie dla każdego tagu w porcie szeregowym.
Wyświetl kodowanie tagu po zeskanowaniu tagu w porcie szeregowym
Krok 4: Schemat połączeń
Krok 5: Zaprojektuj sekcję kodu
Krok 1: Demonstracja zawartości
Moduł RC522 Mini RFID RF IC do wykrywania, odczytu, zapisu i przesuwania kart, mały rozmiar, 13,56 MHz
Moduł używany w tym projekcie.
To jest schemat okablowania RFID
Krok 2: Konfiguracja sprzętu
1.Arduino Uno 1
2. moduł RFID RC522 1
3. tagi RFID 7
4. moduł DF MP3 1
5.8-omowy głośnik 1
Krok 3:
Opublikuj kilka zdjęć sprzętu, aby dać ludziom wizualne zrozumienie
Zlokalizuj kodowanie dla każdego tagu przez port szeregowy Arduino. W szczególności otwórz przykładowe pliki Arduino, przejdź do folderu RFID, otwórz plik cardread i załaduj go. Następnie zeskanuj tag RFID za pomocą czytnika RFID i sprawdź kodowanie dla każdego tagu w porcie szeregowym.
Wyświetl kodowanie tagu po zeskanowaniu tagu w porcie szeregowym
Krok 4: Schemat połączeń
Krok 5: Zaprojektuj sekcję kodu
include <spi.h>
include <mfrc522.h>
include “Arduino.h”
include “SoftwareSerial.h”
unsigned char order[4] = {0xAA,0x06,0x00,0xB0};
define SS_PIN 10
define RST_PIN 9
MFRC522 mfrc522(SS_PIN, RST_PIN); // Create MFRC522 instance.
SoftwareSerial Serial1(7, 6); // RX, TX
//============SETUP================
void setup()
{
Serial1.begin(9600);
volume(0x1E);//Volume settings 0x00-0x1E
Serial.begin(115200); // Initiate a serial communication
SPI.begin(); // Initiate SPI bus
mfrc522.PCD_Init(); // Initiate MFRC522
Serial.println(“Approximate your card to the reader…”);
Serial.println();
}
void loop()
{
// Look for new cards
if ( ! mfrc522.PICC_IsNewCardPresent())
{
return;
}
// Select one of the cards
if ( ! mfrc522.PICC_ReadCardSerial())
{
return;
}
//Show UID on serial monitor
Serial.print(“UID tag :”);
String content= “”;
byte letter;
for (byte i = 0; i < mfrc522.uid.size; i++)
{
Serial.print(mfrc522.uid.uidByte[i] < 0x10 ? “ 0” : “ “);
Serial.print(mfrc522.uid.uidByte[i], HEX);
content.concat(String(mfrc522.uid.uidByte[i] < 0x10 ? “ 0” : “ “));
content.concat(String(mfrc522.uid.uidByte[i], HEX));
}
Serial.println();
Serial.print(“Message : “);
content.toUpperCase();
if (content.substring(1) == “69 E4 3C A3”) //change here the UID of the card/cards that you want to give access
{
Serial.println(“Authorized access”);
Serial.println();
play(0x01);//Specify playback: 0x01-file 0001
delay(1000);
}
if (content.substring(1) == “67 33 7E 7A”) //change here the UID of the card/cards that you want to give access
{
Serial.println(“Authorized access”);
Serial.println();
play(0x02);//Specify playback: 0x02-file 0002
delay(1000);
}
if (content.substring(1) == “D7 3F 7C 7B”) //change here the UID of the card/cards that you want to give access
{
Serial.println(“Authorized access”);
Serial.println();
play(0x03);//Specify playback: 0x03-file 0003
delay(1000);
}
if (content.substring(1) == “F7 E6 51 7B”) //change here the UID of the card/cards that you want to give access
{
Serial.println(“Authorized access”);
Serial.println();
play(0x04);//Specify playback: 0x04-file 0004
delay(1000);
}
if (content.substring(1) == “E7 B6 72 7B”) //change here the UID of the card/cards that you want to give access
{
Serial.println(“Authorized access”);
Serial.println();
play(0x05);//Specify playback: 0x05-file 0005
delay(1000);
}
if (content.substring(1) == “37 18 84 7B”) //change here the UID of the card/cards that you want to give access
{
Serial.println(“Authorized access”);
Serial.println();
play(0x06);//Specify playback: 0x06-file 0006
delay(1000);
}
if (content.substring(1) == “87 2E 79 7A”) //change here the UID of the card/cards that you want to give access
{
Serial.println(“Authorized access”);
Serial.println();
play(0x07);//Specify playback: 0x07-file 0007
delay(1000);
}
else {
Serial.println(“ Access denied”);
delay(1000);
}
}
//==========FUNCTION==========
void play(unsigned char Track)
{
unsigned char play[6] = {0xAA,0x07,0x02,0x00,Track,Track+0xB3};//0xB3=0xAA+0x07+0x02+0x00,that is, the last digit is the checksum
Serial1.write(play,6);
}
void volume( unsigned char vol)
{
unsigned char volume[5] = {0xAA,0x13,0x01,vol,vol+0xBE};//0xBE=0xAA+0x13+0x01,that is, the last digit is the checksum
Serial1.write(volume,5);
}
```</mfrc522.h></spi.h>