电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

用C语言编写华中数控铣床PLC程序VIP免费

用C语言编写华中数控铣床PLC程序_第1页
1/15
用C语言编写华中数控铣床PLC程序_第2页
2/15
用C语言编写华中数控铣床PLC程序_第3页
3/15
第1页共15页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第1页共15页如何用C语言编写华中数控系统PLC程序一、铣床内置式PLC的结构华中数控铣削数控系统的PLC为内置式PLC,其逻辑结构如图1所示。其中:X寄存器为机床输出到PLC的开关信号,最大可有128组(或称字节,下同);Y寄存器为PLC输出到机床的开关信号,最大可有128组;R寄存器为PLC内部中间寄存器,共有768组;G寄存器为PLC输出到计算机数控系统的开关信号,最大可有256组;F寄存器为计算机数控系统输出到PLC的开关信号,最大可有256组;P寄存器为PLC外部参数,可由机床用户设置(请运行参数子菜单中的PMC用户参数命令),共有100组;B寄存器为断电保护信息,共有100组。X、Y寄存器会随不同的数控机床而有所不同,主要和实际的机床输入/输出开关信号(如限位开关、控制面板开关)有关。但X、Y寄存器一旦定义好,软件就不能更改其寄存器各位的定义;如果要更改,必须更改相应的硬件接口或接线端子。R寄存器是PLC内部的中间寄存器,可由PLC软件任意使用。G、F寄存器由数控系统与PLC事先约定好的,PLC硬件和软件都不能更改其寄存器各位(bit)的定义。P寄存器可由PLC程序与机床用户任意定义。二、铣床内置式PLC的软件结构及其运行原理和一般C语言程序都必须提供main()函数一样,用户编写内置式PLC的C语言程序必须提供如下系统函数定义及系统变量值:externvoidinit(void);//初始化PLCexternunsignedplc1_time;//函数plc1()的运行周期,单位:毫秒externvoidplc1(void);//PLC程序入口1externunsignedplc2_time;//函数plc2()的运行周期,单位:毫秒externvoidplc2(void);//PLC程序入口2其中,1.函数init()是用户PLC程序的初始化函数,系统将只在初始化时图1华中数控系统内置式PLC的逻辑结构第2页共15页第1页共15页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第2页共15页调用该函数一次。该函数一般设置系统MSBT功能的响应函数及系统复位的初始化工作;2.变量plc1_time及plc2_time的值分别表示plc1()、plc2()函数被系统周期调用的周期时间,单位:毫秒。系统推荐值分别为16毫秒及32毫秒,即plc1_time=16,plc2_time=32;3.函数plc1()及plc2()分别表示数控系统调用PLC程序的入口,其调用周期分别由变量plc1_time及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程序只要包含系统必须的几个函数和变量定义即可编译运行(当然它什么事也不能做)。假设我们建立一个文本文件并命名为plc_null.cld,其文件内容为://plc_null.cld://PLC程序空框架,保证可以编译运行,但什么功能也不提供////版权所有©2000,武汉华中数控系统有限公司,保留所有权利。//http://huazhongcnc.comemail:market@huazhongcnc.com//tel:+86-27-87545256,87542713fax:+86-27-87545256,87542713//最后更改日期:2000.10.31//作者:阳道善email:yang@HuazhongCNC.com//#include"plc.h"//PLC系统头文件voidinit()//初始化PLC{}voidplc1(void)//PLC程序入口1{plc1_time=16;}voidplc2(void);//PLC程序入口2{plc2_time=32;}如果您安装了MSDOS6.22及BorlandC++3.1软件,在铣床数控系统的PLC目录下,输入如下命令:第3页共15页第2页共15页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第3页共15页C:\hcnc2000\plc>makeplcplc_null系统会响应:1file(s)copiedMAKEVersion3.6Copyright(c)1992BorlandInternationalAvailablememory64299008bytesbcc+plc.CFG-Splc.cldBorlandC++Version3.1Copyright(c)1992BorlandInternationalplc.cld:Availablememory4199568TASM/MX/Oplc.ASM,plc.OBJTurboAssem...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

用C语言编写华中数控铣床PLC程序

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部