취미/Programming | 2019. 7. 26. 15:10 | /20
옆방 연구실에 스탠드형 에어컨이 설치되어있는데 냉각수 배수구가 없어서 수조에 받아서 물이 차면 버리면서 쓰는 중.
하지만 적절한 시기를 놓쳐서 맨날 넘친다고...
안타까워하면서 간단한 장치를 만들어주었다.
이거에 굳이 아두이노를 쓴 걸 전기공학 하는 사람이 알았다가는 뒤통수를 맞을꺼 같지만 트렌지스터로 회로 설계하기에는 귀찮았기에.
Analog input 받아다가 물 안에서 합선되고 5초 뒤에도 합선되어 있으면 경보가 울리는 방식이다.
처음 테스트 환경에서는 물 안에서 합선이 되면 0.3V가 잡히길래 200mV를 기준으로 잡고 이걸 넘으면 합선으로 봤는데
실제 환경에서 작동을 안하더라.
냉각수라고 온도가 낮으면 더 전도가 잘 되어야 하는거 아닌가?
아니면 테스트 환경은 머그컵이라 두 도선간의 거리가 짧아서 그랬나.
여튼 15mV로 기준을 잡았더니 이젠 너무 자주 울린다. RF noise가 껴서 그런듯.
5초동안 합선되게 잡았더니 문제가 없더라.
20분 정도 걸린 프로젝트라 굳이 올려도 아무도 쓸 사람이 없을듯 하지만 그냥 버리긴 아깝기에 코드와 스케메틱을 올려둔다.
boolean sensorOn;
void setup() {
pinMode(5,OUTPUT);
pinMode(LED_BUILTIN,OUTPUT);
sensorOn = false;
}
void loop() {
if(analogRead(5) > 15){ // short detected
digitalWrite(LED_BUILTIN,HIGH);
if(sensorOn){ // short detected and this was sustained for 5 sec
// alert
tone(5,800,1000);
delay(3000);
tone(5,800, 1000);
delay(3000);
sensorOn = false; // reset
}
else { // short detected but this was the first detection
sensorOn = true; // toggle on
delay(5000); // wait 5 sec and check the sensor state again
}
}
else { // reset toggle
sensorOn = false;
digitalWrite(LED_BUILTIN,LOW);
}
delay(500);
}
'취미 > Programming' 카테고리의 다른 글
Multi Layer Perceptron (MLP) (1) | 2020.05.06 |
---|---|
[GitHub] 3. GUI Git: GitHub Desktop, Sourcetree, GitKraken (0) | 2019.11.13 |
[GitHub] 2. git과 GitHub의 관계 (0) | 2019.11.12 |
[GitHub] 1. 시작하기 (0) | 2019.11.11 |
파이썬 가상 환경에서 구동 (0) | 2017.10.13 |