如何理解华中数控系统的PLC

上传人:宝路 文档编号:5502438 上传时间:2017-09-06 格式:DOC 页数:20 大小:124KB
返回 下载 相关 举报
如何理解华中数控系统的PLC_第1页
第1页 / 共20页
如何理解华中数控系统的PLC_第2页
第2页 / 共20页
如何理解华中数控系统的PLC_第3页
第3页 / 共20页
如何理解华中数控系统的PLC_第4页
第4页 / 共20页
如何理解华中数控系统的PLC_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《如何理解华中数控系统的PLC》由会员分享,可在线阅读,更多相关《如何理解华中数控系统的PLC(20页珍藏版)》请在金锄头文库上搜索。

1、如何理解华中数控系统的 PLC版权所有2000 ,武汉华中数控系统有限公司 保留所有权利http:/www.HuazhongCNC.com email: marketHuazhongCNC.comtel: +86-27-87545256, 87542713 fax: +86-27-87545256, 87542713如何理解华中数控系统的 PLC所谓 PLC 就是 Programmable Logic Controller,即可编程逻辑控制器。如果做个比方的话,PLC 好比就是连接在计算机数控系统(CNC)与机床之间的一道桥梁。数控机床用 PLC 一般分为两类:一类是将 CNC 和 PLC 综

2、合起来设计,称为内装型( 或集成型)PLC,内装型 PLC 是 CNC 装置的一部分;另一类是以独立专业化的 PLC 生产厂家产品来实现顺序控制功能,称为独立型(或外装型)PLC 。华中数控铣削数控系统的 PLC 为内装型(或称为内置式)PLC。一、怎样查看 PLC 执行文件所在的位置在 DOS 系统下面,首先进入铣床软件所安装的目录(如 C:HCNC2000) ,然后在提示符下敲入:type ncbios.cfg您将会清晰地看到屏幕上出现如下的内容(具体内容因机床的不同而异,分号后面是我们这里添加的注释):DEVICE=C:HCNC2000binsv_step.drv ;步进电机伺服驱动DE

3、VICE=C:HCNC2000binhc5904.drv ;5904 驱动程序DEVICE=C:HCNC ;PLC 程序PARMPATH=C:HCNC2000PARM ;系统参数所在目录DATAPATH=C:HCNC2000DATA ;系统数据所在目录PROGPATH=C:HCNC2000PROG ;数控程序所在目录DISKPATH=A: ;软盘BINPATH=C:HCNC2000bin ;系统 BIN 目录TMPPATH=C:HCNC2000 ;临时文件所在目录NETPATH=X: ;网络目录在第三行用粗体突出的就是一个 PLC 路径设置的实例。二、PLC 源程序的识别和编译华中数控系统的

4、PLC 源程序都是以.cld 为后缀的文件。如:PLC_FX2.CLD、PLC_BYJN.CLD、KBD_PLC1.CLD 等等。怎样编译一个已经编好的 CLD 文件呢?首先,您手头上必须拥有华中数控公司所提供的 PLC 编译软件包。它往往存在于一个名叫 PLC 的目录下面,其中必定包含一个名叫 SYS 的子目录。然后,将您已经编写好的 CLD 文件拷贝到 PLC 的目录下面。假设您的CLD 文件名叫 PLC_JS.CLD,在 DOS 提示符下敲入:makeplc plc_js回车以后,系统就开始编译工作了。这里的 makeplc 是一个批处理文件的名字,该文件 MAKEPLC.BAT 可以在

5、 PLC 目录下找到。如果编译成功,在该目录下就会生成一个 PLC_JS.COM 的程序。由此可见,如何理解华中数控系统的 PLC版权所有2000 ,武汉华中数控系统有限公司 保留所有权利http:/www.HuazhongCNC.com email: marketHuazhongCNC.comtel: +86-27-87545256, 87542713 fax: +86-27-87545256, 87542713整个过程就是:*.CLD makeplc *.COM三、铣床内置式 PLC 的结构华中数控铣削数控系统 PLC 的逻辑结构如图 1 所示。其中:X 寄存器为机床输出到 PLC 的开关

6、信号,最大可有 128 组(或称字节,下同);Y 寄存器为 PLC 输出到机床的开关信号,最大可有 128 组;R 寄存器为 PLC 内部中间寄存器,共有 768 组;G 寄存器为 PLC 输出到计算机数控系统的开关信号,最大可有 256 组;F 寄存器为计算机数控系统输出到 PLC 的开关信号,最大可有 256 组;P 寄存器为 PLC 外部参数,可由机床用户设置( 请运行参数子菜单中的PMC 用户参数命令),共有 100 组;B 寄存器为断电保护信息,共有 100 组。X、Y 寄存器会随不同的数控机床而有所不同,主要和实际的机床输入/ 输出开关信号(如限位开关、控制面板开关)有关。但 X、

7、Y 寄存器一旦定义好,软件就不能更改其寄存器各位的定义;如果要更改,必须更改相应的硬件接口或接线端子。R 寄存器是 PLC 内部的中间寄存器,可由 PLC 软件任意使用。G、F 寄存器由数控系统与 PLC 事先约定好的,PLC 硬件和软件都不能更改其寄存器各位(bit)的定义。P 寄存器可由 PLC 程序与机床用户任意定义。四、一个最简单的 PLC 程序例子最简单的 PLC 程序只要包含系统必须的几个函数和变量定义即可编译运行(当然它什么事也不能做) 。假设我们建立一个文本文件并命名为 plc_null.cld,其文件内容为:/plc_null.cld:/ PLC 程序空框架,保证可以编译运行

8、,但什么功能也不提供/B、 P系 统 函 数 内 置 式PLCR寄 存 器 机床数 控系 统 GF XY图 1 华中数控系统内置式 PLC 的逻辑结构如何理解华中数控系统的 PLC版权所有2000 ,武汉华中数控系统有限公司 保留所有权利http:/www.HuazhongCNC.com email: marketHuazhongCNC.comtel: +86-27-87545256, 87542713 fax: +86-27-87545256, 87542713/ 版权所有2000,武汉华中数控系统有限公司,保留所有权利。/ http:/ email: tel: +86-27-875452

9、56,87542713 fax: +86-27-87545256,87542713/ 最后更改日期: 2000.10.31/ 作者:阳道善 email: yangHuazhongCNC.com/#include plc.h /PLC 系统头文件void init()/初始化 PLCvoid plc1(void) /PLC 程序入口 1plc1_time=16;void plc2(void); /PLC 程序入口 2plc2_time=32;如果您安装了 MSDOS6.22 及 Borland C+3.1 软件,在铣床数控系统的 PLC目录下,输入如下命令:C:hcnc2000plcmakepl

10、c plc_null系统会响应:1 file(s) copiedMAKE Version 3.6 Copyright (c) 1992 Borland InternationalAvailable memory 64299008 bytesbcc +plc.CFG -S plc.cldBorland C+ Version 3.1 Copyright (c) 1992 Borland Internationalplc.cld:Available memory 4199568TASM /MX /O plc.ASM,plc.OBJTurbo Assembler Version 3.1 Copyrig

11、ht (c) 1988, 1992 Borland InternationalAssembling file: plc.ASMError messages: NoneWarning messages: NonePasses: 1Remaining memory: 421ktlink /t/v/m/c/Lc:BC31LIB MAKE0000.$Turbo Link Version 5.1 Copyright (c) 1992 Borland InternationalWarning: Debug info switch ignored for COM files1 file(s) copied并

12、且又回到 DOS 提示符下:C:hcnc2000plc这时,表示我们的第一个 PLC 程序编译成功。编译结果为文件如何理解华中数控系统的 PLC版权所有2000 ,武汉华中数控系统有限公司 保留所有权利http:/www.HuazhongCNC.com email: marketHuazhongCNC.comtel: +86-27-87545256, 87542713 fax: +86-27-87545256, 87542713plc_。然后,我们可以更改我们的铣床软件系统配置文件NCBIOS.CFG,并加上如下一行文本让系统启动时加载我们新近编写的 PLC 程序:device=c:hcnc2

13、000plcplc_以上就是在华中数控系统平台上编写并编译 C 语言 PLC 程序的全过程,非常简单。五、铣床内置式 PLC 的软件结构及其运行原理和一般 C 语言程序都必须提供 main()函数一样,用户编写内置式 PLC 的 C语言程序必须提供如下系统函数定义及系统变量值:extern void init(void); /初始化 PLCextern unsigned plc1_time; /函数 plc1()的运行周期,单位:毫秒extern void plc1(void); /PLC 程序入口 1extern unsigned plc2_time; /函数 plc2()的运行周期,单位:

14、毫秒extern void plc2(void); /PLC 程序入口 2其中,1. 函数 init()是用户 PLC 程序的初始化函数,系统将只在初始化时调用该函数一次。该函数一般设置系统 MSBT 功能的响应函数及系统复位的初始化工作;2. 变量 plc1_time 及 plc2_time 的值分别表示 plc1()、plc2()函数被系统周期调用的周期时间,单位:毫秒。系统推荐值分别为 16 毫秒及 32 毫秒,即 plc1_time=16, plc2_time=32;3. 函数 plc1()及 plc2()分别表示数控系统调用 PLC 程序的入口,其调用周期分别由变量 plc1_tim

15、e 及 plc2_time 指定。系统初始化 PLC 时,将调用 PLC 提供的 init()函数(该函数只被调用一次)。在系统初始化完成后,数控系统将周期性地运行如下过程:1. 从硬件端口及数控系统成批读入所有 X、F、P 寄存器的内容;2. 如果 plc1_time 所指定的周期时间已到,调用函数 plc1();3. 如果 plc2_time 所指定的周期时间已到,调用函数 plc2();4. 系统成批输出 G、Y、B 寄存器。因此,用户提供的 plc1()函数及 plc2()函数必须根据 X 及 F 寄存器的内容正确计算出 G 及 Y 寄存器的值。六、进一步理解 PLC从上面的例子我们不难看出,在 PLC 源程序里,最主要的函数就是:void init();void plc1();void plc2();而且,它们是缺一不可的。然后,根据您机床动作的具体需要,可以自己增添函数。最终,这些由您自己定义的函数将可以在以上三个函数中被任意调用。例如:void stop_move(); /坐标轴停止运动void stop(); /机床停止运动(包括坐标轴和主轴)如何理解华中数控系统的 PLC版权所有2000 ,武汉华中数控系统有限公司 保留所有权利http:/www.HuazhongCNC.com email: marketHuazhongCNC.comtel: +

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号