【系列专栏】:博主结合工作实践输出的,解决实际问题的专栏,朋友们看过来!
长期持续带来更多案例与技术文章分享;
欢迎商业项目咨询,10年+软硬全栈内功,助力解决您的尊贵需求。
——————————————————————————————————
目录
我们前面的博文主要学习了草图设计以及特征成型方面的内容,但是内容始终是在电脑里,所以这次博文来个实战,自己设计个手机支架,并用3D打印技术打印个实物出来,整个过程下来,对我们前面学习的知识起到了很好的巩固作用,也会激起我们继续深入学习的兴趣,此外,本次博文还会涉及到一些之前没有接触到的功能,如草图中的文本功能,样条曲线功能,草图图片功能、切除特征中选择轮廓功能、添加材质功能、评估栏中的质量属性与测量功能。
1)新建一个零件,并保存文件
2)前视基准面绘制草图
草图尺寸如下:

草图的绘制步骤就不赘述了,整个过程主要是先画出轮廓,再标注尺寸,直接上绘制过程视频:

3)拉伸凸台基体
点击拉伸凸台基体,方向选择两侧对称,宽度可设置为80mm,根据自己的手机宽度设置。

4)修改整体形状为金字塔形状
——草图绘制,先在左侧画一个要切除的轮廓,选择镜像轴,然后标注尺寸
——拉伸切除,选择完全贯穿两者

5)预留手机充电线插口
——在放置手机那个平面绘制草图,标注尺寸,然后用切除特征进行切除
——拉伸切除,第一个方向选择成型到一面,第二个方向选择完全贯穿

6)给模型增加圆角、倒角
——模型下平面两个脚加圆角,10mm(这个根据自己喜好设置)
——顶侧和后侧两个面相交处,内部加倒角,增加材料,提高强度,外侧加圆角,不易划手
——其他的边角部位不一一列了,根据自己的喜好设置即可。

7)绘制底座支点
因为3D打印底座不一定平整,直接用这个模型平面打印的话,打完放在桌面上可能会翘起来,而且这个大平面从3D打印机上取下来也不是很方便,所以我们在底座上画3个支点,三点确定一个平面,这样的话放在桌面上也不会翘。
——注意,按住Ctrl,选择圆和圆弧,然后在左侧属性栏中设置同心圆

8)支架后侧挖槽去除材料
支架后侧受力较小,可以去除一些材料,减轻支架重量。
——画一条构造线,然后画一个直槽口,然后标注尺寸,再拉伸切除

9)添加草图文本
——草图绘制,点击需要绘制的平面,点击文本,在属性栏中输入文字,此时零件视窗中可见
——鼠标拖拽改变文字的位置,同时,属性栏中可以选择文字的字体、大小
——还可以通过拉伸切除,将文字像内稍微切除一点(可设置0.3mm),这样便可以看到了

10)边线添加倒角
为了让整个外形看起来更圆润,我们在边线添加1mm的倒角

11)添加材质,查看质量
——设计树点击材质,右键编辑材料,里面有很多预设的材质,我们后面3D打印使用的是PLA材料,软件里面没有,选择一个相近的POM材料,PLA的质量密度是1.26kg/m^3,POM的是1.39kg/m^3
——设置好材料后,点击评估中的质量属性,可以查看到整体模型的质量

12)测量模型
通过评估中的测量功能,可以测量模型的尺寸参数

13)保存用于打印的STEP格式文件
模型完成了,接下来我们导出用于打印的step格式文件或者stl格式文件。

博主自己有一台3D打印机,所以这里就自己打印了,你也可以找第三方平台进行打印,博主用过的一些平台如:未来工厂、魔猴3D打印等,这些平台可以自己上传step文件,然后自主选择材料进行打印,当然,你也可以淘宝上找一些私人作坊等打印,推荐还是规模比较大的第三方平台靠谱些。
因为3D打印用的材料打印过程中会有气味,现在家里实在不方便打印,等过段时间打印完了再把实物图片补充进来,未完待续:)分享下打印过的德国牧羊犬的一张美照。

——20221129今天因为YQ在家办公,有时间把这个之前画好的手机支架模型打印验证下了。
1)打印切片设置
博主用的3D打印机,自带配套的切片软件,需要使用stl格式的文件,这里设置层高0.2mm,打印填充密度40%,然后得到切片文件,打印层高最低可以设置0.1mm,层高数值越小,打印的越细腻,但是打印的时间也越长,博主设置完参数后,切片显示所需打印时间8h多:

3D打印切片的方向放置也是需要注意的细节,若是成片大面积的一侧放在最下层,打印完取模会很吃力,粘在下面很牢固的;另外,也要看自己模型的结构,如博主这个模型,中间有很多镂空的地方,在打印设置时就要添加支撑,否则空中楼阁是没法打印的上的。
2)打印机器调节
注意几个细节:
- A.使用的PLA材料,打印机的面板温度和喷头温度分别设置为60℃和200℃,特别是喷头的温度,不能设置过高,否则会造成材料碳化,堵塞喷头;
- B.开始打印前,要做好面板的调平,调平的标准是喷头和面板间能够插入一张A4纸,拽A4纸时稍微稍微有点阻塞力就行了;注意不要一次调节,要多调几次,直至几次后,机器指示的5个调平参考点都是这种调平标准;这一步调平很重要,调平不好,打印的模型打一会就发现可能上面就粘不住了,建议每次使用机器打印前都做一次调平;
- C.打印过程中若发现PLA打印材料意外断掉,可以及时暂停,将PLA打印材料重新插入继续打印。
3)打印过程
从打印开始到打印结束,抓拍了几张照片,在此展示下打印过程:

实物展示:


本次博文通过一个手机支架的设计,把前面所学的内容全部串联了起来,并用3D打印技术打印个实物出来,你会发现这个过程很有意思,好了,后面把最终打印的实物也补充进来了,祝大家好运。
作于202210241230,已归档
———————————————————————————————————
本文为博主原创文章,未经博主允许不得转载!
若本文对您有帮助,轻抬您发财的小手,关注/评论/点赞/收藏,就是对我最大的支持!
祝君升职加薪,鹏程万里!
我正在学习如何使用Nokogiri,根据这段代码我遇到了一些问题:require'rubygems'require'mechanize'post_agent=WWW::Mechanize.newpost_page=post_agent.get('http://www.vbulletin.org/forum/showthread.php?t=230708')puts"\nabsolutepathwithtbodygivesnil"putspost_page.parser.xpath('/html/body/div/div/div/div/div/table/tbody/tr/td/div
我有一个Ruby程序,它使用rubyzip压缩XML文件的目录树。gem。我的问题是文件开始变得很重,我想提高压缩级别,因为压缩时间不是问题。我在rubyzipdocumentation中找不到一种为创建的ZIP文件指定压缩级别的方法。有人知道如何更改此设置吗?是否有另一个允许指定压缩级别的Ruby库? 最佳答案 这是我通过查看rubyzip内部创建的代码。level=Zlib::BEST_COMPRESSIONZip::ZipOutputStream.open(zip_file)do|zip|Dir.glob("**/*")d
类classAprivatedeffooputs:fooendpublicdefbarputs:barendprivatedefzimputs:zimendprotecteddefdibputs:dibendendA的实例a=A.new测试a.foorescueputs:faila.barrescueputs:faila.zimrescueputs:faila.dibrescueputs:faila.gazrescueputs:fail测试输出failbarfailfailfail.发送测试[:foo,:bar,:zim,:dib,:gaz].each{|m|a.send(m)resc
很好奇,就使用rubyonrails自动化单元测试而言,你们正在做什么?您是否创建了一个脚本来在cron中运行rake作业并将结果邮寄给您?git中的预提交Hook?只是手动调用?我完全理解测试,但想知道在错误发生之前捕获错误的最佳实践是什么。让我们理所当然地认为测试本身是完美无缺的,并且可以正常工作。下一步是什么以确保他们在正确的时间将可能有害的结果传达给您? 最佳答案 不确定您到底想听什么,但是有几个级别的自动代码库控制:在处理某项功能时,您可以使用类似autotest的内容获得关于哪些有效,哪些无效的即时反馈。要确保您的提
假设我做了一个模块如下:m=Module.newdoclassCendend三个问题:除了对m的引用之外,还有什么方法可以访问C和m中的其他内容?我可以在创建匿名模块后为其命名吗(就像我输入“module...”一样)?如何在使用完匿名模块后将其删除,使其定义的常量不再存在? 最佳答案 三个答案:是的,使用ObjectSpace.此代码使c引用你的类(class)C不引用m:c=nilObjectSpace.each_object{|obj|c=objif(Class===objandobj.name=~/::C$/)}当然这取决于
我正在尝试使用ruby和Savon来使用网络服务。测试服务为http://www.webservicex.net/WS/WSDetails.aspx?WSID=9&CATID=2require'rubygems'require'savon'client=Savon::Client.new"http://www.webservicex.net/stockquote.asmx?WSDL"client.get_quotedo|soap|soap.body={:symbol=>"AAPL"}end返回SOAP异常。检查soap信封,在我看来soap请求没有正确的命名空间。任何人都可以建议我
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。
我在我的项目目录中完成了compasscreate.和compassinitrails。几个问题:我已将我的.sass文件放在public/stylesheets中。这是放置它们的正确位置吗?当我运行compasswatch时,它不会自动编译这些.sass文件。我必须手动指定文件:compasswatchpublic/stylesheets/myfile.sass等。如何让它自动运行?文件ie.css、print.css和screen.css已放在stylesheets/compiled。如何在编译后不让它们重新出现的情况下删除它们?我自己编译的.sass文件编译成compiled/t
我想将html转换为纯文本。不过,我不想只删除标签,我想智能地保留尽可能多的格式。为插入换行符标签,检测段落并格式化它们等。输入非常简单,通常是格式良好的html(不是整个文档,只是一堆内容,通常没有anchor或图像)。我可以将几个正则表达式放在一起,让我达到80%,但我认为可能有一些现有的解决方案更智能。 最佳答案 首先,不要尝试为此使用正则表达式。很有可能你会想出一个脆弱/脆弱的解决方案,它会随着HTML的变化而崩溃,或者很难管理和维护。您可以使用Nokogiri快速解析HTML并提取文本:require'nokogiri'h
我想为Heroku构建一个Rails3应用程序。他们使用Postgres作为他们的数据库,所以我通过MacPorts安装了postgres9.0。现在我需要一个postgresgem并且共识是出于性能原因你想要pggem。但是我对我得到的错误感到非常困惑当我尝试在rvm下通过geminstall安装pg时。我已经非常明确地指定了所有postgres目录的位置可以找到但仍然无法完成安装:$envARCHFLAGS='-archx86_64'geminstallpg--\--with-pg-config=/opt/local/var/db/postgresql90/defaultdb/po