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

Тема: прошу помощи! плк100км+мдвв+ип320

  1. #1

    По умолчанию прошу помощи! плк100км+мдвв+ип320

    Проблема у меня следующая. Связка ПЛК100К-М + 2 МДВВ + ИП320 через RS-232Debug. У одного из МДВВ на входах висят обычные кнопки, коммутирующие общий провод. При соединении с компом и установленной связи по Ethernet один из МДВВ начинает вести себя, как будто кто-то беспорядочно жмёт на одну из кнопок. Нигде больше в программе этот вход не используется. При отключении от компа всё прекращается. Голову сломал, не могу понять, в чём дело! Пожалуйста, откликнитесь, если у кого были сходные проблемы!!

  2. #2
    Пользователь
    Регистрация
    12.12.2007
    Адрес
    п.Таврическое Омская область
    Сообщений
    97

    По умолчанию

    Цитата Сообщение от heinz Посмотреть сообщение
    Проблема у меня следующая. Связка ПЛК100К-М + 2 МДВВ + ИП320 через RS-232Debug. У одного из МДВВ на входах висят обычные кнопки, коммутирующие общий провод. При соединении с компом и установленной связи по Ethernet один из МДВВ начинает вести себя, как будто кто-то беспорядочно жмёт на одну из кнопок. Нигде больше в программе этот вход не используется. При отключении от компа всё прекращается. Голову сломал, не могу понять, в чём дело! Пожалуйста, откликнитесь, если у кого были сходные проблемы!!
    А нельзя более подробно описать проблемы. ПЛК-100K-M подсоединен
    к компу по Ethernet, МДВВ - подсоединен к ПЛК по RS-485, а ИП-320 подсоединен к ПЛК через RS-232 DEBUG? Я правильно понял? Может быть
    данные засылаюся с компа (через ПЛК) на выхода МДВВ, то есть засылаются какие то переменные с компа - потом из-за ошибки программы ПЛК перенаправляются на МДВВ выхода?

  3. #3

    По умолчанию

    Цитата Сообщение от lunyov_i Посмотреть сообщение
    Может быть
    данные засылаюся с компа (через ПЛК) на выхода МДВВ, то есть засылаются какие то переменные с компа - потом из-за ошибки программы ПЛК перенаправляются на МДВВ выхода?
    Да, подсоединено именно так.
    Подробнее: значения входов МДВВ при этом тоже меняются. То есть на указанный вход будто бы подаётся сигнал, а остальные его входа, включая те, на которых в этот момент есть сигнал, обнуляются. Второй МДВВ при этом ведёт себя нормально, т.е никаких спонтанных изменений нет. Переменные с компа... все отправленные переменные, вроде бы, приходят туда, куда положено... Не может ли возникнуть конфликт между устройствами при таком способе соединения? Приоритеты: ИП 320 (master) - ПЛК (slave) и ПЛК (master) - МДВВ (slave). Или несоответствие типа переменной? Переполнение, или ещё что?

  4. #4

    По умолчанию

    проверьте адреса мдвв. выкладывайте программу.

  5. #5

    По умолчанию

    Цитата Сообщение от Николаев Андрей Посмотреть сообщение
    проверьте адреса мдвв. выкладывайте программу.
    программа в прикреплённом файле. ошибка возникает при работе режима Manual, который вызывается из основной программы. большая часть основного текста - это программа статистики, которая, как мне кажется, и вызывает конфликт.
    p.s. если обнаружится явно дурацкая ошибка, сильно не ругайтесь - ну не программист я, электрик...
    Вложения Вложения

  6. #6

    По умолчанию

    Не плохо Вы на st для электрика строчите...
    Что рекомендую сделать:
    Работу с часами вынести в отдельный блок (возможно и из мануала и из PLC_PRG).
    Все переменные, которые Вы получаете\отправляете по сети объявите отдельно в глобальных переменных. И уже во всех подпрограммах работайте с нормальными именами - оно и код сократит и нагляднее будет где Вы с переменной действия производите:
    В конфигурации ПЛК \ раздел Глобальные переменные
    var_global
    a1:=in_mdvv1.0;
    a2:=in.mdvv1.1;
    a3:=...
    ...
    b1:=out_mdvv2.5;
    ...
    end_var

    Ну и уж на всякий случай увеличьте время timeouta в настройках МДВВ и поставьте повторов несколько.
    Так же нужно будет добавить модуль статистика и глянуть сколько времени цикла ПЛК свободного остается...
    Последний раз редактировалось Николаев Андрей; 29.05.2010 в 17:55.

  7. #7

    По умолчанию

    спасибо, сейчас буду пробовать.

  8. #8

    По умолчанию

    отчитываюсь.
    сперва объявил все переменные мдвв глобальными (из сетевых только их не было). запустил - вообще крах, всё защёлкало, как пулемёт. начал тыкать в программу статистики, которая составляла основной объём Plc_prg. странные дела: убираю несколько строчек, казалось бы, совсем не причастных к этой хрени - щёлканье входами уменьшается до 1..2 раз в минуту; возвращаю их на место и убираю основной кусок алгоритма, который пишет/считывает данные с панели - практически ничего не меняется. ничего не понял, плюнул на статистику с горя, упал духом, лежу. не надеясь, увеличил тайм-аут на мдвв со 150 до 250 - щёлкать почти перестало. не дыша на комп, убрал всю статистику в отдельный блок - совсем пропало. завтра буду тестить в максимально экстремальных режимах - вдруг опять вылезет... но объясните мне, господа шаманы, какое отношение может иметь размещение текста программы в том или ином месте? так и так этот блок работает постоянно!

Ваши права

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