사자가 많이 살고있는 아프리카 국립공원 인근에서 소를 키우는 집의 막내인 리차드 투레레의 TED 쇼에서 그의 이야기를 들어보자. 우리는아두이노 회로와 간단한 C 코드에 LED ON/OFF 는 단순한 재미로 만들어 볼 지 몰라도 사자들과 인근에서 소를 키우며 사는 투레레 가족의 이야기에서는 야밤에 램프를 들고 순찰을 돌아 사자를 쫓으려는 힘겨운 생계형 생활을 엿볼 수 있다.

하지만 이런 단순한 순찰행동만으로 사자의 습관적인 야밤의 소사냥을 멈추게 할 수는 없었고, 드디어 그 무서운 사자들로 하여금 뭔가 두려움을 느끼게 하여 소 사냥을 멈추게 한 것은 투레레의 세심한 관찰로 부터 이끌어낸 불규칙적으로 램프를 ON/OFF 하는 과학적 발명이었다. 구체적인 내용은 다음의 유튜브 영상을 참고하자.
[TED] 사자와 화해하게 만든 나의 발명품-리차드 투레레(Richard Turere)
https://www.youtube.com/watch?v=2-ZRlxfhDmk

아두이노 마이크로 콘트롤러 보드, 솔레노이드 릴레이 및 불규칙적인 주파수 발생기가 없던 투레레는 과연 어떻게 문제를 해결했을까?. 영상을 보면 그는 라디오 부품, 오토바이 부품 및 손전등 부품들을 모아 회로를 제작했던 것으로 보인다. 이러한 현대적인 장난감들이 즐비한 우리 입장에서는 Xmas Tree 를 아룸답게 하기 위한 주기적인 점등이나 또는 불규칙적인 점등 방법을 발명하기 위해 노력했지만 투레와 같이 집안의 생계 내지는 생존이 달려 있는 일종의 불가항력적인 환경하에서 아프리카의 야생 사자와 공존할 수 있는 노벨 과학상을 부여해도 괜찮을만한 대단한 과학적인 발명을 성취하였다.
아래는 아프리카 소년 투레레가 설계한 걸출한 배선도이다. 그가 만약 본 블로그를 보고 공부한다면 머지않아 노벨상을 노릴 수 있는 세계적인 뛰어난 과학자가 될 것으로 보인다 ㅎ ㅎ ㅎ.
이미 아프리카에 태양광은 많이 보급이 되었다. LED 는 차량용이나 오토바이용 중고를 수집할 수 있을 것이다. 차량용 LED 는 단순히 DC 전압 12 V 를 쓰는것이 아니라 Transformer 를 넣어서 교류 전압으로 100V 이상으로 튀겨 점등할 것이다. 스위치는 있으나 임의의 점등 주기를 조절할 수 있는 555 주파수 발진기 칩은 보이질 않는다. 최악의 경우 집에 안전하게 숨어서 매뉴얼로 스위치를 임의로 눌러 사자를 놀래킬 수 있을 듯하다.

이런 사례를 참고로 하여 새로운 주제로서 아두이노 보드를 사용하여 불규칙적인 LED ON/OFF 코드를 발명해 보자.
이 주제는 크게 2가지인데, 하나는 LED 하나를 대상으로 ON/OFF 시간 비율을 난수(random number) 를사용하여 조절하는 것이다. 이 테크닉은 자동차 전장 회로에서 DUTY 를 활용하는 기법과 연관된다.
다른 하나는 여러개의 LED 회로에서 불규칙인 순서로 LED 를 OFF 시켜 보는 것이다. 왜냐하면 야밤에 사자가 무서워한다니까 ㅋㅋㅋ!
아두이노 우노 보드에서 LED 를 ON/OFF 하는 기본 코드는 예전에 작성했던 아래 사이트를 참조하자.
https://ejleep1.tistory.com/1270
아두이노 코드의 LED ON/OFF 알고리듬은 1초 단위로 LED 를 ON 했다가 1초 후 LED 를 OFF 하도록 되어 있다. 여기서 우리는 주기를 10초 정도로 늘리면 좋을 듯하다. 아울러 OFF 시간 범위를 몇가지 경우의 수를 주어 1초, 3초, 5초 정도면 괜찮을 것이다. 굳이 random number 를사용할 필요는 없을 듯하다. 특히 LED 겟수를 늘리고 각각 경우의 수를 2~3 으로 설정헤 주면 불규칙 효과가 충분할 것으로 본다.

과연 점등 주기 패턴을 파악하지 못하도록 랜덤하게 바꾸던지 아니면 주기를 3 가지 정도 경우의 수로 if 문 명령을 사용해 교체해 줄 경우 야간에 사자와 같은 고양이과 동물이 습격을 포기할 정도로 불안감을 줄 수 있을 것인가? 투레레는 자신이 만든 시스템을 적용하여 성공했다는 경험담을 얘기하였다.
결국 실전 문제인데 사자들을 데려 오기는 그렇고 LED 는 투레레의 램프보다 크기가 작으므로 작은 냥이들을 이용하면 좋지 않을까한다. 작은 울타리를 만들고 그 안에 냥이들이 좋아하는 간식을 넣어 두면 된다. 과연 어두운 밤에 냥이들이 간식을 먹기 위해 LED 울타리를 넘어 침입할 것인가? 각자 해보길 바란다.
별 볼일 없는 시뮬레이션 같지만 현대의 모든 AI 를 동원해도 이 실험을 해 낼 수는 없을 듯하다. 지난번 블로그에서 처럼 유명 가수의 노래를 수집하면 AI를 학습 시켜 AI Cover 를 만들어 대신 부르게 할 수 있지만 과연 사자나 고양이의 본능을 학습시켜 데이터화 하고 시뮬레리션 시켜 볼 수 있을까? 아직 우리는 인간이나 동물이 해야할수 있지만 AI 는 할 수 없는 수많은 가능성을 지니고 있음을 유의하자.
int ledPin = 9;
int tGap = 0;
void setup() {
Serial.begin(9600);
// initialize digital pin ledPin as an output.
pinMode(ledPin, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
digitalWrite(ledPin, HIGH); // turn the LED on (HIGH is the voltage level)
delay(10000); // wait for a second
digitalWrite(ledPin, LOW); // turn the LED off by making the voltage LOW
if(tGap = 0) {tGap = 1000}
if(tGap = 1000) {tGap = 3000}
if(tGap = 3000) {tGap = 5000}
if(tGap = 5000) {tGap = 1000}
delay(tGap); // wait for a second
}
'아두이노와 Processing' 카테고리의 다른 글
| 경기 꿈의 대학 세째주: 아두이노 RC카 몸체 제작 (1) | 2025.12.29 |
|---|---|
| 아두이노 RC Car 블루투스 제어 키보드 앱인벤터 앱 설치 버그 발생 (3) | 2022.11.13 |
| ESP32 또는 우노보드에서 SPS30 I2C 인터페이스 미세먼지 농도 측정 (0) | 2021.03.16 |
| esp32 아두이노 OTA(Over The Air, arduinoOTA)에 의한 DHT11온습도 측정 결과 ThinSpeak 데이터 전송 (0) | 2021.02.12 |
| esp32 아두이노 OTA(Over The Air, arduinoOTA)에 의한 LED ON/OFF (0) | 2021.02.11 |