Страница 96 из 121 ПерваяПервая ... 46869495969798106 ... ПоследняяПоследняя
Показано с 951 по 960 из 1207

Тема: Обновленный ПЛК110?

  1. #951
    Евстигнеев Максим
    Гость

    По умолчанию

    Цитата Сообщение от RV9WFJ Посмотреть сообщение
    ...
    Да и вообще что мы тут обсуждаем - вы же сами написали что в ПЛК110 будет CS3. Не написали бы, не было бы этого разговора.
    Здравствуйте.
    Форум на то и форум, что каждый, в том числе и сотрудник Овен, может высказать своё мнение. Официальная позиция компании формируется на ваших, как пользователях, потребностях. Сейчас такая потребность видна, поэтому в планах Овен есть разработка ПЛК на базе CDS3.

  2. #952

    По умолчанию

    Спасибо Филоненко Владиславу, за содержательный диспут по поводу преимущества CODESYS v2. По поводу быстродействия: контроллер Berghof EC1000 (400 мгц) У меня есть две версии на v2 и v3. При отключенной WEB визуализации, показывает большее быстродействие на CODESYS 3. Контроллер Wago PFC200 (600 мгц), последняя прошивка позволяет переключать v2 и v3. При отключенной WEB, также показывает увеличение быстродействия на v3. Естественно сравнивалось на одном проекте, конвертированном в CODESYS 3. Если нет прошивки для ПЛК110 на CODESYS 3, мне интересно откуда взялось утверждение, что на CODESYS v2 он работает быстрее? Про WEB визуализацию, я вообще молчу. В CODESYS 3 гораздо удобней работать с сетями (даже если использовать конфигурационные библиотеки Овен). Кто не использовал пока объектно-ориентированное программирование в CODESYS 3, наверное не сможет понять его преимуществ. Для начала хорошо бы прочесть статью http://www.codesys.ru/art7.

  3. #953

    По умолчанию

    http://www.codesys.ru/art7
    Прекрасный по полноте и бессмысленности пример.
    Если не заметили, там всё в режиме симуляции.
    А в реальности эти лампочки, комнаты и т.п. связываются с реальным оборудованием, как I/O контроллера, так и I/O на модулях расширения и других ПЛК.
    И вот тут то и кроется лопата. В красивый абстрактный класс лампочки грязными лапами вступает действительность.
    Или мы прикручиваем связь с реальным I/O через указатель ( к примеру), что криво и небезопасно.
    Либо в конце прекрасного объектного кода вставляем ну совсем не объектный переход от содержимого всех классов в содержимое I/O.
    Или извращаемся с доступом по символьному имени (самый правильный вариант, но тяжёлый...)

    Вот если бы объявляя переменную лампочки реально можно было бы выбрать тип "I/O на вот том модуле расширения", но...
    Тролль-наседка, добрый, нежный и ласковый

  4. #954

    По умолчанию

    Цитата Сообщение от Филоненко Владислав Посмотреть сообщение
    Вот если бы объявляя переменную лампочки реально можно было бы выбрать тип "I/O на вот том модуле расширения", но...
    Можно тут по-подробнее? На словах или на примере "желаемого кода".

  5. #955

    По умолчанию

    my_perfect_var : DIN_FROM_PLC_110_30;

    И компилятор сам в конфигурации выделяет 1 вход.
    И если надо можно их перетасовать в конфигурации и программа не поменяется.

    А в таргете производитель ПЛК помимо всего остального задаёт тип DIN_FROM_PLC_110_30 для дискретных входов ПЛК.
    Тролль-наседка, добрый, нежный и ласковый

  6. #956

    По умолчанию

    Цитата Сообщение от Филоненко Владислав Посмотреть сообщение
    my_perfect_var : DIN_FROM_PLC_110_30;
    И компилятор сам в конфигурации выделяет 1 вход.
    И если надо можно их перетасовать в конфигурации и программа не поменяется.
    Главное, чтобы при последующем изменении программы (одну лампочку добавили, а вторую убрали) все остальные выходы не перемешались.

    Т.е. ещё где-то должна быть "схема предпочтительного расключения".

  7. #957

    По умолчанию

    Судя по справке CS (смотрю на справку CS 2.3), Variable Configuration служит как раз для внешней привязки переменных к адресам памяти.
    Наверняка же и в CS3 так можно?

    Т.е. в программе указываем "тут какой-то вход", "тут какой-то выход". А потом отдельно привязка переменных конкретного блока к реальному ПЛК.

    Код:
    FUNCTION_BLOCK locio
    VAR
      loci AT %I*: BOOL := TRUE;
      loco AT %Q*: BOOL;
    END_VAR
    ..
    
    PROGRAM PLC_PRG
    VAR
      Hugo: locio;
      Otto: locio;
    END_VAR
    
    ..
    VAR_CONFIG
      PLC_PRG.Hugo.loci AT %IX1.0 : BOOL;
      PLC_PRG.Hugo.loco AT %QX0.0 : BOOL;
      PLC_PRG.Otto.loci AT %IX1.0 : BOOL;
      PLC_PRG.Otto.loco AT %QX0.3 : BOOL;
    END_VAR

  8. #958

    По умолчанию

    AT %X... самый жестокий способ самоубийства. Компилятор не проверяет правильность и возможны серьёзные проблемы со стабильностью, выходом за пределы конфигурации и пр. прелестями.
    Уже не один десяток таких программ видел.

    P.S. Глобальные переменные (как их не называй) зло. Как только их число превышает десяток и программа чуть забывается (тем более если другой программист немного правит её), вылезают такие баги, что тапок его только щекочет.
    Последний раз редактировалось Филоненко Владислав; 11.01.2016 в 14:15.
    Тролль-наседка, добрый, нежный и ласковый

  9. #959

    По умолчанию

    Цитата Сообщение от Филоненко Владислав Посмотреть сообщение
    AT %X... самый жестокий способ самоубийства. Компилятор не проверяет правильность и возможны серьёзные проблемы со стабильностью, выходом за пределы конфигурации и пр. прелестями.
    Уже не один десяток таких программ видел.
    Не-не-не, Девид Блейн. У нас будет свой компилятор, с нормальными проверками.
    Поэтому и спрашиваю: "как должно быть, если делать по фен-шую".

  10. #960

    По умолчанию

    Инициатива, конечно, хорошая, но даже 2-й CoDeSys это 5-6 человеколет, а 3-й уже к 20-ке подбирается. В одиночку такого не осилить.
    А для команды да в разумные сроки нужно 2-3 кк$. И как Вы собираетесь это отбивать?
    Тролль-наседка, добрый, нежный и ласковый

Страница 96 из 121 ПерваяПервая ... 46869495969798106 ... ПоследняяПоследняя

Похожие темы

  1. приобрел обновленный плк110
    от Ruffian в разделе ПЛК1хх
    Ответов: 5
    Последнее сообщение: 04.12.2009, 12:01

Ваши права

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