×

以太网连接CNC铣床或其他机器

消耗积分:0 | 格式:zip | 大小:2.93 MB | 2022-11-07

分享资料个

描述

背景:

CNC Shield为 DIY 社区控制机械提供了一种低成本的选择此扩展板允许您使用Arduino Uno控制 NEMA 步进器,并提供与使用GRBL的大量开源和/或低成本软件的互操作性我喜欢使用Chilipeppr.com来控制我的CNC 铣床以创建原型 PCB。CNC Shield 缺少的一项功能是网络连接。我在车库里经营一个创客空间,有几个工作站来设计和创造东西。WIZ750SR模块的添加使机器能够联网,让我可以从我的所有工作站控制它。这是加强协作和开放创客革命的重要一步。

在这个项目中,我的重点是向您展示如何将 WIZ750SR 连接CNC Shield设备以使其联网。作为奖励,我将分享我的配置设置以及我为将整个组件集成到我的廉价 CNC 铣床中所采取的一些步骤。我使用了许多资源来完成整个升级,因此我将包含它们的链接。请记住... WIZ750SR 和 CNC Shield 组合将与许多其他设备一起使用,例如激光切割机/雕刻机、乙烯基切割机、自动化机器人项目等等!

 
poYBAGNkg66AYH7nAA-6I7IRtmQ965.jpg
WIZ750SR-EVB
 

 

 
poYBAGNkg7GAbdJwAATw00jfSKk610.jpg
3020数控铣床
 

 

 
pYYBAGNkg7aABOCZAAdDhVIGXx0024.jpg
带有 Arduino UNO 的 CNC Shield
 

让我们开始!

首先,我将 WIZ750SR 模块插入 WIZ750SR-EVB 板。这使我可以上传固件并突破接口。下载了 WIZ750SR 模块的最新固件,并使用WIZnet S2E 配置工具上传了它 然后,我将 PC 的 IP 更改为并在 WIZ750SR 模块和我的 PC 之间连接了以太网电缆。启动配置工具后,我单击“搜索”,该模块显示在窗口左侧的列表中。一旦我单击它,就会显示设置。我单击“上传”按钮并选择了我之前下载的固件 bin 文件。一段时间后,更新成功,新固件版本显示在设备信息部分。192.168.11.3

然后我给模块一个与我的网络子网兼容的静态 IP。

我将我的 PC 重新连接到我的网络并将 WIZ750SR 模块插入我的交换机。我使用配置工具再次搜索了该设备,并找到了我的模块。

这一切都在入门指南中进行了解释

我现在可以将串行通信定向到分配的 IP 地址,它将被传递到我连接到 WIZ750SR 的任何设备……非常简单!

 
pYYBAGNkg7mAKx2DAAGjv3UmJD0899.png
WIZnet S2E 配置工具
 

由于我将使用软件来控制寻找串行端口的 CNC 铣床,因此我需要在我的 PC 上设置一个虚拟串行 COM 端口,以路由​​到 WIZ750SR IP 和端口。

WIZnet 使用免费的 WIZVSP(WIZ 虚拟串行端口)应用程序使这一切变得容易。我只是从提供我的 WIZ750SR mac 地址后提供的链接下载它,然后安装它。

 
pYYBAGNkg8CAIfBqAADp0v2bFpo895.png
WIZVSP 初始屏幕
 

我点击“新建连接”按钮,选择COM25作为串口(你可以选择任何你喜欢的未使用的端口号),输入我的WIZ750SR IP地址和端口,点击“添加”,点击“保存列表”,我就完成了!

我检查了我的设备管理器以确保 COM25 列在端口部分。

 
poYBAGNkg8OAZ5WhAACwaBosHTY991.png
装置经理
 

至此,你可以用我的Arduino、CNC Shield、mill代替任何TTL串口通讯设备;一般概念仍然适用。

准备阿杜诺!

下载了 GRBL 库并将其添加到我的 Arduino IDE 中。

 
poYBAGNkg8aATB0uAAEjhPjCar8161.png
已安装 GRBL 库
 

因为我想添加 X、Y 和 Z 归位传感器(在我的情况下是开关),所以如果我不打算使用软件控制的主轴,我读到 GRBL 1.1 版本需要修改源代码。该视频完美地描述了如何进行此更改...

 

然后我将 GRBL 草图上传到我的 Arduino Uno。

这些说明帮助我上传了草图,进行了微步跳线设置,给电机接线,并调整了我的驱动器电流。

在我的例子中,我对所有三个轴使用“高、高、低”来给我“第八步”微步进。

 
pYYBAGNkg8mASzkiAAHwNP6AtkE838.jpg
微步跳线(1/8 步)
 

准备好整合!

 
pYYBAGNkg9KAHfjCABN2fJGKYGQ086.jpg
连接时间
 

我的目标是将 S2E 模块直接连接到我的 Arduino UNO/CNC Shield TTL 引脚,因此我将 EVB 配置为使用以下跳线设置绕过 RS232 转换器模块...

 
pYYBAGNkg9eALuNFAAa1s6Sa_zQ647.jpg
TTL & RS232 跳线
 

我将 WIZ750SR TX 和 RX 引脚分别连接到 CNC Shield RX 和 TX 引脚。

 
pYYBAGNkg9uACsTZAAUdsXwbOhQ442.png
CNC Shield 上的 TX 和 RX 引脚
 

 

 
pYYBAGNkg9-AI7T6AAQCWvODjjk719.jpg
WIZ750SR-EVB 到 CNC 屏蔽连接
 

完成此初始配置后,我想测试以确保 Arduino、CNC Shield、WIZ750SR 和 WIZVSP 都在说话。

为此,我将启动 ChiliPeppr 和它包含的 Serial to JSON 服务器。

 
poYBAGNkg-GAf62wAAB9KP16Qrw515.png
串口 JSON 服务器
 

 

 
pYYBAGNkg-aAIstCAAHxd_fFhGo903.png
JSON服务器运行
 

我看到我的 COM25 端口在 Serial Port JSON Server 屏幕中处于活动状态。

我导航到 ChiliPeppr ( http://chilipeppr.com/jpadie ),一旦工作区加载,我单击右下角 Serial Port JSON Server 小部件中的“刷新”按钮。

 
pYYBAGNkg-mASvwFAACbLWUdwK4947.png
JSON 服务器小部件
 

这将显示我的串行端口 JSON 服务器正在服务的 COM 端口。

然后我选中该框以选择 COM 25。

 
poYBAGNkg-uAEUxxAACNkStHCX8779.png
COM25 已选
 

一旦我选择了 COM25,ChiliPeppr 就连接到 CNC Shield 并成功地用它的输出填充了控制台小部件。

成功!

现在将 CNC Shield、Arduino、限位开关和 WIZ750SR 安装到我的 CNC 铣床中!

首先,我移除了旧的并行控制器。我刚刚拔掉了轴电机连接器和电源连接器。

 
pYYBAGNkg-6ASQefAAD9N0ZfoKk610.jpg
旧控制器
 

拆下后,我从辫子上取下白色塑料连接器,然后戴上标准的杜邦连接器。这是可选的。这是我关注的操作视频...

 

然后我使用环氧树脂将 X 和 Y 限位开关连接到磨机。

 
pYYBAGNkg_OAUEIbAANFnyIX5VE124.jpg
X限位开关
 

 

 
pYYBAGNkg_aAbbIQAANyFktvv0A597.jpg
Y限位开关
 

对于 Z 轴,我需要一个支架来补偿安装区域和电枢之间的距离。为此,我将压接连接器的筒形部分焊接到开关“晶须”上。

 
poYBAGNkg_qAJ-wMAAJz5Nxw7Kw273.jpg
Z限位开关
 

然后,我将每个开关(公共引脚和 NO 引脚)的电线连接到 DB9 连接器。如果需要,这使我可以连接和断开磨机与控制器盒的连接。我将公共引脚的每根电线连接到 DB9 连接器上的单个引脚,因为这些只是 GND 参考。我只是将旧的并行端口孔用于连接器。

 
pYYBAGNkg_2AT9CfAAQPmJZDKFk540.jpg
带限位开关连接器的控制器外部
 

我从控制器外壳背面未使用的孔中取下塑料孔盖,并将圆孔归档成一个矩形,WIZ750SR 上的以太网连接器将适合该矩形。然后在它的两侧钻了两个小孔。

 
poYBAGNkhASAc_2PAAqnq9r2baM240.jpg
方钉,圆孔解决!
 

我还钻了一个孔并安装了一个面板安装桶形连接器,以允许我连接一个双导体探头。

 
pYYBAGNkhAmABec0AAMR8s8_8XI156.jpg
安装孔和桶形连接器
 

安装 WIZ750SR

我用 CAD 设计了一个零件,可以让我将 WIZ750SR 牢固地安装到外壳墙上并进行 3D 打印。STL 文件已附加到此项目供您使用。

 
poYBAGNkhA2AZZ5zAAOrX7_2QeE942.jpg
WIZ750SR 安装块
 

 

 
poYBAGNkhBOAQeRRAANL4N55d38215.jpg
已连接 WIZ750SR 安装块
 

 

 
poYBAGNkhBeAP3kiAASefJiIig8716.jpg
外壳完成!
 

然后,我用尼龙支架和螺钉将 Arduino/CNC Shield 堆栈连接到控制器外壳内。

 
poYBAGNkhBuAMz4MAAU1F1y992k585.jpg
所有连接
 

我还用一个旧的桶形插头制作了一根电源线,从磨机电源板为 Arduino 供电。

 
poYBAGNkhB-AYYmKAAUybTHjka8930.jpg
电源尾纤
 

 

 
poYBAGNkhCKAZOCyAAN3LHrDrYE250.jpg
电源供电
 

这是显示所有连接方式的接线图。

 
poYBAGNkhCiAF1c_AAmm10bCr7Q415.png
接线图
 

 

 

虽然这个集成项目已经完成,但我计划开始另一个项目,该项目将涉及修改 WIZ750SR 固件以运行 websocket,并允许我直接从 ChiliPeppr 连接到 WIZ750SR,而无需 JSON 服务器或虚拟串行端口功能。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !

'+ '

'+ '

'+ ''+ '
'+ ''+ ''+ '
'+ ''+ '' ); $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code ==5){ $(pop_this).attr('href',"/login/index.html"); return false } if(data.code == 2){ //跳转到VIP升级页面 window.location.href="//m.lene-v.com/vip/index?aid=" + webid return false } //是会员 if (data.code > 0) { $('body').append(htmlSetNormalDownload); var getWidth=$("#poplayer").width(); $("#poplayer").css("margin-left","-"+getWidth/2+"px"); $('#tips').html(data.msg) $('.download_confirm').click(function(){ $('#dialog').remove(); }) } else { var down_url = $('#vipdownload').attr('data-url'); isBindAnalysisForm(pop_this, down_url, 1) } }); }); //是否开通VIP $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code == 2 || data.code ==5){ //跳转到VIP升级页面 $('#vipdownload>span').text("开通VIP 免费下载") return false }else{ // 待续费 if(data.code == 3) { vipExpiredInfo.ifVipExpired = true vipExpiredInfo.vipExpiredDate = data.data.endoftime } $('#vipdownload .icon-vip-tips').remove() $('#vipdownload>span').text("VIP免积分下载") } }); }).on("click",".download_cancel",function(){ $('#dialog').remove(); }) var setWeixinShare={};//定义默认的微信分享信息,页面如果要自定义分享,直接更改此变量即可 if(window.navigator.userAgent.toLowerCase().match(/MicroMessenger/i) == 'micromessenger'){ var d={ title:'以太网连接CNC铣床或其他机器',//标题 desc:$('[name=description]').attr("content"), //描述 imgUrl:'https://'+location.host+'/static/images/ele-logo.png',// 分享图标,默认是logo link:'',//链接 type:'',// 分享类型,music、video或link,不填默认为link dataUrl:'',//如果type是music或video,则要提供数据链接,默认为空 success:'', // 用户确认分享后执行的回调函数 cancel:''// 用户取消分享后执行的回调函数 } setWeixinShare=$.extend(d,setWeixinShare); $.ajax({ url:"//www.lene-v.com/app/wechat/index.php?s=Home/ShareConfig/index", data:"share_url="+encodeURIComponent(location.href)+"&format=jsonp&domain=m", type:'get', dataType:'jsonp', success:function(res){ if(res.status!="successed"){ return false; } $.getScript('https://res.wx.qq.com/open/js/jweixin-1.0.0.js',function(result,status){ if(status!="success"){ return false; } var getWxCfg=res.data; wx.config({ //debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 appId:getWxCfg.appId, // 必填,公众号的唯一标识 timestamp:getWxCfg.timestamp, // 必填,生成签名的时间戳 nonceStr:getWxCfg.nonceStr, // 必填,生成签名的随机串 signature:getWxCfg.signature,// 必填,签名,见附录1 jsApiList:['onMenuShareTimeline','onMenuShareAppMessage','onMenuShareQQ','onMenuShareWeibo','onMenuShareQZone'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 }); wx.ready(function(){ //获取“分享到朋友圈”按钮点击状态及自定义分享内容接口 wx.onMenuShareTimeline({ title: setWeixinShare.title, // 分享标题 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享给朋友”按钮点击状态及自定义分享内容接口 wx.onMenuShareAppMessage({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 type: setWeixinShare.type, // 分享类型,music、video或link,不填默认为link dataUrl: setWeixinShare.dataUrl, // 如果type是music或video,则要提供数据链接,默认为空 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ”按钮点击状态及自定义分享内容接口 wx.onMenuShareQQ({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到腾讯微博”按钮点击状态及自定义分享内容接口 wx.onMenuShareWeibo({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ空间”按钮点击状态及自定义分享内容接口 wx.onMenuShareQZone({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); }); }); } }); } function openX_ad(posterid, htmlid, width, height) { if ($(htmlid).length > 0) { var randomnumber = Math.random(); var now_url = encodeURIComponent(window.location.href); var ga = document.createElement('iframe'); ga.src = 'https://www1.elecfans.com/www/delivery/myafr.php?target=_blank&cb=' + randomnumber + '&zoneid=' + posterid+'&prefer='+now_url; ga.width = width; ga.height = height; ga.frameBorder = 0; ga.scrolling = 'no'; var s = $(htmlid).append(ga); } } openX_ad(828, '#berry-300', 300, 250);