Страница 2 из 2 ПерваяПервая 12
Показано с 11 по 18 из 18

Тема: ПЛК 73 периодически перегружается при опросе ПР110

  1. #11

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение
    Как у вас вообще это работает?
    Вместе с ошибками, не дожидаясь окончания работы одного блока, переходите к другому чтению и записи.
    Откройте любой пример и посмотрите, как это всё должно быть.

    Примеры для ПЛК63/73
    10) Обмен через библиотеки Modbus и OwenNet https://owen.ru/product/codesys_v2/example_program
    Оно хорошо все работает, после завершения чтения по флагу reading_complete начинается отсчет паузы 2 секунды и только после этого начинается чтение следующего устройства или запись, возможно код плохо читается, но все работает.

  2. #12
    Пользователь
    Регистрация
    23.09.2008
    Адрес
    Центророссийск
    Сообщений
    2,866

    По умолчанию

    В PLC_PRG разбить вообще всё на 1 общий автомат
    Вложить его в бесконечный цикл
    Для кусков кода со 100% увереностью в норме - exit (именно exit) в конце шага
    Для подозрительных кусков кода/вызовов делать:
    -доп.предварительный шаг с сохранением значения шага в ретайн-ловушке и строго return
    -выполнять этот кусок с exit (или return - по желанию)
    -доп.последующий шаг со сбросом ловушки с строго return

    //возможно что 2 и 3 можно объеденить - но нужно проверять

    При запуске, если ловушка есть - как-то показывать её значение и ничего не делать до принуд сброса ловушки
    Из самого последнего шага - return, само собой
    //Аля МЭК поверх МЭК с фиксацией ошибки до принуд сброса

    Нудно противно, но чем чаще ошибка появляется, тем быстрее и чётче локализуете ошибку.

    Мин цикл 1мс ессно, а не эти левые 20мс
    С таймаутом в 150мс - не занимайтесь хренью. ПР, 9600, 1 регистр - 35..40мс за глаза. Если б 115200 - 15..20


    Цитата Сообщение от d_dmitry Посмотреть сообщение
    Увеличение таймаута до 150мс, а потом и до 200мс не помогло, увеличение максимальной длительности цикла до 3 сек (было 1сек) тоже не помогло
    Было б странно. Это всё - протирка фар и стучание по колесу.
    Последний раз редактировалось Валенок; 27.03.2025 в 20:00.

  3. #13

    По умолчанию

    А нет ли там кривой обработки данных? Ну например, выхода за границы массивов или циклов?
    Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте. © Steve McConnell
    Мой рабочий блог со статьями про щиты и автоматику ОВЕН - Cs-Cs.Net | Почта: Info@Cs-Cs.Net | Канал в ТГ @CsCsNetLab

  4. #14

    По умолчанию

    Цитата Сообщение от Валенок Посмотреть сообщение
    Мин цикл 1мс ессно, а не эти левые 20мс
    С мин циклом 1мс не будет работать чтение, есть тема на форуме, если не ошибаюсь

    Из программы удалил вообще все кроме чтения одного регистра ПР110, контроллер все равно уходит в перезагрузку, не сразу, но через какое-то время
    Вложения Вложения
    • Тип файла: pro test3.pro (84.4 Кб, Просмотров: 5)

  5. #15
    Пользователь
    Регистрация
    23.09.2008
    Адрес
    Центророссийск
    Сообщений
    2,866

    По умолчанию

    Цитата Сообщение от d_dmitry Посмотреть сообщение
    С мин циклом 1мс не будет работать чтение, есть тема на форуме,
    Закрасьте эту тему фломастером. Авторам этой хрени предложите ещё раз перекодить свой код

  6. #16

    По умолчанию

    Цитата Сообщение от d_dmitry Посмотреть сообщение
    С мин циклом 1мс не будет работать чтение, есть тема на форуме, если не ошибаюсь

    Из программы удалил вообще все кроме чтения одного регистра ПР110, контроллер все равно уходит в перезагрузку, не сразу, но через какое-то время
    У меня на другом ПЛК154 этот код работает нормально, с мин циклом 1 мс. 1 Работа проекта.jpg На скорости 9600, тайм-аут 100мс

    Поменял только Settings.byStopBits:=0; Ноль - это 1 стоп бит
    Проработал почти 1,5 часа без проблем


    И этот тоже работает 1 ПЛК_73.jpg 115200, 8N1, мин цикл 1 мс
    Последний раз редактировалось kondor3000; 27.03.2025 в 22:09.

  7. #17

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение

    Поменял только Settings.byStopBits:=0; Ноль - это 1 стоп бит
    Проблема была в этом, огромное спасибо, kondor3000, что помогли разобраться, поменял на ноль и перезагрузки прекратились. Удивительно что проблемы вылезла наружу только с ПР110, но это к лучшему. Еще раз спасибо всем за помощь, сам бы я не нашел ошибку.

  8. #18
    Пользователь
    Регистрация
    23.09.2008
    Адрес
    Центророссийск
    Сообщений
    2,866

    По умолчанию

    Проблема была в этом,
    Ну ну. Проблема не в этом. Просто нашли костыль с которым вроде бы заработало.
    Но коли устроило - то и ладно.

    --
    Каким боком какая-то настройка связи может привести к зависанию? Не ошибкам связи а именно к зависанию? Но это глубоко копать, да.

Страница 2 из 2 ПерваяПервая 12

Похожие темы

  1. ТРМ232М периодически открывает КЗР на 100%
    от SCOwenUfa в разделе Контроллеры для систем отопления и ГВС
    Ответов: 4
    Последнее сообщение: 27.12.2023, 09:11
  2. СП307 постоянно перегружается
    от Артем_Ж в разделе Сервисное обслуживание приборов ОВЕН
    Ответов: 1
    Последнее сообщение: 30.01.2022, 21:13
  3. Периодически отваливается МВ110-6У
    от a_gricaj в разделе СПК1xx (архив)
    Ответов: 59
    Последнее сообщение: 23.03.2016, 06:09
  4. Периодически зависают компьютеры
    от звездочка в разделе Эксплуатация
    Ответов: 7
    Последнее сообщение: 23.10.2015, 09:07
  5. Периодически не запускается ПЛК150
    от Crusash в разделе ПЛК1хх
    Ответов: 2
    Последнее сообщение: 02.04.2015, 18:42

Ваши права

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