413 lines
11 KiB
HTML
413 lines
11 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
|
<title>Modbus Map</title>
|
|
<style>
|
|
* {
|
|
font-family: Arial, sans-serif;
|
|
font-size: 14px;
|
|
}
|
|
|
|
h2 {
|
|
font-size: 15px;
|
|
}
|
|
|
|
html, body {
|
|
margin: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
a {
|
|
color: #565A5C;
|
|
text-decoration: none;
|
|
}
|
|
|
|
div.content {
|
|
position: relative;
|
|
text-align: center;
|
|
padding: 0;
|
|
margin-top: 0;
|
|
height: 100%;
|
|
overflow: auto;
|
|
}
|
|
|
|
div.textblock {
|
|
text-align: left;
|
|
padding: 0;
|
|
width: 40%;
|
|
position: relative;
|
|
margin: auto;
|
|
}
|
|
|
|
table.main {
|
|
border: solid black 2px;
|
|
border-spacing: 0;
|
|
margin: auto;
|
|
}
|
|
|
|
td {
|
|
padding: 6px;
|
|
border: solid black 1px;
|
|
border-spacing: 0;
|
|
}
|
|
|
|
tr.even {
|
|
background: #EFEFEF;
|
|
}
|
|
|
|
tr.odd {
|
|
background: #DDDDDD;
|
|
}
|
|
|
|
td.desc {
|
|
text-align: left;
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<div class="content">
|
|
<br><br>
|
|
<h2>Modbus Map</h2>
|
|
<div class="textblock">
|
|
<p>These Modbus maps are for your reference. The modbus service runs on port 502.</p>
|
|
<p>Important note: The Ampt ModBus register map uses big endian values.</p>
|
|
<p><a href="smdx_64050.xml">SunSpec SMDX File</a></p>
|
|
</div>
|
|
<br>
|
|
<h2> SunSpec Registers </h2>
|
|
<table class="main" style="width:70%">
|
|
<tbody>
|
|
<tr class="odd">
|
|
<td><strong>Start Offset</strong></td>
|
|
<td><strong>Size</strong></td>
|
|
<td><strong>Name</strong></td>
|
|
<td><strong>Type</strong></td>
|
|
<td><strong>R/W</strong></td>
|
|
<td><strong>Description</strong></td>
|
|
</tr>
|
|
<tr class="even">
|
|
<td>1</td>
|
|
<td>2</td>
|
|
<td>SID</td>
|
|
<td>uint32</td>
|
|
<td>R</td>
|
|
<td class="desc">A well-known value 0x53756e53, uniquely identifies this as a SunSpec Modbus Map</td>
|
|
</tr>
|
|
<tr class="odd">
|
|
<td>3</td>
|
|
<td>1</td>
|
|
<td>ID</td>
|
|
<td>uint16</td>
|
|
<td>R</td>
|
|
<td class="desc">A well-known value 1, uniquely identifies this as a SunSpec Common Model</td>
|
|
</tr>
|
|
<tr class="even">
|
|
<td>4</td>
|
|
<td>1</td>
|
|
<td>L</td>
|
|
<td>uint16</td>
|
|
<td>R</td>
|
|
<td class="desc">Well-known # of 16-bit registers to follow: 66</td>
|
|
</tr>
|
|
<tr class="odd">
|
|
<td>5</td>
|
|
<td>16</td>
|
|
<td>Manufacturer</td>
|
|
<td>string</td>
|
|
<td>R</td>
|
|
<td class="desc">A well-known value registered with SunSpec for compliance: "Ampt"</td>
|
|
</tr>
|
|
<tr class="even">
|
|
<td>21</td>
|
|
<td>16</td>
|
|
<td>Model</td>
|
|
<td>string</td>
|
|
<td>R</td>
|
|
<td class="desc">Manufacturer specific value "Communication Unit"</td>
|
|
</tr>
|
|
<tr class="odd">
|
|
<td>37</td>
|
|
<td>8</td>
|
|
<td><em>Reserved</em></td>
|
|
<td>-</td>
|
|
<td>-</td>
|
|
<td></td>
|
|
</tr>
|
|
<tr class="even">
|
|
<td>45</td>
|
|
<td>8</td>
|
|
<td>Version</td>
|
|
<td>string</td>
|
|
<td>R</td>
|
|
<td class="desc">Software Version</td>
|
|
</tr>
|
|
<tr class="odd">
|
|
<td>53</td>
|
|
<td>16</td>
|
|
<td>Serial Number</td>
|
|
<td>string</td>
|
|
<td>R</td>
|
|
<td class="desc">Manufacturer specific value</td>
|
|
</tr>
|
|
<tr class="even">
|
|
<td>69</td>
|
|
<td>1</td>
|
|
<td>Device Address</td>
|
|
<td>int16</td>
|
|
<td>R/W</td>
|
|
<td class="desc">Modbus Device ID</td>
|
|
</tr>
|
|
<tr class="odd">
|
|
<td>70</td>
|
|
<td>1</td>
|
|
<td><em>Reserved</em></td>
|
|
<td>-</td>
|
|
<td>-</td>
|
|
<td></td>
|
|
</tr>
|
|
<tr class="even">
|
|
<td>71</td>
|
|
<td>1</td>
|
|
<td>ID</td>
|
|
<td>uint16</td>
|
|
<td>R</td>
|
|
<td class="desc">Ampt SunSpec Vendor Code 64050</td>
|
|
</tr>
|
|
<tr class="odd">
|
|
<td>72</td>
|
|
<td>1</td>
|
|
<td>L</td>
|
|
<td>uint16</td>
|
|
<td>R</td>
|
|
<td class="desc">Variable number of 16-bit registers to follow: 12 + N*16</td>
|
|
</tr>
|
|
<tr class="even">
|
|
<td>73</td>
|
|
<td>1</td>
|
|
<td>DCA_SF</td>
|
|
<td>int16</td>
|
|
<td>R</td>
|
|
<td class="desc">Current scale factor</td>
|
|
</tr>
|
|
<tr class="odd">
|
|
<td>74</td>
|
|
<td>1</td>
|
|
<td>DCV_SF</td>
|
|
<td>int16</td>
|
|
<td>R</td>
|
|
<td class="desc">Voltage scale factor</td>
|
|
</tr>
|
|
<tr class="even">
|
|
<td>75</td>
|
|
<td>1</td>
|
|
<td><em>Reserved</em></td>
|
|
<td>-</td>
|
|
<td>-</td>
|
|
<td></td>
|
|
</tr>
|
|
<tr class="odd">
|
|
<td>76</td>
|
|
<td>1</td>
|
|
<td>DCkWh_SF</td>
|
|
<td>int16</td>
|
|
<td>R</td>
|
|
<td class="desc">Energy Scale Factor</td>
|
|
</tr>
|
|
<tr class="even">
|
|
<td>77</td>
|
|
<td>1</td>
|
|
<td><em>Reserved</em></td>
|
|
<td>-</td>
|
|
<td>-</td>
|
|
<td></td>
|
|
</tr>
|
|
<tr class="odd">
|
|
<td>78</td>
|
|
<td>1</td>
|
|
<td>N</td>
|
|
<td>uint16</td>
|
|
<td>R</td>
|
|
<td class="desc">Number of strings</td>
|
|
</tr>
|
|
<tr class="even">
|
|
<td>79</td>
|
|
<td>6</td>
|
|
<td><em>Reserved</em></td>
|
|
<td>-</td>
|
|
<td>-</td>
|
|
<td></td>
|
|
</tr>
|
|
<tr>
|
|
<td colspan="6"><strong>1</strong></td>
|
|
</tr>
|
|
<tr class="even">
|
|
<td>85</td>
|
|
<td>1</td>
|
|
<td>String ID</td>
|
|
<td>int16</td>
|
|
<td>R</td>
|
|
<td class="desc">The string number</td>
|
|
</tr>
|
|
<tr class="odd">
|
|
<td>86</td>
|
|
<td>2</td>
|
|
<td><em>Reserved</em></td>
|
|
<td>-</td>
|
|
<td>-</td>
|
|
<td></td>
|
|
</tr>
|
|
<tr class="even">
|
|
<td>88</td>
|
|
<td>2</td>
|
|
<td>String data timestamp</td>
|
|
<td>uint32</td>
|
|
<td>R</td>
|
|
<td class="desc">The UTC timestamp of the measurements</td>
|
|
</tr>
|
|
<tr class="odd">
|
|
<td>90</td>
|
|
<td>1</td>
|
|
<td>OutDCA</td>
|
|
<td>int16</td>
|
|
<td>R</td>
|
|
<td class="desc">String output current in mA</td>
|
|
</tr>
|
|
<tr class="even">
|
|
<td>91</td>
|
|
<td>2</td>
|
|
<td>OutDCV</td>
|
|
<td>uint32</td>
|
|
<td>R</td>
|
|
<td class="desc">String output voltage in mV</td>
|
|
</tr>
|
|
<tr class="odd">
|
|
<td>93</td>
|
|
<td>2</td>
|
|
<td>In1DCV</td>
|
|
<td>uint32</td>
|
|
<td>R</td>
|
|
<td class="desc">String input 1 voltage in mV</td>
|
|
</tr>
|
|
<tr class="even">
|
|
<td>95</td>
|
|
<td>2</td>
|
|
<td>In2DCV</td>
|
|
<td>uint32</td>
|
|
<td>R</td>
|
|
<td class="desc">String input 2 voltage in mV</td>
|
|
</tr>
|
|
<tr class="odd">
|
|
<td>97</td>
|
|
<td>2</td>
|
|
<td>DCWh</td>
|
|
<td>uint32</td>
|
|
<td>R</td>
|
|
<td class="desc">Daily integrated string output energy in Wh</td>
|
|
</tr>
|
|
<tr class="even">
|
|
<td>99</td>
|
|
<td>1</td>
|
|
<td>In1DCA</td>
|
|
<td>int16</td>
|
|
<td>R</td>
|
|
<td class="desc">String input 1 current in mA</td>
|
|
</tr>
|
|
<tr class="odd">
|
|
<td>100</td>
|
|
<td>1</td>
|
|
<td>In2DCA</td>
|
|
<td>int16</td>
|
|
<td>R</td>
|
|
<td class="desc">String input 2 current in mA</td>
|
|
</tr>
|
|
<tr>
|
|
<td colspan="6"><strong>2</strong></td>
|
|
</tr>
|
|
<tr class="even">
|
|
<td>101</td>
|
|
<td>1</td>
|
|
<td>String ID</td>
|
|
<td>int16</td>
|
|
<td>R</td>
|
|
<td class="desc">The string number</td>
|
|
</tr>
|
|
<tr class="odd">
|
|
<td>102</td>
|
|
<td>2</td>
|
|
<td><em>Reserved</em></td>
|
|
<td>-</td>
|
|
<td>-</td>
|
|
<td></td>
|
|
</tr>
|
|
<tr class="even">
|
|
<td>104</td>
|
|
<td>2</td>
|
|
<td>String data timestamp</td>
|
|
<td>uint32</td>
|
|
<td>R</td>
|
|
<td class="desc">The UTC timestamp of the measurements</td>
|
|
</tr>
|
|
<tr class="odd">
|
|
<td>106</td>
|
|
<td>1</td>
|
|
<td>OutDCA</td>
|
|
<td>int16</td>
|
|
<td>R</td>
|
|
<td class="desc">String output current in mA</td>
|
|
</tr>
|
|
<tr class="even">
|
|
<td>107</td>
|
|
<td>2</td>
|
|
<td>OutDCV</td>
|
|
<td>uint32</td>
|
|
<td>R</td>
|
|
<td class="desc">String output voltage in mV</td>
|
|
</tr>
|
|
<tr class="odd">
|
|
<td>109</td>
|
|
<td>2</td>
|
|
<td>In1DCV</td>
|
|
<td>uint32</td>
|
|
<td>R</td>
|
|
<td class="desc">String input 1 voltage in mV</td>
|
|
</tr>
|
|
<tr class="even">
|
|
<td>111</td>
|
|
<td>2</td>
|
|
<td>In2DCV</td>
|
|
<td>uint32</td>
|
|
<td>R</td>
|
|
<td class="desc">String input 2 voltage in mV</td>
|
|
</tr>
|
|
<tr class="odd">
|
|
<td>113</td>
|
|
<td>2</td>
|
|
<td>DCWh</td>
|
|
<td>uint32</td>
|
|
<td>R</td>
|
|
<td class="desc">Daily integrated string output energy in Wh</td>
|
|
</tr>
|
|
<tr class="even">
|
|
<td>115</td>
|
|
<td>1</td>
|
|
<td>In1DCA</td>
|
|
<td>int16</td>
|
|
<td>R</td>
|
|
<td class="desc">String input 1 current in mA</td>
|
|
</tr>
|
|
<tr class="odd">
|
|
<td>116</td>
|
|
<td>1</td>
|
|
<td>In2DCA</td>
|
|
<td>int16</td>
|
|
<td>R</td>
|
|
<td class="desc">String input 2 current in mA</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<br><br><br>
|
|
</div>
|
|
</body>
|
|
</html>
|