ControlLogix培训学习资料 点击:2499 | 回复:61



墨之殇

    
  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2011-12-10 20:48:43
楼主

第一章   系统概述

 

本章内容:  本章概括地介绍了ControlLogix 系统的基本结构和性能特点,简单地阐述了控制器和网络的基础类型,建立了相关的基本概念。

本章目的:  通过本章的学习,了解ControlLogix 系统的基本特点和功能;了解ControlLogix 系统控制器的基本类型及用途;了解ControlLogix 系统的基本网络及特点,对ControlLogix 系统有一个全局的概念。

 

一.ControlLogix 系统特点介绍

ControlLogix 系统是罗克韦尔自动化有限公司(艾伦布拉德利有限公司)继传统的可编程序控制器PLC2PLC5/SLC之后推出的第三代工业控制产品,从硬件配置、通讯方式到数据结构都有根本性的变化,控制和数据传送概念也完全不同。它是高度模块化结构的、可灵活地进行任意组合和扩充的高性能控制平台;通过背板强大的网关功能完成信息层、控制层和设备层三个开放式的通讯平台之间的自由转换,并兼容DH+RI/ODH485/串口等传统通讯网络;IEC 1131-3 标准的结构体数据形式可完善地表达生产过程数据实体并使得控制器与外部系统的数据交换实现无缝连接。ControlLogix 系统的使用是简单而便利的,但整个控制系统硬件配置、网络组态和数据流的规划却是不可忽视的,在有大量数据交换的系统中显得尤其重要。

 

1.  ControlLogix 系统的的编程环境

        作为ControlLogix控制器编程终端的PC机或笔记本电脑,通常情况是,在Windows NT / Windows 2000/ Windows XP 操作系统下安装:

·         RSLogix5000 编程软件

·         RSLinx  连接软件

·         RSNetWorx  for ControlNet 网络组态软件

·         RSNetWorx  for DeviceNet 网络组态软件.

·         RSNetWorx  for EtherNet  网络组态软件.

RS NetWorx  软件根据选用的网络类型有不同的安装。

 

2.      ControlLogix 系统的分类

功能强大的ControlLogix 系统广泛地适用各种不同的用途,可根据需求灵活地选择多种方案,在ControlLogx 系统中,可从应用或产品结构的不同角度进行分类。




墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2011-12-10 21:57:48
41楼
  • 结果数组的控制结构体   记录不匹配的比较结果,每当找到一个不匹配的位,便将该位(POS所指)依此记录下来。该长度一般等于比较数组的控制结构体的长度,以保证所有的位的不匹配结果都能记录下来。


                    


FBC指令不同于DDT指令的是,它不修改参考文件。

 

10-2    诊断检测指令  DDT   

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2011-12-10 21:59:46
42楼

本条指令的执行是将源数组和参考数组位对位(存储器的操作)地进行比较,发现不同时,将结果记录在结果文件中,并修改此位,使之与源位一致。这条指令有两个控制结构体:

  •  比较数组的控制结构体   记录比较的状态,每当找到一个不匹配的位,找到位FD置位(每次记录一个不匹配模式);所有的位比较完毕,存在有不匹配位,找到位FD置位(整体模式)。该长度设置指的是参加比较位的数量。
  • 结果数组的控制结构体   记录不匹配的比较结果,每当找到一个不匹配的位,便将该位(POS所指)依此记录下来。该长度一般等于比较数组的控制结构体的长度,以保证所有的位的不匹配结果都能记录下来。

                               

                   


           

 

DDT指令不同于FBC指令的是,当源数组与参考数组比较不相同时,

要修改参考文件。

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2011-12-10 22:01:22
43楼

10-3   数据传送指令DTR 

这条指令跟SQI一样,是一条输入指令,每逢它所在的梯级被扫描(可以理解为指令被使能),源数组就会和参考数组通过屏蔽进行比较,产生逻辑结果,成为级条件。比较结果相同,级条件为假;比较结果不同,级条件为真,保持一个扫描周期,且将参考值改成与源值一致。

 

                                                

 

例一,比较结果相同的情况:


 


例二,比较结果不相同的情况:



10-4  PID控制指令

     一条PID控制指令对应一个控制环节,当实行多级控制时,则使用多条PID指令(可选主从)。 如下所示的液位控制环节,将编制一条PID指令来进行控制。                      

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2011-12-10 22:03:09
44楼

 

  • PID:  指定一个结构体给本条指令,存放组态信息和运行状态信息。
  • Process Variable:  指定过程变量,一般为模拟量输入。
  • Tieback:  指定手动控制站手动控制跟随变量,一般为模拟量输入。
  • Control Variable:  指定PID控制变量,一般为模拟量输出。
  • PIDmasterLoop:  当本条指令为从环时,输入主环结构体名称。
  • Inhold Bit: 决定输出初始值是否保持在上次的终值上,一般为模拟量输出模块的保持状态位。
  • Inhold  Value: 输出初始值保持在上次的终值上,一般为模拟量输出模块的保持量。                      
  • Setpoint:   给定量的显示值。
  • Process Variable: 过程变量的显示值。
  • Output%:  控制变量的百分比显示值。

点击 ,进入组态和调试界面:

 

 

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2011-12-10 22:04:26
45楼

说明:

  • PID Equation:  PID控制模式,可选择独立增益或相关增益。
  • Control Action:  选择控制方向,
  • Derivative Of :  微分对象的选择,对PV进行微分,减少SP给定引起的冲击;对偏差微分,获得对SP变化量的快速响应。
  • LoopupdateTime:  回路更新时间,不能为零和负数,否则运行时产生次要故障。
  • CV High Limit: 输出限幅最大值。
  • CV Low Limit: 输出限幅最小值。
  • Deadband Value: 死区值。
  • No Dervative Smoothing: 选择无微分平滑作用。
  • No Bias Calculation: 选择无偏值计算。
  • No Zero Crossing for Deadband: 选择无过零死区。
  • PV Tracking: 选择PV跟踪。
  • Cascade Loop: 选择回路级联,可选择主回路或从回路。

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2011-12-10 22:06:39
46楼

说明:

  • Process Variable【PV】High:  过程变量报警上限值。
  • Process Variable【PV】Low:   过程变量报警下限值。
  • Process Variable 【PV】 Deadband: 过程变量报警值.
  • Positive Deviation:   正偏移报警值。
  • Negative Deviation:  负偏移报警值。
  • Deviation Deadband: 偏移报警死区值。

说明:

  • Process Variable【PV】   关于过程变量

--- Unscaled Max:  来自模拟量模块输入通道的最大定标值,即模拟量模块中的工程定标最大值,此为进入PID的未定标最大值。

--- Unscaled Min:  来自模拟量模块输入通道的最小定标值,即模拟量模块中的工程定标最小值,此为进入PID的未定标最小值。

              --- Engineering Unit Max:  PVPID中再次定标的工程定标最大值。

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2011-12-10 22:08:12
47楼

    --- Engineering Unit Min:   PVPID中再次定标的工程定标最小值。

  • Control Variable 【CV】  关于控制变量

---  Max(at 100%): 控制变量最大值, PID计算结果.SO百分比最大值所对应的模拟量模块输出通道的工程定标最大值。

--- Min (at 0 %):  控制变量最小值,PID计算结果.SO百分比最小值所对应的模拟量模块输出通道的工程定标最小值。

  • Tieback 关于手动控制跟踪量

---  Max(at 100%):  最大跟踪值,在PID中以百分比显示最大值所对应的

来自模拟量模块输入通道的最大定标值。

 --- Min (at 0 %):  最小跟踪值,在PID中以百分比显示最小值所对应的

来自模拟量模块输入通道的最小定标值。

  • PID Initialized:  如果在控制器运行时修改定标值,关闭它以使得重新初始化内部,从而使用新的比例值。

               

说明:

  • Setpoint【SP】:  给定值设定,其数据范围必须与PVPID中再次定标的工程定标范围相同。
  • Set Output:  软件手动控制时,在此输入百分比值,自动方式时,其为显示值。
  • Output Bias:  输出偏值百分比值。该值迭加在偏差计算结果上,构成共同的输出.SO

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2011-12-10 22:09:01
48楼
  • Tuning Constants:  调试参数

---  Proportional Gain【Kc】:  比例参数,其物理含义跟PID控制模式有关。

--- Reset Time 【Ti】  积分调节参数,其物理含义跟PID控制模式有关。

--- Derivative Rate【Td】: 微分调节参数,其物理含义跟PID控制模式有关。

  • Manual Modes:

--- Manual:  手动控制方式,手动控制站直接设置输出,PID计算结果无效。

--- Software Manual:  软件手动控制方式,程序或操作员界面直接设置输出,PID计算结果无效。

 

要点讨论:                

  • 自动控制/手动控制切换的平滑过渡    

当手动控制转向自动控制(手动站手动控制或软件手动控制)时, PID指令将对跟踪值(Tieback变量或设定输出)作积分运算,直至逼近按偏差运算产生的控制变量 .SO,从而完成平滑过渡。如果没有使用积分控制项,则指令修改偏值量 .BIAS,使CV输出跟踪Tieback变量或设定输出,但此时无偏值计算项不能选择。

自动控制到手动控制的平滑过渡,手动站手动控制由手动站解决平滑过

渡; 转软件手动控制时,.SO值从自动控制PID运算最后输出开始,所

以转换是平滑的。

  • 防止积分饱和

设置控制变量CV上限幅和下限幅,是为了防止积分饱和,当CV达到上下限幅值时,积分项将停止累积。

  • 启动平滑

当控制器从编程模式转为运行模式时,PID指令亦开始执行,运算结果即为控制变量,将送到模拟量输出模块,如果选择了输出保持(PID指令参数选项),则PID指令将输出保持值作为初始量,以积分过渡或修改偏值量(和手动控制转自动控制一样)的方式实现平滑过渡。

  • PID运算的数据范围    

来源于古典控制的PID,与模拟量输入/输出模块有着直接的关联,PV

SPCV都有相应的数据范围的讨论,只有正确地建立这三个量的数据范

围,才能保证PID的正确运算和正确控制。PID是一个事先预设的计算模

块,并有确定的数据范围(实数范围),按偏差运算的PID 运算显然要求 

偏差提供它所需要的数据范围,而偏差又是PVSP比较的结果,毫无疑

问,SPPV必须在相同的数据范围,计算结果也应该是这个数据范围。

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2011-12-10 22:10:12
49楼

---  PV 的来源是外来信号,模拟量输入,它的定标至关重要。在模拟量

      模块中已经有自己的工程定标,也就是模块提供给PID指令输入量的数

据范围,PID 指令中将此称为未定标数据,而在PID指令中再次定标,

称为工程定标,该值将作为SP和偏差的基准值。

 ---  SP的来源是操作员设定,习惯上,操作员按百分比设定,必须编制程序

       将百分比值换算成和PV工程定标值一样的数据范围,这样,与PV

       较的结果偏差就是正确的数据了。

---  CV 是送到模拟量输出模块的控制变量,PID的运算结果.OS是以百分比

      的形式表达的,而不是模拟量输出模块所需要的数据,经过转换(CV

      标)后,送出符合模拟量输出模块对应输出通道的数据,即模拟量输出

      模块工程定标的数据范围。

  • PID指令执行时间和回路更新时间

PID指令实质上是一条运算指令,在级条件成立时,它总是在运算,但  它的运算频率与回路更新时间有关。回路更新时间应该小于指令执行的 时间间隔,大于或等于模拟量模块的采样时间。PID指令的执行有两种方法:

--- 在连续型任务中由定时器调用,多用于滞后大的控制对象,要求反应时间不是很快。可令回路更新时间等于定时器预置值,且模拟量模块的采样时间快好几倍。

--- 周期型任务定时调用,可以精确的执行指令,适合快速反应控制对 象,可令回路更新时间等于任务调用周期时间,且模拟量模块的采样时间快好几倍。

执行PID指令最精确的方法是:模拟量输入模块每采样一次,指令执行

一次,令回路更新时间等于模块采样时间。可以用模块滚动时间标记来

控制执行动作。

       

 

11.输入/输出指令

输入/输出指令是控制器对外操作指令,SSVGSV是控制器设置系统组态信息和读取系统状态信息的指令,MSG指令则是应用最为广泛的信息传送指令,它几乎可以对任何外部设备操作。

 

11-1 SSVGSV指令

ControlLogix控制系统中,并不象PLC-5/SLC500那样,提供状态文件去直接地查看状态或进行组态,而是在控制器中隐含着系统的结构数据,用SSV

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2011-12-10 22:11:44
50楼

指令去设置组态信息;用GSV指令得到状态信息。SSV/GSV可访问的对象有:

  • AXIS   伺服控制信息
  • CONTROLLER    控制器信息
  • CONTROLLERDEVICE   控制器硬件信息
  • CST  协调系统时间信息
  • DF1  串口信息
  • FAULTLOG
  • MESSAGE
  • MODULE
  • MOTIONGROUP
  • PROGRAM
  • ROUTINE
  • SERIALPORT
  • TASK
  • WALLCLOCKTIME

这些访问对象,下面有各种形式的信息数据块,要设置或者是获取信息,都必须事先在数据库中建立起相应数据结构的标签,作为SSC的源地址或GSV的目标地址,然后再编辑指令。以系统时间为例,用SSV指令对系统设置系统时间。首先在用户自定义结构建立新的日期时间结构体。

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2011-12-10 22:14:21
51楼

然后在数据库中建立标签Date_Time

编写SSV指令,

要注意,源地址是为送下去的系统日期和时间建立的Tag,此处引用地址时,不是引用Tag名,而是Tag的第一个元素,否则认为是语法错误,梯级不能接受。同样地,若从控制器中读系统日期和时间,可编写GSV指令:

对于系统可访问的对象,有的只能获取(用GSV);有的只能设置(用SSV);有的既可以获取又可以设置(用SSVGSV)。

 

11-2  MSG指令

MSG指令编写之前,要建立数据类型为MESSSAGE结构的标签,每一条指令都要分配一个标签,这个标签将记录本条指令的通讯组态和执行情况。

为每一条MSG指令建立一个标签,不能建立数组。

只有为指令分配了标签后,点击 方可进入组态界面:

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2011-12-10 22:15:52
52楼

说明:

  • 对控制器以外的各种设备传送信息,它的信息类型如下所列:

CIP  Data Table Read/Write   ControlLogix控制器进行读写

PLC5  Typed Read/Write  PLC5处理器进行读写

PLC5  Word Range Read/Write  对类似PLC5处理器地址进行读写

Block Transfer Read/Write  对块传送模块进行读写

PLC2 Unprotected  Read/Write  PLC2处理器及类似PLC2地址(寄存器地址)的设备进行读写。

PLC3  Typed Read/WritePLC3处理器进行读写

PLC3  Word Range Read/Write,对类似PLC3处理器地址进行读写。

SLC  Typed Read/WriteSLC处理器进行读写

Module Reconfigure  在模块仍然连接时,对模块进行重新组态

CIP Generic  对任何设备的服务性操作。

  • 本指令执行的状态

Enable  指令级条件成立,指令被使能,开始工作。

Enable Waiting  信息传送请求被送到缓冲区,等待传送。

Start  缓冲区排队轮到,开始传送数据。

Done  数据传送完毕,指令置位完成。

Done Length  实际完成的数据块长度

Error Code  如指令执行失败,此处给出16进制的错误代码00XX

Extended Error Code   给出16进制的扩展错误代码XXXX

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2011-12-10 22:17:24
53楼

Tined Out  设置超时请求,此项选择,当发生超时,终止MSG传送过程。

1> ControlLogix 控制器与ControlLogix 控制器的通讯

 

源或目标的标签地址不是引用Tag名,而是Tag的第一个元素,否则认为是语法错误,梯级不能接受。

元素个数最多可有65335个,尽管ControlNet 的数据包最多只有500个字节,MSG指令可将数据块拆开,分成一个以上的数据包送走。

Communication 页面要求输入两个控制器之间的通讯路径,如果在I/O组态中有该控制器,亦可通过Browse获得路径,倘若仅仅是为了建立MSG路径而在I/O组态中加入控制器,则没有必要,那样将占用内存空间,建议书写路径,路径书写规则:

路径是段和段的连接,段由x,y组成,段和段之间用逗号分离。

  • X    背板为1;网络为2
  • Y    槽号;站号,ControlNet网络199号,EtherNet网络为IP地址。

上面书写的路径是:背板—CNB(位于5槽)—ControlNet网络—对方CNB(站号3号)— 背板 控制器(位于0槽)。

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2011-12-10 22:22:23
54楼

路径还可以是动态的,在信息块的结构数据中,有Path一项,这是个字符串结构,更换字符串数据即更换了路径。

字符串的长度最大82个,足够表达路径了。

,此项建立了MSG指令的连接,缺省是选择的,也就是说MSG指令占用一个固定的连接;如果释放此项,只有在MSG指令执行的时候才占用连接,是一个活动的连接,可编制程序,令多条MSG指令共同使用一个连接,这对缓和资源的运用是有好处的。

 

2>  ControlLogix 控制器与PLC-5控制器的通讯

编写如下梯形图逻辑:

 

点击 进入组态画面:

说明:

  • Message Type: 选择对PLC-5读取数据
  • Source Element: PLC-5 处理器中的地址作为源地址(文件首址)
  • Number Of  Element: 读取数据的元素的个数,最多32767个。
  • Destination Element: CLX中的数组(接受数据区域)的首元素作为目标地址

进入Communication画面,确定通讯对象,

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2011-12-10 22:24:57
55楼

说明:

  • Path: 可通过Browse…找到DHRIO模块位置,亦可用书写路径的办法。
  • Channel: 选择A通道,模块定义A通道为DH+通道。
  • Source Link: 应与DHRIO模块上(在RSLinx中)定义的路由表一致。
  • Destination Link: 应与DHRIO模块上(在RSLinx中)定义的路由表一致。
  • Destination Node: DH+上接受MSG数据的PLC-5处理器站号(八进制)。

3>  ControlLogix 控制器与PLC-5 BT模块的通讯

ControlLogx MSG指令代替了PLC5的块传送指令,无论是对模块的块传送,还是远程I/O链上用作于通讯的块传送。以对1771-IFEBT操作为例,编写如下梯形图逻辑:

 

点击 分别进入写和读的组态画面:

说明:

  • Message Type: 选择对模块进行块传送写操作。
  • Source Element: CLX中指定数组首元素地址作为源地址。

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2011-12-10 22:26:10
56楼
  • Number Of  Element: 块传送写数据文件长度(根据BT模块决定)。

说明:

  • Message Type: 选择对模块进行块传送读操作。
  • Number Of  Element: 块传送读数据文件长度(根据BT模块决定)。
  • Destination Element: CLX中指定数组首元素地址作为目标地址。

进入Communication画面,确定通讯对象,

说明:

  • Path: 可通过Browse…找到DHRIO模块位置,亦可用书写路径的办法。
  • Channel: 选择B通道,模块定义B通道为RIO通道。
  •  Rack:  BT模块所在机架(八进制)。
  • Group:  BT模块所在组号(八进制)。
  • Slot: BT模块位于左槽或右槽(2槽寻址时用),一般为0

 数据文件的解释:

Tag 名为 INT_BT_WRIT的整型数数组(37个元素)是块传送写的数据文件,是被操作的BT模块1771-IFE 所需要的组态文件,这里将根据IFE模块的组态方式完成数据的输入。值得指出的是,ControlLogix 中没有BCD码,而IFE模块的通道定标必须是BCD码,所以只能在二进制的方式下输入,可以看出,通道0和通道1被设置成BCD码表达的0-4095。同样的,在数据形式的选取,也只能选01(模块组态第十位和第九位),即非BCD码的数值。

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2011-12-10 22:27:41
57楼

Tag 名为 INT_BT_READ的整型数数组(20个元素)是块传送读的数据文件,它将读取通道A/D转换的数据,因为定义数据形式为补码数据,所以,可以在相应的地址中读到通道0和通道1的正确表达的数据。

 

4>  ControlLogix 控制器与其它设备的通讯

MSG指令最灵活的就是对其它设备的信息传送,选定CIP Generic的信息类型,它可以对ControlLogix系统的任何模块进行实时地服务操作,一些指定的服务操作,事先给定了服务代码,只要编制指令执行即可。Custom选项使得MSG指令可以对提供服务代码的设备进行操作,以

一.    程序常见问题的解决及相应的编程实例

                                                             实例一

问题:本地和远程控制同一台设备,没有优先关系,希望既可以在本地用开关 

控制(输入开关信号)完成本地操作,又可以在操作员界面(RSView

PannelView)完成远程控制,两种控制方式的切换,编程解决。

方案1 在本地和远程各设一个切换开关,操作员先选定操作方式,再开始操  

                作。

方案2:操作员无须关心操作方式,一旦在本地开始操作,即转入本地操作方

式;一旦在远程开始操作,即转入远程操作方式。

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2011-12-10 22:28:59
58楼

 

 

 

 

 

 

 

练习题

 

     1 有三个马达MTR1 MTR2 MTR3 ,按先后次序启动。启动开关为   

Motor_Start 停止开关为 Motor_StopMotor_Start ON 时,MTR1

动,3秒后 MTR2 启动,再过 5 秒后 MTR3 启动。Motor_StopON

时,三个马达同时停止运行,用别名把MTR1 MTR2 MTR3分别分

配给三个输出点,来模拟三个马达的状态。

 

   2 某交通要道,南北方向通行 6 秒,东西方向通行4秒,试编制程序模拟红

          绿灯变化情况,令南北向红灯Lamp_R_SN;东西向红灯Lamp_R_EW

          南北向绿灯Lamp_G_SN;东西向绿灯Lamp_R_EW。用别名将四个灯的

          地址分配给外部的输出点,以便观察。

 

   3 试编一程序使外部的16个灯(对应输出模块16个点)具有如下状态,

         且周而复始地进行。

                       时间              Lamp.0-- Lamp.7             Lamp.8-- Lamp.15            

                       2                                                                

                       2                                                                

                       3                                                                

 

4 当开关Switch.0接通时,一灯 Lamp.0 延时 2 秒后始亮;当开关Switch.0

       断开时,灯 Lamp.0延时 2 后始灭。唯当开关Switch.0接通后还不到 2     

       (即灯 Lamp.0还未亮 ) 即把 开关Switch.0 断开,则灯Lamp.0保持不

       亮;反之亦然。

 

     5、试编制一个手动可逆计数器,用开关 Switch.1 作增计数脉冲,用开关 

           Switch.2作减计数脉冲,注意观察计数器状态位 CDCUDNOV

           UN 在什么情况下置位。

 

 

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2011-12-10 22:30:22
59楼

 

   6、为了让上位机识别处理器,须产生一锯齿波信号,试编程实现,用并

           TRENDS

 

  7、当模拟量模块通道0输入的值大于300时,Lamp.0灯闪烁;大于500时,

        Lamp.0Lamp.1的灯闪烁;大于800时,Lamp.0Lamp.1Lamp.2

        灯一起闪烁。

 

 8、下图是一个混和液体容器的实例,试编一个模拟程序反映容器内液体变  

         ( 提示:用计时器模拟流量,用计数器模拟液位 )

·         Switch.1控制 V1;用  Switch.2控制 V2;用Switch.3控制V3

·         改变开关状态或流量大小,观察液位的变化。

·         设置液位上下限位,用Lamp.10Lamp.11 警,并使相应阀门


                    关闭。             

       9、同上题,将程序由原来的本地控制改为本地和远程(即用上位机或操作员

             终端)都能控制。

 

      10、计算一个梯形图程序执行的平均周期时间 ( 提示:用ADD指令 )

   

      11 设模拟量模块通道0采集的是自来水流量数据,该流量计量单位为 

              /小时,数据范围为  0---3000 试编制一程序计算自来水的产量

             (注意怎样保证积累精度),假定自来水产量将在上位机以吨的单位显

             (考虑数据的整理)

 

 

     12 BTD 指令在Lamp上实现下列过程,须周而复始。

                              Lamp.11 — 15   Lamp.8 — .10   Lamp.4 — .7     Lamp.0 — 3

               第一秒                                                                               

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2011-12-10 22:31:15
60楼

 第二秒                                                                               

               第三秒                                                                               

               第四秒                                                                                

 

13、将数组Array_Dint1中的数据加 5 用递增的方式传送到 Dint_P_1中,

        以便逐个查看,请注意观察控制结构体的状态位和 .POS 的变化。

 

      14、某控制器中,有一批如下所示的数据需要组织传送,试编制一程序              

              ID ( 123456 ,每 2 秒更换一次)判断,将它们轮

              流分送到用户定义的数据传送结构体COPY_DATADINT【50】

                     Array_Bool  (DINT))                Array_Timer.ACC   (TIMER【10】)

                     Array_Dint   (DINT【10】 )         Array_Counter.ACC  (COUNTER【10】)

                     Array_Real1 (REAL【5】)           Array_Control .POS  (CONTROL【10】)

 

15 某处理器在上电时,须进行初始化工作,以下数据要复位,编程实

         现。

                    Array_Bool  (DINT)                 Array_Timer.ACC   (TIMER【10】)

                    Array_Dint   (DINT【10】 )         Array_Counter.ACC  (COUNTER【10】)

 

16、在Lamp上预置状态设为   0000000000001111 ,试编一程序,令其每秒

        钟移动一次,在Lamp上循环移动,左移10次,右移10次,周而复始          

        地进行。

 

17 按每秒一次的速度从模拟量模块通道0 采集数据,采集的数据存放在

        指定的数组Array_Dint3中,使其保持最新的 50 个数据。

            

       18、某包装工艺中,以红、绿、蓝三种颜色的球来识别三种不同的包装过

               程,当红球弹出,光感传感器识别后送到处理器来的数据为1200--- 

               1500;当绿球弹出, 800---1100;当蓝球弹出,为 300---600;其各

               输出点(送到 Lamp )的控制规律(按每秒一步进行)如下所示:

                                         红球                      绿球                        篮球

               第一步      000000000111       000000000011        000000000001  

               第二步      000000111111       000000011011        000000001001

               第三步      000111111111       000011011011        000001001001 

第四步      111111111111       011011011011        001001001001


热门招聘
相关主题

官方公众号

智造工程师