Страница 182 из 765 ПерваяПервая ... 82132172180181182183184192232282682 ... ПоследняяПоследняя
Показано с 1,811 по 1,820 из 7646

Тема: Вопросы начинающего

  1. #1811

    По умолчанию

    Цитата Сообщение от SCADAMaster Посмотреть сообщение
    Непосредственный - это задача самого контрола. Отображение же выхода в дереве объектов и на мнемосхеме зависит, как вы правильно написали, он назначенной шкалы.
    Если вам нужно чтобы значение всегда было в экспоненциальном виде, то тогда можно сделать выход в виде строки - тогда можно будет задать собственный способ отображения.
    Пусть всегда будет в экспоненциальном виде. Мне нужно обрабатывать малые значения, вида 0,0000001 - 0,0000100. Тип данных - вещественный двойной точности. Пусть я буду обрабатывать их внутри контрола, отображать их преобразовав в строку в окне ввода значения и на мнемосхеме, и после ввода значения делать обратные преобразования в double и отправлять в OPC. Но в дереве объектов значения малых переменных выглядят как "0.000", хотя в OPC уходят малые значения как есть. Нельзя ли узнать как реализован стандартный фб "Значение", а именно почему отображается на выходе малая величина в виде 000e+000 а уходит в OPC корректно?

    Цитата Сообщение от SCADAMaster Посмотреть сообщение
    Какой ОРС сервер у вас используется? Мы проверили на нашем Modbus Universal masterOPC сервере - ошибка не возникла.
    Подобная ошибка может возникать на OPC сервере Lectus.
    OPC сервер - MasterOPC Universal Modbus Server 3.0.0.9.
    В каких случаях возникает такая ошибка? Когда в дереве объектов связанная переменная имеет значение а OPC еще не загрузился?
    И еще, у переменных в дереве объектов во вкладке "Опрос" стоит галочка "Включен при отсутствии потребителей", для чего она предназначена?

  2. #1812

    По умолчанию

    Цитата Сообщение от SokolovS Посмотреть сообщение
    Подскажете как это сделать?
    Можно сделать автоматический вход. Для этого вам нужно запустить файл проекта с параметрами /user: /password: Для этого вам нужно либо сделать файл bat либо задать свойства ярлыка (что предпочтительнее). Подробнее вы можете прочитать в справке. Раздел "Работа в режиме исполнения - Запуск проекта из командной строки и по ярлыку".
    Для последующей смены оператора без использования окна используйте специальный скрипт - пример есть на форуме:
    http://www.owen.ru/forum/showthread....hlight=relogon
    Спасибо.

  3. #1813

    По умолчанию

    Цитата Сообщение от azausatu Посмотреть сообщение
    Пусть всегда будет в экспоненциальном виде. Мне нужно обрабатывать малые значения, вида 0,0000001 - 0,0000100. Тип данных - вещественный двойной точности. Пусть я буду обрабатывать их внутри контрола, отображать их преобразовав в строку в окне ввода значения и на мнемосхеме, и после ввода значения делать обратные преобразования в double и отправлять в OPC. Но в дереве объектов значения малых переменных выглядят как "0.000", хотя в OPC уходят малые значения как есть.
    А зачем вообще вам нужно?
    Почему нельзя просто назначить экспоненциальную шкалу выходу?

    Цитата Сообщение от azausatu Посмотреть сообщение
    Нельзя ли узнать как реализован стандартный фб "Значение", а именно почему отображается на выходе малая величина в виде 000e+000 а уходит в OPC корректно?
    Здесь дело не в ФБ. Дерево просто ограничивает количество выводимых на экран знаков после запятой, но это никак не отражается на точности. То есть данные всегда используются в полном объеме, независимо от типа переменной.

    Цитата Сообщение от azausatu Посмотреть сообщение
    OPC сервер - MasterOPC Universal Modbus Server 3.0.0.9.
    В каких случаях возникает такая ошибка? Когда в дереве объектов связанная переменная имеет значение а OPC еще не загрузился?
    Пришлите ваш проект.
    Зачем вы вообще так сделали? Такая привязка не имеет смысла.

    Цитата Сообщение от azausatu Посмотреть сообщение
    И еще, у переменных в дереве объектов во вкладке "Опрос" стоит галочка "Включен при отсутствии потребителей", для чего она предназначена?
    Если ее снять то переменная не будет выполняться, если у нее нет потребителей (она не имеет выходных связей). Лучше не снимать ее.
    Спасибо.

  4. #1814

    По умолчанию

    Цитата Сообщение от SCADAMaster Посмотреть сообщение
    А зачем вообще вам нужно?
    Почему нельзя просто назначить экспоненциальную шкалу выходу?
    Выбрать в дереве объектов выход ВФБ и выбрать шкалу? Хорошо. Но в визуальной части все равно нужно сделать приведение, чтобы отображалось как надо.

    Цитата Сообщение от SCADAMaster Посмотреть сообщение
    Пришлите ваш проект.
    Зачем вы вообще так сделали? Такая привязка не имеет смысла.
    В проекте имеется окно настроек, в котором имеется поле, куда нужно вводить пароль и кнопка "Применить". Чтобы все изменения, проделанные в окне настроек, отправились в OPC, нужно ввести пароль и нажать кнопку "Применить". При открытии окна все эти переменные считываются с OPC в группу переменных Bufer в дереве системы, все изменения происходят в ней. Затем, если нажали кнопку "Применить", переменные с буфера посылаются в группу inOPC, связанную напрямую с OPC. И если в ходе изменения сменили пароль до нажатия кнопки применить, то переменные с OPC считываются снова в Bufer, как бы так отменяются проделанные изменения.
    Я сделал группу "inOPC" переменных в дереве объектов , такую же как в OPC, и связал каждую переменную OPC между копией в дереве. И в случае нажатия кнопки применить я меняю значения переменных в группе в дереве через приведенный скрипт и они посылаются в OPC. Аналогично я прогружаю значения при открытии окна, в другом скрипте.

    var project = this.HostFB.TreeItemHlp.Project;
    var input = HostFB.TreeItemHlp.ParentObject.FullName.ToString( )+".Bufer.";
    var output = HostFB.TreeItemHlp.ParentObject.FullName.ToString( )+".inOPC.";

    for (int i=0;i<=N-1;i++)
    {
    var inputI = string.Format("{0}{1}{2}",input,"Block",(i+1).ToSt ring());
    var valueInputI = (ITreePinHlp)project.Item(inputI);
    uint? valueInput = (uint?)(valueInputI.GetRTPin().ObjectValue);
    ValueMassive[i] = (uint?)(valueInput);
    }

    for (int k=0;k<=N-1;k++)
    {
    var outputI = string.Format("{0}{1}{2}",output,"Block",(k+1).ToS tring());
    var valueOutputI = (ITreePinHlp)project.Item(outputI);
    valueOutputI.AddAssignValueTask((uint?)ValueMassiv e[k],null);
    }
    Такая привязка мне нужна была для того, чтобы значения при запуске не переписали текущие

  5. #1815

    По умолчанию

    Цитата Сообщение от azausatu Посмотреть сообщение
    В проекте имеется окно настроек, в котором имеется поле, куда нужно вводить пароль и кнопка "Применить".
    Пришлите ваш проект.
    Спасибо.

  6. #1816

    По умолчанию

    Цитата Сообщение от SCADAMaster Посмотреть сообщение
    Пришлите ваш проект.
    Проект пока прислать не могу. Попробую еще раз разобраться сам, если проблему не смогу устранить - сообщу Вам.

    Возникла другая проблема - проблема при разработке ВФБ. Созданный элемент не появляется в палитре.
    Вот выписка из отчета о ошибках:
    *LogSession Started='05.11.2014 12:53:27' Computer='LENOVO-ПК' Version='3.6.0.44483' VersionName='3.6(DemoReleaseMax)_14_02_17_11_48' Config='Demo' Schema='1'*
    *Error Thread='0xaa0' ThreadName='Обновление палитры ФБ' Time='05.11.2014 12:53:44.670' Error='Неопознанная ошибка ' Code='0x80004005'>
    Не удается загрузить иконку для Код доступа 0511 (DReaderThread.cpp, 402)</Text>
    Попытка загрузить из ресурсов иконку для фб Code0511.Control с ID=c9e859dc-f682-4fc2-8e19-5d636d611432 не удалась

    Иконку создал с таким же именем как у класса, 16 пикселей на 16, 4bpp Indexed цвета. Лежит в той же папке что и класс.
    Вот исходник: Code.zip

  7. #1817

    По умолчанию

    Вы изменили namespace ФБ. Не изменяйте namespace и имя класса которые wizard создал по умолчанию (это оговорено в документации).
    Исправленная версия ФБ в приложении.
    Вложения Вложения
    • Тип файла: zip Code.zip (107.0 Кб, Просмотров: 4)
    Спасибо.

  8. #1818

    По умолчанию

    Цитата Сообщение от SCADAMaster Посмотреть сообщение
    Вы изменили namespace ФБ. Не изменяйте namespace и имя класса которые wizard создал по умолчанию (это оговорено в документации).
    Исправленная версия ФБ в приложении.
    Распаковал архив, построил решение. Не заработало. Удалил предыдущий dll файл из папки MasterScada и удалил ветку в реестре с данным CLSID, заработало. Спасибо большое! Тогда встречный вопрос, чтобы создать новый ФБ, не тратя время на создание нового проекта в студии, достаточно ли переименовать решение, поменять CLSID в контроле и в визуальной части, и ввести другие названия в DisplayName?

  9. #1819

    По умолчанию

    Лучше сделайте заново - это займет значительно меньше времени, чем выискивать ошибки из-за неправильного переименования
    Спасибо.

  10. #1820

    По умолчанию

    Добрый день. Имеется ли возможность в мастерскаде при работе в режиме исполнения блокировать оператору возможность входа в проводник (например нажав на кнопку плывущего окна на клавиатуре). В скаде "круг" или "wincc" к примеру эта возможность имеется. Операторы вечером поверх МС открывают игры, фильмы. Через месяц работы компьютер начинает виснуть.

Страница 182 из 765 ПерваяПервая ... 82132172180181182183184192232282682 ... ПоследняяПоследняя

Похожие темы

  1. вопросы начинающего
    от Flomaster в разделе ПЛК1хх
    Ответов: 25
    Последнее сообщение: 11.03.2015, 20:50
  2. Ethernet - вопрос начинающего.
    от Продамщебень)) в разделе Сетевые технологии
    Ответов: 8
    Последнее сообщение: 20.06.2013, 16:35
  3. вопросы начинающего
    от Chifa в разделе Сетевые технологии
    Ответов: 1
    Последнее сообщение: 30.07.2010, 14:32
  4. вопрос начинающего
    от gladkiynikita в разделе Master SCADA 3
    Ответов: 1
    Последнее сообщение: 22.03.2010, 05:43
  5. Вопросы
    от Мурат в разделе Эксплуатация
    Ответов: 6
    Последнее сообщение: 27.01.2007, 03:24

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •