아이디어 구체화/IOT 원격 스위치

ESP3D 구동 해 보기

맏리믓 2021. 12. 27. 22:25

개요

- ESP01 칩

 - IOT 기술을 이용 하여 3D 프린터를 제어 하기 위한 칩입니다.

 - 회로구성

 - GPIO 0 과 2 번 핀으로 신호 를 주거나 받을 수 있습니다.

- ESP3D 펌웨어

 - WIFI를 통해서 3D프린터를 원격해서 제어 할 수 있는 펌웨어입니다.

 - 다운로드 사이트

https://github.com/luc-github/ESP3D

 

GitHub - luc-github/ESP3D: FW for ESP8266/ESP8285/ESP32 used with 3D printer

FW for ESP8266/ESP8285/ESP32 used with 3D printer. Contribute to luc-github/ESP3D development by creating an account on GitHub.

github.com

 - 원거리에 있는 3D 프린터를 PC 로 접속하여 제어할수 있는 화면을 제공해 줍니다.

(이 프로그램을 사용하지 않을 경우 3D 프린터에 달려 있는 로터리엔코더로 수동으로 제어 해야 합니다.)

- VS code

 - MS 에서 만든 개발환경 입니다.

 - 아두이노 업로드 와 코드 편집 등을 간편하게 할 수 있습니다.

 - 업로드와 디버깅에 필요한 추가모듈을 VS code 가 자동으로 다운로드 해 줍니다.

 - 개발 범위성 이 넓다는 장점이 있습니다.

- Arduino IDE

 - 코드를 실행 했을때 실행 로그를 볼때 이용 합니다.

 - VS code 와 다르게 필요한 추가 모듈을 수동으로 다운로드 해야한다는 불편함이 있습니다.

구동 해보기

※ VS code 와 Arduino IDE 는 사용 할 수 있다고 가정

- USB 포트에 연결하기

 - 칩과 칩을 컴퓨터로 연결 해주는 젠더를 구비 해야 합니다.

 * 위 장치가 없을시 아래와 같이 아두이노 쉴드와 같은 브릿지를 만들어 사용 해야 합니다.

 - USB 젠더 뒤를 납땜 하여 실행 모드와 업로드 모드를 구분할 수 있게 합니다

((납땜 된 사진))

 * 젠더 사용시 위 작업을 해주지 않으면 항상 실행 모드로 작동 하여 프로그램을 업로드 할수 없습니다.

- ESP3D 업로드

https://github.com/luc-github/ESP3D

 - 위 다운로드 사이트에서 펌웨어를 다운로드 합니다.

 - 해당 펌웨어는 원래 ESP8266 에서 돌리기 위한 프로그램이므로 ESP01 에 올리기 위해선 추가적인 작업을 해 주어야   합니다.

 -우선 위에서 받은 ESP3D를 VS code 의 작업 환경에 올립니다.

((작업 환경 사진))

 - 그중 PlatformIO.ini 파일을 열어 줍니다.

 - Boards — PlatformIO latest documentation 안에 "Espressif 8266"챕터 안에 있는 'ESP-01 512k' 에 적힌 보드의 기본 정보로 코드를 수정 해 줍니다.

 (board ID, CPU frequency, flash frequency등)

 - SPIFFS 를 512k 로 수정 해 줍니다.

 (기존 모듈에서는 펌웨어가 올라가는 메모리와 웹서버 기능을 하는 메모리가 분리 되어 있었지만 01 모듈에선 1MB 의   플레시 메모리중 일부를 웹서버용으로 할당 하기 때문에 이를 수동으로 나누어 주어야 합니다.)

((사진 첨부))

 - upload_resetmethod 옵션을 수정해 줍니다.

  (해당 옵션은 ESP12e와 같이 USB 포트를 사용 할 수 있는 모듈일 경우에만 사용 가능 하기 떄문에 수정 해 줍니다.)

 - USB 젠더를 다운로드 모드로 변경 한 후 수정한 파일을 VS code를 이용해 ESP01 칩에 업로드 해 줍니다. 

  (실행 터미널화면)

- ESP3D 실행

 - USB 젠더를 실행모드로 바꾼 후 컴퓨터의 USB 포트에 꽂고 칩을 젠더에 꽂아 전력을 공급 하면 자동으로 부팅 됩니   다.

  (실행 모드로 바꾸지 않고 다운로드 모드로 부팅 시킬 경우 비어있는 파일이 업로드 되어 기존에 업로드 한게 없어지니 주의 하시기 바랍니다.)

 - 실행후 노트북이나 핸드폰을 이용해 와이파이를 검색해서 ESP3D라는 네트워크에 연결 해 줍니다.

  (실행 로그를 보시고 싶으시면 Arduino IDE 의 시리얼 모니터를 통해 확인 할 수 있습니다)

  (비밀번호12345678), (핸드폰으로 접속시 이후 기본 작업 환경을 갖추기 위한 파일 업로드를 진행하기 어렵습니다.)

 - 그후 "192.168.0.1"주소(위 화면 가장 아래에 표)로 접속 하면 웹서버 파일을 업로드 하지 않았기 때문에 'index.html'파일이 비어 있다는

  메세지가 뜹니다.

 - 웹페이지의 파일 선택 버튼을 눌러 ESP3D 를 다운 받았던 파일로 가서 'esp3d 하위폴더 data'안의 3 파일을 업로드    해 줍니다.

- ESP3D 초기 설정

(이후 웹 서버로 활용 하기 위해서 SSID 와 와이파이 설정 등을 해 주어야 합니다.)

 - data 파일을 업로드 하면 다른 웹 사이트(index.html.gz)로 이동 하게 됩니다.

 - 해당 UI 를 따라가고 마지막에 SSID 를 설정 해 줍니다

  (이로써 다음 부터는 네트워크로 바로 웹사이트에 진입 할 수 있습니다.)

 - 그 후 data 안에 있는 3가지 파일을 업로드 해 줍니다.

 - 이후 다시 실행 해 보면 아래와 같이 3D 프린터를 원격해서 관리 할 수 있는 웹페이지가 나오게 됩니다.