"Народный" инкубатор

bwn
Offline
Зарегистрирован: 25.08.2014

Лёвчег пишет:

bwn пишет:

Левчег, подмышку его, подмышку.

Гениально!!! Спасибо)

А Umka, вам что то иное предложил? Та методика более старая, более точная, но менее аппетитная.)))  Зато практически исключает манипуляции с температурой (где ты школа?). У животных и грудничков именно так измеряют.

Лёвчег
Offline
Зарегистрирован: 07.02.2016

bwn пишет:

А Umka, вам что то иное предложил? Та методика более старая, более точная, но менее аппетитная.)))  Зато практически исключает манипуляции с температурой (где ты школа?). У животных и грудничков именно так измеряют.

Я просто Романа не совсем понял. А после ваших пояснений всё встало на свои места.

lean_74
Offline
Зарегистрирован: 22.12.2015

Лёвчег пишет:

bwn пишет:

Левчег, подмышку его, подмышку.

Гениально!!! Спасибо)

Вместе с медицинским.

Лёвчег
Offline
Зарегистрирован: 07.02.2016

lean_74 пишет:

Вместе с медицинским.

Здравствуйте! И снова я) Не моглы бы вы отправить фото готовой платы? А то я в тупняке почему "мини" в зеркальном положение. Или просто она к плате вверх ногами крепится.

Спасибо.

lean_74
Offline
Зарегистрирован: 22.12.2015

Лёвчег пишет:

 А то я в тупняке почему "мини" в зеркальном положение. Или просто она к плате вверх ногами крепится.

Мне в свое время достался такой перевернутый макрос на промини, переделывать не стал, так что она там действительно к "верху задом". :) 

Лёвчег
Offline
Зарегистрирован: 07.02.2016

Благодарю за инфу!

Добра!!!

Лёвчег
Offline
Зарегистрирован: 07.02.2016

Как пришлют китайцы, обязательно покажу в готовом виде)

lean_74
Offline
Зарегистрирован: 22.12.2015

Лёвчег пишет:

 

ак пришлют китайцы, обязательно покажу в готовом виде)

Ворой и третий вывод на теристорной оптопаре надо соединить, ошибочка там.

Лёвчег
Offline
Зарегистрирован: 07.02.2016

Не, всё же непонял. Теристорная - это которая с 6 ногами, правильно? MOC3063 если я не ошибаюсь. Там получается вместо третей ноги, надо было на вторую подкидывать. Чёт даже не обратил внимания. Блин...

Соплю кину. И эстетика не будет нарушена)

yul-i-an
yul-i-an аватар
Offline
Зарегистрирован: 10.12.2012

Очень радует что мой труд комуто пользу приносит.

lean_74, мне как автору применяемого в Ваешм проекте ПИД регулятора и реализации алгоритма Брезенхема интересует несколько вопросов.

Как справляется регулятор с удержанием заданной температуры? тяжело было коэффициенты подобрать? (в будущем планирую автонастройку сочинить)

И как ведет себя алгоритм Брезенхема ? (по улучшению его алгоритма есть некоторые мысли. Если время будет допилю)

 

lean_74
Offline
Зарегистрирован: 22.12.2015

yul-i-an пишет:

Как справляется регулятор с удержанием заданной температуры? тяжело было коэффициенты подобрать? (в будущем планирую автонастройку сочинить)

И как ведет себя алгоритм Брезенхема ? (по улучшению его алгоритма есть некоторые мысли. Если время будет допилю)

на лампочках накаливания с текущими настройками работает идеально,коэффициенты специально не подбирал, пробовал на более инертных нагревателях(тенах) темература плавала в пределах одного-двух градусов и не стабилизировалась, вернулся опять к лампочкам :)   Для инкубатора, практика показала, ПИД особо не нужен, если инкубатор небольшого объема достаточно режима обычной термостабилизации, с небольшим гистерезисом и задержкой включения нагревателей. 

Если допилишь автоподстройку, будет только здорово. хотелось бы, чтобы включил - и все заработало, без всяких сложных настроек.

Umka
Umka аватар
Offline
Зарегистрирован: 19.10.2012

Нука расскажите подробнее про реализацию алгоритма и чем он хорош?

И еще, у меня диммер есть на Тини, по ШИМ управляемый, можно сделать диммируемый ПИД (это просто) или же плавное снижение мощности без ПИД (для меня сложнее) для маленьких инкубаторов, где ПИД избыточен. Есть мысли кроме map(); ?

 

Нашел по алгоритму, ознакомился, интересная мысль. Но как я понял, оно полупериод весь занимает. Либо открыт симистор, либо закрыт. Так?

lean_74
Offline
Зарегистрирован: 22.12.2015

Umka пишет:

Нашел по алгоритму, ознакомился, интересная мысль. Но как я понял, оно полупериод весь занимает. Либо открыт симистор, либо закрыт. Так?

Здравствуй, Роман, давненько не общались, именно так, режется полуволна полностью, и помех в сеть минимум. Лампочки правда моргают, немного раздражают, но я уже привык. В этом году впервые вывел из яйца и вырастил 10 индюков(индюшек). Самый крупный после ощипа и потрошения потянул на 14,5 килограмма. Могу, если интересно, попозже фотки выложить. 

bwn
Offline
Зарегистрирован: 25.08.2014

lean_74 пишет:

Самый крупный после ощипа и потрошения потянул на 14,5 килограмма. Могу, если интересно, попозже фотки выложить. 

Тут еще вопрос, кто кого щипать и потрошить будет.)))) А фотки, почему и нет.

lean_74
Offline
Зарегистрирован: 22.12.2015

bwn пишет:

Тут еще вопрос, кто кого щипать и потрошить будет.)))) А фотки, почему и нет.

Индюки, самая милая птица, до двух месяцев сами подходили, чтобы я их рукой погладил, как подросли, правда стали "надуваться", но ни разу ни один ни меня ни детей не клюнул и даже не пытался драться, между собой да - деруться постоянно.

Umka
Umka аватар
Offline
Зарегистрирован: 19.10.2012

Привет. И к нам заходи, сезон подходит!

14,5 это средний результат, а кросс какой?

По алгоритму - я так понял, что его можно использовать и без детектора ноля, просто брать оптрон с встроенным детектором.

https://habrahabr.ru/post/254719/

lean_74
Offline
Зарегистрирован: 22.12.2015

Пардон, кроссс Это что? Зайду обязательно, что обещал к сезону доделаю.

Umka
Umka аватар
Offline
Зарегистрирован: 19.10.2012

Кросс это гибрид. Есть породы, у которых породные признаки наследуются, а есть кроссы у птицы - продукт скрещивания нескольких пород. Вот бройлер (любой) к примеру 4-линейный кросс Плимутрока и Корниша. Кроссы имеют максимальную продуктивность по многим показателям. Но эта инфа наверное не будет интересна на форуме ардуинщиков . 

bwn
Offline
Зарегистрирован: 25.08.2014

lean_74 пишет:

Индюки, самая милая птица, до двух месяцев сами подходили, чтобы я их рукой погладил, как подросли, правда стали "надуваться", но ни разу ни один ни меня ни детей не клюнул и даже не пытался драться, между собой да - деруться постоянно.

Вот и не держу крупную, их мало, всех в морду знаешь, жалко бить потом.(((( Перепелки, которые сотнями, с теми никаких эмоций.

bwn
Offline
Зарегистрирован: 25.08.2014

Umka пишет:

Но эта инфа наверное не будет интересна на форуме ардуинщиков . 

Так этот топик похоже только птицееды читают, думаю ничего страшного.

Лёвчег
Offline
Зарегистрирован: 07.02.2016

Мне даже сдыдно впредь что-то спрашивать... Тут такие темы, я даже половины слов таких незнаю! Хорошо, что есть умные люди!

yul-i-an
yul-i-an аватар
Offline
Зарегистрирован: 10.12.2012

Umka пишет:

... где ПИД избыточен. Есть мысли кроме map(); ?

Не представляю как можно адекватно использовать map для регулирования.

А вот использовать П (пропорциональный) регулятор вполне реально, если допустимо небольшое рассогласование с уставкой.

P=(tу-tт)*kP  P-выход регулятора, tу-уставка,  tт-текущее значение, kP-коэффициент пропорциональности (надо подбирать)

Umka пишет:

Нашел по алгоритму, ознакомился, интересная мысль. Но как я понял, оно полупериод весь занимает. Либо открыт симистор, либо закрыт. Так?

Совершенно верно!

Umka
Umka аватар
Offline
Зарегистрирован: 19.10.2012

Спасибо, я именно про это и спрашивал. Почему бы и нет? Вообще в инкубаторах и ПИ регулятора достаточно, слишком они медленные. Буду экспериментировать с ШИМ. Любопытно, удастся ли стабилизировать выходную мощность на сколь-нибудь продолжительный срок. Рамки сделаю где 100% и 0, а где шимим. Думаю норм будет.

yul-i-an
yul-i-an аватар
Offline
Зарегистрирован: 10.12.2012

В моей реализации ПИД

01//расчет мощности по ПИД закону регулирования
02    //Параметры регулятора
03    #define kP 6//коэффициент пропорциональности
04    #define p_min 0.0//минимум П составляющей - не < 0
05    #define p_max 100.0//максимум П составляющей - не > 100
06    #define kI 0.100//коэффициент интегрирования
07    #define i_min 0.0//минимум И составляющей
08    #define i_max 30.0//максимум И составляющей
09    #define kd 0//коэффициент диференциирования
10    #define d_ctl 7.0//зона пропорциональности ust-d_ctl
11    #define out_min 0//минимальный выходной %
12    #define out_max 100//максимальный выходной %
13     
14    //Расчет управляющего воздействия
15    //возвращает необходимое воздействие в %
16    uint8_t PIDctl(float temp, float ust) {
17        uint8_t out = 0;
18        static float i = 0;
19        static float ed = 0;
20        float e, p;
21        float d;
22        e = (ust - temp); //ошибка регулирования
23        p = (temp < ust - d_ctl) ? p_max : (temp > ust) ? p_min : (kP * e); //П составляющая
24        i = (i < i_min) ? i_min : (i > i_max) ? i_max : i + (kI * e); //И составляющая
25        d = kd * (e - ed); //Д составляющая
26        ed = e;
27        out = (p + i + d < out_min) ? out_min : (p + i + d > out_max) ? out_max : p + i + d;
28    return out;
29    }

Если любой из коэффициентов kP, kI, kD установить в 0 то он не будет учавствовать в расчете, следовательно с помощь этой функции можно получить любой регулятор П, ПИ, ПИД и т.д.

Зона не чувствительности регулятора вне которой регулятор выдает 100% или 0% выставляется в параметре d_ctl. Если допустим температура ниже (ust- d_ctl) то регулятор выдаст 100%, если текущая температура находится в  зоне от (ust-d_ctl до ust) то управляющее воздействие будет соответствовать параметрам регулятора. Еще хочу заметить то что расчет регулятора необходимо вызывать через равные промежутки времени.

yul-i-an
yul-i-an аватар
Offline
Зарегистрирован: 10.12.2012

Лёвчег пишет:

Как пришлют китайцы, обязательно покажу в готовом виде)

Где заказывали? Тоже производителя подыскиваю. Вот платку набросал, но мысли есть еще изменить немного

Umka
Umka аватар
Offline
Зарегистрирован: 19.10.2012

Дип-резисторы, как мило! Разъем дисплея лучше повернуть, кабель USB будет в него упираться от Наны. 

Перепробовал много поставщиков, сейчас заказываю тут https://dirtypcbs.com/store/pcbs

И спасибо за ПИД без либы. 

 

Umka
Umka аватар
Offline
Зарегистрирован: 19.10.2012

Вот вариант от UM в железе. Тоже с ESP8266

 

bwn
Offline
Зарегистрирован: 25.08.2014

Umka пишет:

Вот вариант от UM в железе. Тоже с ESP8266

Стесняюсь полюбопытствовать, а что за мега-радиаторы на симисторах?

Umka
Umka аватар
Offline
Зарегистрирован: 19.10.2012

Ну, там под BTA41 разводка и под меньшие, в TO220 корпусах. Нормальные радиаторы. Инкубаторы же разные бывают. Я вот сейчас на 6000 яиц достраиваю.

bwn
Offline
Зарегистрирован: 25.08.2014

Ни в коем случае не критикую. Чисто удивился, думал 0,5-0,6кВт для любого будет достаточно. Видать не масштабно мыслю.))))

Umka
Umka аватар
Offline
Зарегистрирован: 19.10.2012

Один мой блок точно на 45000-ке трудится :)  Это комната с маленький гараж.

Там конечно твердотельные 3-фазные снаружи, но блок тот же.

Umka
Umka аватар
Offline
Зарегистрирован: 19.10.2012

Кто поможет код ужать, тому плату такую подарю! mailumka2@gmail.com

yul-i-an
yul-i-an аватар
Offline
Зарегистрирован: 10.12.2012

Umka пишет:

Один мой блок точно на 45000-ке трудится :)  Это комната с маленький гараж.

Там конечно твердотельные 3-фазные снаружи, но блок тот же.


Я тут http://arduino.ru/forum/proekty/pi-regulyator-otopleniya ПИ регулятор на дачу собирал в каркасное 32 м2 так конвертор в среднем зимой не более 11% от своих 1500Вт расходует. Все зависит от потерь тепла. Так что можно и более слабый нагреватель ставить, а запас мощности нужен только для того чтобы быстро поднимать температуру, ну и когда совсем уж мороз.

yul-i-an
yul-i-an аватар
Offline
Зарегистрирован: 10.12.2012

Umka пишет:

Дип-резисторы, как мило! Разъем дисплея лучше повернуть, кабель USB будет в него упираться от Наны. 

Перепробовал много поставщиков, сейчас заказываю тут https://dirtypcbs.com/store/pcbs

И спасибо за ПИД без либы. 

 

Спасибо за ссылку. У меня USB в другую сторону глядит, дип резисторы для того чтобы между ними дорожки пускать. Разводка полностью на одной стороне. У меня там и под BT, WI-FI и GSM разведено, на все случаи. Размеры под распаячную коробку 100х100. Лутом пробную шлёпнул для тестирования.

Umka
Umka аватар
Offline
Зарегистрирован: 19.10.2012

Не совсем так. Смотри. Яйцо куриное весит в среднем 65 грамм. Умножаем на 45К и получаем 2835 килограмм. Это много для быстрого прогрева. Воздух в камере весит фигню и теплоемкость у него фигня, а вот эти 2,8 тонны распределенные по объему, у яйца плотность выше чем у воды. Теплоемкость огромная. Яйца будут охлаждать воздух в камере, пока сами не прогреются. А скорость прогрева будет прямо пропорциональна затраченной мощности. И разгон должен быть быстрый относительно. Мы для этого даже дополнительный канал нагрева используем, который за 3 градуса до заданной температуры отключается. Ну а после разгона требуется только компенсировать потери. Ну, еще влияние вентиляции надо учитывать, зародыши на позднем сроке активнее кислород потребляют и еще самонагрев яиц в конце инкубации. Там не греть, а охлаждать приходится. Активный метаболизм формирующихся птенцов дает хороший выхлоп тепла. Поэтому ПИД там так необходим. С одной стороны нужен мощный нагреватель на старте, а с другой, нужна на нем маленькая мощность (порою до 3%) в процессе инкубации. Ну и стабильность конечно. Порою летом такая жара, что в помещении 32-35 днем, а контроллер 37,5 держит ровно. 

Ага, я заметил односторонний монтаж дорожек. Но на стоимость фабричных плат это не влияет. ЛУТити удобнее, да. 

Лёвчег
Offline
Зарегистрирован: 07.02.2016

https://jlcpcb.com/

Не в курсе как сей час, но я под акцыю попал. За 2 бакса десять плат 10х10 см. с бесплатной доставкой. А так у них 11 баксов доставка. Тобиш 10х10, 10 шт. 13 $.

AleksandrM
Offline
Зарегистрирован: 20.07.2017

Добрый день.

Пытаюсь собрать скетч из 9 поста и получаю ошибку:

readsensor:327: error: 'class SI7021' has no member named 'setHumidityRes'

   si7021.setHumidityRes(12); // Humidity = 12-bit / Temperature = 14-bit //максимальное разрешение

Что я делаю не так?
 

Umka
Umka аватар
Offline
Зарегистрирован: 19.10.2012

А библиотеку поставил?

 

AleksandrM
Offline
Зарегистрирован: 20.07.2017

Да

AleksandrM
Offline
Зарегистрирован: 20.07.2017

Может не правильная библиотека? Пришлось править

 #include <Si7021.h> на #include <SI7021.h>

Если так то где взять правильную?

yul-i-an
yul-i-an аватар
Offline
Зарегистрирован: 10.12.2012

Лёвчег пишет:

https://jlcpcb.com/

Не в курсе как сей час, но я под акцыю попал. За 2 бакса десять плат 10х10 см. с бесплатной доставкой. А так у них 11 баксов доставка. Тобиш 10х10, 10 шт. 13 $.

Спасибоза наводку заказал у них 5шт. Доставка безплатная, заказал 18.12.17 получил 10.01.18, доставил курьер от почты России. Качество просто нет слов.

 

Umka
Umka аватар
Offline
Зарегистрирован: 19.10.2012

Там и 5 и 10 плат за 2 бакса продают, а доставка только на первый заказ бесплатная. Типа скидка первому покупателю. Ну, можно еще на жену-тёщу-собаку-соседа заказать. Но даже с 11 баксами доставки выходит дешевле других. Качество обычное, они же не сами делают. Все эти конторы собирают заказы, в панели большие их объединяют и на фабрики заказ кидают. Рандомно. Поэтому в следующий раз может прийти другое качество. Но в целом приемлемо всегда, если не придираться с микроскопом. 

Лёвчег
Offline
Зарегистрирован: 07.02.2016

А мне ещё не дошли. В моём городе уже 5 дней. Чё делают дурацкие...?

yul-i-an
yul-i-an аватар
Offline
Зарегистрирован: 10.12.2012

Извеняюсь за офтоп хочу лицевую часть показать, может кому интересно качество

Лёвчег
Offline
Зарегистрирован: 07.02.2016

Лёвчег
Offline
Зарегистрирован: 07.02.2016

Единственное чёт мальца прокосячел с отверстиями под реле (они есть, только слижком мелкие). 

Umka
Umka аватар
Offline
Зарегистрирован: 19.10.2012

Как ни старайся, а первая плата всегда будет с косяками. У меня из 30 проектов может 1-2 платы вышли с первого раза какие надо. Остальные пришлось допиливать.

Лёвчег
Offline
Зарегистрирован: 07.02.2016

Ну ничего) Научимся...

AleksandrM
Offline
Зарегистрирован: 20.07.2017

Добрый день. Подскажите, датчик AM2320 подойдет для инкубатора? Как он по точности и надежности?

Umka
Umka аватар
Offline
Зарегистрирован: 19.10.2012

Уважаемый yul-i-an, что-то у меня не взлетает Ваш ПИД. Он только вниз работает, когда ошибка уменьшается. А если измеренная температура стоит, то и выходной коэффициент стоит и не растет. 

Ну собственно p=(temp<ust-d_ctl)?p_max:(temp>ust)?p_min:(kP*e);//П составляющая 

и не будет расти, нет инкремента.