반응형
자석의 N, S극을 확인하는 방법
리니어 홀 제네레이터는 자석의 가우스 값을 아날로그로 출력해준다.
단순 극 확인은 홀스위치를 사용해도 된다.
홀 IC 종류
WSH135-XPAN2
http://www.icbanq.com/P000819674/S
5V 입력시 1000 Gauss 측정 가능
A1324LUA-T
http://www.icbanq.com/P005535808/S
5V 입력시 500 Gauss 측정 가능
mV/G 값이 높을 수록 정밀함
/*
Magnet Polar Detect
Simulz
k10206@naver.com
http://Simulz.kr
*/
int LED_R = 10;
int LED_G = 11;
int Sensor = A0;
int SensorValue = 0;
int NPole = 0;
int SPole = 0;
int ZeroPin = 13;
int ZeroButtonState = 0;
int Offset = 0;
int Lean = 0;
int DeadZone = 1;
void setup() {
pinMode(ZeroPin, INPUT);
Serial.begin(9600);
}
void loop() {
SensorValue = analogRead(Sensor) - Offset;
// Offset
ZeroButtonState = digitalRead(ZeroPin);
if (ZeroButtonState == HIGH) {
Offset = 0;
for (int i = 0; i < 500; i++) {
SensorValue = analogRead(Sensor) - Offset;
Lean = SensorValue - 511;
if (Lean == 0) break;
else Offset = Lean;
delay(10);
}
}
if (SensorValue - 511 > DeadZone) {
NPole = (SensorValue - 511) / 2;
} else {
NPole = 0;
}
if (511 - SensorValue > DeadZone) {
SPole = (511 - SensorValue) / 2;
} else {
SPole = 0;
}
//Serial.print("N: ");
//Serial.println(NPole);
//Serial.print("S: ");
//Serial.println(SPole);
analogWrite(LED_R, NPole); // 0 ~ 255
analogWrite(LED_G, SPole); // 0 ~ 255
}
이날 납땜 작업
추가 작업
블루투스 데이터 전송 기능
노트북에서 수신 프로그램으로 가우스 변화를 그래프로 볼 수 있음
9V 충전지 사용
적외선 리모컨 수신기 장착 예정
리모컨으로 기능 등 환경 설정을 할 수 있음
9V 충전지
블루투스 모듈 달았음
반응형