RSLOGIX500指令chinese
更新时间:2024-01-06 16:19:01 阅读量: 教育文库 文档下载
附录
第一章 位指令 .............................................................. 2 第一节 数据文件 ............................................................................. 3 第二节 位指令 ................................................................................. 6 第二章 第三章 第四章 第五章 第六章 第七章 第八章 第九章 计时器和计数器指令 .......................................... 11 比较指令 ......................................................... 21 算术指令 ......................................................... 26 传送和逻辑指令 ................................................ 32 移位和顺序进出指令 .......................................... 35 程序流程指令 ................................................... 42 I/O,文件,PID指令 ......................................... 46 高速计数指令 ................................................... 64
1
第一章 位指令
位指令可对数据的单个位进行操作。在运行时,处理器可以根据其所在梯级的逻辑条件置位或复位一位。应用程序可以根据需要对一位寻址任意次。本章第一节介绍位指令地址可使用的数据文件,第二节介绍基本的位指令。
2
第一节 数据文件
系统默认的数据文件分为以下几种类型: 1. 输出和输入数据文件(O0:和I1:) 2. 状态文件(S2:) 3. 位文件(B3:) 4. 计时器文件(T4:) 5. 计数器文件(C5:) 6. 控制文件(R6:) 7. 整数文件(N7:)
上面的文件号也为系统默认的(即系统默认文件0为输出文件,1为输入文件,2为状态文件,等等)。下面对这些系统默认的文件类型分别予以介绍。 1. 输出和输入数据文件(O0:和I1:)
文件O0中的各位表示外部的输出,文件I1中的各位表示外部的输入。在大多数情况下,这些文件中的每个16位字号与位于控制器内的一槽相对应,位号与相应的输入或输出端子号对应。
输出和输入的地址格式用e表示槽号,s表示字号。处理文件指令时,数据文件元素按e.s(槽号和字号)格式一起使用。 格式 O:e.s/b I:e.s/b 说明 O I : e . s / b 举例: O:3/5 槽3,输出位5 I:7/8 槽7,输入位8
I:2.1/3 槽2,字1,输入位3
字地址:
O:5 槽5,输出字0 O:5.1 槽5,输出字1 I:8 槽8,输入字0
特别的,当一个槽的I/O点数超过16个时,寻址位有两种表示方法:使用字、位寻址和直接位寻址。如:MicroLogix 1500系列输出0槽有64点。寻址O:0.2/13时,也可写为
3
输出 输入 元素分隔符 槽号(十进制) 字分隔符 字号 位分隔符 端子号 0~15 如果某槽的I/O点数超过16时最好用字号(0~255)。 0号槽,即第一个框架中靠近电源的槽,用于处理器模块。接下来的是I/O槽(1~30)。 O:0/45。
缺省值:用户编程设备显示的地址格式将更加正规。例如:当分配地址O:5/0时,编程设备将显示为O:5.0/0(输出文件,槽5,字0,端子0)。 2. 状态文件(S2:)
状态文件允许用户监控、控制操作系统的工作状况。监控主要为监控软硬件故障及其它状态信息。控制可通过设置相应的控制位来实现,这首先需要了解状态文件中每个字、每个字节的功能。详细说明请参阅SLC 500 and Micrologix 1000 指令集参考手册附录A。
状态文件不能被增加或删除,寻址状态文件的位和字的格式为: S:e/b 各位含义同I/O文件。 举例:
S:1/15 元素1,位15。这是“首次扫描位”用户在程序中可以使用它来初始化指令。 S:3 元素3。这一元素的低位字节时当前扫描时间,高位字节是看门狗扫描时间。 3. 位文件(B3:)
文件3是位文件,主要用于位指令(继电器逻辑),移位寄存器和顺序器指令。位文件的最大容量是256个单字元素,总计为4096位。可以通过指定元素号(0~255)和元素内的位编号(0~15)来寻址位,也可以通过位的顺序编号直接寻址位0~4095。用户也可以只寻址该文件的元素。 举例:
B:3/14 元素3,位14 B:252/0 元素252,位0 B:9 元素9,位0~15
B:/64 或 B/64 位64(即元素4,位0) B:/4042 或 B/4042 位4042 4. 计时器和计数器文件(T4:和C5:)
每个计时器地址由一个3字元素组成,如下表所示: 15 14 13 字0 EN TT DN 内部使用 字1 PRE(预置值) 字2 ACC(累计值) 上表中,EN:使能位,TT:计时位,DN:完成位。 寻址位和字的格式为 Tf:e.s/b 举例:
T4:0/13 或 T4:0/DN 完成位
T4:0.1 或 T4:0.PRE 预置值 T4:0.2/0 或 T4:0.ACC/0 累计值 5. 计数器文件(C5:)
每个计数器地址由一个3字元素组成,如下表所示:
4
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
字0 CU CD DN OV UN UA 内部使用 字1 PRE(预置值) 字2 ACC(累计值) 字 上表中,CU:加计数使能位
CD:减计数使能位 DN:完成位 OV:上溢出位 UN:下溢出位
UA:更新累计值位(只用于固定式控制器的HSC指令)。
寻址位和字的格式为 Cf:e.s/b 举例:
C5:0/13 或 C5:0/DN 完成位
C5:0.1 或 C5:0.PRE 预置值 C5:0.2/0 或 C5:0.ACC/0 累计值 6. 控制文件(R6:)
控制文件是3字元素,各字含义如下表。位移、顺序器指令都用到控制文件。 字 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 0 EN EU DN EM ER UL IN FD 错误代码 1 位阵列或文件的长度(LEN) 2位指针或位置(POS)
举例:
R:2 元素2 R:2/15 或 R:2/EN 使能位 R:2/13 或 R:2/DN 完成位 R:2.1 或 R:2.LEN 长度值 R:2.2/0 位置值的0位 7. 整数文件(N7:)
整数文件是1字元素,可以寻址到元素和位。根据程序的需要来使用整数文件地址。 举例:
N:2 元素2
N:2/8 元素2,位8
N10:36 整数文件10,元素36(先前文件10已被用户定义为整数文件)
注:整数文件的缺省值为7,如上 N:2 为整数文件7的元素。若所操作元素在其它整数文件上必须注明该文件号,如上 N10:36。
5
第二节 位指令
位指令包括:
1. 检查闭合(XIC) 2. 检查断开(XIO) 3. 输出激励(OTE) 4. 输出锁存(OTL) 5. 输出解锁(OTU) 6. 一次启动(ONS)
7. 上升沿一次响应(OSR) 8. 下降沿一次响应(OSF) 下面逐个加以介绍。 1. 检查闭合(XIC)
XIC属输入指令,用于检查某位是否导通(ON)。它类似于常开开关。当指令执行时,如果寻址位是导通状态(1),则指令被赋值为真;如果寻址位是断开状态(0),则指令被赋值为假。如果寻址位使用了输入映象表的位,则其状态必须与相应地址实际输入设备的状态一致。
2. 检查断开(XIO)
XIO属输出指令,用于检查某位是否断开(OFF)。它类似于常闭开关。当指令执行时,如果寻址位是断开状态(0),则指令被赋值为真;如果寻址位是导通状态(1),则指令被赋值为假。
3. 输出激励(OTE)
OTE指令属输出指令,用于控制存储器中的位。若OTE指令前面的梯级条件为真,寻址位导通,相应的设备接通;否则寻址位不能够导通,相应的设备不能够接通。它类似于继电器的输出线圈。OTE指令由它前面的输入指令控制,而继电器的线圈由硬触点控制。 4. 输出锁存(OTL)
OTL属保持型输出指令。当梯级条件为真时,OTL指令对该寻址位置位。即使梯级条
6
件变为假,该位依然保持置位。若要复位,则需要在另一个阶梯中使用解锁指令OTU,对同一寻址位进行解锁。 5. 输出解锁(OTU)
OTU属保持型输出指令。常用于复位由OTL指令锁存的位,此时OTL、OTU应使用相同的地址。当梯级条件为真时,OTU指令对该寻址位复位。即使梯级条件变为假,该位依然保持复位。直至另一指令对该位重新置位。
下面通过具体的梯形图来进一步理解上述位指令: 例1:讨论改变以下开关状态时,灯的变化情况。
1) RUNG0中,当I:0/4使能时,O:0/0为真,灯亮。 2) RUNG1中,当I:0/5断开时,O:0/1为真,灯亮。
3) RUNG2中,只有当I:0/6和I:0/8,或者I:0/7和I:0/8使能时,O:0/2才为真,
灯亮。
7
4) RUNG3和RUNG4中,OTL和OTU指令成对出现。一旦I: 0/9使能,O:0/3就锁
存为真,灯亮。即使I: 0/9在下一次扫描周期由真变假,灯仍然保持亮。直至I: 0/10使能,O:0/3解锁,灯灭。
5) RUNG5中,END指令表明程序结束。
6. 一次启动(ONS)
ONS属输入指令。当程序中ONS指令所在梯级条件由假到真变化时,它的指令逻辑为真,但只保持一个扫描周期。使用ONS指令可启动由按钮触发的事件,如从拨盘开关上取值。ONS指令中有一个位地址参数,此地址可以是位文件或整数文件地址(如B3:0/3,N7:0/0等)。该位自动存储了ONS指令所在梯级条件(为真则存储1,为假则存储0)。
ONS的功能相当于限制所在梯级的输出。当输入条件由假变真时,它使输出为1且只保持一个扫描周期,在以后连续的扫描中输出为0。直到输入再次由假到真跳变。 7. 上升沿一次响应(OSR)
OSR属输出指令。当OSR指令所在梯级条件由假到真变化时,在输出位(Output Bit)产生一个周期正脉冲(即“上升沿动作类型”)。存储位(Storage Bit)中自动存储了OSR指令所在阶梯的梯级条件(为真则存储1,为假则存储0)。 8. 下降沿一次响应(OSF)
OSF属输出指令。当OSF指令所在梯级条件由真到假变化时,在输出位(Output Bit)产生一个周期正脉冲(即“下降沿动作类型”)。存储位(Storage Bit)中自动存储了OSF指令所在阶梯的梯级条件(为真则存储1,为假则存储0)。
下面我们通过具体的梯形图来进一步理解这三条指令: 例2:讨论改变以下开关状态时,灯的变化情况。
8
9
1) RUNG0和 RUNG1中,当I:0/4闭合时(即产生一个上升沿信号),ONS指令的梯级
条件由假到真变化,它的指令逻辑变为真,使O:4/0和O:4/1两灯都亮。到下一个扫描周期时ONS指令逻辑不再为真,O:4/1灭,O:4/0由于锁存仍为亮。B3:0/0位存储了ONS指令的梯级条件。即I:0/4闭合,B3:0/0为1,O:4/3亮,I:0/4断开,B3:0/0为0,O:4/3灭。只要I:0/4闭合,O:4/2就锁存为亮,直到I:0/9解锁。
2) RUNG2、 RUNG3和RUNG4中,当I:0/6闭合时(即产生一个上升沿信号),OSR
指令的梯级条件由假到真变化,使在输出位B3:0/2产生一个周期正脉冲,使O:4/5和O:4/6两灯都亮。到下一个扫描周期时,输出位B3:0/2不再有正脉冲,O:4/6灭,O:4/5由于锁存仍为亮。B3:0/1位存储了OSR指令的梯级条件。同上步的分析,I:0/6闭合,B3:0/1为1,O:4/4亮,I:0/6断开,B3:0/1为0,O:4/4灭。 3) RUNG5、RUNG6和RUNG7中,当I:0/8断开时(即产生一个下降沿信号),OSF指
令的梯级条件由真到假变化,使在输出位B3:0/4产生一个周期正脉冲,使O:4/8和O:4/9两灯都亮。到下一个扫描周期时,输出位B3:0/4不再有正脉冲,O:4/9灭,O:4/8由于锁存仍为亮。B3:0/3位存储了OSF指令的梯级条件。分析同上。 4) RUNG8中,I:0/9用于为上面锁存的小灯解锁。`
10
第二章 计时器和计数器指令
1. 2. 3. 4. 5. 6. 1.
计时器和计数器指令属输出指令,用于控制基于时间和事件记数的操作,包括: 延时导通计时器(TON) 延时断开计时器(TOF) 保持型计时器(RTO) 加计数(CTU) 减计数(CTD)
计时器/计数器复位(RES) 下面逐个加以介绍。
延时导通计时器(TON)
延时导通计时器(TON)的功能是梯级条件变真后经过一段延时时间对输出动作。它相当于继电器控制系统中的通电延时继电器。TON是否启动由它前面的输入指令控制,而通电延时继电器是由硬触点控制。TON的延时时间可任意设定,而通电延时继电器是由它的物理结构决定,不能够任意改动。因此TON指令更加方便灵活。使用TON指令时需要提供以下参数:
1) 计时器(Timer):指明所使用的计时器元素(如T4:0)。 2) 时基(Time base):计时器每次计时的递增值。Micrologix 1500系列可选择 1S、
0.01S和0.001S三种,共可累计32767个时基间隔。它决定了计时器的精度。 3) 预置值(Preset):用于设定延时时间,可设为整数-32768~32767。 4) 累计值(Accum):是一个动态值,表明了到目前计时器已经延时的数值。 当梯级条件变真时,TON开始计时,直到下列条件中的任何一个发生为止: 累计值=预置值; 梯级变假; 复位计时器。
不论计时器是否计到时,梯级变假时计时器复位累计值(把累计值清0)。
TON的状态位可用作对输出的控制信号。正确灵活的应用这些状态位是掌握TON编程的关键。TON的状态位及它们的变化情况如下:
状态位 DN TT EN 置位条件 累计值>=预置值 梯级为真且累计值<预置值 梯级为真 保持置位直到下列情况发生 梯级变为假 梯级变为假或被DN置位 梯级变为假 注意TT位和EN位的区别。
11
TON工作的时序图为:
计时器完成位 输出设备 (完成位控制) 计时器使能位 计时器计时位
阶梯条件
ON OFF ON OFF ON OFF ON OFF ON OFF
时间 延时 120 累计值 0 计时器预置值=180
图3.21 TON时序图
2分钟 3分钟 通 180 例4:有三个马达MTR1、MTR2、MTR3,按先后次序启动。要求MTR1先启动,三秒后MTR2启动,再过5秒后MTR3启动。停止时三个马达同时停止,请模拟这个过程。
12
分析:I:3/0为启动按钮,I:3/1为停止按钮,它们都为点动按钮。用灯O:4/0 、O:4/1、 O:4/2模拟马达MTR1、MTR2、MTR3。当触发I:3/0时,ONS指令的梯级条件由假到真变化,所以有一个周期的正脉冲输出,小灯O:4/0锁存为亮,B3:0/0位锁存为1,计时器T4:0开始计数。当T4:0的累计值=预置值(3S)时,T4:0/DN置位,小灯O:4/1锁存为亮,且计时器T4:1开始计数。当T4:1的累计值=预置值(5S)时,T4:1/DN置位,小灯O:4/2锁存为亮。当触发I:3/1时,O:4/0 、O:4/1、 O:4/2都被解锁,灯灭。
例5:某交通要道,南北方向车流量大,东西方向车流量小。南北方向绿灯亮15秒,东西方向绿灯亮10秒。试编一程序模拟交通灯变化。
分析:I:3/0为启动按钮,I:3/1为停止按钮,它们都为点动按钮。灯O:4/0为南北绿灯,O:4/2为南北红灯,O:4/6为东西绿灯,O:4/8为东西红灯。当触发I:3/0,使能ONS指令,灯O:4/0、O:4/8亮,O:4/2、O:4/6灭,B3:0/1置位为1,T4:0开始工作。T4:0计时15S后动作,T4:0/DN闭合,O:4/0、O:4/8灭,O:4/2、O:4/6亮,T4:1开始工作。T4:1计时10S后动作,T4:1/DN闭合,其XIC(检查断开)逻辑变为假,T4:0被复位,T4:0/DN变为0,所以T4:1也被复位,其XIC逻辑又变为真,灯O:4/0、O:4/8亮,O:4/2、O:4/6灭,T4:0又开始工作。除非触发停止按钮I:3/1使它们停止和复位,程序将一直循环执行,这样就实现了交通灯交替亮灭。
13
14
2. 延时断开计时器(TOF)
延时断开计时器(TOF)的功能是梯级条件变假后经过一段延时时间对输出动作。它相当于继电器控制系统中的断电延时继电器。
TOF指令各参数的含义与TON相同。
当梯级条件变假时,TOF开始计时,直到下列条件中的任何一个发生为止: 累计值=预置值; 梯级变真。
不论计时器是否计到时,梯级变真时计时器复位累计值。 TOF指令的状态位变化情况如下,注意它们和TON的区别。 状态位 DN TT
梯级为真 梯级为假且累计值<预置值 置位条件 保持置位直到下列情况发生 梯级变为假且累计值>=预置值 梯级变为真或DN被复位 15
EN 梯级为真 梯级变为假 无论任何情况都不要用RES指令对TOF复位。因为RES总是清零状态位及累计值,若对TOF复位,则DN,TT,EN被清零,可能会使指令逻辑陷于混乱,发生不可预知的结果。
3. 保持型计时器(RTO)
TON和TOF计时器在梯级条件变假时,累计值和DN位都要被复位,梯级条件变为真后又重新计时,有时这会给某些应用带来不便。这时我们可以采用能累积计时的RTO指令。
当梯级条件为真时,RTO指令开始计时。当下列任何情况发生时,RTO指令保持它的累计值:
梯级变假;
用户改变到编程方式; 处理器出错或断电。
当处理器重新运行或阶梯变真时,RTO计时器从保持的值开始继续计时,直到累计值达到预置值。如果需要复位其累计值和状态位,可在另一阶梯中用RES指令对相同地址的计时器复位。无论任何情况,复位指令总是优先执行。即只要使能复位指令,无论计时器是否正在计时,累计值及状态位总被复位为0。
RTO指令的状态位的变化情况如下: 状态位 DN TT EN 置位条件 累计值>=预置值 保持置位直到下列情况发生 相应的RES指令使能 梯级为真且累计值<预置值 梯级变为假或被DN置位 梯级为真 梯级变为假 4. 加计数(CTU)
CTU指令在-32768~32767范围内向上计数。每一次梯级条件由假变真时CTU累计值加1。当梯级再次变为假时累计值保持不变。当累计值等于或超过预置值时,CTU指令置位完成位DN。编程时可以用CTU指令计数某些动作来引发事件,比如通过计数一个存储位的变化或一个外设的导通关断变化次数来让另一外设动作。
CTU指令的状态位及变化情况为: 状态位
置位条件 保持置位直到下列情况发生 16
OV 累计值返回到-32768(即从32767继续计数) 相应的RES指令使能或者用CTD指令使累计值<=32767 累计值<预置值 梯级变为假或相应的RES指令使能 DN CU 累计值>=预置值 梯级为真 CTU工作的时序图为:
例7:试编一个自动增计数器。
分析:I:0/4为保持式按钮,I:0/9为点动式按钮。在RUNG0中,当I:0/4使能,
17
计数器累计值
0
1
完成位.DN 由计数器控制阶梯上的输出指令
控制计数器的阶梯条件 计时器使能位.EN
控制复位指令 的阶梯条件
ON OFF ON OFF ON OFF ON OFF ON OFF
2
3
4
0 计数器预置值=4 图3.22 CTU时序图
启动T4:0工作。延时1S后动作,T4:0/DN置位,其常闭断开T4:0被复位,T4:0/DN清0,其常闭闭合又启动T4:0工作。如此循环执行。相当于每1S,T4:0/DN位产生一个正脉冲。这样RUNG0构成了一个1S脉冲发生器,向RUNG1中每1S提供一个正脉冲,每来一个正脉冲C5:0的累计值就增1,这样就实现了自动增计数器。只要I:0/9使能,C5:0的累计值就立即复位为0。 5. 减计数(CTD)
CTD指令在-32768~32767范围内向下计数。每一次梯级条件由假变真时CTU累计值减1。当梯级再次变为假时累计值保持不变。当累计值等于或超过预置值时,CTU指令置位完成位DN。编程时可以用它计数某些动作来引发其它事件,比如通过计数一个存储位的变化或一个外设的导通关断变化来控制另一外设动作。 状态位 UN 置位条件 累计值返回到32767(即从-32768继续计数) DN CD 累计值>=预置值 梯级为真 保持置位直到下列情况发生 相应的RES指令使能或者用CTD指令使累计值>=-32767 累计值<预置值 梯级变为假或相应的RES指令使能 6. 计时器/计数器复位(RES)
RES指令用于复位计时器(除TOF) 和计数器。当梯级条件为真时RES指令复位相同寻址位的计时器或计数器(把状态位和累计值清0)。无论任何情况RES指令优先执行。
例8:现有一个液体混合容器,有两个输入液体阀和一个输出液体阀。使用程序模拟这三个阀的流量情况。
18
分析:用计时器T4:1,T4:2,T4:3来模拟流速。在RUNG1中,当使能I:0/4,运行TON指令。经过1.6S,T4:1/DN置位。其常闭断开后T4:1马上复位,T4:1/DN
19
又立即被复位,又运行TON指令。如此循环执行。相当于每1.6S,T4:1/DN位产生一个脉冲。同理,T4:2/DN每1.5S,T4:3/DN每1S产生一个脉冲。
用计数器C5:0的累计值来模拟容器中的液位。每当T4:1/DN位产生一个脉冲,C5:0的累计值就加1。形象的说,就好象每1.6S注入一单位的液体。对T4:3/DN用的是减计数器,每当T4:3/DN位产生一个脉冲,C5:0的累计值就减1。就好象每1S从容器里放掉一单位的液体。
当I:0/4使能,每1.6秒 C5:0的累计值就加1。当I:0/5使能,每1.5秒 C5:0的累计值就加1。当I:0/6使能,每1秒 C5:0的累计值就减1。这样就模拟了三个阀的流量情况。
本程序也有不足之处,例如计数器的累计值可以无限制的增加和减小,这不符合客观实际情况,在后面的章节里我们会用另外的程序来解决这个问题。
20
第三章 比较指令
比较指令属输入指令,用于比较两值作为逻辑梯级连续的条件。例如,小于(LES)指令有两个操作数,如果第一个小于第二个,那么LES指令为真。
比较指令共包括: 1. 等于(EQU) 2. 不等于(NEQ) 3. 小于(LES)
4. 小于或等于(LEQ) 5. 大于(GRT)
6. 大于或等于(GEQ) 7. 相等屏蔽比较(MEQ) 8. 极限比较(LIM)
它们的用法大致相同,掌握了一个也就掌握了其它的。下面逐个加以介绍。 1. 等于(EQU)
使用EQU指令比较二值是否相等。如果源A的值和源B的值相等,指令逻辑为真,否则为假。
操作数为两个数的比较指令(比如有源A和源B两个操作数的EQU指令)一般要求的数据寻址方式为:源A必须为地址,源B可为常数或地址。
例1:读程序分析结果。
21
分析:上面程序即为EQU指令的一个简单应用。RUNG0中,Source A与Source B的值相等,小灯O:4/0亮。RUNG1中,Source A与Source B的值不等,小灯O:4/1灭。 2. 不等于(NEQ)
使用NEQ指令比较二值是否不相等。如果源A的值和源B的值不相等,指令逻辑为真,否则为假。 3. 小于(LES)
使用LES指令比较一个值是否小于另一个值。如果源A的值小于源B的值,指令逻辑为真,否则为假。 4. 小于或等于(LEQ)
使用LEQ指令比较一个值是否小于或等于另一个值。如果源A的值小于或等于源B的值,指令逻辑为真,否则为假。 5. 大于(GRT)
使用GRT指令比较一个值是否大于另一个值。如果源A的值大于源B的值,指令逻辑为真,否则为假。
6. 大于或等于(GEQ)
22
使用GEQ指令比较一个值是否大于或等于另一个值。如果源A的值大于或等于源B的值,指令逻辑为真,否则为假。 7. 相等屏蔽比较(MEQ)
使用MEQ指令比较源地址中的数据和比较地址中的数据,允许被一个独立字屏蔽。MEQ相当于把源值和比较值的数据分别与屏蔽字作位与位的逻辑与操作,然后比较两个所得结果。如果相等,指令逻辑为真,否则为假。可看作屏蔽字中复位的位屏蔽数据,置位的位通过数据。因此只比较源值和比较值的在屏蔽字中的相应位为1的那些位。
例如:上面程序中,屏蔽字设为了00FFh,所以只比较B:3/0和B:3/1的低八位,而屏蔽掉了高八位。只要低八位相等,指令逻辑就为真,小灯O:4/0亮。 8. 极限比较(LIM)
23
使用LIM指令,根据用户设定的极限值,比较某值是在指定范围之内或之外。 指令的真假状态:
如果下限值小于或等于上限值,当比较值在极限范围内或等于任一极限值时,指令逻辑为真,否则为假。
如果下限值大于上限值,当比较值在极限范围内,指令逻辑为假。如果比较值等于任一极限值或超出极限范围,指令为真。
下限值,比较值,和上限值可以是字地址或常数,组合受到以下限制: 如果比较参数是一个常数,下限参数和上限参数必须是字地址。
如果比较参数是一个字地址,下限参数和上限参数可以是常数或字地址。
例2:现有一个液体混合容器,有两个输入液体阀和一个输出液体阀。使用程序模拟这三个阀的流量情况。并设置液位上下限报警,使相应阀门关闭。
24
分析:本程序为第二章例8的问题。前半部分和例8的思想一样。在后面加上了范围判断的指令,实现了上下限的报警,和相应阀门关闭。若同时有注入和流出阀门打开,上面程序可自动循环。
25
第四章 算术指令
算术指令属输出指令,当梯级条件为真时,执行指定的算术运算,输出结果存放到一个指定的存储单元。并根据结果自动设置状态位。
例如,加和减指令都是取两个输入值,进行加或减运算,运算结果存放到指定的目的地址内。并根据结果自动设置了状态位。
算术指令包括: 1. 加指令(ADD) 2. 减指令(SUB) 3. 乘指令(MUL) 4. 除指令(DIV) 5. 平方根(SQR) 6. 取反指令(NEG)
7. 整数转换成BCD码(TOD) 8. 从BCD码转换成整数(FRD) 9. 线性转换(SCP) 10. 编码(ENC) 11. 解码(DCD)
它们的用法也大致相同,下面逐个加以介绍。 1. 加指令(ADD)
ADD指令使源A和源B的值相加,结果存放到目的地址内。 例1:读程序分析结果。
分析:上面程序为ADD指令的一个简单应用。ADD指令把Source A和Source B的值
26
相加,结果存入Dest中(4+9,结果13存入N7:2)。 2. 减指令(SUB)
SUB指令使源A的值减去源B的值,结果存放到目的地址内。 3. 乘指令(MUL)
MUL指令使源A的值乘以源B的值,结果存放到目的地址内。 4. 除指令(DIV)
DIV指令使源A的值被源B的值所除。商四舍五入存放在目的地址内。5. 平方根(SQR)
SQR指令计算源值绝对值的平方根,结果四舍五入存放在目的地址内。
6. 取反指令(NEG)
27
NEG指令改变源值的符号然后存放到目的地址内。例如,如果源的值是3,目的数据将是-3。
7. 整数转换成BCD码(TOD)
BCD指令把16-位整数值转换成BCD码。如果输入的整数是负数,则转换其绝对值。 例:试编制一个6位数的自动计数器,用BCD码分别在N7:0和N:1上表示。
分析:MicroLogix1500中,计数器向上计数只能计到32767,在计数范围较大的场合常感
28
到不够用,但是如果采用多个数据进位的关系来表达,几乎可以计到无限。我们可以先用一个计数器来表示六位计数器的低四位,用另一个计数器来模拟六位计数器的高两位。本程序中,RUNG0产生计数脉冲,RUNG1用一个计数器来表示六位计数器的低四位,RUNG2用另一个计数器来表示六位计数器的高两位。RUNG3两位计数器一旦完成计数(即六位计数器已完成999999),两位计数器清0复位并输出信号。RUNG4和RUNG5用TOD指令把两个计数器的累计值变为BCD码在整数文件中显示,N7:0显示低四位,N7:1显示高两位。
8. 从BCD码转换成整数(FRD)
FRD指令把BCD码转换成16-位整数值。如果源数据不符合BCD码格式则发生处理器出错。
9. 线性转换(SCP)
SCP指令可对一个数进行线性转换。Input 为转换的输入值。Input Min ~ Input Max为设定的输入值的范围。Scaled Min ~ Scaled Max为希望得到的转换结果的范围。当梯级条件为真,它可以把输入值(Input)线性转化到Scaled Min ~ Scaled Max中。
转换规则根据下面方程:
29
10. 编码(ENC)
ENC指令可以把Source编码。Source为16位字,并且只能有一位为1,其余位均为0。转换规则如下:
Source Dest 0000 0000 0000 0001 0 0000 0000 0000 0010 1 0000 0000 0000 0100 2 0000 0000 0000 1000 3 0000 0000 0001 0000 4 0000 0000 0010 0000 5 0000 0000 0100 0000 6 0000 0000 1000 0000 7 0000 0001 0000 0000 8 0000 0010 0000 0000 9 0000 0100 0000 0000 10 0000 1000 0000 0000 11 0001 0000 0000 0000 12 0010 0000 0000 0000 13 0100 0000 0000 0000 14 1000 0000 0000 0000 15 11. 解码(DCD)
30
DCD指令为ENC指令的逆运算。它把源数据(Source)的最低4位的转化结果置入目的地址(Dest)中。转换规则为上表的逆。
31
第五章 传送和逻辑指令
传送和逻辑指令属输出指令,当梯级条件为真时,执行相应的传送或逻辑操作。指令执行后,并根据结果自动设置状态位。传送和逻辑指令包括: 1. 传送(MOV)
2. 屏蔽传送(MVM) 3. 逻辑与(AND) 4. 逻辑或(OR) 5. 逻辑异或(XOR) 6. 逻辑非(NOT) 7. 清零(CLR)
下面逐个加以介绍。 1. 传送(MOV )
MOV指令将数据从源地址传送到目的地址。只要梯级保持为真,每次扫描指令都重新传送数据。
2. 屏蔽传送(MVM)
MVM指令将数据从源地址传送到目的地址,并且允许部分目的数据被一个独立的字屏蔽。只要梯级条件保持为真,每次扫描该指令都重新传送数据。
上面程序中,数据传送的方式为:屏蔽字中位为0时,源值相应位的数据不传送,相当于源值和目的值的相应位数据保持不变。屏蔽字中位为1时,源值相应位的数据传送到
32
目的地址的相应位,相当于MOV指令。
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 B3:0 1 1 0 0 0 0 0 0 0 0 1 1 0 0 1 1 Mask 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 B3:1 0 0 0 0 1 1 0 0 0 0 1 1 0 0 1 1
3. 逻辑与(AND)
AND指令使源A与源B执行位与位的逻辑与操作。结果存储在目的地址内。 4. 逻辑或(OR)
OR指令使源A与源B执行位与位的逻辑或操作。结果存储在目的地址内。 5. 逻辑异或(XOR)
XOR指令使源A与源B执行位与位的逻辑异或操作。结果存储在目的地址内。6. 逻辑非(NOT)
33
NOT指令使源A与源B执行位与位的逻辑非操作。结果存储在目的地址内。 7. 清零(CLR)
CLR指令使目的地址的值清为0。
34
第六章 移位和顺序进出指令
移位和顺序进出指令属输出指令。每一次梯级条件由假变真时,移位指令把指定地址内的所有位都移动一个位的位置,顺序进出指令完成一次顺序进出或比较操作。移位和顺序进出指令包括: 1. 位左移(BSL) 2. 位右移(BSR) 3. 顺序器装入(SQL) 4. 顺序器比较(SQC) 5. 顺序器输出(SQO) 6. FIFO装入(FFL) 7. FIFO卸出(FFU) 8. LIFO装入(LFL) 9. LIFO卸出(LFU) 下面逐个加以介绍。 1. 位左移(BSL)
当梯级条件由假变真时,BSL指令对File文件指定的数据向左(向高位)移动一位。由Bit Address指定的一位被移入最右位(最低位)。
MicroLogix1500中Length的设定范围为0~2048,含义为文件中参与移位的数据块的位数。但是实际上只能移位整数个字的所有位。参与移位的字数为对Length除以16,再向上取整。如上例,当Length的值为1~16时,实际上都是移动N7:0的16位。 2. 位右移(BSR)
当梯级条件由假变真时,BSR指令对File文件指定的数据向右(向低位)移动一位。由Bit Address指定的一位被移入最左位(最高位)。Length的含义与BSL中的相同。
例1:O:0.0的预置状态为1111000000000000。试编一程序,其前20S,按每秒一次的速度进行左移位;后20S,按每秒一次的速度进行右移位。循环进行。
35
36
分析:本程序借鉴了前面的交通灯设计的思想。RUNG1和RUNG2即为交通灯交替亮的实现方式。只不过这里让它使B3:1/0和B3:1/1交替置1。RUNG0为1S脉冲发生器。RUNG3和RUNG4中,B3:1/0、B3:1/1和T4:2/DN共同作为移位控制信号,实现了循环左右移位的要求。
下面的顺序器指令一般用来控制具有连续和重复操作特性的自动化生产线。顺序器指令包括:顺序器装入指令SQL、顺序器比较指令SQC、顺序器输出指令SQO。
我们结合下面的程序来体会这三条指令。 3. 顺序器装入(SQL)
4. 顺序器比较(SQC)
5. 顺序器输出(SQO)
例2:读程序分析结果。
37
分析:RUNG0为3S脉冲发生器。为RUNG1~RUNG3提供脉冲信号。
RUNG1中,#File N9:0为顺序器装入文件,Source N7:0为数据源。当梯级条件由假到真变化时,SQL指令从数据源读入16位数据,把它存入顺序器装入文件。当梯级条件再由假到真变化时,SQL指令再从数据源读入16位数据,把它存入顺序器装入文件的下一步(字)。如此执行Length次(这里为10)。所以上例RUNG1的执行结果为每3S从N7:0读一次数据,然后把它们顺序装入N9:0、N9:1、N9:2、一直到N9:9,共执行了10次。
38
这时就可以轻松的读懂RUNG3了。只不过它还可以设置独立的屏蔽字。每3S从顺序器文件读出一个数据(第1次读N10:0,第2次读N10:1,依次类推)。经过屏蔽后都送到N11:0。屏蔽位为1的可以通过数据,屏蔽位为0的不能通过数据。这里屏蔽字设为了0FFFFH,数据都可以通过。
RUNG2为顺序器比较指令SQC。它的执行结果为:每3S从顺序器文件N12:0顺序读入一个数据,经过屏蔽后和源数据相比较,如果相等则FD位被置1,否则被置0。
例3:每2S从I:0.0读入一个数据,共读9次,完成顺序器装载。然后将顺序器文件按每2S一次的速度依次传到O:0.0显示。
分析:上面程序为顺序器输入输出的一个简单应用。需注意它们需使用不同的控制字。否则将处以混乱状态。 6. FIFO装入(FFL)
39
7. FIFO卸出(FFU)
FFL和FFU 指令是成对使用的。它们实际为对数据结构中队列(FIFO,First In First Out,先进先出)的操作。FFL相当于进队操作,FFU相当于出队操作。
例4:试编一程序,可以从输入口I0:0置入10个数,然后依次在输出口O0:0显示。
40
分析:本程序中FFL、FFU指令成对使用,此时应使用相同的控制字。程序运行后,前20S,每2S从I0:0读入一个数据,然后存入队列文件#N7:0中。后20S,每2S从队列文件#N7:0中读出一个数据,然后显示在O0:0上(按先进先出的顺序读数)。 8. LIFO装入(LFL)
9. LIFO卸出(LFU)
LFL和LFU 指令是成对使用的。它们实际为对数据结构中堆栈(LIFO,Last In First Out,后进先出)的操作。LFL相当于进栈操作,LFU相当于出栈操作。
若将上例的FFL、FFU指令换为LFL、LFU指令,则在输出口O0:0上,首先显示最后输入的数据,然后再显示倒数第2次输入的数据,依次类推,最后显示第1次输入的数据。
41
第七章 程序流程指令
程序流程指令控制梯形图程序执行的顺序。有代表性的应用这些指令,可提高程序的执行效率和可读性,也有利于程序的故障检测。
程序流程指令包括: 1. 程序跳转(JMP、LBL)
2. 跳转到子程序(JSR、SBR、RET) 3. 暂停(TND) 4. 中断(SUS)
5. 主控程序(MCR) 下面分别加以介绍。 1. 程序跳转(JMP、LBL)
JMP指令使处理器在执行梯形图程序时跳过一些梯级,LBL指令是具有相同标号的JMP指令的跳转目标。成对使用跳转和标号指令,可以跳转到程序的某一部分。若跳转指令为真,则处理器从JMP梯级跳到LBL梯级继续执行程序,而且既可以可以向前跳,也可以向后跳。若跳转指令为假,则程序忽略JMP指令。向后跳向一个标号省略了某段程序,故而缩短了扫描时间。向前跳转可使处理器反复执行一段程序,直到其逻辑完成为止。设JMP和LBL指令标号的设置范围为0~999。
上例中,当I:0/6使能,程序便跳过RUNG1,直接执行RUNG2。当I:0/6断开,程序不跳转,继续执行RUNG1。
2. 跳转到子程序(JSR、SBR、RET)
42
在梯形图程序中,可以把在很多处都要执行的部分做成子程序,这样可以使程序更加清晰,并且节省存储空间。
新建子程序的方法为:
1) 打开RSLogix 500编程界面。
2) 鼠标右键点击左边目录中的“Program Files”。 3) 在弹出的菜单中单击“New”。 4) 弹出“Create Program File”对话框。填入所欲创建的子程序号(3~255),单击“OK”
即可。
主程序的文件号为2(即LAD 2)。
JSR、SBR和RET指令使得处理器跳到梯形图图程序中的一个独立的子程序文件,并对它进行一次扫描,然后返回出发点。JSR指令使处理器跳到指定的子程序文件。如上例,在主程序中需要跳转到子程序的地方加入JSR指令,参数为子程序的文件号。SBR指令必须在子程序的第一条指令的第一梯级。是否使用该指令是可选的,为了使程序清晰建议大家使用它。在子程序的末尾用RET指令返回到主程序。
当JSR指令的梯级条件变真时,处理器便跳转到子程序中。在用JSR指令编程时,应注意:
1) 每一个属于主程序外部的子程序必须有自己的文件并且由唯一的描述符来识别。 2) 除了子程序文件的第一个SBR指令外,主程序不能跳转到子程序中任何别的地方。 3) 可以嵌套多达8个子程序文件。
子程序文件嵌套:可在一个程序文件中嵌套多达8个子程序。也就是说,只要子程序不超过7级,便可让处理器从主程序跳向一个子程序,然后再从一个子程序跳转到另一个子程序。处理器返回路径与此相反,在RET指令处,处理器自动的返回到先前JSR指令后的下一条指令,并且在返回主程序之前一直遵循此执行过程。
3. 暂停(TND)
43
当TND指令梯级条件为真时,处理器停止扫描程序的其余部分并更新I/O,并从主程序的第一条指令处恢复执行程序扫描。
在调试程序或查找程序故障时,可插入TND指令,它只允许程序运行到它所在的程序为止。在程序中逐步的移动此指令,以调试一段新的程序,还可以用它来作为主程序和本地子程序的一个分界线。 4. 中断(SUS)
当SUS指令使能时,它使处理器进入挂起模式并且在状态文件的字7(S:7)存储挂起ID。所有的输出被停止使能。在程序调试和系统故障检测时用这一指令可获得或查明具体条件。
当编程该指令时输入挂起ID,编号范围是-32768 ~ 32767。
如上例,当I:0/8使能,执行SUS指令,它使处理器挂起,程序中断执行。打开状态
44
文件,可看到S:7的值为4444,中断文件号为2(主文件)。 5. 主控程序(MCR)
成对使用MCR指令可创建一程序区域。它可关断此区域内所有非保持型输出。非保持型输出在其所在梯级条件变假时被复位。当开始的MCR梯级条件为真时,每个梯级根据各自的输入条件执行MCR区域(好象MCR不存在一样)。当开始的MCR梯级条件为假时,无论每个梯级各自的输入条件怎样,MCR都复位所有非保持型输出指令。
如上例,当I:0/8断开时,好象MCR指令不存在,程序继续执行下一步。当I:0/8使能时,无论I:0/6是否使能,O:0/6都不亮。
当用MCR指令编程时,应注意:
1) 一定要成对使用MCR指令,用无条件MCR指令结束程序区。 2) 不能在一个MCR区内嵌套另一个MCR区。
3) 不要从程序外部跳转到MCR区内。如果MCR区条件为假,跳转到此区会使此区
被激活。
4) 如果MCR区连接到梯形图的结尾,就不必编写另一条MCR指令来结束此MCR
区。
45
第八章 I/O,文件,PID指令
本章指令大都涉及到I/O输入输出,文件的操作,模拟量输入输出,PID运算与控制。具体包括:
1. 立即输入输出(IIM、IOM) 2. 通讯服务(SVC) 3. 通讯(MSG) 4. 更新I/O(REF) 5. 文件拷贝(COP) 6. 文件填充(FLL) 7. 数据整定(SCL)
8. I/O中断子程序(INT) 9. STI中断启动(STS) 10. PID控制(PID) 11. 脉冲串输出(PTO) 12. 脉宽调制(PWM) 13. 用户中断屏蔽(UID) 14. 用户中断使能(UIE) 15. 用户中断 (UIF)
下面逐个加以介绍。 1. 立即输入(IIM)
IIM指令可以优先于正常的扫描顺序刷新输入的值。当它使能,程序扫描被中断,从指定的输入口中读来数据,经过屏蔽后,刷新其数据文件的值。然后再恢复程序扫描。屏蔽字中,为0的位屏蔽数据,为1的位通过数据。 2. 立即输出(IOM)
IOM指令可以优先于正常的扫描顺序刷新输出的值。当它使能,程序扫描被中断,从输出数据文件中读来数据,经过屏蔽后,刷新指定的输出口。然后再恢复程序扫描
46
3. 通讯(MSG)
MicroLogix 1500的通讯体系结构由三个基本的部分组成: 梯形图扫描(Lader Scan);
通讯缓冲区(Communications Buffers); 通讯队列(Communication Queue)。 它们决定了处理器什么时候传送消息。
当MSG指令使能,假如指令内定义的是写命令,则指定的信息和数据被传送到通讯缓冲区内。处理器继续扫描梯形图程序的其他部分。一般在一个扫描周期结束后,信息被处理,并且通过通讯通道发出处理器。
MicroLogix 1500内共4个通讯缓冲区。当在一个通讯指令结束前,如果又有一条通讯指令要处理,则它的信息和数据被传送到其余未用的一个通讯缓冲区内。当四个缓冲区全满,第五个通讯指令又要处理时,通讯请求信息放在通讯队列中(注意,不是要传送的数据)。通讯队列是一个信息存储空间,存储了那些还没有被分配缓冲区的通讯指令。通讯队列的操作顺序是先进先出(FIFO),它可容纳得下梯形图中所有的通讯指令。缓冲区和队列机制都是完全自动执行的。通讯缓冲区被自动分配和释放,当缓冲区满时,再来请求则自动进入队列。
因为通讯队列中不是存储要传送的数据,所以如果一条通讯指令在队列中移出,处理器实际发送的数据和通讯指令第一次被扫描时可能不同。
MicroLogix1500可以本地或远程通信.
本地通信中所有设备都可直接到达,没有单独的设备用作网桥(Bigdge),组网中可能用到不同类型的接口,但是这样的网络依然被分类为本地网。远程通信用远程网,设备连接通过或路由过一个专门的设备。
47
用1761-NET-AIC配置的DH485本地网
DH485远程网
MSG属输出指令,它可以使控制器和其他设备通讯。 下面介绍MSG屏幕参数的含义。
通信命令(Communication Command):指定选择的通信类型。包括目标设备类型,以及是信息读(Read)还是信息写(Write)。读是指本地处理器(指令驻留的处理器是本地处理器)接收数据,写是指本地处理器发送数据。目标设备类型共有三种可以选择:500CPU 、485CIF 、PLC5,它们分别支持的设备如下:
500CPU READ:如果目的设备为SLC500或兼容(包括所有的MicroLogix1000,1500)。 485CIF: 如果目的设备为PLC2或兼容(支持485CIF)。 PLC5: 如果目的设备为PLC5或兼容。
MicroLogix 1500支持6种不同的通信类型:500CPU READ、500CPU WRITE、485CIF READ、485CIF WRITE、PLC5 READ、PLC5 WRITE。如果目标设备支持这6种通信类型中的任何一中,MicroLogix 1500就可以和它通信。
数据表地址(Data Table Address):参数指定了本地处理器要处理数据的开始地址。 元素大小(Size in Elements):参数指定了要和其他设备交换数据的大小(本地元素的大小)。MSG指令可传送的数据最大量为103字(206个字节),也被目的数据类型决定。
通信通道选择(Channel):参数指定了传送通信请求时选用的通信通道。MicroLogix1500通过通道0(配置DF1全双工、DF1半双工或DH485协议)启动通讯指令。只有MicroLogix 1500 LRP Series B 可使用通道0或1。
以下是目标设备通信的参数: 通信超时(Message Timeout):定义了通信指令开始后,几秒应该完成,超过设定时间
48
后,发生通信错误。默认为5秒。
数据表地址(Data Table Address):参数指定了目的处理器数据的开始地址。 本地节点地址(Local Node Addr):连接在网络上的目标设备的节点地址。 本地/远程(Local/Remote):指定选用的通信类型。 选择远程通信时还需要设置:
远程站地址(Remote Station Address) :目标站的DH地址。
远程桥地址(Remote Bridge Address) :要访问的远程处理器的所在地址。 桥连接ID(Bridge Link ID) :要访问的数据的地址。
下面我们通过一个实例体会MSG指令的具体应用。
问题描述:在一个DH485网络上,有两台可编程序控制器MicroLogix 1500(节点地址为2)和MicroLogix 1000(节点地址分别为1)。现要求用1500 的输入口(I:0.0)控制1000的电机启动、停止、变频调速。
1500中运行的程序
MSG指令屏幕参数的设置
49
1000中运行的程序
分析:MicroLogix 1500的程序实现把输入端(I:0.0)的数据送到MicroLogix 1000。只用到了一条通讯指令MSG,当I:3/0使能时启动通讯。屏幕参数中,因为要发送数据,且目标设备是MicroLogix 1000,所以选择500CPU Write。要传送的数据表地址为I:0.0,长度为1个字。通过通道0传送。目标设备配置的参数中,最大通信延时设为默认的5S,数据传送到目标设备的N7:0中。目标设备的节点地址为1,采用本地网通信类型。
MicroLogix 1000的程序实现根据传送来的N7:0的数据控制电机工作。RUNG0~RUNG2分别控制电机的正转、反转、停止。RUNG3~RUNG5可通过三个开关为0或1的状态组合而改变电机的工作频率(共可组合为8种)。 4. 通讯服务(SVC)
SVC属输出指令。用于优于正常扫描周期执行通讯程序。当使能时,程序扫描被中断以执行操作周期的通讯服务部分。然后从SVC指令的下一条指令恢复扫描。SVC指令允许选择指定的通讯服务通道。
50
正在阅读:
RSLOGIX500指令chinese01-06
2014年高考文综历史分类汇编必修一09-22
我心中的美好家园作文700字02-04
高级英语第一册课后练习答案_张汉熙版08-28
2022年骞村辜鍎垮洯宸ヤ綔璁″垝08-01
台北市文山区景美国民小学08-25
视书如命的我作文600字06-23
2013级金融学双学位班毕业实习要求10-29
关于安全技术防范工作中若干问题的探讨04-09
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 指令
- RSLOGIX500
- chinese
- 山东省滨州市2017-2018届高考第二次模拟考试数学(文)试题含答案 - 图文
- 竞赛第二讲 运动学
- 电气给排水工程施工方案 - 图文
- 对生活坚强的说说心情
- 2018年一建实务真题和答案及解析
- 医院财务科人员岗位职责
- 2016年春节假日旅游工作总结
- 推荐下载 实施青年素质工程让青春在岗位上闪光(共青团)1-最新
- 如何加盟特色餐饮连锁店
- 名词解释
- 小学数学观摩课教学设计方案
- 跨境电商产业园实施方案 跨境电商产业园策划书跨境电商产业园案例分析 跨境电商产业园可行性研究报告 - 图文
- 课程设计报告 - 自动打铃系统
- 最新苏教版三年级数学上册第一单元两、三位数乘一位数教案(含教学反思)
- 事业单位《公共基础知识》马克思主义政治经济学专题
- 2018年求职应聘简历制作需注意的格式问题
- 《赤壁赋》学案(人教版高一必修学案设计)
- 延安市酒店名录2018版107家 - 图文
- 人教新课标一年级上册语文写字教案-横竖撇捺
- 市场营销在企业管理中的重要性