Страница 17 из 25 ПерваяПервая ... 71516171819 ... ПоследняяПоследняя
Показано с 161 по 170 из 248

Тема: драйвер Delphi

  1. #161

    По умолчанию

    не... сама делфя работает. и проект (екзешник) на ХРюше работает без проблем. но в семерке не читает никаких переменных, хотя записывать- записывает.... думаю или dOPCServer,или Gateway глючит.....

  2. #162

    По умолчанию

    поставь совместимость - Xp сервис пак 3. все заработает!

  3. #163

    По умолчанию

    Цитата Сообщение от nalnik Посмотреть сообщение
    поставь совместимость - Xp сервис пак 3. все заработает!
    Помогло или нет?

  4. #164

    По умолчанию

    ничего пока не помогает..... не происходит чтение ни по 232, ни по Ethernet

  5. #165

    По умолчанию

    Я на двух компах Win7 64 + DOPC Тыкал на иконку Delphi7 правой кнопкой мыши-свойства - совместимость.... Для EXEшника проэкта тоже.

  6. #166

    По умолчанию

    Цитата Сообщение от AWA1971 Посмотреть сообщение
    Пример попроще, без дополнительных манипуляций с библиотеками. На ПЛК назначаете входу имя INP1, выходу - OUT1. Конфигурируете (если кто не знает как -на этой ветке в примерах есть описание) При подаче сигнала на вход ПЛК - загорается соответствующая надпись в Delphi. При нажатии кнопки "Изменить переменную OUT1"- срабатывает выбранный Вами выход на ПЛК. Единственное, в зависимости от того, глобальные или локальные будут переменные и как все это дело сконфигурировано, переменные для Delphi могут читаться по разному. Выше я уже приводил варианты. Поэкспериментируйте и все получится.
    можно немного подробнее по этому примеру?
    1) V := CreateOleObject('OPC.Automation'); - что это за обьект, откуда он берется???
    2) V.Connect('CoDeSys.OPC.02'); - откуда это имя, где его определять?
    3) Этот пример требует работающего на ПК OPC-сервера или общается с контроллером вместо него?
    4) какое отношение к обмену имеет CodeSys? Она так же должна быть установлена и запущена на этом ПК??

    Простите за ламерские вопросы, они возникают из-за нехватки теории. Обещаю разобравшись выложить подробное описание с примером для остальных

  7. #167

    По умолчанию

    Цитата Сообщение от michaeladm Посмотреть сообщение
    можно немного подробнее по этому примеру?
    1) V := CreateOleObject('OPC.Automation'); - что это за обьект, откуда он берется???
    2) V.Connect('CoDeSys.OPC.02'); - откуда это имя, где его определять?
    3) Этот пример требует работающего на ПК OPC-сервера или общается с контроллером вместо него?
    4) какое отношение к обмену имеет CodeSys? Она так же должна быть установлена и запущена на этом ПК??

    Простите за ламерские вопросы, они возникают из-за нехватки теории. Обещаю разобравшись выложить подробное описание с примером для остальных
    или хотя бы намеком на то, где можно прочитать о том откуда берутся 'OPC.Automation', 'CoDeSys.OPC.02', .OPCGroups.Add('Group1') и т.д. и что там есть еще

  8. #168

    По умолчанию

    1. Вы в коде создаете OLE объект, используя системную библиотеку Windows "OPCDAAuto". В свою очередь "OLE" или Object Linking and Embedding представляет собой способ обмена информацией между приложениями.
    2. 'CoDeSys.OPC.02' - название OPC-сервера, устанавливаемого вместе с CoDeSys. "OPC" - это аббревиатура от OLE for Process Control, или OLE для Управления Процессами.
    3. OPC-сервер нужен. В данном случае это - 'CoDeSys.OPC.02'.
    4. CoDeSys в данном случае нужен, чтобы через него сконфигурировать и загрузить проект (даже с кодом ";") в ПЛК. Когда проект создан, то для того, чтобы перенести его на ПК клиента, CodeSys уже не нужен. Достаточно будет установить только OPC-сервер от него.

    Вкратце так. Извините за сумбурность и запоздалость - загрузили выше крыши...

  9. #169

    По умолчанию

    P.S. Немного поподробнее, пока время есть. OPC технология предусматривает обмен данными между двумя своими составными частями: ОРС-клиентом и ОРС-сервером для последующей передачи на исполнительный механизм. Т.е. для данного случая мы имеем следующую цепочку передачи данных: Скада (Delphi) <-> OPC-клиент(в данном случае созданный с помощью библиотеки Windows) <-> OPC-сервер (в данном случае CoDeSys OPC-сервер)<->Порт PC (COM1)<-> кабель (КС1 из комплекта ПЛК "ОВЕН")<-> Порт PLC (для ПЛК 110-60 Debug RS-232)<-> программа в ПЛК.
    Поэтому:
    1. V := CreateOleObject('OPC.Automation'); - так мы создаем ОРС-клиента.
    2. V.Connect('CoDeSys.OPC.02'); - так мы соединяем его (ОРС-клиента) с ОРС-сервером, который у нас установлен (не обязательно CoDeSys, но как составная часть обмена данными он все равно нужен);
    3. Этот пример требует работающего на ПК OPC-сервера или общается с контроллером вместо него? - Для ОРС-технологии ОРС-Сервер необходим (см. выше).
    4. Какое отношение к обмену имеет CodeSys? - В CoDeSys при создании проекта вы конфигурируете свои переменные (данные), т.е. указываете те из них, которые будут участвовать в обмене со Скада-системой и предоставляете OPC-серверу право их передавать (принимать). Непосредственно в самом обмене данными из всего комплекса CoDeSys, устанавливаемого по-умолчанию на ваш ПК, работает только CoDeSys OPC-сервер (тот самый, который мы подключали -'CoDeSys.OPC.02'). Поэтому при переносе программы на ПК заказчика, можно при установке убрать все галочки кроме серверов. Тогда CoDeSys там не будет, а, благодаря установленному OPC-серверу сконфигурированная ДЛЯ НЕГО программа спокойно будет передавать УКАЗАННЫЕ ВАМИ В КОНФИГУРАТОРЕ переменные для СОЗДАННОГО (ПОДКЛЮЧЕННОГО) ВАМИ ОРС-клиента.
    Примерно так, надеюсь ничего не перепутал. В двух словах вряд ли получится все описать, но если заниматься ОРС - то скоро такие проблемы будете как орешки щелкать. Удачи!
    Небольшой пример тут http://www.opcfoundation.org/forum/v...6f12f2bec6e8b2
    Там же на сайте и информация про ОРС-технологии.
    Последний раз редактировалось AWA1971; 21.05.2010 в 08:24.

  10. #170

    По умолчанию

    спасибо за подробное описание.
    Меня больше интересует откуда Вы узнали, что имя сервера 'CoDeSys.OPC.02', что нужно создать группу и для этого есть команда V.OPCGroups.Add('Group1'), потом в нее нужно внести переменные командой v.OPCGroups.GetOPCGroup('Group1').OPCItems.AddItem ('PLC1:.out1', 1) и т.д., какие есть еще команды и где об этом почитать? В данной вами ссылке подобной информации я не нашел. Может есть где-то вразумительное описание команд общения с OPC-сервером?

Страница 17 из 25 ПерваяПервая ... 71516171819 ... ПоследняяПоследняя

Ваши права

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