From c02f4106d8f78164fe3a3e455fe36239f8b76f4e Mon Sep 17 00:00:00 2001 From: Chris Feenstra <73584137+cfeenstra1024@users.noreply.github.com> Date: Wed, 13 Mar 2024 04:01:26 +0100 Subject: [PATCH] Kamstrup KMP (#3513) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Chris Feenstra Co-authored-by: H. Árkosi Róbert Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com> --- components/sensor/images/kamstrup_kmp.jpg | Bin 0 -> 47524 bytes .../sensor/images/kamstrup_kmp_holder.svg | 88 + components/sensor/images/kamstrup_kmp_sch.svg | 1968 +++++++++++++++++ components/sensor/kamstrup_kmp.rst | 120 + images/kamstrup_kmp.jpg | Bin 0 -> 25016 bytes index.rst | 1 + 6 files changed, 2177 insertions(+) create mode 100644 components/sensor/images/kamstrup_kmp.jpg create mode 100644 components/sensor/images/kamstrup_kmp_holder.svg create mode 100644 components/sensor/images/kamstrup_kmp_sch.svg create mode 100644 components/sensor/kamstrup_kmp.rst create mode 100644 images/kamstrup_kmp.jpg diff --git a/components/sensor/images/kamstrup_kmp.jpg b/components/sensor/images/kamstrup_kmp.jpg new file mode 100644 index 0000000000000000000000000000000000000000..01ba83db5dcc0c097e3b9e3ef0398e156181fe2a GIT binary patch literal 47524 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 w7R!|Ue@7JbHUkLO^ESEYO^q;x^2QfMDLjV8( literal 0 HcmV?d00001 diff --git a/components/sensor/images/kamstrup_kmp_holder.svg b/components/sensor/images/kamstrup_kmp_holder.svg new file mode 100644 index 000000000..ce1f11dbe --- /dev/null +++ b/components/sensor/images/kamstrup_kmp_holder.svg @@ -0,0 +1,88 @@ + + + plate.dxf - scale = 1.0, origin = (0.0, 0.0), method = manual + + + + + + + + + + + + + + + + + + + + + + diff --git a/components/sensor/images/kamstrup_kmp_sch.svg b/components/sensor/images/kamstrup_kmp_sch.svg new file mode 100644 index 000000000..300c9976e --- /dev/null +++ b/components/sensor/images/kamstrup_kmp_sch.svg @@ -0,0 +1,1968 @@ + + + + + SVG Picture created as Optical Reader.svg date 2022/12/17 18:27:27 + Picture generated by Eeschema-SVG + + + + + + + + + + + + + R3 + + R3 + + + + + 15k + + 15k + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1 + + + 1 + + + + + + + + + 2 + + 2 + + + + + + + + + 3 + + + 3 + + + + + Q2 + + Q2 + + + + + BC547 + + BC547 + + + + + + + + + + + + + + + + + + +3V3 + + +3V3 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + D2 + + D2 + + + + + IR Photo Diode + + + IR Photo Diode + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1 + + + 1 + + + + + + + + + 2 + + 2 + + + + + + + + + 3 + + + 3 + + + + + Q3 + + Q3 + + + + + BC547 + + BC547 + + + + + + + + + + + + + + + + + + + + + R4 + + R4 + + + + + + 10k + + 10k + + + + + + + + + + + + + + + + + + + + + R5 + + R5 + + + + + 10k + + 10k + + + + + + + + + + + + + + + + + + + + + + + + + + + + + D1 + + D1 + + + + + IR LED + + IR LED + + + + + + + + + + + + + + + + + + + + + + R1 + + R1 + + + + + + 100 + + 100 + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1 + + + 1 + + + + + + + + + 2 + + 2 + + + + + + + + + 3 + + + 3 + + + + + Q1 + + Q1 + + + + + + BC557 + + BC557 + + + + + + + + + + + + + + + GND + + GND + + + + + + + + + + + + + + + + + + R2 + + R2 + + + + + 39k + + 39k + + + + + + + + + + + + RX + + RX + + + + + + + + + + TX + + TX + + + + + + + + + + + IR LED and Photo Diode : 940nm + + IR LED and Photo Diode : 940nm + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Optical transceiver + + Optical transceiver + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + SVG Picture created as Optical Reader.svg date 2022/12/17 18:27:27 + + + + diff --git a/components/sensor/kamstrup_kmp.rst b/components/sensor/kamstrup_kmp.rst new file mode 100644 index 000000000..6af5c11e4 --- /dev/null +++ b/components/sensor/kamstrup_kmp.rst @@ -0,0 +1,120 @@ +Kamstrup Meter Protocol [KMP] +============================= + +.. figure:: images/kamstrup_kmp.jpg + :scale: 75% + + Kamstrup MULTICAL 403 + +The Kamstrup Meter Protocol (KMP) is used by certain Kamstrup utility +meters and can be used to read measurements from the meter. + +For example, the Kamstrup MULTICAL 403 is a meter used by some energy +companies in The Netherlands to measure delivered heat by a district heating +network (in Dutch: stadsverwarming). + +Heat is transported using warm water to the consumer. The meter measures +the temperature of the water delivered and returned as well as the water +flow. This is used to calculate the consumed energy, typically in giga +joule (GJ). + +The Kamstrup Multical has an optical interface just above the display +that uses the Kamstrup Meter Protocol for communication. +This component can be used to request measurements from the meter using +the optical interface. + +A :ref:`UART bus ` is required to communicate with the meter. The baudrate + +Configuration +------------- + +.. code-block:: yaml + + # Example configuration entry + sensor: + - platform: kamstrup_kmp + heat_energy: + name: Heat Energy + power: + name: Heat Power + temp_diff: + name: Heat Temperature Difference + flow: + name: Heat Flow + custom: + - name: Custom Heat Energy + command: 0x003C + - name: Custom Heat Power + command: 0x0050 + +Configuration variables: + +- **heat_energy** (*Optional*): Heat energy delivered. + All options from :ref:`Sensor `. +- **power** (*Optional*): Current power delivered. + All options from :ref:`Sensor `. +- **temp1** (*Optional*): Temperatue of sensor 1. + All options from :ref:`Sensor `. +- **temp2** (*Optional*): Temperatue of sensor 2. + All options from :ref:`Sensor `. +- **temp_diff** (*Optional*): Temperature difference between the 2 sensors. + All options from :ref:`Sensor `. +- **flow** (*Optional*): Water flow. + All options from :ref:`Sensor `. +- **volume** (*Optional*): Volume. + All options from :ref:`Sensor `. +- **custom** (*Optional*): List of custom sensors. + + - **command** (**Required**, 2-byte hex): The KMP command code (e.g. 0x003C). + - All other options from :ref:`Sensor `. + +- **update_interval** (*Optional*): The polling interval. Defaults to ``60s``. + +.. note:: + + - The uart baudrate has to be set to 1200 baud and the stop bits to 2. + It is recommended to use pins associated with a hardware UART. + For more information regarding uart configuration, refer to :ref:`UART `. + - Only the provided sensors will appear as sensor, and only those are read from + the meter. + - Custom sensors can be used to receive measurements from the Kampstrup meter, + other than the ones provided natively with this component. To request extra + measurements, add one or multiple sensors to the ``custom`` setting and provide the + KMP command. This command is a 2 byte integer value. For example ``0x003C`` is + the command code for heat energy. In the example above, two custom sensors were + added. These request the Heat Energy and Heat Power respectively. This will be the + same as the native ``heat_energy`` and ``power`` sensors. + - Keep in mind that the meter is battery operated. The more sensors read and the + lower the update interval, the faster the battery will drain. + +Hardware +-------- + +The Kamstrup meter uses an optical interface, just above the display. The required +optical transceiver can be made using the schematic below. Connect the RX and TX +lines to the pins configured under the uart section in the config file. In the +configuration example above, this would be GPIO pin 13 and 15 respectively. + +.. figure:: images/kamstrup_kmp_sch.svg + :scale: 200% + + Optical reader schematic + +To safe energy, the optical interface of the Kamstrup meter is not active by default. +To activate the interface, press a button on the device. The interface will now be +available for a few minutes. To keep the interface alive, magnets must be placed +around the LED / photo diode. The image below shows the arrangement. The green +circles are the LED and photo diode, which must be placed exactly on top of the +optical interface window of the meter. The red circles indicate 6mm neodymium +magnets. + +.. figure:: images/kamstrup_kmp_holder.svg + + Magnet arrangement + +See Also +-------- + +- :ref:`config-sensor` +- `DIY hardware with housing `__ by `Chris Feenstra `__ +- :ghedit:`Edit` diff --git a/images/kamstrup_kmp.jpg b/images/kamstrup_kmp.jpg new file mode 100644 index 0000000000000000000000000000000000000000..4089db5a2feaf3ed0994f5fbadcf9b178946aed0 GIT binary patch literal 25016 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 vsK+?Oq}pQ?R#75*gHPi_N`WDQk`45K2k7NFh