请选择 进入手机版 | 继续访问电脑版
大海作坊

大海作坊

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 379|回复: 6

树莓派4 + CNCjs 转 机器翻译

[复制链接]

12

主题

28

帖子

165

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
165
发表于 2021-7-14 11:41:41 | 显示全部楼层 |阅读模式
树莓派4 + CNCjs


我总是用数控铣刀来雕刻木头和制作动物木雕。2006年购买第一个爱好产品后,几年前在车床市场上用“PSF240-CNC”代替,六个月前从OpenBuilds购买了“LEAD CNC Machine 1010”。目前,我主要使用这两个单元。
PSF240-CNC 有一个可选的专用 PC,它由名为“Linux CNC”的软件控制。LEAD CNC 由在 Arduino 和通用 PC 上运行的名为“CNCjs”的软件控制。由于 CNCjs 是用 Javascript 编写的,因此它可以在 macOS、Windows 和 RasiperrbyPi 上运行。在我的环境中,我使用安装在 Raspberry Pi 4 上的 CNCjs,方法是在 macOS 的 Chrome 上运行它。
CNCjs的优点
专用 PC 上的 Linux CNC 确实没有问题。我很久没有被冻住了。之前用的windows版的“EdingCNC(USBCNC)”这个软件不错,但是准备windows比较麻烦,因为windows在CNC加工的时候就开始不经允许就开始更新了,我平时用的是macOS。。。
而且在树莓派 4 上运行的 CNCjs 长时间不卡顿,真实的感觉非常棒。还有暂停和重启,GUI非常好用。此外,由于可以通过浏览器进行操作,因此无论是 macOS 还是 Windows 都可以使用。能够轻松设置监控 CNC 的网络摄像头也很棒。
所以,这一次,将是一篇关于在“Raspberry Pi 4”上安装“CNCjs”的过程的文章。
环境:
・ macOS Mojave 10.14.6
・ RaspberryPi4 内存 2G 型
・ 网络摄像头(没有它也可以) iBUFFALO BSWHD06MWH

什么是CNCjs

用于运行 CNC 机器的开源软件,由 JavaScript (Node.js) 制成。
CNCjs官网
https://cnc.js.org/
在 Raspberry Pi(官方)上设置
https://cnc.js.org/docs/rpi-setup-guide/
看官方的设置指南,总结了RaspberryPi2和3,但是此时(2020/11/07)还没有关于RaspberryPi4的信息。不能和树莓派4一起使用吗?我也想过,不过装了以后还是可以稳定剪的。

树莓派4+CNCjs安装程序树莓派主机设置
就是准备树莓派的主体和安装OS的工作。在您一直使用的计算机上执行此操作。我正在使用 iMac 工作。
获取 Raspberry Pi 4 和 microSD
https://akizukidenshi.com/catalog/g/gM-14839/
我用的是2G的内存,但我认为1G没有任何问题。
我为 microSD 使用 16G 和 32G,但 8G 还不够。
将 Raspberry Pi OS (LITE) 写入 microSD
https://www.raspberrypi.org/downloads/
下载并安装树莓派官方写字工具“Raspberry Pi Imager”并启动。在操作系统选择栏中,我选择了“RAPBERRY PI OS LITE (32-BIT)”。由于 CNCjs 不使用桌面,我认为 LITE 是好的。设置 microSD,选择它,然后单击“WRITE”按钮开始写入。稍等片刻,直到写入完成。
完成OS写入后,取出microSD并立即插入

microSD 写入完成后,即使卡还在插入,也会自动弹出,因此请立即取出 microSD 并插入。
接下来,我们将设置树莓派的内部。如果将 HDMI 显示器、键盘和鼠标连接到主机,您可以像普通个人电脑一样在显示器上工作,但准备这些外围设备很麻烦。因此,首先将其设置为可以通过网络从 macOS 访问。这可以通过简单地将 microSD 安装为 macOS 上的“启动”磁盘并将文件写入其中来设置,因此您的 Raspberry Pi 不需要鼠标或键盘。
SSH 和 WiFi 设置确认它被识别为引导

microSD 应该以名称“boot”安装。接下来,将 macOS 创建的文件写入此“引导”。
写一个文件使 SSH 能够“启动”


使用文本编辑器创建一个文件名为“ssh”的空文件,并将其复制到“boot”。关键是将文件命名为“ssh”而不带扩展名。
如果此文件存在,则树莓派启动时将允许 SSH,并且它会自动从“启动”中消失。
将WiFi配置文件写入“boot”

这是在有 WiFi 环境时设置的。如果你没有,你可以在树莓派桌面上进行设置,方法是用 LAN 线连接树莓派 4 和 PC,或者将 HDMI 显示器、键盘和鼠标连接到树莓派 4,但准备工作很麻烦。在这里,SSH 连接 WiFi 并从 macOS 的“终端”应用程序设置。
[size=0.9em]wpa_supplicant.conf

country=JPctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdevupdate_config=1network={    ssid="ssid"    psk="password"}

* 请根据WiFi环境改写ssid和密码。
当树莓派启动时,这个“wpa_supplicant.conf”被复制到“/etc/wpa_supplicant/wpa_supplicant.conf”,并自动从“boot”中消失。
在树莓派中设置 microSD 并打开电源
等待一段时间让 Raspberry Pi 稳定下来。等待一段时间后,您应该可以连接到您之前设置的 WiFi 接入点。如果无法连接,可能是您的 WiFi SSID 或密码不同。在这种情况下,再次在 macOS 上挂载 microSD 并将正确的信息“wpa_supplicant.conf”写入“boot”。
在“应用程序”>“实用程序”的“终端”中尝试 SSH 连接。
[size=0.9em]
ssh pi@raspberrypi.local

在终端中输入并回车,系统将提示您输入密码。 系统会询问您是否要继续,因此输入“是”并按 Enter。 系统会要求您输入密码以登录 Raspberry Pi。在没有设置的初始状态下,密码是“raspberry”,所以输入后回车。出于安全原因,您在输入密码时似乎没有在屏幕上输入任何内容。 您已成功登录到您的 Raspberry Pi。







树莓派内部设置关于安装 Node.js
这里树莓派需要连接到互联网,所以请连接到 WiFi 或 LAN。互联网环境准备好后,安装 CNCjs 所需的“Node.js”。这个时候建议安装在可以指定版本的状态下。
这是因为 CNCjs 的官网也有在树莓派上设置的程序,但是这个程序是尝试安装 Node.js 的 Ver.7。但是已经不支持了,无法按照官网的步骤安装。
CNCjs 目前推荐使用 Node.js Ver.8 或更高版本(2020/11/06)。但是,目前 Node.js 是 Ver.10.22.1,所以我想尽可能让它保持最新,所以我决定使用 NVM(节点版本管理器)安装它。
NVM 安装
参考 nvm Github 站点上的“安装和更新”进行安装。
https://github.com/nvm-sh/nvm
可能再更新的话,下面命令的“v0.36.0”这个地方会发生变化,所以定期检查一下就好了。
[size=0.9em]
sudo apt-get updatecurl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.36.0/install.sh | bash

小路
“passing the PATH”是指设置“nvm”的安装位置,这样就不用指定全路径了。将该设置写入不可见文件的“.bash_profile”。如果不存在,则创建,但不管文件是否存在,下面的过程都可以。
[size=0.9em]
sudo nano ~/.bash_profile

在此处添加以下内容。
[size=0.9em]
export NVM_DIR="$HOME/.nvm"[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

保存 .bash_profile(在纳米屏幕上,控制 + X 后跟 Y)
使用以下命令应用并启用它:
[size=0.9em]
source ~/.bash_profile

指定NODE版本安装
指定版本 10 以安装和使用版本 10。
[size=0.9em]
nvm install 10nvm use 10

安装 NPM
接下来,安装 NPM(节点包管理器)。
[size=0.9em]
npm install npm@latest -g

安装 CNCjs
最后使用NPM安装CNCjs。
[size=0.9em]
npm install -g cncjs

CNCjs安装确认
确保您已成功安装它(您不必)。
[size=0.9em]
cncjs -V

当版本返回如下图所示时,它被安装。
[size=0.9em]
1.9.22

自动启动设置
让 RaspberryPi 启动时 CNCjs 自动启动。使用生产流程管理器“pm2”进行自动启动。
[size=0.9em]
npm install pm2 -gpm2 start $(which cncjs) -- --port 8000pm2 startup

安装并“启动”后,将输出以下消息。
sudo env PATH = $ PATH: /home/pi/.nvm/versions/node/v8.17.0/bin /home/pi/.nvm/versions/node/v8.17.0/lib/node_modules/pm2/bin/pm2 启动systemd -u pi --hp / 家 / pi
然后保存pm2并检查列表。
[size=0.9em]
pm2 savepm2 list

如果列表中出现“cncjs”,则表示设置成功。
检查 CNCjs 的运行情况
如果您使用“:8000”访问树莓派地址,则应出现 CNCjs 屏幕。您可以在左下方看到网络摄像头小部件,但由于尚未设置,因此无法识别。接下来,设置 WEB 摄像头。
http://raspberrypi.local:8000/
网络摄像头设置
使用 CNCjs,您可以设置监控 CNC 的网络摄像头。这也是惊人的。如果您不需要网络摄像头,请跳过它。
首先,下载并安装必要的文件。
[size=0.9em]
sudo apt-get install build-essential libjpeg8-dev imagemagick libv4l-dev cmake -y git

接下来,移动到“tmp”文件夹并安装“mjpg-streamer”。使用以下命令下载带有“git clone”的文件,解压缩,然后将其移动到“mjpg-streamer-experimental”文件夹。
[size=0.9em]
cd /tmpgit clone https://github.com/jacksonliam/mjpg-streamer.gitcd mjpg-streamer/mjpg-streamer-experimental

导航到“mjpg-streamer-experimental”文件夹后,使用“make”编译源代码并使用“sudo make install”安装编译后的文件。我想它会以各种方式写出来,但请稍等。
[size=0.9em]
makesudo make install

最后,WEB摄像头软件就做好了。WEB 摄像头可以是普通的通过USB 连接的摄像头。我在我的环境中使用“iBUFFALO BSWHD06MWH”。
检查网络摄像头
打开网络摄像头小部件。 由于还没有设置,所以是一片漆黑,所以按设置键。 当对话框出现时,选择“连接到 IP 摄像机”,在地址中添加“:8080?Action = stream”,然后“保存更改”。就我而言,我可以通过“raspberrypi.local”访问Raspberry Pi,因此如下所示。



[size=0.9em]
http://raspberrypi.local:8080?action=stream


保存设置后,来自网络摄像头的视频将被流式传输。
只读 microSD
到目前为止,您可以使用 CNCjs。但是,microSD 具有重写寿命。即使你不重写那么多,树莓派就像一个带有microSD的硬盘一样,所以日志等可能会发生重写。此外,关闭电源时,如果写入 microSD,文件可能会损坏。为了避免这些,设置“只读”,这会使内存表现得像硬盘一样,因为它可能会导致故障。
可以从最近的 Raspberry Pi OS(Raspbian Buster 或更高版本)上的 raspi-config 设置此设置,这使它变得更加容易。这次是没有桌面的操作系统,但是如果您有桌面,则可以使用 GUI 进行设置。
但是请注意,当您重新启动时,它会返回到只读之前的状态,因此请在完成下载和安装等所有工作后将其设为只读。临时文件(重启后可以删除的文件)即使是只读的也可以写入树莓派,所以即使是只读的你想用CNCjs处理的数据也没有问题。
然后是一个设置。从终端启动“raspi-config”。
[size=0.9em]
sudo raspi-config

屏幕看起来像这样。
选择 7 高级选项 > AB 覆盖 FS。

首先会询问您是否要只读,然后会询问您是否也要只读引导区。两者都设置为“启用”和“是”。


结束
最后,CNCjs 可以在 Raspberry Pi 4 上运行(即使关闭电源,microSD 也很难破解)。CNCjs 是开源和免费的,但真的很好。Openbuilds 的所有“LEAD CNC”都以零件的形式到达,但我能够以大约 100,000 日元(Aliexpress)的价格购买它。另外,很难解释,但我不会在这里写,但是“LEAD CNC”的铝制框架与MISUMI标准相同,因此我能够花费几千日元将Z轴改装成高。我喜欢这种开源硬件。我很高兴想到世界上有很多人喜欢创造这样的环境!



回复

使用道具 举报

0

主题

5

帖子

70

积分

注册会员

Rank: 2

积分
70
发表于 2021-7-14 20:51:39 | 显示全部楼层
求资料
回复

使用道具 举报

0

主题

5

帖子

70

积分

注册会员

Rank: 2

积分
70
发表于 2021-7-19 21:33:07 | 显示全部楼层
树莓派4B用于3D打印的教程有嘛
回复

使用道具 举报

12

主题

28

帖子

165

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
165
 楼主| 发表于 2021-7-20 14:34:12 | 显示全部楼层
陆飞 发表于 2021-7-19 21:33
树莓派4B用于3D打印的教程有嘛

树莓派数控软件都可以做打印机,但有许多专用的脱机打印机控制板和软件更方便。
回复

使用道具 举报

0

主题

5

帖子

70

积分

注册会员

Rank: 2

积分
70
发表于 2021-7-20 20:18:16 | 显示全部楼层
大海 发表于 2021-7-20 14:34
树莓派数控软件都可以做打印机,但有许多专用的脱机打印机控制板和软件更方便。

树莓派4B上面使用的BCNC和CNCjs 软件可以发我嘛
回复

使用道具 举报

12

主题

28

帖子

165

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
165
 楼主| 发表于 2021-7-21 14:48:26 | 显示全部楼层
这两个软件都给出了网站,直接下载就是,都可以在WIN系统和树莓派上运行,控制板也可以自己做,我也可以提供。
回复

使用道具 举报

0

主题

5

帖子

70

积分

注册会员

Rank: 2

积分
70
发表于 2021-7-21 21:25:45 | 显示全部楼层
大海 发表于 2021-7-21 14:48
这两个软件都给出了网站,直接下载就是,都可以在WIN系统和树莓派上运行,控制板也可以自己做,我也可以提 ...

网站英文看不懂
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

大海作坊

Archiver|手机版|小黑屋|大海作坊

GMT+8, 2021-8-3 22:48 , Processed in 0.189318 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表