模具论坛

 找回密码
 注册

扫一扫,微信登录

QQ登录

只需一步,快速开始

搜索
热搜: 冲压 注塑 求助
    回车查看更多
    论坛可能已存在您要发布的主题帖 关闭
      查看: 3818|回复: 3

      [分享] MasterCAM在绘制复杂曲线中的应用

      [复制链接]
      发表于 2016-10-29 12:55:21 | 显示全部楼层 |阅读模式
      本帖最后由 小A111 于 2016-10-29 12:58 编辑

      MasterCAM在绘制复杂曲线中的应用
      一、 引言
      在机械设计中经常会要求绘制一些较为复杂的曲线,例如渐开线、阿基米德曲线、摆线、凸轮轮廓线等,然而,在常用的CAD/CAM软件中却很少直接提供对这些曲线的绘制工具。所以,要绘制这些曲线就不得不进行二次开发,这对一般的用户就提出较高的要求。而MasterCAM中的C—HOOKS功能恰好为我们提供了比较快捷方便的方法。MasterCAM X的C—HOOKS功能集中在菜单“Settings”→“Run User Application”→“Fplot”中,可绘制各种复杂的曲线和曲面。同时,C—HOOKS是一个增强命令子集,不同于其他CAD软件的二次开发工具,它不需要接口,直接运行在MasterCAM环境下,生成图形速度快。
      二、 利用C-HOOKS绘制曲线的方法
      C—HOOKS是MasterCAM系统中一个绘制复杂曲线、曲面的有用工具,它采用C语言形式编制程序来绘制各种曲线、曲面,绘制的方法如下。
      (1)首先要把绘制曲线的方程式(解析式)求出来,这个方程式可以写成 形式,也可以写成参数方程形式,还可以写成极坐标形式。如,正弦函数曲线可以写成 的方程式(解析式)。
      (2)根据方程式(解析式)编写绘图程序,该绘图程序以eqn文件保存。编写eqn文件有两种方法:1)先新建一个txt文件,在该文件中编写完程序后保存,再把该文件的后缀名改为eqn即可;2)直接打开系统中的eqn文件,在编辑器中新建一个文件,编写完程序后保存即可。编写程序比较严格,有一定的格式要求,并且只准用英文小写。例如上面提到的正弦函数曲线,它的绘制程序如下:
        step_var1=x //定义变量名
        step_size1=0.2 //定义变量的步距
        lower_limit1=0 //定义变量的上限
        upper_limit1=6.28319 //定义变量的上限
        geometry=lines //规定图形的型式
        angles=radians //定义角度采用弧度制
        origin=0,0,0 //定义曲线的定位点(原点)
        y=sin(x) //定义函数(解析式)
      (3)得到eqn文件后,通过点击菜单“Settings”→“Run User Application”,在弹出的窗口中选择fplot.dll文件,再打开刚才编制的sina.eqn文件,然后点击“Plot it”,绘图区即可见到所绘制的曲线(在MasterCAM X中运行环境)。
      三、 各种复杂曲线的绘制
      1.渐开线
      渐开线是齿轮常用的轮廓曲线,该曲线的参数方程为: 。其中,α为基圆半径,t为变量角(弧度)。
        根据上述参数方程,编写eqn文件如下:
        step_var1=t
        step_size1=0.05
        lower_limit1=0
        upper_limit1=6.28319
        geometry=lines
        angles=radians
        origin=0,0,0
        a=1
        x=a*(cos(t)+t*sin(t))
        y=a*(sin(t)-t*cos(t))
        绘制出来的图形如图1所示。
      图1 绘制的渐开线图
        2.阿基米德曲线
        阿基米德曲线在凸轮和蜗杆等中较常用,它的参数方程为: , 。其中,r为曲率半径,α为基圆半径,t为变量角(弧度)。
        根据上述参数方程,编写eqn文件如下:
        step_var1=t
        step_size1=0.05
        lower_limit1=0
        upper_limit1=6.28319
        geometry=lines
        angles=radians
        origin=0,0,0
        a=20
        r=a*t
        x=r*cos(t)
        y=r*sin(t)
        绘制出来的图形如图2所示。
      图2 绘制的阿基米德曲线图
        3.摆线
        摆线是钟表齿轮齿形轮廓的典型曲线,它的参数方程为: 。其中,α为基圆半径,t为变量角(弧度)。
        根据上述参数方程,编写eqn文件如下:
        step_var1=t
        step_size1=0.05
        lower_limit1=0
        upper_limit1=6.28319
        geometry=lines
        angles=radians
        origin=0,0,0
        a=20
        x=a*(t-sin(t))
        y=a*(1-cos(t))
        绘制出来的图形如图3所示。
      图3 绘制的摆线图
        4.凸轮轮廓线
        在机械设计中凸轮设计会经常遇到,靠传统的作图法既繁琐,精度又不高,利用C—HOOKS功能却可以得到意想不到的结果。下面是设计某一偏置直动滚子推杆盘形凸轮的实际轮廓线。先绘制凸轮理论轮廓曲线,该曲线分为四部分:L1、ARC2、L2、ARC1(见图4),分别代表推程、远休止、回程、近休止轮廓。
        推程曲线的参数方程为: 。其中, 。
        回程曲线的参数方程为: 。其中, 。
        近休止、远休止轮廓是段圆弧,其参数方程分别为:
        近休止轮廓, ,其中 ;
        远休止轮廓, ,其中 。
        为了简化方程,变量t的范围,可以根据已画出的推程、回程曲线,通过查询端点处对应的角度(弧度)来设置。
        上述四段轮廓分别建立eqn文件,程序如下:
        L1.eqn文件:(对应曲线L1)
        step_var1=t
        step_size1=0.1
        lower_limit1=0
        upper_limit1=2.09439
        geometry=lines
        angles=radians
        origin=0,0,0
        x=(45.825+50*(3*t/6.28319-sin(3*t)/6.28319))*sin(t)+20*cos(t)
        y=(45.825+50*(3*t/6.28319-sin(3*t)/6.28319))*cos(t)-20*sin(t)
        L2.eqn文件:(对应曲线L2)
        step_var1=t
        step_size1=0.1
        lower_limit1=3.14159
        upper_limit1=5.23598
        geometry=lines
        angles=radians
        origin=0,0,0
        x=(45.825+25*(1+cos(1.5*(t-3.14159))))*sin(t)+20*cos(t)
        y=(45.825+25*(1+cos(1.5*(t-3.14159))))*cos(t)-20*sin(t)
        ARC1.eqn文件:(对应圆弧ARC1)
        step_var1=t
        step_size1=0.1
        lower_limit1=1.1589
        upper_limit1=2.2061
        geometry=lines
        angles=radians
        origin=0,0,0
        x=50*cos(t)
        y=50*sin(t)
        ARC2.eqn文件:(对应圆弧ARC2)
        step_var1=t
        step_size1=0.1
        lower_limit1=4.50644
        upper_limit1=5.55363
        geometry=lines
        angles=radians
        origin=0,0,0
        x=97.89*cos(t)
        y=97.89*sin(t)
        按照上面绘制的是理论轮廓曲线(外轮廓实线所示),要得到实际轮廓曲线(内轮廓虚线所示),根据两者的关系,只需利用命令“Xform”→“Xform Offset contour”向内偏移一个滚子的半径即可。绘制的凸轮轮廓曲线图如图4所示。
      图4 绘制的某凸轮轮廓曲线图
        
      四、 结论
        从上面的实例可以看出,只要复杂曲线能够得到函数方程(解析式),就可以通过MasterCAM中的C—HOOKS功能绘制出来。该方法不但编程方便,容易理解,而且有较高的精度,效率高,是一种绘制复杂曲线的实用方法,值得使用者借鉴。

      来自群组: 红豆先生组

      本帖子中包含更多资源

      您需要 登录 才可以下载或查看,没有帐号?注册

      x
      发表于 2017-2-24 10:35:55 | 显示全部楼层
      :lol学习学习了
      发表于 2021-5-26 23:33:20 来自手机 | 显示全部楼层
      大哥高手,有点不理解
      发表于 2021-6-1 15:18:10 | 显示全部楼层
      提示: 该帖被管理员或版主屏蔽
      您需要登录后才可以回帖 登录 | 注册

      本版积分规则

      关闭

      招聘信息 上一条 /5 下一条

      关闭

      求职信息 上一条 /5 下一条

      关闭

      技术求助 上一条 /5 下一条

      QQ|小黑屋|手机版|模具论坛 ( 浙ICP备15037217号 )

      GMT+8, 2025-7-17 10:16

      Powered by Discuz! X3.4

      © 2001-2013 Comsenz Inc.

      快速回复
      返回顶部
      返回列表
       
      客服电话:0577-61318188
      模具论坛交流群:
      模具论坛交流群
      工作时间:
      08:30-17:30