|
Вопросы о программировании Вопросы, касающиеся программирования на FBD |
|
Опции темы | Поиск в этой теме |
12.04.2017, 06:51 | #1 |
Новичок
Регистрация: Jan 2017
Сообщения: 20
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Мой первый проект
Здравствуйте уважаемые!
Дайте несколько советов как проще все сделать. Есть стеклянная комната - оранжерея. Нужна какая то система климат контроля, чтобы цветы не замерзли и не поджарились. В наличии: PIXEL 2511-02-0 панелька TRIM5 2 тепловые пушки(обогрев), 2 вентилятора (для смешивания воздуха), открывающиеся окна по периметру. Придумал так: расставить 4 датчика температуры по углам и смотреть разницу между ними, если превышает гистерезис то включаем вентиляторы. Если превысило уставку то включаем или пушки или открываем окна. Подскажите как проще реализовать я начинающий в программировании для PIXEL Спасибо за ваше время и ответы |
12.04.2017, 10:35 | #2 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 157
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: Мой первый проект
Цитата:
Перво-наперво, климат в оранжереях так не строят. Вам нужно получить данные о климате в той зоне, в которой стоит оранжерея, о розе ветров, количестве солнечных дней. Какие культуры в теплице будут выращиваться, каковы требования этих культур к наилучшему климату. Датчиков температуры много не бывает, это верно, но при наличии постоянной циркуляции (а она должна быть), много и не нужно. Обязательно нужно считать инсоляцию, иначе можно устроить локальную "сахару", ну или как минимум большие колебания температуры в облачную погоду. Это только то, что вспомнилось с налёту. Честно, вам до программирования этой задачи ещё пока далеко. Вам технолог нужен толковый --------------------- Если же вам дали это оборудование и сказали - управляй им, то можете особо не напрягаться и делать как вы сейчас придумали, работать всё равно будет не очень именно из-за неучтённости хотя бы озвученных мною факторов. Хотя, смотря что растите. Если картофан, то там вообще почти пофигу)) __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. Последний раз редактировалось Arsie, 12.04.2017 в 10:46 |
|
12.04.2017, 11:13 | #3 |
Уволен из Сегнетикс
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Мой первый проект
Новомодное исполнение климатических установок для теплиц - отгороженная часть помещения для приготовления климата. Эдакий ресивер. Там открывается клапан(окно) на улицу, для забора более холодного воздуха, там же стоит увлажнитель и нагреватель. Смешивающие потолочные вентиляторы не очень нужны, но хорошо, когда они есть. Дутьевые вентиляторы выдувают подготовленный в помещении воздух сразу в теплицу.
Влажность контролировать очень желательно. __________________ В сегнетиксе не работаю с самого начала 2019 года. |
12.04.2017, 11:27 | #4 |
Новичок
Регистрация: Jan 2017
Сообщения: 20
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: Мой первый проект
Это мой домашний проект. Сейчас все работает само по себе, и в общем то устраивает. Просто решил выкинуть кучу блоков управления каждой из установок и сделать один из Пикселя.
Вообще не очень бы хотелось обсуждать технологию, понимаю что не совершенство. В идеале вообще сказали, что нужна подготовка воздуха. Но я не буду ничего переделывать в технологии, мне бы просто написать программку как есть. |
12.04.2017, 12:02 | #5 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 157
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: Мой первый проект
Цитата:
http://forum.segnetics.com/showthread.php?t=467 - термодатчики Показания датчиков сложите между собой (блок ADD) и поделите на 4 (блок DIV). __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
12.04.2017, 13:12 | #6 |
Новичок
Регистрация: Jan 2017
Сообщения: 20
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: Мой первый проект
Слепил немного кода.
Не могу додумать как поддержание температуры сделать правильно. Как же не хватает ST. Нашёл в примерах дискретный регулятор применил его к нагреву, а как приладить к нему когда A>B (для охлаждения-открывания окон) не додумаю ни как. Ну и может какие общие замечания. |
12.04.2017, 13:14 | #7 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 157
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: Мой первый проект
Цитата:
Если вам нужна оценка программных решений, будьте добры написать описание: что вы хотели сделать, что получилось и какая часть программы выполняет (должна выполнять, но не выполняет) какую логику. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
12.04.2017, 13:31 | #8 | |
Новичок
Регистрация: Jan 2017
Сообщения: 20
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: Мой первый проект
Цитата:
Организовал смешивание воздуха вентиляторами 1 и 2 в каждой зоне соответственно. Если Т1 != Т2 включаем вент1 (аналогично во второй зоне). Также если средние температуры Т1:Т2 и Т4:Т3 отличаются то включаем оба вентилятора. Далее пытаюсь организовать поддержание температуры в каждой из зон (тепл. пушки и открывание окон) добавил 2 дискретных регулятора с гистерезисом прицепил на выходы включение пушек. С нагревом теперь нет проблем, а вот охлаждением не получается.... |
|
12.04.2017, 13:34 | #9 |
Новичок
Регистрация: Jan 2017
Сообщения: 20
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: Мой первый проект
|
12.04.2017, 13:39 | #10 |
Уволен из Сегнетикс
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Мой первый проект
Не так всё. У вас выход тепл. пушка включается когда А<=В. а выход Окна включается когда A<B (функция из NOT(A>=B)).
А если А=В - вообще оба выхода включатся. __________________ В сегнетиксе не работаю с самого начала 2019 года. |
12.04.2017, 13:48 | #11 | |
Новичок
Регистрация: Jan 2017
Сообщения: 20
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: Мой первый проект
Цитата:
Ситуация открывания окон: Ситуация включения пушки: |
|
12.04.2017, 13:59 | #12 | |
Senior Member
Регистрация: Dec 2011
Сообщения: 762
Благодарил(а): 1 раз(а)
Поблагодарили:
11 раз(а) в 11 сообщениях
|
Ответ: Мой первый проект
Цитата:
1. Окно открывается когда температура стала выше 31*С. 2. Окно закрывается когда температура стала ниже 30*С 3. Калорифер включается когда температура стала ниже 29*С. 4. Калорифер выключается когда температура стала выше 30*С. 5. Вкл/Выкл через RS-тригеры. Для окна и калорифера отдельные тригеры 6. Сравнение через Мин-Макс. Для окна и калорифера отдельные блоки сравнения __________________ Нет абсолютно бездарных людей. Каждый бездарен в своей области. Последний раз редактировалось tvf, 12.04.2017 в 14:14 |
|
12.04.2017, 14:20 | #13 |
Уволен из Сегнетикс
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Мой первый проект
Объясните мне, и сами себе заодно, в чём разница A<B и NOT(A>B) ?
Проще говоря, вы ставите лишние отрицание. Отрицать надо не другой выход, а тот же самый, тогда у вас получится, что всегда, когда не включена теплопушка - открыто окно. __________________ В сегнетиксе не работаю с самого начала 2019 года. |
12.04.2017, 14:31 | #14 | |
Новичок
Регистрация: Jan 2017
Сообщения: 20
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: Мой первый проект
Цитата:
Да но гистерезиса на окна не будет тогда.... |
|
12.04.2017, 15:00 | #15 |
Уволен из Сегнетикс
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили:
1 раз в 1 сообщении
|
Ответ: Мой первый проект
Вот так можно
__________________ В сегнетиксе не работаю с самого начала 2019 года. |