¡¡¡¡ModbusRTUºÍmodbustcpÐÒéµÄ±¾ÖÊÊÇModbusÐÒ飬ͨ¹ýModbus¼Ä´æÆ÷µØÖ·½»»»Êý¾Ý;È»¶ø£¬Ê¹ÓõÄÓ²¼þ½Ó¿ÚÊÇ·ÖÆçµÄ¡£ModbusRTUÒ»°ã²ÉÈ¡´®Ðж˿ÚRS232C»òRS485/422£¬¶ømodbustcpÒ»°ã²ÉÈ¡ÒÔÌ«Íø¶Ë¿Ú¡£
¡¡¡¡ModbusÔÊÐí¶à¸ö(´óÔ¼240¸ö)É豸Á¬½ÓÔÚͬһ¸öÍøÂçÉϽøÐÐͨÐÅ£¬¾Ù¸öÀý×Ó£¬Ò»¸öÓɲâÁ¿Î¶ȺÍʪ¶ÈµÄ×°Ö㬲¢ÇÒ½«½á¹û·¢Ë͸ø¼ÆËã»ú¡£ÔÚÊý¾Ý²É¼¯Óë¼àÊÓ¿ØÖÆϵͳ(SCADA)ÖУ¬Modbusͨ³£ÓÃÀ´Á¬½Ó¼à¿Ø¼ÆËã»úºÍÔ¶³ÌÖն˿ØÖÆϵͳ(RTU)¡£
¡¡¡¡À©Õ¹×ÊÁÏ£º
¡¡¡¡¶ÔÓÚͨ¹ýTCP/IP(ÀýÈçÒÔÌ«Íø)µÄÁ¬½Ó£¬´æÔÚ¶à¸öModbus/TCP±äÖÖ£¬ÕâÖÖ·½Ê½²»ÐèҪУÑéºÍ¼ÆËã¡£
¡¡¡¡¶ÔÓÚËùÓеÄÕâÈýÖÖͨÐÅÐÒéÔÚÊý¾ÝÄ£Ðͺ͹¦Äܵ÷ÓÃÉ϶¼ÊÇÏàͬµÄ£¬Ö»Óзâ×°·½Ê½ÊDz»Í¬µÄ¡£
¡¡¡¡TCPΪÁ˱£Ö¤±¨ÎÄ´«ÊäµÄ¿É¿¿£¬¾Í¸øÿ¸ö°üÒ»¸öÐòºÅ£¬Í¬Ê±ÐòºÅÒ²±£Ö¤ÁË´«Ë͵½½ÓÊÕ¶ËʵÌåµÄ°üµÄ°´Ðò½ÓÊÕ¡£È»ºó½ÓÊÕ¶ËʵÌå¶ÔÒѳɹ¦ÊÕµ½µÄ×Ö½Ú·¢»ØÒ»¸öÏàÓ¦µÄÈ·ÈÏ(ACK);Èç¹û·¢ËͶËʵÌåÔÚºÏÀíµÄÍù·µÊ±ÑÓ(RTT)ÄÚδÊÕµ½È·ÈÏ£¬ÄÇô¶ÔÓ¦µÄÊý¾Ý(¼ÙÉ趪ʧÁË)½«»á±»ÖØ´«¡£
¡¡¡¡
¡¡¡¡modbusÐÒéÓëtcpÐÒéÓÐʲô¹Øϵ?
¡¡¡¡ModbusrtuºÍModbustcpÁ½¸öÐÒéµÄ±¾Öʶ¼ÊÇMODBUSÐÒ飬¶¼ÊÇ¿¿MODBUS¼Ä´æÆ÷µØÖ·À´½»»»Êý¾Ý;µ«ËùÓõÄÓ²¼þ½Ó¿Ú²»Ò»Ñù£¬ModbusRTUÒ»°ã²ÉÓô®¿ÚRS232C»òRS485/422£¬¶øModbusTCPÒ»°ã²ÉÓÃÒÔÌ«Íø¿Ú¡£
¡¡¡¡ModbusÔÊÐí¶à¸ö(´óÔ¼240¸ö)É豸Á¬½ÓÔÚͬһ¸öÍøÂçÉϽøÐÐͨÐÅ£¬¾Ù¸öÀý×Ó£¬Ò»¸öÓɲâÁ¿Î¶ȺÍʪ¶ÈµÄ×°Ö㬲¢ÇÒ½«½á¹û·¢Ë͸ø¼ÆËã»ú¡£ÔÚÊý¾Ý²É¼¯Óë¼àÊÓ¿ØÖÆϵͳ(SCADA)ÖУ¬Modbusͨ³£ÓÃÀ´Á¬½Ó¼à¿Ø¼ÆËã»úºÍÔ¶³ÌÖն˿ØÖÆϵͳ(RTU)¡£
¡¡¡¡À©Õ¹×ÊÁÏ£º
¡¡¡¡¶ÔÓÚͨ¹ýTCP/IP(ÀýÈçÒÔÌ«Íø)µÄÁ¬½Ó£¬´æÔÚ¶à¸öModbus/TCP±äÖÖ£¬ÕâÖÖ·½Ê½²»ÐèҪУÑéºÍ¼ÆËã¡£
¡¡¡¡¶ÔÓÚËùÓеÄÕâÈýÖÖͨÐÅÐÒéÔÚÊý¾ÝÄ£Ðͺ͹¦Äܵ÷ÓÃÉ϶¼ÊÇÏàͬµÄ£¬Ö»Óзâ×°·½Ê½ÊDz»Í¬µÄ¡£
¡¡¡¡TCPΪÁ˱£Ö¤±¨ÎÄ´«ÊäµÄ¿É¿¿£¬¾Í¸øÿ¸ö°üÒ»¸öÐòºÅ£¬Í¬Ê±ÐòºÅÒ²±£Ö¤ÁË´«Ë͵½½ÓÊÕ¶ËʵÌåµÄ°üµÄ°´Ðò½ÓÊÕ¡£È»ºó½ÓÊÕ¶ËʵÌå¶ÔÒѳɹ¦ÊÕµ½µÄ×Ö½Ú·¢»ØÒ»¸öÏàÓ¦µÄÈ·ÈÏ(ACK);Èç¹û·¢ËͶËʵÌåÔÚºÏÀíµÄÍù·µÊ±ÑÓ(RTT)ÄÚδÊÕµ½È·ÈÏ£¬ÄÇô¶ÔÓ¦µÄÊý¾Ý(¼ÙÉ趪ʧÁË)½«»á±»ÖØ´«¡£
¡¡¡¡
¡¡¡¡MODBUSÐÒéÓÐÄļ¸ÖÖ
¡¡¡¡ModbusÐÒéÄ¿Ç°´æÔÚÓÃÓÚ´®¿Ú¡¢ÒÔÌ«ÍøÒÔ¼°ÆäËûÖ§³Ö»¥ÁªÍøÐÒéµÄÍøÂçµÄ°æ±¾¡£
¡¡¡¡1¡¢¶ÔÓÚ´®ÐÐÁ¬½Ó£¬´æÔÚÁ½¸ö±äÖÖ£¬ËüÃÇÔÚÊýÖµÊý¾Ý±íʾ²»Í¬ºÍÐÒéϸ½ÚÉÏÂÔÓв»Í¬¡£Modbus RTUÊÇÒ»ÖÖ½ô´ÕµÄ£¬²ÉÓöþ½øÖƱíʾÊý¾ÝµÄ·½Ê½£¬Modbus ASCIIÊÇÒ»ÖÖÈËÀà¿É¶ÁµÄ£¬Èß³¤µÄ±íʾ·½Ê½¡£ÕâÁ½¸ö±äÖÖ¶¼Ê¹Óô®ÐÐͨÐÅ(serial communication)·½Ê½¡£
¡¡¡¡RTU¸ñʽºóÐøµÄÃüÁî/Êý¾Ý´øÓÐÑ»·ÈßÓàУÑéµÄУÑéºÍ£¬¶øASCII¸ñʽ²ÉÓÃ×ÝÏòÈßÓàУÑéµÄУÑéºÍ¡£±»ÅäÖÃΪRTU±äÖֵĽڵ㲻»áºÍÉèÖÃΪASCII±äÖֵĽڵãͨÐÅ£¬·´Ö®ÒàÈ»¡£
¡¡¡¡2¡¢¶ÔÓÚͨ¹ýTCP/IP(ÀýÈçÒÔÌ«Íø)µÄÁ¬½Ó£¬´æÔÚ¶à¸öModbus/TCP±äÖÖ£¬ÕâÖÖ·½Ê½²»ÐèҪУÑéºÍ¼ÆËã¡£
¡¡¡¡3¡¢ModbusÓÐÒ»¸öÀ©Õ¹°æ±¾Modbus Plus(Modbus+»òÕßMB+)£¬²»¹ý´ËÐÒéÊÇModiconרÓеģ¬ºÍModbus²»Í¬¡£ËüÐèÒªÒ»¸öרÃŵÄд¦ÀíÆ÷À´´¦ÀíÀàËÆHDLCµÄ¸ßËÙÁîÅÆÐýת¡£
¡¡¡¡ËüʹÓÃ1Mbit/sµÄË«½ÊÏߣ¬²¢ÇÒÿ¸ö½Úµã¶¼ÓÐת»»¸ôÀë×°Öã¬ÊÇÒ»ÖÖ²ÉÓÃת»»/±ßÔµ´¥·¢¶ø²»Êǵçѹ/ˮƽ´¥·¢µÄ×°Öá£Á¬½ÓModbus Plusµ½¼ÆËã»úÐèÒªÌرðµÄ½Ó¿Ú£¬Í¨³£ÊÇÖ§³ÖISA(SA85)£¬PCI»òÕßPMCIA×ÜÏߵİ忨¡£
¡¡¡¡¶ÔÓÚËùÓеÄÕâÈýÖÖͨÐÅÐÒéÔÚÊý¾ÝÄ£Ðͺ͹¦Äܵ÷ÓÃÉ϶¼ÊÇÏàͬµÄ£¬Ö»Óзâ×°·½Ê½ÊDz»Í¬µÄ¡£
¡¡¡¡À©Õ¹×ÊÁÏ£º
¡¡¡¡ÆäËüͨѶÐÒé
¡¡¡¡1¡¢RS-232ͨѶÐÒé
¡¡¡¡RS-232ÊÇÒ»ÖÖ´®ÐÐÎïÀí½Ó¿Ú±ê×¼¡£RSÊÇÓ¢ÎÄ¡°ÍƼö±ê×¼¡±µÄËõд£¬232Ϊ±êʶºÅͨ³£¡£RS-232 ½Ó¿ÚÒÔ9¸öÒý½Å (DB-9) »òÊÇ25¸öÒý½Å(DB-25) µÄÐÍ̬³öÏÖ¡£
¡¡¡¡2¡¢RS-485ͨѶÐÒé
¡¡¡¡RS-485±ê×¼ÊÇÔÚRS232µÄ»ù´¡ÉÏ·¢Õ¹À´µÄ£¬Ôö¼ÓÁ˶àµã¡¢Ë«ÏòͨÐÅÄÜÁ¦£¬¼´ÔÊÐí¶à¸ö·¢ËÍÆ÷Á¬½Óµ½Í¬Ò»Ìõ×ÜÏßÉÏ£¬Í¬Ê±Ôö¼ÓÁË·¢ËÍÆ÷µÄÇý¶¯ÄÜÁ¦ºÍ³åÍ»±£»¤ÌØÐÔ£¬À©Õ¹ÁË×ÜÏß¹²Ä£·¶Î§£¬ºóÃüÃûΪTIA/EIA-485-A±ê×¼¡£
¡¡¡¡3¡¢EthernetͨѶÐÒé
¡¡¡¡ÒÔÌ«Íø(Ethernet)Ö¸µÄÊÇ»ù´ø¾ÖÓòÍø¹æ·¶£¬Êǵ±½ñÏÖÓоÖÓòÍø²ÉÓõÄ×îͨÓõÄͨÐÅÐÒé±ê×¼¡£ÒÔÌ«ÍøÂçʹÓÃCSMA/CD¼¼Êõ£¬²¢ÒÔ10M/SµÄËÙÂÊÔËÐÐÔÚ¶àÖÖÀàÐ͵ĵçÀÂÉÏ¡£ÒÔÌ«ÍøÓëIEEE802.3ϵÁбê×¼ÏàÀàËÆ¡£
¡¡¡¡rtuÊǽ«Ä£ÄâÁ¿½øÐвɼ¯,ת»»³ÉÊý×ÖÐÍÊý¾Ý½øÐд«Êä.¿ÉÒÔ²ÉÓÃÓÐÏß·½Ê½Ò²¿ÉÒÔÓÃÎÞÏß·½Ê½½øÐд«Êä.µ«Ä¿Ç°Ö÷ÒªÊDzÉÓÃÎÞÏß·½Ê½(2g,3gÔ¶´«),Êý×ÖÁ¿ÊÇͨ¹ýrs232,rs485ͨÐÅ·½Ê½Ö±½Ó´«ÊäµÄÊý¾Ý.¶ø¿ª¹ØÁ¿Êǽ«µçÁ÷,µçѹµÄ¸ßµÍ»òÕßÇ¿Èõ±íʾ¿ª»ò¹Ø״̬µÄÄ£ÄâÁ¿,ÐèÒª¾¹ýadת»¯ºó,²ÅÄÜͨ¹ýÍøÂç´«Êä.ËùÒԶԲɼ¯Á¿×¼È·²É¼¯,ºÃµÄrtu¾Í±ØÐëÓÐ×Ô¶¨ÒåµÄio,di.do¹¦ÄÜ.
¡¡¡¡
¡¡¡¡modbusÍøÂçÊÇÒ»¸ö¹¤ÒµÍ¨ÐÅϵͳ£¬ÓÉ´øÖÇÄÜÖն˵Ŀɱà³ÌÐò¿ØÖÆÆ÷ºÍ¼ÆËã»úͨ¹ý¹«ÓÃÏß·»ò¾Ö²¿×¨ÓÃÏß·Á¬½Ó¶ø³É¡£Æäϵͳ½á¹¹¼È°üÀ¨Ó²¼þ¡¢Òà°üÀ¨Èí¼þ¡£Ëü¿ÉÓ¦ÓÃÓÚ¸÷ÖÖÊý¾Ý²É¼¯ºÍ¹ý³Ì¼à¿Ø¡£
¡¡¡¡modbusÍøÂçÖ»ÓÐÒ»¸öÖ÷»ú£¬ËùÓÐͨÐŶ¼ÓÉËû·¢³ö¡£ÍøÂç¿ÉÖ§³Ö247¸öÖ®¶àµÄÔ¶³Ì´ÓÊô¿ØÖÆÆ÷£¬µ«Êµ¼ÊËùÖ§³ÖµÄ´Ó»úÊýÒªÓÉËùÓÃͨÐÅÉ豸¾ö¶¨¡£²ÉÓÃÕâ¸öϵͳ£¬¸÷pc¿ÉÒÔºÍÖÐÐÄÖ÷»ú½»»»ÐÅÏ¢¶ø²»Ó°Ïì¸÷pcÖ´Ðб¾ÉíµÄ¿ØÖÆÈÎÎñ¡£
¡¡¡¡ÏÃÃÅΪÄÇÉú²úµÄwctu,Ëü¾ß±¸ÁËplc¡¢rtu¡¢dtuµÄËùÓй¦ÄÜ£¬ËüµÄ¼ÓÃܹ¦ÄÜÔÚ³öʼ»¯ÅäÖÆʱÓпÉÑ¡¼ÓÃÜ·½Ê½£¬È·±£°²È«¡£¶øÇÒ´ø²É¼¯Ä£Äâ±äÁ¿ºÍÂß¼¿ØÖÆÊý¾ÝµÈ¹¦ÄÜ£¬È¡´úÁËplcºÍrtuµÄʹÓù¦ÄÜ¡£Ëü»¹¿ÉÒÔÊÖ»ú¶ÌÐÅÔ¶³ÌÅäÖÆ£¬·½±ãºóÆÚά»¤¡£Èç¹ûÖÐÐÄÍø¶ÏÍø»ò¹ÊÕÏÎÞ·¨½ÓÊÕÊý¾Ýʱ£¬wctu»á×Ô¶¯½«Êý¾Ý·¢µ½Ö¸¶¨ÊÖ»úÉÏ£¬½øÐÐÊý¾Ý±¸·Ý¡£ModBusÐÒéÊÇÓ¦Óò㱨ÎÄ´«ÊäÐÒé(OSIÄ£Ð͵Ú7²ã)£¬Ëü¶¨ÒåÁËÒ»¸öÓëͨÐŲãÎ޹صÄÐÒéÊý¾Ýµ¥Ôª(PDU)£¬¼´PDU=¹¦ÄÜÂë+Êý¾ÝÓò¡£
¡¡¡¡ModBusÐÒéÄܹ»Ó¦ÓÃÔÚ²»Í¬ÀàÐ͵Ä×ÜÏß»òÍøÂç¡£¶ÔÓ¦²»Í¬µÄ×ÜÏß»òÍøÂ磬ModbusÐÒéÒýÈëһЩ¸½¼ÓÓòÓ³Éä³ÉÓ¦ÓÃÊý¾Ýµ¥Ôª(ADU)£¬¼´ADU=¸½¼ÓÓò+PDU¡£Ä¿Ç°£¬ModbusÓÐÏÂÁÐÈýÖÖͨÐÅ·½Ê½£º
¡¡¡¡1. ÒÔÌ«Íø£¬¶ÔÓ¦µÄͨÐÅģʽÊÇMODBUS TCP¡£
¡¡¡¡2. Òì²½´®Ðд«Êä(¸÷ÖÖ½éÖÊÈçÓÐÏßRS-232-/422/485/;¹âÏË¡¢ÎÞÏßµÈ)£¬¶ÔÓ¦µÄͨÐÅģʽÊÇMODBUS RTU»òMODBUS ASCII¡£
¡¡¡¡3. ¸ßËÙÁîÅÆ´«µÝÍøÂ磬¶ÔÓ¦µÄͨÐÅģʽÊÇModbus PLUS¡£
¡¡¡¡modbusÐÒé
¡¡¡¡²¼ÏßÊôÓÚÎïÀí²ã£¬¿ÉÒÔ¿´×öÊÇ·¡£modbusΪ×ßÔÚÎïÀí²ãÁ˵ÃÐźţ¬¿ÉÒÔ¿´×÷Êdzµ¡£Â··ÖºÜ¶àÖÖ£¬³µÒ²·ÖºÜ¶àÖÖ¡£³µ¿ÉÒÔÉϺܶàÖÖ·£¬Â·Ò²¿ÉÒÔÉϺܶàÖÖ³µ¡£¸ÅÄî²»Ò»Ö¡£