|
SMLogix Вопросы о работе в среде SMLogix и о FBD-программировании |
|
Опции темы | Поиск в этой теме |
17.08.2023, 10:31 | #1 |
Новичок
Регистрация: Apr 2015
Адрес: Ижевск, УР
Сообщения: 8
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Сбросить бит (coil) записанный по modbus
Добрый день!
Не получается решить элементарную задачу... ПЛК Matrix Задача: Записываем по modbus "1" в coil бит ПЛК и нужно этот бит сбросить через 1 секунду.( Имитация нажатия физической НЗ кнопки стоп) Не нашел тем, как писать в собственные Coil переменные... Прошу помочь знатаков) __________________ Не мы такие... ТЗ такое) |
17.08.2023, 11:21 | #2 |
Сотрудник Сегнетикс
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 341
Благодарил(а): 0 раз(а)
Поблагодарили:
255 раз(а) в 251 сообщениях
|
Ответ: Сбросить бит (coil) записанный по modbus
__________________ Если ничто другое не помогает, прочтите, наконец, инструкцию |
17.08.2023, 12:06 | #3 | |
Новичок
Регистрация: Apr 2015
Адрес: Ижевск, УР
Сообщения: 8
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: Сбросить бит (coil) записанный по modbus
Цитата:
Вот так пробовал, но тогда пропадает доступ по эзернет из вне... OPC-сервер Lectus ругается "Ошибка приема/передачи". __________________ Не мы такие... ТЗ такое) |
|
17.08.2023, 12:09 | #4 |
Senior Member
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
Ответ: Сбросить бит (coil) записанный по modbus
Ну так со стороны мастера и сбрасывайте. Тем более что он еще может и писать циклически.
__________________ Не являюсь сотрудником Segnetics !!! |
17.08.2023, 12:11 | #5 |
Сотрудник Сегнетикс
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 341
Благодарил(а): 0 раз(а)
Поблагодарили:
255 раз(а) в 251 сообщениях
|
Ответ: Сбросить бит (coil) записанный по modbus
Значит что-то не так делаете. Приложите проект и покажите как вы пробуете записывать и сбрасывать.
__________________ Если ничто другое не помогает, прочтите, наконец, инструкцию |
17.08.2023, 13:04 | #6 |
Новичок
Регистрация: Apr 2015
Адрес: Ижевск, УР
Сообщения: 8
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: Сбросить бит (coil) записанный по modbus
Мастером выступает Скада в связке с Lectus OPC, который опрашивает 100+ объектов циклически по радиоканалу 160 Мгц. Фактически от мастера до слева пакеты долетают с 5-10 запроса из-за плохого качества связи. Но при этом нужно управлять насосом (с помощью релейных выходов ПЛК, которые подключены в цепи управления в разрыв кнопок местного управления). Писать отдельно в регистры 0 и 1 невозможно, т.к. сама скада использует шаблоны объектов и так повелось, что все остальные объекты работают именно так.... посылаем 1 в бит управления, реле замкнулось и тут же разомкнулось через 1 сек и бит сбросился.
__________________ Не мы такие... ТЗ такое) |
17.08.2023, 13:17 | #7 |
Senior Member
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
Ответ: Сбросить бит (coil) записанный по modbus
Что-то не улавливаю связь между битом и работой реле.
__________________ Не являюсь сотрудником Segnetics !!! |
17.08.2023, 13:34 | #8 |
Новичок
Регистрация: Apr 2015
Адрес: Ижевск, УР
Сообщения: 8
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: Сбросить бит (coil) записанный по modbus
Бит из группы модбас койлов, управляет выходным реле ПЛК.
Записали мы по модбас в этот бит "1" , замкнулось реле. Вопрос: Как не записывая в этот же бит "0" с верхнего уровня, сбросить его (что бы разомкнуть реле) через 1 сек после того как он стал "1" ? __________________ Не мы такие... ТЗ такое) |
17.08.2023, 13:48 | #9 |
Новичок
Регистрация: Apr 2015
Адрес: Ижевск, УР
Сообщения: 8
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: Сбросить бит (coil) записанный по modbus
Вот проект, в самом верху эксперимент...
Даже работает, но почему то через раз. То устанавливается бит, то нет. Проверяю на прямом подключении по езернет.16_08_2023.rar __________________ Не мы такие... ТЗ такое) |
17.08.2023, 14:18 | #10 |
Senior Member
Регистрация: Dec 2007
Адрес: Томск
Сообщения: 4 163
Благодарил(а): 240 раз(а)
Поблагодарили:
165 раз(а) в 157 сообщениях
|
Ответ: Сбросить бит (coil) записанный по modbus
не проще ли работать по фронту?
изменилось значение на входе - на выходе получил строб. дале делай с ним что хошь |
17.08.2023, 14:26 | #11 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили:
660 раз(а) в 604 сообщениях
|
Ответ: Сбросить бит (coil) записанный по modbus
Цитата:
PS. Программеры на вашем объекте от бога собрались. Реально, что они, что вы - как микроскопом гвозди забиваете. Электронным микроскопом. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. Последний раз редактировалось Arsie, 17.08.2023 в 14:37 |
|
17.08.2023, 14:31 | #12 |
Senior Member
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
Ответ: Сбросить бит (coil) записанный по modbus
Зачем? Скада опять будет писать туда единицу.
__________________ Не являюсь сотрудником Segnetics !!! |
17.08.2023, 14:32 | #13 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили:
660 раз(а) в 604 сообщениях
|
Ответ: Сбросить бит (coil) записанный по modbus
Цитата:
Не обижайтесь, я вообще-то добрый) Просто острый излишне на язык и правду говорить люблю. PS. Для генерации секундного импульса используйте задержку отключения после блока Raise. Счётчик поставлен специально, чтобы не проморгать импульс. Глазам веры нет и быть не может в делах быстрых процессов. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
17.08.2023, 14:35 | #14 | |
Senior Member
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
Ответ: Сбросить бит (coil) записанный по modbus
Цитата:
А скада опять будет единицу писать. Тем более что связь плохая. И уберите все лишнее из карты SELF_PLC. Вы видимо не понимаете что пишете нули во все DO-x __________________ Не являюсь сотрудником Segnetics !!! |
|
17.08.2023, 14:36 | #15 | |
Новичок
Регистрация: Apr 2015
Адрес: Ижевск, УР
Сообщения: 8
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: Сбросить бит (coil) записанный по modbus
Цитата:
В сименсах, шнайдерах, директ лоджиках, митсубиши да тот же кодесис... всегда есть стандарные функции SET BIT и RESET BIT, которые можно связать с одним и тем же модбас битом. Я попросил помощи, а не дисскусии о том кто какого уровня хакер... Раз уж вы не реализовали простейшую функцию записи значения в собственный модбас бит, то хотябы ткните пальцем как с ващей средой разработки это реализовать. Арсений, я не сомневаюсь что вы гениальный программист, но как сотрудник техподдержки, могли бы и подсказать на конкретном примере, вместо громких палемик. __________________ Не мы такие... ТЗ такое) |
|
17.08.2023, 14:39 | #16 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили:
660 раз(а) в 604 сообщениях
|
Ответ: Сбросить бит (coil) записанный по modbus
Цитата:
Безымянный.png __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
17.08.2023, 14:39 | #17 | |
Новичок
Регистрация: Apr 2015
Адрес: Ижевск, УР
Сообщения: 8
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: Сбросить бит (coil) записанный по modbus
Цитата:
Почему некорректно отрабатывает, через раз такая схема не знаете? __________________ Не мы такие... ТЗ такое) |
|
17.08.2023, 14:40 | #18 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили:
660 раз(а) в 604 сообщениях
|
Ответ: Сбросить бит (coil) записанный по modbus
Цитата:
Я всегда подсказываю) А вот пошипеть - это святое __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
17.08.2023, 14:40 | #19 |
Новичок
Регистрация: Apr 2015
Адрес: Ижевск, УР
Сообщения: 8
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: Сбросить бит (coil) записанный по modbus
Вы сотрудник техподдержки или троль возникает вопрос...
Давайте сразу в бан, что уж... __________________ Не мы такие... ТЗ такое) |
17.08.2023, 14:45 | #20 | ||
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили:
660 раз(а) в 604 сообщениях
|
Ответ: Сбросить бит (coil) записанный по modbus
Цитата:
А так да, я люблю потроллить, если это касается предельно простых задач. Например, когда я буду учить сына ездить на машине, то я буду троллить его каждый раз, когда он забудет открывать машину и дёргать ручку запертой двери. Добавлено через 9 минут Цитата:
1) Скада отсылает единицу, запрос теряется 2) Скада опять отсылает единицу, запрос доходит, контроллер щёлкает реле, но ответ от контроллера к скаде теряется 3) Скада думает, что запрос потерялся, поэтому ещё раз отсылает единицу, запрос доходит, но вот ответ опять потерялся. Реле щёлкает второй раз И вот эта беготня 2-3 шаг может вертеться довольно долго. А реле щёлкает и щелкает. Алгоритмист из программера скады реально уровня школьника 3 класса на кружке программирования. Не троллить это невозможно, ибо ошибка ну совсем школьная. Полностью аналогичная ошибка совершена и вами. Контроллер сам себе записывает ноль 10 раз в секунду. Вы лично попросили его это делать. И вот незадача, почему это воду в решете носить нельзя. А воду в решете нельзя носить потому, что вода оттуда постоянно выливается. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. Последний раз редактировалось Arsie, 17.08.2023 в 15:01 |
||
17.08.2023, 15:00 | #21 | |
Senior Member
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
Ответ: Сбросить бит (coil) записанный по modbus
Цитата:
Значит она перечитывает и взводит снова. __________________ Не являюсь сотрудником Segnetics !!! |
|
17.08.2023, 15:58 | #22 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили:
660 раз(а) в 604 сообщениях
|
Ответ: Сбросить бит (coil) записанный по modbus
Правильно данная задача выполняется так:
Т.к. событие редкое - заявлено раз в сутки, то скада передаёт holding с текущей датой. Хоть до посинения передаёт её на контроллер. Контроллер, видя, что дата сравнялать с текущей, щёлкает релюхой. Дошел ответ контроллера до скады или не дошёл - не важно. Каждый последующий запрос будет с текущей датой. Рано или поздно скада поймёт, что всё произошло. Даже если связи не будет до полуночи, то в полночь даты перестанут совпадать, хотя более правильно отменить отправку на стороне скады. На следующий день всё повторится. В результате: а) Мы исключаем многократное щёлкание реле. Реле не может щёлкнуть чаще раза в сутки б) Нам становятся не нужны любые манипуляции с переменными на стороне слейва Задача решена. Качественно. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |