Зачем такие сложности с фильтрацией? Найдите библиотеку oscat для CDS - там есть несколько реализаций фильтров - портируйте в OL тот, что подойдёт
Вид для печати
Где сложности? Вас смутили 10 однотипных присваиваний? Для более длинных фильтров я пишу цикл, здесь было лень.
Не вижу смысла где-то искать, потом разбираться, как оно там работает, подойдет ли, сколько там ошибок посадили...
Это - сложности. Я знаю, что меня устроит фильтр в одну строчку, знаю как он работает, знаю его частотную характеристику.
Библиотеки хороши, когда про них известно всё.
Я и ПИДы в пять строчек кода пишу сам. Потому что неизвестно, что там наворотили разработчики в своих библиотеках. А мне необходим полный контроль. Ошибки на производстве порой дорого обходятся.
И проблема не с фильтром, а со средой отладки Овен Лоджик.
Отладку ввели недавно и у меня она работает нормально. Возможно мы решаем разные задачи.
Конечно в Динамике ваш ФБ начнёт тормозить, память в отладке сильно ограничена.
Раньше всю отладку делал в CDS 2.3, кто вам мешает? Перенос кода с минимальными изменениями.
У меня даже выложены примеры в обеих средах, отлаженного в 2.3 и перенесённого в ОЛ, так как отладки ещё не было.
Астротаймер https://owen.ru/forum/showthread.php...l=1#post448696
Каскад https://owen.ru/forum/showthread.php...l=1#post418393
Обновился до 2.11.370. Перестал работать проект. ОЗУ визуализации заполнено 135% всегда, даже если удалить все экраны.
При попытке вставить выходную сетевую переменную, вылазит окно.
Вложение 86591
Вложение 86592
Подскажите, а с какой версии обновлялись? Пришлите, пожалуйста, на почту d.umurzakov@owen.ru исходный проект.
Напишите, пожалуйста в тех. поддержку support@owen.ru. Сильно поможет если вы приложите к обращению видео с проблемной работой симуляции, информацию о компьютере и системе, а также более подробное описание проблемы (как минимум при каком значении tic начинают наблюдаться тормоза).
С примером выше разбираемся. Если вы тоже сталкивались со снижением скорости отклика OL при проведении симуляции ST, то, пожалуйста, напишите в тех. поддержку support@owen.ru. Там специалисты запросят у вас всю необходимую информацию и отправят нам для анализа.
Это не имеет значения
И это не имеет значения.
Это результат добавления дебильных квадратиков со значениями в он-лайн код. Накой вы это сделали? Типа "модностильномолодежно"? Зачем они в коде если они отображают значения в конце цикла а не в месте показушек? Да и cделали, извиняйте - говёно.
Вот взял верхний пример, зачистил от отвлекающего (надеюсь Евгений Пашигоров не обидится?)
Наслаждайтесь фефектом фикции модностильномолодежных ОЛ-кфатлатиковКод:function_block valve_ctrl
var_input
x : bool;
end_var
var_output
cond_level: real;
cond_spd: real;
tic: udint := 0;
end_var
var
stat_level: udint;
l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11: real;
end_var
tic := tic + 1;
cond_level := (29 * cond_level - 2.0);
l11 := l10;
l10 := l9;
l9 := l8;
l8 := l7;
l7 := l6;
l6 := l5;
l5 := l4;
l4 := l3;
l3 := l2;
l2 := l1;
l1 := cond_level;
cond_spd := (l1 + l2 + l3 + l4 + l5 - l7 -l8 - l9 - l10 - l11) / 10.0;
end_function_block
Запускать именно в ФБ и смотреть на tic
Ну, для вас, может, значения и не имеет, а нам эта информация поможет. При симуляции программы Евгения в самом деле наблюдаются "тормоза", с этим будем разбираться. С вашим кодом, кстати, проблем меньше - переменные быстро переполняются и перестают нагружать систему. Но посыл понятен - симуляция не должна вызывать видимое замедление работы OL.
По поводу отображения значения переменных, если оно кажется вам неудобным, то какой способ отображения вы бы предпочли?
Не должна.
А почему вызывает - это вы сами.
Код не мой. Просто отсекал лишнее, включая упрощение формул, не задумываяcь о смысле но пока еще проблема хоть как-то проявлялось. Возможно еще что можно отрезать, но с переполнением получилось случайно и красиво.Цитата:
С вашим кодом, кстати, проблем меньше
Я* предпочел бы на как в КДС2. Именно 2. Но может провести опрос?
Если уж все захотят за эти квадратики то может хоть зафиксировать ширину поля отображения?
Сделать настройку цвета шрифта и поля ? Только полей в коде! Тогда хоть сделаю белым по белому
--
*С удовольствием променял бы это отображение на dint, логические с целыми и возможность записи 16#,2#
Нафиг эти квадратики - в режиме отладки код практически не читается. Я тоже за как в КДС2
З.Ы. И за это
двумя лапками тожеЦитата:
*С удовольствием променял бы это отображение на dint, логические с целыми и возможность записи 16#,2#
Умурзаков Денис У вас был стрим про пожелания к Лоджику. Я на него не попал. Будет ли он выложен?
Нет, сидеть и наводить это слишком времязатратно. Велосипед не изобретать и сделать список просмотра переменных. Хотя глобально, без точпк останова, толку с этого почти никакого.
Столкнулись с особенностью копирования ФБ в связке с переменными из одной схемы в другую - переменные теряют свои свойства, при этом в Лоджике этого тне видно никак. Прикладываю пример программ - первая Оригинал (ввод значений с экрана ПР205 работает), вторая Копия (ввод значений с экрана не работает). Логика программы простая: значения в переменные 1, 2, 3 можно задавать через вход в ФБ, а также через экран (при условии что на входе в этот момент "0").
В том то и дело что связи все на месте. Такое ощущение что теряются свойства переменных.
Все настройки вот тут
Вложение 86675
при копировании устанавливаются по умолчанию. И это было всегда и относится не только к переменным, но и у макросов тоже слетают
Так это всегда так было, в смысле, при копировании макросов их настройки, например значения констант в свойства макросов не сохраняются, а принимают значения по умолчанию!
Необходимо смотреть настройки макросов в исходном проекте и переносить вручную в свой проект!
Непонятно на что жаловаться, в смысле, так было всегда(изначально)!
Опишу подробнее.
создал программу - Оригинал. в ней работает все: ввод значений с экрана, сохранение их...
создал чистый лист программы, вставил в нее скопированный кусок из первой программы (ФБ со всеми переменными). Все скопировалось; свойства переменных, связи, свойство Энергонезависимости переменных. Ничего не потерялось визуально.
Далее запускаю "Копию" программы, ввожу новые значения с экрана ПР205... первая переменная меняется, вторая НЕТ, третья НЕТ. Помогает только удаление и создание переменных заново. Это происходит скрытно, не видимо для пользователя, что не хорошо. Не поленитесь запустите программы, возможно не совсем понятно объясняю
У вас слетает настройка выходных переменных, Запись в конце цикла -Да. А так же при копировании ФБ, нет экрана и привязки переменных к экрану. Если экран добавить после, то нет привязки к переменным.
Если нет привязки к экрану, то настройки Запись в конце цикла нет вообще.
(слёт настроек всегда происходит при копировании), так всегда было.
А это строка "запись в конце цикла" в окне свойств как увидеть? у меня ее нет почему то.. РАЗОБРАЛСЯ) Всем Спасибо!
Здравствуйте. ПР 103-24.1610.03.2.0
Все версии, обновления, всё последнее.
Не видит сетевые переменные, точнее, не видит новые, пару дней назад всё было нормально, продолжил писать проект и переменные добавляются, но их как бы нет. Адреса менял, названия, ничего не помогает.
Ни другое устройство, ни Конфигуратор их не видят.
Вложение 86706
Список переменных.
Вложение 86707
1.5 года назад сталкивался с подобной проблемой, забил, написал на другом оборудовании. Думал, через пару лет что-то поменялось.
Благодарю за быстрый ответ.
До этого сетевая переменная была параметром функции и тоже не видна. Подход понятен, просто присвоить другой Retain переменной, а затем использовать. Я думал, что присваивание это уже достаточный повод для видимости.
Спасибо за помощь!
Так присвойте выход в сетевую. Зачем лишние прокладки делать? Вот пример Вложение 86710
Доброго дня!
Скажите, версия Owen Logic 2.10.370.0 уже проверена? Её можно использовать в разработке?
Кто-нибудь уже успел проверить 370 на проекте с одновременными:
- FBD+ST
- работа с 2-3 ПЧВ по Modbus RTU (RS-485)
- работа c другим ПР205 по Modbus
- панель оператора по Modbus TCP
- OwenCloud через Ethernet и роутер
Всё это уже проверено в 370? На практике в 370 работоспособно?
Пару недель назад сдал проект на ПР205 с Owen Logic 2.10.367.0. Не переходил на новую 370, т.к. это всего лишь патч на неработающую 369.
Сейчас получаю предложение на новую работу. Встаёт вопрос - оставаться на 367 или переходить к прогрессивной 370? Обратной совместимости-то нет, а сдача работы через 2 недели.
Зачем вообще переходить?
Оставайтесь на 367 и проекты сохраняйте как 367. Открывайте из 367 версии. Всё как в Codesys.
370 можете поставить, только для тестирования.
Новые версии запишут новую прошивку, которая требует полугодового тестирования минимум.
Спасибо
Не буду спешить, останусь пока на 367.
Я перешел на ПР205 на 370. Пока особых проблем не выявил. Но и проект пока еще в стадии разработки. Единственное ПИД их с автонастройкой мне абсолютно неадекватным показался. Его не стал использовать.
Есть вот такой результат обработки числа с плавающей точкой:
Вложение 86873
(это эмуляция - но в реале аналогично).
Вроде бы и понятно, с одной стороны - точность, плавающая запятая и т.д. и т.п.
Но CDS2 это не мешает давать адекватный результат:
Вложение 86874