对于PLC编程,哪种IEC 61131-3编程语言最适合?
图片来源:ControlSphere Engineering
作者 | Gary L. Pratt
“
有这么多可编程逻辑控制器(PLC)编程语言和标准可供选择,对于自动化和控制应用而言,最适合的选择是什么?”
可编程逻辑控制器(PLC)有很多编程语言可供选择。有种说法,标准的伟大之处在于有很多选择!尽管这很讽刺,但在IEC 61131-3编程语言中,有多种语言标准可供选择确实是一个优势。
在参加我的培训班时,很多学生抱着这样一种心态:选择最适合自己的语言,然后专门学习该语言。上课伊始,他们经常会问我会推荐适用哪种语言。或者,“最好的语言是哪个?”
我没有回答,问他们一个问题:“在阿拉伯数字中,哪个数字最好?”或“英语中,哪个词最好?” 再比如:办公室软件中,哪个工具最好?是文档编辑器、演示文稿编辑器,还是电子表格编辑器?虽然可以使用文档编辑器创建演示文稿和电子表格,但这是正确的方法吗?
使用一种工具实现多种目的,需要学习各种技巧,这是否值得付出?仅学习该工具对工作有用的主要功能,是不是更有效?与办公软件一样,为应用选择最佳编程语言是最有效的,可以避免很多麻烦。当使用的IEC 61131-3编程语言能够充分发挥其语言的优势时,PLC的编程和维护功能就会得到加强。
▎ 图1:IEC 61131-3编程语言提供了适合特定需求的语言。图片来源:ControlSphere Engineering
梯形图编程
梯形图(LD)编程的历史,可以追溯到大约100年前的继电器梯形逻辑(RLL),它主要用于描述电气元件系统(如继电器、计时器和电动机)。在自动化时代初期PLC逐步替换继电器和计时器时,创建一种用户熟悉并与被替换的工具相似的编程语言非常重要。
不幸的是,控制器变得越来越强大,能够实现的功能也已经远远超过继电器和计时器,LD语言被用于各种新的场景,而这并不是LD所擅长的,因此效果也不是特别理想。
PLC供应商提供新的、更适合PLC和可编程自动化控制器(PAC)应用的语言的速度比较缓慢,使这种情况进一步恶化。对于源自北美的控制器而言尤其如此,这可以解释在全球范围内,LD持久受欢迎的程度为什么会有所差异。
LD编程的优势是什么?为什么它能持久受欢迎?关键就是图形化。而通常来说工程师是更倾向于图形化思维的。
起初,大多数LD编程的替代方法都是基于文本的语言,这些语言与工程师的图形化思维不会产生共鸣,其结果就是不愿从LD转向其它语言。幸运的是,这种情况正在发生变化。
LD仍然是一门伟大的语言,它的初衷是执行复杂的布尔逻辑。在这个领域内,LD逻辑易于设计且易于调试。要确定为什么结果与预期不符,有多容易?在LD语言中,只需要观察蓝色实心触点的路径在何处中断就可以快速获得答案。
▎ 图 2 :该图比较了在 Codesys 中实现复杂布 尔逻辑的不同语言
顺序功能图编程
顺序功能图(SFC)是一种图形语言,非常适合表示状态机(state machine),并且像LD语言一样,它吸引了工程师的图形化思维天性。
状态机的历史可以追溯到很多年前,但是直到最近才被用于工业编程。状态机是表示系统行为的一种非常强大的方法,可用于表达行为取决于过去历史记录的系统逻辑,例如:
1.设置线圈或复位线圈;
2.封装逻辑(布尔反馈);
3.由代码设置的内部标志,用于决定未来的行为。
实际上,即使是简单的TON On-Timer和R-Trig one-shot都是状态机。它们的下一个行为取决于先前的输入和行为。与其它编码技术相比,状态机具有许多优势:
1.它们易于设计,因为它清楚地描述了系统可能的状态,系统如何在这些状态之间转换,系统在这些状态下应采取的行动。
2.在运行时,可以很容易地确定系统处于什么状态,在该状态下正在做什么,以及在什么条件下系统会切换到下一个状态(或者过程中出了什么问题,导致无法切换到下一个状态)。
3.促进构思周密且组织良好的设计。这样可以确保所有可能的事件都已得到妥善处理(就不会有人半夜三更把你从床上叫起来,去修复无法正确处理异常工况的代码)。
4.易于确定是否已经测试了所有可能事件。只需打印出SFC,并在执检查时划掉每个状态和切换条件即可。完成所有工作后,测试就完成了(程序员的置信度为100%)。
▎ 图3:该图显示了顺序功能图的编程组件
如何实现状态机?
几乎任何语言都可以实现状态机,但它们都需要特定的编码技术,包括步(step)、转换(transition)、分支/跳转(branch/jump)和动作(action)。
步描述了系统可以驻留的状态;转换指示系统何时应从上一步转移至下一步;分支和跳转指示下一步应该是什么;动作指定在该步期间(进入或退出该步)应执行的操作。
由于其图形化属性和工作的专业性,SFC语言是状态机最自然的选择。对于那些需求异常复杂或要求特别灵活的系统,状态机也可以用基于文本的语言来实现。对于只能使用LD的企业,状态机甚至可以在LD中实现,方法是为每个状态使用一个线圈,转移逻辑为每个线圈通电/断电,将系统从一个状态转移到下一个状态,以及利用使用状态线圈的独立逻辑来执行动作。
一些供应商还可以用统一建模语言(UML)来实现状态图,作为SFC的更强大、更灵活的替代方法,但这需要更长的学习曲线,而且在工业控制领域中的接受度有限。
对于状态机,语言的选择是次要的,所用技术的选择更重要。在SFC中,该语言强制使用状态机技术。在其它语言中,使用的技术取决于工程师制定的规则。
▎ 图4:基于Codesys连续功能图语言,展示了一个基于块的编程设计 示例
功能块图编程
功能块图(FBD)是一种图形语言,符合工程师的图形化思维。来自Codesys(以前被称为3S-Smart Software Solutions)的集成开发环境提供了两种FBD,即传统的IEC 61131-3 FBD和类似但更灵活的连续功能块图(CFC),CFC还没有正式成为IEC 61131-3的一部分。CFC是FBD的超集,具有两大优势:
1.基于块的功能编程(执行布尔和数学运算);
2.分层设计(调用其它功能和功能块)。
1 基于块的编程
基于块的设计由预定义功能组件组成,这些组件连接在一起执行布尔逻辑、数学计算或二者兼而有之。当输出是输入的函数时(换句话说,当没有状态变量,例如布尔反馈、设置/复位线圈或标志时),CFC块编程非常出色。当同时使用无状态功能和基于状态的功能时,请结合使用CFC和SFC。
因为连接性是用功能块之间的线来表示的,所以很容易理解信息流以及信息是如何沿着其路径进行修改的。如果功能开始变得复杂,则应将其分为较小的、更易于管理的子块。如果块之间存在大量连接,则可以将这些线连接至数据结构类型的引脚。
结构引脚(structure pin)具有3个优点:
1.在层次化结构设计中,每个层次都消除了不必要的细节,更清晰易于理解;
2.保持较小的功能块,可以在一页上查看整个信息流;
3.允许信息流向上游和下游,以进一步减少不必要的细节。
对于以前采用LD实施基于块或分层功能的PLC程序员来讲,CFC提供了一种更为简洁和灵活的方法。CFC的开发速度更快,而且对于将来负责维护或改进代码的工程师来说,也更容易理解。
▎ 图5:结构引脚可以减少不必要的细节和混乱,从而增强了图表的可 读性。
2 分层设计
分层设计是一种从很多简单的构建块层层设计的实践。与传统的扁平化设计相比,分层设计具有许多优点:
1.定制;
2.创建;
3.测试与完善;
4.理解和维护;
5.易于复用。
构建块技术支持并鼓励在层次结构的每个级别上,展现同等程度的细节,这就使块技术更易于设计和理解。这样,在较高层次的设计中,不必因为展现细节而被弄得杂乱无章,这些细节只在较低层的设计中很重要。在层次结构的每个级别上,分层CFC设计应都具有统一的细节展示。
使用LD作为构建块语言的传统方法会存在2个弊端:
1.信息的低密度导致LD设计可能会分布到数10页上,很难或不可能看到和理解全局;
2.不同层次的细节混杂在同一层次上会十分混乱,这使设计难以理解和维护。
而使用结构化文本的CFC分层设计可以解决这两个问题,同时保持了LD的图形特性。这是个两全其美的解决方案。
分层设计是面向对象的工业编程(OOIP)的关键功能。在部署和配置用户自定义的功能块以后,CFC编程开始与分布式控制系统(DCS)的编程/组态有点类似,但使用IEC 61131-3程序员可以控制底层的块。如果某个块需要较小的改进,程序员就可以执行此操作,而无需费时费力的请DCS供应商介入。
完整的分层PLC设计,可以看作是一棵由分层CFC构成主干和分支的树。基于块的CFC、SFC、LD和ST填充树叶所处位置的详细功能设计。IEC 61131-3语言共同构成了一个团队,该团队比其各个部分的功能更强大。
▎ 图6:此处的分层设计是在连续功能图编程中实现的。
结构化文本编程
尽管LD、SFC和FBD/CFC语言可以出色的完成其任务,但有些运算并不适合使用图形化语言。
一些支持使用结构化文本(ST)语言编程的运算包括:
1.迭代运算,例如For、While和Repeat;
2.复杂条件和选择,例如IF-THEN和CASE;
3.位运算,例如按位与、移位、旋转;
4.文本字符串运算;
5.具有特殊要求或特别复杂的状态机;
6.纯粹的面向对象编程(调用方法,设置属性等)。
有许多很好的教程,可指导工程师从其它基于文本的语言过渡到ST。对于那些完全不熟悉基于文本的语言的人来说,Visual Basic教程是一个很好的起点。尽管结构化文本基于Pascal编程语言,但它与VB有非常相似,因此可以参考应用更广泛的VB教程。
使用最合适的语言编程
要创建有效的工业控制程序,掌握合适的编程语言并知道如何有效使用这些语言非常重要。有很多语言可供PLC选择,IEC 61131-3编程语言标准也提供了多种选择。充分利用每种语言的优势效率会更高,而不是学习一种语言的各种技巧和变通方法来使其适用于所有应用。程序员应为应用选择最佳语言。
PLC与文本屏、编码器、变频器程序实例,这文章有料!
1、可调定长自动裁切控制装置的系统构成
图5-28 可调定长自动裁切控制装置系统配置示意图
裁切机器由机体、传送带、气动裁切刀具等机械部件和变频器、电机、刀位检测开关、旋转编码器等电力拖动部件和长度检测部件构成。机器工作原理简述:由变频器控制电机起停与速度,电机由皮带拖动机器主轴,主轴带动输送带,输送带将待裁切板材源源不断地输送至裁切刀具下;
旋转编码器经弹性连轴器(可用软塑料管代用)与机器旋转主轴连接,对主轴的运行线距离进行脉冲计数,当设定长度(设定脉冲数)与编码器计数长度相等时,由PLC输出下刀指令,变频器停止运行,输送带停止输送,下刀电磁阀动作,气动裁切刀具下行,对输送带上的板材进行裁切。裁切过后,系统又自动启动运行。
系统设计要求:
1)、板材输送速度可以调节。采用变频器拖动电机满足此要求;
2)、裁切长度可以设定,并可以监控,采用PLC与文本屏相结合,满足此要求;
3)、机器主轴的直径规格不一,与长度设置互有影响,应考虑此因素。可用文本屏可对主轴数据(轴周长)修正;
4)、选用旋转编码器的型号不同,脉冲计数值/周有别。用文本屏可对旋转码器的脉冲计数值/周数据进行修正;
5)、正常输送使用一个可调整的较高的输送速度,称为变频高速;而当输送长度接近于裁切长度时,输送带应进入低速运行阶段,称为变频低速(可为一固定速度),这样便于提高裁切精度和裁切质量。低速输送距离(长度)可以根据现场操作运行情况,由文本屏设置;
6)、下刀裁切时,输送带必须停止输送,裁切完毕后,输送带开始运行。下刀裁切至重新运行,需有一个适宜的延时时间,如时间太短,刀具未升到原位,容易与板材相顶,损坏板材和刀具。若时间过长,会导致本班产量降低。这个下刀时间(实际为刀具复位时间)也可以由文本屏进行设置;
7)、本班产量——裁切张数,可以在屏面上显示和监控。下一班人员可将显示值复位清零,重新计数;
8)、系统的运行方式:用按钮启动和停止,实现自动裁切功能。
图5-29 可调定长裁切装置系统电气压原理(接线)图
根据以上要求,核算了PLC的I/O点数,绘制系统原理接线图并编写控制程序。
可调定长裁切装置选用10点LS/K7MDR10S型PLC、YD204VL4文本屏,和伟创AC60/1.5kW变频器,用CDD-11N型接近开关(常态为接点接通,检测物体到位后,接点开断)采集刀位信号,用TRD-2T600BF型旋转编码器测量板材长度。
PLC的P40端子控制下刀电磁阀,进行裁切控制;P41端子输出接点信号做为变频器的FWD运转信号。变频器的运转频率由RP1电位器调节给定;P43端子连接变频器的X3端子,X3端子功能被设置为点动,该端子信号输入时,变频器以点动(低速)频率运行。
变频器应该调整的参数值:
1) 运行/停止命令,E-01:置1,端子起/停控制;
2) 主速频率给定E-02:置 2,端子VS1,0—10V信号,由外接电位器调整;
3) 控制端子X3功能选择F-02:置 1,正转点动运行;
4) 点动频率E-25:根据运行需要调整。先预置为7Hz;
5) 停机方式E-34:置 1,自由停车;
6) 电机过流保护E-57:设定值应等于电机铭牌上的额定电流值或为电机额定电流的1.1倍;
7) 加速时间根据需要调整,为提高工效,将加速时间设为0.3秒,减速时间设为0.6秒。变频器在较短时间加速至全速,容易出现过载报警与停机。为了满足用户快提速和提高产量的要求,将750W电机配用1.5G型变频器。
图5-29配线图中,裁切刀位位置由光电开关检测,检测信号由P05端子输入。刀位输入静态为常闭点信号,裁切到位后,输入一个常闭点的开断信号;编码器的计数信号由P0、P1两个输入端子进入,本例程序电路,通过参数已将HSC 0(高速计数通道1)设置为两相CW/CCW工作模式(设置方法详见第三章的第二节),CW:正转计数;CCW:反转计数。输送带正向运行时,P00输入信号有效,程序电路对从P00端子输入的信号进行加计数;输送带反向运行时,P01输入信号有效,对从P01端子输入的信号进行减计数。这样,当因某种原因需进行倒车时,高速计数的结果会自动减去倒车尺寸,保障裁切长度的准确。
2、PLC程序电路(见下图5-30、图5-31)
程序电路完成的主要任务是对输送带输送的板材进行长度计量和裁切控制,因而13-63程序步为一段对高速计数输入的高速计数脉冲进行相关算术计算的程序,从而得出裁切长度、减速距离与当前长度监控值等数据(见下文程序解析);
裁切控制应用了HSCST(高速计数有效)指令,以取出旋转编码器输入的计数脉冲数,并存入数据寄存器D5中,供计算电路采用。
程序电路中还用到了触点比较指令和普通计数指令(计数器C0),相对应的程序电路解析见下文。下面先行给出整体的程序电路,请读者对应右侧注解,参考相关指令的用法,再与后文的文本屏画面相结合,找到画面与程序电路的结合点(相关软元件的来龙去脉)。
图5-30 可调定长裁切装置PLC程序电路第一段
图5-31 可调定长裁切装置PLC程序电路第二段
3、文本屏的画面编辑
一般情况下,先将PLC程序电路编写完毕,再据程序电路的“相关的元件地址”编辑文本屏画面。程序电路与文本屏画面两者产生联系的元件如下表所示。
表5-5 PLC程序电路与画面联系元件表
文本屏画面如下:
图5-32 1号画面。画面描述:开机画面。
1号画面: 除了用文字串键入一些说明外,使用三个功能键,均是担任画面跳转功能的。
左行箭头功能键:
定义为“画面跳转”、“3”。
文字提示:监控。按此键转转3号“监控”画面;
右行箭头功能键:
定义为“画面跳转”、“2”。
文字提示:设定。按此键转2号“设定1”画面;
下行箭头功能键:
定义为“画面跳转”、“5”。
文字提示:帮助。按此键转5号“操作说明1”画面。
2号画面, 编辑和定义了两个“设定型”寄存器,用于设定“裁切长度”的寄存器D3510和用于设定“减速距离”的定时器D3550。此外,还编辑了两个画面跳转功能键画面。
上行箭头功能键:
定义为“画面跳转”、“1”。
文字提示:返回。按此键时返回1号开机画面;
“8”数字功能键:
定义为“画面跳转”、“4”。隐形键。
按此键时,转换到4号“设定2”画面。
2号画面(见下图5-33):将数字小键盘中的“8”键,设置为隐形功能键,按此键时将从2号画面跳转到4号(设定2)画面。“8”键,在编辑软件中以“模糊图形”的形式出现,但实际屏显示画面中,该键是“隐形”的。
为什么在该画面要定义一个隐形键用作画面转换呢?
这是因为:4号(设定2)画面内容,有主轴直径、编码器类型及下刀时间的调整,这些数据的随意调整会造成裁切长度的不准确,从而造成材料的报废!采用隐形功能键,对该键的应用只有少数操作人员得知和可以进入设定2画面,进行有关设置。无关人员,轻易不会进入设定2画面,避免了误调节造成的损失。
隐形键的使用,往往是出于对重要可调节数据(画面)的保护,而设置的。
图5-33 2号画面。画面描述:设定1
图5-34 3号画面。画面描述:监控
3号画面为监控画面 ,定义了两个数据寄存器,用于本班产量(裁切张数显示)监控的D3530和当前长度(当前板材计量长度)值显示的D3532。数据寄存器的内部数据来自PLC程序电路。
定义了左行箭头功能键为开关量控制位元件M50,用于对本班产量和当前长度计数值的复位。
定义了上行箭头功能键为“画面跳转”键,按此键时画面返回到1号开机画面。
图5-35 4号画面。画面描述:设定2
4号画面是针对装置机械特性和器件类型 ,进行的相关设定。定义了三个“设定型”寄存器, D3512:用于设定“主轴周长”;D3514:用于设定“编码脉冲”;D3500:用于设定“下刀时间”,为定时器T0的定时时间设置。画面设定数据是由文本屏下传至PLC程序电路,此类数据寄存器,应选中“设定”!
上行箭头功能键:
定义为“画面跳转”、“1”。文字提示:返回。
按此键时返回1号开机画面;
5-8号画面,是操作说明的文字处理画面, 画面底部的按键,设置的都是画面跳转功能。
下行箭头功能键:
定义为“画面跳转”、“6”。文字提示:下页。
转6号“操作说明2”画面;
上行箭头功能键:
定义为“画面跳转”、“1”。文字提示:上页。
返回1号开机画面。
图5-37 6号画面。画面描述:操作说明2
下行箭头功能键:
定义为“画面跳转”、“7”。文字提示:下页。
转7号“操作说明3”画面;
上行箭头功能键:
定义为“画面跳转”、“5”。文字提示:上页。
转5号“操作说明1”画面。
图5-38 7号画面。画面描述:操作说明3
下行箭头功能键:
定义为“画面跳转”、“8”。文字提示:下页。
转8号“操作说明4”画面;
上行箭头功能键:
定义为“画面跳转”、“6”。文字提示:上页。
转6号“操作说明2”画面。
图5-39 8号画面。画面描述:操作说明4
上行箭头功能键:
定义为“画面跳转”、“7”。文字提示:上页。
转7号“操作说明3”画面;
右行箭头功能键:
定义为“画面跳转”、“1”。文字提示:返回。
返回1号开机画面。
画面元件的定义和使用特点:
1)使用寄存器的编号为3500以后的编号,具有断电保持功能,便于本班产量等的计数保持,断电后,重新启动装置后,能在原计数值上继续累加。如不考虑断电保持功能,则可以采用任意编号的寄存器,如D1、D2;
2)同一功能键,在不同画面,可设置为不同的功能或相同的功能,如上行箭头键,可设置为上页跳转;在另一面面,又被设置为向开机画面的跳转。可以被重复设置和使用;
3)在设置界面,按SET键在各个要设置数据之间切换,按左右键切换到需要修改的数据位。按上下键修改数据,修改完成按ENT 确认数据修改。
4、程序电路解析
1、算术指令的应用:
MUL ,乘法指令;DIV ,除法指令;ADD ,加法指令;SUB ,减法指令。16位数据处理指令;
将指令前面加D,变为DMUL、DDIV、DADD、DSUB,则变为处理32位数据的算术指令。
注意: 高速计数器的计数范围为十进制32位,其设定值也为十进制32位。当利用传送或算术指令对高速计数进行处理时,应该采用32数据处理指令。当误用16位数据处理指令时,会出现程序电路不被执行或运算数据错误的状况。遇到这种情况,可以改变数据格式(如将UML指令改为DUML指令)试之。这也是在编程中经常遇到的问题。
算术指令不能直接与左母线连接,故用F0000(运行中接通)特殊辅助继电器触点,连接算术程序电路。
图5-40 可调定长裁切装置PLC程序电路中的算术指令电路
此段程序为本程序的中心部分,配合文本屏的数据设置,对寄存器中的数据进行加、减、乘、除运算,对板材长度和减速距离进行计算,用于下刀裁切控制和裁切前变频器的低速运行控制。决定裁切长度的三个量:编码器脉冲数/周、主轴周长和长度设定值。因为是采取旋转编码器来计数的,一张皮子的总长度,对应的是编码器的脉冲数,而上段程序中,加、减、乘、除运算的任务,便是根据编码器的旋转一周的脉冲数和机器主轴一周所运转的线距离和长度设定值,算出总长度脉冲数的。
为了计算方便,假设主轴周长为100厘米,编码器脉冲数/周为100,即一个脉冲数对应传送带输送长度为1厘米。那么现在设定长度为1000厘米,编码器应该输送出多少个脉冲(总长度脉冲数)?
这是一个简单的数学计算题,可列出下面一个等式:
因为:主轴周长/编码器脉冲=设定长度/总长度脉冲数
所以:总长度脉冲数=编码脉冲×长度设定/主轴周长 (100×1000/100=1000个脉冲数)
程序电路中,也是按上述算式,采用两个计算步骤来完成总长度脉冲数的计算的。电路第一行,先完成编码脉冲×长度设定,将乘积存入于D3516寄存器;电路第二行,再将D3516(乘积)/主轴周长,从而得出设定长度对对应的总长度脉冲数(数值存于D3518)。
将计算所得总长度脉冲数(D3518)与旋转编码器实际输入脉冲数(D5)相比较,当两者相等时,裁切刀具动作,即得到按长度设定所要求的板材长度。
第三、四、五行电路,是对开始减速脉冲数的计算电路。裁切长度为1000毫米,要求输送长度达800毫米时,控制变频器用点动速度(低速)运行,以提高裁切精度和裁切质量。需计算出800毫米所对应的编码器脉冲数,在实际编码器输入脉冲数与此相等时,PLC的40接点停止输出,变频器高速运行停止,43输出接点接通,变频器以设定点动速度(低速)运行。根据机械设备运行状态,减速距离可由屏面进行设置。
计算步骤与版式: 第一步,先算出减速距离的脉冲数——200毫米所对应的脉冲数,再将总长度脉冲数减去减速距离脉冲数,即得出开始减速脉冲数了。减速距离的计算用如下算式:
减速距离脉冲数=减速距离×编码脉冲/主轴周长
减速距离的计算由第三、四行电路完成。
第五行电路为减法算式: 总长度脉冲 - 减速距离脉冲数=开始减速脉冲数
将计算所得开始减速脉冲数(D3520)与旋转编码器实际输入脉冲数(D5)相比较,当两者相等时,PLC的P43接点动作,变频器转换成低速运行,为下刀裁切做好准备。
图5-42 可调定长裁切装置PLC程序电路中的低速命令电路
下刀命令与低速命令程序电路,使用了触点(条件)比较指令。
程序电路第六、七行,是对当前长度值的计算,所得结果上传到屏面,用于对当前长度值的监控:待裁切板材已被输送多少毫米?计算方式同总长度脉冲数的方法一样。
2、高速计数功能的启用
图5-43 可调定长裁切装置PLC程序电路中高速计数处理电路
该程序中启用了编程器中的高速计数有效(HSCST)功能。旋转编码器输入的A、B两相脉冲信号分别从PLC的P0、P1两个端子输入。计数形式为两相CW/CC计数模式。高速计数功能(对应P0端子输入)可通过编程软件左上侧的参数工具设置。当设置为CW/CCW两相计数模式时,P1端子也被自动占用。高速计数的设置画面如下:
图5-44 可调定长裁切装置PLC程序电路中高速计数的设置
将P0端子输入高速计数设置为:线性计数器。两相CW/CCW模式。
高速计数指令含义。HSCST 0000 0009999999 D5:HSCST 00000为P0、P1端子输入的CW/CCW(正转/反转)计数脉冲;0009999999,为计数设定值,当设定值到时,相对应特殊继电器动作,在这里只是应用其计数功能,不取用对应位元件的开关量信号,故将设定值设得大一点,满足设定长度的要求即可以了;D5,为计数当前值寄存器,若在程序监控状态,可看D5右边显示的当前计数值。这里是将计数当前值,放入D5寄存器中,用于下刀命令和低速命令电路的比较条件。
5-31程序电路中,当(P40端子接点)下刀电磁阀动作一次,即将数据0传送(DMOV)至D5中,完成对当前计数值的清零,为下一次裁切做好长度计数准备。MOV,16位数据传送指令;在指令前加D,为32位数据传送指令。高速计数的计数当前值,为32位十进制数据,故需用DMOV指令。
来源:网络,侵删
——END——
相关问答
plc制作生产看板?
[回答]你那老师真是聪明,自己都做不出来,还挖苦让学生做,1首先plc芯片编程,(plc的cpu)2然后设计(零件的设计与布置,兄弟多者上百个,小的有牙签左右,)3连接...
北京建筑大学电气与信息工程学院怎么样?设有哪些专业?申请方
[回答]~接下来我为大家简单介绍一下我们北京建筑大学的电气与信息工程学院开设的专业以及研究情况专业设置:自动化-本科、电气工程及其自动化-本科、计算...
矿渣破碎机整套设备造价要多少?
[回答]物料始终全进全出,设备满出力。运行平稳、智能、可靠:整机采用电气和机械双重保护,电控柜配有PLC可编程控制器,具有联锁保护功能,可实现就地控制和...
麻烦在座的大神,哪里有,江夏风速仪厂家,风速仪哪个最好??
[回答]testo416高密型叶轮风速仪配备背光大显示屏,快速清晰显示可靠的风速测量数据。固定式带伸缩手柄叶轮风速探头,伸缩手柄长度可达890mm,小巧的叶轮探...