Страница 1 из 6 123 ... ПоследняяПоследняя
Показано с 1 по 10 из 52

Тема: Вопрос по биб-ке ComService

  1. #1

    По умолчанию Вопрос по биб-ке ComService

    Не понятно что делает вход Enable у функционального блока COM_SERVICE. Сам экземпляр блока вызывается так: имяэкземпляра(Enable:=TRUE, Settings:=Settings1, Task:=OPEN_TSK); входу Settings передаётся структура с настройками порта, входу Task - код действия, которое надо сделать с портом. Единственный выход блока Ready собсно и показывает, открылся ли порт после вызова.

    Нигде не закомментировано, хелпа к биб-ке нет, скачал пример работы с биб-кой SysLibCom (где также используется ComService), там есть документ Описание, но тоже ничего не сказано. То, что входу Enable присваивают истину, когда стучатся в порт, и ложь если порт ещё не открыт - понятно, но какой смысл у этого входа? По идее надо бы просто указать что делать с портом (открыть/сменить настройки/закрыть) - вход Task и каковы будут настройки - вход Settings. И считать результат с выхода Ready... Буду рад если кто прояснит.

  2. #2

    По умолчанию

    Цитата Сообщение от Boris_K Посмотреть сообщение
    Не понятно что делает вход Enable у функционального блока COM_SERVICE. Сам экземпляр блока вызывается так: имяэкземпляра(Enable:=TRUE, Settings:=Settings1, Task:=OPEN_TSK); входу Settings передаётся структура с настройками порта, входу Task - код действия, которое надо сделать с портом. Единственный выход блока Ready собсно и показывает, открылся ли порт после вызова.

    Нигде не закомментировано, хелпа к биб-ке нет, скачал пример работы с биб-кой SysLibCom (где также используется ComService), там есть документ Описание, но тоже ничего не сказано. То, что входу Enable присваивают истину, когда стучатся в порт, и ложь если порт ещё не открыт - понятно, но какой смысл у этого входа? По идее надо бы просто указать что делать с портом (открыть/сменить настройки/закрыть) - вход Task и каковы будут настройки - вход Settings. И считать результат с выхода Ready... Буду рад если кто прояснит.
    Вы хоть сами пробовали этот сумбур прочитать?
    Ваш экземпляр ФБ будет вызываться в каждом цикле ПЛК, а если Вам сейчас ничего не нужно с портом делать просто подаете на вход Enable ложь, и у Вас ФБ не будет выполняться.
    Enable:=true - ФБ выполняется, Enable:=False - ФБ не выполняется. Вот и всё. Стоило ли тему создавать?

  3. #3

    По умолчанию

    Где именно сумбур? Ткнуть пальцем.

    Ваш экземпляр ФБ будет вызываться в каждом цикле ПЛК
    Этот блок создан только для открытия/закрытия/перенастройки порта, то есть вызывается в единичных случаях. Как я понял, этот вход у блока добавлен просто для адаптации под графические языки. А я пишу на ST, и сам контролирую, когда мне вызывать этот блок (с помощью условного оператора). То есть на ST в этот вход мне надо просто тупо писать TRUE когда вызываю этот блок.

  4. #4

    По умолчанию

    Цитата Сообщение от Boris_K Посмотреть сообщение
    Где именно сумбур? Ткнуть пальцем.

    Этот блок создан только для открытия/закрытия/перенастройки порта, то есть вызывается в единичных случаях. Как я понял, этот вход у блока добавлен просто для адаптации под графические языки. А я пишу на ST, и сам контролирую, когда мне вызывать этот блок (с помощью условного оператора). То есть на ST в этот вход мне надо просто тупо писать TRUE когда вызываю этот блок.
    Ну вот, немного мозг напрягли, и уже все понятно. Стоило сразу так сделать.
    Но только капитан очевидность намекнет, что и в графическом ЯП пользователь самостоятельно может решить будет ли выполняться блок, или нет. Нужно только немного мануалов почитать.
    Этот вход сделали для тех, кто мануалы не читает, и этого не знает.

    Ну всё, кэп помог, кэп улетает.

  5. #5

    По умолчанию

    Я впервые работаю с портом напрямую, да и в Кодесис недавно. Поэтому Кэп тут слаб.

  6. #6

    По умолчанию

    Удалось открыть порт RS-232, только он открывается всегда примерно через полсекунды после первого вызова блока, то есть проходит примерно 100 циклов ПЛК (и блок "стучится" в порт каждый цикл, пока порт не откроется). В описании так и написано, но с чем это связано, это норма?

  7. #7
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,224

    По умолчанию

    Цитата Сообщение от Boris_K Посмотреть сообщение
    Удалось открыть порт RS-232, только он открывается всегда примерно через полсекунды после первого вызова блока, то есть проходит примерно 100 циклов ПЛК (и блок "стучится" в порт каждый цикл, пока порт не откроется). В описании так и написано, но с чем это связано, это норма?
    Вы сейчас издеваетесь что ли? Откройте библилтеку и посмотрите из чего она состоит, непонравится напишите свою. Эта бибка писалась с руководства по syslibcom

  8. #8

    По умолчанию

    Наверное это вы издеваетесь. Библиотека закрыта (после названия крестик стоит), при попытке открыть её POU - сообщение о запрете. Я могу видеть только её раздел описаний, типы данных, и блоки с входами/выходами (там один блок), а сам код - нет.

    Была мысль изначально послать эту биб-ку и работать только по syslibcom, вроде ненамного сложнее. Просто в примерах везде эта comservice присутствует, и ещё не понятно что там ставить в некоторые параметры порта (которые в comservice отсутствуют), и нигде нет подробного описания этих параметров.
    Последний раз редактировалось Boris_K; 20.02.2014 в 19:53.

  9. #9
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,224

    По умолчанию

    вот, что оказывается выделяет проффесилоналов от остальных, наличие крестика





    ЗЫ каким интересно образом Вы вычислили что проходит сто циклов
    Изображения Изображения
    • Тип файла: png owen.png (59.1 Кб, Просмотров: 202)

  10. #10

    По умолчанию

    Вы наверное не поняли. Мне не давало просматривать её код, появлялось сообщение о том что данное действие запрещено.

    ЗЫ каким интересно образом Вы вычислили что проходит сто циклов
    Самым элементарным. MinCycleLength = 5 мс, значит за секунду проходит 200 циклов, а за полсекунды - 100. Странно что вы такой вопрос задаёте.
    Последний раз редактировалось Boris_K; 20.02.2014 в 19:56.

Страница 1 из 6 123 ... ПоследняяПоследняя

Похожие темы

  1. ComService.compiled-library
    от GeLeX в разделе СПК2хх
    Ответов: 4
    Последнее сообщение: 30.09.2013, 10:08
  2. Вопрос по комплектации ПО.
    от rocky7 в разделе Master SCADA 3
    Ответов: 2
    Последнее сообщение: 04.01.2013, 10:31
  3. Ответов: 5
    Последнее сообщение: 20.11.2009, 23:18

Ваши права

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