您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 西门子PLC指令大小端模式--Profibus-DP通信指令的释疑
基于Profibus-DP总线的S7-300PLC与安川变频器的通信1.大端模式和小端模式(Endianness)首先得了解在计算机存储领域字节byte、字word在内存中存储方式,方便理解。什么是大端和小端?Big-Endian和Little-Endian的定义如下:1)Little-Endian就是低位字节排放在内存的低地址端,高位字节排放在内存的高地址端。2)Big-Endian就是高位字节排放在内存的低地址端,低位字节排放在内存的高地址端。下面是两个具体例子:16bit宽的数0x1234在Little-endian模式(以及Big-endian模式)CPU内存中的存放方式(假设从地址0x4000开始存放)为:32bit宽的数0x12345678在Little-endian模式以及Big-endian模式)CPU内存中的存放方式(假设从地址0x4000开始存放)为:图西门子指令大小端模式(653087638).pdfBasicconceptsonEndianness.pdfendianness05.pdf2.西门子的存储方式S7-300指令系统采用大端模式,而S7-200采用小端模式!在160T龙门式起重机PLC程序中,各个变频器DP站通过Profibus-DP总线与S7-300PLC通信(CPU314C-2DP),分别为5#、7#、9#及11#站。各个站点的输出启动地址(Output:PLCProfibus-DP主站变频器从站,MasterDeviceDrvie)分别为:Q50、Q60、Q70及Q80,长度3个字word;输入启动地址(Input:变频器从站PLCProfibus-DP主站;DriveMasterDevice)分别为:I50、I60、I70及I80,长度3个字word。(输入在本程序中未使用)起先,一直无法读懂程序中控制9#站变频器FC6功能块,因为输出只从Q71开始,不是从Q70开始。主站组态通信数据长度为BasicData,6个字节长,该地址映射见下表(BasicDataRegisterMapDetail):SI-P1卡具体的运行操作指令见下表(OperationCommand):既然9#站输出启动地址为Q70,通常,PLC程序中应该控制该变频器的正转、反转输出线圈应该为Q70.0、Q70.1,实际却为Q71.0、Q71.1。该如何理解呢其实是忽略了地址映射表中“高位字节/地位字节”的信息及不了解S7-300指令系统数据存储格式为大端模式。应该如下图理解这两张表按下表理解BitFBitEBitDBitCBitBBitABit9Bit8Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0Q70.7Q70.6Q70.5Q70.4Q70.3Q70.2Q70.1Q70.0Q71.7Q71.6Q71.5Q71.4Q71.3Q71.2Q71.1Q71.0Byte1Byte0Q71Q70
本文标题:西门子PLC指令大小端模式--Profibus-DP通信指令的释疑
链接地址:https://www.777doc.com/doc-2038365 .html