Еще забыл добавить что ПЛК slave сразу по умолчанию Retain.
Еще забыл добавить что ПЛК slave сразу по умолчанию Retain.
Если честно, думал о промежуточных переменных, но, по началу, казалось странным. С другой стороны есть циклы ПЛК и получение значений переменными.
Внимательно изучил файлы с диска, которые вы выслали с предыдущим постом. Вроде все понятно.
Взгляните, пожалуйста, на приложенные файлы, упростил до безобразия, но, все равно, хожу по кругу - от слейва ничего не вижу. В обратную сторону все работает. Что не так с чтением, не пойму.
Опять снова здорова, зачем я вам пример то выложил? Загрузите его и проверьте, правда вам надо будет переписать конфигурацию под ваш таргет.
Не знаю почему у вас не работает, вроде всё правильно в вашей программе. Может вы СТАРТ забываете нажать в программе? на ПЛК работа горит светодиод?
Последний раз редактировалось kondor3000; 22.01.2022 в 18:59.
Обратил внимание на постоянно висящую в проекте ошибку LAST ERROR = 81.
20220122_01.jpg
Если полностью убрать модули input, т.е. оставить только output, ошибка уходит. Поэтому посылка на слейв фунциклирует нормально.
Если же убрать output и оставить только input раздел обмена, при соединении ПК с ПЛК, даже еще без старта программы на ПЛК, стабильно повисает 81-ая ошибка, и никуда не хочет уходить. Поэтому получение данных со слейва не идет.
Сейчас штудирую форум на предмет этой ошибки.
Руководство говорит, что 81 означает превышение таймаута ожидания (No Device).
Последний раз редактировалось программист_с_паяльником; 22.01.2022 в 23:09.
Вообще то ошибка 81 всегда если нет связи, поставьте неправильный адрес слейва или стоп бит 2 вместо 1, чётность, скорость не ту, сразу будет ошибка 81.
Значит у вас либо порт RS 232 неправильно работает, либо кабель с утечкой. Прозвоните кабель. Может у вас проводок от разрыва перемычки коротит куда то. Сам когда то перемычку разрывал на КС-1, проводки заизолировал изолентой.
Если есть переходник USB - RS 232, то его настройки смотрите, драйвер переходника.
Соедините наконец по 485 порту.
Последний раз редактировалось kondor3000; 23.01.2022 в 11:50.
КС2 вызванивал еще, так сказать, в свой прошлый пост, когда ПЛК был слейвом, а СП мастером. Он рабочий. Во всяком случае, неиспользуемые жилы просто коротко обрезаны (на контакные колодки не заведены). Думаю, это не кабель.
Скорее всего, "косячит" именно СП. Пробовал читать с нее только биты, потом отдельно холдинг регистры, отдельно стринги - везде 81-ая ошибка. Думал, может это несоответствие будет имееть отношение исключительно к отдельным функциям чтения.
Хотя, повторюсь, в сторону панели все доходит и ею прекрасно отображается.
Думаю, пока подвешу этот вопрос без решения, потому что предыдущая связка "СП Мастер - ПЛК слейв" через RS-232Debug показала себя хорошо. Пусть эта часть так и остается.
Что касается RS-485, здесь просто сделаю ПЛК мастером; у меня завалялся счетчик электрической мощности с отчетностью по модбасу - вот его и попробую почитать.
Большое спасибо за содействие ))
Реально помогаете.
Мой канал на ютубе
https://www.youtube.com/c/ПетрАртюков
Библиотека ГМ для СП300
https://disk.yandex.com/d/gHLMhLi8x1_HBg
Ну вот с Debag-232 всё решилось, не может он мастером работать, читай выше.
Советую всё же доделать обмен с панелью по 485 порту. А потом уже к опросу счётчиков приступать. Можно прямо там же, добавив новый UMD с адресом счётчика. И регистры с адресами из Руководства на счётчик.
Последний раз редактировалось kondor3000; 24.01.2022 в 09:45.