Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revisionBoth sides next revision | ||
workbee_cnc_router [03.11.2019 19:24] – Pascal Suter | workbee_cnc_router [10.10.2021 16:50] – [Workbee CNC Router] Pascal Suter | ||
---|---|---|---|
Line 52: | Line 52: | ||
|OSB|1/4 upcut|6mm | 19200 | 1700 mm/min | very rough cut, a little smoke every now and then | | |OSB|1/4 upcut|6mm | 19200 | 1700 mm/min | very rough cut, a little smoke every now and then | | ||
|OSB|1/4 upcut|3mm | 19200 | 3000 mm/min | much smoother, no smoke | | |OSB|1/4 upcut|3mm | 19200 | 3000 mm/min | much smoother, no smoke | | ||
+ | |MDF|1/8 upcut 2-flute|spiral ?? bore | 3000 | 500 | no smoke but vibrations | | ||
+ | |MDF|1/8 upcut 2-flute|spiralpocket | 7000 | 500 | no smoke| | ||
+ | |Valchromat (Colored MDF, slightly harder than regular MDF)|6mm straight 2-flute | 7mm | 10'000 | 2000 mm/min | some vibrations but acceptable quality that only needs slight sanding on visible edges | | ||
+ | |Aluminum (unknown type)|1/8 2-flute straight| 0.1mm | 6000 | 1000mm/min | dry with air cooling, slow but decent :)| | ||
+ | |0.5mm Aluminium 50xx | 1/8 2-flute straight| 0.5mm | 8000 | 700mm/min (200mm/min plunge) | cutting fluid in pan, looks professional :) | | ||
+ | ===== G-Code Sender ===== | ||
+ | my Workbee is using the GRBL firmware on a arduino together with a CNCshield on top of it. In order to send gcode to the arduino, a gcode-sender is used on a PC that is connected via USB. | ||
+ | |||
+ | currently i am using UGS (Univseral Gcode Sender) Platform edition. The reason why i chose this software is simple: i used it on my shapeoko and already kenw it. It seems though, that UGS crashes every now and then, leaving the machine stuck. i then need stop the job, disconnect from the arduino, reconnect and start over again. since the ardino still knows the machine position etc. I have a feeling this crash might happen on the UGS side. I therefore want to try different gcode senders in the near future. the two most interesting ones seem to be: | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | |||
+ | ===== CNC.js ===== | ||
+ | i've decided to try CNC.js. I am installing it on a Raspberry PI 3 (because i had one laying around). the idea is, to get the raspberry as close as possible to the grbl to keep the USB cable as short as possible. I've read that communications issues on the USB link cause by interference could cause the hang-ups i saw with UGS. in any case, the size of the raspberry makes it a practical choice anyway :) | ||
+ | |||
+ | so first i installed raspberry OS, there is pre-built rasbperry image from CNC.js but it has not been updated in the last two years, so I decided to go with a manual install. | ||
+ | |||
+ | here are the steps i went through: | ||
+ | |||
+ | [[install_raspbian_on_f2fs_root]] with my script, set wifi and hostname and enable ssh so we don't need to connect a screen to it ever :) | ||
+ | |||
+ | install git | ||
+ | sudo apt update | ||
+ | sudo apt install git | ||
+ | |||
+ | install cncjs with npm which is installed via nvm. basically, just follow the instructions on the [[https:// | ||
+ | |||
+ | create a systemd service that will start cncjs automatically: | ||
+ | sudo nano / | ||
+ | here are the contents of the startup script: | ||
+ | < | ||
+ | [Unit] | ||
+ | Description=CNCjs | ||
+ | |||
+ | [Service] | ||
+ | ExecStart=/ | ||
+ | Restart=always | ||
+ | RestartSec=10 | ||
+ | # Output to syslog | ||
+ | StandardOutput=syslog | ||
+ | StandardError=syslog | ||
+ | SyslogIdentifier=cncjs | ||
+ | User=pi | ||
+ | Group=pi | ||
+ | |||
+ | [Install] | ||
+ | WantedBy=multi-user.target | ||
+ | </ | ||
+ | nwo start it: | ||
+ | sudo systemctl daemon-reload | ||
+ | sudo systemctl --now enable cncjs | ||
+ | systemctl status cncjs | ||
+ | |||
+ | this should show that it's running now and you should be able to access it on port '' | ||
+ | |||
+ | i'm lazy, so i don't want to type that port 8000 all the time, let's add a redirect using '' | ||
+ | |||
+ | < | ||
+ | sudo apt install lighttpd | ||
+ | cd / | ||
+ | sudo nano conf-available/ | ||
+ | </ | ||
+ | put this in there: | ||
+ | < | ||
+ | $HTTP[" | ||
+ | # capture vhost name with regex conditiona -> %0 in redirect pattern | ||
+ | # must be the most inner block to the redirect rule | ||
+ | $HTTP[" | ||
+ | url.redirect = (" | ||
+ | } | ||
+ | } | ||
+ | </ | ||
+ | activate the config and restart the service | ||
+ | cd conf-enabled | ||
+ | sudo ln -s ../ | ||
+ | sudo systemctl restart lighttpd.service | ||
+ | now you should be able to simply access the cncjs gui by entering the hostname of your raspberry in your browser | ||
+ | |||
+ | it prettymuch runs out of the box now. simply connect to it, choose the usb serial interface and hit connect and you are good to go! | ||
+ | |||
+ | in the future i will add an [[http:// | ||
+ | |||
+ | so far i can't get the stream to display, allthough i can access it with vlc or my webbrowser directy. i have two urls for the sub stream: | ||
+ | * http:// | ||
+ | * rtsp:// | ||
+ | |||
+ | neither show up on screen, got to debug that.. i hope it's not trying to re-encode it on the raspberry using ffmpeg which might be missing.. but we will see.. |