CNCjs 是一個基於 Web 的全功能介面,適用於執行 Grbl、Marlin、Smoothieware 或 TinyG 的 CNC 控制器。
有關更完整的介紹,請參閱 wiki 頁面的介紹部分。
支援的控制器
Grbl(下載)
Grbl-Mega(下載)
馬林魚(下載)
Smoothieware(下載)
TinyG(建議:韌體版本0.97 build 449.xx )(下載)
g2核心
適用於 Linux、Mac OS X 和 Windows 的桌面應用程式
6 軸數字讀數 (DRO)
刀具路徑 3D 視覺化
同時與多個客戶溝通
裝置寬度小於 720px 的小螢幕顯示的響應式視圖
iPhone 5S 上的 Safari [1] [2]
可自訂的工作空間
自訂小工具(自 10 年 9 月 1 日起)
自訂 MDI(多重文件介面)命令按鈕(自 1.9.13 起)
我的帳戶
命令
活動
鍵盤快速鍵
Contour ShuttleXpress
多語言支援
觀看目錄
工具更換(自 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 Web Kiosk.
cncjs-pendant-ps3 - 適用於 CNCjs 的雙衝擊 / PS3 藍牙遠端吊墜。
cncjs-pendant-raspi-gpio - CNCjs 的簡單 Raspberry Pi GPIO 掛件控制.
cncjs-pendant-tinyweb - 用於小型 320x240 LCD 顯示器的小型 Web 控制台。
cncjs-shopfloor-tablet - cncjs 的簡化 UI,針對生產(車間)環境中的平板電腦進行了最佳化。
鉻合金 | 邊緣 | 火狐瀏覽器 | IE | 歌劇 | 狩獵之旅 |
---|---|---|---|---|---|
是的 | 是的 | 是的 | 不支援 | 是的 | 是的 |
版本 | 支援等級 |
---|---|
<= 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
以非 root 使用者身分安裝 cncjs,否則串列模組可能無法在某些平台(如 Raspberry Pi)上正確安裝。
npm install -g cncjs
如果要使用 sudo 或 root 來安裝 cncjs,則需要指定--unsafe-perm
選項以 root 帳號執行 npm。
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/
查看Web介面。將--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
您可以建立一個~/.cncrc
文件,其中包含以下 JSON 配置,而不是傳遞--watch-directory
、 --access-token-lifetime
、 --allow-remote-access
和--controller
命令列選項格式:
{「掛載點」:[ {"route": "/pendant","target": "/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 命令列選項等效的設定。設定檔儲存在使用者的主目錄中。若要找出主目錄的實際位置,請執行下列操作:
Linux/蘋果機
回顯$HOME
視窗
回顯%用戶設定檔%
在此處查看範例設定檔。
詳細解釋請參見#242(評論)。
{“連接埠”:[ { "路徑": "/dev/ttyAMA0", "製造商": "" } ], "波特率": [115200, 250000], "掛載點": [ {“路線”:“/ 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": "更新(root 使用者)", "commands": "sudo npm install -g cncjs@latest --unsafe-perm; pkill -f cncjs"}, { "title": "更新(非 root 使用者)", "commands": "npm install -g cncjs@latest; pkill -f cncjs"}, { "title": "重新啟動", "指令": "sudo /sbin/reboot"}, {“標題”:“關機”,“命令”:“sudo / sbin / shutdown”} ]、「事件」:[]、「巨集」:[]、「使用者」:[] }
https://cnc.js.org/docs/
範例目錄中有幾個 *.gcode 檔案。您可以使用GCode小工具載入GCode檔案並進行試運行。
如果您沒有 CAM 軟體,請嘗試使用 jscut 從 *.svg 建立 G 程式碼。它是一個在瀏覽器中運行的簡單 CAM 包。
請造訪 http://jscut.org/jscut.html 查看現場示範。
使用 GitHub 問題來請求。
歡迎拉請求!了解如何做出貢獻。
您可以協助將應用程式和伺服器目錄中的資源檔案從英文翻譯成其他語言。查看本地化指南以了解如何開始。如果您不熟悉 GitHub 開發,可以提出問題或將您的翻譯發送至 [email protected]。
語言環境 | 語言 | 地位 | 貢獻者 |
---|---|---|---|
CS | 切什蒂納(捷克) | ✔ | 米羅斯拉夫·祖澤爾卡 |
德 | 德語(德語) | ✔ | 托爾斯滕‧戈道,馬克斯‧B. |
英語 | 西班牙語(西班牙語) | ✔ | 胡安·比昂迪 |
FR | 法語(法語) | ✔ | 西蒙·梅拉德、CorentinBrulé |
胡 | 馬札爾語(匈牙利語) | ✔ | 西波斯·彼得 |
它 | 義大利語(義大利語) | ✔ | 文斯87 |
賈 | 日本文(日文) | ✔ | 岡本直樹 |
NL | 荷蘭(荷蘭) | ✔ | 荷蘭愛國者 |
PT-BR | 葡萄牙語(巴西) | ✔ | 克斯坦BR |
茹 | Ру́сский(俄語) | ✔ | 丹尼斯·尤蘇波夫 |
英國 | українська(烏克蘭語) | ✔ | 赫瓦萊拉 |
t | Türkçe(土耳其語) | ✔ | 阿里·貢多杜 |
zh-cn | 簡體中文(簡體中文) | ✔ | 錢曼迪、李泰瑞 |
zh-tw | 繁體中文(繁體中文) | ✔ | 吳徹頓 |
如果您想支持該項目,可以使用 PayPal 進行捐贈。謝謝你!
這個項目的存在要感謝所有做出貢獻的人。 [貢獻]。
感謝我們所有的支持者! ? [成為支持者]
成為贊助商來支持該計畫。您的徽標將顯示在此處,並帶有指向您網站的連結。 [成為贊助商]
根據 MIT 許可證獲得許可。