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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

好品数字
好品数字
查看: 1677|回复: 29
打印 上一主题 下一主题

圆筒压缩弹簧力之计算-巨集的应用

  [复制链接]

5

主题

41

帖子

35

金币

天使

Rank: 2Rank: 2

积分
108
QQ
跳转到指定楼层
楼主
发表于 2013-5-17 14:57:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如题
一. 简略说明
  1. 首先进入装配体的spring零件编辑3D草图,点选螺纹线并做删除,
  2. VBA的数学方程式,写入TEXTBOX要输入的"节圆半径","圈数"及"弹簧高"做出所要的弹簧螺线,
  弹簧高是取决于"加载"或是"不加载"之按钮,加载就是  弹簧高 - 压缩量.
  3. 依据TEXTBOX的线径及节圆直径(决定线径的X座标值),扫出弹簧螺线就是.
二. 理想状况
  是直接在装配体就可以删除前弹簧线,并写入3D草图的"数学方程式",
  但目前尚不知道在装配体时,如何写VBA作如上之动作,若是哪个前辈知道的话,
  诚请指导.

螺纹线是用vba写数学方程式
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享教程|习题|模型|技巧 点赞点赞 拍砖拍砖
SolidWorks机械工程师网
提示:建议使用谷歌浏览器浏览本网站!如单击这里下载!否则,可能无法下载附件文件!(支持大多数版本的谷歌浏览器,支持360和QQ浏览器的极速模式,即谷歌内核模式,使用IE和Edge浏览器,浏览个别网页以及下载文件时,会误报“***不安全”,此时需要单击“继续访问此不安全站点(不推荐)”才可以继续下载,另外,本网站不含任何不安全的文件,已联系微软公司解决,纯属IE和Edge浏览器误报)
回复

使用道具 举报

8

主题

48

帖子

43

金币

天使

Rank: 2Rank: 2

积分
136
QQ
沙发
发表于 2013-5-19 12:03:25 | 只看该作者
哇哩咧,如此好帖没人顶?大家都赶着回去过周末?

多向梁兄请益学习啊~~
SolidWorks机械工程师网
提示:建议使用谷歌浏览器浏览本网站!如单击这里下载!否则,可能无法下载附件文件!(支持大多数版本的谷歌浏览器,支持360和QQ浏览器的极速模式,即谷歌内核模式,使用IE和Edge浏览器,浏览个别网页以及下载文件时,会误报“***不安全”,此时需要单击“继续访问此不安全站点(不推荐)”才可以继续下载,另外,本网站不含任何不安全的文件,已联系微软公司解决,纯属IE和Edge浏览器误报)
回复 支持 反对

使用道具 举报

4

主题

34

帖子

29

金币

天使

Rank: 2Rank: 2

积分
80
QQ
板凳
发表于 2013-5-20 04:23:12 | 只看该作者
谢谢大佬支持
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

4

主题

50

帖子

28

金币

天使

Rank: 2Rank: 2

积分
110
QQ
地板
发表于 2013-5-27 09:56:04 | 只看该作者
主题: 圆筒压缩弹簧力之计算前言: 在几个有关solidworks论坛看到有关弹簧,几乎皆在讨论作图法,深深有感对一个机械设计者来说不但要学好正确理想的作图法,减少制图错误或是节省作图时间,但最主要的
   ,设计者更应该知道设计的弹簧力量及在工作范围的压缩尺寸是否适用,这就是引发本人做这个巨集(宏)的用意,期望这个分享能引起经验丰富的机械工程大师,更能把自身的十八般武艺和知识传承给需要者.

弹簧力计算公式:
    参数: 线径 d(mm) , 节圆直径 D(mm) , 有效圈数 N , 弹簧常数 k(kg/mm) , 弹簧压缩量 s(mm) , 弹簧力 P(kg), 材料横向弹性系数 G(kg/mm2) ,各种材料的G值如附图1.

操作说明:
1. 把Bass,Press Plate两个零件一个组件及spring force.swp编程存在同一个 档案夹路径,再开启 组件档.
2.进入Spring零件"3D草图1"的编辑状况,点选"弹簧螺旋曲线,如图2.
3.点选上面功能列 [工具]-[巨集]-[执行],叫出"sprintforce.swp"VBA编程.
4.操作注意事项   
  * 按下[加负载]或是[未加负载]之按钮前,皆须作第2项之操作.   
  * 在自订表单输入每笔资料后须跳出该TextBox或按"Enter"键离开  
5. 自订表单内名称定义说明:
    有效圈数-可以有效的变形圈数 , 弹簧高-有效圈数上下线径的中心高.

弹簧力及压缩量之分析:   
参考图3,当加压到”压缩量”接近”最大可压缩量”时,负载栏的值,就是弹簧    理想的”最大受力负载”,也就是在加压下去,可能弹簧压死了,就算没压死,   也有可能变形压缩量和负载,就不是依照”虎克定律(Hooke'slaw )”两者是成线性变化了,最大可压缩量一般是取弹簧自由长的0.3~0.35倍,若是不得已受空间所限,我是取(弹簧自由长-压死长度)*0.9 [仅作参考]

VBA巨集(部分参考):
' ******************************************************************************'
'macro compile on 05/18/2013 V001.00 by scliang
'弹簧力计算螺线依数学方程式
'******************************************************************************
Dim swApp As ObjectDim Part As ObjectDim boolstatus As BooleanDim longstatus As Long, longwarnings As Long
Sub run_()
Set swApp = Application.SldWorksSet Part = swApp.ActiveDocWith UserForm1
Dim equationDriveCurve As Object '宣告方程式驱动曲线为物件Dim myModelView As Object '宣告模组视图为物件Dim wire_dim As Double '宣告线径为双精度 mmDim pitch_dim As Double '宣告节圆直径为双精度 mmDim coil_num As Double '宣告有效圈数为双精度Dim spring_hig As Double '宣告弹簧高度为双精度 mmDim spring_pitch As Double '宣告弹簧节距为双精度 mmDim spring_compression As Double '宣告弹簧压缩量为双精度 mmDim G As Double '宣告材料横向弹性系数为双精度 kg/mm^2Dim k As Double '宣告弹簧常数为双精度 kg/mmDim load_ As Double '宣告弹簧负载为双精度 kg
wire_dim = CDbl(.TextBox3.Value)pitch_dim = CDbl(.TextBox4.Value)coil_num = CDbl(.TextBox5.Value)spring_hig = CDbl(.TextBox6.Value)
If .CommandButton1.BackColor = vbYellow Thenload_ = CDbl(.TextBox1.Value)G = CDbl(.TextBox8.Value)k = CDbl(.TextBox9.Value)spring_compression = load_ / kspring_hig = spring_hig - spring_compression
End If
Part.EditDelete '删除螺旋线
'输入 数学关系式Set equationDriveCurve = Part.SketchManager.CreateEquationSpline2(pitch_dim / 2 & "*cos(t)", spring_hig / coil_num & "*(t/(2*pi))", _pitch_dim / 2 & "*sin(t)", "0", coil_num * 2 & "*pi", False, 0, 0, 0, True, True)Set myModelView = Part.ActiveViewmyModelView.RotateAboutCenter 0, 0
'解除方程式可能之错误boolstatus = Part.Extension.SelectByID2("Point3", "SKETCHPOINT", pitch_dim / 2 / 1000, 0, 0, False, 0, Nothing, 0) '选取弹簧起点座标Part.SketchAddConstraints "sgFIXED" '设起点为固定
'设定尺寸变数Set myDimension1 = Part.Parameter("D1@草图1@Spring^组件.Part") '线径变数Set myDimension2 = Part.Parameter("D2@草图1@Spring^组件.Part") '节圆直径变数Set myDimension3 = Part.Parameter("D1@平行相距1") '弹簧高变数Set myDimension4 = Part.Parameter("D1@草图1@Press Plate.Part") '定义压板边长之变数Set myDimension5 = Part.Parameter("D1@填料-伸长1@Press Plate.Part") '定义压板板厚之变数
myDimension1.SystemValue = wire_dim / 1000 '线径myDimension2.SystemValue = pitch_dim / 2 / 1000 '线径之X座标为节圆半径
Part.EditAssembly '编辑组件myDimension3.SystemValue = spring_hig / 1000 '弹簧高myDimension4.SystemValue = pitch_dim * 1.6 / 1000 '压板边长为节圆直径*1.6myDimension5.SystemValue = IIf(pitch_dim > 30, 0.016, 0.01) '压板板厚计算
boolstatus = Part.EditRebuild3() '重新计算boolstatus = Part.SetUserPreferenceToggle(swUserPreferenceToggle_e.swViewDisplayHideAllTypes, True) '隐藏所有类型End WithEnd Sub
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
附上原始档2012版,使用前请详看"操作注意"WORD档
彈簧力計算_繁版.part2.rar (927.73 KB, 下载次数: 87)
彈簧力計算_繁版.part3.rar (279.26 KB, 下载次数: 20)
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

5

主题

40

帖子

26

金币

天使

Rank: 2Rank: 2

积分
93
QQ
5#
发表于 2013-6-9 10:10:27 | 只看该作者

   经典案例图书
理想状况之问题已解决!
自己鼓励一下
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

3

主题

49

帖子

16

金币

天使

Rank: 2Rank: 2

积分
98
QQ
6#
发表于 2013-6-9 10:58:47 | 只看该作者
原来还可以这样做~~
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

1

主题

45

帖子

6

金币

混混

Rank: 1

积分
43
QQ
7#
发表于 2013-6-18 03:53:46 | 只看该作者

   经典案例图书
真的是太厉害了
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

3

主题

33

帖子

20

金币

天使

Rank: 2Rank: 2

积分
79
QQ
8#
发表于 2013-6-18 10:55:33 | 只看该作者
完全看不懂

不过大佬真的佛心来着

这么珍贵的资料就这么无偿分享出来

感谢大佬
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

7

主题

49

帖子

42

金币

天使

Rank: 2Rank: 2

积分
146
QQ
9#
发表于 2013-6-18 20:04:45 | 只看该作者
知识是传承的,难道是要和黄土一道掩埋吗?
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

7

主题

53

帖子

38

金币

天使

Rank: 2Rank: 2

积分
141
QQ
10#
发表于 2013-6-21 23:17:00 | 只看该作者
赞,又要脑力激盪
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

5

主题

45

帖子

33

金币

天使

Rank: 2Rank: 2

积分
106
QQ
11#
发表于 2013-6-23 04:12:29 | 只看该作者
当然是过週末的,现今是退休时代,喝酒抽烟带小孩过人生,多位博士轮来做,战争不会来的,放假走
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

4

主题

37

帖子

27

金币

天使

Rank: 2Rank: 2

积分
107
QQ
12#
发表于 2013-6-24 19:27:27 | 只看该作者
WOW

真是好东西呀!!

但是巨集部分我不会用呢

能否讲解一下呢?
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

5

主题

44

帖子

32

金币

天使

Rank: 2Rank: 2

积分
127
QQ
13#
发表于 2013-7-13 04:25:49 | 只看该作者
GOOD!!实用谢谢分享
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

5

主题

45

帖子

42

金币

天使

Rank: 2Rank: 2

积分
118
QQ
14#
发表于 2013-7-13 20:45:35 | 只看该作者
虽然看不懂,但这么好的资料 ..... 先留着先 ......

感谢大佬无私的分享 ~~~~~
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

3

主题

50

帖子

16

金币

天使

Rank: 2Rank: 2

积分
67
QQ
15#
发表于 2013-7-16 12:58:47 | 只看该作者
加入QQ群
参与讨论和学习

SolidWorks技术交流群

或扫描二维码加入

第一次看到这种东西有点太深奥了
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

4

主题

50

帖子

27

金币

天使

Rank: 2Rank: 2

积分
99
QQ
16#
发表于 2013-7-19 10:45:54 | 只看该作者

   经典案例图书
太强了,看得我头昏眼花!!!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

2

主题

36

帖子

15

金币

混混

Rank: 1

积分
40
QQ
17#
发表于 2013-7-25 05:40:36 | 只看该作者
加入QQ群
参与讨论和学习

SolidWorks技术交流群

或扫描二维码加入

巨集的应用
竟然能算应力
果然是专业的
还分享
感谢大师赞
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

4

主题

44

帖子

21

金币

天使

Rank: 2Rank: 2

积分
95
QQ
18#
发表于 2013-7-29 04:17:09 | 只看该作者

   经典案例图书
哇哩咧,如此好帖没人顶?大家都赶着回去过周末?

多向梁兄请益学习啊~~
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

3

主题

51

帖子

16

金币

天使

Rank: 2Rank: 2

积分
100
QQ
19#
发表于 2013-7-29 17:28:00 | 只看该作者
谢谢大佬支持
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

3

主题

41

帖子

22

金币

天使

Rank: 2Rank: 2

积分
97
QQ
20#
发表于 2013-7-31 02:42:42 | 只看该作者
理想状况之问题已解决!
自己鼓励一下
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭 卷起
关闭 卷起

手机版|小黑屋| GMT+8, 2024-5-17 09:36 , Processed in 0.285659 second(s), 36 queries .

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

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

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