обработка данных побитно

Вопросы, не попадающие в другие разделы.

обработка данных побитно

Сообщение krasnoperovvv » Чт апр 11, 2013 8:31 pm

Наткнулся здесь на тему http://www.InTouch.ru/forum/viewtopic.php?f=4&t=3746. Собственно говоря у меня стоит аналогичная задача.
Но меня смутил один момент, а допустим у меня будет 5к аварийных сообщений, как в этом случае будет отрабатывать скрипт, будет ли он успевать?
И второй вопрос, а нельзя ли сделать так: создать memory bit и через механизмы DDE InTouch сделать ссылку на I/O tag, чтобы не городить скрипты?
krasnoperovvv
 
Сообщения: 8
Зарегистрирован: Ср апр 10, 2013 6:47 pm

Re: обработка данных побитно

Сообщение Генератор зла » Чт апр 11, 2013 9:56 pm

krasnoperovvv писал(а):а допустим у меня будет 5к аварийных сообщений, как в этом случае будет отрабатывать скрипт,

Как-нибудь :) Но явно не так, как требуется Вам.
krasnoperovvv писал(а):И второй вопрос, а нельзя ли сделать так: создать memory bit и через механизмы DDE InTouch сделать ссылку на I/O tag, чтобы не городить скрипты?

Совсем не понял, это как??? Memory-тег не имеет I/O-поля (Access Name+Item Name). Что ему через DDE присваивать собрались?
Vita est dolor.
Генератор зла
 
Сообщения: 2860
Зарегистрирован: Вс янв 23, 2011 5:08 pm

Re: обработка данных побитно

Сообщение krasnoperovvv » Пт апр 19, 2013 5:28 pm

Вообщем суть такая, у меня на данный момент есть порядка 100 тегов в формате word, которые собираются с контроллера по Modbus RTU, в этих тегах побитно упакованы аварии. В дальнейшем планируется увеличения числа данных тегов, соответственно если их обрабатывать скриптом, то я думаю могут возникнуть проблемы при дальнейшем увеличении тегов, есть ли какой-нибудь другой вариант генерировать аварийные сообщения, разбивая слово на биты, кроме как скриптом?
krasnoperovvv
 
Сообщения: 8
Зарегистрирован: Ср апр 10, 2013 6:47 pm

Re: обработка данных побитно

Сообщение Генератор зла » Пт апр 19, 2013 7:56 pm

Видите ли...
Читая с контроллера 100 слов (по 32 бита) и разбивая их на биты в InTouch, Вы используете 32*100 + 100 тегов InTouch. А могли бы использовать 32*100. Не считая потерь вычислительных ресурсов компьютера на пустопорожний скрипт распаковки слов в биты.
krasnoperovvv писал(а):есть ли какой-нибудь другой вариант генерировать аварийные сообщения, разбивая слово на биты, кроме как скриптом?

Масса. Напишите свой ActiveX, делающий это.
Vita est dolor.
Генератор зла
 
Сообщения: 2860
Зарегистрирован: Вс янв 23, 2011 5:08 pm

Re: обработка данных побитно

Сообщение Steelman63 » Пт апр 19, 2013 8:27 pm

Метод класса "Per rectum ad astra"(с)

В интаче создаются эти 100 тегов в/в типа Int и 16(32)*100 тегов в/в типа Dsc
Теги Int привязываются к контроллеру
Теги Dsc привязываются к битовым дотфилдам тегов Int через accessname, ссылающийся на этот же InTouch.
(в accessname пишем имя приложения View, топик - Tagname; у тегов в итемнейме пишем типа IntTagName.01 - первый бит)
На теги Dsc заводятся алармы.

Про быстродействие этого метода ничего не скажу - тестируйте, но скриптов распаковки уже не нужно.
Steelman63
 
Сообщения: 313
Зарегистрирован: Ср авг 29, 2012 3:42 pm

Re: обработка данных побитно

Сообщение Генератор зла » Пт апр 19, 2013 9:31 pm

Backdoor :)

Но плюсы этого метода весьма сомнительны. Ибо вместо 16(32)*100 тегов в/в (битовых) мы получаем +100 тегов в/в типа Integer. Т.е. количество тегов (внешних) не уменьшается. А когда результат один и тот же, зачем платить больше?
Vita est dolor.
Генератор зла
 
Сообщения: 2860
Зарегистрирован: Вс янв 23, 2011 5:08 pm


Вернуться в Другое

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5