西门子PLC PROFIBUS网络数据传输接头 西门子PLC PROFIBUS网络数据传输接头
湖南洪武自动化设备有限公司是西门子一级代理商,是西门子自动化与驱动集团认证的西门子数控系统、伺服驱动的第三方合作伙伴。
公司代理全系列西门子数控系统,伺服驱动电机,变频器,直流调速装置,软启动器、触摸屏,可编程控制器等产品的销售,同时提供零部件维修、电柜设计、PLC编程调试及普通机床和加工中心的数控改造等服务。产品广泛适用于车、铣、磨、刨、钻等金属切削机床和各类机床设备及钢铁、重工、机械 造船、电子、电机、制药 纺织、印刷、轻工、包装、媒体等领域,同时配备完善的售xx服务及过程.为各行业用户提供 的 服务,为用户带更多效益是我们的目标
在使用PUT/GET编程的时候,我想每一个工程师都会读一读在线帮助或者程序手册,去了解这两个功能块如何编程,尤其故障代码的含义。而阅读手册的时候,我又顺便了解BSEND/BRECV,以及USEND/URECV,这时候我会纠结这些功能块到底有什么区别?
按照手册,BSEND/BRECV通信要建立连接,而USEND/URECV是*建立连接的,那么S7到底是什么妖魔鬼怪?一个协议可以随着心意变化,而不是固定的协议交换模式,这是个使我百思不得其解的地方。那么手册中所提到的S7协议,不是单一协议吧?也就是说BSEND/BRECV,USEND/URECV以及PUT/GET使用不同的S7协议,虽然它们都叫做S7协议。那么要如何测试呢?作为西门子的私有协议,如何找到呢?
S7的PUT/GET Server侧,是不需要编写任何功能块的,而 BSEND/BRECV,以及USEND/URECV双方都是编写功能块的,那么PUT/GET Server侧不编程就可以实现通信是如何做到的呢?又是谁帮助它实现了S7的数据交换呢?
因为300PLC手册中提到此通信发生在CCP,而此时400PLC作为客户端,编写的GET接收数据,是不是发生在时间片?因为手册中已经提到CPU循环周期的AP部分由若干时间片组成,而GET是编写在AP中的,那么400PLC中的GET的通信必然发生在时间片?可以肯定吗?
如果300PLC侧接收数据,那么400PLC侧需要使用PUT指令来发送数据,在Wireshark中所看见的就是400PLC侧发出的S7报文,由300PLC接收,在300PLC内部是何时接收的,在哪里接收到的呢?如何证明300PLC是在CCP接收数据呢?那又如何证明400PLC使用PUT指令进行的通信发生在时间片呢?
上述这些问题都是源于那个通信负荷默认20%的CPU属性这个参数,那么是针对所有该PLC的通信服务吗?根据手册,这个参数至少对于CCP产生的通信应该是无效的,尽管手册中的只言片语,通过上面的试验也可以确定CCP自成一体。那么除了AP,和CCP,CPU的整个循环周期时间就剩下PII和PIQ了。而PII和PIQ是在每一个循环周期开始刷新,用于IO数据刷新,保证数据一致性,那么20%只能作用AP吧?那它能影响哪些通信服务呢?西门子PLC推出了那么多的通信服务,例如TCP/IP,PROFINET IO等等受20%的参数控制吗?如果控制,那又如何作用呢?参数的大小调整会对通信服务产生什么样的影响呢?
西门子PLC PROFIBUS网络数据传输接头 西门子PLC PROFIBUS网络数据传输接头