CNCjs es una interfaz web con todas las funciones para controladores CNC que ejecutan Grbl, Marlin, Smoothieware o TinyG.
Para obtener una introducción más completa, consulte la sección Introducción de la página wiki.
Controladores compatibles
Grbl (Descargar)
Grbl-Mega (Descargar)
Marlín (Descargar)
Batido (Descargar)
TinyG ( Recomendado: versión de firmware 0.97 build 449.xx ) (Descargar)
g2core
Aplicación de escritorio para Linux, Mac OS X y Windows
Lectura digital de 6 ejes (DRO)
Visualización 3D de la ruta de la herramienta
Comunicarse simultáneamente con múltiples clientes.
Vista responsiva para pantallas pequeñas con un ancho de dispositivo inferior a 720 px
Safari en un iPhone 5S [1] [2]
Espacio de trabajo personalizable
Widget personalizado (desde 1.9.10)
Botones de comando personalizados MDI (interfaz de documentos múltiples) (desde 1.9.13)
Mi cuenta
Comandos
Eventos
Atajos de teclado
Contorno ShuttleXpress
Soporte multilingüe
Ver directorio
Cambio de herramienta (desde 1.9.11)
Sonda Z
cncjs-widget-boilerplate: creación de widgets personalizados para CNCjs.
cncjs-pendant-boilerplate: un ejemplo mínimo para desarrollar un colgante cncjs.
cncjs-pendant-keyboard: un colgante simple (que utiliza un teclado inalámbrico o USB) para CNCJS.
cncjs-pendant-numpad: un colgante simple (que utiliza un teclado numérico inalámbrico o USB) para CNCJS.
cncjs-pendant-lcd - Quiosco web CNCjs para pantallas táctiles Raspberry Pi.
cncjs-pendant-ps3 - Colgante remoto Bluetooth Dual Shock / PS3 para CNCjs.
cncjs-pendant-raspi-gpio - Control colgante GPIO Raspberry Pi simple para CNCjs.
cncjs-pendant-tinyweb: una pequeña consola web para una pequeña pantalla LCD de 320x240.
cncjs-shopfloor-tablet: una interfaz de usuario simplificada para cncjs optimizada para tabletas en un entorno de producción (taller).
Cromo | Borde | Firefox | ES DECIR | Ópera | Safari |
---|---|---|---|---|---|
Sí | Sí | Sí | No compatible | Sí | Sí |
Versión | Nivel admitido |
---|---|
<= 10 | No compatible |
12 | Apoyado |
>= 14 | Recomendado |
Se recomienda Node.js 14 o superior. Puede instalar Node Version Manager para administrar múltiples versiones de Node.js. Si tiene git
instalado, simplemente clone el repositorio nvm
y consulte la última versión:
git clone https://github.com/creationix/nvm.git ~/.nvm cd ~/.nvm git checkout `git describe --abbrev=0 --tags` cd .. . ~/.nvm/nvm.sh
Agregue estas líneas a su archivo ~/.bash_profile
, ~/.bashrc
o ~/.profile
para que se obtenga automáticamente al iniciar sesión:
exportar NVM_DIR="$HOME/.nvm"[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # Esto carga nvm
Una vez instalado, puede seleccionar versiones de Node.js con:
nvm install 14 nvm use 14
También se recomienda actualizar npm a la última versión. Para actualizar, ejecute:
npm install npm@latest -g
Instale cncjs como usuario no root; de lo contrario, es posible que el módulo de puerto serie no se instale correctamente en algunas plataformas como Raspberry Pi.
npm install -g cncjs
Si va a utilizar sudo o root para instalar cncjs, debe especificar la opción --unsafe-perm
para ejecutar npm como cuenta root.
sudo npm install --unsafe-perm -g cncjs
Consulte https://github.com/cncjs/cncjs/wiki/Installation para conocer otros métodos de instalación.
Ejecute npm install -g cncjs@latest
para instalar la última versión. Para determinar la versión, utilice cncjs -V
.
Ejecute cncjs
para iniciar el servidor y visite http://yourhostname:8000/
para ver la interfaz web. Pase --help
a cncjs
para obtener más opciones.
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
En lugar de pasar opciones de línea de comando para --watch-directory
, --access-token-lifetime
, --allow-remote-access
y --controller
, puede crear un archivo ~/.cncrc
que contenga la siguiente configuración en JSON formato:
{"puntos de montaje": [ {"ruta": "/colgante","destino": "/home/pi/tinyweb"}, {"ruta": "/widget","destino": "https://cncjs.github.io/cncjs-widget-boilerplate/v1/"} ],"watchDirectory": "/ruta/al/dir","accessTokenLifetime": "30d","allowRemoteAccess": false,"controller": ""}
Para solucionar problemas, ejecute:
cncjs -vvv
El archivo de configuración .cncrc contiene configuraciones que son equivalentes a las opciones de la línea de comandos de cncjs. El archivo de configuración se almacena en el directorio de inicio del usuario. Para averiguar la ubicación real del directorio de inicio, haga lo siguiente:
Linux/Mac
eco $ INICIO
ventanas
eco %PERFIL DE USUARIO%
Consulte un archivo de configuración de ejemplo aquí.
Consulte el n.º 242 (comentario) para obtener una explicación detallada.
{ "puertos": [ { "ruta": "/dev/ttyAMA0", "fabricante": "" } ], "baudrates": [115200, 250000], "mountPoints": [ { "ruta": "/widget", "destino": "https://cncjs.github.io/cncjs-widget-boilerplate/v1/"} ], "watchDirectory": "/ruta/a/dir", "accessTokenLifetime": "30d", "allowRemoteAccess": false, "controller": "", "state": {"checkForUpdates": true,"controller" : { "excepción": {"ignoreErrors": falso} } }, "comandos": [ { "title": "Actualizar (usuario root)", "commands": "sudo npm install -g cncjs@latest --unsafe-perm; pkill -f cncjs"}, { "title": "Actualizar (usuario no root)", "commands": "npm install -g cncjs@latest; pkill -f cncjs"}, { "título": "Reiniciar", "comandos": "sudo /sbin/reboot"}, { "título": "Apagar", "comandos": "sudo /sbin/shutdown"} ], "eventos": [], "macros": [], "usuarios": [] }
https://cnc.js.org/docs/
Hay varios archivos *.gcode en el directorio de ejemplos. Puede utilizar el widget GCode para cargar un archivo GCode y realizar una ejecución de prueba.
Si no tiene un software CAM, intente usar jscut para crear G-Code a partir de *.svg. Es un paquete CAM simple que se ejecuta en el navegador.
Vea una demostración en vivo en http://jscut.org/jscut.html.
Utilice problemas de GitHub para solicitudes.
¡Las solicitudes de extracción son bienvenidas! Aprenda cómo contribuir.
Puede ayudar a traducir archivos de recursos en los directorios de aplicaciones y servidores del inglés a otros idiomas. Consulte la guía de localización para saber cómo empezar. Si no está familiarizado con el desarrollo de GitHub, puede abrir una incidencia o enviar sus traducciones a [email protected].
Lugar | Idioma | Estado | Colaboradores |
---|---|---|---|
cs | Čeština (checo) | ✔ | Miroslav Zuzelka |
Delaware | Alemán (alemán) | ✔ | Thorsten Godau, Max B. |
es | Español (español) | ✔ | Juan Biondi |
fr | Francés (francés) | ✔ | Simon Maillard, Corentin Brulé |
eh | magiar (húngaro) | ✔ | Pedro Sipos |
él | italiano (italiano) | ✔ | vince87 |
ja | 日本語 (japonés) | ✔ | Naoki Okamoto |
nl | Países Bajos (Países Bajos) | ✔ | patriota holandés |
pt-br | Português (Brasil) | ✔ | cmsteinBR |
ru | Ру́сский (ruso) | ✔ | Denis Yusúpov |
reino unido | українська (ucraniano) | ✔ | kvalera |
tr | Türkçe (turco) | ✔ | Ali GÜNDOĞDU |
zh-cn | 简体中文 (chino simplificado) | ✔ | Mandy Chien, Terry Lee |
zh-tw | 繁體中文 (chino tradicional) | ✔ | Chetón Wu |
Si desea apoyar este proyecto, puede hacer una donación mediante PayPal. ¡Gracias!
Este proyecto existe gracias a todas las personas que contribuyen. [Contribuir].
¡Gracias a todos nuestros patrocinadores! ? [Conviértete en patrocinador]
Apoya este proyecto convirtiéndote en patrocinador. Su logotipo aparecerá aquí con un enlace a su sitio web. [Conviértete en patrocinador]
Licenciado bajo la Licencia MIT.