Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 11

Тема: тестирование проекта ПЛК

  1. #1

    По умолчанию тестирование проекта ПЛК

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

    Такая ситуация: с плк110 никогда плотно не работал, только какие-то общие знания, но нужно разобраться.
    Есть исходная программа, загруженная в контроллер для управления КНС на 2 насоса (в прикреплённых файлах как исходик)
    Контроллер связан ещё с панелью оператора СП307-р (также будет как исходный)
    Схема сигналов приходящих на контроллер будет в последнем файле в пдф
    Для меня задача стояла в передаче данных на верхний уровень, для чего я на всякий случай создавал не только битовую передачу (чтобы в одном байте по 8 переменных битовых передавались), а чтобы они ещё дублировались в виде вордовских (целочисленных) переменных
    При этом если смотреть исходные проекты ПЛК и панельки, то там (если я правильно считал и понимаю) идёт несоответствие в адресах переменных в которые заложены float значения

    Далее я прикреплю 2 файла, которые загружены и в ПЛК и в СП307-р, а также скрин с адресами всех переменных, которые я читал через ОПС-сервер (не думаю, что это важно, но пользовался kepserverex)
    В ОПС-клиенте я вообще подбирал многие адреса путём проб и ошибок (там есть несоответствие адресов переменных с проектом, загруженным в плк) - здесь все адреса соответствуют своим адресам в контроллере (их я проверял эмитируя аварии различные), но соответствие флотовских значений проверить не удалось, т.к. на объекте в самой КНС воды не было и насосы не включались из-за сухого хода, соответственно рабочие токи при работе насосов не передавались.

    Мне кажется, что флотовские значения всё ломают, но я не понимаю что и как, у меня нет в наличии плк, чтобы я мог тестировать и пробовать различные варианты
    Быть может у кто-то есть возможность посмотреть и глянуть в чём причина несоответствия адресов?

    Человек, который делал проект, мне прямым текстом сказал, что у него что-то не получалось, и сделал на костылях грубо говоря
    Постарался всё максимально коректно расписать, буду благодарен за любую помощь!
    Изображения Изображения
    Вложения Вложения

  2. #2

    По умолчанию

    Цитата Сообщение от Валенок Посмотреть сообщение
    В tcp-slave c "PE1_M" всё поехало.
    флоат - с четного регистра. Выравнивание - неявное, коли сами не вставили
    я понял, не знал, что в ПЛК тоже флоты должны начинаться с чётных регистров, про ПРку знаю, но про ПЛК нигде не видел информацию
    т.е. в теории если все флоты поровнять к чётным регистрам, то всё будет хорошо?
    (выравнивание Вы здесь имеете ввиду именно про нумерацию флотов?)

  3. #3

    По умолчанию

    Спасибо, взаимно!

    ну и "дружбу" с панелькой и OPC-клиентом по правильным регистрам это тоже восстановит по логике?

  4. #4

    По умолчанию

    Доброго времени суток снова!
    Глянул на проект, который загружен в ПЛК на другом объекте (основа проекта сделана тем же человеком, что и в начальном проекте) - проект тоже подвергся моим минимальным изменениям (также дублировал битовые переменные в отдельные целочисленные) и тут я пытался выравнивать все флотовские значения по чётным регистрам
    1.png

    Проблема была абсолютно идентичная, и с учётом "правильной" нумерации регистров всё равно флотовские значения не передавались
    Быть может есть какие-то ещё мысли\варианты решения?
    Последний раз редактировалось high_roll; 16.01.2024 в 15:01.

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

    По умолчанию

    high_roll что значит не передавались?, совсем или не так как вы ожидали?

  6. #6

    По умолчанию

    Цитата Сообщение от high_roll Посмотреть сообщение
    Доброго времени суток снова!
    Глянул на проект, который загружен в ПЛК на другом объекте (основа проекта сделана тем же человеком, что и в начальном проекте) - проект тоже подвергся моим минимальным изменениям (также дублировал битовые переменные в отдельные целочисленные) и тут я пытался выравнивать все флотовские значения по чётным регистрам
    Проблема была абсолютно идентичная, и с учётом "правильной" нумерации регистров всё равно флотовские значения не передавались
    Быть может есть какие-то ещё мысли\варианты решения?
    В ПЛК теперь адреса чётные, всё правильно, первый адрес- 4, а в панели первый адрес Float - 24, адреса пробовали поставить в соответствие?

    Если Float в панели не правильно будут отображаться, в настройках панели, в TCP , поставьте галку Изменить порядок регистров.
    В панели мастере все адреса должны быть правильные, иначе панель будет тормозить.
    Последний раз редактировалось kondor3000; 16.01.2024 в 15:51.

  7. #7

    По умолчанию

    melky в ОПС-клиенте я не видел прям нулей на флотовских адресах, там число приходило в экспоненциальном виде (я так понимаю это именно ввиду специфики флота)
    может там и был ноль, но только в экспоненциальной форме (если такое может быть)
    я пытался и порядок бит менять, но это не влияло на общую картину это не повлияло (там были 3 датчика: 2 по давлению и один гидростатический, и вот все они передавали одно и ттоже число в экспоненциальной форме, при смене порядка бит число было другим но одинаковым соответственно)

  8. #8

    По умолчанию

    Протестите переменные модбас пулом каким нибудь... Где то ошиблись.

  9. #9

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение
    В ПЛК теперь адреса чётные, всё правильно, первый адрес- 4, а в панели первый адрес Float - 24, адреса пробовали поставить в соответствие?

    Если Float в панели не правильно будут отображаться, в настройках панели, в TCP , поставьте галку Изменить порядок регистров.
    В панели мастере все адреса должны быть правильные, иначе панель будет тормозить.
    скриншот конкретно с этого сообщения я приложил уже с другого проекта, в нём соответствие номеров в панели и в проекте ПЛК есть
    но данные тоже приходили в экспоненциальном виде на флотовских адресах и не менялись по значениям

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

    По умолчанию

    1. перестановка регистров
    2. возможно указание адреса + 1

    в любом случае начинать надо всего с одной переменной float для тестирования, чтобы понять адресацию и наличие перестановки байт или регистров или и того и другого.

Страница 1 из 2 12 ПоследняяПоследняя

Похожие темы

  1. Тестирование: мнемосхемы
    от Сергей Лысов в разделе Облачный сервис OwenCloud
    Ответов: 109
    Последнее сообщение: 31.10.2023, 10:06
  2. Ответов: 2
    Последнее сообщение: 29.04.2019, 12:59
  3. Тестирование Библиотеки SPK Tools
    от Александр Приходько в разделе СПК2хх
    Ответов: 116
    Последнее сообщение: 10.12.2016, 17:06
  4. Тестирование новых прошивок
    от Александр Приходько в разделе СПК2хх
    Ответов: 391
    Последнее сообщение: 11.04.2016, 02:25
  5. Бесплатное тестирование приборов Овен
    от cer_cer в разделе Трёп (Курилка)
    Ответов: 2
    Последнее сообщение: 16.04.2015, 23:15

Метки этой темы

Ваши права

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