3d打印利器FreeCAD入门教程之三----3d文字雕刻篇

本节内容

讲述3D打印中的模型,如何添加文字的雕刻效果,及FreeCAD的相关ShapeString, extrude等工具的应用技巧

利用ShapString工具雕刻文字的过程

先看利用ShapString工具挖空后效果图
字体挖空效果

然后我们再一步步往后看

创建基本形状

我们要先来创建一个待雕刻的立方体:

  • 启动freecad创建新文档,切换至‘part’工作台
  • 通过点击工具栏’create a cube solid’插入一个立方体
  • 确保树视图中的立方体被选中,通过数据选项卡中的属性视图,将width改为31毫米,
    现在,我们可以画一个矩形,通过选择矩形工具,点击2个角点。你可以在任何地方把两个点放下,然后对应的地方就会被放置这个矩形。
  • 点击’chamfer the selected edges of a shape’,然后选择Edge6,指定‘5mm’的length后关闭’tasks’选项页

立方体的效果如下图

使用‘Draft’工作台的‘Shape String’工具来插入文本

  • 切换到‘Draft’工作台
  • 确保‘tree view’视图没有选中任何物体,触发工具栏上的‘Current working plane’按钮并选择XY (Top)
  • 点击工具栏的‘S’型图标(Creates text string in shapes)来创建文字形状,后面一路修改输入值一面回车(Enter)往下走就行
  • 接下来的输入框中,“Global X/Y/Z”均改成’0’ ,字串就填’FreeCAD’,height填5mm,tracking默认值0,字体输入框需要去选字体文件,直接去C://windows/fonts下选取自己喜爱的字体,如果不能操作那个目录可以拷贝一份出来再选取

创建3D效果的文本

  • 切换回part工作台

  • 确保树视图中的 “Shapestring” 对象被选中(可以通过space键来切换对象的显示和隐藏来确认是否选中)

  • 使用凸台工具(Extrude a selected sketch)来将文本变成3D形体,参数Along=1mmm,选中’Create a solid’项,点击‘ok’完成

插入定位用的sketch图形

  • 切换至‘Sketcher’工作台

  • 确定"chamfer"对象在tree view中被选中(space键控制显示和隐藏来确认)

  • 选中之前‘chamfer’操作中出现的那个斜面

  • 点击工具栏上的‘create a new sketch’来插入一个新的sketch,当然这个sketch是基于刚刚被选中的斜面来绘制的

  • 画一条横线,像下图那样 (水平的就行,长度不重要 …),然后根据下图中的示例来给定相应的距离约束

在3D空间里给3D文本进行定位

  • 确保"Extrude"在tree view中被选中(space键控制显示和隐藏来确认)

  • 属性中的data选项页中点击Placement项的value栏,点击’…'的按钮切换去‘Tasks’标签页去更新位置信息

  • 选中Apply incremental changes to object placement项,然后Axis下拉框中设置Z=90°,Y=45°, 点击ok完成

  • 切换回‘Draft’工作台,工具栏中的’Draw Style’切换到‘Wireframe’模式

  • 选中"Extrude"对象,点选工具栏中的十字形的move工具,在3d视图下选中‘Etrude’对象的左上角,再点击sketch上的那个约束点,就可以完成字体对斜面的定位

创建雕刻的文本

  • 切换回’Part’工作台,使用"As is"视图模式
  • tree view上选中’ Chamfer’对象,然后再选中3D 文本(“Extrude”)
  • 点击’‘进行布尔运算来减去文字的轮廓
  • 按Space键将 “Sketch” 隐藏掉
  • 一个被雕刻的斜坡长方体已经完成,效果图可以见文首的图片

后续扩展

  • 再加一个补充说明,刚才我们插入的字体是英文的,如果要用中文也是可以的,只需要找到你所需要的中文字体文件加载进来,这些都可以在你已经完成的ShapeString对象属性里进行更改,马上就可以看到相应的效果出现.
  • 关于FreeCAD的一些常见建模的概念及方式的主题,点击此处获取更多信息,敬请关注.

声明:文章部分内容出自英文直译,并由作者本人的亲历及经验总结,个博地址见:
http://limuqiao.com/3d/FreeCAD-zh-base-shape-string/

OTTO机器人是什么

OTTO是完全开源的,任何人都可以做的交互式机器人. 她与Arduino控制系统兼容,其主要外观材料可以直接3d打印而来, 甚至可以说她是为培养孩子们学习机器人的热情而建造的。 OTTO的灵感来源于另一个称为Zowi的两足机器人。

元件准备

图片参考项目数量购买渠道
Arduino or Genuino Nano V3.0 ATmega3281Dfrobot
Arduino Nano扩展板1Dfrobot
HC-SR04超声波传感器1Dfrobot
5v无源蜂鸣器4[Dfrobot]
母对母杜邦线6Dfrobot
5号AA电池4Dfrobot
两枚装5号电池的电池盒2Dfrobot
OTTO的外观3D打印一套1Dfrobot

OTTO外观打印机的说明:你可以从这里下载3d打印机的源文件自行打印,也可以找3d打印商进行打印机购买.如果自行打印,其打印设置要求:精度-0.15mm, 填充密度-20%

组装


躯体部位鸵机的安装

拿来两个鸵机,按照图中所示,把他们安装到指定的位置,用螺丝刀固定好

双腿安装到躯体上

先把双腿部件连接到身体上微型鸵机处,要确保腿部相对于身体能够向左右两边各自转动90度。在对齐腿部之后用螺丝刀通过腿内部的小孔固定好.此处需注意将腿部顶端上的穿线孔与躯体下方的穿线孔靠近,使得稍后可以流畅穿线

腿部鸵机的安装

把微型鸵机放到腿部,可以把鸵机线绕几圈,然后如图示把它推进内部,并将鸵机的引线从躯体穿线孔穿出 如果困难的话,也许需要用刀清洁一下相关的区域。像检查腿部的活动方向一样,你也看下鸵机至少可以朝左右两边各旋转90度。检查后要使用小螺丝来固定它,同样地,另一只脚也是同样的步骤

双脚安装到腿部

按照图示的方式来安装,但要注意把电线放置到躯体内部的槽位并通过腿部的小孔穿出来。一旦确定好他们的位置,就可以用螺丝刀从背后固定好她们。

头部的组装

将超声波传感器推到眼睛的极限处,将Arduino nano安装到扩展板之后,你也可以将电池底座的线缆正极焊接到板子的Vin接线柱上,负极接到GND上。将连接好的板子,对准3d打印的头部上的USB连接口,再用至少两颗螺丝将他们固定到头部上.

线路连接

准备好杜邦线及及蜂鸣器,根据图形所示的连接方法将各处引针连接完毕

注意
在Nano板上传代码时,碰到以下avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x36错误,可以尝试在Arduino IDE上尝试以下操作以下菜单:
'工具- 处理器 - ATmega328P(Old Bootloader)'应该可以解决

合上头部

头部与身体有卡扣,小心地放置好线缆并合起来。


代码上传

其操作步骤如下:
1.下载并安装Arduino IDE软件
2.下载这里的lib库解压文件并复制到C:\Users\user\Documents\Arduino\libraries (或者是你安装的库文件夹所在之处):
3.通过USB线连接你的OTTO
4.打开并上传OttoDIY_smooth_criminal.ino代码到你的Arduino Nano中,之后就可以看到Otto跳舞了:)

效果演示

机器人的运动:

后续扩展
OTTO DIY还有其他各项包括蓝牙控制及其他传感器的交互(可见Ottodiy.com),后续我会加以拓展并推出其他功能供分享,敬请关注.

声明:文章部分内容出自英文直译,并由作者本人的亲历及经验总结,个博地址见:
http://tech.limuqiao.com/archives/24.html

友情关注:2021年底即将推出我们墨飞鱼团队历时大半年研发的灵感写作平台,在墨飞鱼这里希望能帮助更多人找到阅读与写作的乐趣, 敬请收藏了解,12月底见哦~

Module developer’s guide to FreeCAD source code by Qingfeng Xia http://www.iesensor.com • 2015-09-18 version 0.1 for FreeCAD version 0.16-dev • 2016-09-18 version 0.2 for FreeCAD version 0.17-dev License of this book This ebook is licensed the same as FreeCAD document license CC-BY 3.0 http://creativecommons.org/licenses/by/3.0/Contents 1 FreeCAD overview and architecture 7 1.1 Introduction to FreeCAD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.2 Key features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.3 Software architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.3.1 Key software libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.3.2 Mixed python and c++ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 1.3.3 GPL code will not be included into installer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 1.4 How 3D model are renderred . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 1.4.1 Selection of 3D visualization libarary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 1.4.2 Discussion of 3D rendering library selection on FreeCAD Forum . . . . . . . . . . . . . . . . . . . . . 8 1.5 Roadmap of FreeCAD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.5.1 Keep updated with main components: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.5.2 C++11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.5.3 Pyside 2 project for Qt 5.x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2 Organisation of FreeCAD source code 11 2.1 Build system for FreeCAD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.1.1 Analysis of src/cMake/SMesh.cMake . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.2 List of files and folders in FreeCAD source folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.3 List of modules in FreeCAD Mod folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.4 Learning path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.5 Learning OpenInventor/Coin3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.5.1 OpenInventor in FreeCAD’s ViewProvider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.5.2 Important classes in OpenInventor/Coin3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.5.3 Window System integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.5.4 Pivy: Coin3D ’s Python wrapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 3 Base, App and Main module 19 3.1 List of header files in Base folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 3.1.1 Frequently included headers files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.1.2 Correct way of using Sequencer in try-catch block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.1.3 String enconding utf8 and conversion into wchar_t QString . . . . . . . . . . . . . . . . . . . . . . . . 22 3.2 Type, BaseClass, PyObjectBase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.2.1 Type system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.2.2 src/Base/BaseClass.h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 3.2.3 src/Base/PyObjectBase.h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 3.2.4 src/Base/Persistence.h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 3.2.5 GeoFeature: Base class of all geometric document objects . . . . . . . . . . . . . . . . . . . . . . . . . 26 3.3 Unit scheme for physial quantity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 3.3.1 src/Base/Unit.h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 3.3.2 src/Base/Quantity.h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 3.4 List of header files in App folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 3.5 Property framewrok . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 3.5.1 Naming of property and PropertyEditor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 3.5.2 src/App/PropertyStandard.h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 3.5.3 PropertyEnumeration, see src/App/Enumeration.h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 3.5.4 Geometry related property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 3.5.5 File related property . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值