Standard Instruction Set

Last Updated on : 2022-01-13 06:22:21download

This topic describes the standard instruction set of smart water meters (znsb).

Code Name Type Description
switch_code Valve switch Boolean {}
frozen_time Set the monthly and daily freezing time Json {}
active_time Effective time Json {}
alarm_set_water Alarm settings of the water meter Json {}
auto_clean Valve cleaning switch Boolean {}
charge_money Topup Integer {“unit”:“$”,“min”:0,“max”:999999,
“scale”:2,“step”:1}
clear_balance Balance clearing Boolean {}
water_data_daily Daily water consumption Json {}
water_data_month Monthly water consumption Json {}
step_tariff_price Tiered threshold and unit price of water consumption Json {}
switch_prepayment Prepaid function switch Boolean {}

Examples of standard instructions

water_data_month

This instruction indicates the water consumption that is measured by the water meter across months.

  • Description

    • startYear: the year when the statistics starts, in integer type.
    • startMonth: the month when the statistics starts, in integer type.
    • endYear: the year when the statistics ends, in integer type.
    • endMonth: the month when the statistics ends, in integer type.
  • Code example
    Get the total water consumption from December 2020 to January 2021.

    { "code": "water_data_month", "value": { "startYear":20, "startMonth":12, "endYear":21, "endMonth":1 } }

water_data_daily

This instruction indicates the daily water consumption that is measured by the water meter.

  • Description

    • startMonth: the month when the statistics starts, in integer type.
    • startDay: the day when the statistics starts, in integer type.
    • endMonth: the month when the statistics ends, in integer type.
    • endDay: the day when the statistics ends, in integer type.
  • Code example
    Get the total water consumption from January 31 to February 15.

    { "code": "water_data_daily", "value": { "startMonth":1, "startDay":31, "endMonth":2, "endDay":15 } }

frozen_time

Set the monthly and daily freezing time of the water meter. The freezing time is the time for the meter to automatically record the current meter information.

  • Description

    • day: the day of freezing in a month, in integer type. Valid values: 1 to 28. Default value: 1.
    • hour: the time of freezing in a day, in integer type. Valid values: 0 to 23. Default value: 0.
  • Code example
    Record the meter information at 10:00 on the first day of each month.

    { "code": "frozen_time", "value": { "day":1, "hour":10 } }

step_tariff_price

Tiered threshold and unit price of water consumption.

  • Description
    The water consumption threshold is an integer, in cubic meters. The unit price in USD is rounded to two decimal places.

    • firstStep: water consumption threshold of Tier 1.
    • firstPrice: unit price of Tier 1.
    • secondStep: water consumption threshold of Tier 2.
    • secondPrice: unit price of Tier 2.
    • thirdStep: water consumption threshold of Tier 3.
    • thirdPrice: unit price of Tier 3.
  • Code example
    In the following example, the water volume of Tier 1 is 5 cubic meters, and the unit price is USD0.55. The water volume of Tier 2 is 10 cubic meters, and the unit price is USD0.70. The water volume of Tier 3 is 20 cubic meters, and the unit price is USD0.95.

    { "code":"step_tariff_price", "value":{ "firstStep":5, "firstPrice":0.55, "secondStep":10, "secondPrice":0.70, "thirdStep":20, "thirdPrice":0.95 } }

active_time

Set the effective time of new tiered pricing.

  • Description

    • year: the year when the fee takes effect, in integer type.
    • month: the month when the fee takes effect, in integer type.
    • day: the day when the fee takes effect, in integer type.
    • hour: the hour when the fee takes effect, in integer type.
    • minue: the minute when the fee takes effect, in integer type.
  • Code example
    The new fee takes effect at 23:55 on May 18, 2020.

    { "code":"active_time", "value":{ "year":20, "month":5, "day":18, "hour":23, "minute":55 } }

alarm_set_water

Set the alarm rules for the water meter.

  • Description

    • alarmCode: alarm type, [“voltage”,“magnetic”,“valve”,“remove”,“fault”,“balance”,“arrears”,“daily”,“month”].
    • doAction: Boolean type.
      • true: close the valve when an alarm is triggered.
      • false: do not close the valve when an alarm is triggered.
    • threshold: the threshold that is supported by specific alarm types.
  • alarmCode parameter description

    • voltage: the battery low-voltage alarm that is rounded to two decimal places. Valid values: 1.00V to 10.00V. Default value: 2.0V.
    • magnetic: magnetic influence alarm.
    • valve: An alarm is triggered when the valve is not in place. The value is an integer. Valid values: 1% to 100%. Default value: 10%.
    • remove: tamper alarm.
    • fault: the alarm of a meter hardware fault.
    • balance: alarm of insufficient balance (prepaid function) that is rounded to two decimal places. Valid values: USD1.00 to USD200.00. Default value: USD20.00.
    • arrears: the alarm of an outstanding payment.
    • daily: the threshold setting for daily water consumption. Valid values: 0.1 to 10.0 cubic meters that is rounded to one decimal place. Default value: 1.0 cubic meter.
    • month: the threshold setting for monthly water consumption. The value is rounded to two decimal places. Unit: cubic meters. Valid values: 0.1 to 300.0. Default value: 1.0.
  • Code example
    The meter has battery under-voltage alarms and magnetic influence alarms. If the battery voltage is lower than 2.50V, an alarm is triggered and the valve is closed. The valve will not be closed if a magnetic influence alarm is triggered. Other alarms are unavailable.

    { "code":"alarm_set_water", "value":[ { "alarmCode":"voltage", "doAction":true, "threshold":2.5 }, { "alarmCode":"magnetic", "doAction":false } ] }