Форум самогонщиков Сайт Барахолка Магазин Помощь солдатам

Универсальный контроллер CLRC-02

Форум самогонщиков Автоматика
1 2 3 4 3
capsolo Профессор Зелик 5.3K 1.6K
Отв.40  18 Апр. 17, 23:55
colibrilab, условно говоря если я варю пиво - жду, когда сусло нагреется до определенной паузы, включая мешалку 5 через 15 минут, плавно снижая нагрев при подходе, а потом я буду другим каналом греть промывочную воду до 80, а длительность паузы у меня 30 минут, и если за 30 минут паузы вода не нагрелась - я бросаю греть воду и начинаю на другом канале идти к следующей паузе, а если нагрелась раньше 30 минут я просто выключу нагрев и буду простаивать остаток паузы.
Как что-то из этого твоим скриптом изобразить?
На Атмелях, на которых делают самы базовые ардуни в зависимости от чипа от трех таймеров, не считая прерываний по изменению состояния ног. Обработчики прерываний выполняются без очереди по истечению времени или по событию извне.
colibrilab Студент Барнаул 35 15
Отв.41  19 Апр. 17, 17:38
colibrilab, зря ты агрессивно реагируешь на замечания. большинство из них по существу. Если ты предлагаешь своё решение чтоб люди повторяли - то надо исправлять недочеты.woddy, 18 Апр. 17, 21:12

Дело не в этом. Я с удовольствием воспринимаю критику, т.к. критика двигает решение вперед. Тут вопрос в подаче этой критики. Когда человек пишет "не надо метать бисер...", намекая на мою принадлежность к свиньям, то единственное, что хочется - это послать такого человека на хер. И я с удовольствием это сделаю.

зазоры выбираются из соображений безопастности. Желательно, чтоб при появлении в розетке 1000вольт никого не убивало от прибора.woddy, 18 Апр. 17, 21:12

Согласен. Я делал свой контроллер в пластиковом корпусе и посчитал соответствие зазоров ГОСТу вполне достаточным. Думаю, нужно просто отделить логику от прочего и этого будет достаточно.
colibrilab Студент Барнаул 35 15
Отв.42  19 Апр. 17, 17:41, через 4 мин
условно говоря если я варю пиво - жду, когда сусло нагреется до определенной паузы, включая мешалку 5 через 15 минут, плавно снижая нагрев при подходе, а потом я буду другим каналом греть промывочную воду до 80, а длительность паузы у меня 30 минут, и если за 30 минут паузы вода не нагреласьcapsolo, 18 Апр. 17, 23:55

Вас понял. Я позиционировал контроллер для процессов дистилляции и ректификации. В следующей версии учту подобные пожелания. Будут независимые процессы по таймерам. Спасибо.
PavelSaratov Доктор наук Саратов 622 80
Отв.43  19 Апр. 17, 19:17
во и псевдомногозадачность появилась. еще принудительный выход из процесса по исчерпанию кванта времени слделаешь - будет недофриртс Подмигивающий

Добавлено через 5мин.:

во и псевдомногозадачность появилась. еще принудительный выход из процесса по исчерпанию кванта времени слделаешь - будет недофриртс Подмигивающий

Поясню свою мысль - даже если один процесс зациклится заморозитсы навсегда - другие процессы так же тикают дальше. Но вообще про FreeRTOS лучше почитать... Поверь, много полезного. Есть такая замечательная статья http://easyelectronics.ru/img/ARM_kurs/FreeRTOS/Kurniz.pdf даже просто для общего развития интересно почитать.
Grab Специалист Красноярск 170 96
Отв.44  06 Мая 17, 14:16
colibrilab, Дмитрий, молодец
Универсальный контроллер CLRC-02
Универсальный контроллер CLRC-02. Автоматика.
Лично мне твоя идея автоматизации очень по душе... По поводу недочетов платы.. ну, у кого не бывает.. Не так уж много и доделывать... Сейчас доделаю автоматику msg31 по схеме roslava и обязательно соберу эту.. Посмотрел скрипты.. Лично мне, как не программисту, скрипты ректификации и дистилляции понятны, видно где что править и подогнать под свои хотелки и свое видение этих процессов. Что понравилось в идее, так это то, что скрипты загружаешь те, которые тебе нужны - ректификация, дистилляция, пивоварение и т.д.и т.п., а не все, которые есть в природе и не всегда тебе подходят. Платы уже все которые нужны заказал..

capsolo, смотрел соседнюю ветку с пивоварней на скриптах.. Ради интереса скачал один из многочисленных файлов с рецептами пива в формате .xml и посмотрел там как описывается процесс пивоварения в скриптах... Все там можно воплотить..
http://www.beerxml.com

ИМХО весь негатив из-за того, что нет пока что реальных отзывов от повторивших... А вся навороченность автоматики и прецензионность вычислений нивелируется простым нажатием рубильника на подстанции или на площадке
Универсальный контроллер CLRC-02
Универсальный контроллер CLRC-02. Автоматика.
Универсальный контроллер CLRC-02
Универсальный контроллер CLRC-02. Автоматика.


Так что, ты не теряйся
Универсальный контроллер CLRC-02
Универсальный контроллер CLRC-02. Автоматика.
   

P.S. По поводу +85 на датчике вроде человек объяснил из-за чего: http://we.easyelectronics.ru/...odpravleno.html
mr.ptec Доктор наук Петрозаводск 703 171
Отв.45  08 Мая 17, 22:19
Автору темы респект за работу!

Купил себе на али stm32 + ESP8266. Сейчас сижу читаю книжки про STM32. Причём когда заказывал ESP8266 думал о модуле как о внешнем интерфейсе с ПК. А оказалось что ESP8266 уже готовый контроллер с памятью и WI-FI чипом. Круто!


Насчёт многозадачности. В stm32 многозадачность отлично программируется при наличии ОПЫТА у программиста в этой области, т.к. это сложно. Опыт я имею в виду именно в программировании потоков (распараллеливании) стоящей задачи. Ну например программист на Жабе вряд ли сможет написать маломальскую игру стратегию типа С&C (утрировал конечно но для примера пойдёт).

В идеале то как хочется (мне!):
- первый поток - нашёл ds18b20, и в процессе работы в режиме реального времени следит за корректностью показаний температуры, скорость изменения темп., да и вообще датчик может выйти из строя, отвалится контакт и т.д... Вот эти Alert-ы и нужно вовремя поймать...
Но это если делать на совесть.

Насчёт ESP8266 и в частности о скриптах. Честно скажу эту вещь ещё не юзал.
Но скрипты это ДОБРО а не ЗЛО! Бэйсик это ведь тоже скрипты по сути, сначала код выполнялся как предпроцессор без компиляции потом и компиляция стала нормой.

Насчёт многозадачности в ESP8266. Предположу что если программный код обслуживающий скрипты в этой штуке ГРАМОТНЫЙ и есть возможность указать в исходном тексе что этот фрагмент нужно как то выделить-распараллелить как то, то тогда все ОК!


Mnz Магистр Город 254 86
Отв.46  09 Мая 17, 10:44
Сейчас сижу читаю книжки про STM32.mr.ptec, 08 Мая 17, 22:19
Теория это хорошо, но она не заменит практику, без которой сложно что-то изучать. Все что было прочитано нужно сразу же закреплять на практике, создавая пусть и на первый взгляд бесполезные примеры кода. Это позволит лучше разобраться и понять как работает тот или иной модуль МК.
Для начала хороши эти статьи ведь в них все рассматривается на примерах http://www.avislab.com/blog/stm32-list_ru/

Насчёт многозадачности. В stm32 многозадачность отлично программируется при наличии ОПЫТА у программиста в этой области, т.к. это сложно.mr.ptec, 08 Мая 17, 22:19
В чем именно сложность? Есть же FreeRTOS. Пример для STM32F103C8T6.
автоэлектрик Доктор наук Бийск 792 293
Отв.47  09 Мая 17, 11:06, через 23 мин
Вот тоже валяется Еsp.Но я вот почему-то нихрена не врубаюсь в тему! Ардуино - понятно написал скетч, проработал в нем интерфейс и все, прога работает, со мной общается далее без знаний программирования. Тут получается я должен каждый день писать ей уравнения? Ткните куда почитать с азов!
Grab Специалист Красноярск 170 96
Отв.48  09 Мая 17, 13:13
автоэлектрик, Да все то же самое - скетч залил и забыл, а вот если захотел немного изменить алгоритм, то написал его в блокноте и залил. И также заыл, если все устраивает.
[сообщение #13007388]
автоэлектрик Доктор наук Бийск 792 293
Отв.49  09 Мая 17, 13:18, через 6 мин
Понятно. А где стартово почитать?
Grab Специалист Красноярск 170 96
Отв.50  09 Мая 17, 14:22
автоэлектрик, наверное в основах программирования
Универсальный контроллер CLRC-02
Универсальный контроллер CLRC-02. Автоматика.
Почитай ещё соседнюю ветку про пивоварню: [Контроллер пивоварни на esp8266] Там тотже вроде принцип заложен с заливкой рецептов...
mr.ptec Доктор наук Петрозаводск 703 171
Отв.51  09 Мая 17, 20:40
Теория это хорошо, но она не заменит практику, без которой сложно что-то изучать. Все что было прочитано нужно сразу же закреплять на практике, создавая пусть и на первый взгляд бесполезные примеры кода. Это позволит лучше разобраться и понять как работает тот или иной модуль МК.Mnz, 09 Мая 17, 10:44
Ты прямо как Горбачёв на 20 съезде КПСС лозунгуешь.
Ты меня не торопи с STM32. Нужно с мыслями собраться. Может быть с ОСРВ FreeRTOS поразбираться. Это же хобби а не источник дохода.
makh Профессор Sаmara 2.1K 1.1K
Отв.52  12 Мая 17, 20:35
colibrilab, респект!

Концепт со скриптом оч правильный. Но соглашусь с коллегой capsolo -- в текущем состоянии скрипт годен только для простых отлаженных техпроцессов, вроде описанных в доке. Т.е. потенциальный пользователь их из дока скопирует, поправит цифры, и оно ему будет на этих стандартных задачах работать. И это на самом деле круто. Но когда ему захочется странного (отбирать головы периодикой, или в течение всего погона с ЦП, открывать по градуснику нижний отбор, и т.д.) он потребует возможности расписать в скрипте циклы на уровне goto <label>, как минимум. Обработчики "таймеров" уже. А потом обработчики и генераторы аварийныйх событий, ибо в каком-то случае, например, не надо выключать тэн, достаточно не прерывая работу разбудить оператора.

Если по итогам получится совместить удобный и гибкий инструмент для програмистов с простой коробкой для решения стандартных задач не-програмистами, будет бесконечно круто.
capsolo Профессор Зелик 5.3K 1.6K
Отв.53  12 Мая 17, 21:16, через 42 мин
makh, Махмуд а в твоем софте же можно несколько потоков, или колбэки какие-то? Так то железку свою с кучей мощных и маломощных каналов, шестью градусниками, и тремя независимыми циклическими таймерами мы к твоей софтине прикрутили, и все отлично работает в ручном режиме, мониторит и строит графики. Вроде бы у тебя можно несколько программ параллельно запускать. Могут они данными обмениваться?
makh Профессор Sаmara 2.1K 1.1K
Отв.54  12 Мая 17, 22:13, через 58 мин
capsolo, Если коротко -- да. Подробно распишу в теме. Не знаю если сегодня, ибо пятница. Недели рабочей задница (C)
colibrilab Студент Барнаул 35 15
Отв.55  24 Мая 17, 05:53
Но соглашусь с коллегой capsolo -- в текущем состоянии скрипт годен только для простых отлаженных техпроцессов, вроде описанных в доке. Т.е. потенциальный пользователь их из дока скопирует, поправит цифры, и оно ему будет на этих стандартных задачах работать. И это на самом деле круто. Но когда ему захочется странного (отбирать головы периодикой, или в течение всего погона с ЦП, открывать по градуснику нижний отбор, и т.д.) он потребует возможности расписать в скрипте циклы на уровне goto <label>, как минимум. Обработчики "таймеров" уже. А потом обработчики и генераторы аварийныйх событий, ибо в каком-то случае, например, не надо выключать тэн, достаточно не прерывая работу разбудить оператора.makh, 12 Мая 17, 20:35

Это так - эти скрипты для линейных процессов. Надо сказать, что большинству этого более чем достаточно. Основная идея была в максимальном упрощении управления для пользователя. Сейчас занимаюсь новой версией. Там уже будут более продвинутые скрипты, похожие на простой язык программирования, с многопоточностью, с переменными, со сложными выражениями, с условиями, с циклами и т.д..
makh Профессор Sаmara 2.1K 1.1K
Отв.56  24 Мая 17, 06:10, через 18 мин
похожие на простой язык программированияcolibrilab, 24 Мая 17, 05:53
Заранее извиняясь, на свой страх и риск продолжу ход мысли -- почему бы в таком случае не зашить туда интерпрет какого-нибудь готового (и, возможно, массово известного) языка? Типа васика .) Присунуть в него коротким синтаксом ентиты из железа, естессна, ну и т.д.
colibrilab Студент Барнаул 35 15
Отв.57  25 Мая 17, 13:42
Заранее извиняясь, на свой страх и риск продолжу ход мысли -- почему бы в таком случае не зашить туда интерпрет какого-нибудь готового (и, возможно, массово известного) языка? Типа васика .) Присунуть в него коротким синтаксом ентиты из железа, естессна, ну и т.д.makh, 24 Мая 17, 06:10

Почти все популярные языки имеют схожий синтаксис. Будет что-то между Бейсиком и C++. Вот кусочек скрипта, на котором сейчас забавляюсь с отладкой компилятора:

t_set(1, 2); // привязка термометра t1 к сенсору #2
t_set(2, 1); // привязка термометра t2 к сенсору #1
t_set(7, 3); // привязка термометра t7 к сенсору #3

var a = 13;
var b;

thread ASM {
  while (true) { 
    p = map(t2, 30, 70, 500, 600);
  }
}

if (a != 13)
  b = 5;
else {
  var c = 70;
  b = c * a;
}

while (t7 < 70); // ждать пока t7<70

start(ASM);

while (t1 < 85); // ждать пока t1<85

stop(ASM);

a = (b == 5) ? 17.85 : b * 2;

var i = 0;
while (i < 10) {
  a *= (i + 1);
  i = i + 1;
}

makh Профессор Sаmara 2.1K 1.1K
Отв.58  25 Мая 17, 14:10, через 29 мин
Универсальный контроллер CLRC-02
Универсальный контроллер CLRC-02. Автоматика.
capsolo Профессор Зелик 5.3K 1.6K
Отв.59  25 Мая 17, 14:50, через 41 мин
или так