SDK程序学习NOTES

Part One

1、stdlib 头文件:用到动态内存、随机数以及系统相关的函数和宏定义

2、flag 常作为标识符的变量名;

3、fanuc数控机床prog是什么意思?Program Key的缩写,意思是程序键;其他相关

机床各坐标(POS),程序键(PROG),机床坐标系统(刀偏 坐标系)(OFFSET/SETTING),上档键(SHIFT),取消键(CAN),输入键(INPUT),系统参数(SYSTEM),报警信息键(MESSAGE),图像键(CUSTOM GRAPH),
替换键(ALERT),插入键(INSERT),删除键(DELETE),上翻页(PAGE↑),
帮助(HELP),下翻页(PAGE↓),复位(RESET)。

4、#define LEFT 0x4b00是什么意思呢?

计算机的每个按键都有一个编码,左按键的编码是0x4b000x4b00是一个16进制的数,方便计算机读取。当你按下左按键时,会将按键编号0x4b00发送给程序,程序就可以根据这个编号判断你按下了哪个按键。
 #define LEFT 0x4b00的意思是,用LEFT代替0x4b00,计算机知道LEFT就是0x4b00。这样在编程时候,你只需要记住并使用LEFT即可,而不需要记住0x4b00。这种方式既节约了你的工作量,还使得程序代码更容易理解。

参考键盘扫描码

5、enum-定义那些变量取值在有限范围的类型变量

enum 枚举名 {枚举值表};

enum weekday{sun,mon,tue,wed,thu,fri,sat};
enum weekday a,b,c;
//或者为:
enum weekday{sun,mon,tue,wed,thu,fri,sat}a,b,c;
//或者为:
enum{sun,mon,tue,wed,thu,fri,sat}a,b,c;

——————————————————–

4、Windows平台上数控系统软件的开发

1)在Windows平台上进行数控系统的开发是数控产品更新的标志和趋势。Windows是消息驱动的多任务环境,各种消息都按它们到达的先后顺序排队处理,即消息机制是不分任务的轻重缓急的,若无中断设置,仅凭消息调度机制,则不能保证数控前台控制任务在准确的时间间隔内执行,这正是利用Windows平台进行数控开发索要解决的关键问题。

2)数控仿形系统软件基本结构:此系统的任务有:系统参数输入及修改,在线数控指令编程,图形仿真,数控加工屏幕显示,仿形和仿形加工显示,数字化处理,在线监测诊断等等。

3)数控系统的软件设计:模块化程序设计思想。数控系统基本的功能模块:
人机交互界面模块–主要完成系统运行前和运行中系统参数的设定和修改,如设定系统工作模式(自动、手动、点动等),图形显示模式,系统初始化设定,NC代码程序的编辑等。
零件代码解释模块
加工模块
刀具半径补偿模块
I/O模块

5、西门子数控系统人机界面二次开发方法研究
人机界面(Human Machine Interface,HMI)是用户与机床互相传递信息的输入与输出。数控系统已经具备比较通用的人机界面功能,用来实现操作、监控、编程、设置和诊断功能。

随着工业化进程的日益推进,机械零部件加工工艺的不断翻新,对高性能、高精度机床的需求也越来越大。然而,随着新型机床的不断涌现,通用的HMI界面已经不能很好地满足用户的需要,于是我们对通用的HMI界面进行二次开发。

人机界面开发的需求分析:专用机床上的应用。如专用磨床需要有自己的专用界面,这样才方便对设备进行操作和管理,也使专用机床的效益得到充分的发挥。

针对HMI的二次开发,提供了三种开发方法:系统预留的扩展用户接口、HMI编程包以及公司开发的专用组态软件。

HNC-8数控系统 API层二次开发

1、HNC-8 系统结构

从功能上划分,HNC-8平台分为HMI,NCAPI以及NCU3个层次,其结构如图1-1 所示。HMI层为人机交互界面,主要给用户一个宜人的可视化操作接口,用户通过HMI完成数控机床的操作,API层为接口层,为上层的应用提供访问NC功能的接口,NCU为数控核心层,实现NC各类功能。
这里写图片描述

2、二次开发的层次

1)G代码层次二次开发

在该层次上的开发,不需要借助高级编程语言,不需要过分依赖系统厂商,是一种较灵活和便捷的开发方式。 同时,HNC-8系统提供了自定义界面配置功能,通过修改或编写配置文件,就可以在原系统中嵌入新界面,该界面具有图片显示,宏变量或系统参数编辑等功能。与G代码配合,可以弥补单纯用G代码二次开发的系统存在的缺点,提高操作的宜人性

2)API层次二次开发

API层次二次开发指借助系统提供的NC-API以及GUI-API,开发专用的NC应用,或扩展原系统的NC应用。对于需要复杂功能及界面控制的应用,适合在API层次进行二次开发。在该层次上开发需要HNC-8 SDK开发包的支持。HNC-8 SDK开发包提供了开发框架,开发工具以及方位系统资源及控制系统的各类接口,借助HNC-8 SDK开发包,可以开发各类复杂的专用界面,甚至重新构建全新的HMI模块。但采用该方式开发,需要具有较强的C语言开发能力,以及要对系统的接口函数,加工工艺等方面较熟悉。

3)NCU层次二次开发

对于需要在NCU中扩展系统功能,特别是需要在插补周期内周期调用实现的功能,需采用NCU层次的二次开发并需要HNC-8 SDK开发包的支持。该层次的开发对开发人员的要求较高,不仅需要熟练的C语言编程功底,也需要对linux内核模块的开发有较深入的理解。 此方式一般适合系统厂家以及其他有能力的开发团队。

3、二次开发环境及开发步骤

在G代码层二次开发,不需要专门进行开发环境的配置,用编辑器编辑好G代码后,放在指定的目录即可。在进行API层次的二次开发时,需要在linux平台下用C语言进行。由于受开发工具及开发习惯的限制,直接在Linux平台下进行开发会对不熟悉linux平台的开发者带来一些障碍,因此在二次开发时,建议采用在window平台下安装linux虚拟机的方式进行。开发时,将应用开发目录配置成可以在windows和虚拟机linux平台共享的方式,在windows平台进行基本的程序编辑,编译以及基本测试通过后,再在虚拟机下进行编译成目标应用程序,然后传送给目标平台

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值