무선 통신하면 Wi-Fi, BLE, LoRa 등 무선파(RF)를 떠올리지만, 자기장(마그네틱 필드)을 매질로 데이터 전송하는 독특한 프로젝트입니다. 아두이노가 릴레이로 전자석을 ON/OFF(1/0) 제어 → 자기장 변화 → 인피니언 3D 자기 센서가 X/Y/Z축 자기장 강도 감지 → 데이터 수신. 라디오파 없는 환경이나 특수 용도에 응용 가능합니다.
1단계: 아두이노 배선 (송신부)
릴레이 입력 핀 → 아두이노 디지털 핀 12
전자석 + 전원 → 릴레이 상시 개방(NO) 단자
전자석 - → 전원 그라운드
2단계: 아두이노 송신 펌웨어 업로드
int incomingByte = 0;
int data = 0;
void setup() {
Serial.begin(9600);
pinMode(12, OUTPUT);
Serial.println("Starting...");
Serial.println("Send a string of binary digits (0/1)");
}
void loop() {
if (Serial.available() > 0) {
incomingByte = Serial.read();
data = 1;
if (incomingByte == '0') { // ASCII 48
digitalWrite(12, LOW); // 전자석 OFF
Serial.print("0");
delay(100);
} else if (incomingByte == '1') { // ASCII 49
digitalWrite(12, HIGH); // 전자석 ON
Serial.print("1");
delay(100);
} else {
Serial.print("?");
}
} else {
if (data == 1) {
digitalWrite(12, LOW); // 전송 끝나면 OFF
Serial.println();
data = 0;
}
}
}
업로드 후 시리얼 모니터에서 "101010" 같은 문자열 보내면 릴레이 클릭 소리와 함께 전자석이 켜졌다 꺼집니다.