sinegub_mihail
Forum Haunter / Завсегдатай форума
Участник № / Member № 4460
отправлено / posted
Задача: необходимо написать программу распаковки побитно 10 регистров. Распаковка этих регистров должна осуществляться постоянно и одновременно.
Написали, сейчас работает такой вариант: В шаблонах программ создана программа «Распаковка_битов». У нее есть один входной аргумент и 16 выходных.
В каналах узла создано 10 каналов класса CALL. Каждый из этих 10 каналов настроен на вызов одного и того же шаблона программы «Распаковка_битов».
Входной аргумент каждого из 10 каналов типа CALL связан со «своим» регистром протокола ModbusRTU. На данный момент программа работает при запуске профайлера, все биты регистров отображаются
Таким образом организована одновременная распаковка 10 регистров через вызов одного и того же шаблона программы.
Можно ли так делать? Не будет ли «конфликтов» при одновременной распаковке в один момент двух или более регистров? Или, все-таки, необходимо описывать функциональными блоками в программе распаковку каждого из 10 регистров отдельно?
Сообщения / Posts 105 | Из / From: Украина
| IP / IP: IP адрес / IP address |
Romсheg
unregistered
отправлено / posted
А не проще данные получать в каналы класса HEX16 напрямую, и работать с битами через его атрибуты бит1-бит16? А городить огород из подобных конструкций конечно можно, и это даже не противоречит канонам системы ТМ, но это, имхо, одевание штанов через голову...
IP / IP: IP адрес / IP address |
sinegub_mihail
Forum Haunter / Завсегдатай форума
Участник № / Member № 4460
отправлено / posted
Это мы слыхали что так можно, тогда встречный вопрос - если мне надо в разных программах пользоваться одним битом из 16 всех, как тогда ? вызывать весь канал HEX16 ???
Сообщения / Posts 105 | Из / From: Украина
| IP / IP: IP адрес / IP address |
Romсheg
unregistered
отправлено / posted
Зачем? Аргумент типа BOOL привязываете к атрибуту нужного бита этого канала и все...
IP / IP: IP адрес / IP address |
sinegub_mihail
Forum Haunter / Завсегдатай форума
Участник № / Member № 4460
отправлено / posted
И вообще нет понятия "вызывать весь канал": передача данных в вызываемый шаблон - это передача данных, а не вызов канала. Если я передаю двухбайтовое значение в программу, то нет проблем выделить из него любой бит состояния, ведь побитовых или булевых операций никто не отменял. Что называется "в один клик" все делается.
IP / IP: IP адрес / IP address |
A40
unregistered
отправлено / posted
А какая разница? Я имею ввиду по скорости.
IP / IP: IP адрес / IP address |
sinegub_mihail
Forum Haunter / Завсегдатай форума
Участник № / Member № 4460
отправлено / posted
А не проще данные получать в каналы класса HEX16 напрямую, и работать с битами через его атрибуты бит1-бит16?
Объясни где и как пользоваться и настраивать атрибуты и как привязать аргумент экрана к этим битам
Сообщения / Posts 105 | Из / From: Украина
| IP / IP: IP адрес / IP address |
sinegub_mihail
Forum Haunter / Завсегдатай форума
Участник № / Member № 4460
sinegub_mihail
Forum Haunter / Завсегдатай форума
Участник № / Member № 4460
отправлено / posted
еще есть вопрос по линейной интерполяции, в мониторах для DOS такой FBD блок не поддерживатеся, как его реализовать на techno ST
Сообщения / Posts 105 | Из / From: Украина
| IP / IP: IP адрес / IP address |
Romсheg
unregistered
отправлено / posted
Зачем что-то настраивать? У каждого канала HEX16 есть эти атрибуты. Откройте справочную систему по данному типу каналов - там все четко описано.
Как привязывать аргументы к атрибутам канала? Странный вопрос, потому что если вы этого не знаете, то вы ТМ6 видите в первый раз в жизни. Тут надо справочную систему с самого начала начинать читать тогда.
IP / IP: IP адрес / IP address |
sinegub_mihail
Forum Haunter / Завсегдатай форума
Участник № / Member № 4460
sinegub_mihail
Forum Haunter / Завсегдатай форума
Участник № / Member № 4460
отправлено / posted
По поводу этого можете что то подсказать ????
1) вопрос по линейной интерполяции, в мониторах для DOS такой FBD блок не поддерживатеся, как его реализовать на techno ST ???
Сообщения / Posts 105 | Из / From: Украина
| IP / IP: IP адрес / IP address |
отправлено / posted
Создать двумерный массив глобальных переменных и прямым арифметическим преобразованием обрабатывайте сигнал.
Сообщения / Posts 17316 | Из / From: Россия
| IP / IP: IP адрес / IP address |