台达PLC常用编程指令表
1、程序控制流程
2、传送指令
3、四则逻辑运算
4、移位指令
5、数据处理
6、高速处理
7、便利指令
8、外部IO
9、串行IO
10、基本指令
11、通讯指令
12、浮点运算指令
13、附加指令
14、定位指令
15、实时时钟指令
16、矩阵指令
17、接点类型逻辑运算指令
18、接点类型比较指令
19、字符装置位指令
20、浮点比较指令
关于台达plc的modbus主站和从站如何编写程序
最近在工作中遇到了台达的plc,本来我只要读取它们的数据罢了,台达plc作为modbus从站。我作为modbus主站去读取modbus从站的数据,应该是一件很容易的事。但是,很不幸的是,设备厂家对通讯方面完全不了解。当我向他索要modbus地址和通讯参数的时候,他萌萌的告诉我他对这方面不是很清楚,当时我心里凉了半截,心里默默问候我们公司的售前人员。没办法了,工作还得继续下去(甲方爸爸催的紧啊),把他们的设备拆开看了下,得到一些信息:他们设备的控制器台达的plc,柜子外配了一个网口,这个网口是用plc的485端口转换的。
现在有几个问题:
1,我以前没接触过台达plc
2,也没接触过那个485转以太网的模块
怎么办呢,赶紧去了解一波呗。
台达plc肯定支持modbus通讯,毕竟搞西门子plc好多年,学一下怎么用modbus应该很快。
对485转以太网模块虽然不熟悉,但是以前用过232转以太网模块,想了下用法上应该差不多,了解一下应该也快。
根据485转以太网模块的品牌,自己找到了技术支持电话,在咨询之后要了他们的软件,功能果然和moxa的232转以太网功能一样,只是品牌不一样而已。心里也有底了。
然后花了一些时间了解台达的modbus编程,下面我就来说说关于台达plc的modbus编程的有关内容。
接触过plc的都知道,中国市场的plc分两派:欧美系和日系。他们两种编程的风格不太一样,在这里就不细说了。台达plc属于是仿日本三菱plc的,所以属于典型的日系plc。本人以前一直用的是西门子plc,西门子plc的modbus主站从站都需要调用西门子的库程序实现,所以以为台达plc也是需要这种类似操作,当知道现场设备的厂家根本没有考虑modbus从站的时候我的心拔凉拔凉的。但是,天无绝人之路,当我了解了一点台达plc后忽然发现,台达plc默认就支持modbus从站。
台达的plc的内部地址和modbus地址有一个对应关系,对应关系如下图
对应关系的全部内容,你们可以自己在台达plc的应用手册上查看。
现在对应关系是有了,那么modbus的通讯参数和站号地址在哪里设置呢?下面就来阐述,我们需要主站和从站分开阐述。
我们先说台达plc作为modbus从站,该如何设置。
台达plc不做任何设置,也是一个modbus从站,因为台达plc的通讯参数和站号地址是通过一些特定的寄存器地址设置的,而那些特殊的寄存器地址是有一个默认值的。
设置从站的通讯参数
以上就是modbus从站的参数和站号设置,前面也提到了这些可以不设置,那么就是默认值。我们来看看这些特殊寄存器代表的意义:
D1121:plc站号地址,默认值为1
D1120:com2(rs485通讯协议),默认值是H86,代表的意思是波特率9600,字长度7位,偶校验,1位停止位
M1220:com2通讯设定保持用,如果设定了D1120,m1120就置1使设置保持。
M1143:SLAVE 模式时,COM2(RS-485)之 ASCII/RTU
模式选择 (Off: ASCII模式 ,On: RTU 模式)
MASTER 模式时, COM2(RS-485) 之 ASCII/RTU
模式选择,配合 MODRD /MODWR/MODRW 指令使用(Off: ASCII 模式, On: RTU 模式)
默认值为0.
所以,默认的通讯参数是波特率9600,字长度7位,偶校验,1位停止位,ASCII模式,站号地址为1.
然后我们再讲一下,modbus主站该怎么编程。首先我们需要了解一下需要用到的指令。
modbus ASCII模式的例子
modbus rtu模式的例子
以上是台达plc的modbus读指令,modbus的写指令和读指令差不多,大同小异。
总结一下:台达plc和西门子的区别:西门子plc的modbus功能只需要调用系统的库程序,没有用到特殊寄存器,读取数据的存放位置直接指定普通寄存器即可,通讯参数也是直接把参数输入。而台达plc要实现modbus功能,需要用到系统指定的特殊寄存器,只要按照应用手册的例子编程就好了。
好了,今天就说到这里吧,欢迎大家一起交流。
相关问答
plc程序如何编译?
PLC程序的编译通常是通过PLC编程软件完成的。以下是一般的PLC程序编译步骤:1.打开PLC编程软件:根据PLC品牌和型号选择相应的编程工具,打开对应的编程软件。...
台达plc编程如何插入一列?
电脑上有个插入件insert,按下就可以了;然后直接输入要插入的;插入后再取消插入,按下insert;只要这行没有满;如果你行满了就要换行了。随着微处理器、计算...
怎样将多语言台达PLC编程软件设置为中文?
倒数第三个菜单-设置-里面有个语系设置-找到简体中文即可倒数第三个菜单-设置-里面有个语系设置-找到简体中文即可
关于台达PLC主控指令MC与主控复位指令怎么用?
MC是主控指令MCR主控指令结束,MC=1时:MC至MCR之间的程序工作,MC=0时,MC至MCR之间的程序不工作。台达PLC,是台达ProgrammableLogicControlle...
台达plc编程中校验码怎么算?
MODRDS1S2N指令S1即上面K1,变频器的地址S2即上面的H2101,读取数据的地址N即上面的K6,读取数据的长度,规定K1≤N≤K6,K6意思是连续读取H2101,H2102......
台达plc编程软件中的垂直线是怎么操作呢-ZOL问答
中关村在线vivoX90Pro+举报5人讨论4263次围观关注问题写回答讨论回答(5)qq1141727030按F9或ALT+F9有用(0)回复oRzz1如果你想并联上下...
怎么样把程序输入PLC中,我用的是台达PLC。-ZOL问答
怎么样把程序输入PLC中,我用的是台达PLC。共7条回答1万浏览必需通电。在WPL软件中编写完程序后编译(若程序本身有误,会有提示)点击通讯设置菜单,在此设置...
台达plc程序中怎么把十六进制数变成十进制数啊?
这个不管16进制还是十进制,对于PLC处理来说都是一样的你如果要显示出来,如在触摸屏上显示,只要编辑好你的数据显示器就行了这个不管16进制还是十进制,对于PL...
台达plc定时停机程序实例?
时间中断指针为I6XX;I7XX(XX为1-99,单位1ms);I8XX(单位0.1ms)PLC间隔设定时间跳转到指定中断子程序,间隔时间由指针中的XX设定,跳转到IXXX子程序。需配合EI...
台达PLC输入输出点扩展机怎么用,程序怎么写?
点位号从8n开始如主机是60点,I/O30/30扩展机点位号从40(8进制)开始点位号从8n开始如主机是60点,I/O30/30扩展机点位号从40(8进制)开始