i18n/Beremiz_ru_RU.po
changeset 2514 756d02cf78db
parent 2351 467f6daff4e9
child 3328 01682a34a558
--- a/i18n/Beremiz_ru_RU.po	Thu Feb 21 10:58:37 2019 +0300
+++ b/i18n/Beremiz_ru_RU.po	Thu Feb 21 11:25:03 2019 +0300
@@ -3,14 +3,19 @@
 # This file is distributed under the same license as the Beremiz package.
 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
 # 
+# Translators:
+# Sergey Surkov <surkovsv93@gmail.com>, 2017
+# zx_alexis <zxalexis@gmail.com>, 2017
+# Andrey Skvortsov <andrej.skvortzov@gmail.com>, 2019
+# 
 #, fuzzy
 msgid ""
 msgstr ""
 "Project-Id-Version: Beremiz\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-06-15 16:39+0300\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: zx_alexis <zxalexis@gmail.com>, 2017\n"
+"POT-Creation-Date: 2018-10-03 14:20+0300\n"
+"PO-Revision-Date: 2017-06-13 13:14+0000\n"
+"Last-Translator: Andrey Skvortsov <andrej.skvortzov@gmail.com>, 2019\n"
 "Language-Team: Russian (Russia) (https://www.transifex.com/beremiz/teams/75746/ru_RU/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -43,37 +48,46 @@
 "\n"
 "Traceback:\n"
 
-#: ../controls/VariablePanel.py:90
+#: ../controls/VariablePanel.py:87
 msgid "   External"
 msgstr "   Внешний"
 
-#: ../controls/VariablePanel.py:89
+#: ../controls/VariablePanel.py:86
 msgid "   InOut"
 msgstr "   Вход/Выход"
 
-#: ../controls/VariablePanel.py:89
+#: ../controls/VariablePanel.py:86
 msgid "   Input"
 msgstr "   Вход"
 
-#: ../controls/VariablePanel.py:90
+#: ../controls/VariablePanel.py:87
 msgid "   Local"
 msgstr "   Локальный"
 
-#: ../controls/VariablePanel.py:89
+#: ../controls/VariablePanel.py:86
 msgid "   Output"
 msgstr "   Выход"
 
-#: ../controls/VariablePanel.py:91
+#: ../controls/VariablePanel.py:88
 msgid "   Temp"
 msgstr "   Временный"
 
-#: ../dialogs/PouTransitionDialog.py:101 ../dialogs/ProjectDialog.py:74
-#: ../dialogs/PouActionDialog.py:99 ../dialogs/PouDialog.py:122
+#: ../etherlab/etherlab.py:301
+#, python-format
+msgid " (rev. %s)"
+msgstr "(ревизия %s)"
+
+#: ../etherlab/CommonEtherCATFunction.py:1599
+msgid " Warning..."
+msgstr " Предупреждение..."
+
+#: ../dialogs/PouTransitionDialog.py:100 ../dialogs/ProjectDialog.py:72
+#: ../dialogs/PouActionDialog.py:99 ../dialogs/PouDialog.py:157
 #, python-format
 msgid " and %s"
 msgstr " и %s"
 
-#: ../ProjectController.py:1182
+#: ../ProjectController.py:1236
 msgid " generation failed !\n"
 msgstr "неудачная генерация кода!\n"
 
@@ -97,7 +111,7 @@
 msgid "\"%s\" can't use itself!"
 msgstr "\"%s\" не может использовать сам себя!!!"
 
-#: ../IDEFrame.py:1688 ../IDEFrame.py:1707
+#: ../IDEFrame.py:1705 ../IDEFrame.py:1724
 #, python-format
 msgid "\"%s\" config already exists!"
 msgstr "Конфигурация \"%s\"  уже существует!!!"
@@ -112,32 +126,32 @@
 msgid "\"%s\" configuration doesn't exist !!!"
 msgstr "конфигурация \"%s\" не существует!!!"
 
-#: ../IDEFrame.py:1638
+#: ../IDEFrame.py:1655
 #, python-format
 msgid "\"%s\" data type already exists!"
 msgstr "Тип данных \"%s\"  уже существует!!!"
 
-#: ../dialogs/PouTransitionDialog.py:112 ../dialogs/BlockPreviewDialog.py:220
+#: ../dialogs/PouTransitionDialog.py:111 ../dialogs/BlockPreviewDialog.py:220
 #: ../dialogs/PouActionDialog.py:110 ../editors/Viewer.py:304
 #: ../editors/Viewer.py:374 ../editors/Viewer.py:398 ../editors/Viewer.py:418
 #: ../editors/TextViewer.py:270 ../editors/TextViewer.py:299
-#: ../controls/VariablePanel.py:425
+#: ../controls/VariablePanel.py:424
 #, python-format
 msgid "\"%s\" element for this pou already exists!"
 msgstr "Элемент с именем \"%s\" уже существует в этом POU!!!"
 
-#: ../BeremizIDE.py:928
+#: ../BeremizIDE.py:925
 #, python-format
 msgid "\"%s\" folder is not a valid Beremiz project\n"
 msgstr "Директория \"%s\" не является проектом Beremiz\n"
 
-#: ../dialogs/SFCStepNameDialog.py:56 ../dialogs/PouTransitionDialog.py:108
+#: ../dialogs/SFCStepNameDialog.py:56 ../dialogs/PouTransitionDialog.py:107
 #: ../dialogs/BlockPreviewDialog.py:209 ../dialogs/PouNameDialog.py:54
-#: ../dialogs/PouActionDialog.py:106 ../dialogs/PouDialog.py:129
-#: ../editors/ResourceEditor.py:483 ../editors/ResourceEditor.py:518
-#: ../editors/DataTypeEditor.py:571 ../editors/DataTypeEditor.py:603
-#: ../editors/CodeFileEditor.py:774 ../controls/VariablePanel.py:787
-#: ../IDEFrame.py:1629
+#: ../dialogs/PouActionDialog.py:106 ../dialogs/PouDialog.py:164
+#: ../etherlab/ConfigEditor.py:973 ../editors/ResourceEditor.py:481
+#: ../editors/ResourceEditor.py:518 ../editors/DataTypeEditor.py:571
+#: ../editors/DataTypeEditor.py:603 ../editors/CodeFileEditor.py:793
+#: ../controls/VariablePanel.py:798 ../IDEFrame.py:1646
 #, python-format
 msgid "\"%s\" is a keyword. It can't be used!"
 msgstr "\"%s\" является ключевым словом и не может быть использован!"
@@ -152,27 +166,28 @@
 msgid "\"%s\" is not a valid folder!"
 msgstr "\"%s\" не является директорией!"
 
-#: ../dialogs/SFCStepNameDialog.py:54 ../dialogs/PouTransitionDialog.py:106
+#: ../dialogs/SFCStepNameDialog.py:54 ../dialogs/PouTransitionDialog.py:105
 #: ../dialogs/BlockPreviewDialog.py:205 ../dialogs/PouNameDialog.py:52
-#: ../dialogs/PouActionDialog.py:104 ../dialogs/PouDialog.py:127
-#: ../editors/ResourceEditor.py:481 ../editors/ResourceEditor.py:516
-#: ../editors/DataTypeEditor.py:601 ../editors/CodeFileEditor.py:772
-#: ../controls/VariablePanel.py:785 ../IDEFrame.py:1627
+#: ../dialogs/PouActionDialog.py:104 ../dialogs/PouDialog.py:162
+#: ../etherlab/ConfigEditor.py:971 ../editors/ResourceEditor.py:479
+#: ../editors/ResourceEditor.py:516 ../editors/DataTypeEditor.py:601
+#: ../editors/CodeFileEditor.py:791 ../controls/VariablePanel.py:796
+#: ../IDEFrame.py:1644
 #, python-format
 msgid "\"%s\" is not a valid identifier!"
 msgstr "\"%s\" неверный идентификатор!"
 
-#: ../IDEFrame.py:2436
+#: ../IDEFrame.py:2454
 #, python-format
 msgid "\"%s\" is used by one or more POUs. Do you wish to continue?"
 msgstr "\"%s\" используется одним или более POU. Продолжить?"
 
-#: ../dialogs/BlockPreviewDialog.py:213 ../dialogs/PouDialog.py:131
+#: ../dialogs/BlockPreviewDialog.py:213 ../dialogs/PouDialog.py:166
 #: ../editors/Viewer.py:302 ../editors/Viewer.py:359 ../editors/Viewer.py:389
 #: ../editors/Viewer.py:411 ../editors/TextViewer.py:268
 #: ../editors/TextViewer.py:297 ../editors/TextViewer.py:351
-#: ../editors/TextViewer.py:374 ../controls/VariablePanel.py:364
-#: ../IDEFrame.py:1647
+#: ../editors/TextViewer.py:374 ../controls/VariablePanel.py:363
+#: ../IDEFrame.py:1664
 #, python-format
 msgid "\"%s\" pou already exists!"
 msgstr "POU \"%s\" уже существует!"
@@ -201,7 +216,7 @@
 "\"%s\" не является корректной размерностью массива! Правое значение должно "
 "быть больше левого."
 
-#: ../PLCGenerator.py:1133
+#: ../PLCGenerator.py:1182
 #, python-brace-format
 msgid "\"{a1}\" function cancelled in \"{a2}\" POU: No input connected"
 msgstr "Функция \"{a1}\" не используется  в POU \"{a2}\": входы не подключены"
@@ -221,35 +236,35 @@
 msgid "\"{a1}\" resource doesn't exist in \"{a2}\" configuration !!!"
 msgstr "Ресурс \"{a1}\"  отсутствует в конфигурации \"{a2}\"!!!"
 
-#: ../controls/DebugVariablePanel/DebugVariablePanel.py:580
+#: ../controls/DebugVariablePanel/DebugVariablePanel.py:559
 #, python-format
 msgid "%03gms"
 msgstr "%03gмс"
 
-#: ../controls/DebugVariablePanel/DebugVariablePanel.py:571
+#: ../controls/DebugVariablePanel/DebugVariablePanel.py:550
 #, python-format
 msgid "%dd"
 msgstr "%dд"
 
-#: ../controls/DebugVariablePanel/DebugVariablePanel.py:61
-#: ../controls/DebugVariablePanel/DebugVariablePanel.py:572
+#: ../controls/DebugVariablePanel/DebugVariablePanel.py:189
+#: ../controls/DebugVariablePanel/DebugVariablePanel.py:551
 #, python-format
 msgid "%dh"
 msgstr "%dч"
 
-#: ../controls/DebugVariablePanel/DebugVariablePanel.py:60
-#: ../controls/DebugVariablePanel/DebugVariablePanel.py:573
+#: ../controls/DebugVariablePanel/DebugVariablePanel.py:188
+#: ../controls/DebugVariablePanel/DebugVariablePanel.py:552
 #, python-format
 msgid "%dm"
 msgstr "%dм"
 
-#: ../controls/DebugVariablePanel/DebugVariablePanel.py:58
+#: ../controls/DebugVariablePanel/DebugVariablePanel.py:186
 #, python-format
 msgid "%dms"
 msgstr "%dмс"
 
-#: ../controls/DebugVariablePanel/DebugVariablePanel.py:59
-#: ../controls/DebugVariablePanel/DebugVariablePanel.py:574
+#: ../controls/DebugVariablePanel/DebugVariablePanel.py:187
+#: ../controls/DebugVariablePanel/DebugVariablePanel.py:553
 #, python-format
 msgid "%ds"
 msgstr "%dc"
@@ -282,7 +297,12 @@
 msgid "%s body don't have text!"
 msgstr "Тело %s не содержит никакой текст!"
 
-#: ../IDEFrame.py:388
+#: ../etherlab/ConfigEditor.py:856
+#, python-format
+msgid "%s's nodes"
+msgstr "узлы %s"
+
+#: ../IDEFrame.py:391
 msgid "&Add Element"
 msgstr "&Добавить элемент"
 
@@ -291,35 +311,35 @@
 msgid "&Close"
 msgstr "&Закрыть"
 
-#: ../IDEFrame.py:361
+#: ../IDEFrame.py:364
 msgid "&Configuration"
 msgstr "&Конфигурация"
 
-#: ../IDEFrame.py:350
+#: ../IDEFrame.py:353
 msgid "&Data Type"
 msgstr "&Типы данных"
 
-#: ../IDEFrame.py:392
+#: ../IDEFrame.py:395
 msgid "&Delete"
 msgstr "&Удалить"
 
-#: ../IDEFrame.py:342
+#: ../IDEFrame.py:345
 msgid "&Display"
 msgstr "&Вид"
 
-#: ../IDEFrame.py:341
+#: ../IDEFrame.py:344
 msgid "&Edit"
 msgstr "&Редактировать"
 
-#: ../IDEFrame.py:340
+#: ../IDEFrame.py:343
 msgid "&File"
 msgstr "&Файл"
 
-#: ../IDEFrame.py:352
+#: ../IDEFrame.py:355
 msgid "&Function"
 msgstr "&Функции"
 
-#: ../IDEFrame.py:343
+#: ../IDEFrame.py:346
 msgid "&Help"
 msgstr "&Помощь"
 
@@ -327,7 +347,7 @@
 msgid "&License"
 msgstr "&Лицензия"
 
-#: ../IDEFrame.py:356
+#: ../IDEFrame.py:359
 msgid "&Program"
 msgstr "&Программы"
 
@@ -339,10 +359,14 @@
 msgid "&Recent Projects"
 msgstr "&Недавние проекты"
 
-#: ../IDEFrame.py:358
+#: ../IDEFrame.py:361
 msgid "&Resource"
 msgstr "&Ресурсы"
 
+#: ../etherlab/ConfigEditor.py:450
+msgid "'Read from' and 'Write to' variables types are not compatible"
+msgstr "Типы переменных «Чтение из» и «Запись в» несовместимы"
+
 #: ../controls/SearchResultPanel.py:247
 #, python-brace-format
 msgid "'{a1}' - {a2} match in project"
@@ -353,7 +377,7 @@
 msgid "'{a1}' - {a2} matches in project"
 msgstr "'{a1}' - {a2} совпадений в проекте"
 
-#: ../connectors/PYRO/__init__.py:98
+#: ../connectors/PYRO/__init__.py:99
 #, python-brace-format
 msgid "'{a1}' is located at {a2}\n"
 msgstr "'{a1}' находится {a2}\n"
@@ -363,8 +387,8 @@
 msgid "(%d matches)"
 msgstr "(%d совпадений)"
 
-#: ../dialogs/PouTransitionDialog.py:103 ../dialogs/PouActionDialog.py:101
-#: ../dialogs/PouDialog.py:124
+#: ../dialogs/PouTransitionDialog.py:102 ../dialogs/PouActionDialog.py:101
+#: ../dialogs/PouDialog.py:159
 #, python-format
 msgid ", %s"
 msgstr ", %s"
@@ -389,8 +413,8 @@
 msgid "1s"
 msgstr "1 сек"
 
-#: ../dialogs/PouDialog.py:133 ../IDEFrame.py:1650 ../IDEFrame.py:1696
-#: ../IDEFrame.py:1715
+#: ../dialogs/PouDialog.py:168 ../IDEFrame.py:1667 ../IDEFrame.py:1713
+#: ../IDEFrame.py:1732
 #, python-format
 msgid ""
 "A POU has an element named \"%s\". This could cause a conflict. Do you wish "
@@ -399,9 +423,9 @@
 "В POU присутствует элемент с именем \"%s\". Это может вызвать конфликт. "
 "Хотите продолжить?"
 
-#: ../dialogs/SFCStepNameDialog.py:58 ../dialogs/PouTransitionDialog.py:110
+#: ../dialogs/SFCStepNameDialog.py:58 ../dialogs/PouTransitionDialog.py:109
 #: ../dialogs/PouNameDialog.py:56 ../dialogs/PouActionDialog.py:108
-#: ../controls/VariablePanel.py:789 ../IDEFrame.py:1664 ../IDEFrame.py:1677
+#: ../controls/VariablePanel.py:800 ../IDEFrame.py:1681 ../IDEFrame.py:1694
 #, python-format
 msgid "A POU named \"%s\" already exists!"
 msgstr "POU с именем \"%s\" уже существует!"
@@ -411,21 +435,21 @@
 msgid "A child named \"{a1}\" already exists -> \"{a2}\"\n"
 msgstr "Дочерний элемент с именем \"{a1}\" уже существует -> \"{a2}\"\n"
 
-#: ../dialogs/BrowseLocationsDialog.py:229
+#: ../dialogs/BrowseLocationsDialog.py:228
 msgid "A location must be selected!"
 msgstr "Необходимо выбрать размещение!"
 
-#: ../editors/ResourceEditor.py:485
+#: ../editors/ResourceEditor.py:483
 msgid "A task with the same name already exists!"
 msgstr "Задача с таким именем уже существует!"
 
-#: ../dialogs/SFCStepNameDialog.py:60 ../controls/VariablePanel.py:791
-#: ../IDEFrame.py:1666 ../IDEFrame.py:1679
+#: ../dialogs/SFCStepNameDialog.py:60 ../controls/VariablePanel.py:802
+#: ../IDEFrame.py:1683 ../IDEFrame.py:1696
 #, python-format
 msgid "A variable with \"%s\" as name already exists in this pou!"
 msgstr "Переменная с именем \"%s\" уже существует в этом POU!"
 
-#: ../editors/CodeFileEditor.py:778
+#: ../editors/CodeFileEditor.py:797
 #, python-format
 msgid "A variable with \"%s\" as name already exists!"
 msgstr "Переменная с именем \"%s\" уже существует!"
@@ -438,11 +462,15 @@
 msgid "Absolute number"
 msgstr "Абсолютный номер"
 
+#: ../etherlab/ConfigEditor.py:48
+msgid "Access"
+msgstr "Доступ"
+
 #: ../dialogs/SFCStepDialog.py:75 ../dialogs/ActionBlockDialog.py:47
 msgid "Action"
 msgstr "Действие"
 
-#: ../editors/Viewer.py:653 ../editors/Viewer.py:2427
+#: ../editors/Viewer.py:656 ../editors/Viewer.py:2429
 msgid "Action Block"
 msgstr "Блок действия"
 
@@ -467,56 +495,64 @@
 msgid "Actions:"
 msgstr "Действия:"
 
-#: ../editors/Viewer.py:473
+#: ../editors/Viewer.py:484
 msgid "Active"
 msgstr "Активный"
 
 #: ../canfestival/SlaveEditor.py:84 ../canfestival/NetworkEditor.py:108
-#: ../BeremizIDE.py:1001 ../editors/Viewer.py:686
+#: ../BeremizIDE.py:998 ../editors/Viewer.py:689
 msgid "Add"
 msgstr "Добавить"
 
-#: ../IDEFrame.py:1924 ../IDEFrame.py:1959
+#: ../IDEFrame.py:1941 ../IDEFrame.py:1976
 msgid "Add Action"
 msgstr "Добавить действие"
 
-#: ../features.py:33
+#: ../features.py:22
 msgid "Add C code accessing located variables synchronously"
 msgstr "Добавить C-код с синхронным доступом к локальным переменным"
 
-#: ../IDEFrame.py:1907
+#: ../IDEFrame.py:1924
 msgid "Add Configuration"
 msgstr "Добавить конфигурацию"
 
-#: ../IDEFrame.py:1887
+#: ../IDEFrame.py:1904
 msgid "Add DataType"
 msgstr "Добавить тип данных"
 
-#: ../editors/Viewer.py:609
+#: ../editors/Viewer.py:612
 msgid "Add Divergence Branch"
 msgstr "Добавить ветвление"
 
+#: ../etherlab/EthercatMaster.py:297
+msgid "Add Ethercat Slave"
+msgstr "Добавить Ethercat устройство"
+
+#: ../etherlab/EthercatMaster.py:297
+msgid "Add Ethercat Slave to Master"
+msgstr "Добавить Ethercat устройство к мастеру"
+
 #: ../dialogs/DiscoveryDialog.py:121
 msgid "Add IP"
 msgstr "Добавить IP адрес"
 
-#: ../IDEFrame.py:1895
+#: ../IDEFrame.py:1912
 msgid "Add POU"
 msgstr "Добавить POU"
 
-#: ../features.py:34
+#: ../features.py:23
 msgid "Add Python code executed asynchronously"
 msgstr "Добавить асинхронно вызываемый код на Python"
 
-#: ../IDEFrame.py:1935 ../IDEFrame.py:1985
+#: ../IDEFrame.py:1952 ../IDEFrame.py:2002
 msgid "Add Resource"
 msgstr "Добавить ресурс"
 
-#: ../IDEFrame.py:1913 ../IDEFrame.py:1956
+#: ../IDEFrame.py:1930 ../IDEFrame.py:1973
 msgid "Add Transition"
 msgstr "Добавить переход"
 
-#: ../editors/Viewer.py:596
+#: ../editors/Viewer.py:599
 msgid "Add Wire Segment"
 msgstr "Добавить провод"
 
@@ -524,7 +560,7 @@
 msgid "Add a new initial step"
 msgstr "Добавить новый исходный шаг"
 
-#: ../editors/Viewer.py:2791 ../editors/SFCViewer.py:784
+#: ../editors/Viewer.py:2790 ../editors/SFCViewer.py:784
 msgid "Add a new jump"
 msgstr "Добавить новый безусловный переход"
 
@@ -532,7 +568,7 @@
 msgid "Add a new step"
 msgstr "Добавить новый шаг"
 
-#: ../features.py:35
+#: ../features.py:24
 msgid "Add a simple WxGlade based GUI."
 msgstr "Добавить простой GUI на WxGlade "
 
@@ -544,22 +580,49 @@
 msgid "Add element"
 msgstr "Добавить элемент"
 
-#: ../editors/ResourceEditor.py:283
+#: ../etherlab/ConfigEditor.py:1388
+msgid "Add file from ESI files database"
+msgstr "Добавить файл из базы данных ESI файлов"
+
+#: ../etherlab/ConfigEditor.py:1360
+msgid "Add file to project"
+msgstr "Добавить файл в проект"
+
+#: ../editors/ResourceEditor.py:281
 msgid "Add instance"
 msgstr "Добавить экземпляр"
 
+#: ../etherlab/ConfigEditor.py:652
+msgid "Add process variable"
+msgstr "Добавить переменную"
+
 #: ../canfestival/NetworkEditor.py:110
 msgid "Add slave"
 msgstr "Добавить слэйв"
 
-#: ../editors/ResourceEditor.py:252
+#: ../etherlab/ConfigEditor.py:679
+msgid "Add startup service variable"
+msgstr "Добавить служебную переменную запуска"
+
+#: ../editors/ResourceEditor.py:250
 msgid "Add task"
 msgstr "Добавить задачу"
 
-#: ../editors/CodeFileEditor.py:654 ../controls/VariablePanel.py:481
+#: ../bacnet/BacnetSlaveEditor.py:811 ../editors/CodeFileEditor.py:672
+#: ../controls/VariablePanel.py:483
 msgid "Add variable"
 msgstr "Добавить переменную"
 
+#: ../etherlab/etherlab.py:186
+msgid ""
+"Adding a PDO not defined in default configuration\n"
+"for mapping needed location variables\n"
+"(1 if possible)"
+msgstr ""
+"Добавление PDO, не определеного в конфигурации по умолчанию,\n"
+"для отображения необходимых переменных\n"
+"(1, если возможно)"
+
 #: ../plcopen/iec_std.csv:33
 msgid "Addition"
 msgstr "Сложение"
@@ -568,27 +631,28 @@
 msgid "Additional function blocks"
 msgstr "Дополнительные функциональные блоки"
 
-#: ../editors/Viewer.py:669
+#: ../editors/Viewer.py:672
 msgid "Adjust Block Size"
 msgstr "Скорректировать размер элемента"
 
-#: ../editors/Viewer.py:1720
+#: ../editors/Viewer.py:1722
 msgid "Alignment"
 msgstr "Выравнивание"
 
 #: ../dialogs/BrowseLocationsDialog.py:42
-#: ../dialogs/BrowseLocationsDialog.py:53
-#: ../dialogs/BrowseLocationsDialog.py:152
-#: ../dialogs/BrowseLocationsDialog.py:155 ../controls/LogViewer.py:307
-#: ../controls/VariablePanel.py:88
+#: ../dialogs/BrowseLocationsDialog.py:50
+#: ../dialogs/BrowseLocationsDialog.py:151
+#: ../dialogs/BrowseLocationsDialog.py:154 ../etherlab/ConfigEditor.py:65
+#: ../etherlab/ConfigEditor.py:853 ../controls/LogViewer.py:307
+#: ../controls/VariablePanel.py:85
 msgid "All"
 msgstr "Все"
 
-#: ../editors/FileManagementPanel.py:37
+#: ../editors/FileManagementPanel.py:51
 msgid "All files (*.*)|*.*|CSV files (*.csv)|*.csv"
 msgstr "Все файлы  (*.*)|*.*|CSV files (*.csv)|*.csv"
 
-#: ../ProjectController.py:1670
+#: ../ProjectController.py:1752
 msgid "Already connected. Please disconnect\n"
 msgstr "Уже подключен. Пожалуйста, отключитесь сначала.\n"
 
@@ -601,6 +665,23 @@
 msgid "An instance with the same name already exists!"
 msgstr "Экземпляр задачи с таким именем уже существует!"
 
+#: ../etherlab/ConfigEditor.py:975
+#, python-format
+msgid "An variable named \"%s\" already exists!"
+msgstr "Переменная с именем «%s» уже существует!"
+
+#: ../bacnet/BacnetSlaveEditor.py:935
+msgid "Analog Input Objects"
+msgstr "Объекты аналогового ввода"
+
+#: ../bacnet/BacnetSlaveEditor.py:934
+msgid "Analog Output Objects"
+msgstr "Объекты аналогового вывода"
+
+#: ../bacnet/BacnetSlaveEditor.py:933
+msgid "Analog Value Objects"
+msgstr "Объекты аналогового значения"
+
 #: ../dialogs/ConnectionDialog.py:103
 msgid "Apply name modification to all continuations with the same name"
 msgstr "Переименовать все цепи с тем же самым именем"
@@ -622,7 +703,7 @@
 msgstr "Математика"
 
 #: ../editors/DataTypeEditor.py:60 ../editors/DataTypeEditor.py:649
-#: ../controls/VariablePanel.py:872
+#: ../controls/VariablePanel.py:883
 msgid "Array"
 msgstr "Массив"
 
@@ -630,22 +711,34 @@
 msgid "Assignment"
 msgstr "Присвоение"
 
-#: ../dialogs/FBDVariableDialog.py:226
+#: ../dialogs/FBDVariableDialog.py:227
 msgid "At least a variable or an expression must be selected!"
 msgstr "Переменная или выражение должно быть выбрано!"
 
-#: ../controls/ProjectPropertiesPanel.py:111
+#: ../controls/ProjectPropertiesPanel.py:113
 msgid "Author"
 msgstr "Автор"
 
-#: ../controls/ProjectPropertiesPanel.py:108
+#: ../controls/ProjectPropertiesPanel.py:110
 msgid "Author Name (optional):"
 msgstr "Имя автора (опционально):"
 
+#: ../etherlab/EthercatCIA402Slave.py:125
+msgid "Axis Pos"
+msgstr "Axis Pos"
+
+#: ../etherlab/EthercatCIA402Slave.py:118
+msgid "Axis Ref"
+msgstr "Axis Ref"
+
 #: ../dialogs/FindInPouDialog.py:80
 msgid "Backward"
 msgstr "Назад"
 
+#: ../features.py:19
+msgid "Bacnet support"
+msgstr "Поддержка Bacnet"
+
 #: ../canfestival/config_utils.py:365 ../canfestival/config_utils.py:672
 #, python-format
 msgid "Bad location size : %s"
@@ -656,14 +749,30 @@
 msgid "Base Type:"
 msgstr "Базовый тип:"
 
-#: ../editors/DataTypeEditor.py:639 ../controls/VariablePanel.py:830
+#: ../editors/DataTypeEditor.py:639 ../controls/VariablePanel.py:841
 msgid "Base Types"
 msgstr "Базовые типы"
 
-#: ../BeremizIDE.py:483
+#: ../BeremizIDE.py:479
 msgid "Beremiz"
 msgstr "Beremiz"
 
+#: ../runtime/NevowServer.py:201
+msgid "Beremiz Runtime Settings"
+msgstr "Настройки системы исполнения Beremiz"
+
+#: ../bacnet/BacnetSlaveEditor.py:938
+msgid "Binary Input Objects"
+msgstr "Дискретные входные объекты"
+
+#: ../bacnet/BacnetSlaveEditor.py:937
+msgid "Binary Output Objects"
+msgstr "Дискретные выходные объекты"
+
+#: ../bacnet/BacnetSlaveEditor.py:936
+msgid "Binary Value Objects"
+msgstr "Дискретные объекты "
+
 #: ../plcopen/iec_std.csv:70
 msgid "Binary selection (1 of 2)"
 msgstr "Бинарный выбор (1 или 2)"
@@ -692,7 +801,7 @@
 msgid "Bitwise inverting"
 msgstr "Битовое НЕ"
 
-#: ../editors/Viewer.py:621 ../editors/Viewer.py:2440
+#: ../editors/Viewer.py:624 ../editors/Viewer.py:2442
 msgid "Block"
 msgstr "Блок"
 
@@ -704,11 +813,11 @@
 msgid "Block name"
 msgstr "Имя блока"
 
-#: ../editors/Viewer.py:586
+#: ../editors/Viewer.py:589
 msgid "Bottom"
 msgstr "Низ"
 
-#: ../ProjectController.py:1400
+#: ../runtime/PlcStatus.py:11
 msgid "Broken"
 msgstr "Ошибка"
 
@@ -717,27 +826,27 @@
 msgid "Browse %s values library"
 msgstr "Просмотр %s значений библиотеки"
 
-#: ../dialogs/BrowseLocationsDialog.py:72
+#: ../dialogs/BrowseLocationsDialog.py:69
 msgid "Browse Locations"
 msgstr "Просмотр доступных МЭК-адресов"
 
-#: ../ProjectController.py:1815
+#: ../ProjectController.py:1898
 msgid "Build"
 msgstr "Сборка"
 
-#: ../ProjectController.py:1335
+#: ../ProjectController.py:1397
 msgid "Build directory already clean\n"
 msgstr "Директория сборки уже пуста\n"
 
-#: ../ProjectController.py:1816
+#: ../ProjectController.py:1899
 msgid "Build project into build folder"
 msgstr "Сборка проекта в директории сборки"
 
-#: ../ProjectController.py:1108
+#: ../ProjectController.py:1155
 msgid "C Build crashed !\n"
 msgstr "Крэш во время сборки C-кода!\n"
 
-#: ../ProjectController.py:1105
+#: ../ProjectController.py:1152
 msgid "C Build failed.\n"
 msgstr "Ошибка сборки C-кода.\n"
 
@@ -745,7 +854,7 @@
 msgid "C code"
 msgstr "C код "
 
-#: ../ProjectController.py:1186
+#: ../ProjectController.py:1240
 msgid "C code generated successfully.\n"
 msgstr "C-код успешно сгенерирован.\n"
 
@@ -758,7 +867,7 @@
 msgid "C compilation of %s failed.\n"
 msgstr "Ошибка компиляции %s.\n"
 
-#: ../features.py:33
+#: ../features.py:22
 msgid "C extension"
 msgstr "С-расширение"
 
@@ -774,16 +883,20 @@
 msgid "CANOpen slave"
 msgstr "CANOpen ведущий"
 
-#: ../features.py:31
+#: ../features.py:18
 msgid "CANopen support"
 msgstr "Поддержка CANOpen"
 
+#: ../etherlab/ConfigEditor.py:858
+msgid "CIA402 nodes"
+msgstr "Узлы CIA402"
+
 #: ../plcopen/plcopen.py:1839 ../plcopen/plcopen.py:1853
 #: ../plcopen/plcopen.py:1878 ../plcopen/plcopen.py:1894
 msgid "Can only generate execution order on FBD networks!"
 msgstr "Можно сгенерировать порядок исполнения только для FBD!"
 
-#: ../controls/VariablePanel.py:291
+#: ../controls/VariablePanel.py:290
 msgid "Can only give a location to local or global variables"
 msgstr "Можно задать адреса только локальным или глобальным переменным"
 
@@ -792,7 +905,7 @@
 msgid "Can't generate program to file %s!"
 msgstr "Нельзя сгенерировать программу в файл %s!"
 
-#: ../controls/VariablePanel.py:289
+#: ../controls/VariablePanel.py:288
 msgid "Can't give a location to a function block instance"
 msgstr "Нельзя задать размещение для экземпляра функционального блока"
 
@@ -801,7 +914,7 @@
 msgid "Can't save project to file %s!"
 msgstr "Нельзя сохранить проект в файл %s!"
 
-#: ../controls/VariablePanel.py:339
+#: ../controls/VariablePanel.py:338
 msgid "Can't set an initial value to a function block instance"
 msgstr "Нельзя задать исходное значение экземпляру функционального блока"
 
@@ -815,11 +928,11 @@
 msgid "Cannot find lower free IEC channel than %d\n"
 msgstr "Не удалось найти свободный МЭК-канал с номером меньше, чем %d\n"
 
-#: ../connectors/PYRO/__init__.py:139
+#: ../connectors/PYRO/__init__.py:140
 msgid "Cannot get PLC status - connection failed.\n"
 msgstr "Невозможно получить состояние ПЛК - ошибка подключения.\n"
 
-#: ../ProjectController.py:967
+#: ../ProjectController.py:1013
 msgid "Cannot open/parse VARIABLES.csv!\n"
 msgstr "Не удалось открыть/прочитать VARIABLES.csv\n"
 
@@ -832,7 +945,7 @@
 "Невозможно установить битовое смещение для не булевой переменной '{a1}' "
 "(ID:{a2},Idx:{a3},sIdx:{a4}))"
 
-#: ../ProjectController.py:1761
+#: ../ProjectController.py:1842
 msgid "Cannot transfer while PLC is running. Stop it now?"
 msgstr "Передача запрещена во время работы ПЛК. Остановить?"
 
@@ -840,27 +953,27 @@
 msgid "Case sensitive"
 msgstr "Регистрозависимый"
 
-#: ../editors/Viewer.py:581
+#: ../editors/Viewer.py:584
 msgid "Center"
 msgstr "Центр"
 
-#: ../Beremiz_service.py:276
+#: ../Beremiz_service.py:289
 msgid "Change IP of interface to bind"
 msgstr "Сменить IP-адрес интерфейса для привязки сокета"
 
-#: ../Beremiz_service.py:275
+#: ../Beremiz_service.py:288
 msgid "Change Name"
 msgstr "Сменить имя"
 
-#: ../IDEFrame.py:1977
+#: ../IDEFrame.py:1994
 msgid "Change POU Type To"
 msgstr "Сменить тип POU на"
 
-#: ../Beremiz_service.py:277
+#: ../Beremiz_service.py:290
 msgid "Change Port Number"
 msgstr "Сменить номер порта"
 
-#: ../Beremiz_service.py:278
+#: ../Beremiz_service.py:291
 msgid "Change working directory"
 msgstr "Сменить рабочую директорию"
 
@@ -872,16 +985,21 @@
 msgid "Choose a SVG file"
 msgstr "Выберите SVG-файл"
 
-#: ../ProjectController.py:561
+#: ../etherlab/EtherCATManagementEditor.py:911
+#: ../etherlab/EtherCATManagementEditor.py:1306
+msgid "Choose a binary file"
+msgstr "Выберите двоичный файл"
+
+#: ../ProjectController.py:582
 msgid "Choose a directory to save project"
 msgstr "Выберите директорию, чтобы сохранить проект"
 
-#: ../canfestival/canfestival.py:171 ../PLCOpenEditor.py:276
-#: ../PLCOpenEditor.py:308 ../PLCOpenEditor.py:357
+#: ../canfestival/canfestival.py:171 ../bacnet/bacnet.py:434
+#: ../PLCOpenEditor.py:276 ../PLCOpenEditor.py:308 ../PLCOpenEditor.py:357
 msgid "Choose a file"
 msgstr "Выберите файл"
 
-#: ../BeremizIDE.py:900
+#: ../BeremizIDE.py:897
 msgid "Choose a project"
 msgstr "Выберите проект"
 
@@ -890,19 +1008,23 @@
 msgid "Choose a value for %s:"
 msgstr "Выберите значение для %s:"
 
-#: ../Beremiz_service.py:333
+#: ../Beremiz_service.py:346
 msgid "Choose a working directory "
 msgstr "Выберите рабочую директорию"
 
-#: ../BeremizIDE.py:864
+#: ../etherlab/ConfigEditor.py:1234
+msgid "Choose an XML file"
+msgstr "Выбирете XML файл"
+
+#: ../BeremizIDE.py:861
 msgid "Choose an empty directory for new project"
 msgstr "Выберите пустой каталог для проекта"
 
-#: ../ProjectController.py:468
+#: ../ProjectController.py:483
 msgid "Chosen folder doesn't contain a program. It's not a valid project!"
 msgstr "Выбранная директория не содержит программы. Это некорректный проект!"
 
-#: ../ProjectController.py:435
+#: ../ProjectController.py:450
 msgid "Chosen folder isn't empty. You can't use it for a new project!"
 msgstr ""
 "Выбранная директория не пуста и не может использоваться для нового проекта!"
@@ -911,15 +1033,15 @@
 msgid "Class"
 msgstr "Класс"
 
-#: ../controls/VariablePanel.py:472
+#: ../controls/VariablePanel.py:474
 msgid "Class Filter:"
 msgstr "Фильтр класса:"
 
-#: ../dialogs/FBDVariableDialog.py:74
+#: ../dialogs/FBDVariableDialog.py:75
 msgid "Class:"
 msgstr "Класс:"
 
-#: ../ProjectController.py:1821
+#: ../ProjectController.py:1904
 msgid "Clean"
 msgstr "Очистить"
 
@@ -927,32 +1049,33 @@
 msgid "Clean log messages"
 msgstr "Очистить лог"
 
-#: ../ProjectController.py:1822
+#: ../ProjectController.py:1905
 msgid "Clean project build folder"
 msgstr "Очистить директорию сборки проекта"
 
-#: ../ProjectController.py:1332
+#: ../ProjectController.py:1394
 msgid "Cleaning the build directory\n"
 msgstr "Очистка директории сборки\n"
 
-#: ../IDEFrame.py:437
+#: ../IDEFrame.py:439
 msgid "Clear Errors"
 msgstr "Очистить ошибки"
 
-#: ../editors/Viewer.py:680
+#: ../editors/Viewer.py:683
 msgid "Clear Execution Order"
 msgstr "Очистить порядок исполнения"
 
 #: ../dialogs/SearchInProjectDialog.py:107 ../dialogs/FindInPouDialog.py:112
+#: ../etherlab/ConfigEditor.py:1361
 msgid "Close"
 msgstr "Закрыть"
 
-#: ../BeremizIDE.py:627 ../PLCOpenEditor.py:183
+#: ../BeremizIDE.py:623 ../PLCOpenEditor.py:183
 msgid "Close Application"
 msgstr "Закрыть приложение"
 
-#: ../BeremizIDE.py:253 ../BeremizIDE.py:566 ../PLCOpenEditor.py:81
-#: ../IDEFrame.py:1040
+#: ../BeremizIDE.py:253 ../BeremizIDE.py:562 ../PLCOpenEditor.py:81
+#: ../IDEFrame.py:1053
 msgid "Close Project"
 msgstr "Закрыть проект"
 
@@ -960,28 +1083,32 @@
 msgid "Close Tab"
 msgstr "Закрыть вкладку"
 
-#: ../editors/Viewer.py:638 ../editors/Viewer.py:2448
+#: ../editors/Viewer.py:641 ../editors/Viewer.py:2450
 msgid "Coil"
 msgstr "Катушка"
 
-#: ../editors/Viewer.py:659 ../editors/LDViewer.py:517
+#: ../editors/Viewer.py:662 ../editors/LDViewer.py:517
 msgid "Comment"
 msgstr "Комментарий"
 
+#: ../etherlab/ConfigEditor.py:66
+msgid "Communication Parameters"
+msgstr "Коммуникационные параметры"
+
 #: ../BeremizIDE.py:303 ../BeremizIDE.py:307 ../PLCOpenEditor.py:134
 #: ../PLCOpenEditor.py:138
 msgid "Community support"
 msgstr "Поддержка сообщества"
 
-#: ../dialogs/ProjectDialog.py:65
+#: ../dialogs/ProjectDialog.py:63
 msgid "Company Name"
 msgstr "Имя компании"
 
-#: ../controls/ProjectPropertiesPanel.py:106
+#: ../controls/ProjectPropertiesPanel.py:108
 msgid "Company Name (required):"
 msgstr "Компания (обязательно):"
 
-#: ../controls/ProjectPropertiesPanel.py:107
+#: ../controls/ProjectPropertiesPanel.py:109
 msgid "Company URL (optional):"
 msgstr "Сайт компании (опционально):"
 
@@ -989,7 +1116,7 @@
 msgid "Comparison"
 msgstr "Сравнение"
 
-#: ../ProjectController.py:756
+#: ../ProjectController.py:787
 msgid "Compiling IEC Program into C code...\n"
 msgstr "Компиляция МЭК-программы в C-код...\n"
 
@@ -1015,25 +1142,25 @@
 
 #: ../editors/Viewer.py:351 ../editors/Viewer.py:381 ../editors/Viewer.py:403
 #: ../editors/TextViewer.py:289 ../editors/TextViewer.py:343
-#: ../editors/TextViewer.py:366 ../controls/VariablePanel.py:354
+#: ../editors/TextViewer.py:366 ../controls/VariablePanel.py:353
 msgid "Confirm or change variable name"
 msgstr "Подтвердить или поменять имя переменной"
 
-#: ../ProjectController.py:1842
+#: ../ProjectController.py:1925
 msgid "Connect"
 msgstr "Подключиться"
 
-#: ../ProjectController.py:1843
+#: ../ProjectController.py:1926
 msgid "Connect to the target PLC"
 msgstr "Подключиться к целевому ПЛК"
 
-#: ../ProjectController.py:1391
+#: ../ProjectController.py:1469
 #, python-format
 msgid "Connected to URI: %s"
 msgstr "Подключен к URI: %s"
 
-#: ../dialogs/SFCTransitionDialog.py:78 ../editors/Viewer.py:623
-#: ../editors/Viewer.py:2441
+#: ../dialogs/SFCTransitionDialog.py:78 ../editors/Viewer.py:626
+#: ../editors/Viewer.py:2443
 msgid "Connection"
 msgstr "Подключение"
 
@@ -1041,25 +1168,25 @@
 msgid "Connection Properties"
 msgstr "Свойства подключения"
 
-#: ../ProjectController.py:1691
+#: ../ProjectController.py:1773
 msgid "Connection canceled!\n"
 msgstr "Подключение отменено!\n"
 
-#: ../ProjectController.py:1714
+#: ../ProjectController.py:1797
 #, python-format
 msgid "Connection failed to %s!\n"
 msgstr "Неудачное подключение к %s!\n"
 
-#: ../connectors/PYRO/__init__.py:123 ../connectors/WAMP/__init__.py:120
+#: ../connectors/PYRO/__init__.py:124 ../connectors/WAMP/__init__.py:121
 msgid "Connection lost!\n"
 msgstr "Подключение прервано!\n"
 
-#: ../connectors/PYRO/__init__.py:110
+#: ../connectors/PYRO/__init__.py:111
 #, python-format
 msgid "Connection to '%s' failed.\n"
 msgstr "Неудачное подключение к %s!\n"
 
-#: ../dialogs/ConnectionDialog.py:67 ../editors/Viewer.py:1676
+#: ../dialogs/ConnectionDialog.py:67 ../editors/Viewer.py:1678
 msgid "Connector"
 msgstr "Коннектор"
 
@@ -1067,7 +1194,7 @@
 msgid "Connectors:"
 msgstr "Коннекторы:"
 
-#: ../BeremizIDE.py:378
+#: ../BeremizIDE.py:374
 msgid "Console"
 msgstr "Консоль"
 
@@ -1075,18 +1202,22 @@
 msgid "Constant"
 msgstr "Константа"
 
-#: ../editors/Viewer.py:634 ../editors/Viewer.py:2444
+#: ../editors/Viewer.py:637 ../editors/Viewer.py:2446
 msgid "Contact"
 msgstr "Контакт"
 
-#: ../controls/ProjectPropertiesPanel.py:217
+#: ../controls/ProjectPropertiesPanel.py:219
 msgid "Content Description (optional):"
 msgstr "Описание содержимого (опционально):"
 
-#: ../dialogs/ConnectionDialog.py:68 ../editors/Viewer.py:1677
+#: ../dialogs/ConnectionDialog.py:68 ../editors/Viewer.py:1679
 msgid "Continuation"
 msgstr "Продолжение"
 
+#: ../etherlab/EtherCATManagementEditor.py:37
+msgid "Control Byte"
+msgstr "Байт управления"
+
 #: ../plcopen/iec_std.csv:18
 msgid "Conversion from BCD"
 msgstr "Преобразование из BCD"
@@ -1103,20 +1234,20 @@
 msgid "Conversion to time-of-day"
 msgstr "Преобразование во время суток"
 
-#: ../editors/Viewer.py:695 ../controls/LogViewer.py:713 ../IDEFrame.py:372
-#: ../IDEFrame.py:427
+#: ../editors/Viewer.py:698 ../controls/LogViewer.py:713 ../IDEFrame.py:375
+#: ../IDEFrame.py:428
 msgid "Copy"
 msgstr "Копировать"
 
-#: ../IDEFrame.py:1964
+#: ../IDEFrame.py:1981
 msgid "Copy POU"
 msgstr "Копировать POU"
 
-#: ../editors/FileManagementPanel.py:68
+#: ../editors/FileManagementPanel.py:67
 msgid "Copy file from left folder to right"
 msgstr "Скопировать файл с левой директории в правую"
 
-#: ../editors/FileManagementPanel.py:67
+#: ../editors/FileManagementPanel.py:66
 msgid "Copy file from right folder to left"
 msgstr "Скопировать файл с правой директории в левую"
 
@@ -1138,6 +1269,16 @@
 msgid "Couldn't import old %s file."
 msgstr "Невозможно импортировать старый файл %s."
 
+#: ../etherlab/EthercatMaster.py:258
+#, python-format
+msgid "Couldn't load %s network configuration file."
+msgstr "Не удалось загрузить файл конфигурации сети %s."
+
+#: ../etherlab/EthercatMaster.py:279
+#, python-format
+msgid "Couldn't load %s network process variables file."
+msgstr "Не удалось загрузить файл сетевых переменных процесса %s."
+
 #: ../ConfigTreeNode.py:630
 #, python-brace-format
 msgid ""
@@ -1156,15 +1297,24 @@
 "Невозможно загрузить параметры confnode {a1}:\n"
 " {a2}"
 
+#: ../etherlab/etherlab.py:264
+#, python-brace-format
+msgid ""
+"Couldn't load {a1} XML file:\n"
+"{a2}"
+msgstr ""
+"Не удалось загрузить файл {a1} XML:\n"
+"{А2}"
+
 #: ../PLCControler.py:552
 msgid "Couldn't paste non-POU object."
 msgstr "Невозможно вставить не-POU."
 
-#: ../ProjectController.py:1636
+#: ../ProjectController.py:1717
 msgid "Couldn't start PLC !\n"
 msgstr "Невозможно запустить ПЛК!\n"
 
-#: ../ProjectController.py:1644
+#: ../ProjectController.py:1725
 msgid "Couldn't stop PLC !\n"
 msgstr "Невозможно остановить ПЛК!\n"
 
@@ -1172,43 +1322,43 @@
 msgid "Create HMI"
 msgstr "Создать HMI"
 
-#: ../dialogs/PouDialog.py:54
+#: ../dialogs/PouDialog.py:48
 msgid "Create a new POU"
 msgstr "Создать новый POU"
 
-#: ../dialogs/PouActionDialog.py:45
+#: ../dialogs/PouActionDialog.py:42
 msgid "Create a new action"
 msgstr "Создать новое действие"
 
-#: ../IDEFrame.py:166
+#: ../IDEFrame.py:313
 msgid "Create a new action block"
 msgstr "Создать новый блок действие"
 
-#: ../IDEFrame.py:115 ../IDEFrame.py:145 ../IDEFrame.py:178
+#: ../IDEFrame.py:262 ../IDEFrame.py:292 ../IDEFrame.py:325
 msgid "Create a new block"
 msgstr "Создать новый блок"
 
-#: ../IDEFrame.py:139
+#: ../IDEFrame.py:286
 msgid "Create a new branch"
 msgstr "Создать новое ветвление"
 
-#: ../IDEFrame.py:133
+#: ../IDEFrame.py:280
 msgid "Create a new coil"
 msgstr "Создать новую катушку"
 
-#: ../IDEFrame.py:109 ../IDEFrame.py:124 ../IDEFrame.py:154
+#: ../IDEFrame.py:256 ../IDEFrame.py:271 ../IDEFrame.py:301
 msgid "Create a new comment"
 msgstr "Создать новый комментарий"
 
-#: ../IDEFrame.py:118 ../IDEFrame.py:148 ../IDEFrame.py:181
+#: ../IDEFrame.py:265 ../IDEFrame.py:295 ../IDEFrame.py:328
 msgid "Create a new connection"
 msgstr "Создать новое подключение"
 
-#: ../IDEFrame.py:136 ../IDEFrame.py:187
+#: ../IDEFrame.py:283 ../IDEFrame.py:334
 msgid "Create a new contact"
 msgstr "Создать новый контакт"
 
-#: ../IDEFrame.py:169
+#: ../IDEFrame.py:316
 msgid "Create a new divergence"
 msgstr "Создать новое ветвление"
 
@@ -1216,43 +1366,55 @@
 msgid "Create a new divergence or convergence"
 msgstr "Создать новое ветвление или объединение"
 
-#: ../IDEFrame.py:157
+#: ../IDEFrame.py:304
 msgid "Create a new initial step"
 msgstr "Создать исходный шаг"
 
-#: ../IDEFrame.py:172
+#: ../IDEFrame.py:319
 msgid "Create a new jump"
 msgstr "Создать новый безусловный переход"
 
-#: ../IDEFrame.py:127 ../IDEFrame.py:184
+#: ../IDEFrame.py:274 ../IDEFrame.py:331
 msgid "Create a new power rail"
 msgstr "Создать новую линию питания"
 
-#: ../IDEFrame.py:130
+#: ../IDEFrame.py:277
 msgid "Create a new rung"
 msgstr "Создать новую цепь"
 
-#: ../IDEFrame.py:160
+#: ../IDEFrame.py:307
 msgid "Create a new step"
 msgstr "Создать новый шаг"
 
-#: ../dialogs/PouTransitionDialog.py:49 ../IDEFrame.py:163
+#: ../dialogs/PouTransitionDialog.py:45 ../IDEFrame.py:310
 msgid "Create a new transition"
 msgstr "Создать новый переход"
 
-#: ../IDEFrame.py:112 ../IDEFrame.py:142 ../IDEFrame.py:175
+#: ../IDEFrame.py:259 ../IDEFrame.py:289 ../IDEFrame.py:322
 msgid "Create a new variable"
 msgstr "Создать новую переменную"
 
+#: ../etherlab/etherlab.py:183
+msgid "Creating new PDO"
+msgstr "Создание нового PDO"
+
 #: ../dialogs/AboutDialog.py:109
 msgid "Credits"
 msgstr "Благодарности"
 
-#: ../Beremiz_service.py:424
+#: ../runtime/WampClient.py:400
+msgid "Current status"
+msgstr "Текущий статус"
+
+#: ../Beremiz_service.py:437
 msgid "Current working directory :"
 msgstr "Текущая рабочая директория :"
 
-#: ../editors/Viewer.py:694 ../IDEFrame.py:370 ../IDEFrame.py:426
+#: ../runtime/WampClient.py:161
+msgid "Custom protocol options failed :"
+msgstr "Ошибка в дополнительных параметрах протокола :"
+
+#: ../editors/Viewer.py:697 ../IDEFrame.py:373 ../IDEFrame.py:427
 msgid "Cut"
 msgstr "Вырезать"
 
@@ -1301,11 +1463,11 @@
 msgid "Date subtraction"
 msgstr "Вычитание дат"
 
-#: ../dialogs/DurationEditorDialog.py:46
+#: ../dialogs/DurationEditorDialog.py:57
 msgid "Days:"
 msgstr "Дни:"
 
-#: ../ProjectController.py:1729
+#: ../ProjectController.py:1809
 msgid "Debug does not match PLC - stop/transfert/start to re-enable\n"
 msgstr ""
 "Отлаживаемая программа не соответствует программе в ПЛК - "
@@ -1315,42 +1477,51 @@
 msgid "Debug instance"
 msgstr "Отладка экземпляра"
 
-#: ../editors/Viewer.py:490
+#: ../editors/Viewer.py:493
 #, python-format
 msgid "Debug: %s"
 msgstr "Отладка: %s"
 
-#: ../ProjectController.py:1471
+#: ../ProjectController.py:1548
 #, python-format
 msgid "Debug: Unknown variable '%s'\n"
 msgstr "Отладка: неизвестная переменная '%s'\n"
 
-#: ../ProjectController.py:1469
+#: ../ProjectController.py:1545
 #, python-format
 msgid "Debug: Unsupported type to debug '%s'\n"
 msgstr "Отладка: неподдерживамый отладкой тип '%s'\n"
 
-#: ../IDEFrame.py:660
+#: ../IDEFrame.py:666
 msgid "Debugger"
 msgstr "Отладчик"
 
-#: ../ProjectController.py:1726
+#: ../ProjectController.py:1805
 msgid "Debugger ready\n"
 msgstr "Отладчик готов\n"
 
-#: ../BeremizIDE.py:1004 ../editors/Viewer.py:670 ../IDEFrame.py:1993
+#: ../etherlab/EtherCATManagementEditor.py:37
+msgid "Default Size"
+msgstr "Размер по умолчанию"
+
+#: ../etherlab/EthercatCFileGenerator.py:174
+#, python-format
+msgid "Definition conflict for location \"%s\""
+msgstr "Конфликт определений для адреса «%s»"
+
+#: ../BeremizIDE.py:1001 ../editors/Viewer.py:673 ../IDEFrame.py:2010
 msgid "Delete"
 msgstr "Удалить"
 
-#: ../editors/Viewer.py:610
+#: ../editors/Viewer.py:613
 msgid "Delete Divergence Branch"
 msgstr "Удалить ветвь"
 
-#: ../editors/FileManagementPanel.py:157
+#: ../etherlab/ConfigEditor.py:1261 ../editors/FileManagementPanel.py:156
 msgid "Delete File"
 msgstr "Удалить файл"
 
-#: ../editors/Viewer.py:597
+#: ../editors/Viewer.py:600
 msgid "Delete Wire Segment"
 msgstr "Удалить сегмент цепи"
 
@@ -1366,11 +1537,12 @@
 msgid "Derivation Type:"
 msgstr "Механизм создания типа:"
 
-#: ../editors/CodeFileEditor.py:735
+#: ../etherlab/ConfigEditor.py:346 ../etherlab/ConfigEditor.py:465
+#: ../editors/CodeFileEditor.py:754
 msgid "Description"
 msgstr "Описание"
 
-#: ../controls/VariablePanel.py:463
+#: ../controls/VariablePanel.py:465
 msgid "Description:"
 msgstr "Описание:"
 
@@ -1382,7 +1554,7 @@
 msgid "Direction"
 msgstr "Направление"
 
-#: ../dialogs/BrowseLocationsDialog.py:102
+#: ../dialogs/BrowseLocationsDialog.py:101
 msgid "Direction:"
 msgstr "Направление:"
 
@@ -1390,19 +1562,19 @@
 msgid "Directly"
 msgstr "Синоним"
 
-#: ../ProjectController.py:1855
+#: ../ProjectController.py:1938
 msgid "Disconnect"
 msgstr "Отключиться"
 
-#: ../ProjectController.py:1856
+#: ../ProjectController.py:1939
 msgid "Disconnect from PLC"
 msgstr "Отключиться от ПЛК"
 
-#: ../ProjectController.py:1401
+#: ../runtime/PlcStatus.py:14
 msgid "Disconnected"
 msgstr "Отключено"
 
-#: ../editors/Viewer.py:654 ../editors/Viewer.py:2436
+#: ../editors/Viewer.py:657 ../editors/Viewer.py:2438
 msgid "Divergence"
 msgstr "Ветвление"
 
@@ -1410,7 +1582,7 @@
 msgid "Division"
 msgstr "Деление"
 
-#: ../editors/FileManagementPanel.py:156
+#: ../etherlab/ConfigEditor.py:1260 ../editors/FileManagementPanel.py:155
 #, python-format
 msgid "Do you really want to delete the file '%s'?"
 msgstr "Вы действительно хотите удалить этот файл '%s'?"
@@ -1423,15 +1595,31 @@
 msgid "Done"
 msgstr "Завершено"
 
+#: ../runtime/WampClient.py:384
+msgid "Download"
+msgstr "Скачать"
+
 #: ../dialogs/ActionBlockDialog.py:42
 msgid "Duration"
 msgstr "Длительность"
 
+#: ../bacnet/bacnet.py:437
+msgid "EDE files (*_EDE.csv)|*_EDE.csv|All files|*.*"
+msgstr "EDE-файлы (* _EDE.csv) | * _EDE.csv | Все файлы |  *. *"
+
 #: ../canfestival/canfestival.py:174
 msgid "EDS files (*.eds)|*.eds|All files|*.*"
 msgstr "Файлы EDS (*.eds)|*.eds|All files|*.*"
 
-#: ../editors/Viewer.py:668
+#: ../etherlab/ConfigEditor.py:1342
+msgid "ESI Files Database management"
+msgstr "Управление базой ESI-файлов"
+
+#: ../etherlab/ConfigEditor.py:1109
+msgid "ESI Files:"
+msgstr "Файлы ESI:"
+
+#: ../editors/Viewer.py:671
 msgid "Edit Block"
 msgstr "Редактировать блок"
 
@@ -1443,7 +1631,7 @@
 msgid "Edit Contact Values"
 msgstr "Редактировать значение контакта"
 
-#: ../dialogs/DurationEditorDialog.py:62
+#: ../dialogs/DurationEditorDialog.py:54
 msgid "Edit Duration"
 msgstr "Редактировать длительность"
 
@@ -1463,11 +1651,11 @@
 msgid "Edit array type properties"
 msgstr "Редактировать свойства массива"
 
-#: ../editors/Viewer.py:2660 ../editors/Viewer.py:3102
+#: ../dialogs/CommentEditDialog.py:53
 msgid "Edit comment"
 msgstr "Редактировать комментарий"
 
-#: ../editors/FileManagementPanel.py:69
+#: ../editors/FileManagementPanel.py:68
 msgid "Edit file"
 msgstr "Редактировать файл"
 
@@ -1475,11 +1663,11 @@
 msgid "Edit item"
 msgstr "Редактировать элемент"
 
-#: ../editors/Viewer.py:3059
+#: ../editors/Viewer.py:3058
 msgid "Edit jump target"
 msgstr "Редактирование безусловного перехода"
 
-#: ../ProjectController.py:1873
+#: ../ProjectController.py:1956
 msgid "Edit raw IEC code added to code generated by PLCGenerator"
 msgstr ""
 "Редактировать МЭК-код добавленный к коду сгенерированному PLCGenerator"
@@ -1492,11 +1680,11 @@
 msgid "Edit transition"
 msgstr "Редактировать переход"
 
-#: ../IDEFrame.py:632
+#: ../IDEFrame.py:638
 msgid "Editor ToolBar"
 msgstr "Редактор панели инструментов"
 
-#: ../ProjectController.py:1294
+#: ../ProjectController.py:1355
 msgid "Editor selection"
 msgstr "Редактор выделения"
 
@@ -1504,7 +1692,7 @@
 msgid "Elements :"
 msgstr "Элементы:"
 
-#: ../ProjectController.py:1399
+#: ../runtime/PlcStatus.py:15
 msgid "Empty"
 msgstr "Нет программы"
 
@@ -1512,18 +1700,49 @@
 msgid "Empty dimension isn't allowed."
 msgstr "Размер не должен быть нулевым"
 
-#: ../Beremiz_service.py:341
+#: ../etherlab/EtherCATManagementEditor.py:37
+msgid "Enable"
+msgstr "Разрешить"
+
+#: ../runtime/WampClient.py:410
+msgid "Enable WAMP connection"
+msgstr "Разрешить WAMP подключение"
+
+#: ../Beremiz_service.py:354
 msgid "Enter a name "
 msgstr "Введите имя"
 
-#: ../Beremiz_service.py:326
+#: ../Beremiz_service.py:339
 msgid "Enter a port number "
 msgstr "Введите номер порта"
 
-#: ../Beremiz_service.py:317
+#: ../etherlab/EtherCATManagementEditor.py:627
+msgid ""
+"Enter hex or dec value (if enter dec value, it automatically conversed hex "
+"value)"
+msgstr ""
+"Введите десятичное или шестнадцатеричное значение (десятичное значение "
+"автоматически преобразуется в шестнадцатеричное)"
+
+#: ../etherlab/EtherCATManagementEditor.py:1964
+msgid "Enter hex(0xnnnn) or dec(n) value"
+msgstr "Введите шестнадцатеричное (0xnnnn) или десятичное (n) значение"
+
+#: ../Beremiz_service.py:330
 msgid "Enter the IP of the interface to bind"
 msgstr "Введите IP-адрес используемого интерфейса"
 
+#: ../etherlab/ConfigEditor.py:502
+msgid "Entry can't be write through SDO"
+msgstr "Запись нельзя писать через SDO"
+
+#: ../etherlab/EthercatCFileGenerator.py:569
+#, python-brace-format
+msgid "Entry index 0x{a1:.4x}, subindex 0x{a2:.2x} not mapped for device {a3}"
+msgstr ""
+"Запись с индексом 0x {a1: .4x}, субиндексом 0x {a2: .2x}, не сопоставлена "
+"для устройства {a3}"
+
 #: ../editors/DataTypeEditor.py:60
 msgid "Enumerated"
 msgstr "Перечисление"
@@ -1534,34 +1753,37 @@
 
 #: ../dialogs/ForceVariableDialog.py:213
 #: ../dialogs/SearchInProjectDialog.py:172 ../dialogs/SFCStepNameDialog.py:64
-#: ../dialogs/DurationEditorDialog.py:124
-#: ../dialogs/DurationEditorDialog.py:170
-#: ../dialogs/PouTransitionDialog.py:114 ../dialogs/BlockPreviewDialog.py:237
-#: ../dialogs/ProjectDialog.py:80 ../dialogs/ArrayTypeDialog.py:114
-#: ../dialogs/PouNameDialog.py:58 ../dialogs/BrowseLocationsDialog.py:229
+#: ../dialogs/DurationEditorDialog.py:125
+#: ../dialogs/DurationEditorDialog.py:172
+#: ../dialogs/PouTransitionDialog.py:113 ../dialogs/BlockPreviewDialog.py:237
+#: ../dialogs/ProjectDialog.py:78 ../dialogs/ArrayTypeDialog.py:114
+#: ../dialogs/PouNameDialog.py:58 ../dialogs/BrowseLocationsDialog.py:228
 #: ../dialogs/BrowseValuesLibraryDialog.py:87
-#: ../dialogs/PouActionDialog.py:112 ../dialogs/PouDialog.py:143
+#: ../dialogs/PouActionDialog.py:112 ../dialogs/PouDialog.py:178
 #: ../PLCOpenEditor.py:319 ../PLCOpenEditor.py:324
-#: ../editors/ResourceEditor.py:470 ../editors/Viewer.py:467
-#: ../editors/LDViewer.py:677 ../editors/LDViewer.py:893
-#: ../editors/LDViewer.py:897 ../editors/DataTypeEditor.py:566
-#: ../editors/DataTypeEditor.py:571 ../editors/DataTypeEditor.py:590
-#: ../editors/DataTypeEditor.py:759 ../editors/DataTypeEditor.py:766
-#: ../editors/TextViewer.py:390 ../editors/CodeFileEditor.py:760
-#: ../ProjectController.py:391 ../ProjectController.py:531
-#: ../ProjectController.py:538 ../controls/FolderTree.py:222
-#: ../controls/ProjectPropertiesPanel.py:306
-#: ../controls/DebugVariablePanel/DebugVariablePanel.py:173
+#: ../etherlab/ConfigEditor.py:458 ../etherlab/ConfigEditor.py:510
+#: ../etherlab/ConfigEditor.py:981 ../etherlab/ConfigEditor.py:1047
+#: ../etherlab/ConfigEditor.py:1246 ../etherlab/ConfigEditor.py:1314
+#: ../etherlab/EthercatMaster.py:463 ../editors/ResourceEditor.py:468
+#: ../editors/Viewer.py:467 ../editors/LDViewer.py:677
+#: ../editors/LDViewer.py:893 ../editors/LDViewer.py:897
+#: ../editors/DataTypeEditor.py:566 ../editors/DataTypeEditor.py:571
+#: ../editors/DataTypeEditor.py:590 ../editors/DataTypeEditor.py:759
+#: ../editors/DataTypeEditor.py:766 ../editors/TextViewer.py:390
+#: ../editors/CodeFileEditor.py:779 ../ProjectController.py:404
+#: ../ProjectController.py:548 ../ProjectController.py:557
+#: ../controls/FolderTree.py:222 ../controls/ProjectPropertiesPanel.py:308
+#: ../controls/DebugVariablePanel/DebugVariablePanel.py:163
 #: ../controls/DebugVariablePanel/DebugVariableTextViewer.py:138
 #: ../controls/DebugVariablePanel/DebugVariableGraphicViewer.py:227
-#: ../controls/VariablePanel.py:431 ../controls/VariablePanel.py:773
-#: ../util/ExceptionHandler.py:70 ../IDEFrame.py:1036 ../IDEFrame.py:1650
-#: ../IDEFrame.py:1691 ../IDEFrame.py:1696 ../IDEFrame.py:1710
-#: ../IDEFrame.py:1715 ../Beremiz_service.py:221
+#: ../controls/VariablePanel.py:430 ../controls/VariablePanel.py:784
+#: ../util/ExceptionHandler.py:70 ../IDEFrame.py:1049 ../IDEFrame.py:1667
+#: ../IDEFrame.py:1708 ../IDEFrame.py:1713 ../IDEFrame.py:1727
+#: ../IDEFrame.py:1732 ../Beremiz_service.py:234
 msgid "Error"
 msgstr "Ошибка"
 
-#: ../ProjectController.py:811
+#: ../ProjectController.py:848
 msgid ""
 "Error : At least one configuration and one resource must be declared in PLC "
 "!\n"
@@ -1569,12 +1791,12 @@
 "Ошибка: Как минимум одна конфигурация и один ресурс должны быть "
 "задекларированы в ПЛК!\n"
 
-#: ../ProjectController.py:803
+#: ../ProjectController.py:838
 #, python-format
 msgid "Error : IEC to C compiler returned %d\n"
 msgstr "Ошибка: компилятор МЭК в C вернул код ошибки %d\n"
 
-#: ../ProjectController.py:731
+#: ../ProjectController.py:762
 #, python-format
 msgid ""
 "Error in ST/IL/SFC code generator :\n"
@@ -1586,7 +1808,25 @@
 msgid "Error while saving \"%s\"\n"
 msgstr "Ошибка во время сохранения \"%s\"\n"
 
-#: ../canfestival/canfestival.py:179
+#: ../bacnet/bacnet.py:581
+#, python-brace-format
+msgid ""
+"Error: BACnet server '{a1}.x: {a2}' contains objects with duplicate object "
+"identifiers.\n"
+msgstr ""
+"Ошибка: BACnet-сервер '{a1} .x: {a2}' содержит объекты с  повторяющимися "
+"идентификаторами.\n"
+
+#: ../bacnet/bacnet.py:573
+#, python-brace-format
+msgid ""
+"Error: BACnet server '{a1}.x:{a2}' contains objects with duplicate object "
+"names.\n"
+msgstr ""
+"Ошибка: BACnet-сервер '{a1} .x: {a2}' содержит объекты с повторяющимися "
+"именами.\n"
+
+#: ../canfestival/canfestival.py:179 ../bacnet/bacnet.py:444
 msgid "Error: Export slave failed\n"
 msgstr "Ошибка: неудачный экспорт ведомого\n"
 
@@ -1607,7 +1847,23 @@
 msgid "Error: No PLC built\n"
 msgstr "Ошибка: ПЛК не собран\n"
 
-#: ../ProjectController.py:1708
+#: ../etherlab/ConfigEditor.py:269
+msgid "EtherCAT Management"
+msgstr "Управление EtherCAT"
+
+#: ../features.py:20
+msgid "EtherCAT master"
+msgstr "Мастер EtherCAT"
+
+#: ../etherlab/EthercatMaster.py:302
+msgid "Ethercat Slave Type"
+msgstr "Тип устройства Ethercat"
+
+#: ../etherlab/ConfigEditor.py:267
+msgid "Ethercat node"
+msgstr "Узел Ethercat"
+
+#: ../ProjectController.py:1791
 #, python-format
 msgid "Exception while connecting %s!\n"
 msgstr "Исключение во время подключения %s!\n"
@@ -1616,11 +1872,11 @@
 msgid "Execution Control:"
 msgstr "Управление исполнением:"
 
-#: ../dialogs/FBDVariableDialog.py:84 ../dialogs/FBDBlockDialog.py:111
+#: ../dialogs/FBDVariableDialog.py:85 ../dialogs/FBDBlockDialog.py:111
 msgid "Execution Order:"
 msgstr "Порядок исполнения:"
 
-#: ../features.py:36
+#: ../features.py:25
 msgid "Experimental web based HMI"
 msgstr "Экспериментальный WEB-HMI"
 
@@ -1632,44 +1888,48 @@
 msgid "Exponentiation"
 msgstr "Взятие экспоненты"
 
+#: ../bacnet/bacnet.py:156
+msgid "Export BACnet slave to EDE file"
+msgstr "Экспорт ведомого устройства BACnet в файл EDE"
+
 #: ../canfestival/canfestival.py:186
 msgid "Export CanOpen slave to EDS file"
 msgstr "Экспортировать CanOpen ведомое устройство в EDS файл"
 
-#: ../controls/DebugVariablePanel/DebugVariablePanel.py:246
+#: ../controls/DebugVariablePanel/DebugVariablePanel.py:243
 msgid "Export graph values to clipboard"
 msgstr "Экспортировать график значений в буфер обмена"
 
-#: ../canfestival/canfestival.py:185
+#: ../canfestival/canfestival.py:185 ../bacnet/bacnet.py:155
 msgid "Export slave"
 msgstr "Экспортировать ведомое устройство"
 
-#: ../dialogs/FBDVariableDialog.py:94
+#: ../dialogs/FBDVariableDialog.py:95
 msgid "Expression:"
 msgstr "Выражение:"
 
-#: ../controls/VariablePanel.py:90
+#: ../controls/VariablePanel.py:87
 msgid "External"
 msgstr "Внешний"
 
-#: ../ProjectController.py:826
+#: ../ProjectController.py:866
 msgid "Extracting Located Variables...\n"
 msgstr "Экспорт локальных переменных...\n"
 
 #: ../dialogs/PouTransitionDialog.py:40 ../dialogs/PouActionDialog.py:36
-#: ../dialogs/PouDialog.py:44 ../controls/ProjectPropertiesPanel.py:158
+#: ../dialogs/PouDialog.py:128 ../controls/ProjectPropertiesPanel.py:161
 msgid "FBD"
 msgstr "FBD"
 
-#: ../ProjectController.py:1773
+#: ../ProjectController.py:1855
 msgid "Failed : Must build before transfer.\n"
 msgstr "Ошибка: необходима сборка перед передачей.\n"
 
-#: ../dialogs/LDElementDialog.py:80 ../editors/Viewer.py:556
+#: ../dialogs/LDElementDialog.py:80 ../editors/Viewer.py:559
 msgid "Falling Edge"
 msgstr "Спадающий фронт"
 
-#: ../ProjectController.py:1098
+#: ../ProjectController.py:1145
 msgid "Fatal : cannot get builder.\n"
 msgstr "Ошибка: невозможно получить сборщик.\n"
 
@@ -1678,12 +1938,12 @@
 msgid "Fetching %s"
 msgstr "Проверка %s"
 
-#: ../dialogs/DurationEditorDialog.py:167
+#: ../dialogs/DurationEditorDialog.py:169
 #, python-format
 msgid "Field %s hasn't a valid value!"
 msgstr "Поле %s имеет неверное значение!"
 
-#: ../dialogs/DurationEditorDialog.py:169
+#: ../dialogs/DurationEditorDialog.py:171
 #, python-format
 msgid "Fields %s haven't a valid value!"
 msgstr "Поля %s имеют неверные значения!"
@@ -1693,16 +1953,20 @@
 msgid "File '%s' already exists!"
 msgstr "Файл '%s' уже существует!"
 
+#: ../runtime/WampClient.py:407
+msgid "File containing secret for that ID"
+msgstr "Файл, содержащий секрет для этого идентификатора"
+
 #: ../dialogs/SearchInProjectDialog.py:102 ../dialogs/FindInPouDialog.py:40
-#: ../dialogs/FindInPouDialog.py:107 ../IDEFrame.py:377
+#: ../dialogs/FindInPouDialog.py:107 ../IDEFrame.py:380
 msgid "Find"
 msgstr "Поиск"
 
-#: ../IDEFrame.py:379
+#: ../IDEFrame.py:382
 msgid "Find Next"
 msgstr "Поиск следующего"
 
-#: ../IDEFrame.py:381
+#: ../IDEFrame.py:384
 msgid "Find Previous"
 msgstr "Поиск предыдущего"
 
@@ -1714,7 +1978,7 @@
 msgid "Find:"
 msgstr "Поиск:"
 
-#: ../editors/Viewer.py:1633
+#: ../editors/Viewer.py:1635
 msgid "Force value"
 msgstr "Форсировать значение"
 
@@ -1722,9 +1986,9 @@
 msgid "Forcing Variable Value"
 msgstr "Форсировать значение переменной"
 
-#: ../dialogs/SFCTransitionDialog.py:184 ../dialogs/PouTransitionDialog.py:104
-#: ../dialogs/ProjectDialog.py:79 ../dialogs/PouActionDialog.py:102
-#: ../dialogs/PouDialog.py:125
+#: ../dialogs/SFCTransitionDialog.py:184 ../dialogs/PouTransitionDialog.py:103
+#: ../dialogs/ProjectDialog.py:77 ../dialogs/PouActionDialog.py:102
+#: ../dialogs/PouDialog.py:160
 #, python-format
 msgid "Form isn't complete. %s must be filled!"
 msgstr "Форма заполнена не полностью. %s необходимо заполнить!"
@@ -1743,20 +2007,24 @@
 msgid "Forward"
 msgstr "Вперед"
 
-#: ../dialogs/SearchInProjectDialog.py:40 ../IDEFrame.py:1780
+#: ../IDEFrame.py:455
+msgid "Full screen"
+msgstr "Полный экран"
+
+#: ../dialogs/SearchInProjectDialog.py:40 ../IDEFrame.py:1797
 msgid "Function"
 msgstr "Функция"
 
-#: ../IDEFrame.py:354
+#: ../IDEFrame.py:357
 msgid "Function &Block"
 msgstr "Функциональный &блок"
 
-#: ../dialogs/SearchInProjectDialog.py:41 ../IDEFrame.py:1779
-#: ../IDEFrame.py:1972
+#: ../dialogs/SearchInProjectDialog.py:41 ../IDEFrame.py:1796
+#: ../IDEFrame.py:1989
 msgid "Function Block"
 msgstr "Функциональный блок"
 
-#: ../controls/VariablePanel.py:868
+#: ../controls/VariablePanel.py:879
 msgid "Function Block Types"
 msgstr "Типы функциональных блоков"
 
@@ -1781,19 +2049,19 @@
 msgid "Generate Program"
 msgstr "Сгенерировать программу"
 
-#: ../ProjectController.py:722
+#: ../ProjectController.py:750
 msgid "Generating SoftPLC IEC-61131 ST/IL/SFC code...\n"
 msgstr "Генерация МЭК-61131 ST/IL/SFC кода ПЛК...\n"
 
-#: ../controls/VariablePanel.py:91
+#: ../controls/VariablePanel.py:88
 msgid "Global"
 msgstr "Глобальный"
 
-#: ../controls/DebugVariablePanel/DebugVariablePanel.py:245
+#: ../controls/DebugVariablePanel/DebugVariablePanel.py:242
 msgid "Go to current value"
 msgstr "Перейти к текущему значению"
 
-#: ../controls/ProjectPropertiesPanel.py:189
+#: ../controls/ProjectPropertiesPanel.py:192
 msgid "Graphics"
 msgstr "Графика"
 
@@ -1805,32 +2073,36 @@
 msgid "Greater than or equal to"
 msgstr "Больше или равно"
 
-#: ../controls/ProjectPropertiesPanel.py:149
+#: ../controls/ProjectPropertiesPanel.py:152
 msgid "Grid Resolution:"
 msgstr "Шаг сетки:"
 
-#: ../runtime/NevowServer.py:192
+#: ../runtime/NevowServer.py:313
 msgid "HTTP interface port :"
 msgstr "Порт HTTP-интерфейса :"
 
-#: ../controls/ProjectPropertiesPanel.py:135
+#: ../controls/ProjectPropertiesPanel.py:138
 msgid "Height:"
 msgstr "Высота:"
 
-#: ../editors/FileManagementPanel.py:89
+#: ../editors/FileManagementPanel.py:88
 msgid "Home Directory:"
 msgstr "Домашняя директория:"
 
-#: ../controls/ProjectPropertiesPanel.py:165
+#: ../controls/ProjectPropertiesPanel.py:168
 msgid "Horizontal:"
 msgstr "Горизонтальный:"
 
-#: ../dialogs/DurationEditorDialog.py:47
+#: ../dialogs/DurationEditorDialog.py:58
 msgid "Hours:"
 msgstr "Часы:"
 
+#: ../runtime/WampClient.py:404
+msgid "ID"
+msgstr "ID"
+
 #: ../dialogs/PouTransitionDialog.py:40 ../dialogs/PouActionDialog.py:36
-#: ../dialogs/PouDialog.py:44
+#: ../dialogs/PouDialog.py:128
 msgid "IL"
 msgstr "IL"
 
@@ -1838,54 +2110,66 @@
 msgid "IP"
 msgstr "IP"
 
-#: ../Beremiz_service.py:318 ../Beremiz_service.py:320
+#: ../Beremiz_service.py:331 ../Beremiz_service.py:333
 msgid "IP is not valid!"
 msgstr "Неверный IP-адрес"
 
+#: ../etherlab/ConfigEditor.py:1387
+msgid "Import ESI file"
+msgstr "Импортировать файл ESI"
+
 #: ../svgui/svgui.py:50 ../svgui/svgui.py:51
 msgid "Import SVG"
 msgstr "Импорт SVG"
 
-#: ../dialogs/FBDVariableDialog.py:41 ../editors/Viewer.py:1662
-#: ../controls/VariablePanel.py:89
+#: ../etherlab/ConfigEditor.py:1352
+msgid "Import file to ESI files database"
+msgstr "Импортировать файл в базу данных файлов ESI"
+
+#: ../dialogs/FBDVariableDialog.py:64 ../editors/Viewer.py:1664
+#: ../controls/VariablePanel.py:86
 msgid "InOut"
 msgstr "Вход/Выход"
 
-#: ../PLCGenerator.py:1040
+#: ../PLCGenerator.py:1089
 #, python-brace-format
 msgid "InOut variable {a1} in block {a2} in POU {a3} must be connected."
 msgstr ""
 "Входная/Выходная переменная {a1} в блоке {a2} в POU {a3} должна быть "
 "подключена."
 
-#: ../editors/Viewer.py:473
+#: ../editors/Viewer.py:484
 msgid "Inactive"
 msgstr "Неактивный"
 
-#: ../controls/VariablePanel.py:300
+#: ../controls/VariablePanel.py:299
 #, python-brace-format
 msgid "Incompatible data types between \"{a1}\" and \"{a2}\""
 msgstr "\"{a1}\" и \"{a2}\" имеют несовместимые типы данных"
 
-#: ../controls/VariablePanel.py:306
+#: ../controls/VariablePanel.py:305
 #, python-format
 msgid "Incompatible size of data between \"%s\" and \"BOOL\""
 msgstr "Несовместимый размер данных \"%s\" с типом \"BOOL\""
 
-#: ../controls/VariablePanel.py:310
+#: ../controls/VariablePanel.py:309
 #, python-brace-format
 msgid "Incompatible size of data between \"{a1}\" and \"{a2}\""
 msgstr "\"{a1}\" и \"{a2}\" имеют несовместимый размер данных"
 
+#: ../etherlab/ConfigEditor.py:48 ../etherlab/ConfigEditor.py:465
+msgid "Index"
+msgstr "Индекс"
+
 #: ../dialogs/ActionBlockDialog.py:42
 msgid "Indicator"
 msgstr "Индикатор"
 
-#: ../editors/CodeFileEditor.py:734
+#: ../editors/CodeFileEditor.py:753
 msgid "Initial"
 msgstr "Исходное значение"
 
-#: ../editors/Viewer.py:650
+#: ../editors/Viewer.py:653
 msgid "Initial Step"
 msgstr "Исходный шаг"
 
@@ -1898,6 +2182,15 @@
 msgid "Initial Value:"
 msgstr "Исходное значение:"
 
+#: ../etherlab/EthercatCIA402Slave.py:119
+msgid "Initiate Drag'n drop of Axis ref located variable"
+msgstr "Инициировать перетаскивание отображаемой переменной Axis ref"
+
+#: ../etherlab/EthercatCIA402Slave.py:126
+msgid "Initiate Drag'n drop of Network position located variable"
+msgstr ""
+"Инициировать перетаскивание отображаемой переменной сетевого положения"
+
 #: ../svgui/svgui.py:56
 msgid "Inkscape"
 msgstr "Inkscape"
@@ -1906,11 +2199,11 @@
 msgid "Inline"
 msgstr "Непосредственно"
 
-#: ../dialogs/SFCStepDialog.py:73 ../dialogs/FBDVariableDialog.py:40
+#: ../dialogs/SFCStepDialog.py:73 ../dialogs/FBDVariableDialog.py:63
 #: ../dialogs/BrowseLocationsDialog.py:43 ../editors/Viewer.py:333
-#: ../editors/Viewer.py:1660 ../editors/TextViewer.py:307
-#: ../controls/LocationCellEditor.py:103 ../controls/VariablePanel.py:89
-#: ../controls/VariablePanel.py:317 ../controls/VariablePanel.py:380
+#: ../editors/Viewer.py:1662 ../editors/TextViewer.py:307
+#: ../controls/LocationCellEditor.py:103 ../controls/VariablePanel.py:86
+#: ../controls/VariablePanel.py:316 ../controls/VariablePanel.py:379
 msgid "Input"
 msgstr "Вход"
 
@@ -1927,11 +2220,11 @@
 msgid "Instance with id %d doesn't exist!"
 msgstr "Экземпляр с id %d не существует!"
 
-#: ../editors/ResourceEditor.py:279
+#: ../editors/ResourceEditor.py:277
 msgid "Instances:"
 msgstr "Экземпляры:"
 
-#: ../controls/VariablePanel.py:88
+#: ../controls/VariablePanel.py:85
 msgid "Interface"
 msgstr "Интерфейс"
 
@@ -1943,7 +2236,7 @@
 msgid "Interval"
 msgstr "Интервал"
 
-#: ../controls/ProjectPropertiesPanel.py:304
+#: ../controls/ProjectPropertiesPanel.py:306
 msgid ""
 "Invalid URL!\n"
 "Please enter correct URL address."
@@ -1965,14 +2258,26 @@
 msgid "Invalid type \"{a1}\"-> {a2} != {a3} for location \"{a4}\""
 msgstr "Неправильный тип \"{a1}\"-> {a2} != {a3} для \"{a4}\""
 
-#: ../controls/DebugVariablePanel/DebugVariablePanel.py:139
+#: ../controls/DebugVariablePanel/DebugVariablePanel.py:129
 #: ../controls/DebugVariablePanel/DebugVariableTextViewer.py:93
 #: ../controls/DebugVariablePanel/DebugVariableGraphicViewer.py:162
 #, python-format
 msgid "Invalid value \"%s\" for debug variable"
 msgstr "Неверное значение \"%s\" для отлаживаемой переменной"
 
-#: ../controls/VariablePanel.py:279 ../controls/VariablePanel.py:282
+#: ../etherlab/ConfigEditor.py:418 ../etherlab/ConfigEditor.py:421
+#: ../etherlab/ConfigEditor.py:452
+#, python-format
+msgid "Invalid value \"%s\" for process variable"
+msgstr "Недопустимое значение «%s» для переменной процесса"
+
+#: ../etherlab/ConfigEditor.py:480 ../etherlab/ConfigEditor.py:483
+#: ../etherlab/ConfigEditor.py:504
+#, python-format
+msgid "Invalid value \"%s\" for startup command"
+msgstr "Недопустимое значение «%s» для команды запуска"
+
+#: ../controls/VariablePanel.py:278 ../controls/VariablePanel.py:281
 #, python-format
 msgid "Invalid value \"%s\" for variable grid element"
 msgstr "Неверное значение \"%s\" для значения размещения переменной"
@@ -1987,7 +2292,12 @@
 msgid "Invalid value \"{a1}\" for \"{a2}\" variable!"
 msgstr "Неверное значение \"{a1}\" для переменной \"{a2}\"!"
 
-#: ../dialogs/DurationEditorDialog.py:124
+#: ../etherlab/CommonEtherCATFunction.py:31
+#, python-format
+msgid "Invalid value for HexDecValue \"%s\""
+msgstr "Недопустимое значение для шестнадцатеричного/десятичного числа \"%s\""
+
+#: ../dialogs/DurationEditorDialog.py:125
 msgid ""
 "Invalid value!\n"
 "You must fill a numeric value."
@@ -1999,12 +2309,12 @@
 msgid "Is connection secure?"
 msgstr "Безопасное подключение?"
 
-#: ../editors/Viewer.py:655 ../editors/Viewer.py:2425
+#: ../editors/Viewer.py:658 ../editors/Viewer.py:2427
 msgid "Jump"
 msgstr "Безусловный переход"
 
 #: ../dialogs/PouTransitionDialog.py:40 ../dialogs/PouActionDialog.py:36
-#: ../dialogs/PouDialog.py:44 ../controls/ProjectPropertiesPanel.py:158
+#: ../dialogs/PouDialog.py:128 ../controls/ProjectPropertiesPanel.py:161
 msgid "LD"
 msgstr "LD"
 
@@ -2013,35 +2323,35 @@
 msgid "Ladder element with id %d is on more than one rung."
 msgstr "Элемент лестничной диаграммы с id %d более чем на одной ступени."
 
-#: ../dialogs/PouTransitionDialog.py:93 ../dialogs/PouActionDialog.py:91
-#: ../dialogs/PouDialog.py:113
+#: ../dialogs/PouTransitionDialog.py:92 ../dialogs/PouActionDialog.py:91
+#: ../dialogs/PouDialog.py:148
 msgid "Language"
 msgstr "Язык"
 
-#: ../controls/ProjectPropertiesPanel.py:206
+#: ../controls/ProjectPropertiesPanel.py:208
 msgid "Language (optional):"
 msgstr "Язык (опционально):"
 
-#: ../dialogs/PouTransitionDialog.py:67 ../dialogs/PouActionDialog.py:63
-#: ../dialogs/PouDialog.py:81
+#: ../dialogs/PouTransitionDialog.py:66 ../dialogs/PouActionDialog.py:63
+#: ../dialogs/PouDialog.py:79
 msgid "Language:"
 msgstr "Язык:"
 
-#: ../ProjectController.py:1779
+#: ../ProjectController.py:1861
 msgid "Latest build already matches current target. Transfering anyway...\n"
 msgstr ""
 "Загружаемая программа совпадает с текущий программой в целевом ПЛК. Загрузка"
 " продолжена...\n"
 
-#: ../Beremiz_service.py:281
+#: ../Beremiz_service.py:294
 msgid "Launch WX GUI inspector"
 msgstr "Запустить WX GUI Inspector"
 
-#: ../Beremiz_service.py:280
+#: ../Beremiz_service.py:293
 msgid "Launch a live Python shell"
 msgstr "Запустить консоль Python"
 
-#: ../editors/Viewer.py:580
+#: ../editors/Viewer.py:583
 msgid "Left"
 msgstr "Слева"
 
@@ -2061,7 +2371,7 @@
 msgid "Less than or equal to"
 msgstr "Меньше либо равно"
 
-#: ../IDEFrame.py:652
+#: ../IDEFrame.py:658
 msgid "Library"
 msgstr "Библиотеки"
 
@@ -2077,7 +2387,7 @@
 msgid "Linking :\n"
 msgstr "Линковка:\n"
 
-#: ../dialogs/DiscoveryDialog.py:115 ../controls/VariablePanel.py:90
+#: ../dialogs/DiscoveryDialog.py:115 ../controls/VariablePanel.py:87
 msgid "Local"
 msgstr "Локальный"
 
@@ -2085,7 +2395,7 @@
 msgid "Local entries"
 msgstr "Локальные записи"
 
-#: ../ProjectController.py:1685
+#: ../ProjectController.py:1767
 msgid "Local service discovery failed!\n"
 msgstr "Локальный сервис не найден!\n"
 
@@ -2093,28 +2403,44 @@
 msgid "Location"
 msgstr "Адрес"
 
-#: ../dialogs/BrowseLocationsDialog.py:79
+#: ../dialogs/BrowseLocationsDialog.py:78
 msgid "Locations available:"
 msgstr "Доступные адреса:"
 
+#: ../runtime/NevowServer.py:175
+msgid "Log message level"
+msgstr "Уровень сообщений журнала"
+
 #: ../plcopen/iec_std.csv:25
 msgid "Logarithm to base 10"
 msgstr "Десятичный логарифм"
 
-#: ../connectors/PYRO/__init__.py:102
+#: ../connectors/PYRO/__init__.py:103
 #, python-format
 msgid "MDNS resolution failure for '%s'\n"
 msgstr "MDNS разрешение неудачно для '%s'\n"
 
+#: ../etherlab/ConfigEditor.py:67
+msgid "Manufacturer Specific"
+msgstr "Определяемые производителем"
+
 #: ../canfestival/SlaveEditor.py:68 ../canfestival/NetworkEditor.py:92
 msgid "Map Variable"
 msgstr "Отображение переменной"
 
-#: ../features.py:31
+#: ../features.py:19
+msgid "Map located variables over Bacnet"
+msgstr "Отображение переменных по Bacnet"
+
+#: ../features.py:18
 msgid "Map located variables over CANopen"
 msgstr "Отображение переменных по CANopen"
 
-#: ../features.py:32
+#: ../features.py:20
+msgid "Map located variables over EtherCAT"
+msgstr "Отображение переменных по EtherCAT"
+
+#: ../features.py:21
 msgid "Map located variables over Modbus"
 msgstr "Отображение переменных по Modbus"
 
@@ -2122,12 +2448,28 @@
 msgid "Master"
 msgstr "Ведущий"
 
+#: ../etherlab/ConfigEditor.py:613
+msgid "Master State"
+msgstr "Состояние Мастера"
+
 #: ../ConfigTreeNode.py:544
 #, python-brace-format
 msgid "Max count ({a1}) reached for this confnode of type {a2} "
 msgstr ""
 "Достигнуто максимальное количество ({a1}) для типа узла конфигурации {a2} "
 
+#: ../etherlab/etherlab.py:173
+msgid "Max entries by PDO"
+msgstr "Макс. количество записей по PDO"
+
+#: ../etherlab/etherlab.py:176
+msgid ""
+"Maximal number of entries mapped in a PDO\n"
+"including empty entries used for PDO alignment"
+msgstr ""
+"Максимальное количество записей, отображаемых в PDO\n"
+"включая пустые записи, используемые для выравнивания PDO"
+
 #: ../plcopen/iec_std.csv:71
 msgid "Maximum"
 msgstr "Максимум"
@@ -2138,26 +2480,34 @@
 
 #: ../dialogs/BrowseLocationsDialog.py:45 ../editors/Viewer.py:333
 #: ../editors/TextViewer.py:307 ../controls/LocationCellEditor.py:103
-#: ../controls/VariablePanel.py:317 ../controls/VariablePanel.py:380
+#: ../controls/VariablePanel.py:316 ../controls/VariablePanel.py:379
 msgid "Memory"
 msgstr "Память"
 
-#: ../IDEFrame.py:617
+#: ../IDEFrame.py:623
 msgid "Menu ToolBar"
 msgstr "Меню"
 
-#: ../dialogs/DurationEditorDialog.py:51
+#: ../runtime/NevowServer.py:176
+msgid "Message text"
+msgstr "Текст сообщения"
+
+#: ../dialogs/DurationEditorDialog.py:62
 msgid "Microseconds:"
 msgstr "Микросекунды:"
 
-#: ../editors/Viewer.py:585
+#: ../editors/Viewer.py:588
 msgid "Middle"
 msgstr "Посередине"
 
-#: ../dialogs/DurationEditorDialog.py:50
+#: ../dialogs/DurationEditorDialog.py:61
 msgid "Milliseconds:"
 msgstr "Миллисекунды:"
 
+#: ../etherlab/etherlab.py:167
+msgid "Minimal size in bits between 2 pdo entries"
+msgstr "Минимальный размер в битах между 2 записями pdo"
+
 #: ../plcopen/iec_std.csv:72
 msgid "Minimum"
 msgstr "Минимум"
@@ -2166,15 +2516,15 @@
 msgid "Minimum:"
 msgstr "Минимум:"
 
-#: ../dialogs/DurationEditorDialog.py:48
+#: ../dialogs/DurationEditorDialog.py:59
 msgid "Minutes:"
 msgstr "Минуты:"
 
-#: ../controls/ProjectPropertiesPanel.py:231
+#: ../etherlab/etherlab.py:238 ../controls/ProjectPropertiesPanel.py:233
 msgid "Miscellaneous"
 msgstr "Прочее"
 
-#: ../features.py:32
+#: ../features.py:21
 msgid "Modbus support"
 msgstr "Поддержка Modbus"
 
@@ -2182,7 +2532,20 @@
 msgid "Modifier:"
 msgstr "Модификатор:"
 
-#: ../PLCGenerator.py:795 ../PLCGenerator.py:1269
+#: ../etherlab/ConfigEditor.py:1313
+#, python-format
+msgid "Module %s must be an integer!"
+msgstr "Модуль %s должен быть целым числом!"
+
+#: ../etherlab/ConfigEditor.py:1376
+msgid "Modules Library"
+msgstr "Библиотека модулей"
+
+#: ../etherlab/ConfigEditor.py:1145
+msgid "Modules library:"
+msgstr "Библиотека модулей:"
+
+#: ../PLCGenerator.py:795 ../PLCGenerator.py:1318
 #, python-brace-format
 msgid ""
 "More than one connector found corresponding to \"{a1}\" continuation in "
@@ -2211,23 +2574,31 @@
 msgid "Move element up"
 msgstr "Переместить элементы выше"
 
-#: ../editors/ResourceEditor.py:286
+#: ../editors/ResourceEditor.py:284
 msgid "Move instance down"
 msgstr "Переместить экземпляр ниже"
 
-#: ../editors/ResourceEditor.py:285
+#: ../editors/ResourceEditor.py:283
 msgid "Move instance up"
 msgstr "Переместить экземпляр выше"
 
-#: ../editors/ResourceEditor.py:255
+#: ../etherlab/ConfigEditor.py:655
+msgid "Move process variable down"
+msgstr "Переместить переменную вниз"
+
+#: ../etherlab/ConfigEditor.py:654
+msgid "Move process variable up"
+msgstr "Переместить переменную вверх"
+
+#: ../editors/ResourceEditor.py:253
 msgid "Move task down"
 msgstr "Переместить задачу ниже"
 
-#: ../editors/ResourceEditor.py:254
+#: ../editors/ResourceEditor.py:252
 msgid "Move task up"
 msgstr "Переместить задачу выше"
 
-#: ../IDEFrame.py:106 ../IDEFrame.py:121 ../IDEFrame.py:151 ../IDEFrame.py:192
+#: ../IDEFrame.py:253 ../IDEFrame.py:268 ../IDEFrame.py:298 ../IDEFrame.py:339
 msgid "Move the view"
 msgstr "Переместить отображение"
 
@@ -2235,14 +2606,28 @@
 msgid "Move up"
 msgstr "Переместить выше"
 
-#: ../editors/CodeFileEditor.py:657 ../controls/VariablePanel.py:484
+#: ../bacnet/BacnetSlaveEditor.py:814 ../editors/CodeFileEditor.py:675
+#: ../controls/VariablePanel.py:486
 msgid "Move variable down"
 msgstr "Переместить переменную ниже"
 
-#: ../editors/CodeFileEditor.py:656 ../controls/VariablePanel.py:483
+#: ../bacnet/BacnetSlaveEditor.py:813 ../editors/CodeFileEditor.py:674
+#: ../controls/VariablePanel.py:485
 msgid "Move variable up"
 msgstr "Переместить переменную выше"
 
+#: ../bacnet/BacnetSlaveEditor.py:941
+msgid "Multi-State Input Objects"
+msgstr "Входы со многими состояниями"
+
+#: ../bacnet/BacnetSlaveEditor.py:940
+msgid "Multi-State Output Objects"
+msgstr "Выходы со многими состояниями"
+
+#: ../bacnet/BacnetSlaveEditor.py:939
+msgid "Multi-State Value Objects"
+msgstr "Значения со многими состояниями"
+
 #: ../plcopen/iec_std.csv:74
 msgid "Multiplexer (select 1 of N)"
 msgstr "Мультиплексор (1 в N)"
@@ -2251,7 +2636,7 @@
 msgid "Multiplication"
 msgstr "Умножение"
 
-#: ../editors/FileManagementPanel.py:87
+#: ../editors/FileManagementPanel.py:86
 msgid "My Computer:"
 msgstr "Мой компьютер:"
 
@@ -2259,13 +2644,15 @@
 msgid "NAME"
 msgstr "Имя"
 
-#: ../editors/ResourceEditor.py:76 ../editors/ResourceEditor.py:97
-#: ../editors/DataTypeEditor.py:55 ../editors/CodeFileEditor.py:732
+#: ../etherlab/EtherCATManagementEditor.py:37 ../etherlab/ConfigEditor.py:48
+#: ../etherlab/ConfigEditor.py:343 ../etherlab/ConfigEditor.py:1167
+#: ../editors/ResourceEditor.py:76 ../editors/ResourceEditor.py:94
+#: ../editors/DataTypeEditor.py:55 ../editors/CodeFileEditor.py:751
 #: ../controls/VariablePanel.py:59
 msgid "Name"
 msgstr "Имя"
 
-#: ../Beremiz_service.py:342
+#: ../Beremiz_service.py:355
 msgid "Name must not be null!"
 msgstr "Имя не может быть null!"
 
@@ -2278,15 +2665,19 @@
 msgid "Natural logarithm"
 msgstr "Натуральный логарифм"
 
-#: ../dialogs/LDElementDialog.py:78 ../editors/Viewer.py:554
+#: ../dialogs/LDElementDialog.py:78 ../editors/Viewer.py:557
 msgid "Negated"
 msgstr "Инверсия"
 
-#: ../Beremiz_service.py:610
+#: ../etherlab/ConfigEditor.py:612
+msgid "Network"
+msgstr "Cеть"
+
+#: ../Beremiz_service.py:620
 msgid "Nevow Web service failed. "
 msgstr "Ошибка Web сервиса Nevow. "
 
-#: ../Beremiz_service.py:580
+#: ../Beremiz_service.py:596
 msgid "Nevow/Athena import failed :"
 msgstr "Ошибка импорта Nevow/Athena :"
 
@@ -2299,20 +2690,29 @@
 msgid "New item"
 msgstr "Новый элемент"
 
-#: ../editors/Viewer.py:553
+#: ../editors/Viewer.py:556
 msgid "No Modifier"
 msgstr "Нет модификатора"
 
-#: ../ProjectController.py:1808
+#: ../ProjectController.py:1891
 msgid "No PLC to transfer (did build succeed ?)\n"
 msgstr "Нет ПЛК для передачи (была сборка успешна?)\n"
 
-#: ../PLCGenerator.py:1678
+#: ../etherlab/EthercatCFileGenerator.py:504
+#, python-format
+msgid "No Sync manager defined for %s!"
+msgstr "Не определен менеджер синхронизации для %s!"
+
+#: ../PLCGenerator.py:1727
 #, python-format
 msgid "No body defined in \"%s\" POU"
 msgstr "Нет тела для POU \"%s\""
 
-#: ../PLCGenerator.py:816 ../PLCGenerator.py:1281
+#: ../etherlab/CommonEtherCATFunction.py:1581
+msgid "No connected slaves"
+msgstr "Нет подключенных подчиненных устройств"
+
+#: ../PLCGenerator.py:816 ../PLCGenerator.py:1330
 #, python-brace-format
 msgid "No connector found corresponding to \"{a1}\" continuation in \"{a2}\" POU"
 msgstr "Не найден коннектор, соответствующий продолжению цепи \"{a1}\" в POU \"{a2}\""
@@ -2330,7 +2730,17 @@
 msgid "No informations found for \"%s\" block"
 msgstr "Не найдена информация по блоку \"%s\""
 
-#: ../PLCGenerator.py:1232
+#: ../etherlab/EthercatCFileGenerator.py:224
+#, python-format
+msgid "No informations found for device %s!"
+msgstr "Информация об устройстве %s не найдена!"
+
+#: ../etherlab/EthercatCFileGenerator.py:515
+#, python-format
+msgid "No more free PDO index available for %s!"
+msgstr "Отсутствуют свободные индексы PDO для %s!"
+
+#: ../PLCGenerator.py:1281
 #, python-brace-format
 msgid ""
 "No output {a1} variable found in block {a2} in POU {a3}. Connection must be "
@@ -2341,11 +2751,21 @@
 msgid "No search results available."
 msgstr "Ничего не найдено."
 
+#: ../etherlab/ConfigEditor.py:1029
+#, python-format
+msgid "No slave defined at position %d!"
+msgstr "Для позиции %d не определено ведомое устройство!"
+
 #: ../svgui/svgui.py:142
 #, python-format
 msgid "No such SVG file: %s\n"
 msgstr "Нет такого SVG файла: %s\n"
 
+#: ../etherlab/ConfigEditor.py:1245
+#, python-format
+msgid "No such XML file: %s\n"
+msgstr "Нет такого XML-файла: %s\n"
+
 #: ../canfestival/config_utils.py:682
 #, python-brace-format
 msgid "No such index/subindex ({a1},{a2}) (variable {a3})"
@@ -2356,15 +2776,33 @@
 msgid "No such index/subindex ({a1},{a2}) in ID : {a3} (variable {a4})"
 msgstr "Нет индекса/подиндекса ({a1},{a2}) в ID: {a3} (переменная {a4})"
 
+#: ../etherlab/EthercatCFileGenerator.py:438
+#, python-format
+msgid "No sync manager available for %s pdo!"
+msgstr "Нет доступных менеджеров синхронизации для pdo %s!"
+
 #: ../dialogs/BrowseValuesLibraryDialog.py:87
 msgid "No valid value selected!"
 msgstr "Не выбрано допустимое значение!"
 
-#: ../PLCGenerator.py:1676
+#: ../PLCGenerator.py:1725
 #, python-format
 msgid "No variable defined in \"%s\" POU"
 msgstr "Переменная не определена в POU \"%s\""
 
+#: ../etherlab/ConfigEditor.py:606
+#, python-format
+msgid "Node Position: %d"
+msgstr "Позиция узла: %d"
+
+#: ../etherlab/ConfigEditor.py:697
+msgid "Node filter:"
+msgstr "Фильтр узла:"
+
+#: ../etherlab/ConfigEditor.py:717
+msgid "Nodes variables filter:"
+msgstr "Фильтр переменных узлов:"
+
 #: ../canfestival/config_utils.py:379
 #, python-brace-format
 msgid "Non existing node ID : {a1} (variable {a2})"
@@ -2388,6 +2826,10 @@
 msgid "Not equal to"
 msgstr "Не равно"
 
+#: ../etherlab/EtherCATManagementEditor.py:361
+msgid "Now Uploading..."
+msgstr "Выполняется загрузка ..."
+
 #: ../dialogs/SFCDivergenceDialog.py:91
 msgid "Number of sequences:"
 msgstr "Число ветвей:"
@@ -2396,7 +2838,11 @@
 msgid "Numerical"
 msgstr "Математические функции"
 
-#: ../editors/CodeFileEditor.py:736
+#: ../bacnet/BacnetSlaveEditor.py:808
+msgid "Object Properties:"
+msgstr "Свойства объекта:"
+
+#: ../editors/CodeFileEditor.py:755
 msgid "OnChange"
 msgstr "При изменении"
 
@@ -2413,7 +2859,7 @@
 msgid "Open Inkscape"
 msgstr "Открыть Inkscape"
 
-#: ../version.py:86
+#: ../version.py:88
 msgid ""
 "Open Source framework for automation, implemented IEC 61131 IDE with "
 "constantly growing set of extensions and flexible PLC runtime."
@@ -2422,11 +2868,11 @@
 "из среды разработки программ по стандарту МЭК 61131 с постоянно "
 "расширяющимся набором плагинов и гибкой системой исполнения для ПЛК."
 
-#: ../ProjectController.py:1879
+#: ../ProjectController.py:1962
 msgid "Open a file explorer to manage project files"
 msgstr "Открыть файловый менеджер для просмотра файлов проекта"
 
-#: ../wxglade_hmi/wxglade_hmi.py:161
+#: ../wxglade_hmi/wxglade_hmi.py:176
 msgid "Open wxGlade"
 msgstr "Открыть wxGlade"
 
@@ -2434,11 +2880,11 @@
 msgid "Option"
 msgstr "Квалификатор"
 
-#: ../dialogs/FindInPouDialog.py:84 ../editors/CodeFileEditor.py:737
+#: ../dialogs/FindInPouDialog.py:84 ../editors/CodeFileEditor.py:756
 msgid "Options"
 msgstr "Настройки"
 
-#: ../controls/ProjectPropertiesPanel.py:109
+#: ../controls/ProjectPropertiesPanel.py:111
 msgid "Organization (optional):"
 msgstr "Организация (опционально):"
 
@@ -2446,14 +2892,21 @@
 msgid "Other Profile"
 msgstr "Другой профиль"
 
-#: ../dialogs/SFCStepDialog.py:74 ../dialogs/FBDVariableDialog.py:42
+#: ../dialogs/SFCStepDialog.py:74 ../dialogs/FBDVariableDialog.py:65
 #: ../dialogs/BrowseLocationsDialog.py:44 ../editors/Viewer.py:333
-#: ../editors/Viewer.py:1661 ../editors/TextViewer.py:307
-#: ../controls/LocationCellEditor.py:103 ../controls/VariablePanel.py:89
-#: ../controls/VariablePanel.py:317 ../controls/VariablePanel.py:380
+#: ../editors/Viewer.py:1663 ../editors/TextViewer.py:307
+#: ../controls/LocationCellEditor.py:103 ../controls/VariablePanel.py:86
+#: ../controls/VariablePanel.py:316 ../controls/VariablePanel.py:379
 msgid "Output"
 msgstr "Выход"
 
+#: ../etherlab/EthercatCFileGenerator.py:170
+#, python-brace-format
+msgid ""
+"Output variables can't be defined with different locations ({a1} and {a2})"
+msgstr ""
+"Выходные переменные не могут быть определены в разных местах ({a1} и {a2})"
+
 #: ../canfestival/SlaveEditor.py:67 ../canfestival/NetworkEditor.py:91
 msgid "PDO Receive"
 msgstr "PDO приема"
@@ -2462,26 +2915,39 @@
 msgid "PDO Transmit"
 msgstr "PDO передачи"
 
+#: ../etherlab/etherlab.py:164
+msgid "PDO alignment"
+msgstr "Выравнивание PDO"
+
 #: ../targets/toolchain_gcc.py:174
 msgid "PLC :\n"
 msgstr "ПЛК:\n"
 
-#: ../BeremizIDE.py:383
+#: ../BeremizIDE.py:379
 msgid "PLC Log"
 msgstr "Лог ПЛК"
 
-#: ../ProjectController.py:1082
+#: ../ProjectController.py:1129
 msgid "PLC code generation failed !\n"
 msgstr "Неудачная генерация кода!\n"
 
-#: ../Beremiz_service.py:305
+#: ../etherlab/EtherCATManagementEditor.py:250
+msgid "PLC is Not Started"
+msgstr "ПЛК не запущен"
+
+#: ../Beremiz_service.py:318
 msgid "PLC is empty or already started."
 msgstr "В ПЛК нет программы или он уже запущен."
 
-#: ../Beremiz_service.py:312
+#: ../Beremiz_service.py:325
 msgid "PLC is not started."
 msgstr "ПЛК незапущен."
 
+#: ../etherlab/EtherCATManagementEditor.py:2160
+#: ../etherlab/CommonEtherCATFunction.py:1589
+msgid "PLC not connected!"
+msgstr "ПЛК не подключен!"
+
 #: ../PLCOpenEditor.py:180 ../PLCOpenEditor.py:293
 #, python-brace-format
 msgid ""
@@ -2513,28 +2979,28 @@
 msgid "PORT"
 msgstr "Порт"
 
-#: ../dialogs/PouDialog.py:109
+#: ../dialogs/PouDialog.py:144
 msgid "POU Name"
 msgstr "Имя POU"
 
-#: ../dialogs/PouDialog.py:66
+#: ../dialogs/PouDialog.py:64
 msgid "POU Name:"
 msgstr "Имя POU:"
 
-#: ../dialogs/PouDialog.py:111
+#: ../dialogs/PouDialog.py:146
 msgid "POU Type"
 msgstr "Тип POU"
 
-#: ../dialogs/PouDialog.py:73
+#: ../dialogs/PouDialog.py:71
 msgid "POU Type:"
 msgstr "Тип POU:"
 
-#: ../connectors/PYRO/__init__.py:52
+#: ../connectors/PYRO/__init__.py:53
 #, python-format
 msgid "PYRO connecting to URI : %s\n"
 msgstr "PYRO подключение к URI: %s\n"
 
-#: ../connectors/PYRO/__init__.py:68
+#: ../connectors/PYRO/__init__.py:69
 #, python-format
 msgid "PYRO using certificates in '%s' \n"
 msgstr "PYRO использует сертификаты в '%s'\n"
@@ -2543,11 +3009,11 @@
 msgid "Page Setup"
 msgstr "Настройки страницы"
 
-#: ../controls/ProjectPropertiesPanel.py:124
+#: ../controls/ProjectPropertiesPanel.py:127
 msgid "Page Size (optional):"
 msgstr "Размер страницы (опционально):"
 
-#: ../IDEFrame.py:2640
+#: ../IDEFrame.py:2660
 #, python-format
 msgid "Page: %d"
 msgstr "Страница: %d"
@@ -2556,11 +3022,11 @@
 msgid "Parent instance"
 msgstr "Родительский экземпляр"
 
-#: ../editors/Viewer.py:696 ../IDEFrame.py:374 ../IDEFrame.py:428
+#: ../editors/Viewer.py:699 ../IDEFrame.py:377 ../IDEFrame.py:429
 msgid "Paste"
 msgstr "Вставить"
 
-#: ../IDEFrame.py:1899
+#: ../IDEFrame.py:1916
 msgid "Paste POU"
 msgstr "Вставить POU"
 
@@ -2572,7 +3038,11 @@
 msgid "Pin number:"
 msgstr "Номер пина:"
 
-#: ../editors/Viewer.py:2792 ../editors/Viewer.py:3060
+#: ../runtime/NevowServer.py:163
+msgid "Platform"
+msgstr "Платформа"
+
+#: ../editors/Viewer.py:2791 ../editors/Viewer.py:3059
 #: ../editors/SFCViewer.py:785
 msgid "Please choose a target"
 msgstr "Выберите цель перехода"
@@ -2581,7 +3051,7 @@
 msgid "Please enter a block name"
 msgstr "Введите имя блока"
 
-#: ../editors/Viewer.py:2661 ../editors/Viewer.py:3103
+#: ../dialogs/CommentEditDialog.py:52
 msgid "Please enter comment text"
 msgstr "Введите текст комментария"
 
@@ -2590,7 +3060,8 @@
 msgid "Please enter step name"
 msgstr "Введите имя шага"
 
-#: ../dialogs/PouNameDialog.py:37 ../Beremiz_service.py:209
+#: ../dialogs/SFCStepNameDialog.py:37 ../dialogs/PouNameDialog.py:37
+#: ../Beremiz_service.py:222
 msgid "Please enter text"
 msgstr "Введите текст"
 
@@ -2599,15 +3070,19 @@
 msgid "Please enter value for a \"%s\" variable:"
 msgstr "Введите значение для переменной \"%s\":"
 
-#: ../Beremiz_service.py:327
+#: ../Beremiz_service.py:340
 msgid "Port number must be 0 <= port <= 65535!"
 msgstr "Номер порта должен быть в диапазоне от 0 до 65535!"
 
-#: ../Beremiz_service.py:327
+#: ../Beremiz_service.py:340
 msgid "Port number must be an integer!"
 msgstr "Номер порта должен быть целым числом!"
 
-#: ../editors/Viewer.py:633 ../editors/Viewer.py:2449
+#: ../etherlab/ConfigEditor.py:47 ../etherlab/ConfigEditor.py:465
+msgid "Position"
+msgstr "Позиция"
+
+#: ../editors/Viewer.py:636 ../editors/Viewer.py:2451
 msgid "Power Rail"
 msgstr "Шина питания"
 
@@ -2628,7 +3103,7 @@
 msgid "Print"
 msgstr "Печать"
 
-#: ../IDEFrame.py:1110
+#: ../IDEFrame.py:1123
 msgid "Print preview"
 msgstr "Предварительный просмотр"
 
@@ -2640,33 +3115,37 @@
 msgid "Priority:"
 msgstr "Приоритет:"
 
-#: ../runtime/PLCObject.py:518
+#: ../runtime/PLCObject.py:523
 #, python-format
 msgid "Problem starting PLC : error %d"
 msgstr "Проблема запуска ПЛК: ошибка %d"
 
-#: ../dialogs/ProjectDialog.py:63
+#: ../etherlab/ConfigEditor.py:647
+msgid "Process variables mapped between nodes:"
+msgstr "Переменные процесса отображаемые между узлами:"
+
+#: ../dialogs/ProjectDialog.py:61
 msgid "Product Name"
 msgstr "Имя продукта"
 
-#: ../controls/ProjectPropertiesPanel.py:90
+#: ../controls/ProjectPropertiesPanel.py:91
 msgid "Product Name (required):"
 msgstr "Имя продукта (обязательно):"
 
-#: ../controls/ProjectPropertiesPanel.py:92
+#: ../controls/ProjectPropertiesPanel.py:93
 msgid "Product Release (optional):"
 msgstr "Релиз продукта (опционально):"
 
-#: ../dialogs/ProjectDialog.py:64
+#: ../dialogs/ProjectDialog.py:62
 msgid "Product Version"
 msgstr "Версия продукта"
 
-#: ../controls/ProjectPropertiesPanel.py:91
+#: ../controls/ProjectPropertiesPanel.py:92
 msgid "Product Version (required):"
 msgstr "Версия продукта (обязательно):"
 
-#: ../dialogs/SearchInProjectDialog.py:42 ../IDEFrame.py:1778
-#: ../IDEFrame.py:1975
+#: ../dialogs/SearchInProjectDialog.py:42 ../IDEFrame.py:1795
+#: ../IDEFrame.py:1992
 msgid "Program"
 msgstr "Программа"
 
@@ -2682,7 +3161,7 @@
 msgid "Programs can't be used by other POUs!"
 msgstr "Программы не могут использоваться другими POU!"
 
-#: ../controls/ProjectPropertiesPanel.py:94 ../IDEFrame.py:601
+#: ../controls/ProjectPropertiesPanel.py:95 ../IDEFrame.py:607
 msgid "Project"
 msgstr "Проект"
 
@@ -2691,19 +3170,19 @@
 msgid "Project '%s':"
 msgstr "Проект '%s':"
 
-#: ../ProjectController.py:1878
+#: ../ProjectController.py:1961
 msgid "Project Files"
 msgstr "Файлы проекта"
 
-#: ../dialogs/ProjectDialog.py:62
+#: ../dialogs/ProjectDialog.py:60
 msgid "Project Name"
 msgstr "Имя проекта"
 
-#: ../controls/ProjectPropertiesPanel.py:88
+#: ../controls/ProjectPropertiesPanel.py:89
 msgid "Project Name (required):"
 msgstr "Имя проекта (обязательно):"
 
-#: ../controls/ProjectPropertiesPanel.py:89
+#: ../controls/ProjectPropertiesPanel.py:90
 msgid "Project Version (optional):"
 msgstr "Версия проекта (опционально):"
 
@@ -2732,16 +3211,16 @@
 msgid "Properties"
 msgstr "Свойства"
 
-#: ../Beremiz_service.py:427
+#: ../Beremiz_service.py:440
 msgid "Publishing service on local network"
 msgstr "Сервис доступен в локальной сети"
 
-#: ../connectors/PYRO/__init__.py:126
+#: ../connectors/PYRO/__init__.py:127
 #, python-format
 msgid "Pyro exception: %s\n"
 msgstr "Исключение Pyro: %s\n"
 
-#: ../Beremiz_service.py:420
+#: ../Beremiz_service.py:433
 msgid "Pyro port :"
 msgstr "Порт Pyro :"
 
@@ -2749,7 +3228,7 @@
 msgid "Python code"
 msgstr "Код на python"
 
-#: ../features.py:34
+#: ../features.py:23
 msgid "Python file"
 msgstr "Python файл"
 
@@ -2757,19 +3236,23 @@
 msgid "Qualifier"
 msgstr "Спецификатор"
 
-#: ../BeremizIDE.py:263 ../PLCOpenEditor.py:101 ../Beremiz_service.py:283
+#: ../BeremizIDE.py:263 ../PLCOpenEditor.py:101 ../Beremiz_service.py:296
 msgid "Quit"
 msgstr "Выход"
 
-#: ../controls/DebugVariablePanel/DebugVariablePanel.py:227
+#: ../controls/DebugVariablePanel/DebugVariablePanel.py:224
 msgid "Range:"
 msgstr "Диапазон:"
 
-#: ../ProjectController.py:1872
+#: ../ProjectController.py:1955
 msgid "Raw IEC code"
 msgstr "МЭК-код"
 
-#: ../BeremizIDE.py:1083
+#: ../etherlab/ConfigEditor.py:344
+msgid "Read from (nodeid, index, subindex)"
+msgstr "Чтение из (узел, индекс, субиндекс)"
+
+#: ../BeremizIDE.py:1080
 #, python-format
 msgid "Really delete node '%s'?"
 msgstr "Действительно удалить элемент '%s'?"
@@ -2778,7 +3261,7 @@
 msgid "Realm:"
 msgstr "Realm:"
 
-#: ../IDEFrame.py:367 ../IDEFrame.py:424
+#: ../IDEFrame.py:370 ../IDEFrame.py:425
 msgid "Redo"
 msgstr "Повторить"
 
@@ -2786,10 +3269,14 @@
 msgid "Reference"
 msgstr "Ссылка"
 
-#: ../dialogs/DiscoveryDialog.py:109 ../IDEFrame.py:434
+#: ../dialogs/DiscoveryDialog.py:109 ../IDEFrame.py:436
 msgid "Refresh"
 msgstr "Обновить"
 
+#: ../etherlab/EtherCATManagementEditor.py:1965
+msgid "Register Modify Dialog"
+msgstr "Диалог изменения записи"
+
 #: ../dialogs/SearchInProjectDialog.py:70
 msgid "Regular expression"
 msgstr "Регулярное выражение"
@@ -2798,7 +3285,7 @@
 msgid "Regular expressions"
 msgstr "Регулярные выражения"
 
-#: ../editors/Viewer.py:1636
+#: ../editors/Viewer.py:1638
 msgid "Release value"
 msgstr "Освободить значение"
 
@@ -2806,16 +3293,16 @@
 msgid "Remainder (modulo)"
 msgstr "Остаток от деления (modulo)"
 
-#: ../BeremizIDE.py:1084
+#: ../BeremizIDE.py:1081
 #, python-format
 msgid "Remove %s node"
 msgstr "Удалить %s элемент"
 
-#: ../IDEFrame.py:2445
+#: ../IDEFrame.py:2463
 msgid "Remove Datatype"
 msgstr "Удалить тип данных"
 
-#: ../IDEFrame.py:2450
+#: ../IDEFrame.py:2468
 msgid "Remove Pou"
 msgstr "Удалить POU"
 
@@ -2827,35 +3314,52 @@
 msgid "Remove element"
 msgstr "Удалить элемент"
 
-#: ../editors/FileManagementPanel.py:66
+#: ../etherlab/ConfigEditor.py:1353
+msgid "Remove file from database"
+msgstr "Удалить файл из базы данных"
+
+#: ../editors/FileManagementPanel.py:65
 msgid "Remove file from left folder"
 msgstr "Удалить файл из левой директории"
 
-#: ../editors/ResourceEditor.py:284
+#: ../etherlab/ConfigEditor.py:1389
+msgid "Remove file from library"
+msgstr "Удалить файл из библиотеки"
+
+#: ../editors/ResourceEditor.py:282
 msgid "Remove instance"
 msgstr "Удалить экземпляр"
 
+#: ../etherlab/ConfigEditor.py:653
+msgid "Remove process variable"
+msgstr "Удалить переменную процесса"
+
 #: ../canfestival/NetworkEditor.py:111
 msgid "Remove slave"
 msgstr "Удалить ведомое устройство"
 
-#: ../editors/ResourceEditor.py:253
+#: ../etherlab/ConfigEditor.py:680
+msgid "Remove startup service variable"
+msgstr "Удалить служебную переменную запуска"
+
+#: ../editors/ResourceEditor.py:251
 msgid "Remove task"
 msgstr "Удалить задачу"
 
-#: ../editors/CodeFileEditor.py:655 ../controls/VariablePanel.py:482
+#: ../bacnet/BacnetSlaveEditor.py:812 ../editors/CodeFileEditor.py:673
+#: ../controls/VariablePanel.py:484
 msgid "Remove variable"
 msgstr "Удалить переменную"
 
-#: ../IDEFrame.py:1979
+#: ../IDEFrame.py:1996
 msgid "Rename"
 msgstr "Переименовать"
 
-#: ../editors/FileManagementPanel.py:187
+#: ../editors/FileManagementPanel.py:186
 msgid "Replace File"
 msgstr "Заменить файл"
 
-#: ../editors/Viewer.py:598
+#: ../editors/Viewer.py:601
 msgid "Replace Wire by connections"
 msgstr "Заменить цепь подключениями"
 
@@ -2867,11 +3371,11 @@
 msgid "Reset"
 msgstr "Сброс"
 
-#: ../editors/Viewer.py:681
+#: ../editors/Viewer.py:684
 msgid "Reset Execution Order"
 msgstr "Сбросить порядок исполнения"
 
-#: ../IDEFrame.py:453
+#: ../IDEFrame.py:459
 msgid "Reset Perspective"
 msgstr "Сбросить представление"
 
@@ -2879,7 +3383,7 @@
 msgid "Reset search result"
 msgstr "Сбросить результаты поиска"
 
-#: ../BeremizIDE.py:1015 ../plcopen/types_enums.py:77
+#: ../BeremizIDE.py:1012 ../plcopen/types_enums.py:77
 msgid "Resources"
 msgstr "Ресурсы"
 
@@ -2887,11 +3391,11 @@
 msgid "Retain"
 msgstr "Retain"
 
-#: ../controls/VariablePanel.py:455
+#: ../controls/VariablePanel.py:457
 msgid "Return Type:"
 msgstr "Возвращаемый тип:"
 
-#: ../editors/Viewer.py:582
+#: ../editors/Viewer.py:585
 msgid "Right"
 msgstr "Право"
 
@@ -2899,7 +3403,7 @@
 msgid "Right PowerRail"
 msgstr "Правая шина питания"
 
-#: ../dialogs/LDElementDialog.py:80 ../editors/Viewer.py:555
+#: ../dialogs/LDElementDialog.py:80 ../editors/Viewer.py:558
 msgid "Rising Edge"
 msgstr "Нарастающий фронт"
 
@@ -2915,15 +3419,15 @@
 msgid "Rounding up/down"
 msgstr "Округление вверх/вниз"
 
-#: ../ProjectController.py:1828
+#: ../ProjectController.py:1911
 msgid "Run"
 msgstr "Старт"
 
-#: ../ProjectController.py:1127
+#: ../ProjectController.py:1175
 msgid "Runtime IO extensions C code generation failed !\n"
 msgstr "Ошибка генерации C-кода для расширений ввода-вывода!\n"
 
-#: ../ProjectController.py:1136
+#: ../ProjectController.py:1186
 msgid "Runtime library extensions C code generation failed !\n"
 msgstr "Ошибка генерации C-кода для библиотеки расширений системы исполнения!\n"
 
@@ -2935,11 +3439,11 @@
 msgid "SDO Server"
 msgstr "SDO сервер"
 
-#: ../dialogs/PouDialog.py:44 ../controls/ProjectPropertiesPanel.py:158
+#: ../dialogs/PouDialog.py:128 ../controls/ProjectPropertiesPanel.py:161
 msgid "SFC"
 msgstr "SFC"
 
-#: ../PLCGenerator.py:1433
+#: ../PLCGenerator.py:1482
 #, python-brace-format
 msgid "SFC jump in pou \"{a1}\" refers to non-existent SFC step \"{a2}\""
 msgstr ""
@@ -2952,7 +3456,7 @@
 msgstr "SFC переход в POU \"%s\" должен быть подключен."
 
 #: ../dialogs/PouTransitionDialog.py:40 ../dialogs/PouActionDialog.py:36
-#: ../dialogs/PouDialog.py:44
+#: ../dialogs/PouDialog.py:128
 msgid "ST"
 msgstr "ST"
 
@@ -2964,7 +3468,7 @@
 msgid "SVG files (*.svg)|*.svg|All files|*.*"
 msgstr "SVG файлы (*.svg)|*.svg|Все файлы|*.*"
 
-#: ../features.py:36
+#: ../features.py:25
 msgid "SVGUI"
 msgstr "SVGUI"
 
@@ -2981,38 +3485,48 @@
 msgid "Save as"
 msgstr "Сохранить как"
 
-#: ../ProjectController.py:530
+#: ../etherlab/EtherCATManagementEditor.py:941
+#: ../etherlab/EtherCATManagementEditor.py:1289
+msgid "Save as..."
+msgstr "Сохранить как..."
+
+#: ../ProjectController.py:546
 msgid "Save path is the same as path of a project! \n"
 msgstr "Выбранный путь совпадает с путём проекта!\n"
 
+#: ../etherlab/EthercatMaster.py:455 ../etherlab/EthercatMaster.py:764
+#: ../etherlab/EthercatMaster.py:765
+msgid "Scan Network"
+msgstr "Сканировать сеть"
+
 #: ../dialogs/SearchInProjectDialog.py:73
 msgid "Scope"
 msgstr "Область действия"
 
-#: ../IDEFrame.py:644
+#: ../IDEFrame.py:650
 msgid "Search"
 msgstr "Поиск"
 
-#: ../dialogs/SearchInProjectDialog.py:49 ../IDEFrame.py:384
-#: ../IDEFrame.py:430
+#: ../dialogs/SearchInProjectDialog.py:49 ../IDEFrame.py:387
+#: ../IDEFrame.py:431
 msgid "Search in Project"
 msgstr "Поиск в проекте"
 
-#: ../dialogs/DurationEditorDialog.py:49
+#: ../dialogs/DurationEditorDialog.py:60
 msgid "Seconds:"
 msgstr "Секунды:"
 
-#: ../IDEFrame.py:390
+#: ../IDEFrame.py:393
 msgid "Select All"
 msgstr "Выделить все"
 
 #: ../editors/Viewer.py:331 ../editors/TextViewer.py:305
-#: ../controls/LocationCellEditor.py:101 ../controls/VariablePanel.py:315
-#: ../controls/VariablePanel.py:378
+#: ../controls/LocationCellEditor.py:101 ../controls/VariablePanel.py:314
+#: ../controls/VariablePanel.py:377
 msgid "Select a variable class:"
 msgstr "Выберите класс переменной:"
 
-#: ../ProjectController.py:1293
+#: ../ProjectController.py:1354
 msgid "Select an editor:"
 msgstr "Выберите редактор:"
 
@@ -3020,11 +3534,11 @@
 msgid "Select an instance"
 msgstr "Выберите экземпляр"
 
-#: ../IDEFrame.py:628
+#: ../IDEFrame.py:634
 msgid "Select an object"
 msgstr "Выберите объект"
 
-#: ../ProjectController.py:537
+#: ../ProjectController.py:555
 msgid "Selected directory already contains another project. Overwrite? \n"
 msgstr "Выбранная директория уже содержит другой проект. Перезаписать?\n"
 
@@ -3040,6 +3554,14 @@
 msgid "Selection Divergence"
 msgstr "Альтернативное ветвление"
 
+#: ../runtime/NevowServer.py:182
+msgid "Send"
+msgstr "Отправить"
+
+#: ../runtime/NevowServer.py:181
+msgid "Send a message to the log"
+msgstr "Отправить сообщение в журнал"
+
 #: ../dialogs/DiscoveryDialog.py:135
 msgid "Service Discovery"
 msgstr "Поиск сервиса"
@@ -3048,7 +3570,7 @@
 msgid "Services available:"
 msgstr "Доступные сервисы:"
 
-#: ../dialogs/LDElementDialog.py:79
+#: ../dialogs/LDElementDialog.py:79 ../runtime/WampClient.py:434
 msgid "Set"
 msgstr "Установить"
 
@@ -3060,7 +3582,7 @@
 msgid "Shift right"
 msgstr "Сдвиг вправо"
 
-#: ../ProjectController.py:1863
+#: ../ProjectController.py:1946
 msgid "Show IEC code generated by PLCGenerator"
 msgstr "Показать код, сгенерированный PLCGenerator"
 
@@ -3072,7 +3594,7 @@
 msgid "Show Master generated by config_utils"
 msgstr "Показать ведущий узел сгенерированный config_utils"
 
-#: ../ProjectController.py:1862
+#: ../ProjectController.py:1945
 msgid "Show code"
 msgstr "Показать код"
 
@@ -3092,6 +3614,14 @@
 msgid "Single"
 msgstr "Источник"
 
+#: ../etherlab/EtherCATManagementEditor.py:361
+msgid "Slave SDO Monitoring"
+msgstr "Мониторинг ведомых SDO"
+
+#: ../etherlab/ConfigEditor.py:135
+msgid "Slave entries"
+msgstr "Ведомые записи"
+
 #: ../targets/toolchain_makefile.py:130
 msgid "Source didn't change, no build.\n"
 msgstr "Исходные файлы не изменились, сборка не нужна.\n"
@@ -3112,44 +3642,56 @@
 msgid "Standard function blocks"
 msgstr "Стандартные функциональные блоки"
 
-#: ../ProjectController.py:1829 ../Beremiz_service.py:271
+#: ../etherlab/ConfigEditor.py:68
+msgid "Standardized Device Profile"
+msgstr "Стандартизованный профиль устройства"
+
+#: ../etherlab/EtherCATManagementEditor.py:37
+msgid "Start Address"
+msgstr "Начальный адрес"
+
+#: ../ProjectController.py:1912 ../Beremiz_service.py:284
 msgid "Start PLC"
 msgstr "Запустить ПЛК"
 
-#: ../ProjectController.py:1074
+#: ../ProjectController.py:1121
 #, python-format
 msgid "Start build in %s\n"
 msgstr "Сборка запущена в %s\n"
 
-#: ../ProjectController.py:1397
+#: ../runtime/PlcStatus.py:12
 msgid "Started"
 msgstr "Работа"
 
-#: ../ProjectController.py:1633
+#: ../ProjectController.py:1714
 msgid "Starting PLC\n"
 msgstr "ПЛК запускается\n"
 
-#: ../BeremizIDE.py:393
+#: ../etherlab/ConfigEditor.py:674
+msgid "Startup service variables assignments:"
+msgstr "Назначение переменных службы запуска:"
+
+#: ../BeremizIDE.py:389
 msgid "Status ToolBar"
 msgstr "Панель статуса"
 
-#: ../editors/Viewer.py:651 ../editors/Viewer.py:2424
+#: ../editors/Viewer.py:654 ../editors/Viewer.py:2426
 msgid "Step"
 msgstr "Шаг"
 
-#: ../ProjectController.py:1835
+#: ../ProjectController.py:1918
 msgid "Stop"
 msgstr "Стоп"
 
-#: ../Beremiz_service.py:272
+#: ../Beremiz_service.py:285
 msgid "Stop PLC"
 msgstr "Остановить ПЛК"
 
-#: ../ProjectController.py:1836
+#: ../ProjectController.py:1919
 msgid "Stop Running PLC"
 msgstr "Остановить запущенный ПЛК"
 
-#: ../ProjectController.py:1398
+#: ../runtime/PlcStatus.py:13
 msgid "Stopped"
 msgstr "Стоп"
 
@@ -3157,6 +3699,14 @@
 msgid "Structure"
 msgstr "Структура"
 
+#: ../etherlab/ConfigEditor.py:48
+msgid "SubIndex"
+msgstr "Cубиндекс"
+
+#: ../etherlab/ConfigEditor.py:465
+msgid "Subindex"
+msgstr "Subindex"
+
 #: ../editors/DataTypeEditor.py:60
 msgid "Subrange"
 msgstr "Поддиапазон"
@@ -3165,11 +3715,11 @@
 msgid "Subtraction"
 msgstr "Вычитание"
 
-#: ../ProjectController.py:1113
+#: ../ProjectController.py:1160
 msgid "Successfully built.\n"
 msgstr "Сборка прошла успешно.\n"
 
-#: ../IDEFrame.py:449
+#: ../IDEFrame.py:451
 msgid "Switch perspective"
 msgstr "Сменить представление"
 
@@ -3185,19 +3735,19 @@
 msgid "Tangent"
 msgstr "Тангенс"
 
-#: ../editors/ResourceEditor.py:97
+#: ../editors/ResourceEditor.py:94
 msgid "Task"
 msgstr "Задача"
 
-#: ../editors/ResourceEditor.py:248
+#: ../editors/ResourceEditor.py:246
 msgid "Tasks:"
 msgstr "Задачи:"
 
-#: ../controls/VariablePanel.py:91
+#: ../controls/VariablePanel.py:88
 msgid "Temp"
 msgstr "Временный"
 
-#: ../version.py:35
+#: ../version.py:37
 msgid ""
 "The best place to ask questions about Beremiz/PLCOpenEditor\n"
 "is project's mailing list: beremiz-devel@lists.sourceforge.net\n"
@@ -3219,7 +3769,15 @@
 "Вы можете подписаться на список рассылки здесь:\n"
 "https://lists.sourceforge.net/lists/listinfo/beremiz-devel"
 
-#: ../editors/FileManagementPanel.py:186
+#: ../etherlab/EthercatMaster.py:454
+msgid ""
+"The current network configuration will be deleted.\n"
+"Do you want to continue?"
+msgstr ""
+"Текущая конфигурация сети будет удалена.\n"
+"Вы хотите продолжить?"
+
+#: ../editors/FileManagementPanel.py:185
 #, python-format
 msgid ""
 "The file '%s' already exist.\n"
@@ -3228,15 +3786,20 @@
 "Файл '%s' уже существует.\n"
 "Вы хотите заменить его?"
 
+#: ../etherlab/EtherCATManagementEditor.py:928
+#: ../etherlab/EtherCATManagementEditor.py:1320
+msgid "The file does not exist!"
+msgstr "Файл не существует!"
+
 #: ../editors/LDViewer.py:893
 msgid "The group of block must be coherent!"
 msgstr "Группа блоков должна быть связанной!"
 
-#: ../BeremizIDE.py:573 ../IDEFrame.py:1046
+#: ../BeremizIDE.py:569 ../IDEFrame.py:1059
 msgid "There are changes, do you want to save?"
 msgstr "Хотите сохранить изменения?"
 
-#: ../IDEFrame.py:1691 ../IDEFrame.py:1710
+#: ../IDEFrame.py:1708 ../IDEFrame.py:1727
 #, python-format
 msgid ""
 "There is a POU named \"%s\". This could cause a conflict. Do you wish to "
@@ -3245,7 +3808,7 @@
 "Существует POU с именем \"%s\". Это может вызвать конфликт. Хотите "
 "продолжить?"
 
-#: ../IDEFrame.py:1133
+#: ../IDEFrame.py:1146
 msgid ""
 "There was a problem printing.\n"
 "Perhaps your current printer is not set correctly?"
@@ -3257,7 +3820,7 @@
 msgid "This option isn't available yet!"
 msgstr "Это опция еще не доступна!"
 
-#: ../controls/DebugVariablePanel/DebugVariablePanel.py:567
+#: ../controls/DebugVariablePanel/DebugVariablePanel.py:546
 #, python-format
 msgid "Tick: %d"
 msgstr "Цикл: %d"
@@ -3295,36 +3858,40 @@
 msgid "Time-of-day subtraction"
 msgstr "Вычитание времени суток"
 
+#: ../IDEFrame.py:432
+msgid "Toggle fullscreen mode"
+msgstr "Переключить полноэкранный режим"
+
 #: ../dialogs/ForceVariableDialog.py:188
 msgid "Toggle value"
 msgstr "Переключить значение"
 
-#: ../editors/Viewer.py:584
+#: ../editors/Viewer.py:587
 msgid "Top"
 msgstr "Верх"
 
-#: ../ProjectController.py:1848
+#: ../ProjectController.py:1931
 msgid "Transfer"
 msgstr "Передать"
 
-#: ../ProjectController.py:1849
+#: ../ProjectController.py:1932
 msgid "Transfer PLC"
 msgstr "Передать ПЛК"
 
-#: ../ProjectController.py:1802
+#: ../ProjectController.py:1884
 msgid "Transfer completed successfully.\n"
 msgstr "Передача успешно завершена.\n"
 
-#: ../ProjectController.py:1805
+#: ../ProjectController.py:1887
 msgid "Transfer failed\n"
 msgstr "Ошибка передачи\n"
 
-#: ../editors/Viewer.py:652 ../editors/Viewer.py:2426
-#: ../editors/Viewer.py:2453
+#: ../editors/Viewer.py:655 ../editors/Viewer.py:2428
+#: ../editors/Viewer.py:2455
 msgid "Transition"
 msgstr "Переход"
 
-#: ../PLCGenerator.py:1564
+#: ../PLCGenerator.py:1613
 #, python-format
 msgid ""
 "Transition \"%s\" body must contain an output variable or coil referring to "
@@ -3333,20 +3900,20 @@
 "Тело перехода \"%s\" должно содержать выходную переменную или катушку, "
 "ссылающуюся на его имя"
 
-#: ../dialogs/PouTransitionDialog.py:91
+#: ../dialogs/PouTransitionDialog.py:90
 msgid "Transition Name"
 msgstr "Имя перехода"
 
-#: ../dialogs/PouTransitionDialog.py:60
+#: ../dialogs/PouTransitionDialog.py:59
 msgid "Transition Name:"
 msgstr "Имя перехода:"
 
-#: ../PLCGenerator.py:1657
+#: ../PLCGenerator.py:1706
 #, python-brace-format
 msgid "Transition with content \"{a1}\" not connected to a next step in \"{a2}\" POU"
 msgstr "Переход с содержимым \"{a1}\" не подключен к следующему шагу в POU \"{a2}\""
 
-#: ../PLCGenerator.py:1646
+#: ../PLCGenerator.py:1695
 #, python-brace-format
 msgid ""
 "Transition with content \"{a1}\" not connected to a previous step in "
@@ -3370,17 +3937,17 @@
 msgid "Triggering"
 msgstr "Запуск"
 
-#: ../Beremiz_service.py:490
+#: ../Beremiz_service.py:503
 msgid "Twisted unavailable."
 msgstr "Модуль Twisted недоступен."
 
-#: ../dialogs/ActionBlockDialog.py:42 ../editors/ResourceEditor.py:97
-#: ../editors/DataTypeEditor.py:55 ../editors/CodeFileEditor.py:733
-#: ../controls/VariablePanel.py:61
+#: ../dialogs/ActionBlockDialog.py:42 ../etherlab/ConfigEditor.py:48
+#: ../editors/ResourceEditor.py:94 ../editors/DataTypeEditor.py:55
+#: ../editors/CodeFileEditor.py:752 ../controls/VariablePanel.py:61
 msgid "Type"
 msgstr "Тип"
 
-#: ../dialogs/BrowseLocationsDialog.py:54
+#: ../dialogs/BrowseLocationsDialog.py:51
 msgid "Type and derivated"
 msgstr "Тип и его производные"
 
@@ -3397,16 +3964,25 @@
 msgid "Type infos:"
 msgstr "Информация о типе:"
 
-#: ../dialogs/BrowseLocationsDialog.py:55
+#: ../etherlab/EthercatCFileGenerator.py:76
+#, python-format
+msgid "Type of location \"%s\" not yet supported!"
+msgstr "Тип адреса \"%s\" пока не поддерживается!"
+
+#: ../dialogs/BrowseLocationsDialog.py:52
 msgid "Type strict"
 msgstr "Только данный тип"
 
 #: ../dialogs/SFCDivergenceDialog.py:60 ../dialogs/SFCTransitionDialog.py:59
-#: ../dialogs/LDPowerRailDialog.py:58 ../dialogs/BrowseLocationsDialog.py:111
+#: ../dialogs/LDPowerRailDialog.py:58 ../dialogs/BrowseLocationsDialog.py:110
 #: ../dialogs/FBDBlockDialog.py:69 ../dialogs/ConnectionDialog.py:61
 msgid "Type:"
 msgstr "Тип:"
 
+#: ../runtime/WampClient.py:129
+msgid "TypeError register option: {}"
+msgstr "TypeError настроек регистрации : {}"
+
 #: ../connectors/PYRO/dialog.py:39 ../connectors/WAMP/dialog.py:42
 msgid "URI host:"
 msgstr "Узел:"
@@ -3429,7 +4005,17 @@
 msgid "Unable to get Xenomai's %s \n"
 msgstr "Невозможно получить Xenomai %s\n"
 
-#: ../PLCGenerator.py:974 ../PLCGenerator.py:1252
+#: ../bacnet/bacnet.py:430
+#, python-format
+msgid "Unable to load file \"%s\"!"
+msgstr "Не удалось загрузить файл «%s»!"
+
+#: ../bacnet/bacnet.py:420
+#, python-format
+msgid "Unable to save to file \"%s\"!"
+msgstr "Не удалось сохранить файл «%s»!"
+
+#: ../PLCGenerator.py:1023 ../PLCGenerator.py:1301
 #, python-brace-format
 msgid "Undefined block type \"{a1}\" in \"{a2}\" POU"
 msgstr "Неопределенный тип блока \"{a1}\" в POU \"{a2}\""
@@ -3439,20 +4025,27 @@
 msgid "Undefined pou type \"%s\""
 msgstr "Неопределенный тип POU \"%s\""
 
-#: ../IDEFrame.py:365 ../IDEFrame.py:423
+#: ../IDEFrame.py:368 ../IDEFrame.py:424
 msgid "Undo"
 msgstr "Отмена"
 
-#: ../ProjectController.py:442
+#: ../ProjectController.py:457
 msgid "Unknown"
 msgstr "Неизвестно"
 
+#: ../etherlab/EthercatCFileGenerator.py:470
+#, python-brace-format
+msgid "Unknown entry index 0x{a1:.4x}, subindex 0x{a2:.2x} for device {a3}"
+msgstr ""
+"Неизвестная запись индекс 0x {a1: .4x}, субиндекс 0x {a2: .2x} для "
+"устройства {a3}"
+
 #: ../editors/Viewer.py:437
 #, python-format
 msgid "Unknown variable \"%s\" for this POU!"
 msgstr "Неизвестная переменная \"%s\" для этого POU!"
 
-#: ../ProjectController.py:439 ../ProjectController.py:440
+#: ../ProjectController.py:454 ../ProjectController.py:455
 msgid "Unnamed"
 msgstr "Unnamed"
 
@@ -3461,12 +4054,20 @@
 msgid "Unnamed%d"
 msgstr "Unnamed%d"
 
-#: ../controls/VariablePanel.py:308
+#: ../controls/VariablePanel.py:307
 #, python-format
 msgid "Unrecognized data size \"%s\""
 msgstr "Неопределенный размер данных \"%s\""
 
-#: ../editors/DataTypeEditor.py:646 ../controls/VariablePanel.py:841
+#: ../etherlab/EtherCATManagementEditor.py:2080
+msgid "Update"
+msgstr "Обновить"
+
+#: ../runtime/WampClient.py:380
+msgid "Upload:"
+msgstr "Загрузить:"
+
+#: ../editors/DataTypeEditor.py:646 ../controls/VariablePanel.py:852
 msgid "User Data Types"
 msgstr "Пользовательские типы данных"
 
@@ -3478,7 +4079,7 @@
 msgid "User-defined POUs"
 msgstr "Пользовательские POU"
 
-#: ../dialogs/ActionBlockDialog.py:42
+#: ../dialogs/ActionBlockDialog.py:42 ../etherlab/ConfigEditor.py:465
 msgid "Value"
 msgstr "Значение"
 
@@ -3486,24 +4087,29 @@
 msgid "Values:"
 msgstr "Значения:"
 
-#: ../dialogs/ActionBlockDialog.py:47 ../editors/Viewer.py:622
-#: ../editors/Viewer.py:2456
+#: ../dialogs/ActionBlockDialog.py:47 ../editors/Viewer.py:625
+#: ../editors/Viewer.py:2458
 msgid "Variable"
 msgstr "Переменная"
 
 #: ../editors/Viewer.py:352 ../editors/Viewer.py:382 ../editors/Viewer.py:404
 #: ../editors/TextViewer.py:290 ../editors/TextViewer.py:344
-#: ../editors/TextViewer.py:367 ../controls/VariablePanel.py:355
+#: ../editors/TextViewer.py:367 ../controls/VariablePanel.py:354
 msgid "Variable Drop"
 msgstr "Перетаскивание переменной"
 
-#: ../dialogs/FBDVariableDialog.py:68
+#: ../etherlab/ConfigEditor.py:70
+#, python-format
+msgid "Variable Index: #x%4.4X"
+msgstr "Индекс переменной: # x%4.4X"
+
+#: ../dialogs/FBDVariableDialog.py:58
 msgid "Variable Properties"
 msgstr "Свойства переменных"
 
 #: ../editors/Viewer.py:332 ../editors/TextViewer.py:306
-#: ../controls/LocationCellEditor.py:102 ../controls/VariablePanel.py:316
-#: ../controls/VariablePanel.py:379
+#: ../controls/LocationCellEditor.py:102 ../controls/VariablePanel.py:315
+#: ../controls/VariablePanel.py:378
 msgid "Variable class"
 msgstr "Класс переменной"
 
@@ -3511,24 +4117,28 @@
 msgid "Variable don't belong to this POU!"
 msgstr "Переменная не принадлежит этому POU!"
 
+#: ../etherlab/ConfigEditor.py:280
+msgid "Variable entries:"
+msgstr "Записи переменных:"
+
 #: ../dialogs/LDElementDialog.py:92
 msgid "Variable:"
 msgstr "Переменная:"
 
-#: ../controls/VariablePanel.py:90
+#: ../controls/VariablePanel.py:87
 msgid "Variables"
 msgstr "Переменные"
 
-#: ../controls/ProjectPropertiesPanel.py:166
+#: ../controls/ProjectPropertiesPanel.py:169
 msgid "Vertical:"
 msgstr "Вертикальный:"
 
-#: ../runtime/WampClient.py:113
+#: ../runtime/WampClient.py:170
 #, python-format
 msgid "WAMP Client connection failed (%s) .. retrying .."
 msgstr "Неудачное подключение WAMP (%s) .. повтор .."
 
-#: ../runtime/WampClient.py:117
+#: ../runtime/WampClient.py:179
 #, python-format
 msgid "WAMP Client connection lost (%s) .. retrying .."
 msgstr "WAMP соединение потеряно (%s) .. переподключение .."
@@ -3537,49 +4147,66 @@
 msgid "WAMP ID:"
 msgstr "WAMP ID:"
 
-#: ../runtime/WampClient.py:172
+#: ../runtime/WampClient.py:413
+msgid "WAMP Server URL"
+msgstr "URL-адрес сервера WAMP"
+
+#: ../runtime/WampClient.py:276
+msgid "WAMP authentication has no secret configured"
+msgstr "Не настроен пароль для аутентификации WAMP"
+
+#: ../runtime/WampClient.py:304
+msgid "WAMP client can not connect to :"
+msgstr "Клиент WAMP не может подключиться к:"
+
+#: ../runtime/WampClient.py:301
 msgid "WAMP client connecting to :"
 msgstr "WAMP клиент подключается к :"
 
-#: ../runtime/WampClient.py:148
-msgid "WAMP client connection not established!"
-msgstr "Не удалось выполнить WAMP подключение!"
-
-#: ../Beremiz_service.py:625
+#: ../Beremiz_service.py:628
 msgid "WAMP client startup failed. "
 msgstr "Ошибка импорта WAMP. "
 
-#: ../Beremiz_service.py:621
-msgid "WAMP config is incomplete."
-msgstr "Неполная конфигурация WAMP."
-
-#: ../Beremiz_service.py:623
-msgid "WAMP config is missing."
-msgstr "Конфигурация WAMP отсутствует."
-
-#: ../connectors/WAMP/__init__.py:99
+#: ../runtime/WampClient.py:206
+msgid "WAMP configuration error : missing '{}' parameter."
+msgstr "Ошибка конфигурации WAMP: отсутствует параметр «{}»."
+
+#: ../runtime/WampClient.py:192
+msgid "WAMP configuration error:"
+msgstr "Ошибка конфигурации WAMP:"
+
+#: ../connectors/WAMP/__init__.py:100
 #, python-format
 msgid "WAMP connecting to URL : %s\n"
 msgstr "WAMP подключение к URI: %s\n"
 
-#: ../connectors/WAMP/__init__.py:140
+#: ../connectors/WAMP/__init__.py:141
 msgid "WAMP connection timeout"
 msgstr "Тайм-аут WAMP подключения "
 
-#: ../connectors/WAMP/__init__.py:158
+#: ../connectors/WAMP/__init__.py:159
 #, python-format
 msgid "WAMP connection to '%s' failed.\n"
 msgstr "Не удалось установить WAMP подключение к %s.\n"
 
-#: ../Beremiz_service.py:595
+#: ../runtime/WampClient.py:280
+msgid "WAMP deactivated in configuration"
+msgstr "WAMP отключен в конфигурации"
+
+#: ../Beremiz_service.py:605
 msgid "WAMP import failed :"
 msgstr "Ошибка импорта WAMP :"
 
-#: ../runtime/WampClient.py:126
-msgid "WAMP load error: "
-msgstr "Ошибка загрузки WAMP:"
-
-#: ../runtime/WampClient.py:108
+#: ../runtime/WampClient.py:241
+msgid "WAMP secret empty"
+msgstr "Пустой пароль WAMP"
+
+#: ../runtime/WampClient.py:139
+#, python-format
+msgid "WAMP session joined (%s) by:"
+msgstr "Сессия WAMP присоединилась (%s) к: "
+
+#: ../runtime/WampClient.py:146
 msgid "WAMP session left"
 msgstr "Завершение сеанса WAMP"
 
@@ -3587,15 +4214,29 @@
 msgid "WXGLADE GUI"
 msgstr "WXGLADE GUI"
 
-#: ../runtime/WampClient.py:137
-msgid "Wamp secret load error:"
-msgstr "Ошибка загрузки секретной информации Wamp:"
-
-#: ../dialogs/PouDialog.py:137 ../editors/LDViewer.py:902
+#: ../runtime/WampClient.py:432
+msgid "Wamp Settings"
+msgstr "Настройки Wamp"
+
+#: ../dialogs/PouDialog.py:172 ../editors/LDViewer.py:902
 msgid "Warning"
 msgstr "Предупреждение"
 
-#: ../ProjectController.py:726
+#: ../etherlab/EthercatCFileGenerator.py:405
+#: ../etherlab/EthercatCFileGenerator.py:571
+msgid "Warning: "
+msgstr "Предупреждение:"
+
+#: ../wxglade_hmi/wxglade_hmi.py:166
+msgid ""
+"Warning: WxGlade HMI has no object with name identical to extension name, "
+"and no python code is provided in start section to create object.\n"
+msgstr ""
+"Предупреждение: WxGlade HMI не имеет объекта с именем, идентичным имени "
+"расширения, и в начале раздела для создания объекта не предоставляется код "
+"python.\n"
+
+#: ../ProjectController.py:756
 msgid "Warnings in ST/IL/SFC code generator :\n"
 msgstr "Предупреждения в ST/IL/SFC коде генераторе:\n"
 
@@ -3603,7 +4244,7 @@
 msgid "Whole Project"
 msgstr "Весь проект"
 
-#: ../controls/ProjectPropertiesPanel.py:134
+#: ../controls/ProjectPropertiesPanel.py:137
 msgid "Width:"
 msgstr "Ширина:"
 
@@ -3611,14 +4252,47 @@
 msgid "Wrap search"
 msgstr "Продолжить поиск сначала"
 
+#: ../etherlab/ConfigEditor.py:345
+msgid "Write to (nodeid, index, subindex)"
+msgstr "Запись в (узел, индекс, субиндекс)"
+
 #: ../dialogs/AboutDialog.py:126
 msgid "Written by"
 msgstr "Авторы"
 
-#: ../features.py:35
+#: ../etherlab/EthercatCFileGenerator.py:409
+#: ../etherlab/EthercatCFileGenerator.py:499
+#, python-format
+msgid "Wrong direction for location \"%s\"!"
+msgstr "Неправильное направление для адреса «%s»!"
+
+#: ../etherlab/EthercatCFileGenerator.py:400
+#: ../etherlab/EthercatCFileGenerator.py:487
+#, python-format
+msgid "Wrong type for location \"%s\"!"
+msgstr "Неверный тип для адреса «%s»!"
+
+#: ../features.py:24
 msgid "WxGlade GUI"
 msgstr "WxGlade GUI"
 
+#: ../etherlab/ConfigEditor.py:1236
+msgid "XML files (*.xml)|*.xml|All files|*.*"
+msgstr "XML файлы (*.xml)|*.xml|Все файлы|*.*"
+
+#: ../etherlab/EtherCATManagementEditor.py:652
+msgid "You can input only hex, dec value"
+msgstr "Вы можете ввести только шестнадцатеричное или десятичное значение"
+
+#: ../etherlab/EtherCATManagementEditor.py:1999
+msgid "You can't modify it. This register is read-only or it's not connected."
+msgstr ""
+"Вы не можете изменить это. Этот регистр только для чтения или не подключен."
+
+#: ../etherlab/EtherCATManagementEditor.py:648
+msgid "You cannot SDO download this state"
+msgstr "Вы не можете загрузить это состояние через SDO"
+
 #: ../svgui/svgui.py:150
 msgid ""
 "You don't have write permissions.\n"
@@ -3627,7 +4301,7 @@
 "У вас недостаточно прав для записи.\n"
 "Открыть Inkscape все равно?"
 
-#: ../wxglade_hmi/wxglade_hmi.py:160
+#: ../wxglade_hmi/wxglade_hmi.py:175
 msgid ""
 "You don't have write permissions.\n"
 "Open wxGlade anyway ?"
@@ -3635,7 +4309,13 @@
 "У вас недостаточно прав для записи.\n"
 "Открыть wxGlade все равно?"
 
-#: ../ProjectController.py:390
+#: ../etherlab/EtherCATManagementEditor.py:2002
+msgid "You entered wrong value. You can enter dec or hex value only."
+msgstr ""
+"Вы ввели неверное значение. Вы можете ввести только десятичное или "
+"шестнадцатеричное значение."
+
+#: ../ProjectController.py:403
 msgid ""
 "You must have permission to work on the project\n"
 "Work on a project copy ?"
@@ -3662,11 +4342,21 @@
 msgid "You must type a value!"
 msgstr "Введите значение!"
 
-#: ../IDEFrame.py:440
+#: ../IDEFrame.py:442
 msgid "Zoom"
 msgstr "Приближение"
 
-#: ../dialogs/DurationEditorDialog.py:158
+#: ../etherlab/EtherCATManagementEditor.py:911
+#: ../etherlab/EtherCATManagementEditor.py:1307
+msgid "bin files (*.bin)|*.bin"
+msgstr "bin файлы (* .bin) | * .bin"
+
+#: ../etherlab/EtherCATManagementEditor.py:942
+#: ../etherlab/EtherCATManagementEditor.py:1290
+msgid "bin files (*.bin)|*.bin|All files|*.*"
+msgstr "bin файлы (* .bin) | * .bin | Все файлы | *. *"
+
+#: ../dialogs/DurationEditorDialog.py:159
 msgid "days"
 msgstr "дни"
 
@@ -3680,35 +4370,39 @@
 msgid "exited with status {a1} (pid {a2})\n"
 msgstr "завершился с кодом {a1} (pid {a2})\n"
 
-#: ../dialogs/PouDialog.py:36
+#: ../dialogs/PouDialog.py:110
 msgid "function"
 msgstr "функция"
 
-#: ../dialogs/PouDialog.py:36
+#: ../dialogs/PouDialog.py:110
 msgid "functionBlock"
 msgstr "функциональный блок"
 
-#: ../dialogs/DurationEditorDialog.py:158
+#: ../dialogs/DurationEditorDialog.py:159
 msgid "hours"
 msgstr "часы"
 
-#: ../ProjectController.py:753
+#: ../ProjectController.py:784
 msgid "matiec installation is not found\n"
 msgstr "Установка matiec не найдена\n"
 
-#: ../dialogs/DurationEditorDialog.py:160
+#: ../dialogs/DurationEditorDialog.py:162
+msgid "microseconds"
+msgstr "микросекунд"
+
+#: ../dialogs/DurationEditorDialog.py:161
 msgid "milliseconds"
 msgstr "милисекунды"
 
-#: ../dialogs/DurationEditorDialog.py:159
+#: ../dialogs/DurationEditorDialog.py:160
 msgid "minutes"
 msgstr "минуты"
 
-#: ../dialogs/PouDialog.py:36
+#: ../dialogs/PouDialog.py:110
 msgid "program"
 msgstr "программа"
 
-#: ../dialogs/DurationEditorDialog.py:159
+#: ../dialogs/DurationEditorDialog.py:160
 msgid "seconds"
 msgstr "секунды"
 
@@ -3724,6 +4418,10 @@
 msgid "string right of"
 msgstr "строка справа от "
 
+#: ../etherlab/EtherCATManagementEditor.py:323
+msgid "update"
+msgstr "обновить"
+
 #: ../Beremiz.py:167
 msgid "update info unavailable."
 msgstr "информация об обновлениях недоступна."
@@ -3776,6 +4474,33 @@
 msgid "CAN_Driver"
 msgstr "CAN драйвер"
 
+msgid "BACnetServerNode"
+msgstr "Узел BACnet сервера"
+
+msgid "Network_Interface"
+msgstr "Сетевой интерфейс"
+
+msgid "UDP_Port_Number"
+msgstr "UDP порт"
+
+msgid "BACnet_Communication_Control_Password"
+msgstr "Пароль для подключением BACnet"
+
+msgid "BACnet_Device_ID"
+msgstr "Адрес BACnet устройства"
+
+msgid "BACnet_Device_Name"
+msgstr "Имя BACnet устройства"
+
+msgid "BACnet_Device_Location"
+msgstr "Расположение BACnet устройства"
+
+msgid "BACnet_Device_Description"
+msgstr "Описание BACnet устройства"
+
+msgid "BACnet_Device_Application_Software_Version"
+msgstr "Версия ПО BACnet устройства"
+
 msgid "Generic"
 msgstr "Generic"
 
@@ -3872,6 +4597,24 @@
 msgid "MaxRemoteTCPclients"
 msgstr "Максимальное количество TCP клиентов"
 
+msgid "CIA402SlaveParams"
+msgstr "CIA402SlaveParams"
+
+msgid "Enable%s"
+msgstr "Разрешить %s"
+
+msgid "ProcessVariables"
+msgstr "ProcessVariables"
+
+msgid "variable"
+msgstr "переменная"
+
+msgid "ReadFrom"
+msgstr "Чтение из"
+
+msgid "WriteTo"
+msgstr "Запись в"
+
 msgid "BaseParams"
 msgstr "Базовые параметры"
 
@@ -3902,9 +4645,6 @@
 msgid "variables"
 msgstr "переменные"
 
-msgid "variable"
-msgstr "переменная"
-
 msgid "name"
 msgstr "имя"