Segnetics

Вернуться   Segnetics > Форум Segnetics > SMLogix

SMLogix Вопросы о работе в среде SMLogix и о FBD-программировании

Ответ
 
Опции темы Поиск в этой теме
Старый 10.06.2021, 17:47   #31
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 098
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Как сделать чтобы при перезагрузке ПЛК счетчик не увеличивался (ПО SMLogix, ПЛ

Цитата:
Сообщение от PKO Посмотреть сообщение
У меня есть переменная типа int. Первый бит этого слова включает насос. С внешней системы пришла запись первого бита, переменная стала равна 2 (физически переменная типа int стала равняться 2), далее мне надо обнулить эту переменную, так как переменная же сохранила свое состояние, она самопроизвольно ее не поменяла. Как это можно реализовать?
Проблема у вас в чём? Зачем вам что-то там нулить?


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 10.06.2021, 18:31   #32
PKO
Новичок
 
Регистрация: Jun 2021
Сообщения: 27
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Как сделать чтобы при перезагрузке ПЛК счетчик не увеличивался (ПО SMLogix, ПЛ

Ну то есть проще говоря, я пишу внешней системой в переменную произвольное число, а потом хочу программой присвоить (записать) этой же переменной ноль (значение).
PKO вне форума   Ответить с цитированием
Старый 10.06.2021, 19:17   #33
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 098
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Как сделать чтобы при перезагрузке ПЛК счетчик не увеличивался (ПО SMLogix, ПЛ

Цитата:
Сообщение от PKO Посмотреть сообщение
Ну то есть проще говоря, я пишу внешней системой в переменную произвольное число, а потом хочу программой присвоить (записать) этой же переменной ноль (значение).
Проблема у вас в чём? Зачем вам что-то там нулить?


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 11.06.2021, 11:31   #34
PKO
Новичок
 
Регистрация: Jun 2021
Сообщения: 27
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Как сделать чтобы при перезагрузке ПЛК счетчик не увеличивался (ПО SMLogix, ПЛ

Так я и не получил ответа на свой вопрос....
По прежнему не смог разобраться с этим вопросом:
Я хочу понять как мне правильно использовать блок ARRAY, поскольку мне же надо выводить данные на панель, вот я и хотел уточнить. Если я одновременно подам на wr_addr и на start_rd фронт, произойдет запись числа поданного на вход в ячейку памяти, а на выходе появится число которое лежало до этого в ячейке памяти (до момента записи) или уже обновленное, которое записалось командой wr_addr?
PKO вне форума   Ответить с цитированием
Старый 11.06.2021, 11:32   #35
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 098
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Как сделать чтобы при перезагрузке ПЛК счетчик не увеличивался (ПО SMLogix, ПЛ

Цитата:
Сообщение от PKO Посмотреть сообщение
Так я и не получил ответа на свой вопрос....
По прежнему не смог разобраться с этим вопросом:
Я хочу понять как мне правильно использовать блок ARRAY, поскольку мне же надо выводить данные на панель, вот я и хотел уточнить. Если я одновременно подам на wr_addr и на start_rd фронт, произойдет запись числа поданного на вход в ячейку памяти, а на выходе появится число которое лежало до этого в ячейке памяти (до момента записи) или уже обновленное, которое записалось командой wr_addr?
Да ё-моё. Не нужен вам сигнал чтения. При единичной длине на выходе будет то, что вы записали.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 11.06.2021, 11:35   #36
PKO
Новичок
 
Регистрация: Jun 2021
Сообщения: 27
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Как сделать чтобы при перезагрузке ПЛК счетчик не увеличивался (ПО SMLogix, ПЛ

Если бы в описании это было указано. не пришлось бы отвечать. А так в описании указано что эта команда чтения из заданной ячейки массива. Массив из 1 элемента тоже массив. я в этом не виноват.
PKO вне форума   Ответить с цитированием
Старый 11.06.2021, 11:40   #37
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 098
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Как сделать чтобы при перезагрузке ПЛК счетчик не увеличивался (ПО SMLogix, ПЛ

Цитата:
Сообщение от PKO Посмотреть сообщение
Если бы в описании это было указано. не пришлось бы отвечать.
Описание.

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



На входе length устанавливается количество ячеек, которые могут быть сохранены в этом блоке:

• Если length = 0, то блок не обрабатывается
Если length = 1, то записанное число сразу же передается на выход блока


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 11.06.2021, 14:02   #38
PKO
Новичок
 
Регистрация: Jun 2021
Сообщения: 27
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Как сделать чтобы при перезагрузке ПЛК счетчик не увеличивался (ПО SMLogix, ПЛ

Вопрос по визуализации. У меня есть переменная, которая должна сохранять значение в энергонезависимой памяти и вводится с клавиатуры ПЛК. В меню "настройка переменной" параметр "направление": если выбрать ввод с экрана контроллера (зеленая стрелочка), будет ли он записываться в энергонезависимую память или как указано в всплывающей подсказке, необходимо выбрать ввод-вывод (синяя стрелочка), чтобы осуществлялся запись в энергонезависимую память?
Или тут без разницы. он всегда будет сохранять в энергонезависимую память?
Изображения
Тип файла: png 1.png (2.9 Кбайт, 2 просмотров)
Тип файла: png 2.png (30.4 Кбайт, 1 просмотров)
Тип файла: png 3.png (19.7 Кбайт, 3 просмотров)
PKO вне форума   Ответить с цитированием
Старый 11.06.2021, 14:14   #39
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 098
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Как сделать чтобы при перезагрузке ПЛК счетчик не увеличивался (ПО SMLogix, ПЛ

Цитата:
Сообщение от PKO Посмотреть сообщение
Вопрос по визуализации.
А что говорит про это справка? Не сжатая контекстная, которая скорее напоминание. А нормальная, что в лоджике F1 вызывается.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 11.06.2021, 14:22   #40
PKO
Новичок
 
Регистрация: Jun 2021
Сообщения: 27
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Как сделать чтобы при перезагрузке ПЛК счетчик не увеличивался (ПО SMLogix, ПЛ

Тут вообще об этом ни слова. Только общие фразы.
Изображения
Тип файла: png 4.png (85.4 Кбайт, 15 просмотров)
PKO вне форума   Ответить с цитированием
Старый 11.06.2021, 14:29   #41
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 098
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Как сделать чтобы при перезагрузке ПЛК счетчик не увеличивался (ПО SMLogix, ПЛ

Цитата:
Сообщение от PKO Посмотреть сообщение
Тут вообще об этом ни слова. Только общие фразы.
Вам ещё не стыдно от моих скриншотов и копипастов?


Безымянный.png


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 11.06.2021, 14:33   #42
PKO
Новичок
 
Регистрация: Jun 2021
Сообщения: 27
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Как сделать чтобы при перезагрузке ПЛК счетчик не увеличивался (ПО SMLogix, ПЛ

мне нравится что у сегнетикс великолепная служба поддержкми


Добавлено через 17 минут


По типам данных подскажите пожалуйста. Есть переменные которые в мануале описаны так:
DFXP – decimal fixed-point – знаковое десятичное число с фиксированной запятой, 2 знака после запятой, 32 бита. В регистрах протокола MODBUS представлено двумя последовательно расположенными в памяти регистрами. Последовательность хранения данных: старшее слово, младшее слово. Например, если текущее действующее значение тока фазы А (Ia) равно 2,59 А, то в регистрах MODBUS будет записаны значения 0x0000 и 0x0103. Старшее слово – 0x0000, младшее слово – 0x0103. Таким образом, 0x00000103 соответствует значению 259 / 100 = 2,59.

Соответственно это соответствует SMLogix REAL, я правильно понял. не Long же?


Добавлено через 20 минут


Эти переменные я читаю по модбасу.
PKO вне форума   Ответить с цитированием
Старый 11.06.2021, 15:11   #43
PKO
Новичок
 
Регистрация: Jun 2021
Сообщения: 27
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Как сделать чтобы при перезагрузке ПЛК счетчик не увеличивался (ПО SMLogix, ПЛ

Вот так задал этот тип данных, как Real. R(in) как раз 4 функция как раз как мне надо.
Изображения
Тип файла: png 5.png (1.2 Кбайт, 8 просмотров)
PKO вне форума   Ответить с цитированием
Старый 11.06.2021, 15:56   #44
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 098
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Как сделать чтобы при перезагрузке ПЛК счетчик не увеличивался (ПО SMLogix, ПЛ

Цитата:
Сообщение от PKO Посмотреть сообщение
Соответственно это соответствует SMLogix REAL, я правильно понял. не Long же?
Нет. Подробности в гугле "типы данных".


Добавлено через 3 минуты


Цитата:
Сообщение от PKO Посмотреть сообщение
Вот так задал этот тип данных, как Real. R(in) как раз 4 функция как раз как мне надо.
Проще всего читать как лонг, если переменная будет 103h, то повезло, переводите в real и делите на 100.

Если переменная будет 1030000h, то можно считать как два инта и уже из них составить лонг с нужным порядком регистров. Математикой или битовыми операциями - для SMH4 всё равно.

Но возможно всё проще. Какова максимальная величина тока?


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 11.06.2021, 16:27   #45
PKO
Новичок
 
Регистрация: Jun 2021
Сообщения: 27
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Как сделать чтобы при перезагрузке ПЛК счетчик не увеличивался (ПО SMLogix, ПЛ

Максимальная величина тока 3 разряда (тысячные) до запятой, ну и соответственно 2 знака после запятой.
PKO вне форума   Ответить с цитированием
Старый 11.06.2021, 16:34   #46
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 098
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Как сделать чтобы при перезагрузке ПЛК счетчик не увеличивался (ПО SMLogix, ПЛ

Цитата:
Сообщение от PKO Посмотреть сообщение
Максимальная величина тока 3 разряда (тысячные) до запятой, ну и соответственно 2 знака после запятой.
Т.е. 999.99 в максимуме? Я не об этом спрашивал. Ваша модель до какого реального тока измерять умеет? Всю 1000 ампер?


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 11.06.2021, 16:36   #47
PKO
Новичок
 
Регистрация: Jun 2021
Сообщения: 27
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Как сделать чтобы при перезагрузке ПЛК счетчик не увеличивался (ПО SMLogix, ПЛ

Нет фактически на установке будет 150А
PKO вне форума   Ответить с цитированием
Старый 11.06.2021, 16:38   #48
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 098
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Как сделать чтобы при перезагрузке ПЛК счетчик не увеличивался (ПО SMLogix, ПЛ

Цитата:
Сообщение от PKO Посмотреть сообщение
Нет фактически на установке будет 150А
Значит читайте младший инт, переводите его в рил и делите на 100. Старший вам не нужен.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 11.06.2021, 16:39   #49
PKO
Новичок
 
Регистрация: Jun 2021
Сообщения: 27
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Как сделать чтобы при перезагрузке ПЛК счетчик не увеличивался (ПО SMLogix, ПЛ

Спасибо за совет!
PKO вне форума   Ответить с цитированием
Ответ


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

BB code is Вкл.
[IMG] код Вкл.
HTML код Выкл.



Часовой пояс GMT +4, время: 09:38.


Версия vBulletin: 3.8.7
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Segnetics 2005 - 2024