- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
----------专业最好文档,专业为你服务,急你所急,供你所需-------------
文档下载最佳的地方
----------专业最好文档,专业为你服务,急你所急,供你所需-------------
文档下载最佳的地方
数控系统软件
??2008-8-22??来源:??阅读:?279次?? HYPERLINK javascript:window.external.addFavorite(/news/newsfile/2008/8/22/16129.shtml,%E6%95%B0%E6%8E%A7%E7%B3%BB%E7%BB%9F%E8%BD%AF%E4%BB%B6) 我要收藏【字体: HYPERLINK javascript:SetFontSize(1); \t _self 大? HYPERLINK javascript:SetFontSize(2); \t _self 中? HYPERLINK javascript:SetFontSize(3); \t _self 小】???????
CNC 系统软件是一个典型而又复杂的实时系统。
本节先介绍系统软硬件界面的关系,然后从系统内数据流的角度来分析CNC 装置的数据转换过程,并从多任务性和实时性的角度来分析CNC 系统软件的结构特点,最后介绍一个典型CNC 装置系统软件的结构。
一、CNC 装置软件和硬件的功能界面
1 、软件与硬件在实现各种功能的特点和关系
● 关系:从理论上讲,硬件能完成的功能也可以用软件来完成。从实现功能的角度看,软件与硬件在逻辑上是等价的。
● 特点:
硬件处理速度快,但灵活性差,实现复杂控制的功能困难。
软件设计灵活,适应性强,但处理速度相对较慢。
2 、软件、硬件实现功能的分配就是 —— 软件硬件功能界面划分。
3 、功能界面划分的准则:系统的性能价格比。
二、CNC 装置的数据转换流程
?? CNC 装置系统软件的主要任务:如何将由零件加工程序表达的加工信息,变换成各进给轴的位移指令、主轴转速指令和辅助动作指令,控制加工设备的轨迹运动和逻辑动作,加工出符合要求的零件。
????? 1 、译码 ( 解释 )?? ??? 将用文本格式(通常用 ASCII 码)表达的零件加工程序,以程序段为单位转换成后续程序(本例是指刀补处理程序)所要求的数据结构(格式)。
数据结构示例:
? Struct PROG_BUFFER ? {
? char buf_state ; // 缓冲区状态, 0 空; 1 准备好。
? int ? block_num ; // 以 BCD 码的形式存放本程序段号。
? double COOR[20] ; // 存放尺寸指令的数值( μ m )。
? int F,S ; ??????? //F ( mm/min ) S ( r/min )。
? char G0 ; ??????? // 以标志形式存放 G 指令。
? char G1 ; ????
? char M0 ; ??????? // 以标志形式存放 M 指令。
? char M1 ;
? char T ; ???????? // 存放本段换刀的刀具号。
? char D ; ???????? // 存放刀具补偿的刀具半径值。
? } ;
???? 在系统软件中各程序间的数据交换方式一般都是通过缓冲区进行的。该缓冲区由若干个数据结构组成,当前程序段被解释完后便将该段的数据信息送入缓冲区组中空闲的一个。后续程序(如刀补程序)从该缓冲区组中获取程序信息进行工作 。
? N 06 G 90 ? G 41 ? D 11 ? G 01 X200 Y 300 F 200 ;
? ??? 1 ??? 2 ??? 3 ??? 4 ??? 5 ?? 6 ??? 7 ??? 8 ?? 9
? ----------------------------------------
? Struct PROG_BUFFER ? { ??? char buf_state ; ???? 0 : ( 开始 ) ; 1 (;)⑨
? int ? block_num ; ???? 06 ( N06 )①?? double COOR[20] ; ??? COOR[1]=200000 ;( X200 )⑥
? ????????????????????? COOR[2]=300000 ;( Y300 )⑦
? int F,S ; ??????????? F=200 ;( F200 )⑧
? char G0 ; ??????????? D5=0 ;( G90 )②
? ????????????????????? D6,D7=0,1 ( G41 )③ ?????????????????
文档评论(0)