CNCjs는 Grbl, Marlin, Smoothieware 또는 TinyG를 실행하는 CNC 컨트롤러를 위한 모든 기능을 갖춘 웹 기반 인터페이스입니다.
더 완전한 소개를 보려면 위키 페이지의 소개 섹션을 참조하세요.
지원되는 컨트롤러
Grbl (다운로드)
Grbl-Mega (다운로드)
말린 (다운로드)
스무디웨어(다운로드)
TinyG( 권장: 펌웨어 버전 0.97 빌드 449.xx )(다운로드)
g2core
Linux, Mac OS X, Windows용 데스크탑 앱
6축 디지털 판독(DRO)
공구 경로 3D 시각화
여러 클라이언트와 동시에 통신
장치 너비가 720px 미만인 작은 화면 디스플레이를 위한 반응형 보기
iPhone 5S의 Safari [1] [2]
맞춤형 작업 공간
맞춤 위젯(1.9.10부터)
사용자 정의 MDI(다중 문서 인터페이스) 명령 버튼(1.9.13부터)
내 계정
명령
이벤트
키보드 단축키
컨투어 셔틀익스프레스
다국어 지원
시계 디렉토리
도구 변경 (1.9.11부터)
Z-프로브
cncjs-widget-boilerplate - CNCjs용 사용자 정의 위젯을 만듭니다.
cncjs-pendant-boilerplate - CNCjs 펜던트를 개발하기 위한 최소한의 예입니다.
cncjs-pendant-keyboard - CNCJS에 대한 간단한 펜던트(무선 키보드 또는 USB 사용)입니다.
cncjs-pendant-numpad - CNCJS에 대한 간단한 펜던트(무선 숫자 패드 또는 USB 사용)입니다.
cncjs-pendant-lcd - Raspberry Pi 터치 디스플레이용 CNCjs 웹 키오스크입니다.
cncjs-pendant-ps3 - CNCjs용 듀얼 쇼크 / PS3 블루투스 원격 펜던트.
cncjs-pendant-raspi-gpio - CNCjs용 간단한 Raspberry Pi GPIO 펜던트 제어입니다.
cncjs-pendant-tinyweb - 소형 320x240 LCD 디스플레이를 위한 작은 웹 콘솔입니다.
cncjs-shopfloor-tablet - 프로덕션(작업 현장) 환경의 태블릿 컴퓨터에 최적화된 CNCjs용 단순화된 UI입니다.
크롬 | 가장자리 | 파이어폭스 | 즉 | 오페라 | 원정 여행 |
---|---|---|---|---|---|
예 | 예 | 예 | 지원되지 않음 | 예 | 예 |
버전 | 지원되는 수준 |
---|---|
<= 10 | 지원되지 않음 |
12 | 지원됨 |
>= 14 | 추천 |
Node.js 14 이상이 권장됩니다. Node Version Manager를 설치하여 여러 Node.js 버전을 관리할 수 있습니다. git
설치되어 있으면 nvm
저장소를 복제하고 최신 버전을 확인하세요.
git clone https://github.com/creationix/nvm.git ~/.nvm cd ~/.nvm git checkout `git describe --abbrev=0 --tags` cd .. . ~/.nvm/nvm.sh
로그인 시 자동으로 소스가 제공되도록 하려면 ~/.bash_profile
, ~/.bashrc
또는 ~/.profile
파일에 다음 줄을 추가하세요.
NVM_DIR="$HOME/.nvm"[ -s "$NVM_DIR/nvm.sh" ] && 내보내기. "$NVM_DIR/nvm.sh" # nvm을 로드합니다.
설치되면 다음을 사용하여 Node.js 버전을 선택할 수 있습니다.
nvm install 14 nvm use 14
또한 npm을 최신 버전으로 업그레이드하는 것이 좋습니다. 업그레이드하려면 다음을 실행하세요.
npm install npm@latest -g
루트가 아닌 사용자로 cncjs를 설치하십시오. 그렇지 않으면 직렬 포트 모듈이 Raspberry Pi와 같은 일부 플랫폼에 올바르게 설치되지 않을 수 있습니다.
npm install -g cncjs
sudo 또는 root를 사용하여 cncjs를 설치하려는 경우 루트 계정으로 npm을 실행하려면 --unsafe-perm
옵션을 지정해야 합니다.
sudo npm install --unsafe-perm -g cncjs
다른 설치 방법은 https://github.com/cncjs/cncjs/wiki/Installation을 확인하세요.
npm install -g cncjs@latest
실행하여 최신 버전을 설치하세요. 버전을 확인하려면 cncjs -V
사용하세요.
cncjs
실행하여 서버를 시작하고 http://yourhostname:8000/
방문하여 웹 인터페이스를 확인하세요. 더 많은 옵션을 보려면 --help
cncjs
에 전달하세요.
pi@rpi3$ cncjs -h Usage: cncjs [options] Options: -V, --version output the version number -p, --portSet listen port (default: 8000) -H, --host Set listen address or hostname (default: 0.0.0.0) -b, --backlog Set listen backlog (default: 511) -c, --config Set config file (default: ~/.cncrc) -v, --verbose Increase the verbosity level (-v, -vv, -vvv) -m, --mount : Add a mount point for serving static files -w, --watch-directory Watch a directory for changes --access-token-lifetime Access token lifetime in seconds or a time span string (default: 30d) --allow-remote-access Allow remote access to the server (default: false) --controller Specify CNC controller: Grbl|Marlin|Smoothie|TinyG|g2core (default: '') -h, --help output usage information Examples: $ cncjs -vv $ cncjs --mount /pendant:/home/pi/tinyweb $ cncjs --mount /widget:~+/widget --mount /pendant:~/pendant $ cncjs --mount /widget:https://cncjs.github.io/cncjs-widget-boilerplate/v1/ $ cncjs --watch-directory /home/pi/watch $ cncjs --access-token-lifetime 60d # e.g. 3600, 30m, 12h, 30d $ cncjs --allow-remote-access $ cncjs --controller Grbl
--watch-directory
, --access-token-lifetime
, --allow-remote-access
및 --controller
에 대한 명령줄 옵션을 전달하는 대신 JSON에서 다음 구성을 포함하는 ~/.cncrc
파일을 생성할 수 있습니다. 체재:
{"마운트포인트": [ {"경로": "/펜던트","대상": "/home/pi/tinyweb"}, {"경로": "/widget","대상": "https://cncjs.github.io/cncjs-widget-boilerplate/v1/"} ],"watchDirectory": "/path/to/dir","accessTokenLifetime": "30d","allowRemoteAccess": false,"controller": ""}
문제를 해결하려면 다음을 실행하세요.
cncjs -vvv
구성 파일 .cncrc 에는 cncjs 명령줄 옵션과 동일한 설정이 포함되어 있습니다. 구성 파일은 사용자의 홈 디렉터리에 저장됩니다. 홈 디렉토리의 실제 위치를 찾으려면 다음을 수행하십시오.
리눅스/맥
$HOME을 에코합니다.
윈도우
에코 %USERPROFILE%
여기에서 예제 구성 파일을 확인하세요.
자세한 설명은 #242(주석)을 참조하세요.
{ "포트": [ { "경로": "/dev/ttyAMA0", "제조업체": "" } ], "전송 속도": [115200, 250000], "mountPoints": [ { "경로": "/widget", "대상": "https://cncjs.github.io/cncjs-widget-boilerplate/v1/"} ], "watchDirectory": "/path/to/dir", "accessTokenLifetime": "30d", "allowRemoteAccess": false, "controller": "", "state": {"checkForUpdates": true,"controller" : { "예외": {"ignoreErrors": false } } }, "명령": [ { "title": "업데이트(루트 사용자)", "commands": "sudo npm install -g cncjs@latest --unsafe-perm; pkill -f cncjs"}, { "title": "업데이트(루트가 아닌 사용자)", "commands": "npm install -g cncjs@latest; pkill -f cncjs"}, { "제목": "재부팅", "명령": "sudo /sbin/reboot"}, { "제목": "종료", "명령": "sudo /sbin/shutdown"} ], "이벤트": [], "매크로": [], "사용자": [] }
https://cnc.js.org/docs/
예제 디렉토리에는 여러 개의 *.gcode 파일이 있습니다. GCode 위젯을 사용하여 GCode 파일을 로드하고 시험적으로 실행할 수 있습니다.
CAM 소프트웨어가 없으면 jscut을 사용하여 *.svg에서 G-Code를 생성해 보십시오. 브라우저에서 실행되는 간단한 CAM 패키지입니다.
http://jscut.org/jscut.html에서 라이브 데모를 확인해 보세요.
요청에는 GitHub 문제를 사용하세요.
풀 요청을 환영합니다! 기여하는 방법을 알아보세요.
앱과 서버 디렉터리 모두에 있는 리소스 파일을 영어에서 다른 언어로 번역하는 데 도움을 줄 수 있습니다. 시작하는 방법을 알아보려면 현지화 가이드를 확인하세요. GitHub 개발에 익숙하지 않은 경우 이슈를 열거나 번역을 [email protected]으로 보낼 수 있습니다.
장소 | 언어 | 상태 | 기여자 |
---|---|---|---|
CS | 체슈티나(체코) | ✔ | 미로슬라프 주젤카 |
드 | 독일어(독일어) | ✔ | 토르스텐 고다우, 막스 B. |
예 | 스페인어(스페인어) | ✔ | 후안 비온디 |
정말로 | 프랑세(프랑스어) | ✔ | 사이먼 메일라드, 코랑탱브룰레 |
후 | 마자르어(헝가리) | ✔ | 시포스 피터 |
그것 | Italiano(이탈리아어) | ✔ | 빈스87 |
자 | 일본어(일본어) | ✔ | 오카모토 나오키 |
NL | 네덜란드(네덜란드) | ✔ | 네덜란드 애국자 |
pt-br | 포르투갈어(브라질) | ✔ | cmsteinBR |
루 | Ру́сский(러시아어) | ✔ | 데니스 유스포프 |
영국 | украѕнська(우크라이나어) | ✔ | 크발레라 |
tr | 터키어(터키어) | ✔ | 알리 군돌두(Ali GÜNDOĞDU) |
zh-cn | 简体中文(중국어 간체) | ✔ | 맨디 치엔, 테리 리 |
zh-tw | 繁體中文 (중국어 번체) | ✔ | 체톤 우 |
이 프로젝트를 후원하고 싶다면 PayPal을 사용하여 기부할 수 있습니다. 감사합니다!
이 프로젝트는 기여하는 모든 사람들 덕분에 존재합니다. [기여하다].
모든 후원자분들께 감사드립니다! ? [후원자가 되세요]
후원자가 되어 이 프로젝트를 지원하세요. 귀하의 로고가 귀하의 웹사이트 링크와 함께 여기에 표시됩니다. [후원자가 되세요]
MIT 라이선스에 따라 라이선스가 부여됩니다.