Пуск-стоп двигателя

Простейшие вопросы в области инженерной разработки

Пуск-стоп двигателя

Postby mish17 on 05 Sep 2018, 08:02

Здравствуйте. Изучаю LabVIEW недавно. До этого программировал только ПЛК. Поделитесь, пожалуйста, примером. Задача Пуск - останов двух двигателей в двух режимах: Ручной - кнопками, автоматический переключение через 24ч.
mish17
beginner
beginner
 
Posts: 16
Joined: 13 Aug 2018, 08:28
LabVIEW Version: 17
Karma: 0

Re: Пуск-стоп двигателя

Postby Kosist on 05 Sep 2018, 08:26

Для начала нужно с железом определиться, а затем код под него писать. Вы же двигатель напрямую к компу не подключите? :wink:
Мы делили апельсин - много наших полегло...
User avatar
Kosist
leader
leader
 
Posts: 880
Joined: 21 Feb 2011, 23:44
Medals: 2
Activity (1) Gold (1)
LabVIEW Version: 2013-2017
Karma: 246
CLAD I/O VIP students

Re: Пуск-стоп двигателя

Postby mish17 on 05 Sep 2018, 10:05

Да,у меня контроллер sbrio-9607.и написать программу в одном цикле с помошью булевых операций в принципе несложно,но это будет не расширяемое приложение.А хотелось бы посмотреть пример в стиле машины состояний.
mish17
beginner
beginner
 
Posts: 16
Joined: 13 Aug 2018, 08:28
LabVIEW Version: 17
Karma: 0

Re: Пуск-стоп двигателя

Postby Borjomy_1 on 05 Sep 2018, 13:24

Входы-выходы какие? что планируете расширять? Количество двигателей?
Borjomy_1
expert
expert
 
Posts: 1826
Joined: 28 Jun 2012, 09:32
Location: город семи холмов
Medals: 3
Activity (1) Professionalism (1) Silver (1)
LabVIEW Version: 4-8.6,9-14
Karma: 319
VIP

Re: Пуск-стоп двигателя

Postby mish17 on 05 Sep 2018, 13:39

Входы-выходы RMC NI 9684. Хочется разобраться в принципе построения программ на примере простой насосной установки да 2 насоса ( на плк проект можно сделать за день).2 режима работы: ручной с кнопок пуск/стоп на дискретных входах, автоматический - пид регулятор с переключением нососов по времени и авариии; 2 режима управления: местный и с Host LabVIEW.
mish17
beginner
beginner
 
Posts: 16
Joined: 13 Aug 2018, 08:28
LabVIEW Version: 17
Karma: 0

Re: Пуск-стоп двигателя

Postby Borjomy_1 on 05 Sep 2018, 14:15

ПИД регулятор на основе чего работает? аналоговые входы-выходы? откуда задание? Короче, опишите все входные и выходные величины. А то у вас помимо таймера, еще и пид регулятор появился.
Borjomy_1
expert
expert
 
Posts: 1826
Joined: 28 Jun 2012, 09:32
Location: город семи холмов
Medals: 3
Activity (1) Professionalism (1) Silver (1)
LabVIEW Version: 4-8.6,9-14
Karma: 319
VIP

Re: Пуск-стоп двигателя

Postby mish17 on 05 Sep 2018, 14:23

Про ПИД регулятор я написал, чтобы четко отделить ручной от автоматического режима. Но в целом да-аналоговый вход-датчик давления, аналоговый выход- задание на ПЧ 0-5В.
mish17
beginner
beginner
 
Posts: 16
Joined: 13 Aug 2018, 08:28
LabVIEW Version: 17
Karma: 0

Re: Пуск-стоп двигателя

Postby mish17 on 05 Sep 2018, 14:32

Задача: управление насосной станцией из 2-х насосов.
Режим управления местный(сигнал на дискретном входе):
Режим ручной: управление кнопками пуск-стоп каждого насоса( сигналы приходят на дискретные входы) задание частоты -0-5В, фиксированное -максимальное(5В).
Режим автоматический (сигнал на дискретном входе):переключение насосов по времени или по аварии(например нет сигнала включения соответствующего контактора), задание частоты-ПИД регулятор требуемое давление на одном аналоговом входе, текущее давление на другом аналоговом входе, задание на ПЧ -аналоговый выход.

Режим управления удаленный- с Host :
Режим ручной: управление кнопками пуск-стоп каждого насоса( сигналы на панели компьютера) задание частоты -0-5В, фиксированное -задается с панели компьютера.
Режим автоматический :переключение насосов по времени или по аварии(например нет сигнала включения соответствующего контактора), задание частоты-ПИД регулятор: требуемое давление-задается на панели компьютера, текущее давление на аналоговом входе, задание на ПЧ -аналоговый выход.
mish17
beginner
beginner
 
Posts: 16
Joined: 13 Aug 2018, 08:28
LabVIEW Version: 17
Karma: 0

Re: Пуск-стоп двигателя

Postby Borjomy_1 on 05 Sep 2018, 14:54

Не совсем стиль машины состояний... При возникновении аварии в авто режиме насос переключается из выключенного во включенный и наоборот. Если сигнал аварии один на два двигателя, то один включится, другой выключится. Запускать машину надо в ручном режиме.
Attachments
Управление одним двигателем.png
Borjomy_1
expert
expert
 
Posts: 1826
Joined: 28 Jun 2012, 09:32
Location: город семи холмов
Medals: 3
Activity (1) Professionalism (1) Silver (1)
LabVIEW Version: 4-8.6,9-14
Karma: 319
VIP

Re: Пуск-стоп двигателя

Postby mish17 on 05 Sep 2018, 15:25

Спасибо за пример. Для меня основная сложность возникает не написание алгоритма на уровне Real-Time контроллера, а получение команд с верхнего уровня. Здесь в примере режим ручной только для местного режима-это 1 кейс структура, если добавить еще выбор режима управления, то добавить еще одну кейс или в той же структуре вводить 4 состояния: Местный ручной, Местный автоматический, Удаленный ручной, удаленный автоматический?
mish17
beginner
beginner
 
Posts: 16
Joined: 13 Aug 2018, 08:28
LabVIEW Version: 17
Karma: 0

Re: Пуск-стоп двигателя

Postby Borjomy_1 on 05 Sep 2018, 15:54

Думаю, старт, стоп и режим надо переключать с местного на удаленный в одном месте. Логика управления не меняется, меняется только источник (местный или удаленный). Также надо решить вопрос с возможной неконсистентностью данных. Например, положение переключателя режима в разных источниках. Кнопки-то работают по нажатию, а режим - нет
Borjomy_1
expert
expert
 
Posts: 1826
Joined: 28 Jun 2012, 09:32
Location: город семи холмов
Medals: 3
Activity (1) Professionalism (1) Silver (1)
LabVIEW Version: 4-8.6,9-14
Karma: 319
VIP

Re: Пуск-стоп двигателя

Postby mish17 on 05 Sep 2018, 16:03

Режим мест/удаленный логично изменять в одном месте. Я сегодня подготовлю проект, как его вижу я. Думаю с этого надо было начинать.
mish17
beginner
beginner
 
Posts: 16
Joined: 13 Aug 2018, 08:28
LabVIEW Version: 17
Karma: 0

Re: Пуск-стоп двигателя

Postby mish17 on 06 Sep 2018, 09:35

Выкладываю пример организации передачи команд с верхнего уровня на контроллер. Вопрос вот чем: Если строить логику работы на основе конечного автомата, какие-то команды игнорируются, какие-то принимаются в зависимости от текущего состояния станции. Это значит для каждой команды с верхнего уровня выделяется case, внутри которого еще case состояния системы? И как отслеживать допустим состояние контактора в нескольких состояниях? А кнопку аварийного останова необходимо отслеживать во многих состояниях.(в добавление к физическому разрыву цепей управления)?
Attachments
Pump.rar
(205.6 KiB) Downloaded 20 times
mish17
beginner
beginner
 
Posts: 16
Joined: 13 Aug 2018, 08:28
LabVIEW Version: 17
Karma: 0

Re: Пуск-стоп двигателя

Postby IvanLis on 06 Sep 2018, 16:44

mish17 wrote:Выкладываю пример организации передачи команд с верхнего уровня на контроллер.

Не думаю, что кто-то установит себе LV2018, что бы посмотреть Ваш код.
Тем более в профиле написана версия 2017.
User avatar
IvanLis
professor
professor
 
Posts: 4628
Joined: 02 Dec 2009, 17:44
Location: СССР
Medals: 7
Activity (2) Professionalism (1) Tutorials (1) Gold (1) Man of the year 2012 (1)
Автор (1)
LabVIEW Version: 2010
Karma: 727
hardware VIP bloggers teachers

Re: Пуск-стоп двигателя

Postby mish17 on 06 Sep 2018, 16:48

Вроде сохранял в 2014.
mish17
beginner
beginner
 
Posts: 16
Joined: 13 Aug 2018, 08:28
LabVIEW Version: 17
Karma: 0

Next

Return to Для чайников

Who is online

Users browsing this forum: Google and 12 guests

cron