Форум программистов, компьютерный форум, киберфорум
Контроллеры PLC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/56: Рейтинг темы: голосов - 56, средняя оценка - 4.89
0 / 0 / 0
Регистрация: 06.04.2012
Сообщений: 51

[CoDeSys 2.3] Управление насосами: заполнение и опустошение резервуара

23.10.2012, 18:51. Показов 11742. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
IL. Программа для ПЛК по управлению насосами

Кликните здесь для просмотра всего текста
У вихідному стані рідина в баку відсутня, сигналізує рівень сухого ходу
насосу, ввімкнено Насос 1. При досягненні рідиною верхнього рівня вимикається
Насос 1 та вмикається Насос 2. Якщо рівень рідини в баку вище верхнього рівня, то
контролер про це сигналізує

На основі завдання розробити:
a) таблицю сигналів;
b) прикладну програму для ПЛК;
c) дати опис роботи прикладної програми.
До таблиці сигналів вносяться:
· порядковий номер змінної;
· ім'я змінної (не повинне містити пропусків і кирилиці);
· тип змінної (дискретний, аналоговий);
· клас змінної (локальна, глобальна);
· адресу (для внутрішніх змінних не заповнюється).


В исходном состоянии жидкость в баке отсутствующая, сигнализирует
уровень сухого хода насосу, включен Насос 1. При достижении жидкостью верхнего
уровня выключается Насос 1 и включается Насос 2. Если уровень жидкости в баке выше
верхнего уровня, то контролер об этом сигнализирует


На основе задания разработать :
a) таблицу сигналов;
b) прикладную программу для ПЛК;
c) дать описание работы прикладной программы.
К таблице сигналов вносятся:
· порядковый номер переменной;
· имя переменной (не должно содержать пропусков и кириллицы);
· тип переменной (дискретный, аналоговый);
· класс переменной (локальная, глобальная);
· адрес (для внутренних переменных не заполняется).
Вложения
Тип файла: pdf 6.pdf (48.9 Кб, 251 просмотров)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
23.10.2012, 18:51
Ответы с готовыми решениями:

[CoDeSys 2.3] Заполнение резервуара и нагрев раствора
Надо сделать программу на языке cfc в codesys 2.3 на контроллере 150 U-M Подача жидкостей в общий бак осуществляется по очереди...

Система упр. резервированием котла и управление насосами
Собсна вот http://www.youtube.som/watch?v=Flg6i1pM2fI Сейчас допиливаю софт, сделано на атмеге 328, с использованием Arduino, ибо...

[LOGO Soft Comfort 7] Управление двумя откачивающими насосами: включение, чередование
Начало проги на скрине подскажите плиз как сделать что бы выходы 1 и 2 включались поочереди, если первый компанатор включается при...

7
0 / 0 / 0
Регистрация: 06.04.2012
Сообщений: 51
23.10.2012, 19:01  [ТС]
Можете помоч? А то я ничего не понимаю.
0
Почетный модератор
Эксперт по компьютерным сетямЭксперт Windows
 Аватар для magirus
28049 / 15785 / 983
Регистрация: 15.09.2009
Сообщений: 67,752
Записей в блоге: 78
23.10.2012, 20:26
VAR
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
VAR
    startbtn: BOOL; (* кнопка запуска *)
    starting: BOOL; (* процесс запущен *)
    stop_btn: BOOL; (* кнопка останова *)
    dry_lvl: BOOL; (* датчик сухого уровня *)
    hi_lvl: BOOL; (* датчик верхнего уровня *)
    ns1_start: BOOL; (* насос №1 запушен *)
    ns2_start: BOOL; (* насос №2 запушен *)
    avar_lamp: BOOL; (* лампа аварийного уровня *)
    start_btn: BOOL; (* кнопка запуска *)
    overflov_lvl: BOOL; (* датчик переполнения *)
    dry_lamp: BOOL; (* лампа "сухой бак" *)
    lo_lvl: BOOL; (* датчик нижнего уровня *)
    lo_lvl_lamp: BOOL; (* лампа "нижний уровень" *)
END_VAR
PROGRAM:
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
        (*кнопка запуска, останова, самоблокировка*)
LD      start_btn
OR(     starting
ANDN        stop_btn
    )
ST      starting
 
(*признак запуска, и если не верхнийи или не аварийный датчик - включен насос №1*)
LD      starting
ANDN        hi_lvl
ANDN        overflov_lvl
ST      ns1_start
 
(*признак запуска и если  верхнийи или аварийный датчик и не сухой уровень - включен насос №2 *)
LD      starting
AND(        hi_lvl
OR      overflov_lvl
)
AND     dry_lvl
ST      ns2_start
 
(*если переполнение - включаем аварийную лампу*)
LD      overflov_lvl
ST      avar_lamp
 
(*если сухой бак - включена лампа сухой бак*)
LDN     dry_lvl
ST      dry_lamp
 
(*если сработал датчик нижнего уровня - включаем лампу нижнего уровня*)
LD      lo_lvl
ST      lo_lvl_lamp
Добавлено через 30 минут
постольку поскольку в задании отсутствует описание логики работы датчика нижнего уровня - его функция чисто сигнальная.

ЗЫ программа выполнена в среде CoDeSys v 2.3 и проверена.
2
0 / 0 / 0
Регистрация: 06.04.2012
Сообщений: 51
24.10.2012, 20:07  [ТС]
спасибо большое
0
0 / 0 / 0
Регистрация: 06.04.2012
Сообщений: 51
24.10.2012, 23:12  [ТС]
можете подсказать как зделать табличку к етому коду, пример таблички ниже
Вложения
Тип файла: pdf 61.pdf (30.3 Кб, 133 просмотров)
0
Почетный модератор
Эксперт по компьютерным сетямЭксперт Windows
 Аватар для magirus
28049 / 15785 / 983
Регистрация: 15.09.2009
Сообщений: 67,752
Записей в блоге: 78
25.10.2012, 01:13
это уже сами. за Вас я делать не буду. тем более описание переменных с комментариями есть выше. адреса - ваши проблемы, ибо не указан конкретный контроллер. (может быть я бы и помог)
табличка наглядна. подсказка: все переменные в вашем задании битовые, (дискретные) в программе они глобальные.
могу выложить проекты среды CoDeSys 2.3 (*.prg) с комментариями в варианте IL и LD...
(хотя IL я выложил)

Добавлено через 9 минут
сама среда - бесплатна. скачать можно например с овен.ру
русифицирована. есть обучающие примеры.
2
0 / 0 / 0
Регистрация: 06.04.2012
Сообщений: 51
25.10.2012, 17:20  [ТС]
спасибо и на етом, дальше както сам розберусь
0
0 / 0 / 0
Регистрация: 06.04.2012
Сообщений: 51
27.10.2012, 15:21  [ТС]
В исходном состоянии жидкость в баке отсутствующая, сигнализирует
уровень сухого хода насосу, включен Насос 1. При достижении жидкостью верхнего
уровня выключается Насос 1 и включается Насос 2. Если уровень жидкости в баке выше
верхнего уровня, то контролер об этом сигнализирует

На основе задания разработать :
a) прикладную программу для ПЛК;
b) дать описание работы прикладной программы.

У нас есть код програми

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
VAR
    startbtn: BOOL; (* кнопка запуска *)
    starting: BOOL; (* процесс запущен *)
    stop_btn: BOOL; (* кнопка останова *)
    dry_lvl: BOOL; (* датчик сухого уровня *)
    hi_lvl: BOOL; (* датчик верхнего уровня *)
    ns1_start: BOOL; (* насос №1 запушен *)
    ns2_start: BOOL; (* насос №2 запушен *)
    avar_lamp: BOOL; (* лампа аварийного уровня *)
    start_btn: BOOL; (* кнопка запуска *)
    overflov_lvl: BOOL; (* датчик переполнения *)
    dry_lamp: BOOL; (* лампа "сухой бак" *)
    lo_lvl: BOOL; (* датчик нижнего уровня *)
    lo_lvl_lamp: BOOL; (* лампа "нижний уровень" *)
END_VAR
 
 
 (*кнопка запуска, останова, самоблокировка*)
LD      start_btn
OR(     starting
ANDN        stop_btn
    )
ST      starting
 
(*признак запуска, и если не верхнийи или не аварийный датчик - включен насос №1*)
LD      starting
ANDN        hi_lvl
ANDN        overflov_lvl
ST      ns1_start
 
(*признак запуска и если  верхнийи или аварийный датчик и не сухой уровень - включен насос №2 *)
LD      starting
AND(        hi_lvl
OR      overflov_lvl
)
AND     dry_lvl
ST      ns2_start
 
(*если переполнение - включаем аварийную лампу*)
LD      overflov_lvl
ST      avar_lamp
 
(*если сухой бак - включена лампа сухой бак*)
LDN     dry_lvl
ST      dry_lamp
 
(*если сработал датчик нижнего уровня - включаем лампу нижнего уровня*)
LD      lo_lvl
ST      lo_lvl_lamp
Чтобы запустить насос ему нужно присвоить значение TRUE! И хорошо бы использовать действительно Глобальные (то есть те которые на контроллере), а те, что у коде - они локальные

Как присвоит насосу значение TRUE, и использовать Глобальние.

 Комментарий модератора 
Не дублируем темы.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
27.10.2012, 15:21
Помогаю со студенческими работами здесь

[CoDeSys] Управление светофором
Задание: Сделать блок управления светофором на CoDeSys, нужно чтобы светофор работал так: горит зеленый, когда начинает переключаться на...

[CoDeSys 2.3] Управление освещением на ПЛК (ST)
ST. Управление освещением на ПЛК На входе в квартиру установлены два датчика: один снаружи квартиры, другой внутри. Если ...

Управление звонком и пускателем (ST, Codesys, ПЛК110)
Добрый день, товарищи. Понемногу осваиваю ST, столкнулся со следующим вопросом : Имеется ПЛК110, кнопка, пускатель и звонок. Обыденная...

[CoDeSys] Управление сушильной камерой для сушки древесины
Задание для университета. Сушильная камера (несуществующая) , в ней происходит сушка древесины. Входные параметры: температура,...

[CoDeSys] Управление декадансами, на основе Управляемого дебалансного узла
Помогите разработать в CoDeSys алгоритм(в виде блок схемы) и программу, которая будет работать по этому алгоритму(с описанием), которая...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru