Показано с 1 по 9 из 9

Тема: Библиотеки CAA

  1. #1
    Пользователь
    Регистрация
    20.08.2018
    Адрес
    Тюмень
    Сообщений
    4

    По умолчанию Библиотеки CAA

    Доброго времени суток!

    Сразу скажу - в ПЛК новичок. Делал небольшой проект на ПЛК100, на FB. Есть опыт программирования МК (STM, Microchip) на С.
    Сейчас присматриваюсь к СПК, т.к. нужно визуализировать некоторые данные.
    Есть ряд вопросов на которые не смог ничего найти поиском:
    1. Установил Codesys 3.5 - во встроенной помощи идет описание библиотек CAA в качестве системных, но этих библиотек нет в репозитории. Где их можно взять? Или СПК поддерживает только небольшое количество CAA которые есть в \intern\CAA\.....
    2. Где можно найти описание на библитеки \System\Syslibs?
    3. Возможно ли в СПК использовать таймеры? Если да то с какой библиотекой?
    4. Опять же к вопросу по таймерам - как именно вызывается callback функция, механизм вызова? Функция будет вызываться только в основном цикле или в т.ч. и в системной области программы ПЛК (по аналогии с прерыванимем)?

    Прошу прощения если вопросы глупые.

    С уважением,
    Сергей

  2. #2

    По умолчанию

    Добрый день.

    1. Дерево библиотек не очень удобное. Нажмите на эти кнопки - и увидите их все в виде списка:

    21-08-2018 7-13-47.png

    2. Какие именно библиотеки вас интересуют? Для многих из них вообще нет описания (за исключением встроенного в библиотеку).
    3. Да, см. библиотеку Standard (обычно она присутствует в проекте по умолчанию).
    4. Таймеры представлены в виде функциональных блоков (объектов). При запуске таймера запоминается значение системного тика и далее при каждом вызове таймера оно сравнивается с текущим. По истечению заданного интервала времени выход таймера Q принимает значение TRUE. Т.е. таймеры - асинхронные, вызываются только в программе пользователя.

    Cсылки, которые могут вам помочь:
    https://habr.com/post/402315/ (реализация таймеров CODESYS на С - поможет понять их внутреннее устройство)
    http://prolog-plc.ru/docs/TimeExperience.pdf (про таймеры - со стр. 20)
    http://www.codesys.ru/docs/st_c.pdf (статья "Язык ST для С программиста")

  3. #3
    Пользователь
    Регистрация
    20.08.2018
    Адрес
    Тюмень
    Сообщений
    4

    По умолчанию

    1. Спасибо, так действительно видно.
    2. Буду копать.
    3.4. Возможно я некорректно сформулировал вопрос. К таймерам из библиотеки стандарт у меня вообще никаких вопросов нет. Я разбираюсь с примером на ST для библиотеки CAA.Timers. В ней как раз на событие регистрируется callback функция. Вообще у меня к этому примеру есть ряд вопросов:
    А. объявление переменной CB_Timer - выдает ошибку, при замене на CB.Timer ругаться перестает... Зачем в примере с подчеркиванием сделано объявление?
    Б. объявление teError, так же выдает ошибку. Тип TMR.ERROR я найти не смог ни в одной библиотеке, хотя судя по тому же хелпу этот тип должен быть в библиотеке CAA Timer, но этой библиотеки у меня нет.

    Дальше пока не копал.


    Снимок.PNG

  4. #4

  5. #5
    Пользователь
    Регистрация
    20.08.2018
    Адрес
    Тюмень
    Сообщений
    4

    По умолчанию

    Планировал сделать на нем измеритель частоты сигнала - вызов функции циклический, читаем текущее значение счетчика модуля цифрового ввода, вычитаем предыдущее делим на время таймера получаем частоту. Так то по большому счету можно и TON использовать.
    Но ведь и библиотека CAA Timers должна работать, так что для чистоты эксперимента надо разобраться. Ну и судя по первым признакам вызов функции должен происходить строго по срабатыванию таймера, хотя возможно я и ошибаюсь но никакой литературы даже на английском я не нашел.

  6. #6

    По умолчанию

    Вам, по-моему, даже таймер не нужен. Достаточно системного тика:

    tVar := TIME(); // значение системного тика в текущем цикле (tVar типа TIME)

    По поводу CAA Timer сложно дать комментарии, но то, что в документации много ошибок - это факт.
    Этот вопрос не связан с конкретно нашим контроллером. Вы можете запросить информацию у ПК Пролог (http://prolog-plc.ru/contacts) или напрямую у разработчиков CODESYS (https://store.codesys.com/, кнопка My Question справа).

  7. #7
    Пользователь
    Регистрация
    20.08.2018
    Адрес
    Тюмень
    Сообщений
    4

    По умолчанию

    спасибо, буду разбираться

  8. #8

    По умолчанию

    не буду создавать новую тему спрошу здесь.

    если использовать на первом порту самописный DCON, используя CAA Serial, а на втором порту использовать Modbus через мастер Codesys'а , они нормально друг с другом уживаются?

  9. #9

    По умолчанию

    Цитата Сообщение от tegs Посмотреть сообщение
    не буду создавать новую тему спрошу здесь.

    если использовать на первом порту самописный DCON, используя CAA Serial, а на втором порту использовать Modbus через мастер Codesys'а , они нормально друг с другом уживаются?
    Да, порты независимые и друг на друга никак не влияют.

Похожие темы

  1. Библиотеки
    от Евгений Сергеевич в разделе ПЛК3xx (архив)
    Ответов: 160
    Последнее сообщение: 23.08.2018, 12:25
  2. Про библиотеки
    от aven в разделе ПЛК1хх
    Ответов: 26
    Последнее сообщение: 22.04.2016, 00:19
  3. ПЛК 304/308 - Библиотеки к ним
    от vlkv в разделе ПЛК3xx (архив)
    Ответов: 3
    Последнее сообщение: 25.02.2011, 16:55
  4. про Pid из библиотеки
    от Игор100 в разделе ПЛК1хх
    Ответов: 2
    Последнее сообщение: 29.10.2009, 11:38
  5. Cad библиотеки
    от незарегистрированный в разделе Помощь Разработчикам
    Ответов: 0
    Последнее сообщение: 29.07.2007, 22:10

Ваши права

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