본문 바로가기

트렌드 한눈에 보기/학계 트렌드

I2C Extender를 활용한 아두이노 OLED 제어

 에어컨 리모컨을 잘 봐보자. 에어컨에서 보내는 온도, 습도 등 데이터를 몇 m 떨어진 리모컨에서 잘 받아준다. 그리고 리모컨에서 "온도를 몇 도 낮춰줘" 하는 귀찮은 일을 시켜도 에어컨은 바로 바로 대답도 잘 해준다. 예전에는 "으응 그렇네" 하고 넘어갔지만, 이제는 다르다. 생각보다 대단한 녀석이었다. 


 리모컨에서 에어컨으로 온도 제어 명령을 내리는 경우를 생각해보자. 몇 m 떨어진 거리에서는 통신이 끊길 이유가 너무나도 많다. 단순히 거리에 의한 노이즈 증가 이외에도, 통신 자체적으로 가지는 노이즈가 다수 포함되어 있다.

 

거리전기 리모컨

 그렇기에, 리모컨에서 통신이 끊기는 경우는 단순히 "명령이 잘 전달되지 않았습니다" 하는 것으로 끝나지 않을 수 있다. "온도를 100도 올려줘" 같은 익스트림한 명령으로 전달할 수 있는 것이다. 

 

 상업용으로 쓰이는 센서들과 통신 모듈들은 퀄리티가 상당히 발전하여 그런 걱정들을 하면서 에어컨을 쓸 필요는 없다. 하지만 제품을 개발하는 단계에서는 충분히 할 법한 고민들이다. 특히나 아두이노처럼 간단한 모듈들을 사용할 경우에는 더더욱. "아두이노 그렇게 조그마한데, 인간의 두뇌보다 계산 속도는 비교도 안되게 빠르대!" 하는 호들갑을 떨던 적도 있지만, 아두이노는 아두이노일 뿐이다. 절대 믿으면 안된다.


 

 아두이노 I2C 으로 고통받기를 수차례 반복하다가, 어제 아침에 결국 I2C Extender를 활용해서 5m 이상의 배선으로 센서값을 디스플레이로 전송하는 업무를 성공했다. 에어컨은 무선으로도 잘 통신하는데 이렇게 호들갑 떨 일인가 싶기도 하지만, 그래도 기분 좋은 일이다. 나도 놀랐다. 아침에 연구실에 도착하여 살짝 만져봤더니 실패하길래, 음 안되는 건가 하고 살짝 고쳐봤더니 잘 작동해버리는게 아니겠는가. 

 

 두 가지 이슈가 있었다. 첫 번째는 아두이노 내 void setup() 함수 안에서 디스플레이를 오래 제어하면 에러가 생긴다는 것이었다. void loop 함수에서는 디스플레이를 썼다가 지우는 과정을 반복하는데(형광등이 깜박이는 것과 비슷하다), 그렇게 제어해야 에러가 생기지 않는 것 같다. 

 

 두 번째는 I2C Extender - Display - Arduino 간 Ground가 공유되어야 하는 것이다. I2C Extender의 원리는 사실, 단거리에 적합한 SCL/SDA 형식 데이터를 장거리 통신에 적합한 데이터로 변환한 뒤에, 다시금 SCL/SDA로 바꿔주는 것이기에 테스트 결과 아두이노간 통신에서는 Ground를 공유해줄 필요가 없었다. 하지만 Display는 또 그런 작업이 필요했다.


손 납땜의 결과

 이제 필요 기능이 모두 구비가 되었으니, 위 사진처럼 일일이 납땜해줬던 보드를 (관련 글) PCB 보드로 진화시켜줘야 한다. 이건 바로바로 디버깅을 할 수 없는 영역인지라(외주업체를 통해야 한다) 한 번에 실패없이 보드를 설계하는 것이 중요한데, 내가 한번에 뭔가를 이뤄낸다는 것이 잘 상상되지 않는다. 

 

 보드까지 만들어놓고 "아 잘못 만들었네" 하는 말 따위 나오지 않게끔 설계를 잘 해봐야겠다.

 


추가 관련글

1) 거리전기 에어컨 관련

 

중국 제조업의 흐름을 살펴볼 수 있는 곳: 거리전기

샤오미가 처음으로 "대륙의 실수"라는 타이틀로 유명해졌던 계기는 보조배터리였던 것으로 기억된다. 사실 파나소닉 18650 전지 몇 개에 플라스틱 케이스, 5핀 단자가 전부인 자그마한 기기가 실

mech-literacy.tistory.com

2) I2C 통신

 

아두이노 통신 고군분투의 기록 - UART vs I2C

 지난 글들에서도 써 왔지만, 아두이노 통신은 참 믿을 만한 것이 못된다. UART는 불안정하고, I2C는 통신이란 말이 무색할 정도로 거리가 짧다. 그렇기에 두 개의 아두이노를 사용하면서 통신이

mech-literacy.tistory.com

3) 납땜 보드

 

아무 생각없이 작업할 수 있는 종목들 - 코딩, 정비 등등

 유튜브에는 "코딩할 때 듣기 좋은 노래" 혹은 "lofi hip hop radio - beats to relax/study to" 등등의 제목을 가진 노래 플레이리스트가 있다. 엘리베이터 뮤직이라고도 부를 수 있는 이런 장르는, 흘러나오

mech-literacy.tistory.com