Показано с 1 по 10 из 1349

Тема: Hardella IDE

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Пользователь
    Регистрация
    31.07.2013
    Адрес
    Аркаим
    Сообщений
    1,033

    По умолчанию

    Добрый день!
    Столкнулся с проблемой. Проект, созданный в Харделла 1.6.1 работал нормально. После обновления до 1.6.2, т.е. после разделения процедур чтения и записи из\в PRU проект перестал работать.
    При онлайне с ПЛК переменная lastWriteOk в состоянии FALSE, постоянно растет счетчик writeFails, хотя переменная running в TRUE. Естественно, никакие данные не пишутся и не поступают с\в PRU-блоки.
    Непонятно назначение POU Hardella_SimulationDetector.
    Созданный в 1.6.1 проект без изменений перекомпилирован в 1.6.2, и все нужные файлы перенесены в КДС как положено.
    Что я не так делаю?
    ---------------
    Обратил внимание, что в коде *.exp компиляции 1.6.1 присутствует вызов FB_GetParametr, а в компиляции 1.6.2 такого вызова нет.
    Последний раз редактировалось Sulfur; 16.03.2017 в 08:56.

  2. #2

    По умолчанию

    Цитата Сообщение от Sulfur Посмотреть сообщение
    Созданный в 1.6.1 проект без изменений перекомпилирован в 1.6.2, и все нужные файлы перенесены в КДС как положено.
    Что я не так делаю?
    Посмотрю.

    Цитата Сообщение от Sulfur Посмотреть сообщение
    Обратил внимание, что в коде *.exp компиляции 1.6.1 присутствует вызов FB_GetParametr, а в компиляции 1.6.2 такого вызова нет.
    Это сделано, чтобы не требовалось подключать pruaccesslib.lib

  3. #3

    По умолчанию

    Цитата Сообщение от Sulfur Посмотреть сообщение
    Созданный в 1.6.1 проект без изменений перекомпилирован в 1.6.2, и все нужные файлы перенесены в КДС как положено.
    Что я не так делаю?
    Да, в 1.6.2 не работает обмен.

    Если других дополнений нет, то выложу обновление с таким составом:
    Цитата Сообщение от Hardella 1.7.0
    Исправлено:
    - Восстановлен PRU - host обмен данными (в 1.6.2 обмен был сломан)

    Новые возможности:
    - Получение фактической длительности PRU цикла в online режиме. При включении этой опции в PRU configuration, в программу `MemoryRead` передаётся максимальная длительность работы программы и фактическая длительность PRU цикла. PRU ядро накапливает максимальнюу длительность и сброс происходит в момент очередного чтения данных из PRU.
    - Теперь комментарии можно добавять после точки с запятой, после `IF`, `ELSE`, и т.п.

    Замечание:
    - При открытии проекта, созданного в предыдущих версиях Hardella, запустится "Migration Assistant" и предложит обновить проект (формат хранения комментариев изменился). Достаточно просто пронажимать next.
    Статистика времени выполнения выводится в MemoryRead следующим образом.
    Фактическая длительность PRU цикла. Т.е. время от одной записи выходов до следующей.
    Код:
      maxOutputWriteTimeMicros : REAL; (* макс. длительность цикла за всё время работы ПЛК, мкс *)
      lastOutputWriteTimeMicros : REAL; (* последняя длительность цикла, считанная из PRU, мкс *)
    Например, если указать "min cycle: 1µs", и PRU программа очень простая (всегда укладывается в 1мкс), то OutputWriteTimeMicros будут равны 1.0
    Ну, мы указали, что хотим 1 мкс цикл, его и получили.
    Если же программа заняла дольше, то тут будет фактическое значение.

    Разумеется, второй вопрос "а сколько реально занимает программа, без учёта ожиданий?"
    Для этого выведены переменные про длительность полезного кода (это длительность программы + 2 опроса входов с фильтрацией + приём-передача)
    Код:
      maxCycleTimeMicros : REAL; (* макс. длительность работы PRU программы за всё время работы ПЛК, мкс *)
      lastCycleTimeMicros : REAL; (* последняя длительность работы PRU программы, считанная из PRU, мкс *)

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

    По умолчанию

    Владимир Ситников

    Спасибо! Протестирую и сообщу о результатах.
    Кстати, на следующей неделе предстоит воплощение одного из проектов на реальном железе в реальной установке. Будет использоваться сокращенная версия моего проекта. Будет использоваться только PRU-энкодер с детектором машинного нуля.
    Последний раз редактировалось Sulfur; 20.03.2017 в 08:27.

  5. #5

    По умолчанию

    Цитата Сообщение от Sulfur Посмотреть сообщение
    Спасибо! Протестирую и сообщу о результатах.
    Опубликовал Hardella 1.7.0.
    Можно через автообновление, можно с нуля выкачать.

Ваши права

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