2018년 11월 18일 일요일

ESP로 오실로스코프를 만들자 - #2 (MCP3202편)

1. ESP8266의 한계

일전의 포스트를 통하여 ESP8266의 ADC 성능이 상당히 느리다는 것을 이야기 한적이 있다. 사실상 1KHz 정도가 측정 가능하며, 10KHz정도 되면 원하는 정보를 얻을 수 없는 정도이다. 물론 동시에 3개 채널을 읽어야 하는 상황이기에 ESP8266은 아무래도 모자란 상황이었다. 이런 이유로 이미 보유하고 있던 MCP3202 칩을 사용하기로 결정하였다.  MCP3202는 2개의 채널을 가지고 있기 때문에 EPS8266의 1개 채널을 이용하면, 총 3개의 채널로 구성이 가능하다.

2. 일단은 만들어 보았지만...

계획이 섰고, 이미 각 모듈에 대한 연구는 선행하였기 때문에 바로 작업에 들어 갔다.
아래의 사진과 같이 쓱쓱 배치를 하고...
기판을 보면 보통 컨셉의 반대로 납땜하였지만, 저 기판의 뒷면에는 TFT LCD가 붙어 있는 형태 이다. 즉 TFT LCD의 핀들이 위의 사진에서 맨 아래쪽 14개 핀인 것이다. 듀얼레이어를 구성하기 위하여 저리 납땜 하였다.


그리고 배선을 열심히 해서, 아래와 같이 만들었다. (뒷면에도 많은 점퍼케이블이 지나간다.ㅠㅠ)
위의 사진에서 오른쪽 맨 아래에 위치한 것이 MCP3202이다. 18650 배터리와 ESP8266을 각각의 소켓에 꼽으면 사용 가능한 형태이다.  전류 안정화를 위해서 배치한 콘덴서는 보유한 것 중에서 손에 잡히는 아무거나 였고, 후에 용량을 보정하였다. 뭐 사실 위에 사진을 보면 알겟지만 별거 없다. 분압을 위한 6개의 저항과 다이오드3개, 콘덴서 1개, 스위치 1개가 부가적으로 사용된 소재들이고, 18650 충방전 보호모듈, MCP3202, ESP8266, TFT LCD가 전부이다.

테스트 결과가 상당히 아쉬웠다. MCP3202 2채널을 사용하는 것은 문제가 없었지만, ESP8266의 1개 채널이 상대적으로 1회 측정 속도가 너무 느렸고, 전체 성능에 많은 영향을 미쳤다.  결국 다 만들었지만 버리게 되는 상황이 되어 버렸다. (특별히 회로도나 그외의 것들을 상세히 소개 안하는 이유가 버렸기 때문이다....)


3. ESP32로...

나는 Lora 연구용으로 ESP32계열의 개발 보드를 3개 가지고 있었는데, 이것들 중 하나로  ADC를 테스트 해 보았다. ESP8266의 ADC에 대해서는 그전 부터 알고 있었기에 ESP32도 비슷하겠지라는 마음과 함께, 큰 기대를 하지않고 테스트를 진행하였는데, 결과는 경이적이었다. 이유는 ESP32의 ADC 칩이 MCP3202라는 칩과 동일한 성능을 가지면서(아마도 그 이상) 사용할 수 있는 채널이 10개가 넘기 때문이었다. (ESP32에는 2개의 ADC 칩이 존재 하며 첫번째 칩이 두번째 칩보다 5% 정도 읽기 속도가 빠르다. 내부 회로와 관련된 부분이며 5%라는 수치는 실험 결과이다)  결국 오실로스코프제작에 있어서 ESP8266을 포기하게 되었다.  실제 제작은 Lolin32라는 개발용 보드를 가지고 진행하였다. 이하 내용은 다음 포스트로 정리하겠다. 



댓글 없음:

댓글 쓰기

3단 6핀 스위치로 DC 모터의 회전 방향을 바꾸어 보자

1. 필요는 연구의 어머니 항상 느끼는 부분이다. 필요하지 않으면 연구하지 않으며, 필요하면 연구한다. DC 모터를 조건에 따라서 정방향 또는 역방향으로 회전시켜야 하는 필요가 생겼다. 처음에는 MCU 및 Relay Switch를 이용하는 방법을 생각...