tb_gateway.yaml简单介绍

  • Thingsboard–连接到ThingsBoard平台的配置。
    • security–加密和授权类型的配置。

storage–存储方式配置(内存或文件)。

  • connectors–连接器列表及其配置。

    tb_gateway.yaml配置

    tb_gateway.yaml中打开Modbus Connector

    1. thingsboard:
    2. host: demo.thingsboard.io
    3. port: 1883
    4. security:
    5. accessToken: PUT_YOUR_ACCESS_TOKEN_HERE
    6. storage:
    7. type: memory
    8. read_records_count: 100
    9. max_records_count: 100000
    10. connectors:
    11. -
    12. name: Modbus Connector
    13. type: modbus
    14. configuration: modbus.json

    modbus.json介绍和配置

    官网介绍
    注释中modbus相关的解释

  • thignsboard支持的modbus功能码(1/2/3/4可作为属性/遥测的functionCode且2/4是只读,5/6/15/16作为rpc的functionCode)

    • 读数据
      • 1 线圈 读写
      • 2离散输入 只读
      • 3 读多个保存寄存器 读写
      • 4 读保持寄存器 只读
    • 写数据
      • 5 写单个线圈
      • 6 写单个寄存器
      • 15 写多个线圈
      • 16 写多个寄存器
        1. {
        2. "server": {
        3. "name": "Modbus Test Server",
        4. "type": "tcp", # 协议类型
        5. "host": "10.211.55.3",
        6. "port": 502,
        7. "timeout": 35,
        8. "method": "socket",
        9. "devices": [
        10. {
        11. "unitId": 1, # 设备ID
        12. "deviceName": "th_sensor",
        13. "attributesPollPeriod": 5000, #属性轮询拉取时间间隔
        14. "timeseriesPollPeriod": 5000, #遥测轮询拉取时间间隔
        15. "sendDataOnlyOnChange": false, # 是否只有当数据变化时上传
        16. "attributes": [ # 这里定义的modbus对应地址位的数据作为属性上传到tb
        17. {
        18. "byteOrder": "BIG", # 大小端
        19. "tag": "batteryLevel", # 属性名称
        20. "type": "long", # 数据类型
        21. "functionCode": 4, # modbus功能码
        22. "registerCount": 1, # 寄存器数量
        23. "address": 2 # 地址位
        24. },
        25. {
        26. "byteOrder": "LITTLE",
        27. "tag": "switchStatus",
        28. "type": "bits",
        29. "functionCode": 1,
        30. "registerCount": 1,
        31. "address": 3
        32. }
        33. ],
        34. "timeseries": [ # 这里定义的modbus对应地址位的数据作为遥测数据上传到tb
        35. {
        36. "byteOrder": "BIG",
        37. "tag": "humidity",
        38. "type": "long",
        39. "functionCode": 4,
        40. "registerCount": 1,
        41. "address": 1
        42. },
        43. {
        44. "byteOrder": "BIG",
        45. "tag": "temperature",
        46. "type": "long",
        47. "functionCode": 3,
        48. "registerCount": 1,
        49. "address": 0
        50. }
        51. ],
        52. "rpc": [
        53. {
        54. "tag": "writeSingleRegister",
        55. "type": "16int",
        56. "functionCode": 6,
        57. "objectsCount": 1,
        58. "address": 0
        59. },
        60. ]
        61. }
        62. ]
        63. }
        64. }
        秋千点赞.gif