48Industries
500+Subsystems
1000+Projects
18Years
Lesson 6 of 1516 min

Data points (ACV) and the ENID identifier

Goal

Read the 16-digit ENID structure, define a control variable (ACV), and correctly set its formula, scale, acceptable range, alert limits, and statuses.

Where in the software

«طراحی سیستم» ← «مدیریت ساختار» ← «مدیریت ACVها» — «طراحی سیستم» ← «مدیریت ساختار» ← «مدیریت ACVها» — System Design → Structure Management → ACV Management

Every value that is seen, stored, or alerted on in the digital twin is a "control variable", or ACV: a room's temperature, a phase's voltage, a switch's status, or a computed value. Every ACV is identified by a unique 16-digit ID called an ENID. ACVs for catalog equipment and SNMP points are built automatically; this lesson teaches you how to read them and how to define or manually adjust an ACV.

Get to know the page

The "Control Variable Management" page opens with the subtitle "Manage and configure ACVs for dashboard display".

SectionPurpose
Acv را ایجاد کنید (Acv (Create ACV))Opens the "Define New Control Variable" form
ایجاد انبوه Acv (Acv (Bulk Create ACV)) and تغییر نام انبوه Acv (Acv (Bulk Rename ACV))Group definition or naming
Chipsکل (Total), فعال (Active), داشبورد (Dashboard)
Viewsبر اساس دستگاه (By Device), بر اساس دسته (By Category), نمای جدولی (Table View)
Table view columns#, ENID, Name, Device, Category, Value, Status, Actions
Row actionsکپی ENID (ENID (Copy ENID)) and کپی مقدار (Copy Value)
Table view of Control Variable Management
ACV table view · The ENID, device, and current value columns for each variable

ENID structure

An ENID is exactly 16 digits, built from six parts: SSSS-BBBB-CCC-I-D-PPP. The form's default sample is 1000200003002001, shown in the preview as 1000-2000-030-0-2-001.

PartDigitsMeaningForm field
SSSS1-4Device serial (1000 is the system serial)سریال دستگاه (Device Serial)
BBBB5-8Base: source or protocol typeدسته بندی شناسه (ID Category) and شماره دسته بندی (Category Number)
CCC9-11Category code, e.g., 030 for temperatureنوع شناسه (ID Type)
I120 input, 1 outputورودی یا خروجی (Input or Output)
D130 boolean, 1 integer, 2 decimal, 3 counter, 4 stringنوع داده (Data Type)
PPP14-16Port or point number, 000 to 999شماره پورت (Port Number)

Common base-part (BBBB) values:

BaseMeaningBaseMeaning
0-1999ABM device9004SNMP
2000Variable9005Modbus
2001Date and time9006 / 9007KNX / BACnet
2002Timer9011 / 9012Redfish / OPC UA
4000Person9024 to 9027S7 / FINS / MC / ADS
6000-7399Equipment (6000 UPS, 6120 chiller)9030 / 9074MQTT / M-Bus
9100SCADA9015EtherNet/IP

Step by step

  1. Open the form. In "ACV Management", click Acv را ایجاد کنید. The "Define New Control Variable" form has a four-step wizard, a پیش‌نمایش (Preview) side panel, and a اعتبارسنجی (Validation) bar at the bottom. Top buttons: ذخیره پیش‌نویس (Save Draft), انصراف (Cancel), and ذخیره و ایجاد (Save and Create).
  2. Identification and ENID. In the "Basic Information" section, enter برچسب (Label) (e.g., "Room 101 Temperature"), شماره (Number), and نوع متغیر (Variable Type). Choosing the variable type automatically fills in the ENID components. In the "Identifier Components (ENID)" section, leave the device serial as the equipment's own serial and review the remaining components. The final ENID is shown in the "Unique Identifier (ENID):" box.
    Identification and ENID step of the control variable form
    Identification and ENID · The unique-identifier box and its breakdown in the preview panel
  3. Basic settings. In the "Formula and Values" section: فرمول ورودی (Input Formula), مقدار اولیه (Initial Value), بیشترین مقدار قابل قبول (Maximum Acceptable Value) and کمترین مقدار قابل قبول (Minimum Acceptable Value), شیب (Slope) and افست (Offset). To prevent noisy logging, set the "Change Filter" and حداقل تغییر جهت ثبت در بانک (Minimum Change to Log to Database). For control points, fill in the "SetPoint" section with the setpoint's value, maximum, and minimum.
    Basic settings step
    Basic settings · Input formula, acceptable range, slope, and offset
  4. Limits and alerts. In "General Settings", set کنترل حد (Limit Control) to "yes" and choose نوع اعلام (Alert Type) ("no alert", SMS, Email, Telegram, or "all"). In "Limit Groups" there are five groups: "Normal", "High", "High-High", "Low", and "Low-Low". For each group, set مقدار حد (Limit Value), وضعیت (Status), متن اعلام (Alert Text), and, if needed, خروجی ENID (ENID (Output ENID)).
    Limits and alerts step
    Limit groups · The five limit groups with status and alert text
  5. Advanced settings. Configure "Network Push", "Logging", and "Web Notifications" as needed: events (high limit, low limit, change, offline), channels (browser, sound, Telegram), priority, and a "custom message" of up to 500 characters.
  6. Save. Click ذخیره و ایجاد. The message "Control variable created successfully" is shown; when editing, the message is "Control variable updated successfully".

The value processing chain

  1. The raw value is processed only when it changes; output points are always processed.
  2. If "Input Formula" is filled in, it is evaluated. In the formula, x or me is the raw value, self is the previous final value, and set is the setpoint. A formula error sets the value to ERROR.
  3. For the integer and decimal types: value × slope + offset. For example, a raw value of 100 with slope 0.1 and offset 2 becomes 12.
  4. A result outside the "minimum/maximum acceptable value" becomes ERROR; it is not clamped or truncated.
  5. If "Limit Control" is yes, the value is compared against the limits and the matching group's status is applied.
Status codeNameForm label
0DISABLE0 - Off
1NORMAL1 - On
2CAUTION2 - Warning
3DANGER3 - Danger
4ERROR4 - System error
Behind the scenes: The final value is immediately broadcast on the live channel for dashboards. The current value is saved every 5 seconds, and history is logged in batches every 60 seconds. For a boolean point with limit control, a value of 0 gets the normal status and any other value gets the high-limit status.

Tips and common mistakes

  • An ENID cannot be changed once built. Messages: "ENID must be exactly 16 digits" and "This ENID is already in use".
  • The label must be at least 3 characters, and "Slope cannot be zero"; for no scaling, set slope to 1 and offset to 0.
  • The High-High limit must be greater than the High limit, and Low-Low must be less than Low.
  • The limit groups' "Status" list also shows options 5 through 7 ("maintenance", "startup", "stopped"); choose only statuses 0 through 4, since validation only accepts that range.
  • The alert delay must not exceed 3600 seconds.
  • Don't make the acceptable range too tight; any value outside it becomes ERROR and is shown as an error on the dashboard.

Summary

  • An ENID has 16 digits: serial, base, category, input/output, data type, port.
  • The base shows where the point comes from: 9004 SNMP, 9005 Modbus, 2000 variable.
  • Final value = formula, then raw × slope + offset, then range and limit checks.
  • Statuses are only 0 through 4: disabled, normal, caution, danger, error.

Hands-on exercise on the live demo

On the public demo, do not modify or delete any existing ACVs.

  1. In مدیریت ACVها (ACV (ACV Management)), go to نمای جدولی.
  2. Take an ENID using کپی ENID and break it into its six parts, SSSS-BBBB-CCC-I-D-PPP. Match the base against the lesson's table and say which source or protocol the point comes from.
  3. Open the Acv را ایجاد کنید form, set the slope to zero in "Basic settings", and see the validation message. Then click انصراف without saving.
Open the live demo

Lesson check

Answer at least 3 of 4 correctly to pass.

  1. 1. How many digits does an ENID have?
  2. 2. In the sample ENID 1000200003002001, what does the twelfth digit (0) mean?
  3. 3. The raw value is 100, the slope is 0.1, and the offset is 2. What is the final value?
  4. 4. What happens if a value exceeds the "Maximum Acceptable Value"?