台达PLC通讯协议 (2)_第1页
台达PLC通讯协议 (2)_第2页
台达PLC通讯协议 (2)_第3页
台达PLC通讯协议 (2)_第4页
台达PLC通讯协议 (2)_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.台达PLC通讯协议 V1.12 通讯接口RS-232C RS-4852. 通讯协议ASCII 模式, 9600(传输速率), 偶同位, 1 个起始位, 1 个停止位9600,7,e,13. 通讯资料格式STX 起始字符 :(3AH)ADR 1 通讯地址:ADR 0 8-bit 地址包含了2 个ASCII 码CMD 1 命令码:CMD 0 8-bit 命令包含了2 个ASCII 码DATA(0) 资料内容:DATA(1) n个8-bit 资料包含了2n 个ASCII 码. n =74 个ASCII 码DATA(n-1)LRC CHK 1 侦误值:LRC CHK 0 8-bit 侦误值包含了2

2、个ASCII 码END 1 结束字符:END 0 END 1 = CR(0DH),END 0 = LF(0AH) ADR(通讯地址)PLC 通讯地址出厂设定值为0x01,因此(ADR 1, ADR 0)=0,10=30H, 1 = 31H LRC CHK(侦误值)CMD(命令指令)及DATA(数据字符) LRC CHK(侦误值)侦错方式采用LRC(Longitudinal Redundancy Check)侦误值。LRC 侦误值乃是将ADR1 至最后一个资料内容加总,将该值取2 补码(2s Complement)得到之结果即为LRC 侦误值。附录-3例:STX :ADR 1 0ADR 0 1C

3、MD 1 0CMD 0 3起始资料地址0401资料数0001LRC CHK 1 FLRC CHK 0 6END 1 CREND 0 LF01H+03H+04H+01H+00+01H = 0AH0AH 的2 补码为 F6H注12 补码的求法:(1 补码再加1)0A(H) = 0000 1010(B)先取1 补码(将b0b7 反相)得1111 0101(B),再加1 为 1111 0110(B) = F6(H)即为0A(H)的2 补码。注2因此在收到一串完整的通讯命令,要检查这串通讯命令是否有误,只要将(ADR1,0)至(LRC1,0)加总等于0,则通讯无误,否则表示命令中资料有些是错误的。通讯异

4、常 PLC 的响应:附录-4PLC 收到完整的通讯命令时,会判断命令是否有效,造成无效的原因有:原因EXCEPTION CODELRC CHK ERROR 07DEIVCE ADDRESS INVALID 02要求的资料超过范围 03COMMAND CODE INVALID 01通讯命令格式INVALID 07例:使用命令码 01 读取X000X017 的状态Field Name Example (Hex)Heading 3ASlave Address 01Function 01Starting Address Hi 04Starting Address Lo 00Number of Poin

5、ts Hi 00Number of Points Lo 10Error Check ( LRC ) EA附录-5PLC 响应:Field Name Example (Hex)Heading 3ASlave Address 01Function 81Exception Code 02Error Check ( LRC ) 7C因为Address 0400 对Function 01 是不合法的,所以响应Exception code = 0x02,且Function 01被设为81(b7 被设为1),亦即由响应的Function code 的 MSB 被设为1 表示PLC 响应ERRORMESSAG

6、E,并且由Exception code 可得知是何种错误。可用之命令码叙述如下:(每个device 的address, 请参考最后一页)Code Name Description01 Read Coil Status S, Y, M, T, C02 Read Input Status S, X, Y, M,T, C03 Read Holding Registers T, C, D05 Force Single Coil S, Y, M, T, C06 Preset Single Register T, C, D15 Force Multiple Coils S, Y, M, T, C16 Pr

7、eset Multiple Register T, C, D17 Report Slave ID None附录-6资料字符之格式依命令码而定,依可用之命令码的资料内容分别叙述如下:Function Code:01, Read Coil StatusField Name Example (Hex)Heading 3ASlave Address 01Function 01Starting Address Hi 06Starting Address Lo 14Number of Points Hi 00Number of Points Lo 25Error Check ( LRC ) BFNumbe

8、r of Points(max) = 255 = 0x00FF例:由从动装置(slave device)01 读取线圈 T20T56PCPLC “:01 01 06 14 00 25 BF CR LF”PLCPC “:01 01 05 CD 6B B2 0E 1B D6 CR LF”Field Name ContentsSlave Address 01Function 01Bytes Count 05Data(Coils T27T20) CDData(Coils T35T38) 6BData(Coils T43T36) B2Data(Coils T51T44) 0EData(Coils T56

9、T52) 1BError Check(LRC) E6 Function Code:02, Read Input Status附录-7Field Name Example (Hex)Heading 3ASlave Address 01Function 02Starting Address Hi 05Starting Address Lo 14Number of Points Hi 00Number of Points Lo 25Error Check ( LRC ) BF例:由从动装置01 读取接点 Y024Y070PCPLC “:01 02 05 14 00 25 BF CR LF”PLCPC

10、 “:01 01 05 CD 6B B2 0E 1B E5 CR LF”Field Name ContentsSlave Address 01Function 02Bytes Count 05Data(Coils Y033Y024) CDData(Coils Y043Y034) 6BData(Coils Y053Y044) B2Data(Coils Y063Y054) 0EData(Coils Y070Y064) 1BError Check(LRC) E5附录-8 Function Code:03, Read Holding RegisterHolding Register:T, C, DFi

11、eld Name Example (Hex)Heading 3ASlave Address 01Function 03Starting Address Hi 06Starting Address Lo 14Number of Points Hi 00Number of Points Lo 08Error Check ( LRC ) DANumber of Points(max)= 18(for 16 bit register)= 9(for 32 bit register)例:由从动装置 01 读取线圈 T20T27PCPLC “:01 03 06 14 00 08 DA CR LF”PLCP

12、C “:01 03 10 00 01 00 02 00 03 00 04 00 05 00 06 00 07 00 08 B8 CR LF”3A 30 31 30 33 31 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 45 43 0D 0A3A 30 B1 30 33 B1 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30

13、30 30 30 30 30 C5 C3 8D 0A3A 8A 30 A6 83 30 82 30 82 30 82 30 82 30 82 30 82 30 82 30 82 30 82 30 82 30 2A C3 63 E1Field Name ContentsSlave Address 01Function 03Bytes Count 10Data Hi(T20) 00Data Lo(T20) 01Data Hi(T21) 00Data Lo(T21) 02Data Hi(T22) 00附录-9Data Lo(T22) 03Data Hi(T23) 00Data Lo(T23) 04D

14、ata Hi(T24) 00Data Lo(T24) 05Data Hi(T25) 00Data Lo(T25) 06Data Hi(T26) 00Data Lo(T26) 07Data Hi(T27) 00Data Lo(T27) 08Error Check(LRC) B8 Function Code:05, Force Single CoilField Name Example (Hex)Heading 3ASlave Address 01Function 05Coil Address Hi 05Coil Address Lo 00Force Data Hi FFForce Data Lo

15、 00Error Check ( LRC ) F6MMNN = 0xFF00.Coil ONMMNN = 0x0000.Coil OFF例:强制设定线圈 Y000 ONPCPLC “:01 05 05 00 FF 00 F6 CR LF”PLCPC “:01 05 05 00 FF 00 F6 CR LF”附录-10Field Name Example (Hex)Heading 3ASlave Address 01Function 05Coil Address Hi 05Coil Address Lo 00Force Data Hi FFForce Data Lo 00Error Check

16、( LRC ) F6 Function Code:06, Preset Single RegisterField Name Example (Hex)Heading 3ASlave Address 01Function 06Register Address Hi 06Register Address Lo 00Preset Data Hi 12Preset Data Lo 34Error Check ( LRC ) AD例:设定缓存器 T0 to 00 03PCPLC “:01 06 06 00 12 34 AD CR LF”PLCPC “:01 06 06 00 12 34 AD CR LF

17、”Field Name Example (Hex)Heading 3ASlave Address 01Function 06附录-11Register T0 Address Hi 06Register T0 Address Lo 00Preset Data Hi 12Preset Data Lo 34Error Check ( LRC ) ADSwitch ( c )Case 0:T0Q :01 06 06 00 12 34 AD CR LFCase 1:C0Q :01 06 0E 00 12 34 AF CR LFCase 2:C232Q :01 06 0E E8 12 34 56 78 E

18、F CR LFCase 3:D10Q :01 06 10 0A 12 34 99 CR LFCase 4:D1000Q :01 06 13 E8 12 34 BA CR LF附录-12 Function Code:15, Force Multiple CoilsField Name Example (Hex)Heading 3ASlave Address 01Function 0FCoil Address Hi 05Coil Address Lo 00Quantity of Coils Hi 00Quantity of Coils Lo 0AByte Count 02Force Data Hi

19、 CDForce Data Lo 01Error Check (LRC) 11Quantity of Coils (max) = 255例:设定线圈 Y007Y000 = 1100 1101, Y011Y010 = 01.PCPLC “:01 0F 05 00 00 0A 02 CD 01 11 CR LF”PLCPC “:01 0F 05 00 00 0A E1 CR LF”附录-13Field Name Example (Hex)Heading 3ASlave Address 01Function 0FRegister T0 Address Hi 05Register T0 Address

20、 Lo 00Preset Data Hi 00Preset Data Lo 0AError Check ( LRC ) E1 Function Code:16, Preset Multiple RegisterField Name Example (Hex)Heading 3ASlave Address 01Function 10Starting Address Hi 06Starting Address Lo 00Number of Register Hi 00Number of Register Lo 02Byte Count 04Data Hi 00Data Lo 0AData Hi 0

21、1Data Lo 02Error Check (LRC) C6附录-14Number of Register(max)= 16(for 16 bit register)= 8(for 8 bit register)例:设定缓存器 T0 为 00 0A, T1 为 01 02.PCPLC “:01 10 06 00 02 00 04 00 0A 01 02 D6 CR LF”PLCPC “:01 10 06 00 00 02 E7 CR LF”Field Name Example (Hex)Heading 3ASlave Address 01Function 10Starting Address

22、 Hi 06Starting Address Lo 00Number of Registers Hi 00Number of Registers Lo 02Error Check ( LRC ) E7 Function Code:17, Report Slave IDReturns a description of controller present at the slave address, the current status of the slave Runindicator, and other information specific to the slave device.Field Name E

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论