Реклама / ООО «ИЗОЛПРОЕКТ» / ИНН: 7725566484 | ERID: 2Vtzqx6kV7S
IPB IPB
Проектирование, монтаж, наладка, сервис


Здравствуйте, гость ( Вход | Регистрация )

- Стандарт НП «АВОК» 7.11-2024
«Рекомендации по проектированию инженерных систем
дошкольных образовательных организаций»

АВОК в соц. сетях
ИНН: 7714824045 | erid: 2VtzqwzKQiU
 
Добавить ответ в эту темуОткрыть тему
> Modicon Premium, Modicon Premium
Гость_Lowkee_*
сообщение 21.10.2010, 11:05
Сообщение #1





Guest Forum






Всем привет
Собственно возник вот такой вопрос....,поблема,большая проблема

Усть список массивов с адресами(массивов порядка 30,адресов всего примерно 400)

Эти адреса находятся на 3х контролерах,мне нужно чтобы,все эти адреса шли на 4ый,

Но решения этой проблемы так и не получил,точнее мне многие объясняли,но из-за того,Что я новичок в этой области,мне тяжело достаточно понять....

Каким образом я смогу это сделать(желательно не образно а чуть-чуть п-детальнее)

Спасибо
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Lowkee_*
сообщение 21.10.2010, 14:12
Сообщение #2





Guest Forum






Вот,что вызывает вопросы...
Прикрепленные файлы
Прикрепленный файл  тычинки.jpg ( 192,52 килобайт ) Кол-во скачиваний: 91
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
san
сообщение 21.10.2010, 15:30
Сообщение #3





Группа: Участники форума
Сообщений: 531
Регистрация: 10.1.2008
Из: Киев
Пользователь №: 14316



1) not FBI_0.q - таймер сам себя перезапускает
2) в моем примере на входе блока AND стоит инверсия. В Вашем пример test это массив, с помощью которого контролируется обработка функции READ_VAR. 0-й бит этого 1-го слова массива указывает на то, что функция в стадии обработки. Тоесть если test[1].0=1 - то предыдущий вызов функции еще не обработан, а если равно 0, то уже обработан. По-этому ставится инверсия
3) NUM -это с какого, а NB - это количество
4) настоятельно рекомендую обмениваться словами %MW а не %M, в конце концов биты можно паковать в слова

Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Lowkee_*
сообщение 26.10.2010, 9:01
Сообщение #4





Guest Forum






Вроде бы кое как улеглось у меня что к чему,но единственное что не могу понять
Мы эти блоки ставим в тот контроллер с которого хотим считать,но каким образом я смогу отправить мои массивы с адресами...Вот вроде понял,что нужно создать массив из 4х слов,а в какой раздел вставлять те массивы которые нужно выслать?

заранее спасибо
Прикрепленные файлы
Прикрепленный файл  тычинки.jpg ( 226,15 килобайт ) Кол-во скачиваний: 43
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
san
сообщение 26.10.2010, 9:33
Сообщение #5





Группа: Участники форума
Сообщений: 531
Регистрация: 10.1.2008
Из: Киев
Пользователь №: 14316



READ_VAR ставится на том ПЛК, который хочет считать. А на том ПЛК с которого считуют ничего ставить не надо. Modbus/TCP Сервер прописан на уровне операционки.
Если нужно записывать с ПЛК, туда нужно прописать программу с функцией WRITE_VAR. А на том ПЛК на который пишут ничего ставить не надо. Modbus/TCP Сервер прописан на уровне операционки.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
san
сообщение 26.10.2010, 9:34
Сообщение #6





Группа: Участники форума
Сообщений: 531
Регистрация: 10.1.2008
Из: Киев
Пользователь №: 14316



если я Вас правильно понял

Сообщение отредактировал san - 26.10.2010, 9:35
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Lowkee_*
сообщение 26.10.2010, 9:57
Сообщение #7





Guest Forum






ну впринципе я так и понимал,а вот главный вопрос,в read_var(вы мне уже не первый раз говорили об этом) Но,я так и не совсем понял,раз мне нужно считать все те массивы что у меня находятся на другом ПЛК,что же я тогда должен вводить в read_var ,он же у меня получается совершенно пустой...

Ну создам я этот массив,и 4х слов,а как же быть дальше....вот не укладывается это у меня в голове,столько времени уже прошло,а в голове так особо и не улеглось,как быть в таких случаях...
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
san
сообщение 26.10.2010, 10:14
Сообщение #8





Группа: Участники форума
Сообщений: 531
Регистрация: 10.1.2008
Из: Киев
Пользователь №: 14316



Цитата(san @ 21.10.2010, 14:30) *
2) в моем примере на входе блока AND стоит инверсия. В Вашем пример test это массив, с помощью которого контролируется обработка функции READ_VAR. 0-й бит этого 1-го слова массива указывает на то, что функция в стадии обработки. Тоесть если test[1].0=1 - то предыдущий вызов функции еще не обработан, а если равно 0, то уже обработан. По-этому ставится инверсия

Это массив из 4-х слов не для обмена данными, а для контроля за роботой функции.

Цитата(san @ 21.10.2010, 14:30) *
3) NUM -это с какого, а NB - это количество

А вот это указывается "массив" источника данных на чужом ПЛК.

А массив, куда ложатся считанные данные указывается на выходе RECP в READ_VAR.

Сообщение отредактировал san - 26.10.2010, 10:15
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
ScrewDriver
сообщение 26.10.2010, 10:18
Сообщение #9





Группа: Участники форума
Сообщений: 449
Регистрация: 15.5.2007
Из: Барнаул->Москва
Пользователь №: 8174



1) Можно сделать глобальную таблицу в каждом контроллере и тогда все данные будут доступны везде
2) Можно использовать стандартную таблицу обмена - ничего писать не надо, нужно только сконфигурировать контроллеры на чтение-запись. Читать-писать ПЛК будут сами.

К сожалению сейчас Юнити не установлена, так что как это выглядит не покажу - посмотрите раздел communications.
Позвоните в техподдержку, там помогут и расскажут как и что.

Сообщение отредактировал ScrewDriver - 26.10.2010, 10:22
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Lowkee_*
сообщение 26.10.2010, 10:20
Сообщение #10





Guest Forum






Цитата(san @ 26.10.2010, 11:14) *
3) NUM -это с какого, а NB - это количество


то есть в num я могу вводить посто имя начального массива,а в nb общее кол-во массивов?
Я правильно понят?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
san
сообщение 26.10.2010, 10:33
Сообщение #11





Группа: Участники форума
Сообщений: 531
Регистрация: 10.1.2008
Из: Киев
Пользователь №: 14316



Нет не правильно. В NUM нужно вводить начальный адресс массива - 100 это будет %MW100, а в NB - количество слов, если NB=32 - то это будет массив в чужом ПЛК - %MW100:32.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
san
сообщение 26.10.2010, 10:38
Сообщение #12





Группа: Участники форума
Сообщений: 531
Регистрация: 10.1.2008
Из: Киев
Пользователь №: 14316



Сейчас только вспомнил, что у Вас Пермиум. Там вместо функции ADDM должна использоваться функция ADDR.
И еще - ScrewDriver прав. В бортовых ЦПУшных Ethernet портах Премиум доступны также GloabalData и функции IO Scaning, которые конфигурируются. Но если Вы пошли по этому пути, то наверное не стоит уже сварачивать.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Lowkee_*
сообщение 26.10.2010, 10:51
Сообщение #13





Guest Forum






Это точно))тут хоть как то добраться до конченой точки) а про i/o scanning слышал,думаю тоже стоит посмотреть
Спасибо еще раз,буду смотреть...
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
san
сообщение 26.10.2010, 11:05
Сообщение #14





Группа: Участники форума
Сообщений: 531
Регистрация: 10.1.2008
Из: Киев
Пользователь №: 14316



IO Scaning конфигурируется только со стороны Клиентского приложения. Укзываете диапазон переменных для записи и для чтения и периодичность опроса для конкретного девайса с нужным IP. Девайс может быть любой фирмы, требование - наличие Modbus/TCP сервера.
Global Data работает только если все ПЛК у Вас Modicon. В настройках объявляете груповой адресс для всех ПЛК. Нужную перменную для записи в другие ПЛК (до 1 Кбайта) в ее свойствах объявлете как Издаваемую (Publish) а для чтения как Подписываемую (Subscribte). Название и структура переменных должны совпадать на Издателе и на подписчике.
В принципе для вашего случая подходят оба эти сервиса. Надо было Вас сразу туда направить, там программу писать не надо. Но в любом случае внимательно почитайте хелп.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Гость_Lowkee_*
сообщение 11.11.2010, 10:55
Сообщение #15





Guest Forum






Всем доброго дня
Я уже обращался с вопросом о передаче информации с нескольких массивов на один, но тогда мненужно было передавать %MW , а теперь задача изменилась, нужно передать %M ,а как это осуществить?
Так как в IO Scanning возможно настройка только по %MW? Подскажите пож-та
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
ScrewDriver
сообщение 11.11.2010, 13:06
Сообщение #16





Группа: Участники форума
Сообщений: 449
Регистрация: 15.5.2007
Из: Барнаул->Москва
Пользователь №: 8174



сделайте сбор всех %M в %MW (%MW0.0:=%M0; %MW0.1:=%M1......), передайте %MW, расшифруйте обратно. (%M0:=%MW0.0; %M1:=%MW0.1....)

Я извиняюсь, но может с такими знаниями почитать книжки по PLC или сходить на курсы?
У И. Петрова помнится была хорошая книжка для начинаюших - спросите в..... http://www.twirpx.com/file/4896/

Сообщение отредактировал ScrewDriver - 11.11.2010, 13:12
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения

Добавить ответ в эту темуОткрыть тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

Реклама
ООО «Арктика групп» ИНН: 7713634274



ООО "Русич" ИНН 9721068883 / ЕРИД 2Vtzqx9HerZ


ООО «УНИСПЛИТ» ИНН: 6453155081 erid: 2VtzqvmjJqS

ООО "АйДи-Электро" ИНН:6670013662 erid:2Vtzqwtpv5j

Последние сообщения Форума






RSS Текстовая версия Сейчас: 22.6.2025, 23:29
Политика ООО ИИП «АВОК-ПРЕСС» в отношении обработки персональных данных