SolidWorks机械工程师网——最大的SolidWorks学习平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

好品数字
好品数字
查看: 58097|回复: 146

制作SolidWorks柔性动画——卷布

    [复制链接]

10

主题

101

帖子

2731

金币

传奇

Rank: 8Rank: 8

积分
32157

最佳新人活跃会员热心会员宣传达人

发表于 2016-9-11 17:06:31 | 显示全部楼层 |阅读模式
看到论坛里有人问如何制作“用卷筒将窗帘布与重力块卷起https://www.swbbsc.com/forum.php? ... 2617&fromuid=195465”,这里我分享一下制作过程。
有两种方法,第一种与实际情况有差别,但是相对容易,而且效果好;第二种接近实际情况,但是制作过程复杂,效果不太好,且需要电脑有很高的配置。先介绍第一种方法。
首先,我们要知道SolidWorks里面的柔性动画都是用草图来实现运动效果的,经典的例子是“绳子穿过滑轮吊起重物”,这个动画网上有人讲解过,绳子仅仅只是穿过滑轮,而不需要在滑轮上缠绕很多层,比较简单。
本例子中,卷筒上面缠绕了很多层所谓的布,当重物下落的过程中,卷筒半径会逐渐变小,如图1所示。于是我们就要计算出“卷筒实际半径R”与“放出去的布的长度L”之间的关系式。
如图2所示,设卷轴半径为J,卷筒上的布有n层,单层布的厚度为δ,于是初始半径为 R0=J+n*δ;设最初就已经有长度为L0的布在卷筒外。记住J、n、δ和L0都为常数,一定记住啊,不然后面都搞不清哪些是常量,哪些是变量了。
滚筒在转动的过程中,圈数k、半径的减小量r、以及落下的布的长度 l 之间有如下对应关系(为了便于看清,乘号都没写):
圈数k                          半径减小量r                            下落的布的长度l
k=1                             δ                                             2π(nδ)
k=2                             2δ                                           2π(nδ)+2π[(n-1)δ]
k=3                             3δ                                           2π(nδ)+2π[(n-1)δ]+2π[(n-2)δ]
k=4                             4δ                                           2π(nδ)+2π[(n-1)δ]+2π[(n-2)δ]+2π[(n-3)δ]
...                 ...                        ...
归纳                             kδ                                          2πδ[kn-k(k-1)/2]
于是
卷筒的实际半径       R=R0-r
  =J+nδ-kδ                               (式子1)
放出去的布的长度    L=L0+l  =L0+2πδ[kn-k(k-1)/2]             (式子2)
式子1和式子2中,常量为J、n、δ和 L0 ,π不用说当然也是常量;R、L和k是变量。我们想求的是L随R的变化关系,因此消掉中间变量k。
为了方便计算和开始我们的实例,现在起给常量赋值,令
         卷轴半径J=50
         层数n=10
         厚度δ=5
         初始长度L0=100
厚度设为5是为了让动画过程中半径变化明显。代入式子1和式子2,消掉k得到
                                                           R=47.5+((11025*pi^2+2000*pi-20*pi*L)^0.5)/(2*pi)                (式子3)
上式已经将乘号添加进去了,并且符号
π也换成了SolidWorks能识别的pi。到这里我们的工作完成一半,下面就是如何建模了。

—————————————————————————————————————————————————————

(1)在SolidWorks中绘制草图,如图3所示,注意矩形的顶边与坐标原点是水平的,先不要理会方程式,按图把尺寸都标注好(图中的尺寸名称是我为了跟推导的式子对应,自己更改的,下面提到的尺寸名称按照自己的情况进行选择,知道意思就行)。


(2)然后打开方程式管理器,在全局变量里添加一个“L”,光标放到数值那一格,选择名为L的草图尺寸(即垂直的尺寸100),即被添加进来。

(3)将名称为R的尺寸与名称为L的尺寸之间用方程式关联起来,表达式复制粘贴(
式子3)等号右边的,方程式设好之后,双击尺寸L更改,尺寸R也会随之变化。
(4)在同一基准面新建草图,绘制一个圆,圆心在原点,边线与矩形的左上角重合,如图5所示。尺寸L变长,则圆的半径减小,这就是卷筒放下卷布的草图效果。如何让尺寸R动态随尺寸L变化呢,这就需要在装配体中进行,不过先别急,卷筒的模型还没建立完,接下来还有重要的一步。
(5)若草图尺寸和约束完全被定死,里面的线条是拖不动的,即使打开Instant3D也拖不动。但是我们又必须让尺寸L可以随着拖动更改,那怎么办?无解吗?当然不是。我们将尺寸L设为从动就可以了,这很关键。设为从动后,就可以看到矩形的下边自由了,可以被拖动了。由于尺寸还在,所以拖动的时候,方程式仍然有效。(如果你拖动草图更改了尺寸L,建议还是先取消从动,且将尺寸恢复为原来的100,然后再设为从动。)
(6)将两个草图拉伸为实体,长度为200。建议使用两侧拉伸。将零件命名为“卷筒”并保存。为了让卷筒看起来有一个轴,且是一层一层的,可以在端面画一个半径为50的草图圆,充当卷轴,然后不断向外等距5mm,直到等距到卷筒最外层,用分割线将两个端面分割成很多圈。看到这里,你就明白为什么开头说与实际情况有差别了,因为这并不是实际一层一层连续缠绕的,而是不连续的。
(7)新建一个零件,画一个200×20×8的长方体,命名为“重块”并保存。
(8)新建装配体,先将卷筒放进来,然后将重块放进来,在垂布的末端配合好。此时应该让重块在各个方向都不能移动。
(9)解除限制重块在垂布的方向不能移动的那个配合,使得重块在竖直方向是自由的。建议此时不要拖动重块。
(10)在装配体中编辑卷筒的矩形草图,用草图约束使矩形的下边与重块的上边线共线。然后退出草图,退出零件编辑。
(11)此时向下拖动重块,然后点击界面上的红绿灯重建模型,就可以看到卷布拉长了。
(12)用距离配合控制重块的位置,重块顶面到上视基准面的初始距离为100,制作动画的时候,在动画末尾将距离配合设为1500,播放就可以达到想要的效果了。
——————————————————————————————————————————————————————————
P.S.   
前面提到有两种方法,另一个方法是用涡状线做,也许网友还有其他更好的方法,希望也分享下。用涡状线做下次再介绍。
写长帖真的好累,制作这个动画虽然模型只有两个零件,但是要推导公式,使半径R随长度L的变化符合现实规律。
其实偷懒的做法是,当不要求看到卷筒的直径减小的效果时,就不用管尺寸L和半径R之间的关系,本来卷布的厚度就很小,从筒上放出去10卷,半径的变化也不会很大的。本文设厚度为5mm,半径的变化也不是很明显。当然,你可以随便添加一个方程式,比如长度每增加10mm,半径就减小2mm,这样既不用推导公式,也可以让半径减小的效果更明显,只是不符合现实规律,看起来可能不协调。
昨天晚上写了两个多小时,到十一点半准备发表,结果弹出页面说是系统维护时间,我编辑的东西都不见了,当时心里面真是一万头草泥马奔腾,搞得我觉也没睡好。后来在网上搜,说下次编辑的时候会有提示恢复的,还好今天打开的时候果然恢复了。
我还有个问题要请教网友,怎样将图片添加到所叙述的文字附近啊?我发帖后,上传的图片总是排在整个文章末尾了,这样让网友在看帖的时候不方便,需要来回上下翻。如果没有这个功能,而只能排在末尾的话,那我要吐槽一下这真的很不人性化。


图1.效果图

图1.效果图

图2.卷筒尺寸

图2.卷筒尺寸

图3.垂布草图

图3.垂布草图

图4.方程式

图4.方程式

图5.卷筒草图

图5.卷筒草图

评分

参与人数 2威望 +15 金币 +100 贡献 +15 收起 理由
洪七公 + 5 + 30 + 5 赞一个!
猪猪侠 + 10 + 70 + 10 无与伦比

查看全部评分

SolidWorks机械工程师网
提示:建议使用谷歌浏览器浏览本网站!如单击这里下载!否则,可能无法下载附件文件!(支持大多数版本的谷歌浏览器,支持10、11两个版本的IE浏览器,支持360和QQ浏览器的极速模式,即谷歌内核模式,以及10和11版本的IE兼容模式,其余浏览器也是如此)
回复

使用道具 举报

10

主题

101

帖子

2731

金币

传奇

Rank: 8Rank: 8

积分
32157

最佳新人活跃会员热心会员宣传达人

 楼主| 发表于 2019-7-29 21:49:04 | 显示全部楼层
SolidWorks机械工程师网
提示:建议使用谷歌浏览器浏览本网站!如单击这里下载!否则,可能无法下载附件文件!(支持大多数版本的谷歌浏览器,支持10、11两个版本的IE浏览器,支持360和QQ浏览器的极速模式,即谷歌内核模式,以及10和11版本的IE兼容模式,其余浏览器也是如此)
回复 支持 反对

使用道具 举报

2

主题

6

帖子

16

金币

混混

Rank: 1

积分
42
发表于 2023-10-14 01:43:49 | 显示全部楼层
您好,看了您关于柔性卷布的视频,我在复现时有点问题。
请问我在输入47.5+((11025*pi^2+2000*pi-20*pi*L)^0.5/(2*pi)方程后,一直报“活动方程式中存在语法错误”,是因为什么呢,我是用英文敲得字母,求解答,求求了
SolidWorks机械工程师网
回复 支持 1 反对 0

使用道具 举报

0

主题

308

帖子

157

金币

长老

Rank: 6Rank: 6Rank: 6

积分
1241

最佳新人活跃会员热心会员宣传达人灌水之王突出贡献

发表于 2017-11-17 11:40:45 | 显示全部楼层
SW机械工程师论坛,找到组织了!
SolidWorks机械工程师网
回复 支持 1 反对 0

使用道具 举报

10

主题

101

帖子

2731

金币

传奇

Rank: 8Rank: 8

积分
32157

最佳新人活跃会员热心会员宣传达人

 楼主| 发表于 2017-3-29 09:43:32 | 显示全部楼层

   经典案例图书
binyun119 发表于 2017-3-28 16:58
学习中,练习中。按照步骤做了,可是动不了,鼓捣半天找不到原因。
我没有介绍细节,做这个的前提是你懂草图动画的原理,并且你会做“绳子-滑轮-重块”的动画
SolidWorks机械工程师网
回复 支持 1 反对 0

使用道具 举报

10

主题

101

帖子

2731

金币

传奇

Rank: 8Rank: 8

积分
32157

最佳新人活跃会员热心会员宣传达人

 楼主| 发表于 2016-9-11 17:27:41 | 显示全部楼层
想要亲自看到效果,爱钻研的网友可以自己做一下,偷懒的网友就花点金币下载吧。
卷筒动画1.rar (779.85 KB, 下载次数: 156, 售价: 15 金币)
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

3

主题

277

帖子

613

金币

长老

Rank: 6Rank: 6Rank: 6

积分
1828

最佳新人活跃会员热心会员宣传达人灌水之王突出贡献

发表于 2016-9-14 10:15:57 | 显示全部楼层

   经典案例图书
感谢楼主分享,很不错!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

3

主题

59

帖子

47

金币

堂主

Rank: 4

积分
615

最佳新人活跃会员热心会员宣传达人

发表于 2016-9-14 11:37:05 | 显示全部楼层
楼主厉害,膜拜之中
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

0

主题

112

帖子

5

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
467

最佳新人活跃会员热心会员宣传达人

发表于 2016-9-20 12:30:32 | 显示全部楼层
这个厉害,谢谢楼主!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

22

主题

204

帖子

243

金币

长老

Rank: 6Rank: 6Rank: 6

积分
1092

最佳新人活跃会员热心会员宣传达人灌水之王突出贡献

发表于 2016-9-24 11:23:47 | 显示全部楼层
楼主辛苦了!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

0

主题

23

帖子

21

金币

天使

Rank: 2Rank: 2

积分
133

最佳新人活跃会员宣传达人

发表于 2016-9-29 13:00:25 | 显示全部楼层

这个厉害,谢谢楼主!学习了
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

0

主题

10

帖子

29

金币

天使

Rank: 2Rank: 2

积分
100

最佳新人

发表于 2016-11-8 22:42:07 | 显示全部楼层
好东西,努力学习学习!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

2

主题

119

帖子

47

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
428

最佳新人活跃会员热心会员宣传达人

发表于 2016-11-23 10:26:39 | 显示全部楼层
感谢楼主分享,很不错!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

1

主题

19

帖子

34

金币

天使

Rank: 2Rank: 2

积分
157

最佳新人宣传达人

发表于 2016-12-12 13:52:31 | 显示全部楼层
太棒了
SolidWorks机械工程师网
回复

使用道具 举报

0

主题

10

帖子

0

金币

混混

Rank: 1

积分
29

最佳新人

发表于 2016-12-12 19:51:15 | 显示全部楼层
加入QQ群
参与讨论和学习

SolidWorks技术交流群

或扫描二维码加入


谢谢分享,收下学习!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

0

主题

202

帖子

129

金币

堂主

Rank: 4

积分
692

最佳新人活跃会员热心会员宣传达人灌水之王突出贡献

发表于 2016-12-27 09:03:17 | 显示全部楼层

   经典案例图书
感谢楼主分享,很不错!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

0

主题

202

帖子

129

金币

堂主

Rank: 4

积分
692

最佳新人活跃会员热心会员宣传达人灌水之王突出贡献

发表于 2016-12-27 09:05:11 | 显示全部楼层
加入QQ群
参与讨论和学习

SolidWorks技术交流群

或扫描二维码加入

非常不错的柔性动画,值得学习!!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

1

主题

18

帖子

6

金币

混混

Rank: 1

积分
49

最佳新人

发表于 2016-12-29 11:51:09 | 显示全部楼层

   经典案例图书
不错了,。。。。。。。。。。。。。
SolidWorks机械工程师网
回复

使用道具 举报

0

主题

339

帖子

4

金币

长老

Rank: 6Rank: 6Rank: 6

积分
1219

最佳新人活跃会员热心会员宣传达人灌水之王突出贡献

发表于 2016-12-30 14:36:10 | 显示全部楼层
很不错,顶一下!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

1

主题

73

帖子

57

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
306

最佳新人活跃会员热心会员宣传达人

发表于 2017-1-17 15:46:24 | 显示全部楼层
楼主辛苦了
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

0

主题

4

帖子

9

金币

混混

Rank: 1

积分
32
发表于 2017-2-10 09:08:10 | 显示全部楼层

这个厉害,谢谢楼主!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

0

主题

34

帖子

24

金币

天使

Rank: 2Rank: 2

积分
110
发表于 2017-3-21 09:40:45 | 显示全部楼层
楼主厉害,膜拜之中
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

9

主题

81

帖子

67

金币

堂主

Rank: 4

积分
589

最佳新人活跃会员热心会员宣传达人

发表于 2017-3-28 16:58:58 | 显示全部楼层
学习中,练习中。按照步骤做了,可是动不了,鼓捣半天找不到原因。
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭 卷起
关闭 卷起

手机版|小黑屋| GMT+8, 2024-3-29 01:07 , Processed in 0.255595 second(s), 48 queries .

SolidWorks机械工程师网 ( 鲁ICP备14025122号-2 ) 鲁公网安备 37028502190335号

声明:本网言论纯属发表者个人意见,与本网立场无关。
如涉版权,可发邮件: admin@swbbsc.com

快速回复 返回顶部 返回列表