×

Arduino带锯锯片张力计

消耗积分:0 | 格式:zip | 大小:0.01 MB | 2022-12-16

梁宏满

分享资料个

描述

设置正确的刀片张力并不容易。带锯是锯的天后!如果张力太小,锯片开始颤动,切口变得不干净,需要额外打磨。如果张力过高,则会降低刀片的使用寿命。剩下什么?每次都反复尝试,直到找到正确的设置?谷歌搜索带来了希望。我并不孤单。有很多用于更换、对齐和张紧刀片的技巧。

一个最受关注的技巧是调整张力,使刀片听起来像在低音吉他上弹奏的“E”。废话——不幸的是,我家里没有贝斯吉他来进行现场试验(空气吉他也不够用)。幸运的是我的女儿有一个键盘,我可以听一个“E”。不幸的是,这对我一点帮助都没有。我可能还不够音乐!

从技术角度来看,刀片张力最终必须是可测量的。在另一次谷歌搜索之后,很明显这是真的,一个好的设置是在 250 – 300 N/mm² 之间。不幸的是,正确的测量设备并不便宜。它的成本约为 300 欧元!这对我来说太多了。这些测量装置以机械方式工作,并且可能显示线性膨胀。因此,外壳由金属制成,并且必须非常精确地制造。我必须有另一种解决方案。所以只是以某种方式测量力并用微控制器评估它?

FSR – 力感应电阻器

一种方法是使用 FSR(力感应电阻器)测量力。它们由聚合物厚膜 (PTF) 组成,随着施加在活性表面上的力的增加,电阻会降低。FSR 不适用于称重传感器或应变仪等精密测量。然而,它们仍然很便宜,大约 5 欧元并且易于使用。

这种方法的唯一缺点是不能像使用专业设备那样测量绝对力。必须首先确定合适的刀片张力作为模板。

建造房屋

在 FSR 的第一次测量实验明确后,一个条件就是一个好的外壳。在这里,成本不应失控。这就是我选择 3D 打印变体的原因。

pYYBAGOYrjSAFocSAABlwDmkN7Q688.jpg
FSR、Arduino 和电源的外壳。刀片固定在可移动的支架上。
 

在左侧,松散地插入了用于锯带的可移动支架。它推动了 FSR 上的一个引脚。FSR 安装在机箱中。

pYYBAGOYrjaAWqarAAAj9VHwiUs341.jpg
具有确定的力感应电阻器压面的刀片支架
 

在外壳内,一个 Arduino Nano 工作。它以其小尺寸运行良好,并接管了 FSR 数据的测量和评估。它由四节 AAA 电池供电。

显示刀片张力

刀片张力显示器也必须显示其测量值。非常适合这一点的是非常小的 0.96 英寸 128 × 64 像素显示器。可以通过 I2C 连接到 Arduino。而且价格也非常低。

显示器直接安装在 Arduino Nano 下方的外壳中。这样通过 Arduino 的连接就可以在没有大环路和电缆混乱的情况下安装。

0.96
0.96"显示器在外壳中的位置
 

显示器旁边有一个按钮和显示器的开/关开关。

成分

刀片张力测量装置由以下部件组成:

  • Arduino纳米
  • 力感应电阻 FSR 5 kg
  • 0.96" 128 × 64 像素显示器,带 I2C 端口
  • 按钮(6 × 6 毫米)
  • 开/关
  • 电源 4 节 AAA 电池和连接夹
  • 2 个电阻 10 kOhm

FSR 通过一个 10k 下拉电阻连接到引脚 A1。128 × 64 显示器的 4 个引脚(SCL、SDA、VCC 和 GND)直接连接到 Arduino。该按钮还通过一个下拉电阻连接到引脚 A2。

I2C 显示器与 Arduino Nano 建立了这种连接:

  • 地 - 地
  • VCC - 5V
  • SDA-A5
  • SCL - A4
poYBAGOYrjuADQItAADDLl1yz98183.jpg
带Arduino、FSR、显示器、按钮、开/关开关和电源的张力计威廉希尔官方网站 图
 

集会

组装大约需要 2 个小时。按照这个顺序,一切顺利:

  • 将电缆焊接到开/关按钮并用热胶固定按钮
  • 胶水和焊接按钮的方法相同
  • 插入显示器并将电缆焊接到显示器上,棒也是用热胶
  • 将所有电线焊接到 Arduino Nano 并添加上拉电阻
  • 将 FSR 推入测量端口并用热胶粘合,然后将电线焊接到 Arduino
  • 然后在外壳上添加带有液体胶水的电池夹,并将 + 连接到 Arduino VIN 和 - 连接到 GND
  • 穿上Arduino Nano并用小螺丝固定
  • 测试一下
  • 然后用一个螺丝盖上盖子
pYYBAGOYrj-ASjOxAACyDMg0Tkc756.jpg
 
poYBAGOYrkGAWrlBAADZ0gZqPek183.jpg
所有组件都已连接
 

仪表的功能

打开 Arduino Nano 后,立即开始测量力感应电阻器上的力。测量值每秒更新一次并显示在屏幕上。

Arduino 的模数转换器将 FSR 的模拟读数表示为 0 到 1023 之间的一个数字。为了更好地估计这个数字,将以千克为单位显示和转换。

使用按钮,您可以在不同的锯片之间切换。接下来可以在 Arduino 草图中添加单个锯片(带有名称、最小和最大限制)。

pYYBAGOYrkSAN1WjAACuYZkf-6w910.jpg
 

如何测量刀片张力?做到这四个步骤。

  • 像往常一样更换锯片并对齐。定位带锯(或其他工具)的纵向导向
poYBAGOYrkeASVO9AABgvhFRrKQ455.jpg
 
  • 将张力计放在纵向导向和左带锯中心之间。张力计的支架应缓慢而轻松地滑入锯片。
pYYBAGOYrkuAFIwXAAA_0kSmTAA826.jpg
 
  • 在测量装置的底部和纵向导轨之间引入一个距离垫片。一个好的值是 5 毫米(取决于 FSR)。使锯片被拉伸定义。
poYBAGOYrk6AVvDnAAB0NuzqoQM400.jpg
 
  • 读取设备上的测量值。最多等待 10 到 20 秒,直到建立一个恒定值。根据测量值,现在必须放松或增加刀片张力。然后可以进行新的测量。
pYYBAGOYrlGAZAEQAAB6ok0XmpI082.jpg
 

编码 Arduino 草图

Arduino 草图使用库lcdgfx Alexey Dynda 与显示器进行通信。因此,必须先下载并设置它。

#include "lcdgfx.h"

DisplaySSD1306_128x64_I2C display(-1);
//DisplaySSD1306_128x64_SPI display(-1,{-1, 0, 1, 0, -1, -1); // Use this line for nano pi (RST not used, 0=CE, gpio1=D/C)
//DisplaySSD1306_128x64_SPI display(3,{-1, 4, 5, 0,-1,-1});   // Use this line for Atmega328p (3=RST, 4=CE, 5=D/C)
//DisplaySSD1306_128x64_SPI display(24,{-1, 0, 23, 0,-1,-1}); // Use this line for Raspberry  (gpio24=RST, 0=CE, gpio23=D/C)
//DisplaySSD1306_128x64_SPI display(22,{-1, 5, 21, 0,-1,-1}); // Use this line for ESP32 (VSPI)  (gpio22=RST, gpio5=CE for VSPI, gpio21=D/C)
// composite_video_128x64_mono_init(); // Use this line for ESP32 with Composite video support

在设置部分,定义了 FSR 和按钮的两个输入引脚,并使用 Font8×16 准备显示。

void setup()
{
Serial.begin(9600);
pinMode(fsrPin, INPUT);
pinMode(buttonPin, INPUT);
display.setFixedFont(ssd1306xled_font8x16);
display.begin();
display.clear();
}

在程序部分循环中,每秒测量一次力。按下按钮时,锯片的存储设置在限值之间更改。但以后更多。

设置最大力

在 Arduino Sketch 中,力的测量值被转换为重量。这意味着功率显示准确,可能会确定最好的尝试。

在本例中,传感器的最大作用力为 5 kg。传感器在 3.3 V 电压下工作。这些对应于大约 5 kg。在威廉希尔官方网站 图中是用分压器和5V进行的。使用 3.3 V 作为最大电压时,这将无法准确工作。可以改进转换,但如果有一个测试重量 - 最好是 5 kg - 确定显示的结果。测量的最大值可以在 Arduino 草图中指定。

float fsrMax = 5.0; //Maximum (measured) value of FSR in Kilogramm

执行功能测试

不幸的是,这种张力计不能测量绝对值。所以我们必须设置一个完美的安装刀片并从中获得测量的力。这对于我们使用的每种刀片类型都是必要的。这是用我的带锯进行的一系列测量。

pYYBAGOYrlOAeinIAABOUv3Ltzo987.jpg
 

设置限制

从实验中可以清楚地看出最佳张紧锯片必须具有的限制。在我选择的 5 毫米垫片中,刀片的范围很窄。一组最佳锯片的确定限制可以存放在 Arduino 草图中。每个刀片都有一个名称和一个最小值和最大值。

这与变量BladeName[]、bladeMin[]、bladeMax[]一起存储在草图中

对于我的锯子和刀片,我已经从我的测试中设置了这些值。

poYBAGOYrlWAHmhhAABVP0D_d2o532.jpg
 

它们也存储在 Arduino 草图中。

String bladeName[4] = {"No.01-03mm","No.02-06mm","No.03-12mm","No.04-16mm"};
int bladeMin[4] =     { 430,         450,         470,          470};
int bladeMax[4] =     { 470,         470,         510,          510};

在对张力计进行了所有测试之后,我需要特别是对于我最喜欢的刀片,6 毫米宽,没有太多帮助。我很好奇这会如何寻找未来的下一个变化,以及我的张力计有什么好的服务。

因此,带锯条的设置不再与音乐有任何关系!

有趣的是,这是错误的!FSR 开发的绊脚石可以追溯到 Fleetwood Mac 的 Mick Fleetwood。他在 1980 年代中期为他的电子鼓寻找传感器,但没有找到。这是与朋友一起开发力感应电阻器的开始。所以,锯带的张力在某种程度上仍然是一个音乐主题。

您始终可以在techpluscode.de上下载当前版本

用张力计玩得开心!

 


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

评论(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.obk20.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:'Arduino带锯锯片张力计',//标题 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.obk20.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);