I/O Mapping Matrix: различия между версиями

Материал из Wiren Board
м (Поправил текст)
Строка 70: Строка 70:


[[Еxamples of interaction | Примеры программирования взаимодействия входов и выходов]]
[[Еxamples of interaction | Примеры программирования взаимодействия входов и выходов]]


  <!--
  <!--
Строка 127: Строка 129:
| style="text-align:center;vertical-align:bottom;" | [[File:Mm_1110.png|frameless|270px]]<br>(14, 0x0E) — Изменить состояние, потом <br>включить при размыкании
| style="text-align:center;vertical-align:bottom;" | [[File:Mm_1110.png|frameless|270px]]<br>(14, 0x0E) — Изменить состояние, потом <br>включить при размыкании
| style="text-align:center;vertical-align:bottom;" | [[File:Mm_1111.png|frameless|270px]]<br>(15, 0x0F) — Изменить состояние при замыкании<br>и вернуться к исходному состоянию<br>при размыкании
| style="text-align:center;vertical-align:bottom;" | [[File:Mm_1111.png|frameless|270px]]<br>(15, 0x0F) — Изменить состояние при замыкании<br>и вернуться к исходному состоянию<br>при размыкании
|}
Начиная с версии прошивки 1.17.0 появились дополнительные матрицы с возможностью настроить входы как кнопки для детектирования различных типов нажатий. Добавлена обработка 4 типов нажатий: короткое, длинное, двойное и сначала короткое, затем длинное. Настраиваемые действия аналогичны Mapping-матрице, также как и принцип выбора регистра на пересечении. Биты '''yy''' не используются. Адреса для настройки матриц нажатий.
Короткое нажатие:
{| class="wikitable" style="float:left; margin-left: 10px;"
! Регистры !!  !! colspan="8"| Выходы '''MR3-6'''
|-
!
|  || '''1''' || '''2''' || '''3''' || '''4''' || '''5''' || '''6''' || '''7''' || '''8'''
|-
!rowspan="8" |Входы
| '''1''' || 544 || 545 || 546 || 547 || 548 || 549 || 550 || 551
|-
| '''2''' || 552 || 553 || 554 || 555 || 556 || 557 || 558 || 559
|-
| '''3''' || 560 || 561 || 562 || 563 || 564 || 565 || 566 || 567
|-
| '''4''' || 568 || 569 || 570 || 571 || 572 || 573 || 574 || 575
|-
| '''5''' || 576 || 577 || 578 || 579 || 580 || 581 || 582 || 583
|-
| '''6''' || 584 || 585 || 586 || 587 || 588 || 589 || 590 || 591
|-
| '''7''' || 592 || 593 || 594 || 595 || 596 || 597 || 598 || 599
|-
| '''0''' || 600 || 601 || 602 || 603 || 604 || 605 || 606 || 607
|}
|}

Версия 19:03, 17 января 2022

Другие языки:


Назначение

Релейные модули имеют несколько режимов работы реле от входов. И один из них — это взаимодействие согласно Mapping-матрице.

Режимы настраиваются индивидуально на каждый вход регистрами № 9-16, см. карту регистров модулей реле.

Матрица действий над выходами по изменению состояний входов позволяет гибко настраивать реакцию устройства в зависимости от изменения его входов. Эта функциональность появилась с версии 1.9.0 для устройств серии WB-MR и WB-MWAC.

Устройство и принцип работы

Регистры Выходы MR3-6
1 2 3 4 5 6 7 8
Входы 1 384 385 386 387 388 389 390 391
2 392 393 394 395 396 397 398 399
3 400 401 402 403 404 405 406 407
4 408 409 410 411 412 413 414 415
5 416 417 418 419 420 421 422 423
6 424 425 426 427 428 429 430 431
7 432 433 434 435 436 437 438 439
0 440 441 442 443 444 445 446 447

Mapping-матрица находится в регистрах начиная с адреса 384, и содержит 64 регистра из расчета 8 входов / 8 выходов. В каждом регистре записан код действия входа на выход. Если в устройстве количество входов и/или выходов меньше 8, то адреса регистров не меняются — просто строки/столбцы для отсутствующих регистров не учитываются. Исключение — устройства с 2 входами и выходами.

Регистры Выходы MR2
1 2
Входы 1 384 385
2 386 387


В ячейке на пересечении строки входа и столбца выхода — регистр действия входа на выход. В него записывается 16-битное слово 0b0000 0000 0000 yyxx, где биты yy описывают действия при замыкании входа (переход из 0 в 1, передний фронт), а биты xx — при размыкании (из 1 в 0, задний фронт).

Действия, в зависимости от битов:

  • 00 — ничего не делать
  • 01 — выключить
  • 10 — включить
  • 11 — инвертировать значение

Таким образом, можно запрограммировать реакцию каждого выхода на замыкание и размыкание любых входов.

Примеры программирования взаимодействия входов и выходов


Биты xx — размыкание входа
00 01 10 11
Биты yy, замыкание входа 00 Mm 0000.png
(0) — Вход отключен, не управляет выходами
Mm 0001.png
(1) — Выключить при размыкании
Mm 0010.png
(2) — Включить при размыкании
Mm 0011.png
(3) — Изменить состояние выхода при размыкании
01 Mm 0100.png
(4) — Выключить при замыкании
Mm 0101.png
(5) — Всегда выключать
Mm 0110.png
(6) — Работать как инвертированный
выключатель с фиксацией
Mm 0111.png
(7) — Выключить при размыкании, потом
изменять состояние при переключении
10 Mm 1000.png
(8) — Включить при замыкании
Mm 1001.png
(9) — Работать как выключатель с фиксацией
(повторять вход)
Mm 1010.png
(10, 0x0A)— Всегда включать
Mm 1011.png
(11, 0x0B) — Включить, потом изменять
состояние при размыкании
11 Mm 1100.png
(12, 0x0C) — Изменить состояние выхода
при замыкании
(выключатель без фиксации)
Mm 1101.png
(13, 0x0D) — Изменить состояние, потом
выключить при размыкании
Mm 1110.png
(14, 0x0E) — Изменить состояние, потом
включить при размыкании
Mm 1111.png
(15, 0x0F) — Изменить состояние при замыкании
и вернуться к исходному состоянию
при размыкании

Начиная с версии прошивки 1.17.0 появились дополнительные матрицы с возможностью настроить входы как кнопки для детектирования различных типов нажатий. Добавлена обработка 4 типов нажатий: короткое, длинное, двойное и сначала короткое, затем длинное. Настраиваемые действия аналогичны Mapping-матрице, также как и принцип выбора регистра на пересечении. Биты yy не используются. Адреса для настройки матриц нажатий. Короткое нажатие:

Регистры Выходы MR3-6
1 2 3 4 5 6 7 8
Входы 1 544 545 546 547 548 549 550 551
2 552 553 554 555 556 557 558 559
3 560 561 562 563 564 565 566 567
4 568 569 570 571 572 573 574 575
5 576 577 578 579 580 581 582 583
6 584 585 586 587 588 589 590 591
7 592 593 594 595 596 597 598 599
0 600 601 602 603 604 605 606 607