주의: 저는 여전히 동작 기능을 보여주어야 합니다!
유니버설 무선 CNC 펜던트!
이 휴대용 컨트롤러는 기계의 Klipper 웹 인터페이스의 전용, 실시간 물리적 확장 역할을 합니다.
특징들:
-
실시간 위치 미러링:자동으로 당신의 기계의 정확한 X, Y, Z 위치를 매초마다 여러 번 조사하고 미러링 합니다.
-
대화식 웹 구성 포털:깨끗한 Web UI를 갖춘 내장된 캡티브 네트워크 포털이 제공됩니다. WiFi 네트워크는 스마트폰이나 개인용 컴퓨터에서 직접 관리할 수 있습니다.
-
감각적인 메뉴 네비게이션:부드러운 가속 로직을 갖춘 증분식 회전 인코더를 통한 반응형 메뉴 브라우징.
-
전용 비상 오버라이드:중요한 기계 기능에 직접 매핑된 물리적인 터치 버튼들:집 (G28),일시 중지,자리안서그리고,E-Stop (비상 정지 / M112).
-
선명한 OLED 디스플레이:U8g2 라이브러리를 사용한 깨끗하고 최적화된 레이아웃은 작업장 조명 조건에서 고대비 보기를 제공합니다.
-
두 개의 C 타입 커넥터:만일 무언가를 수정하고 싶다면 첫 번째 쪽은 ESP32를 위한 것이고, 하단 쪽은 충전을 위한 것입니다.
그것이 어떻게 작동하는지
-
스마트 네트워크 온보딩:첫 번째 부팅 시, WiFi가 구성되어 있지 않은 경우, ESP32는 자체 보안 접근 포인트를 호스트합니다. 단순히 스마트폰으로 연결하면, 세련된 다크 테마의 구성 페이지가 자동으로 나타납니다.
-
적응형 커뮤니케이션 엔진:이 펜던트는 포트 7125에서 Moonraker API와 직접 통신하며, 최적화된 JSON 객체 폴링 메커니즘을 사용하여 좌표 상태(gcode_move, toolhead)를 가져오는데, 이때 Raspberry Pi에 부하가 되지 않습니다. 모든 동작은 HTTP POST G-code 스크립트를 통해 즉시 실행됩니다.
-
비동기적인 아키텍처:화면 새로 고침 및 버튼 상태 루틴은 네트워크 호출과 완전히 독립적으로 실행되어, UI가 완전히 매끄럽게 작동되고 데이터 전송 중에도 절대 지연되지 않도록 합니다.
📦 자재 목록(BOM)
이 프로젝트를 만들려면 다음과 같은 전자 부품이 필요합니다.
-
마이크로컨트롤러: ESP32 Devki v1 type C(30핀 변형).
-
디스플레이: 128x128 OLED 디스플레이.(예: Pimoroni SH1107 또는 동등한 I2C SSD1306/SH1107 디스플레이).
-
네비게이션: 내장된 푸시버튼이 있는 EC11 로터리 인코더. (저는 B 20mm 버전을 사용했습니다)
-
촉감적인 버튼들:8개의 MX 스위치(일반적인 기계식 키보드와 동일)
-
인클로저 하드웨어:3D 인쇄된 壳을 고정하는 M3x6 나사.
-
6개의 M3 열 인서트(M3xL4xOD 4.2 )
-
베이스에 펜던트를 고정하는 2x 10x4mm 자석
-
배터리를 교체하는데 사용하는 1개의 tp4056
-
2개의 10k오姆 저항기(만약 두 개의 배터리를 병렬 연결하고 있다면)
-
1개 또는 2개의 18650 배터리
-
1개의 KCD11 스위치
-
1개의 22mm 알루미늄 노브(또는 인쇄할 수도 있습니다)
제가 사용한 배터리들은JonnieZG의 배터리 브래켓.
당신은 그저 배터리에 브래킷을 달고 사진에 보여진 대로 케이스 蓋에 있는 구멍들 안에 그것을 밀어넣을 필요가 있습니다.
MX 스위치의 경우, 저プロ파일의 3D 프린트된 스위치를 사용했지만, 이는 당신의 취향에 달려 있습니다.
💻 소프트웨어 및 플래싱 지침
-
제공된 소스 코드 폴더를 열어보세요.아두이노 IDE.
-
라이브러리 매니저를 통해 필요한 라이브러리를 설치하세요:
-
U8g2 (올리버가 만들었어요)
-
아두이노 제이슨
-
ESPAsyncWebServer 및 AsyncTCP
-
AiEsp32 회전 인코더
-
Adafruit_NeoPixel
-
-
도구 > 보드에서 당신의 ESP32 모델을 선택하고, pendant.ino 내의 특정 디스플레이 핀 구성과 일치하게 하고, 클릭하세요.업로드.
🔧 처음 설정 가이드
-
펜던트의 전원을 켜세요. 화면에는 다음과 같은 내용이 표시될 것입니다."구성 포털 활성화"또는 핫스팟 프롬프트를 표시하십시오.
-
스마트폰이나 컴퓨터의 Wi-Fi 설정을 열고 이름이 지정된 네트워크에 연결하세요."Pendant-CNC".
-
웹 페이지가 자동으로 열려야 합니다. 그게 안 되면 브라우저에서 http://192.168.4.1로 이동하세요.
-
인터페이스를 사용하여 WiFi 네트워크를 선택하고, 암호를 입력하며, 각각의 이름과 로컬 네트워크 IP 주소로 CNC를 추가하십시오.
-
클릭하세요.저장 및 재부팅펜던트는 당신의 네트워크에 합류하고, 당신의 기기에 연결되며, 미러링 좌표를 확인할 것입니다.
코드나 디자인에 결함이 있다면 알려주십시오. 만일 누군가 수정을 원한다면 스텝 파일이 있습니다. 제 모국어는 스페인어이기 때문에 코드 안에 스페인어 단어가 있을 수도 있습니다.
제 경우에는 0개의 바닥 레이어와 5개의 상단 레이어를 사용했고, 힐버트 커브를 통해 30%의 인필을 사용하여 보다 미적인 모습을 제공하였습니다. 하지만 원하는 경우 더 많은 인필을 실험해 보실 수도 있습니다.
건배!
タグ
モデルソース
