Добрый день,
Господа, а кто какие контроллеры использует в связке с Eplan'ом?
- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не надо писать свой вопрос в первую попавшуюся тему - всегда лучше создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения. Непонятно? - Читать здесь.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь, а затем здесь и здесь.
- Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.
Какие контроллеры использует в связке с Eplan'ом
Модератор: специалисты Eplan
-
- знаток Eplan
- Сообщения: 25
- Зарегистрирован: 17 сен 2015, 09:25
- Имя: Иванюк Дмитрий Сергеевич
- Страна: РБ
- город/регион: Брест
- Благодарил (а): 2 раза
Скрипты и API
Просто описание модулей ввода/вывода и устройств из Eplan'а экспортируется в разрабатываемом дополнении сразу в PAC WAGO PFC200. Интересна актуальность такого дополнения.
-
- знаток Eplan
- Сообщения: 3339
- Зарегистрирован: 05 мар 2012, 15:00
- Имя: Горский Андрей Сергеевич
- город/регион: Санкт-Петербург
- Благодарил (а): 179 раз
- Поблагодарили: 368 раз
Связка контроллеров и Eplan
Выделено в отдельную тему, "ноги растут" отсюда - viewtopic.php?f=78&t=2919&start=275
Схожая тема - Eplan генератор схем+ПЛК Siemens (STEP7) viewtopic.php?f=113&t=2789
Схожая тема - Eplan генератор схем+ПЛК Siemens (STEP7) viewtopic.php?f=113&t=2789
Все знания для всех. Поиск знаний священен. Обмен знаниями священен. Копирование священно.
-
- знаток Eplan
- Сообщения: 25
- Зарегистрирован: 17 сен 2015, 09:25
- Имя: Иванюк Дмитрий Сергеевич
- Страна: РБ
- город/регион: Брест
- Благодарил (а): 2 раза
Связка контроллеров и Eplan
Добрый день.
Нужна помощь опытных “инженеров по автоматизации”. Вопрос такой – в настоящее время инженер по автоматизации в Eplan’е описывает не только электрическую часть проекта, но и технологическую. Потом все описание экспортируется в виде Lua-скриптов для управляющей программы на контроллере. Кое-что приходится дописывать руками (пример ниже). Я считаю, что для этого не нужен инженер-программист, инженер по автоматизации должен все уметь делать самостоятельно. То есть он должен иметь базовые навыки программирования. А как вы считаете?
Дополнительное описание проекта (main.lua):
Нужна помощь опытных “инженеров по автоматизации”. Вопрос такой – в настоящее время инженер по автоматизации в Eplan’е описывает не только электрическую часть проекта, но и технологическую. Потом все описание экспортируется в виде Lua-скриптов для управляющей программы на контроллере. Кое-что приходится дописывать руками (пример ниже). Я считаю, что для этого не нужен инженер-программист, инженер по автоматизации должен все уметь делать самостоятельно. То есть он должен иметь базовые навыки программирования. А как вы считаете?
Дополнительное описание проекта (main.lua):
Код: Выделить всё
--Проект "Ряженка"
-- ----------------------------------------------------------------------------
dofile( "tank.lua" ) --Базовая функциональность.
dofile( "line.lua" )
dofile( "master.lua" )
-- ----------------------------------------------------------------------------
-- Основные объекты проекта
comb1 = OBJECT1
tank56 = OBJECT2
tank57 = OBJECT3
tank58 = OBJECT4
tank59 = OBJECT5
tank60 = OBJECT6
tank61 = OBJECT7
tank62 = OBJECT8
tank63 = OBJECT9
line_R1 = OBJECT13
line_R2 = OBJECT14
line_R3 = OBJECT15
line_R4 = OBJECT16
line_R5 = OBJECT17
-- ----------------------------------------------------------------------------
tank = {} --Основной танк.
add_functionality( tank, basic_tank ) --Добавляем базовую функциональность.
tank.operations = --Операции танков.
{
WASHING_MSA = 1, --Мойка МСА.
MIXING = 20, --Перемешивание.
}
tank.steps = --Шаги операций танков.
{
WASHING_MSA =
{
DRAINAGE = 3,
}
}
-- ----------------------------------------------------------------------------
--Пользовательская функция инициализации, выполняемая каждый цикл в PAC.
function tank:user_init()
--Описание, необходимое для базовой мойки танка.
self.mix = M( 'TANK'..self.n..'M1' ) --Мешалка.
self.hatch = GS( 'TANK'..self.n..'GS1' ) --Датчик люка.
if self.n == 56 or self.n == 57 or self.n == 58 or self.n == 59 then
self.DI_MSA_FREE = MCA15LINE1DI1 --Сигнал "МСА свободна".
self.MSA_WASH_END = MCA15LINE1DI3 --Сигнал "МСА окончена".
elseif self.n == 60 or self.n == 61 or self.n == 62 or self.n == 63 then
self.DI_MCA_FREE = MCA15LINE2DI1 --Сигнал "МСА свободна".
self.MSA_WASH_END = MCA15LINE2DI3 --Сигнал "МСА окончена".
end
--Описание, необходимое для базового перемешивания танка.
self.bar = nil --Датчик решетки люка.
--self.hatch = GS( 'TANK'..self.n..'GS1' ) --Датчик люка.
end
-- ----------------------------------------------------------------------------
-- ----------------------------------------------------------------------------
line = {} --Основная линия.
add_functionality( line, basic_line ) --Добавляем базовую функциональность.
line.operations = --Операции линий.
{
WASHING_MSA = 1, --Мойка МСА.
}
line.steps = --Шаги операций линий.
{
WASHING_MSA =
{
DRAINAGE = 2,
}
}
-- ----------------------------------------------------------------------------
--Пользовательская функция инициализации, выполняемая каждый цикл в PAC.
function line:user_init()
if self.tech_type == 5 and self.n == 5 then --Линия R5
self.pump_info = nil --Насосы линии.
--self.pump_info.pump = R1V9
--self.pump_info.WASH_STATE = 2 --Реверс насоса.
--Описание, необходимое для базовой мойки линии.
self.DI_MSA_FREE = MCA6LINE3DI1 --Сигнал "МСА свободна".
self.MSA_WASH_END = MCA6LINE3DI3 --Сигнал "МСА окончена".
end
end
-- ----------------------------------------------------------------------------
-- ----------------------------------------------------------------------------
master = {} --Мастер проекта.
add_functionality( master, basic_master ) --Добавляем базовую функциональность.
master.operations = --Операции.
{
WASHING_R1_R4 = 1, --Мойка R1, R4.
}
master.steps = --Шаги операций.
{
WASHING_R1_R4 =
{
DRAINAGE = 2,
}
}
--Мойка линии R1
master:add_sub_operation(
master.operations.WASHING_R1_R4,
line_R1,
line.operations.WASHING_MSA )
--Мойка линии R4
master:add_sub_operation(
master.operations.WASHING_R1_R4,
line_R4,
line.operations.WASHING_MSA )
--Мойка линий R1, R4 для гребенки
master:add_on_eval(
master.operations.WASHING_R1_R4,
line.evaluate_wash,
master.steps.WASHING_R1_R4.DRAINAGE,
MCA6LINE3DI3 ) --Сигнал "МСА окончена".
-- ----------------------------------------------------------------------------
-- ----------------------------------------------------------------------------
--Пользовательская функция, выполняемая каждый цикл в PAC.
--function user_eval()
--end
-- ----------------------------------------------------------------------------
-- ----------------------------------------------------------------------------
--Добавляем функциональность для объекта из описания в Eplan'е.
add_functionality( comb1, master )
add_functionality( tank56, tank )
add_functionality( tank57, tank )
add_functionality( tank58, tank )
add_functionality( tank59, tank )
add_functionality( tank60, tank )
add_functionality( tank61, tank )
add_functionality( tank62, tank )
add_functionality( tank63, tank )
add_functionality( line_R1, line )
add_functionality( line_R4, line )
add_functionality( line_R5, line )
-- ----------------------------------------------------------------------------
-- ----------------------------------------------------------------------------
DEBUG = true
if DEBUG then --Отладочная установка состояний устройств.
__MCA15LINE1DI1:set_cmd( "ST", 0, 1 )
__TANK56GS1:set_cmd( "ST", 0, 1 )
__MCA6LINE3DI1:set_cmd( "ST", 0, 1 )
__R5DI12:set_cmd( "ST", 0, 1 )
end
-
- знаток Eplan
- Сообщения: 25
- Зарегистрирован: 17 сен 2015, 09:25
- Имя: Иванюк Дмитрий Сергеевич
- Страна: РБ
- город/регион: Брест
- Благодарил (а): 2 раза
Связка контроллеров и Eplan
Добрый день,
так как вопрос очень интересен, повторно интересуюсь - кто какие контроллеры использует в связке с Eplan'ом?
так как вопрос очень интересен, повторно интересуюсь - кто какие контроллеры использует в связке с Eplan'ом?