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


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

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

АВОК в соц. сетях
ИНН: 7714824045 | erid: 2VtzqwzKQiU
 
Добавить ответ в эту темуОткрыть тему
> Два контроллера Pco5 в одной установке
liquid_ua
сообщение 20.1.2015, 16:52
Сообщение #1





Группа: New
Сообщений: 15
Регистрация: 12.9.2013
Пользователь №: 205378



Доброго времени суток!
Прошу помочь разобраться в некоторых нюансах написания программы для pCO. Постараюсь максимально разложить вопрос.
Имею небольшой опыт программирования контроллеров pCO3 и pCO5. Все проекты имели порядка 10-15 исполнительных механизмов, для этого вполне хватало дискретных выходов одного котроллера.
Сейчас мне необходимо написать программу для гораздо большего количества выходов (порядка 50). Использовать связку контроллер + пачка плат расширения не целесообразно как с финансовой так и практической стороны. Поэтому выбор пал на комбинацию из двух pCO5 Extra large (29 + 29 выходов) и одного дисплея pGD1.
Алгоритм управления оборудованием у меня почти готов, с этим проблем нет.
Вопрос связан с распределением программной части между контроллерами.
Подскажите как правильно поступать в подобной ситуации. Пока вижу 2 варианта:

вариант №1. Распределение выходов между контроллерами решается особой нумерацией этих выходов. В описании блока "Dout" говорится что нумерация дискретных выходов второго контроллера должна быть с приставкой +25. Тоесть, дискретный выход "NO1" второго контроллера должен быть под номером 26 и тд. Вот вроде бы и подсказка, подумал я, но, pCO5 extra large имеет 29 выходов. Что ж получается, 5 выходов на каждом контроллере выпадают с логики? Или тут нумерация сдвигается не на +25 а на +29? Проверить в симуляторе не могу, там симулируется работа только 1 контроллера.
Так как датчики подключаются только к первому контроллеру, это нужно оформить программно (разрешить опрос аналоговых входов только первому контроллеру, второму контроллеру передавать значения с датчиков через pLan links в networkeditor) - подсмотрел в одной из Demo_solution . Также поступить и с остальными входами, влияющими на работу алгоритма.
В данном варианте в каждый контроллер прошивается одинаковая программа, которую они синхронно обрабатывают (с учетом вышеописаных нюансов).

вариант №2. В рамках одной Solution создаю два разных проекта. В первом заложен алгоритм опроса датчиков\входов, а также основная часть всей программы. Во втором проекте почти пустая программа - чтение через pLan links переменных и передача их значений прямо на дискретные выходы. Грубо говоря, в этом варианте второй контроллер будет выполнять функцию платы расширения с доп выходами.

Какой из вышеописанных вариантов является рабочим и правильным?
Какие системные переменные нужно использовать для правильной установки связи между двумя контроллерами?

Оборудование заказано и будет через несколько недель, а чтобы времени не терять пытаюсь разобраться. Но так как это мой первый
опыт связки двух контроллеров в рамках одной промышленной установки, решил обратиться к более опытным автоматчикам, тоесть к Вам!

Сообщение отредактировал liquid_ua - 20.1.2015, 16:53
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Igorchello
сообщение 20.1.2015, 17:12
Сообщение #2





Группа: Участники форума
Сообщений: 84
Регистрация: 16.3.2010
Пользователь №: 48554



Цитата(liquid_ua @ 20.1.2015, 16:52) *
Доброго времени суток!
Прошу помочь разобраться в некоторых нюансах написания программы для pCO. Постараюсь максимально разложить вопрос.
Имею небольшой опыт программирования контроллеров pCO3 и pCO5. Все проекты имели порядка 10-15 исполнительных механизмов, для этого вполне хватало дискретных выходов одного котроллера.
Сейчас мне необходимо написать программу для гораздо большего количества выходов (порядка 50). Использовать связку контроллер + пачка плат расширения не целесообразно как с финансовой так и практической стороны. Поэтому выбор пал на комбинацию из двух pCO5 Extra large (29 + 29 выходов) и одного дисплея pGD1.
Алгоритм управления оборудованием у меня почти готов, с этим проблем нет.
Вопрос связан с распределением программной части между контроллерами.
Подскажите как правильно поступать в подобной ситуации. Пока вижу 2 варианта:

вариант №1. Распределение выходов между контроллерами решается особой нумерацией этих выходов. В описании блока "Dout" говорится что нумерация дискретных выходов второго контроллера должна быть с приставкой +25. Тоесть, дискретный выход "NO1" второго контроллера должен быть под номером 26 и тд. Вот вроде бы и подсказка, подумал я, но, pCO5 extra large имеет 29 выходов. Что ж получается, 5 выходов на каждом контроллере выпадают с логики? Или тут нумерация сдвигается не на +25 а на +29? Проверить в симуляторе не могу, там симулируется работа только 1 контроллера.
Так как датчики подключаются только к первому контроллеру, это нужно оформить программно (разрешить опрос аналоговых входов только первому контроллеру, второму контроллеру передавать значения с датчиков через pLan links в networkeditor) - подсмотрел в одной из Demo_solution . Также поступить и с остальными входами, влияющими на работу алгоритма.
В данном варианте в каждый контроллер прошивается одинаковая программа, которую они синхронно обрабатывают (с учетом вышеописаных нюансов).

вариант №2. В рамках одной Solution создаю два разных проекта. В первом заложен алгоритм опроса датчиков\входов, а также основная часть всей программы. Во втором проекте почти пустая программа - чтение через pLan links переменных и передача их значений прямо на дискретные выходы. Грубо говоря, в этом варианте второй контроллер будет выполнять функцию платы расширения с доп выходами.

Какой из вышеописанных вариантов является рабочим и правильным?
Какие системные переменные нужно использовать для правильной установки связи между двумя контроллерами?

Оборудование заказано и будет через несколько недель, а чтобы времени не терять пытаюсь разобраться. Но так как это мой первый
опыт связки двух контроллеров в рамках одной промышленной установки, решил обратиться к более опытным автоматчикам, тоесть к Вам!


Используйте 2 вариант. Так гораздо проще.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
liquid_ua
сообщение 20.1.2015, 17:15
Сообщение #3





Группа: New
Сообщений: 15
Регистрация: 12.9.2013
Пользователь №: 205378



Цитата(Igorchello @ 20.1.2015, 16:12) *
Используйте 2 вариант. Так гораздо проще.

Спасибо! А как насчет системных переменных, есть какие нюансы или подводные камни?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Igorchello
сообщение 20.1.2015, 22:49
Сообщение #4





Группа: Участники форума
Сообщений: 84
Регистрация: 16.3.2010
Пользователь №: 48554



Цитата(liquid_ua @ 20.1.2015, 17:15) *
Спасибо! А как насчет системных переменных, есть какие нюансы или подводные камни?


Есть системные переменные PLAN_ADRESS_SW. C помощью нее можете заранее выставить адрес pLan. Чтобы вручную потом не настраивать.
Еще переменные PLAN_INFO и PLAN_STATUS_01_16. С их помощью можно сделать аварию об отсутствии связи по pLan.

А так вроде все. Сложностей никаких нет.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
liquid_ua
сообщение 20.1.2015, 23:35
Сообщение #5





Группа: New
Сообщений: 15
Регистрация: 12.9.2013
Пользователь №: 205378



Хорошо. Идея оповещать об обрыве связи pLan правильная, спасибо!
Скажите, нужно ли мне использовать атомы RA_In_T, RA_Out, RD_Out? Или они нужны только в случае отправки переменных в скаду?

Есть вероятность что потребуется установить плату pCOWeb и отображать параметры установки на удаленном компьютере. Без красивых визуальных эффектов и анимаций, лишь табличное отображение температур. Думаю с простенькой страничкой html из скачанного примера я справлюсь, с настройкой переменных COM_BAUDRATE_BMS, и тд. тоже, а вот нужно ли использовать макроблок Carel_Protocol_Mng? а RA_In_T, RA_Out, RD_Out?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Igorchello
сообщение 21.1.2015, 14:17
Сообщение #6





Группа: Участники форума
Сообщений: 84
Регистрация: 16.3.2010
Пользователь №: 48554



Цитата(liquid_ua @ 20.1.2015, 23:35) *
Хорошо. Идея оповещать об обрыве связи pLan правильная, спасибо!
Скажите, нужно ли мне использовать атомы RA_In_T, RA_Out, RD_Out? Или они нужны только в случае отправки переменных в скаду?

Есть вероятность что потребуется установить плату pCOWeb и отображать параметры установки на удаленном компьютере. Без красивых визуальных эффектов и анимаций, лишь табличное отображение температур. Думаю с простенькой страничкой html из скачанного примера я справлюсь, с настройкой переменных COM_BAUDRATE_BMS, и тд. тоже, а вот нужно ли использовать макроблок Carel_Protocol_Mng? а RA_In_T, RA_Out, RD_Out?


RA_In_T, RA_Out, RD_Out предназначены для отправки переменных в SCADA. Но это устаревшие модули, ими пользоваться не обязательно. Настройку передачи переменных в BMS удобнее производить в Variable Wizard на вкладке Network.

Макроблок Carel_Protocol_Mng предназначен для протокола Carel Master, т.е. для считывания переменных с Carel- устройств. Это не Ваш случай.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
liquid_ua
сообщение 21.1.2015, 15:26
Сообщение #7





Группа: New
Сообщений: 15
Регистрация: 12.9.2013
Пользователь №: 205378



Igorchello, большое Вам спасибо!
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения

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

 

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




Реклама: ООО «СибСтронг» | ИНН 6670013662 | ERID: 2VtzqvWgxEU

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

Реклама: ООО «СЛ-ЛАЗЕР» ИНН 7727447267 | erid: 2VtzquvhFWx
Последние сообщения Форума






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