- 1、本文档共5页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Marlin固件中需要将从Gcode中获取的待打印器件的3D模型中的坐标,转换为三角洲3D打印机的三个电机轴上的坐标。
电机轴指的是三个电机对应的线轨。
电机轴坐标指的是滑块在电机轴上的位置。
笛卡尔空间坐标是指从Gcode中获取的待打印器件的3D模型中的坐标。
实现坐标转换功能的函数为calculate_delta()。
变量中的tower指的是电机轴,tower1,tower2和tower3的位置如下图所示
变量delta_tower1_x为电机轴tower1在笛卡尔坐标系中坐标x的值,
变量delta_tower1_y为电机轴tower1在笛卡尔坐标系中坐标y的值,
变量delta_tower2_x为电机轴tower2在笛卡尔坐标系中坐标x的值,
变量delta_tower2_y,delta_tower3_x,delta_tower3_y类似。
这三个电机轴转换到笛卡尔坐标系后的坐标如代码所示,原理如下图
这是三角洲3D打印机抽象的俯视图。点tower1,tower2和tower3分别为三个电机轴(因为是俯视图,所以在图中表示为一个点),这三个点构成一个等边三角形,内切圆的圆心为点z,内切圆的半径为delta_radius。
笛卡尔坐标系的原点为等边三角形内切圆的圆心,即点z;x轴穿过原点,并且与tower1和toweer2组成的线段平行;y轴经过tower3和原点;z轴经过原点并且与tower3平行。
电机轴tower1转换到笛卡尔坐标系的坐标x为点M,坐标y为点N。
电机轴tower2转换到笛卡尔坐标系的坐标x为点P,坐标y为点N。
电机轴tower3转换到笛卡尔坐标系的坐标x为0,坐标y为tower3本身。
M的坐标为(-sin60 * delta_radius, 0),
N的坐标为(0, -cos60 * delta_radius),
P的坐标为(sin60 * delta_radius, 0)
所以,tower1在笛卡尔空间坐标系中的x坐标delta_tower1_x= -sin60 * delta_radius,依次类推
delta_tower1_y = -cos60 * delta_radius ,
delta_tower2_x = sin60 * delta_radius ,
delta_tower2_y = -cos60 * delta_radius ,
delta_tower3_x = 0 ,
delta_tower3_y = delta_radius ,
再来看下代码是不是这样的。
回过头来看看是怎么计算电机轴上滑块位置的。假设有下图
点A为喷头的位置,
点B为点A投影到电机轴tower2(也是平行于笛卡尔坐标系的Z轴),
点C为滑块的位置,
点D为点A投影到笛卡尔坐标系的xy平面的点,
点E为电机轴tower2与笛卡尔坐标系的xy平面相交的点。
其中BE就是打印物品笛卡尔坐标系的z值,AC为推杆长度,AB垂直于BC,根据直角三角形斜边平方等于两直角边平方之和,即
AC*AC = AB *AB + BC*BC
其中AC已知,为推杆长度,AB可以通过喷头在笛卡尔坐标系的X坐标和Y坐标算出来,所以BC也就可以算出来了。
AB = DE
XY平面如下所示
点D为前一个图点A的投影,点E为点B的投影,点A为喷头的坐标,那么点D的xy坐标也是喷头的xy坐标,是已知的。点E电机轴tower2在XY平面的点,坐标也是已知的,点K和I分别为点E在X和Y轴的投影。
那么DH = OK - OG ,即E的x坐标 - 喷头的x坐标
EH = FI = OI - OF , 即E的y坐标 - 喷头的y坐标
DE*DE = EH*EH + DH*DH
综上所述,滑块的z轴坐标
= BE + BC
=喷头的z坐标 + BC
=喷头的z坐标 + sqrt(推杆长度*推杆长度 - AB*AB)
=喷头的z坐标 + sqrt(推杆长度*推杆长度 - (EH*EH + DH*DH))
=喷头的z坐标 + sqrt(推杆长度*推杆长度 - ((tower2的y坐标 - 喷头的y坐标) * (tower2的y坐标 - 喷头的y坐标) + (tower2的x坐标 - 喷头的x坐标) * (tower2的x坐标 - 喷头的x坐标)))
对应代码为
delta[TOWER_2] = sqrt(delta_diagonal_rod_2_tower_2
- sq(delta_tower2_x - cartesian[X_AXIS])
- sq(delta_tower2_y - cartesian[Y_AXIS
您可能关注的文档
- Java程序设计课程设计报告音乐播放器.docx
- java程序语言中的web开发用什么框架呢.doc
- J1939汽车CAN总线协议中文.docx
- java对象的序列化和反序列化详细介绍.doc
- JAVA例95-97及实验44-49.docx
- Js问题定位调试.docx
- JYYH-HB-02-信息安全管理体系手册.docx
- Java调整格式日志输出.doc
- K12跨文化管理.doc
- KNFN828KNE真空泵试用情况.docx
- 护理学相关知识复习测试卷共三套.doc
- 护理学相关知识复习试题含答案(3套).doc
- 2025届高考语文复习:补写句子 课件.pptx
- 气压带和风带对气候的影响(第1课时)(教学设计).docx
- 气压带和风带对气候影响教学设计2024-2025学年高中地理人教版(2019)选择性必修1.docx
- 《故都的秋》课件 2024-2025学年统编版高中语文必修上册.pptx
- 《屈原列传》课件 2024-2025学年统编版高中语文选择性必修中册.pptx
- 《巫溪家乡文化》课件-2024-2025学年高一语文同步备课课件(统编版必修上册).pptx
- 《苏武传》课件 2023-2024学年统编版高中语文选择性必修中册.pptx
- 郑州中控ZKTime8.3 WEB考勤软件培训文档.pptx
文档评论(0)