﻿<?xml version="1.0" encoding="utf-8"?>
<Templates format="2" protocolVersion="89" >
  <Template revision="1.0" id="c2d6a354-4130-43ab-955c-d14246e7e9b0">
    <SuggestedCCUParameters>
      <UseAsciiCommunication>False</UseAsciiCommunication>
      <StopBits>One</StopBits>
      <DataBits>8</DataBits>
      <Parity>None</Parity>
      <Baudrate>9600</Baudrate>
      <DelayBetweenRequests>-1</DelayBetweenRequests>
      <ReadWriteTimeout>1000</ReadWriteTimeout>
    </SuggestedCCUParameters>
    <ImportParameters>
      <Parameter>
        <Id>SlaveId</Id>
        <Name>Slave Id</Name>
        <Value>1</Value>
      </Parameter>
      <Parameter>
        <Id>IpAddress</Id>
        <Name>IP address</Name>
        <Value>192.168.1.0</Value>
      </Parameter>
    </ImportParameters>
    <RevisionHistory>
      <Revision id="1.0">Initial version</Revision>
    </RevisionHistory>
    <Name>TC LG</Name>
    <CcuModel>ModbusRtuCCU</CcuModel>
    <Producer></Producer>
    <Model></Model>
    <Description></Description>
    <Module>
      <Name>TC LG</Name>
      <Id>-1</Id>
      <Model>ModbusModule</Model>
      <DeviceProperties>
        <DeviceType>7001</DeviceType>
        <InternalPollInterval>30000</InternalPollInterval>
        <ReadScript>if MODBUSR(D, 13, bool)
    #ADDERROR("Ch: " + MODBUSR(A, 0, int16));
    switch(MODBUSR(A, 0, int16),
        1, ADDERROR("CH01 Air temperature sensor error"),
        3, ADDERROR("CH03 No communication between wired remote controller &amp; indoor unit"),
        5, ADDERROR("CH05 Indoor unit &amp; outdoor unit communication error"),
        8, ADDERROR("CH08 Water tank temperature sensor error"),
        9, ADDERROR("CH09 Indoor unit EEPROM error"),
        11, ADDERROR("CH11 Indoor unit &amp; inverter PCB communication error"),
        12, ADDERROR("CH12 Inverter PCB error"),
        13, ADDERROR("CH13 Problem in Solar-thermal sensor "),
        14, ADDERROR("CH14 Flow switch error"),
        15, ADDERROR("CH15 Water pipe overheated"),
        16, ADDERROR("CH16 Water inlet &amp; outlet temperature sensor error"),
        17, ADDERROR("CH17 Water inlet temperature sensor error"),
        18, ADDERROR("CH18 Water outlet temperature sensor error"),
        ADDERROR("CH01 Air temperature sensor error"));
end</ReadScript>
        <PrefetchModeId>0</PrefetchModeId>
        <SlaveId>$[SlaveId]</SlaveId>
        <MaxPrefetchGroupSize>100</MaxPrefetchGroupSize>
        <IpAddress>$[IpAddress]</IpAddress>
      </DeviceProperties>
      <Devices>
        <Device>
          <Name>TČ Kompresor</Name>
          <Model>ModbusReedContact</Model>
          <Id>-2</Id>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>2500</InternalPollInterval>
            <InitializeScript></InitializeScript>
            <ReadScript></ReadScript>
            <PrefetchModeId>0</PrefetchModeId>
            <ServiceAttributesFormulas></ServiceAttributesFormulas>
            <ServiceActionsScripts></ServiceActionsScripts>
            <CustomDeviceVariables></CustomDeviceVariables>
            <OnStateIconId>60</OnStateIconId>
            <OffStateIconId>61</OffStateIconId>
            <OnStateName>${general_on}</OnStateName>
            <OffStateName>${general_off}</OffStateName>
            <ReadState>MODBUSR(D, 3, Bool)</ReadState>
            <NegateState>False</NegateState>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>TČ Metoda riadenia</Name>
          <Model>ModbusMultiValueSwitch</Model>
          <Id>-3</Id>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>2500</InternalPollInterval>
            <InitializeScript></InitializeScript>
            <ReadScript></ReadScript>
            <PrefetchModeId>0</PrefetchModeId>
            <ServiceAttributesFormulas></ServiceAttributesFormulas>
            <ServiceActionsScripts></ServiceActionsScripts>
            <CustomDeviceVariables></CustomDeviceVariables>
            <ShouldDoPeriodicWrite>False</ShouldDoPeriodicWrite>
            <Value0Index>0</Value0Index>
            <Value1Index>1</Value1Index>
            <Value2Index>2</Value2Index>
            <Value3Index>67</Value3Index>
            <Value4Index>68</Value4Index>
            <Value5Index>69</Value5Index>
            <Value6Index>70</Value6Index>
            <Value7Index>71</Value7Index>
            <Value8Index>72</Value8Index>
            <Value9Index>73</Value9Index>
            <Value0Name>Vystupna voda</Value0Name>
            <Value1Name>Vstupna voda</Value1Name>
            <Value2Name>Teplota v miestnosti</Value2Name>
            <Value3Name>3</Value3Name>
            <Value4Name>4</Value4Name>
            <Value5Name>5</Value5Name>
            <Value6Name>6</Value6Name>
            <Value7Name>7</Value7Name>
            <Value8Name>8</Value8Name>
            <Value9Name>9</Value9Name>
            <Value0IconId>212</Value0IconId>
            <Value1IconId>211</Value1IconId>
            <Value2IconId>37</Value2IconId>
            <Value3IconId>8</Value3IconId>
            <Value4IconId>9</Value4IconId>
            <Value5IconId>10</Value5IconId>
            <Value6IconId>11</Value6IconId>
            <Value7IconId>12</Value7IconId>
            <Value8IconId>13</Value8IconId>
            <Value9IconId>14</Value9IconId>
            <OffStateValue>-1</OffStateValue>
            <ReadSwitchState>MODBUSR(H, 1, Int16)</ReadSwitchState>
            <WriteSwitchState>MODBUSW(H, 1, Int16, Mu)</WriteSwitchState>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>TČ Obehove čerpadlo</Name>
          <Model>ModbusReedContact</Model>
          <Id>-4</Id>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>2500</InternalPollInterval>
            <InitializeScript></InitializeScript>
            <ReadScript></ReadScript>
            <PrefetchModeId>0</PrefetchModeId>
            <ServiceAttributesFormulas></ServiceAttributesFormulas>
            <ServiceActionsScripts></ServiceActionsScripts>
            <CustomDeviceVariables></CustomDeviceVariables>
            <OnStateIconId>362</OnStateIconId>
            <OffStateIconId>363</OffStateIconId>
            <OnStateName>Zapnuté</OnStateName>
            <OffStateName>Vypnuté</OffStateName>
            <ReadState>MODBUSR(D, 1, Bool)</ReadState>
            <NegateState>False</NegateState>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>TČ Odmrazovanie</Name>
          <Model>ModbusReedContact</Model>
          <Id>-5</Id>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>2500</InternalPollInterval>
            <InitializeScript></InitializeScript>
            <ReadScript></ReadScript>
            <PrefetchModeId>0</PrefetchModeId>
            <ServiceAttributesFormulas></ServiceAttributesFormulas>
            <ServiceActionsScripts></ServiceActionsScripts>
            <CustomDeviceVariables></CustomDeviceVariables>
            <OnStateIconId>3</OnStateIconId>
            <OffStateIconId>61</OffStateIconId>
            <OnStateName>${general_on}</OnStateName>
            <OffStateName>${general_off}</OffStateName>
            <ReadState>MODBUSR(D, 4, Bool)</ReadState>
            <NegateState>False</NegateState>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>TČ Operačný mód</Name>
          <Model>ModbusMultiValueSwitch</Model>
          <Id>-6</Id>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>2500</InternalPollInterval>
            <InitializeScript></InitializeScript>
            <ReadScript></ReadScript>
            <PrefetchModeId>0</PrefetchModeId>
            <ServiceAttributesFormulas></ServiceAttributesFormulas>
            <ServiceActionsScripts></ServiceActionsScripts>
            <CustomDeviceVariables></CustomDeviceVariables>
            <ShouldDoPeriodicWrite>False</ShouldDoPeriodicWrite>
            <Value0Index>0</Value0Index>
            <Value1Index>1</Value1Index>
            <Value2Index>2</Value2Index>
            <Value3Index>67</Value3Index>
            <Value4Index>68</Value4Index>
            <Value5Index>69</Value5Index>
            <Value6Index>70</Value6Index>
            <Value7Index>71</Value7Index>
            <Value8Index>72</Value8Index>
            <Value9Index>73</Value9Index>
            <Value0Name>Standby (Off)</Value0Name>
            <Value1Name>${category_cooling}</Value1Name>
            <Value2Name>${category_heating}</Value2Name>
            <Value3Name>3</Value3Name>
            <Value4Name>4</Value4Name>
            <Value5Name>5</Value5Name>
            <Value6Name>6</Value6Name>
            <Value7Name>7</Value7Name>
            <Value8Name>8</Value8Name>
            <Value9Name>9</Value9Name>
            <Value0IconId>61</Value0IconId>
            <Value1IconId>2</Value1IconId>
            <Value2IconId>1</Value2IconId>
            <Value3IconId>8</Value3IconId>
            <Value4IconId>9</Value4IconId>
            <Value5IconId>10</Value5IconId>
            <Value6IconId>11</Value6IconId>
            <Value7IconId>12</Value7IconId>
            <Value8IconId>13</Value8IconId>
            <Value9IconId>14</Value9IconId>
            <OffStateValue>0</OffStateValue>
            <ReadSwitchState>MODBUSR(A, 1, Int16)</ReadSwitchState>
            <WriteSwitchState></WriteSwitchState>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>TČ Požiadavka na kúrenie a chladenie</Name>
          <Model>ModbusSwitch</Model>
          <Id>-7</Id>
          <DeviceProperties>
            <DeviceType>142</DeviceType>
            <InternalPollInterval>2500</InternalPollInterval>
            <InitializeScript></InitializeScript>
            <ReadScript></ReadScript>
            <PrefetchModeId>0</PrefetchModeId>
            <ServiceAttributesFormulas></ServiceAttributesFormulas>
            <ServiceActionsScripts></ServiceActionsScripts>
            <CustomDeviceVariables></CustomDeviceVariables>
            <ShouldDoPeriodicWrite>False</ShouldDoPeriodicWrite>
            <NegateState>False</NegateState>
            <OnStateIconId>355</OnStateIconId>
            <OffStateIconId>356</OffStateIconId>
            <OnStateName>${general_yes}</OnStateName>
            <OffStateName>${general_no}</OffStateName>
            <ReadSwitchState>MODBUSR(C, 0, Bool)</ReadSwitchState>
            <WriteSwitchState>MODBUSW(C, 0, Bool, St)</WriteSwitchState>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>TČ Režim (Interné nastavenie)</Name>
          <Model>ModbusMultiValueSwitch</Model>
          <Id>-8</Id>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>2500</InternalPollInterval>
            <InitializeScript></InitializeScript>
            <ReadScript></ReadScript>
            <PrefetchModeId>0</PrefetchModeId>
            <ServiceAttributesFormulas></ServiceAttributesFormulas>
            <ServiceActionsScripts></ServiceActionsScripts>
            <CustomDeviceVariables></CustomDeviceVariables>
            <ShouldDoPeriodicWrite>False</ShouldDoPeriodicWrite>
            <Value0Index>0</Value0Index>
            <Value1Index>65</Value1Index>
            <Value2Index>66</Value2Index>
            <Value3Index>3</Value3Index>
            <Value4Index>4</Value4Index>
            <Value5Index>69</Value5Index>
            <Value6Index>70</Value6Index>
            <Value7Index>71</Value7Index>
            <Value8Index>72</Value8Index>
            <Value9Index>73</Value9Index>
            <Value0Name>${category_cooling}</Value0Name>
            <Value1Name>1</Value1Name>
            <Value2Name>2</Value2Name>
            <Value3Name>${device_mode_long_Automatic}</Value3Name>
            <Value4Name>${category_heating}</Value4Name>
            <Value5Name>5</Value5Name>
            <Value6Name>6</Value6Name>
            <Value7Name>7</Value7Name>
            <Value8Name>8</Value8Name>
            <Value9Name>9</Value9Name>
            <Value0IconId>2</Value0IconId>
            <Value1IconId>6</Value1IconId>
            <Value2IconId>7</Value2IconId>
            <Value3IconId>113</Value3IconId>
            <Value4IconId>1</Value4IconId>
            <Value5IconId>10</Value5IconId>
            <Value6IconId>11</Value6IconId>
            <Value7IconId>12</Value7IconId>
            <Value8IconId>13</Value8IconId>
            <Value9IconId>14</Value9IconId>
            <OffStateValue>-1</OffStateValue>
            <ReadSwitchState>MODBUSR(H, 0, Int16)</ReadSwitchState>
            <WriteSwitchState>MODBUSW(H, 0, Int16, Mu)</WriteSwitchState>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>TČ Termostat</Name>
          <Model>ModbusThermostat</Model>
          <Id>-9</Id>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>2500</InternalPollInterval>
            <InitializeScript></InitializeScript>
            <ReadScript></ReadScript>
            <PrefetchModeId>0</PrefetchModeId>
            <ServiceAttributesFormulas></ServiceAttributesFormulas>
            <ServiceActionsScripts></ServiceActionsScripts>
            <CustomDeviceVariables></CustomDeviceVariables>
            <ShouldDoPeriodicWrite>False</ShouldDoPeriodicWrite>
            <MinTemperature>5</MinTemperature>
            <MaxTemperature>65</MaxTemperature>
            <ReadCurrentTemperature>var mode := MODBUSR(H, 1, Int16);
var reg := switch(mode, 2, 7, 1, 2, 3);
var temp := MODBUSR(A, reg, Int16) / 10;
if temp &lt;= -64.9
    adderror("Nezapojeny teplomer");
    return(NaN);
else
    return(temp);
end</ReadCurrentTemperature>
            <ReadDesiredTemperature>var Sp := MODBUSR(H, 2, Int16) / 10;

if round(Se) != Sp
    return(Sp);
else
    return(Se);
end</ReadDesiredTemperature>
            <WriteDesiredTemperature>MODBUSW(H, 2, Int16, round(Se) * 10)</WriteDesiredTemperature>
            <ReadHumidity></ReadHumidity>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>TČ Tichy rezim</Name>
          <Model>ModbusSwitch</Model>
          <Id>-10</Id>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>2500</InternalPollInterval>
            <InitializeScript></InitializeScript>
            <ReadScript></ReadScript>
            <PrefetchModeId>0</PrefetchModeId>
            <ServiceAttributesFormulas></ServiceAttributesFormulas>
            <ServiceActionsScripts></ServiceActionsScripts>
            <CustomDeviceVariables></CustomDeviceVariables>
            <ShouldDoPeriodicWrite>False</ShouldDoPeriodicWrite>
            <NegateState>False</NegateState>
            <OnStateIconId>60</OnStateIconId>
            <OffStateIconId>61</OffStateIconId>
            <OnStateName>${general_on}</OnStateName>
            <OffStateName>${general_off}</OffStateName>
            <ReadSwitchState>MODBUSR(C, 2, Bool)</ReadSwitchState>
            <WriteSwitchState>MODBUSW(C, 2, Bool, St)</WriteSwitchState>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>TČ Vonkajšia teplota</Name>
          <Model>ModbusTemperatureSensor</Model>
          <Id>-11</Id>
          <DeviceProperties>
            <DeviceType>3003</DeviceType>
            <InternalPollInterval>15000</InternalPollInterval>
            <InitializeScript></InitializeScript>
            <ReadScript></ReadScript>
            <PrefetchModeId>0</PrefetchModeId>
            <ServiceAttributesFormulas></ServiceAttributesFormulas>
            <ServiceActionsScripts></ServiceActionsScripts>
            <CustomDeviceVariables></CustomDeviceVariables>
            <ReadTemperature>var temp := MODBUSR(A, 12, Int16) / 10;
if temp &lt;= -64.9
    adderror("Nezapojene");
    return(NaN);
else
    return(temp);
end</ReadTemperature>
            <ReadHumidity></ReadHumidity>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>TČ Vstupna voda</Name>
          <Model>ModbusTemperatureSensor</Model>
          <Id>-12</Id>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>15000</InternalPollInterval>
            <InitializeScript></InitializeScript>
            <ReadScript></ReadScript>
            <PrefetchModeId>0</PrefetchModeId>
            <ServiceAttributesFormulas></ServiceAttributesFormulas>
            <ServiceActionsScripts></ServiceActionsScripts>
            <CustomDeviceVariables></CustomDeviceVariables>
            <ReadTemperature>var temp := MODBUSR(A, 2, Int16) / 10;
if temp &lt;= -64.9
    adderror("Nezapojene");
    return(NaN);
else
    return(temp);
end</ReadTemperature>
            <ReadHumidity></ReadHumidity>
          </DeviceProperties>
        </Device>
        <Device>
          <Name>TČ Výstupná voda</Name>
          <Model>ModbusTemperatureSensor</Model>
          <Id>-13</Id>
          <DeviceProperties>
            <DeviceType>0</DeviceType>
            <InternalPollInterval>15000</InternalPollInterval>
            <InitializeScript></InitializeScript>
            <ReadScript></ReadScript>
            <PrefetchModeId>0</PrefetchModeId>
            <ServiceAttributesFormulas></ServiceAttributesFormulas>
            <ServiceActionsScripts></ServiceActionsScripts>
            <CustomDeviceVariables></CustomDeviceVariables>
            <ReadTemperature>var temp := MODBUSR(A, 3, Int16) / 10;
if temp &lt;= -64.9
    adderror("Nezapojene");
    return(NaN);
else
    return(temp);
end</ReadTemperature>
            <ReadHumidity></ReadHumidity>
          </DeviceProperties>
        </Device>
      </Devices>
    </Module>
  </Template>
</Templates>