[计算机软件及应用]plc指令1.doc

上传人:sccc 文档编号:4561613 上传时间:2023-04-27 格式:DOC 页数:82 大小:1.88MB
返回 下载 相关 举报
[计算机软件及应用]plc指令1.doc_第1页
第1页 / 共82页
[计算机软件及应用]plc指令1.doc_第2页
第2页 / 共82页
[计算机软件及应用]plc指令1.doc_第3页
第3页 / 共82页
[计算机软件及应用]plc指令1.doc_第4页
第4页 / 共82页
[计算机软件及应用]plc指令1.doc_第5页
第5页 / 共82页
点击查看更多>>
资源描述

《[计算机软件及应用]plc指令1.doc》由会员分享,可在线阅读,更多相关《[计算机软件及应用]plc指令1.doc(82页珍藏版)》请在三一办公上搜索。

1、FXPLC二进制浮点数变换BIN整数INT指令3三菱PLC二进制浮点数开平方指令DESOR3二进制浮点数乘法指令DEMUL4二进制浮点数除法指令DEDIV4二进制浮点减法指令DESUB5二进制浮点加法指令DEADD5十进制浮点转换二进制浮点指令DEBIN6二进制浮点转换十进制浮点指令DEBCD6HEX-ASCII转换指令ASCI8校验码指令CCD9上下字节交换指令SWAP11二进制浮点比较指令DECMP12二进制浮点区域比较指令DEZCP12八进制位传送指令PRUN13串行数据传送指令RS(FX系列)14三菱PLCBFM写入指令TO(FX系列)17BFM读出指令FROM(FX系列)17十六键输

2、入指令HKY18十字键输入指令TKY19数据排序指令SORT20斜坡指令RAMP22交替输出指令ALT22特殊定时器STMR指令23示教定时器TTMR指令24增量方式凸轮控制指令INCD27绝对方式凸轮控制指令ABSD28数据查找指令SER30带加减速脉冲输出指令PLSR31脉宽调制指令PWM32脉冲输出指令PLSY32脉冲密度指令SPD33区间比较指令DHSZ(高速计数器用)34比较置位指令DHSCS和复位指令DHSCR(高速计数器用)35阵输入指令MTR36输入滤波调整指令REFF37输入输出刷新指令REF38BIN开方运算指令SQR40信号报警的设置指令ANS,ANR41求平均值指令ME

3、AN42ON位数判断指令BON43ON位数指令SUM44编码指令ENCO44比较指令DECO45全部复位ZRST指令47移位写入SFWR与移位读出SFRD指令48字右移WSFR与字左移WSFL指令49位右移SFTR与位左移SFTL指令50右回转ROR与左回转ROL指令51求补指令NEG52逻辑与WAND,逻辑或WOR,逻辑异或WXOR指令52增加指令INC与减少指令DEC53乘(除)法运算指令MUL(DIV)54加(减)法运算指令ADD(SUB)54BIN交换指令55BCD交换指令56三菱CC-LINK介绍56位传送指令SMOV58原点回归指令ZRN59可变速脉冲输出指令PLSV60触点比较指

4、令60相对位置控制指令DRVI61绝对位置控制指令61交换指令XCH65多点传送指令FMOV65成批传送BMOV66反相转送CML67传送指令M0V67比较指令CMP与区域比较指令ZCP68子程序调用CALL69条件跳转CJ70监视定时器WDT71中断程序实例72基本顺控指令说明(五)计时器73本顺控指令说明(四)定时器74基本顺控指令说明(三)75基本顺控指令说明(二)76基本顺控指令说明(一)77状态指令STL编程方法78FXPLC二进制浮点数变换BIN整数INT指令INT,INTP:十六位连续执行型与脉冲执行型 DINT,DINTP:三十二位连续执行型与脉冲执行型 二进制浮点数变换BIN

5、整数INT指令的编程格式: INT D10 D20 *D10:源寄存器,只能用寄存器D *D10:目标寄存器,只能用寄存器D 三菱PLC二进制浮点数开平方指令DESORDESOR:连续执行型二进制浮点数开平方指令 DESORP:脉冲执行型二进制浮点数开平方指令 二进制浮点数开平方指令的编程格式: DESOR D10 D20 *D10:源寄存器地址,可以使用寄存器D或是数值 *D20:目标寄存器地址,只能使用寄存器D 注:常数被指定为源数据时,PLC自动转换成二进制浮点数处理 二进制浮点数乘法指令DEMULDEMUL:连续执行型二进制浮点数乘法指令 DEMULP:脉冲执行型二进制浮点数乘法指令

6、二进制浮点数乘法指令的编程格式: DEMUL D10 D20 D30 *D10,D20:源寄存器地址,可以使用寄存器D或是数值 *D30:目标寄存器地址,只能使用寄存器D 注:常数被指定为源数据时,PLC自动转换成二进制浮点数处理二进制浮点数除法指令DEDIVDEDIV:连续执行型二进制浮点数除法指令 DEDIVP:脉冲执行型二进制浮点数除法指令 二进制浮点数除法指令的编程格式: DEDIV D10 D20 D30 *D10,D20:源寄存器地址,可以使用寄存器D或是数值 *D30:目标寄存器地址,只能使用寄存器D 注:常数被指定为源数据时,PLC自动转换成二进制浮点数处理二进制浮点减法指令D

7、ESUBDESUB:连续执行型二进制浮点减法指令 DESUBP:脉冲执行型二进制浮点减法指令 二进制浮点减法指令的编程格式: DESUB D10 D20 D30 *D10,D20:源寄存器地址,可以使用寄存器D或是数值 *D30:目标寄存器地址,只能使用寄存器D 注:常数被指定为源数据时,PLC自动转换成二进制浮点数处理二进制浮点加法指令DEADDDEADD:连续执行型二进制浮点数加法指令 DEADDP:脉冲执行型二进制浮点数加法指令 二进制浮点数加法指令的编程格式: DEADD D10 D20 D30 *D10,D20:源寄存器地址,可以使用寄存器D或是数值 *D30:目标寄存器地址,只能使

8、用寄存器D 注:常数被指定为源数据时,PLC自动转换成二进制浮点数处理 十进制浮点转换二进制浮点指令DEBIN二进制浮点转换十进制浮点指令DEBCDASCII-HEX转换指令HEXHEX:连续执行型指令 HEXP:脉冲执行型指令 ASCII-HEX转换指令的编程方式: HEX D200 D100 n *D200:源寄存器起始地址,可以用T,C,D,数值或是位元件的组合如K4X0 *D100:目标寄存器起始地址,可以用T,C,D或是位元件的组合如K4Y0(X除外) *n:指定要转换的字符数,只能用数值。范围:1-256 M8161断开时为十六位转换方式,闭合时为八位转换方式 当M8161=OFF

9、时,为十六位转换模式,动作过程如下: 将源寄存器中的高低各八位的ASCII字符转换成HEX数据,每4位向目标寄存器传送,传送的字符数用n指定。 当M8161=ON时,为八位转换模式,动作过程如下: 将源寄存器中的低八位存储的ASCII字符转换为HEX数据,每4位向目标寄存器传送,传送的字符数用n指定。 HEX-ASCII转换指令ASCIASCI:十六位连续执行型 ASCIP:十六位脉冲执行型指令 HEX-ASCII转换指令ASCI编程方式: ASCI D100 D200 n *D100:源寄存器起始地址,可以用T,C,D,数值或是位元件的组合如K4X0 *D200:目标寄存器起始地址,可以用T

10、,C,D或是位元件的组合如K4Y0(X除外) *n:指定要转换的字符数,只能用数值。范围:1-256 M8161断开时为十六位转换方式,闭合时为八位转换方式 举例说明: D101=1234 D100=0ABC M8161=0FF(注,D100,D101内存的都是十六进制数) 如n=K1,只将C转换ASCII码送入到D200的低位 如n=K2,将C转换ASCII码送入到D200的高位,B转换到ASCII码送入到D200的低位 如下D101=1234 D100=0ABC M8161=ON(注,D100,D101内存的都是十六进制数) 如n=K1,只将C转换ASCII码送入到D200的低位,其高位为

11、0 如n=K2,C转换ASCII码送入到D200的低位,其高位为0。B转换到ASCII码送入到D201的低位,D201的高位为0 下图是一个实际程序的执行结果: HEX:是16进制数的表示方法。如果您搞不清HEX(16进制数)到底是多大,请您用电脑里的计算器练习练习,计算器-查看-科学型。然后输入一个数在十六进制与十进制之间转换,看看变化。多输入几个数练习就会了。(十六进制:每十六向上进一位) 如十六进制H31的十进制值为49(3*16+1)校验码指令CCDCCD:连续执行型校验码指令 CCDP:脉冲执行型校验码指令 其编程方式如下: CCD D200 D0 n *D200:源寄存器起始地址

12、可以用T,C,D或是位元件的组合如K4X0 *D0:目标寄存器地址 可以用T,C,D或是位元件的组合如K4Y0(X除外),自动占用下一位地址编号,如本例的D1 *n:转换的位数,可以用数值或是寄存器 动作原理如下图: 上下字节交换指令SWAPSWAP,SWAPP:十六位连续执行和脉冲执行型上下字节交换指令 DSWAP,DSWAPP:三十二位连续执行和脉冲执行型上下字节交换指令 三菱FXPLC的上下字节交换指令SWAP的编程方式: SWAPP D10 *D10: 可以用T,C,D或位元件组合如K4M0(X除外) 注: 16位指令时是D10的低8位字节与高8位字节交换 32位指令时是D10的低8位

13、字节与高8位字节交换,D11的低8位字节与高8位字节交换。 实例: D100是计算后得出的校验和,WAND为与指令,第一个WAND指令取出了校验和的低字节送入寄存器D34,第二个WAND提取出校验和的高字节送入寄存器D35(仍存入D35的高字节中),经过SWAP指令得到了校验和的高字节。二进制浮点比较指令DECMP二进制浮点比较指令只有三十二位指令,连续执行型DECMP与脉冲执行型DECMPP 其编程方式为: DECMP D10 D20 M0 *D10:源寄存器1,只能用寄存器与数值 *D20:源寄存器2,只能用寄存器与数值 *M0:目标位元件,可以用Y,M,S。共占有3点(如本例的M0,M1

14、,M2) 其动作原理如下图: *当源数据是数值时,自动转换成二进制浮点数进行处理。也就是说可以直接输入十进制或是十六进制,PLC内部自动转换成二进制浮点数。二进制浮点区域比较指令DEZCP二进制浮点区域比较指令只有三十二位指令,连续执行型DEZCP与脉冲执行型DEZCPP 其编程方式为: DEZCP D20 D30 D0 M3 *D20:源寄存器1,只能用寄存器与数值 *D30:源寄存器2,只能用寄存器与数值 *D0:源寄存器3,只能用寄存器与数值 *M3:目标位元件,可以用Y,M,S。共占有3点(如本例的M3,M4,M5) 其动作原理如下图: *当源数据是数值时,自动转换成二进制浮点数进行处

15、理。也就是说可以直接输入十进制或是十六进制,PLC内部自动转换成二进制浮点数。八进制位传送指令PRUNPRUN(PRUNP):十六位连续执行(脉冲执行)型指令 DPRUN(DPRUNP):三十二位连续执行(脉冲执行)型指令 八进制位传送指令PRUN编程方式如下: PRUN KnX0 KnY0 *KnX0:源地址,只能是X或M。n的范围:1-8 *KnY0:源地址,只能是Y或M。n的范围:1-8 注:为了方便计算,请将指定元件的最低位设为0如K4Y20,但设为K4Y21也可以,只是不方便计算(三菱的输入与输出是八进制的如X0-X7,X10-X17,没有X8,X9)。 指令的动作过程: LD M6

16、0 PRUN K4X0 K4M0 当M60闭合时, X0-X7的状态传送给M0-M7 X10-X17的状态传送给M10-M17 再如: LD M60 PRUN K4M0 K4Y0 当M60闭合时, M0-M7的状态传送给Y0-Y7 M10-M17的状态传送给Y10-Y17 观察下图的运行结果,体会PRUN的动作过程: 如果程序改为 LD M8000 MOV K1028 K4M0 PRUN K1M0 K1M30 MOV K4M30 D0 运行结果:D0=8 (PRUN K1M0 K1M30表示M0-M3 M30-M33参预运算) 串行数据传送指令RS(FX系列)串行数据传送通讯指令RS只有十六位

17、连续执行型,此编程格式为: RS D200 D0 D500 D1 *D200:发送数据寄存器起始地址编号,只能用寄存器D *D0:发送数据点数,可以用D或者数值,其范围是:0-4096,如果不发送只接收请设为0 *D500:接收数据寄存器起始地址编号,只能用寄存器D *D1:接收数据点数,可以用D或者数值,其范围是:0-4096,如果不接收只发送设为0 注: 1、D0+D1的和要小于或等于8000 2、使用RS指令前要根据所通讯设备的要求先设定好通讯格式,设定方法为写入特殊寄存器D8120(如下图)。为什么设定通讯格式请参考: 串行数据传送指令RS编程手册上用了10页来介绍,看起来很麻烦,实际

18、应用其实也很简单。 1、首先用程序将所有要发送的数据写入以D200为起始地址的寄存器中,要发送的点数写入D0(比如您要发送十个数据即写入K10),然后驱动M8122,令M8122闭合发送开始。发送完成M8122自动复位(无须程序复位) 2、当M8123闭合时表示接收完成,接收数据存储在以D500为起始地址的n(D1里的值)个寄存器里。要注意的是,不能直接读D500这n个寄存器的值,读取接收数据的方法举例: LD M8123 BMOV D500 D300 n RST M8123 即在M8123闭合时立即将接收数据转移到以D300为起始地址的n(D1里的值)个寄存器里,然后用程序将M8123复位,

19、准备进行下一次接收。 如上两步即完成了一个简单的发送与接收过程,当然如果您想通讯更可靠的话还需要设定超时检测等数据。 用好RS指令的关键是熟悉所要通讯设备的通讯格式、通讯协议,只有了解这些才知道如何写入D8120,如何写入发送数据,如何编制校验和计算程序,如何处理接收到的数据等等。 请看一个简单的例子: 详细内容请在网络上搜索FX通讯用户手册它是中文版的,再看FXPLC的编程手册。 RS-232和RS-485都不贵(200多元),您买一个回来与您手里有的其他设备通讯试一下也就了解了。或者您可以买两个,在两个FXPLC之间做试验。(无协议通讯,或者您自己编一个简单的通讯协议) 三菱PLCBFM写

20、入指令TO(FX系列) TO指令是从PLC对增设的特殊单元(如FX2N-4DA)缓冲存储器(BFM)写入数据的指令 TO,TOP:十六位连续执行和脉冲执行型指令 DTO,DTOP:三十二位连续执行和脉冲执行型指令 读出指令FROM的编程格式: TO K1 K12 D0 K2 *K1:特殊模块的地址编号,只能用数值,范围:0-7 *K12:特殊模块的缓冲存储器起始地址编号,只能用数值,范围:0-32767 *D0:源寄存器起始地址编号,可以用T,C,D,数值和位元件组合如K4X0 *K2:传送的点数,只能用数值。范围:1-32767 上述指令的作用是: 将PLC16位寄存器D0,D1的数值分别写

21、入特殊单元(或模块)N0.1的缓冲寄存器(BFM)#12,#13中。 注: 1、在特殊辅助继电器M8164闭合时,D8164内的数据做为传送点数 2、特殊辅助继电器M8028断开状态,在TO指令执行时,自动进入中断禁止状态,输入中断和定时器中断不能执行。在这期间发生的中断只能等FROM指令执行完后开始执行。TO指令可以在中断程序中使用 3、特殊辅助继电器M8028闭合状态,在TO指令执行时,如发生中断则执行中断程序,TO指令不能在中断程序中使用。 BFM读出指令FROM(FX系列)FROM,FROMP:十六位连续执行和脉冲执行型指令 DFROM,DFROMP:三十二位连续执行和脉冲执行型指令

22、读出指令FROM的编程格式: FROM K1 K29 D0 K2 *K1:特殊模块的地址编号,只能用数值,范围:0-7 *K29:特殊模块的缓冲存储器起始地址编号,只能用数值,范围:0-32767 *D0:目标寄存器起始地址编号,可以用T,C,D和除X外的位元件组合如K4Y0 *K2:传送的点数,只能用数值。范围:1-32767 上述指令的作用是: 从特殊单元(或模块)N0.1的缓冲寄存器(BFM)#29,#30中读出16位数据传送至PLC的D0,D1寄存器里。 注: 1、在特殊辅助继电器M8164闭合时,D8164内的数据做为传送点数 2、特殊辅助继电器M8028断开状态,在FROM指令执行

23、时,自动进入中断禁止状态,输入中断和定时器中断不能执行。在这期间发生的中断只能等FROM指令执行完后开始执行。FROM指令可以在中断程序中使用 3、特殊辅助继电器M8028闭合状态,在FROM指令执行时,如发生中断则执行中断程序,FROM指令不能在中断程序中使用。 ASCII码转换指令ASCASCII码转换指令ASC只有16位连续执行型,其编程方式: ASC ABCDWX69 D0 第一个操作数:任意八个数字或是字母,如:1A5EZ8F9 第二个操作数:目标寄存器起始地址(四个或是八个),可以是T,C,D ASC指令的作用是将第一操作数的ASCII码转换后存到第二个操作数为起始地址的四个寄存器

24、里(如果M8161闭合,则是存到第二个操作数为起始地址的八个寄存器里)。 示意图如下十六键输入指令HKYHKY:16位连续执行型十六键输入指令 DHKY:32位连续执行型十六键输入指令 十六键输入指令HKY的编程格式为: HKY X0 Y0 D10 M10 *X0:源输入起始地址(共四个),只能是X *Y0:源输出起始地址(共四个),只能是Y *D0: 存储吸合位元件编号的寄存器,可以是T,C,D *M10:目标位元件起始地址(共八个),可以是Y,M,S 十字键输入指令TKYTKY:16位连续执行型十字键输入指令 DTKY:32位连续执行型十字键输入指令 十字键输入指令TKY的编程格式为: T

25、KY X0 D10 M10 *X0:源位元件起始地址(共十个),可以是X,Y,M,S *D0: 存储吸合位元件编号的寄存器,可以是T,C,D或是位元件的组合如K4Y0(X除外)。 *M10:目标位元件起始地址(共十一个),可以是Y,M,S 工作过程如下图: 中文学的不好,不知再如何补充图上的说明,观者认真看图吧。 大致意思就是:当源元件组的某一个位的位元件闭合时,目标位元件组相应位的位元件也闭合,并且源位元件组的相应位断开,目标位元件组的位仍然保持吸合状态,直到源位元件组有另一个位元件吸合。 存储寄存器值的变化过程,您可以看下图: 您分析一下图中D10的值为什么是1026,提示:1026的十六

26、进制值是402。 当程序变为MOV K8 K4M0时,D10的值变为:1032(十六进制值是408) 数据排序指令SORT数据排序指令SORT编程格式 SORT D100 K5 K4 D200 n *D100:源寄存器起始地址,只能用寄存器D *K5:数据个数,只能是数值,范围:1-36 *K4:每个数据包含的项目数,只能是数值,范围:1-6 *D200:目标寄存器起始地址,办能用寄存器D n: 选择那个项目进行排序,只能是数值,范围:1-项目数 程序动作过程示例如下图 预先将想要排序的数据写入D100为始地址的m1*m2个寄存器里,本例为20个。 X10闭合后开始排序,将D100中的数据按照

27、排序指令的规定存以D200为起始地址的m1*m2个寄存器里,本例为20个. 上图中n=2时,是选中了身长项进行从小到大的排序。n=3时是选中了体重项进行从小到大的排序. 相关标志位M8029 排序结束后,M8029闭合,驱动X10断开,M8029自动断开。斜坡指令RAMP斜坡指令RAMP编程方式: RAMP D1 D2 D3 n D1,D2,D3只能是寄存器D n只能是数值,范围是1-32767 解释: 当RAMP被驱动时,D3的值经过n个程序扫描周期从D1的值变化到D2的值。D4记录扫描的次数。 注意:要把程序扫描周期固定,变化时间才是定数。固定程序扫描周期的方法是: 将想要的扫描时间(一定

28、要略大于实际扫描时间)写入D8039,并将M8039闭合.程序实际扫描时间编程软件在实时监控时都会有显示。 PLC运行时将K100写入D8039,并将M8039置位,程序扫描时间就是100毫秒。只是为了便于观察RAMP指令,所以将扫描时间设大一点。 如上图所示,当M0闭合时,D3的值由D1的值变化到D2的值。到达D2的值后,如果M0没有断开,D3与D4的值清零,重新开始。 如果在执行过程中M0断开,D4的值清零,D3的值保持断开前的数值,M0再次闭合,D3,D4重新开始。 *不要人为给D4赋值,因为D4只要到100,程序就算执行完一次。 相关标志位M8029: 将D4计数到100时(执行完毕一

29、次),M8029闭合。下一次开始时M8029自动断开。上图中M8029就是每10秒闭合一个扫描周期。 交替输出指令ALTALTP:脉冲执行型交替输出指令 ALT:连续执行型交替输出指令 LD X0 ALTP M0 M0可以是Y,M,S 动作过程如下图: 虽然ALT指令可实现用一个按钮达到启动,停止的作用,但是实际应用中不建议如此应用,易造成误操作。 特殊定时器STMR指令特殊定时器STMR指令只有16位连续执行型指令,其编程方式: STMR T0 K100 M0 *T0:只能用T,范围是T0-T199的100毫秒定时器 *K100:只能是数值,范围1-32767 *M0:可以是Y,M,S 其动

30、作原理图如下:示教定时器TTMR指令示教定时器TTMR指令只有16位连续执行型指令,其编程方式如下: TTMR:D100 n *D100:目标寄存器,只能是寄存器D,占用其后的一位寄存器,如本例占用D101 *n:倍率,只能是数值,范围:0-2。 解释: LD X0 TTMR D0 K2 由D1测定X0的闭合时间,并将此时间(以秒为单位)乘102存入D0.在XO闭合过程,D1的值随X0闭合的实际时间变化(单位100毫秒),D0的值随X0闭合的实际时间乘102变化(单位秒)。 看下图: M0闭合了13秒时,D0与D1的值如图中所示。D0=13秒*101,D1=T0的当前值(T0是100毫秒定时器

31、) M0闭合是先把D0清零的,M0断开时将D1清零。 因为D0的值是变化的,所以M10最好是在M0断开后再闭合,不然T10的延时时间是不定的。三菱PLC指令大全(FX系列)三菱FX系列PLC的基本顺控指令说明(一): 三菱FX系列PLC的基本顺控指令说明(二): 三菱FX系列PLC的基本顺控指令说明(三): 三菱FX系列PLC的基本顺控指令说明(四)定时器: 三菱FX系列PLC的基本顺控指令说明(四)计数器: 中断程序实例: 监视定时器WDT: 条件跳转CJ: 比较指令CMP与区域比较指令ZCP: 传送指令M0V: 成批传送BMOV: 反相转送CML: 多点传送指令FMOV: 交换指令XCH:

32、 绝对位置控制指令DRVA: 相对位置控制指令DRVI: 触点比较指令: 可变速脉冲输出指令PLSV: 原点回归指令ZRN: 位传送指令SMOV: BCD交换指令: BIN交换指令: 加(减)法运算指令ADD(SUB): 乘(除)法运算指令MUL(DIV): 增加指令INC与减少指令DEC: 逻辑与WAND,逻辑或WOR,逻辑异或WXOR指令: 求补指令NEG: 右回转ROR与左回转ROL指令: 位右移SFTR与位左移SFTL指令: 字右移WSFR与字左移WSFL指令: 移位写入SFWR与移位读出SFRD指令: 全部复位ZRST指令: 比较指令DECO: 编码指令ENCO: ON位数指令SUM: ON位数判断指令BON: 求平均值指令MEAN: BIN开方运算指令SQR: BIN整数到2进制浮点数转换指令FLT: 输入输出刷新指令REF: 输入滤波调整指令REFF: 矩阵输入指令MTR: 比较置位指令DHSCS和复位指令DHSCR(高速计数器用): 区间比较指令DHSZ(高速计数器用): 脉冲密度指令SPD: 脉冲输出指令PLSY: 脉宽调制指令PWM: 带加减速脉冲输出指令PLSR: 数据查找指令SER: 绝对方式凸轮控制指令ABSD: 增量方式凸轮控制指令INCD: 示教定时器TTMR指令: 特殊定时器STMR指令: 交替输出指令ALT: http:/

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 教育教学 > 成人教育


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号