"# VisualHMI \u652f\u6301\u7684\u901a\u4fe1\u534f\u8bae\u8be6\u89e3\uff1aDCBUS\/XGUS\/Modbus \u4e3b\u4ece\u5e27\u683c\u5f0f\u4e0e\u914d\u7f6e\n\n> 2026-08-04 | 2026-08-04\n> https:\/\/www.modbus.cn\/en\/49943.html\n\n**\u4e32\u53e3\u5c4f\/HMI \u5f00\u53d1, \u5feb\u901f\u5165\u95e8**\n\n---\n\n\u8fd9\u7bc7\u628a VisualHMI \u652f\u6301\u7684\u534f\u8bae\u6328\u4e2a\u8fc7\u4e00\u904d\uff0c\u91cd\u70b9\u653e\u5728**Modbus RTU \u4e3b\u4ece\u6a21\u5f0f**\u548c**\u5e27\u683c\u5f0f**\u4e0a\u2014\u2014\u56e0\u4e3a\u8fd9\u662f\u548c modbus.cn \u8bfb\u8005\u6700\u8d34\u7684\u90e8\u5206\uff0c\u4e5f\u662f\u8c03\u8bd5\u65f6\u6700\u5bb9\u6613\u8e29\u5751\u7684\u5730\u65b9\u3002\u5176\u4ed6 PLC \u534f\u8bae\uff08FX2N\/\u53f0\u8fbe\/\u4fe1\u6377\/\u6c38\u5b8f\uff09\u914d\u7f6e\u9879\u5927\u540c\u5c0f\u5f02\uff0c\u6587\u672b\u4e00\u5e76\u5217\u4e86\u3002\n\n**\u26a0\ufe0f \u94c1\u5f8b\uff1a\u540c\u4e00\u8def\u4e32\u53e3\u53ea\u80fd\u8dd1\u4e00\u79cd\u534f\u8bae\u3002** \u4f60\u4e0d\u80fd\u5728 UART1 \u4e0a\u65e2\u6302 Modbus \u53c8\u6302 DCBUS\u3002\u591a\u534f\u8bae\u9700\u6c42\u5f97\u9760\u786c\u4ef6\u591a\u8def\u4e32\u53e3\u3002\n\n## \u4e00\u3001DCBUS \u534f\u8bae\uff08\u5927\u5f69\u7ec4\u6001\u534f\u8bae\uff09\n\nDCBUS \u662f\u5c4f\u548c\u81ea\u6709\u4e3b\u677f\u5bf9\u63a5\u5e38\u7528\u7684\u7ec4\u6001\u534f\u8bae\uff0c\u5e27\u7ed3\u6784\u5982\u4e0b\uff1a\n\n\u5b57\u6bb5\u957f\u5ea6\u8bf4\u660e\n\n\u5e27\u59342 byte\u9ed8\u8ba4 0xAA55\uff0c\u53ef\u81ea\u5b9a\u4e49\n\u7ad9\u53f71 byte\u9ed8\u8ba4 0\uff0c255 \u4e3a\u5e7f\u64ad\n\u957f\u5ea61 byte\u529f\u80fd\u7801+\u6570\u636e+\u6821\u9a8c\u7684\u603b\u5b57\u8282\u6570\n\u529f\u80fd\u78011 byte0xF1 \u5199 \/ 0xF2 \u8bfb\n\u5730\u57402 byte\u7528\u6237\u533a 0x0100~0xFFFF\uff0c\u7cfb\u7edf\u533a &lt;0x1000\n\u6570\u636en byte\u5bc4\u5b58\u5668\u503c\n\u6821\u9a8c2 byteCRC16 \u6216\u9884\u7559 0xCCCC\n\nCRC16 \u7b97\u6cd5\uff08\u5927\u5f69\u7ed9\u7684 C \u53c2\u8003\uff0cModbus \u540c\u6b3e\u67e5\u8868\u6cd5\uff09\uff1a\n\n```\nuint16 MB_calc_crc16(uint8 *buffer, uint32 n){\n  uint16 crc = 0xffff;\n  for(i = 0; i &lt; n; i++){\n    crc = crc ^ buffer[i];\n    for(j = 0; j &gt; 1;\n      if(carry_flag == 1) crc = crc ^ 0xa001;\n    }\n  }\n  return crc;\n}\n```\n\n**\u5199\u53d8\u91cf\uff080xF1\uff09\u793a\u4f8b**\uff0c\u5411 0x1000 \u5199 100\u3001\u7ad9\u53f7 0\u3001\u4e0d\u5f00 CRC\uff1a\n\n```\nAA55 00 07 F1 1000 0064 CCCC\n \u2191\u5e27\u5934 \u2191\u7ad9 \u2191\u957f\u5ea6 \u2191\u5199 \u2191\u5730\u5740  \u2191\u503c   \u2191\u9884\u7559\n```\n\n\u7ad9\u53f7\u8bbe\u4e3a 1 \u4e14\u5f00 CRC \u65f6\uff1a`AA55 01 07 F1 1000 0064 7289`\uff0c\u5c4f\u5e94\u7b54 `AA55 01 03 F1 E174`\u3002\n\n**\u8bfb\u53d8\u91cf\uff080xF2\uff09\u793a\u4f8b**\uff0c\u8bfb 0x1000\uff08\u5047\u8bbe\u503c 100\uff09\uff1a\n\n```\n\u4e3b\u677f\u8bf7\u6c42: AA55 00 06 F2 1000 01 CCCC\n\u5c4f\u8fd4\u56de:   AA55 00 08 F2 1000 01 0064 CCCC\n```\n\n**\ud83d\udca1 \u8c03\u8bd5\u63d0\u793a\uff1a** \u5f00\u542f\"\u81ea\u52a8\u4e0a\u4f20\"\u540e\uff0c\u4f60\u5728\u5c4f\u4e0a\u70b9\u6309\u94ae\u6539\u4e86\u5bc4\u5b58\u5668\uff0c\u5c4f\u4f1a\u4e3b\u52a8\u53d1 0xF2 \u5e27\u4e0a\u62a5\u7ed9\u4e3b\u677f\uff0c\u4e0d\u7528\u4e3b\u677f\u53bb\u8f6e\u8be2\u3002\u8fd9\u70b9\u548c Modbus \u4ece\u673a\u4e3b\u52a8\u4e0a\u62a5\u4e0d\u4e00\u6837\uff0cDCBUS \u7684\u4e0a\u62a5\u662f\u5c4f\u2192\u4e3b\u677f\u65b9\u5411\u3002\n\n## \u4e8c\u3001XGUS \u534f\u8bae\n\nXGUS \u5e27\u5934\u9ed8\u8ba4 0x5AA5\uff0c\u7ed3\u6784\uff1a\u5e27\u5934(2) + \u957f\u5ea6(1) + \u529f\u80fd\u7801(1) + \u5730\u5740(2) + \u6570\u636e(n) + CRC16\u3002\u5207\u6362\u753b\u9762\u4e24\u79cd\u6a21\u5f0f\uff1a\n\n```\n\u6a21\u5f0f1: 5AA5 03 80 03 XX        \/\/ XX=\u753b\u9762ID\n\u6a21\u5f0f2: 5AA5 07 82 0084 5A01 XXXX \/\/ XXXX=\u753b\u9762ID\n```\n\n## \u4e09\u3001Modbus RTU\uff08\u91cd\u70b9\uff09\n\n\u5c4f\u652f\u6301\u6807\u51c6 Modbus-RTU\uff0c\u53ef\u8bbe**\u4e3b\u673a\uff08Master\uff09**\u6216**\u4ece\u673a\uff08Slave\uff09**\u3002\n\n### 3.1 \u4e3b\u673a\u6a21\u5f0f ModbusMaster\n\n\u5c4f\u5f53\u4e3b\u673a\u53bb\u8f6e\u8be2\u4e0b\u6302\u7684\u4ece\u673a\uff08\u4eea\u8868\u3001\u53d8\u9891\u5668\u3001PLC\uff09\u3002\u5173\u952e\u914d\u7f6e\u9879\uff1a\n\n\u914d\u7f6e\u9879\u542b\u4e49\n\n\u6700\u591a\u8bfb\u53d6\u6570\u5355\u6761\u6307\u4ee4\u8bfb\u53d6\u7684\u6700\u5927\u5b57\u8282\u6570\n\u8bfb\u53d6\u95f4\u9694\u6570\u5730\u5740\u95f4\u9694\u5c0f\u4e8e\u6b64\u503c\u53ef\u5408\u5e76\u6210\u4e00\u6761\u8bfb\u6307\u4ee4\n\u5199\u91cd\u8bd5\u6b21\u6570\u5199\u5931\u8d25\u540e\u6700\u5927\u91cd\u8bd5\n\u8d85\u65f6\u65f6\u95f4\u7b49\u4ece\u673a\u5e94\u7b54\u7684\u6beb\u79d2\u6570\n\u95f4\u9694\u65f6\u95f4\u6536\u5230\u5e94\u7b54\u540e\u5ef6\u65f6\u591a\u4e45\u53d1\u4e0b\u4e00\u6761\n\u5199\u5bc4\u5b58\u5668\u547d\u4ee4\u81ea\u52a8\uff080x06 \u5355\u5199\/0x10 \u591a\u5199\uff09\u6216\u5168\u7528 0x10\n\u79bb\u7ebf\u4f18\u5316\u8bfb\u53d6\u52fe\u9009\u540e\u79bb\u7ebf\u7684\u4ece\u673a\u4e0d\u518d\u53d1\u8bf7\u6c42\n\u4ece\u7ad9\u6570\u76ee\u9ed8\u8ba4 1\uff0cRS485 \u591a\u4ece\u7ad9\u754c\u9762\u6700\u591a\u914d 10 \u4e2a\uff0c\u66f4\u591a\u7528 LUA\n\u9884\u8bbe\u5b57\u8282\u5e8f\u9ed8\u8ba4\u5927\u7aef\uff0c\u6d6e\u70b9\/\u957f\u6574\u578b\u53ef\u91cd\u6307\u5b9a\n\n\u652f\u6301\u529f\u80fd\u7801\uff1a`0x01 0x02 0x03 0x04 0x05 0x06 0x0F 0x10`\u3002\n\n**\u26a0\ufe0f \u91cd\u70b9\uff1a\u5b57\u8282\u5e8f\u5751\u6700\u591a\u3002** \u9ed8\u8ba4\u5927\u7aef\uff08AB CD\uff09\uff0c\u4f46\u5f88\u591a\u8bbe\u5907\u662f\"\u5927\u7aef\u5b57\u8282\u5e8f + \u5927\u7aef\u5b57\u5e8f\"\uff08CD AB\uff09\u6216\u53cd\u4e4b\u3002\u6d6e\u70b9\u663e\u793a\u9519\u4e71\u5148\u67e5\u5b57\u8282\u5e8f\uff0c\u4e0d\u662f\u534f\u8bae\u95ee\u9898\u3002\u7528 [Modbus RTU \u6559\u7a0b](https:\/\/www.modbus.cn\/modbus-rtu-tutorial\/) \u91cc\u7684\u5b57\u8282\u5e8f\u5bf9\u7167\u8868\u5bf9\u7167\u8bbe\u3002\n\n### 3.2 \u4ece\u673a\u6a21\u5f0f ModbusSlave\n\n\u5c4f\u81ea\u5df1\u5f53\u4e00\u6761 Modbus \u4ece\u7ad9\uff0c\u7b49\u4e0a\u4f4d\u673a\uff08PLC\u3001\u7f51\u5173\u3001\u4f60\u7684\u8c03\u8bd5\u8f6f\u4ef6\uff09\u6765\u8bfb\u3002\u914d\u7f6e\u9879\uff1a\n\n\u914d\u7f6e\u9879\u542b\u4e49\n\n\u4ece\u673a\u7ad9\u53f7\u672c\u5c4f\u7684 Modbus \u5730\u5740\n\u5b57\u7b26\u95f4\u9694\u8d85\u8fc7\u8be5 ms \u8ba4\u4e3a\u65ad\u5e27\n\u5ef6\u65f6\u5e94\u7b54\u6536\u5230\u8bf7\u6c42\u540e\u5ef6\u65f6\u518d\u5e94\u7b54\n\n\u540c\u6837\u652f\u6301 0x01~0x10 \u5168\u5957\u529f\u80fd\u7801\u3002\u4ece\u673a\u6a21\u5f0f\u4e0b\"\u753b\u9762\u5199\u5165\u5730\u5740\/\u753b\u9762\u53d6\u81ea\u5730\u5740\"\u53ef\u5b9e\u73b0\u5c4f\u548c PLC \u753b\u9762\u8054\u52a8\u3002\n\n## \u56db\u3001PLC \u534f\u8bae\uff08FX2N\/FX3U\/\u53f0\u8fbe\/\u4fe1\u6377\/\u6c38\u5b8f\uff09\n\n\u8fd9\u4e9b\u914d\u7f6e\u9879\u9ad8\u5ea6\u4e00\u81f4\uff0c\u5217\u6838\u5fc3\u5dee\u5f02\uff1a\n\n\u534f\u8bae\u5bc4\u5b58\u5668\u5bfb\u5740\u7279\u70b9\n\nFX2N\u6807\u51c6\u6a21\u5f0f\u6307\u4ee4\u77ed\uff08\u5982 02 30 31 30 30 30 30 32 03 35 36\uff09\uff0c\u6269\u5c55\u6a21\u5f0f\u6307\u4ee4\u957f\u3001\u5730\u5740\u8303\u56f4\u5927\nFX3U\u540c FX2N\uff0c\u6807\u51c6\/\u6269\u5c55\u4e24\u6a21\u5f0f\nDELTA DVPASCII \u6a21\u5f0f\uff1aSTX+\u5730\u5740+\u6307\u4ee4+\u6570\u636e+LRC \u6821\u9a8c+CR LF\n\u4fe1\u6377 XC\/XD\u6807\u51c6\u4fe1\u6377 PLC \u534f\u8bae\n\u6c38\u5b8f FB\u6807\u51c6\u6c38\u5b8f\u534f\u8bae\n\n\u6240\u6709 PLC \u534f\u8bae\u90fd\u6709\"\u4e0e PLC \u540c\u6b65\u753b\u9762\"\u9009\u9879\uff1a\u753b\u9762\u53d8\u5316\u5199\u5230\u6307\u5b9a PLC \u5730\u5740\uff0c\u6216 PLC \u67d0\u5730\u5740\u53d8\u503c\u65f6\u5207\u6362\u753b\u9762\uff080xFFFF \u4e3a\u81ea\u52a8\uff09\u3002\n\n\u672c\u6587\u6574\u7406\u81ea \u5e7f\u5dde\u5927\u5f69\u79d1\u6280 VisualHMI \u5f00\u53d1\u6587\u6863\uff08hmi-doc.gz-dc.com\uff09\u534f\u8bae\u8bf4\u660e\u7ae0\u8282\uff0c\u5e27\u683c\u5f0f\u4e0e\u5bc4\u5b58\u5668\u914d\u7f6e\u5747\u6309\u539f\u6587\u4fdd\u771f\uff0c\u7248\u6743\u5f52\u5927\u5f69\u79d1\u6280\u6240\u6709\uff0c\u6b64\u5904\u505a\u91cd\u70b9\u6807\u6ce8\u91cd\u6392\u3002\n\n---\n*modbus.cn*\n"