- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PLC编程C语言讲述
华中数控培训讲义 · PLC编程 C语言编程 PLC控制的范围 数控机床所受到的控制可分为两类:数字控制和顺序控制。 数字控制主要指对各进给轴进行精确的位置控制,包括:轴移 动距离、插补、补偿等。 顺序控制主要指以CNC内部和机床各行程开关,传感器,按 钮,继电器等的开关量信号状态为条件,并按照预先规定的逻辑顺 序对诸如主轴的起停,刀具的转换,工件的夹紧松开,液压,冷 却,润滑系统的运行等进行的控制。 与“数字控制”比较,“顺序控制”的信息主要是开关量信号。 PLC控制的范围包括全部顺序控制和简单的数字控制(如:轴 点动) 寄存器是数控系统、PLC、机床三者之间交流的载体,是PLC控制的主要对象,也是PLC程序的最小单元。 寄存器的个数 PLC源代码的基本构成 初始化函数void init(); 仅上电时调用一次 高速扫描函数void plc1(); 每隔8ms被调用一次 低速扫描函数void plc2(); 每隔128ms被调用一次 PLC执行程序的生成 运行环境---MSDOS6.22 编译器---Borland C++ 3.1 BC31的路径需要加入OS的环境变量 编译环境---各种信息定义文件(*.inc) PLC源文件 铣---plc_21mu.cld 车---plc-21.cpp PLC头文件 车---plc_map.h (主要包含IO点的定义) PLC头文件的生成 寄存器的数值说明 定义自己的R寄存器 正确的定义方式 #define spdl_ctrl R[20] //主轴控制(0停止1正转2反转) #define spdl_cmd R_i[22/2] //主轴转速 #define spdl_dwell R_ui[24/2] //主轴定时器 #define Lube_dwell R_ul[28/4] //润滑定时器 PLC常用指令浅析一 #define bit(x,b) ((x)(1(b))) //获取某一位的状态 #define set_bit(x,b) ((x)|=1(b)) //将某一位置1 #define clr_bit(x,b) ((x)=~(1(b))) //将某一位置0 PLC常用指令浅析二 #define axis_ctrl(x) (G_ui[(x)*10]) //轴控制 #define axis_stat(x) (F_ui[(x)*10]) //轴状态 #define ch_ctrl(x) (G_ui[(x)*20+162]) //通道控制 #define ch_stat(x) (F_ui[(x)*20+162] //通道状态 PLC常用指令浅析二 实例二:循环启动的处理(按键X31.6,灯Y31.6) if(bit(X[31],6)) { *ch_ctrl(0)=~CH_FEEDHOLD_SW; //取消进给保持 *ch_ctrl(0)|=CH_CYCLE_SW; //循环启动开始 } else *ch_ctrl(0)=~CH_CYCLE_SW; //取消循环启动 if(*ch_stat(0)CH_CYCLE_LAMP) set_bit(Y[31],6); //点亮循环启动灯 else clr_bit(Y[31],6); //熄灭循环启动灯 PLC常用函数浅析一 除了宏定义,函数也是PLC必不可少的组成部分。前面我们已经介绍了 PLC不可或缺的三个函数init()、plc1()和plc2(),这里我们再介绍几个常用的函数。 PLC常用函数浅析一 实例:X轴回零的处理(正点动X35.4,回零挡块X1.0) #define Finding_Axis_Zero R[7] if(*axis_stat(0)AX_HOME_LAMP) //回零完成 clr_bit(Finding_Axis_Zero,0); else if(bit(X[35],4)) set_axis_home(0,1); //回零开始 if(get_bit(X[1],0)) //遇到回零开关 { *axis_ctrl(0)|=AX_HOME_SW; if(*axis_stat(0)AX_HOME_GOING) set_bit(Finding_Axis_Zero,0); } else *axis_ctrl(0)=~AX_HOME_SW; if((*ch_ctrl(0)CH_MODE_MSK)!=MODE_REF_RETURN) set_axis_home(0,0); PLC常用函数浅析二 M(辅助)、S(主
您可能关注的文档
- PKPM软件讲稿弹性动力时程分析讲述.ppt
- PKPM基础设计软件功能详解讲述.ppt
- pkpm学习讲义讲述.ppt
- pkpm问题分析讲述.doc
- PLC00讲述.ppt
- plc2课程设计讲述.doc
- PlasticInjectionMoldingIntroduction讲述.ppt
- plc-课程设计报告讲述.doc
- PLCch讲述.ppt
- PlateSpinForge服务器灾备解决方案ISV讲述.ppt
- 2025及未来5年中国溶解乙炔气市场数据分析及竞争策略研究报告.docx
- 2025及未来5年中国桂花陈酒市场数据分析及竞争策略研究报告.docx
- 2025及未来5年中国发电机水泵水封市场数据分析及竞争策略研究报告.docx
- 2025及未来5年中国手动丝印机市场数据分析及竞争策略研究报告.docx
- 2025及未来5年中国树脂圣诞工艺品市场数据分析及竞争策略研究报告.docx
- 2025及未来5年中国座便器连接管市场数据分析及竞争策略研究报告.docx
- 2025及未来5年中国提花床罩市场数据分析及竞争策略研究报告.docx
- 2025及未来5年中国PP阻燃色母粒市场数据分析及竞争策略研究报告.docx
- 2025及未来5年中国琼脂盒市场数据分析及竞争策略研究报告.docx
- 2025及未来5年中国仿真发丝切片市场数据分析及竞争策略研究报告.docx
最近下载
- 创新思维与创业实验(东南大学)中国大学MOOC慕课 章节测验 客观题答案.pdf VIP
- 学堂在线 临床中成药应用 综合考试答案.docx VIP
- 人教版三年级小学语文上册第3单元试卷3.doc VIP
- 铁道概论(第二版)课件:铁路信号与通信(一).pptx VIP
- 低温天气应急处置方案.docx VIP
- 第11课 社会历史的主体-【中职专用】2024年中职思想政治《哲学与人生》课件(高教版2023·基础模块).pptx VIP
- 战略管理全流程:从市场洞察到战略规划、解码、执行、评估与落地保障的综合性工作坊指南.pdf VIP
- 知识图谱驱动的铁路桥梁BIM智能审核系统构建与实现.docx VIP
- 交管12123学法减分考题50道含答案3k.pdf VIP
- 3G101-1图集CAD版.pdf VIP
原创力文档


文档评论(0)