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

Попытка автоматизации пленочной колонны с паровым отбором

Форум самогонщиков Автоматика
1 ... 31 32 33 34 35 36 37 ... 45 34
Igorr67 Бакалавр Збараж 52 7
Отв.660  12 Февр. 19, 14:02
Запустил автоматику пока в режиме наладке, все разбросано по столу. Автоматика заработала. Всем спасибо. Но есть некоторые ньюансы.
1. Взял термос залил кипяток, все три датчика пучком опустил по гильзы  в воду, закрыл и окутал термос есть разброс в показаниях, табличку с температурами прилагаю. Что делать, есть ли возможность калибровки?
2. А также китайская готовая клава, кнопки верх- вниз работают в правильном направлении, а вправо-влево как бы перепутаны, если заходить допустим для регулировки конкретного значения, то заходит левой, а выход вправо, думаю что это не правильно?

abc32 Студент Брянск 19 14
Отв.661  12 Февр. 19, 14:44, через 43 мин
Igorr67 замени в скетче следующие строки:
byte Key() { // проверяем кнопки шилда
  if (analogRead(0) < 10) return 3; // вправо
  else if (analogRead(0) < 50) return 2; //вверх
  else if (analogRead(0) < 100) return 4;// вниз
  else if (analogRead(0) < 180) return 1; // влево
  else if (analogRead(0) < 400) return 5; //select
  else if (analogRead(0) < 1023) return 0;
Igorr67 Бакалавр Збараж 52 7
Отв.662  12 Февр. 19, 16:01
Igorr67 замени в скетче следующие строки:abc32, 12 Февр. 19, 14:44
Заменил работает правильно, спасибо.
сообщение удалено
Igorr67 Бакалавр Збараж 52 7
Отв.663  12 Февр. 19, 20:48
Главное чтобы их показания не скакали больше 0.1- 0.2 градусовnorem, 12 Февр. 19, 16:40
Это показания одного термометра в  конкретное  время  или трьох между собой в тоже время, я приводил таблицу температур, так пойдет или нужно  какой то датчик менять, если можна разъяснить конкретнее. у меня есть кроме этих еще два датчики. Температура снималась на протяжении полтора часа, иногда прыгали только десятки т.е 90,1 -90,0, но редко
karu77 Специалист Земля 119 32
Отв.664  12 Февр. 19, 21:04, через 16 мин
Температура снималась на протяжении полтора часа, иногда прыгали только десятки т.е 90,1 -90,0, но редко
Одного термометра. Если в течении 1.5 часа прыгали десятки это нормально, вода в термосе все-таки остывала. А в царге будет постоянная поддерживаться температура и дельту ты выставишь 0.3÷0.5°С.
dee Научный сотрудник Минск 6.5K 1.7K
Отв.665  13 Февр. 19, 10:09
в ds18b20 есть два энергонезависимых регистра Tl и Th (нижнее и верхнее значение температуры при которой выставляется какой то флаг) можно попробовать хранить поправочные коэффициенты там, можно приделать костыль в виде поправочных коэффициентов для конкретного датчика в программе.

шаг у датчика 0,0625 0,125 0,25 0,5 так что ориентироваться лучше на него

округление:
0,0000 - 0,0
0,0625 - 0,1
0,0125 - 0,2
0,1875 - 0,2
0,2500 - 0,3
0,3125 - 0,3
0,3750 - 0,4
0,4375 - 0,4
0,5000 - 0,5
0,5625 - 0,6
0,6250 - 0,6
0,6875 - 0,7
0,7500 - 0,8
0,8125 - 0,8
0,8750 - 0,9
0,9375 - 0,9

Igorr67 Бакалавр Збараж 52 7
Отв.666  13 Февр. 19, 11:23
 Еще раз для тех кто не понял. Все три датчики связаны в пучок и находятся в термосе. Замеры проводились полтора часа и за это время температура в термосе упала с 91 градуса до 77. При  верхних температурах показания  темп. куба  89,6, царги 90,8 это уже + 1,2 гр. и дефа 90.3 это +0,6 по отношению кубу и минус 0,5 по отношению царги  и такая зависимость идет до  80 градусов, а дальше разница в показаниях немного меньше. Вот и я не пойму что мне делать?
можно попробовать хранить поправочные коэффициенты там, можно приделать костыльdee, 13 Февр. 19, 10:09
В програмировании увы я не силен.  Могу только выполнять конкретные указания типа
Igorr67 замени в скетче следующие строки:
byte Key() { // проверяем кнопки шилда
 if (analogRead(0) < 10) return 3; // вправо
 else if (analogRead(0) < 50) return 2; //вверх
 else if (analogRead(0) < 100) return 4;// вниз
 else if (analogRead(0) < 180) return 1; // влево
 else if (analogRead(0) < 400) return 5; //select
 else if (analogRead(0) < 1023) return 0;abc32, 12 Февр. 19, 14:44
norem Студент Вельск 39 30
Отв.667  13 Февр. 19, 15:10
если тебя не радуют показания сделай под свои нужды
 tempSensor[0] = sensor[1]+1,5;//царга
 tempSensor[1] = sensor[2]-0,9;//деф
 tempSensor[2] = sensor[0]+0,1;//куб
dee Научный сотрудник Минск 6.5K 1.7K
Отв.668  13 Февр. 19, 15:24, через 15 мин
вот в этой процедуре массив tempSensor[] набивается значениями температуры,

void tempa (byte u)
{
 ds.reset();
 ds.select(addresa);
 ds.write(0xBE);              // Команда датчику, чтобы он начал отдавать данные.
 temp = (ds.read() | ds.read() << Крутой; //так и не понял как оно там считается, главное работает
 temp = (float)temp / 16.00;
 sensor = temp;//______________________________________________________________________________

 //  tempSensor[0] = sensor[2];//царга
 //  tempSensor[1] = sensor[0];//деф
 //  tempSensor[2] = sensor[1];//куб

 tempSensor[0] = sensor[1];//царга
 tempSensor[1] = sensor[2];//деф
 tempSensor[2] = sensor[0];//куб
}

абсолютная поправка:
 tempSensor[2] = sensor[0] + 0,01 ;//куб

относительная поправка:
 tempSensor[2] = 0.99998 * sensor[0]  ;//куб

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

 temp = (ds.read() | ds.read() << Крутой; //так и не понял как оно там считается, главное работает

возможно вот так будет понятнее:

 ds.reset(); //сбросить линию
 ds.select(Thermometer1); //обратиться к датчику 1
 ds.write(0xBE); // запустить чтение температуры из датчика
 data[0] = ds.read();
 data[1] = ds.read();
 temperatyra_kuba = ((data[1]<< Крутой+data[0]) * 10 / 16 + 6; // два байта складываются в одно число плюс поправка по температуре кипения воды
 ds.reset(); //сбросить линию
 ds.select(Thermometer1); //обратиться к датчику 1
 ds.write(0x44); // запустить преобразование температуры в датчике
 

makh Профессор Sаmara 2.1K 1.1K
Отв.669  13 Февр. 19, 20:07
что мне делать?Igorr67, 13 Февр. 19, 11:23
1. Повесить все градусники на свои места.
2. Провода от каждого в месте установки намотать под теплоизоляцию, витка два-три или более.
3. Вскипятить воду, посмотреть на цифры.
4. Вскипятить спирт, посмотреть на цифры.
5. И только потом, возможно, вносить поправки.
anddin Магистр Астрахань 258 121
Отв.670  14 Февр. 19, 05:44
Не надо ничего делать с датчиками температуры, не нужно вносить поправки, при работе мы следим только за изменениями температуры, у нас нет задачи определить точное показание, мы же не температуру больного мерием, после первого перегона каждый определяет сугубо свои значения температур для своего аппарата.
Не надо на этом зацикливаться
makh Профессор Sаmara 2.1K 1.1K
Отв.671  14 Февр. 19, 06:27, через 43 мин
anddin, есть смысл что-то делать с градусниками, есть.
Прятать провода под изоляцию в месте установки -- уменьшаем влияние внешней среды на показания.
Смотреть разницу между водой и спиртом на всей гирлянде -- сразу быстро выбраковывать сильно отличные от других.
Дело в том, что по-разному они работают в диапазоне до 85 и после. До все красиво, после может быть резкий наклон, и предлагаемыми выше способами это не корректируется. Лучше просто взять другой датчик в этом случае.
norem Студент Вельск 39 30
Отв.672  15 Февр. 19, 08:57
Взялся за редактирования текста программы.
Изменения:
1. Код немного оптимизирован на 300 строк
2. Изменил переменные используемые в программе на удобочитаемые
3. добавил барометр BMP180. Показания атмосферного давления на стартовом экране. И скорректированную температуру кипения спирта на главном.
4. Использовал экран и подключение по l2c в тексте закоментировано
5. Использовал джойстик вместо шилда кнопок в тексте закоментировано
6. Автоматический выход из меню если не нажата кнопка в течении 10 сек
7. Добавил возможность отображения дополнительного датчика температуры (у меня он служит для отображения воды из дефа). По возможности можно старое раскоментировать
8. На сколько сих хватило, сделал описание к программе
9. в меню настройки весов добавил скорость отбора
и куча мелких изменений которых уже и не вспомнить
mega_sem.ino 68.1 Кб
Igorr67 Бакалавр Збараж 52 7
Отв.673  15 Февр. 19, 11:58
Да, я ни разу не программист,но на печатной плате выложеной Anddin выход Узо это 24, а не 26 как у всех скетчах или есть другая распечатка??
norem Студент Вельск 39 30
Отв.674  15 Февр. 19, 12:55, через 58 мин
вот тут есть косяк за мной. у меня уже много что переделано и контакты я уже понаитию восстанавливал как было у автора. Простите!
сама плата и датчики температуры представлены на фото
2019-02-14 00-47-06.JPG
2019-02-14 00-47-06.JPG Попытка автоматизации пленочной колонны с паровым отбором. Автоматика.
2019-02-14 01-21-50.JPG
2019-02-14 01-21-50.JPG Попытка автоматизации пленочной колонны с паровым отбором. Автоматика.
Igorr67 Бакалавр Збараж 52 7
Отв.675  15 Февр. 19, 13:18, через 23 мин
Так и у автора темы в скетче 26, а на плате 24
karu77 Специалист Земля 119 32
Отв.676  17 Февр. 19, 19:12
Наступил день испытаний автоматики от Андрея. Автоматика работает четко, по датчикам температуры в автомате перешли с режима "разгон" на режим отбор голов. Головы, по рекомендации Андрея отбираю на 200 Вт, при этом расход воды капля в 2÷3, а то и 4секунды, деф длинный (рабочая часть 46 см по трубочкам подачи/отвода воды), наверно помогает воздушное охлождение наружной трубы, при этом отбор голов капля в сек. Приятный бонус - это блютус, с др.комнаты можно проверить состояние колонны...


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

А вот инфо по блютус
20190217_175151.jpg
20190217_175151.jpg Попытка автоматизации пленочной колонны с паровым отбором. Автоматика.
20190217_174931.jpg
20190217_174931.jpg Попытка автоматизации пленочной колонны с паровым отбором. Автоматика.
20190217_175055.jpg
20190217_175055.jpg Попытка автоматизации пленочной колонны с паровым отбором. Автоматика.
Screenshot_20190217-194954.png
Screenshot_20190217-194954.png Попытка автоматизации пленочной колонны с паровым отбором. Автоматика.
Igorr67 Бакалавр Збараж 52 7
Отв.677  20 Февр. 19, 20:52
Собрал все в корпус
P2207534.JPG
P2207534.JPG Попытка автоматизации пленочной колонны с паровым отбором. Автоматика.
P2207544.JPG
P2207544.JPG Попытка автоматизации пленочной колонны с паровым отбором. Автоматика.
P2207567.JPG
P2207567.JPG Попытка автоматизации пленочной колонны с паровым отбором. Автоматика.
P2207538.JPG
P2207538.JPG Попытка автоматизации пленочной колонны с паровым отбором. Автоматика.
P2207549.JPG
P2207549.JPG Попытка автоматизации пленочной колонны с паровым отбором. Автоматика.
Александр Волков Магистр Хабаровск 227 82
Отв.678  21 Февр. 19, 00:47
Если магнитофон еще и играет тогда полный зачет
norem Студент Вельск 39 30
Отв.679  24 Февр. 19, 00:54
Сегодня посидел над "сглаживанием" значений поступаемых от весов. Исходя из графика, который взял с ком порта и вывел в эксель минимальное значение без выравнивания -0,49   максимальное 0,34 дельта 0,34 + 0,49 =0,83(Скачки температуры) минимальное значение без выравнивания -0,05 максимальное 0,05 скачки соответственно 0,1 грамм !! Но время реакции увеличилось, видно из второго графика на который я кидал небольшой вес

ps оптимальным значением альфы является значение 0,9 при этом значении при моментальном изменении веса на весах выход с учетом поправок составляет 10 сек. При 0,92 - 15 сек.
Grafik.jpg
Grafik.jpg Попытка автоматизации пленочной колонны с паровым отбором. Автоматика.

hx711_norem.ino 2.2 Кб