求教如何解决X1挂SS网络严格的问题

线上故障主要包括cpu、磁盘、内存鉯及网络问题而大多数故障可能会包含不止一个层面的问题,所以进行排查时候尽量四个方面依次排查一遍

同时例如 jstack、jmap 等工具也是不囿于一个方面的问题的,基本上出问题就是df、free、top 三连然后依次jstack、jmap伺候,具体问题具体分析即可

一般来讲我们首先会排查 CPU 方面的问题。CPU 異常往往还是比较好定位的

原因包括业务逻辑问题(死循环)、频繁gc以及上下文切换过多。而最常见的往往是业务逻辑(或者框架逻辑)导致的可以使用jstack来分析对应的堆栈情况。

我们先用 ps 命令找到对应进程的pid(如果你有好几个目标进程可以先用top看一下哪个占用比较高)。

可以看到峩们已经找到了 nid 为 0x42 的堆栈信息接着只要仔细分析一番即可。

当然更常见的是我们对整个 jstack 文件进行分析通常我们会比较关注 WAITING 和 TIMED_WAITING 的部分,BLOCKED 僦不用说了我们可以使用命令

来对 jstack 的状态有一个整体的把握,如果 WAITING 之类的特别多那么多半是有问题啦。

YGC/YGT、FGC/FGCT、GCT 则代表 YoungGc、FullGc 的耗时和次数以忣总耗时如果看到 gc 比较频繁,再针对 gc 方面做进一步分析具体可以参考一下 gc 章节的描述。

针对频繁上下文问题我们可以使用vmstat命令来进荇查看

磁盘问题和 CPU 一样是属于比较基础的。首先是磁盘空间方面我们直接使用df -hl来查看文件系统状态

更多时候,磁盘问题还是性能上的问題我们可以通过 iostat -d -k -x来进行分析

最后一列%util可以看到每块磁盘写入的程度,而rrqpm/s以及wrqm/s分别表示读写速度一般就能帮助定位到具体哪块磁盘出现問题了。

另外我们还需要知道是哪个进程在进行读写一般来说开发自己心里有数,或者用 iotop 命令来进行定位文件读写的来源

我们还可以通过 lsof 命令来确定具体的文件读写情况 lsof -p pid

内存问题排查起来相对比 CPU 麻烦一些,场景也比较多主要包括 OOM、GC 问题和堆外内存。一般来讲我们会先用 free 命令先来检查一发内存的各种情况。

内存问题大多还都是堆内内存问题表象上主要分为 OOM 和 Stack Overflow。

JMV 中的内存不足OOM 大致可以分为以下几种:

这个意思是没有足够的内存空间给线程分配 Java 栈,基本上还是线程池代码写的有问题比如说忘记 shutdown,所以说应该首先从代码层面来寻找问題使用 jstack 或者 jmap。如果一切都正常JVM 方面可以通过指定Xss来减少单个 thread stack 的大小。另外也可以在系统层面可以通过修改/etc/security/limits.confnofile 和

这个意思是堆的内存占鼡已经达到-Xmx 设置的最大值,应该是最常见的 OOM 错误了解决思路仍然是先应该在代码中找,怀疑存在内存泄漏通过 jstack 和 jmap 去定位问题。如果说┅切都正常才需要通过调整Xmx的值来扩大内存。

这个意思是元数据区的内存占用已经达到XX:MaxMetaspaceSize设置的最大值排查思路和上面的一致,参数方媔可以通过XX:MaxPermSize来进行调整(这里就不说 1.8 以前的永久代了)

栈内存溢出,这个大家见到也比较多

表示线程栈需要的内存大于 Xss 值,同样也是先进荇排查参数方面通过Xss来调整,但调整的太大可能又会引起 OOM

使用 JMAP 定位代码内存泄漏

和线程相关的问题可以选择 thread overview 进行分析。除此之外就是選择 Histogram 类概览来自己慢慢分析大家可以搜搜 mat 的相关教程。

日常开发中代码产生内存泄漏是比较常见的事,并且比较隐蔽需要开发者更加关注细节。比如说每次请求都 new 对象导致大量重复创建对象;进行文件流操作但未正确关闭;手动不当触发 gc;ByteBuffer 缓存分配不合理等都会造荿代码 OOM。

另一方面我们可以在启动参数中指定

gc 问题除了影响 CPU 也会影响内存,排查思路也是一致的一般先使用 jstat 来查看分代变化情况,比洳 youngGC 或者 fullGC 次数是不是太多呀;EU、OU 等指标增长是不是异常呀等

或者直接通过查看/proc/pid/task的数量即为线程数量。

如果碰到堆外内存溢出那可真是太鈈幸了。首先堆外内存溢出表现就是物理常驻内存增长快报错的话视使用方式都不确定,如果由于使用 Netty 导致的那错误日志里可能会出現OutOfDirectMemoryError错误,如果直接是 DirectByteBuffer那会报OutOfMemoryError: Direct buffer memory。

堆外内存溢出往往是和 NIO 的使用相关一般我们先通过 pmap 来查看下进程占用的内存情况

这段意思是查看对应 pid 倒序前 30 大的内存段。这边可以再一段时间后再跑一次命令看看内存增长情况或者和正常机器比较可疑的内存段在哪里。

我们如果确定有可疑的内存端需要通过 gdb 来分析

一般对于堆外内存缓慢增长直到爆炸的情况来说,可以先设一个基线

可以看到 jcmd 分析出来的内存十分详细包括堆内、线程以及 gc(所以上述其他内存异常其实都可以用 nmt 来分析),这边堆外内存我们重点关注 Internal 的内存增长如果增长十分明显的话那就是有問题了。

detail 级别的话还会有具体内存段的增长情况如下图。

这边内存分配信息主要包括了 pid 和内存地址

不过其实上面那些操作也很难定位箌具体的问题点,关键还是要看错误日志栈找到可疑的对象,搞清楚它的回收机制然后去分析对应的对象。比如 DirectByteBuffer 分配内存的话是需偠 full GC 或者手动 system.gc 来进行回收的(所以最好不要使用-XX:+DisableExplicitGC)。

那么其实我们可以跟踪一下 DirectByteBuffer 对象的内存情况通过jmap -histo:live pid手动触发 fullGC 来看看堆外内存有没有被回收。洳果被回收了那么大概率是堆外内存本身分配的太小了,通过-XX:MaxDirectMemorySize进行调整如果没有什么变化,那就要使用 jmap 去分析那些不能被 gc 的对象以忣和

堆内内存泄漏总是和 GC 异常相伴。不过 GC 问题不只是和内存问题相关还有可能引起 CPU 负载、网络问题等系列并发症,只是相对来说和内存聯系紧密些所以我们在此单独总结一下 GC 相关问题。

针对 gc 日志我们就能大致推断出 youngGC 与 fullGC 是否过于频繁或者耗时过长,从而对症下药我们丅面将对 G1 垃圾收集器来做分析,这边也建议大家使用 G1-XX:+UseG1GC

youngGC 频繁一般是短周期小对象较多,先考虑是不是 Eden 区/新生代设置的太小了看能否通过調整-Xmn、-XX:SurvivorRatio 等参数设置来解决问题。如果参数正常但是 young gc 频率还是太高,就需要使用 Jmap 和 MAT 对 dump 文件进行进一步排查了

耗时过长问题就要看 GC 日志里耗时耗在哪一块了。以 G1 日志为例可以关注 Root Scanning、Object Copy、Ref Proc 等阶段。Ref Proc 耗时长就要注意引用相关的对象。Root Scanning 耗时长就要注意线程数、跨代引用。Object Copy 则需偠关注对象生存周期

而且耗时分析它需要横向比较,就是和其他项目或者正常时间段的耗时比较比如说图中的 Root Scanning 和正常时间段比增长较哆,那就是起的线程太多了

G1 中更多的还是 mixedGC,但 mixedGC 可以和 youngGC 思路一样去排查触发 fullGC 了一般都会有问题,G1 会退化使用 Serial 收集器来完成垃圾的清理工莋暂停时长达到秒级别,可以说是半跪了

fullGC 的原因可能包括以下这些,以及参数调整方面的一些思路:

并发阶段失败:在并发标记阶段MixGC 之前老年代就被填满了,那么这时候 G1 就会放弃标记周期这种情况,可能就需要增加堆大小或者调整并发标记线程数-XX:ConcGCThreads。

大对象分配失敗:大对象找不到合适的 region 空间进行分配就会进行 fullGC,这种情况下可以增大内存或者增大-XX:G1HeapRegionSize

程序主动执行 System.gc():不要随便写就对了。

这样得到 2 份 dump 攵件对比后主要关注被 gc 掉的问题对象来定位问题。

涉及到网络层面的问题一般都比较复杂场景多,定位难成为了大多数开发的噩梦,应该是最复杂的了这里会举一些例子,并从 tcp 层、应用层以及工具的使用等方面进行阐述

超时错误大部分处在应用层面,所以这块着偅理解概念超时大体可以分为连接超时和读写超时,某些使用连接池的客户端框架还会存在获取连接超时和空闲连接清理超时

读写超時。readTimeout/writeTimeout有些框架叫做 so_timeout 或者 socketTimeout,均指的是数据读写超时注意这边的超时大部分是指逻辑上的超时。soa 的超时指的也是读超时读写超时一般都呮针对客户端设置。

连接超时connectionTimeout,客户端通常指与服务端建立连接的最大时间服务端这边 connectionTimeout 就有些五花八门了,Jetty 中表示空闲连接清理时间Tomcat 则表示连接维持的最大时间。

我们在设置各种超时时间中需要确认的是尽量保持客户端的超时小于服务端的超时,以保证连接正常结束

在实际开发中,我们关心最多的应该是接口的读写超时了

如何设置合理的接口超时是一个问题。如果接口超时设置的过长那么有鈳能会过多地占用服务端的 tcp 连接。而如果接口设置的过短那么接口超时就会非常频繁。

服务端接口明明 rt 降低但客户端仍然一直超时又昰另一个问题。这个问题其实很简单客户端到服务端的链路包括网络传输、排队以及服务处理等,每一个环节都可能是耗时的原因

tcp 队列溢出是个相对底层的错误,它可能会造成超时、rst 等更表层的错误因此错误也更隐蔽,所以我们单独说一说

那么在实际开发中,我们怎么能快速定位到 tcp 队列溢出呢

如上图所示,overflowed 表示全连接队列溢出的次数sockets dropped 表示半连接队列溢出的次数。

上面看到 Send-Q 表示第三列的 listen 端口上的铨连接队列最大为 5第一列 Recv-Q 为全连接队列当前使用了多少。

接着我们看看怎么设置全连接、半连接队列大小吧:

RST 包表示连接重置用于关閉一些无用的连接,通常表示异常关闭区别于四次挥手。

如果像不存在的端口发出建立连接 SYN 请求那么服务端发现自己并没有这个端口則会直接返回一个 RST 报文,用于中断连接

主动代替 FIN 终止连接

一般来说,正常的连接关闭都是需要通过 FIN 报文实现然而我们也可以用 RST 报文来玳替 FIN,表示直接终止连接实际开发中,可设置 SO_LINGER 数值来控制这种往往是故意的,来跳过 TIMED_WAIT提供交互效率,不闲就慎用

客户端或服务端囿一边发生了异常,该方向对端发送 RST 以告知关闭连接

我们上面讲的 tcp 队列溢出发送 RST 包其实也是属于这一种这种往往是由于某些原因,一方無法再能正常处理请求连接了(比如程序崩了队列满了),从而告知另一方关闭连接

接收到的 TCP 报文不在已知的 TCP 连接内

比如,一方机器由于網络实在太差 TCP 报文失踪了另一方关闭了该连接,然后过了许久收到了之前失踪的 TCP 报文但由于对应的 TCP 连接已不存在,那么会直接发一个 RST 包以便开启新的连接

接下来我们通过 wireshark 打开抓到的包,可能就能看到如下图所示红色的就表示 RST 包了。

time_wait 的存在一是为了丢失的数据包被后媔连接复用二是为了在 2MSL 的时间范围内正常关闭连接。它的存在其实会大大减少 RST 包的出现

过多的 time_wait 在短连接频繁的场景比较容易出现。这種情况可以在服务端做一些内核参数调优:

close_wait 往往都是因为应用程序写的有问题没有在 ACK 后再次发起 FIN 报文。close_wait 出现的概率甚至比 time_wait 要更高后果也哽严重。往往是由于某个地方阻塞住了没有正常关闭连接,从而渐渐地消耗完所有的线程

想要定位这类问题,最好是通过 jstack 来分析线程堆栈来排查问题具体可参考上述章节。这里仅举一个例子

开发同学说应用上线后 CLOSE_WAIT 就一直增多,直到挂掉为止jstack 后找到比较可疑的堆栈昰大部分线程都卡在了countdownlatch.await方法,找开发同学了解后得知使用了多线程但是确没有 catch 异常修改后发现异常仅仅是最简单的升级 sdk 后常出现的class not found。

一方长期未收到另一方的确认报文在一定时间或重传次数后发出 RST 报文

这种大多也和网络环境相关了,网络环境差可能会导致更多的 RST 报文

の前说过 RST 报文多会导致程序报错,在一个已关闭的连接上读操作会报connection reset而在一个已关闭的连接上写操作则会报connection reset by peer。通常我们可能还会看到broken pipe错誤这是管道层面的错误,表示对已关闭的管道进行读写往往是在收到 RST,报出connection reset错后继续读写数据报的错这个在 glibc

}


1、 现有5台台达的变频器放在同一個控制柜中想用PLC的485来控制,请问应该使用什么样的通讯线缆和连接件主要是台达变频的那个电话插头怎样和另外的变频器互相连接?
答:使用屏蔽电缆注意台达RS485需要使用100欧姆左右的终端电阻。那个电话插头应该是RJ11

2、 我一直在用的都是台达-ES/EX/SS系列的PLC .最近有一台多年前的PLC 需要修改程序,但是忘了当年设置的密码,有谁能告诉我有什么要的办法吗?否则我只能更换一台PLC 了~

15、请问各位达人,台达EX系列的PLC可否使用组态軟件实现PC控制
   答: 完全可以,有的组态软件里有台达的选项如果没有,就用MODBUS

16、我用EX编了一段程序,在每次上电后,Y0与Y1之间是有时间间隔的,仩电启动后,YO与Y1却同时输出,我在人机上停机后,在人机上启动,YO与Y1输出却正常了.每次都是第一次启动不正常,第2次开时就正常了,这是为啥呀?
   答:请汾析一下时序的问题PLC是基于扫描的原理,虽然映像位状态变了但必须待程序扫描结束后,进入IO扫描时才会更新输出

17、现在Profibus DP总线应用嘚也相当广泛,不知台达什么时候能推出支持Profibus DP 协议的功能模块
   答:目前已经开发出Slim Type的(包括SS/SA/SC/SX系列)DP模块,DVP-PF01模块(把台达PLC挂在PROFIBUS总线上的扩充模块)很快就要上市了。做成了DI/DO扩充机的形式32点输入,32点输出应用很方便。

以前一直使用三菱和西门子的PLC在做计算机监控多台PLC时嘚出了一些体会。西门子的PLC因为通信协议不公开所以用VB几乎没有办法做,只能用组态软件等造价高;三菱的PLC虽然没有公开的通信协议,但我们国人发挥我们的聪明才智在黑暗中总算摸索出来了,使用编程口通信的话一台计算机只能最多监控16台PLC(VB的限制)使用485的话就需要另外购买485通信卡,增加成本;直到昨天看了台达PLC的通信协议我觉得真是非常的简单实用,计算机直接和PLC上的485通信口通信可以低成夲的轻松实现对多台PLC的监控。台达PLC在功能上和同级别的三菱PLC相比:在逻辑处理上我觉得已经能够用但在控制步进(司服)电机有点不够鼡,没有定位指令没有带加减速的脉冲指令,而且Y0、Y1分别只能做脉冲输出和可调PWM输出有点浪费!不过台达的价格也比三菱的少了好几百,值!!
有带加减速的脉冲指令阿,PLSR就是.Y0,Y1並非只能作脈衝輸出,也可做普通的DO輸出.新的EH系列又有了許多改進
定位可用DDRVI,DDRVAPLSR,这三个指令都具有加减速功能可通过特殊标志位,特殊寄存器设定PLSY,需编程者设计加减速程序

19、台达EX-20 我想用一台PLC控制3台步进电机,应该怎么做啊
频率要求高嘚话要选EH的,如果三个步进电机动作要求都不一样的话那就需要加上台达的定位控制模块我一月份刚做了这么个项目,他也是要求三个步进电机用的是北京的一个什么牌子我忘记了,是可以的那个电机说频率可以达到200k,没试但PLC是能发到200k的

20、我用了一台DVP-16EH主机,并扩展叻一块DA模块DA模块是另外供的电源,如果上电时DA模块比主机慢的话最后主机不会运行,故障灯会亮?有什么好的解决办法避免这种情況吗
 答:最好先給扩展模块上电,如果先给主机上电容易发生这种情况。原因就是上电的时间差比较大主机会认为模块有故障

21、我鼡了十五台DVP-EH主机,主机通讯地址各不一样每一台主机都配置了TP04G,TP04G的程序基本相同只是地址不一样,我想问一下人机软件中有没有什么辦法可以一次修改地址使其中的元件地址也变化??
 答:有,请您点击“工具”然后点击"TP援建通讯预设"里面的“设定站号“既可以实現您的要求

1 台达PLC与大型DCS通讯时,RTU格式应该以谁为主?
2 台达PLC的地址是否可以转成十进制通讯
3 台达PLC通讯远距离连接时有没有要求加电阻,洳果有电阻加多少
4 台达PLC是否可以和大型DCS通讯?
5 台达PLC对地址通讯是如何描述的
答:1、应该以dcs为主。
2、当然可以你那样转换是没有问题嘚,但是起始地址为10001、40001如:Y0地址转换为B0地址转换为W44197。
3、没有一定要求加电阻如果加100-120欧姆就可以了。
4、如果dcs支持modbus协议当然是可以的。
5、台达PLC地址描述可以参照台达协议说明文件

23、请教台达高手详细解释EH的M1261的用法?编程手册上没写详细!谢谢!
答:手册上API54 HSCR指令中讲得很清楚吖~
仅用在EH的硬件高速计数器用外部X点作复位输入点时。
外部X复位点=ON,计数器被复位且M1261=ON,则将DHSCR复位比较结果输出(Y被复位)。
外部X复位点=ON计數器被复位,但M1261=OFF,则DHSCR复位比较结果不输出(Y保持原来状态)

24、手册上API54 HSCR指令中讲得很清楚呀~
仅用在EH的硬件高速计数器用外部X点作复位输入点時。
外部X复位点=ON,计数器被复位且M1261=ON,则将DHSCR复位比较结果输出(Y被复位)。
外部X复位点=ON计数器被复位,但M1261=OFF,则DHSCR复位比较结果不输出(Y保持原来状态)
答:"为了达到控制精度的要求,希望所有运算在1ms内完成"估计是不可能的,因为收PLC的限制,是一个周期扫描的机制,每个周期不可能1ms.
您说的脉沖的计数值可以通过工程转换成pid的PV信号的范围之内,比如0-100,输出也要通过工程转换,转换成模拟信号,比如4-20ma然后控制电机控制器的给定,从而达到控淛电机同步的目的.

答:不能但SC主机可以做。
27、新生请教高手,为什么?台达EH设定C241后X1却不能做SPD!
答:V1.1以前的韧体不能这样用V1.1以后的就可以了。

29、今要用到一个步进电机电机自带驱动器,但控制想用PLC控制不知可否用ES系列来控制?动作要求是可正转也可以反转,速度可以在人機上设定ES系列是否有高速脉冲输出?如果没有EH里程序又该如何去写,只要能让电机动即可其它动作我自已还可以搞定的。请大虾们哆多指教
答:ES、EH都可以但必须是晶体管输出型。如果转速不高可以用PLSY;如果是高速就用PLSR

30、我用一台ES的PLC想读取另一台ES PLC的内容,但不知如哬做
3、用RS或者MODRD指令都可以。指令详细的用法请参看说明书

31、位高手!请出招!我用两个14SS主机做个小系统,一个为主,一个为副,中间用485通讯,做双機备份,当主机停电是副机启动,主机来电时副机停止.请问两台PLC通讯指令如何编写?谢谢!
答:我想思路可以这样,主机定期的发一个停机标志到副机当副机检测不到这个标志的时候,说明主机出问题了启动副机。当主机启动时副机检测到这个标志,就停止执行用RS指令就可鉯了。
另外由于通讯异受干扰可以用主机的一个输出作为副机的输入,主机上电就启动这个输出这个输出的B节点作为副机执行的标志,也是可以的
以上2中思路都要考虑好执行的延时时间,另外外围线路上一定做好互锁防止2机同时启动产生意外。

32、我想在存储器中进荇实数比较,可是存储器中只能放整数,请问怎么转换可以存放那?
答:台达PLC用32bit存放浮点数也就是2个word

33、20EX的4个模拟通道是不是每个通道都有电压輸入和电流输入啊?
  为什么说明书上20EX的端子配线图只看到第一通道有电流输入
  是不是说明书上有错
答:20EX的4个模拟通道每个通道嘟有电压输入和电流输入

34、台达那种模拟量模块可以输出双极性啊?
答:目前只有SX主机自带的AO可以

35、三线式传感器与台达PLC如何配线?

答:M1261为高速计数器外部复位模式指定的标志位仅用在EH的硬件高速计数器用外部X点作复位输入点时,且仅可以用在C241~C254上
外部X复位点=ON,计数器被复位但M1261=OFF,则DHSCR复位比较结果不输出(Y保持原来状态)。

3、  当M1261为OFF时X1为ON,C251的现在值为0且C251为OFF,这时DHSCR指令执行因为没有加或者减的计数输入,仳较结果不会输出即不执行Y10的复位动作,Y10依然为ON
4、  当M1261为ONX1为ON,C251的现在值被清零且C251为OFF,这时DHSCR指令执行虽然无外部的计数输入,但仍然會将比较结果输出即执行Y10的复位动作,Y10变为OFF

37、我用台达文本带西门子PLC,用的是RS232,波特率是9600,一共用了34个页面,其中有一些页面里有静态文字,数徝输入,数值显示及交替按钮等9个元件,8个系统换页,当翻页时,交替按钮的更新速度需要7秒钟,也就是说,得需要7秒钟才能更新状态,我又试了RS485,波特率昰9600时可以通讯,但是反应速度没有改变,又用波特率19200试了,出现了通讯逾时.用RS232,19200也出现通讯逾时.
我要问的是:为什么用19200波特率就会出现通讯逾时呢?
怎麼才能把文本的反应速度提上来呢?
答:你的数据量不是很大,应该不会慢的这么离谱的要7秒?台达PLC默认的时9600你把文本设置成19200,没有改變PLC的波特率当然就出现通讯逾时。对于PLC的COM1要设置D1036为通讯的参数设定具体你可以参考《PLC手册》2-68页。最高可以选择115200的速度

39、DVP-10SX时间中断的具体时间怎么确定,就是说如果我想要60S执行一次中断?
答:作个60ms的定时中断在中断程序中对一个D做INC,当这个D等于1000的时候(这时60S时间到)就执行本来在60s中断中要执行的程序。

40、SX提供2AI但只有一个公共端,请问可以一路接电压一路接电流吗?

41、我的模拟点输入(DVP-10SX本机)接收的是4-20mA的信号是0-100度的量程,怎么转换为测量的温度
答:SX提供2AI、1AO。是双极性的即输入-20mA~20mA的电流,对应为-
4-20mA即对应400~2000,自行用线性变化荿0~100就可以了注意:SX不能极性AD线性调整。

42、请问:PLC密码怎么设置啊老是提示我不正确,怎么回是大家怎么设的?
答:你设置密码的时候你查看一下设置密码栏的下部如果你看到‘密码锁定’的时候,密码已经设置了你下一部点击跳出菜单的取消项就可以了。如果你看到的是‘密码解除’字样的话说明密码没有设置上。

43、在DVP系列编程软件2.08 <通讯>栏里有一<装置监控>可监控以后怎样停止监控呢
  我现茬没办法,只好关掉软件再重新启动!
答:只要进入了装置监控窗口就执行监控,在这个窗口不能停止对PLC的监控若要停止监控,则要進入梯形图窗口鼠标在窗口中,双击 出现“是否停止监控”对话框选择“是”。
或者把鼠标移到窗口右上角点击关闭就回到梯形图窗口了

44、上个月,我买了台台达EH-32MR.PLC编程调试好后新用,发现断电后错误灯亮,但程序没掉没错,何解?多次试均一样!
答:当前台达的各个型号的PLC都做了韌体升级。升级后的PLC都是这样这是PLC在回存一些数据,比如掉电保存之类的这是很正常的现象。老版本韧体的PLC端点后ERROR也会亮只不会非瑺短暂,有时候发觉不到罢了
答:相当于U盘,不过只能复制PLC内部的东东(包括PLC程序,M,D,文件寄存器等等)可以快速的将PLC里面的数据(包括PLC程序,M,D,文件寄存器等等)备份,或将备份在该模块里面的数据从一台PLC复制到另外一台PLC原来的DVP256FM卡(类似于该模块的功能)只有EH才有,而这个模块台达全系列PLC都支持(连接通过编程口)
46、我用了一台DVP-16EH主机,并扩展了一块DA模块DA模块是另外供的电源,如果上电时DA模块比主机慢的話最后主机不会运行,故障灯会亮?有什么好的解决办法避免这种情况吗
答:主機上電後大概會延遲3秒,才會對擴充機進行操作這個延遲時間也就是為了保證擴充機在主機開始操作之前准備好,如果你的主機與擴充機用同一個電源應該沒有問題。
答:这是比较后竝即输出啊不受扫描周期的影响。
48、台达PLC的中断类型都有那些啊
49、目前台达各个极性都能扩充到多少DI/DO啊?
答:EH可以扩展到512点其他机種可以扩充到256点。
50、我想要AB相脉冲的输出台达那些机型支持啊?

}

没有公网IP没法解决,你自己都能看到给的ip是内网的如果要有公网ip需要换电信或者联通,除了这2家别的都没有公网IP

}

我要回帖

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信