Колосники для котлов своими руками

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

Какие функции выполняют колосники

Колосники – это решетка в топке котла, печи или камина, которая встроена в нижнюю часть. Она выполняет три функции:

  • удержание твердого топлива;
  • подача воздуха;
  • удаление золы.

На колосниках лежат дрова, брикеты или уголь. В зависимости от вида топлива нужно подбирать зазоры между параллельно идущими элементами. Решетка должна быть достаточно крепкой, чтобы выдерживать вес дров. Кроме этого, колосники для котла позволяют подавать воздух для горения. При этом можно регулировать количество воздуха, тем самым контролируя силу тяги. Под колосниковой решеткой есть специальный отсек, куда осыпается зола. Он закрыт дверцей или заслонкой. Через дверцу можно не только удалять пепел, но регулировать подачу воздуха.

Материалы и конфигурации колосниковых решеток

Для изготовления колосников для печи или котла используют чугун или жаропрочную сталь. Первый вариант предпочтительней и используется чаще всего, так как чугун служит практически вечно. Сталь, даже прочная, со временем может прогореть, особенно если топить углем. Как известно, температура сгорания угля самая высокая среди всех видов твердого топлива.

Решетка может иметь форму:

  • плоской пластины;
  • соединённых между собой круглых или профильных балок;
  • металлической корзины.

Кроме этого, колосниковые решетки могут быть монолитными и наборными. Монолитные – это цельное изделие определённого размера. Иногда стандартные габариты не подходят и тогда используют наборные колосники для камина или печи, в которых главное подобрать длину элементов.

Если и делать теплый пол под линолеум на деревянный пол, то только электрический.

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

Решетка может быть движимой. Такие изделия состоят из нескольких частей, которые приводятся в движение вручную, специальным рычагом. Есть два варианта движений: поступательные и вращательные. Благодаря движимым колосникам можно подать воздух в залежавшиеся слои топлива, что позволяет полностью выжечь его. Это на несколько процентов повышает КПД обогревательного оборудования.

Как сделать колосники своими руками

Купив толстую чугунную решетку, вы можете быть уверены, что она прослужит вам столько же, сколько и печь. Но иногда случается и так, что стандартные размеры колосниковой решетки не подходят. И тогда ее нужно изготовить самостоятельно. В домашних условиях работать с чугуном невозможно, поэтому в качестве материала можно использовать только сталь. Лучше, конечно, если она будет жаропрочной, но не обязательно. Используя обычное железо нужно позаботиться, чтобы решетка была достаточно толстой.

Укладывать теплый пол под ламинат, по отзывам, не стоит, так как это может повредить напольное покрытие.

В качестве исходного материала можно использовать:

  • арматуру;
  • уголок;
  • толстостенные трубы малого диаметра;
  • стальные полосы.

Прежде чем сделать колосники своими руками нужно снять размеры. После этого изготавливается рамка, на которую потом будут приварены параллельно идущие элементы. Главное, правильно подобрать расстояние между ними. С одной стороны, зола не должна забивать колосник, а воздух мог поступать в достаточном количестве. С другой стороны, угольки должны оставаться в топке до полного выгорания. Щели занимают не более 40% от всей площади решетки.

В частных домах часто устанавливают печи, котлы и камины, которые, несмотря на свое различие, имеют одну общую деталь – колосниковую решетку. Она может отличаться по своей форме, размеру и материалу, но предназначение ее во всех конструкциях остается неизменной.

Работоспособность печей, каминов и котлов, а также их эффективность во многом зависит от того, правильно ли изготовлен элемент, насколько точно он уложен в топочном отделении, а также от материала, из которого он сделан.

Особенности

Колосник своими руками изготавливается цельным элементом, чаще всего для его производства используют чугун. В решетке конструкции имеются отверстия, благодаря которым осуществляется тяга воздуха к топливу.

Укладка детали происходит таким образом, чтобы отверстия решетки были направлены от открытия дверцы к задней стенке. Для топочных отделений большого размера понадобится несколько колосников.

Изготовить колосник своими руками вполне возможно. Он является важным элементом в топочном отделении, благодаря которому можно получить эффективное горение топлива. Конструкции современных печей и котлов постоянно изменяются, детали совершенствуются. Но есть функциональный элемент, без которого никак не обойтись. Этим элементом и является колосниковая решетка.

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

Из чего сделать колосники

Для изготовления колосниковой решетки в печь применяют огнестойкую сталь и чугун. Так как решетка постоянно подвергается горению, лучшим вариантом для ее изготовления считается чугун.

Читайте также:  Как убрать пятна воска с одежды

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

Конструкция колосниковой решетки

Размер колосника зависит от топлива, которое будет применяться в дальнейшем. Для использования в быту рекомендуются конструкции двух вариантов – цельные и составные.

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

Размер составного колосника определяют так же, как и цельный, по размерам топки. Помимо видового различия, устройства делятся и по функциональным функциям.

Конструкция чугунной решетки бывает двух видов: полноповоротной и качающейся. В первом случае элементы имеют способность поворачиваться горизонтально на 180 градусов, что позволяет сбрасывать золу и шлак.

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

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

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

Охлаждаемая колосниковая решетка состоит из литого змеевика, который изготовляется из чугуна. Такой вид применяется в системе водяного отопления и трубного водоснабжения. Внутри охлаждаемого колосникового устройства циркулирует теплоноситель. Охлаждение применяется при горении угля, так как его температура составляет тысячу градусов.

Виды чугунной колосниковой решетки

Колосниковая решетка из чугуна также бывает нескольких видов. Плиточная решетка имеет прямоугольную модель, установленную в отверстии котла, печи или камине. Данный вид считается универсальным в эксплуатации. Решетка корзинного типа идеально подойдет для открытого очага, который предназначен для приготовления пищи.

Такая модель в настоящее время практически не применяется. Решетка из балки состоит из одинарного или двойного элемента, который по своей конструкции напоминает строительную балку.

Балочный чугунный колосник применяется для установки нестандартных конструкций. Также существует подвижная решетка. Свое название она получила благодаря тому, что ее модель способна изменять ширину просветов. Подвижная решетка наиболее часто применяется для длительной эксплуатации.

Изготовление колосниковой решетки в домашних условиях

Можно изготовить колосник своими руками только из стали, так как из чугуна смастерить конструкцию практически невозможно в домашних условиях.

Для работы лучше выбирать огнестойкую сталь, но это не является обязательным условием. Нужно учитывать, для какого вида топлива будет изготовлена решетка, от этого зависит ее размер.

Для угля подойдет конструкция 300х300 мм или 350х300 мм, а для горения древесины размер колосника будет составлять от 140х120 мм и до 300х225 мм.

Используя простое железо, необходимо планировать этапы работы так, чтобы в итоге решетка получилась достаточно толстой. Можно использовать полосы из стали и арматуру. Прежде чем приступить к изготовлению колосника своими руками, необходимо заранее снять размеры. На следующем этапе происходит изготовление рамки.

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

Отверстия в решетке не должны занимать более 40 % ее площади. Не стоит забывать, что соблюдение правил техники безопасности никто не отменял. Стоит заранее позаботиться об одежде и обуви, особенно на этапе сварочной работы.

Установка решетки

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

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

На этапе монтажа не стоит плотно устанавливать колосники, так как при нагревании материал способен к деформации. Это может привести к поломке изделия и трещинам в самой печи.

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

Рекомендации

Топливный материал должен полностью сгорать, а для достижения этой цели необходимо, чтобы поступало оптимальное количество кислорода. Поэтому суммарная площадь расстояния между решетками составляет не более 60 % от общей площади колосника. Если расстояние будет меньше, в печку будет попадать маленький поток воздуха, этого будет недостаточно для поддержания процесса горения в топочном отсеке.

При большом расстоянии между решетками топливный материал будет падать, не успевая догореть. Это будет приводить к увеличению расходного материала для горения.

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

Установка решетки

Для изготовления решетки в котел чаще всего выбирается неподвижная балочная конструкция. Это составная модель, за основу которой берется квадрат или же прямоугольник из четырех балок.

Читайте также:  Кипение электролита при зарядке аккумулятора

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

Заключение

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

В холодные зимние вечера, когда температура на улице достигала -40 градусов. Я понял, что мне приходится совершать очень много однотипных действий, которые, на первый взгляд, очень просто автоматизировать.

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

Постановка задачи

Для того, чтобы понять задачу, я в кратце опишу суть работы современных угольных котлов, таких как: Прометей, Bosh или Buderus:

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

По началу показалось все просто: берем, к примеру, привод от центр.замка автомобильной двери или любое похожее приспособление и по таймеру подаем на него питание.

Концепция устройства

Управляющим блоком было решено выбрать — Arduino, за всенародную любовь и большое количество материалов по нему. В интернете был заказан Arduino Uno, а также блок реле на 12В и блок питания на 2,5А.

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

Из металлического уголка под него было подготовлено крепление к полу и сделана съемная насадка на рычаг.

Пришло время переходить к логике:
1. Если приложить мало усилий, то зола недостаточно освободит место для новой партии угля и может приостановить горение.
2. Если приложить усилий больше чем необходимо, то можно выкинуть в отстойник весь уголь.

Помимо этого, есть еще такие факторы:
— в зависимости от температуры на улице, меняется интенсивность горения и необходимо менять частоту срабатывания;
— при крупной фракции угля или при срабатывании при не догоревшем топливе, возможно заедание рычага.

С учетом этих факторов, к Arduino было решено добавить экран с кнопками для возможности программирования времени, частоты и продолжительности импульса.

с другой стороны:

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

Собираем все на место:


подгоняем все элементы


проверяем экран и управление


собираем все в кучу

/*
Prometey shaker
17.11.2014
*/
#include
#include

#include
#define SHAKERSTEPUPPIN 4 // Пин для кнопки Шаг++
#define SHAKERSTEPDOWNPIN 5 // Пин для кнопки Шаг–
#define MANUALSHAKE 6 // Ручной запуск/Меню ОК
#define POWERRELE 8 // Питания на Реле
int eppromaddr = 0;
int SHAKERSTEP = 300; // Шаг в секундах с которым будет увеличиваться/уменьшаться период встряхивания.
int sensorPin0 = A1; // select the input pin for the potentiometer
float stepValue = 0.0986328125; // step value per one of 0..1023 ((50A * 2 + 1)/1024)
int ZeroLevel = 514; // Zero level. Нулевоз значение АЦП для датчика тока (высчитывается в setup)
float CurrentLevel = 3; // Пороговое значение для тока (задается программно)
byte CURRSHAKE, LEFTSHAKE = 2; // Пин для активации встряхивателя вращение по часовой стрелки + текущий пин для встряхивания
byte RIGHTSHAKE = 3; // Пин для активации встряхивателя вращение против часовой стрелки
byte DOVOD = 12; // Пин для активации доводчика (Прометей)
int buttonState = 0; // Состояние нажатой кнопки
boolean buttonPressed = false;
boolean showMenu = false;
byte menuItem = 0;
volatile long mks100;
volatile long ms10;
volatile int cntr;
long tmillis,tms10=0;
unsigned long shaketimer, shaketime = 0;
byte stopshake; // Время работы шейкера
byte stpdvd; // Время работы доводчика (Прометей)
boolean flip = false; // Для отслеживания активности шейкера — стоит ли вызывать функцию проверки тока и включать реверс.
boolean flipD = false; // Для отслеживания активности доводчика — стоит ли вызывать функцию включения доводчика (Прометей)
byte shakerstepcount = 0;
long temp = 0; // временная переменная для отслеживания времени
boolean tempcurr = 0; // временная переменная для вывода сообщения об измерении тока
boolean isinit = true;
LiquidCrystal_I2C lcd(0x27,16,2);
void setup() <
Serial.begin(9600);
// инициализация портов для кнопок
pinMode(SHAKERSTEPUPPIN, INPUT);
digitalWrite(SHAKERSTEPUPPIN, HIGH);
pinMode(SHAKERSTEPDOWNPIN, INPUT);
digitalWrite(SHAKERSTEPDOWNPIN, HIGH);
pinMode(MANUALSHAKE, INPUT);
digitalWrite(MANUALSHAKE, HIGH);
lcd.init(); // Инициализация lcd
lcd.backlight(); // Включаем подсветку
lcd.print(«Version 3.0»);
lcd.setCursor(0, 1);
lcd.print(«13.11.2014»);
delay(1000);
lcd.clear();
pinMode(sensorPin0, INPUT); // Curent sensor
digitalWrite(sensorPin0, HIGH); // Включаем внутренний подтягивающий резистор
shaketimer = SHAKERSTEP;
mks100 = 0; // счетчик сотен микросекунд, переполнение счетчика примерно через 5 суток
ms10 = 0; // счетчик десятков миллисекунд, переполнение счетчика примерно через 16 месяцев
cntr = 0;
flip = 0;
flipD = 0; // просто добавил это здесь (Прометей)
pinMode(LEFTSHAKE, OUTPUT); // Подготавливаем порты для активации реле. Реле инвертное, срабатывает при подачи GND на контрольные пины.
pinMode(RIGHTSHAKE, OUTPUT); // Подготавливаем порты для активации реле. Реле инвертное, срабатывает при подачи GND на контрольные пины.
CURRSHAKE = LEFTSHAKE;
digitalWrite(LEFTSHAKE, HIGH); // Подготавливаем порты для активации реле. Реле инвертное, срабатывает при подачи GND на контрольные пины.
digitalWrite(RIGHTSHAKE, HIGH); // Подготавливаем порты для активации реле. Реле инвертное, срабатывает при подачи GND на контрольные пины.
pinMode(SHAKERSTEPUPPIN, INPUT); // Подготавливаем порты для кнопки
digitalWrite(SHAKERSTEPUPPIN, HIGH);
pinMode(SHAKERSTEPDOWNPIN, INPUT); // Подготавливаем порты для кнопки
digitalWrite(SHAKERSTEPDOWNPIN, HIGH);
pinMode(POWERRELE, OUTPUT); // Подаем питание на реле (Прометей)
digitalWrite(POWERRELE, HIGH);
pinMode(DOVOD, OUTPUT); // Подготавливаем порт на доводчик (Прометей)
digitalWrite(DOVOD, HIGH);
// Включаем нужный нам режим таймера/счетчика — нормальный
TCCR2A = 0; //нормальный режим (по умолчанию 1 — ШИМ с коррекцией фазы?)
// Предделитель таймера/счетчика настраиваем на 16 — // это позволит «тикать» таймером каждую микросекунду
// (в предположении, что сердце микроконтроллера стучит с
// частотой 16.000.000 ударов в секунду)
TCCR2B = 2; // 010 — fclk/8 (по умолчанию 100 — fclk/64)
//TCCR2B = 7; // 111 — fclk/1024 (по умолчанию 100 — fclk/64)
TCNT2=59;//55;
TIMSK2 |= (1 99) <
ms10++;
cntr = 0;
>
>
float getCurrent() <
int sensorRead = 0;
for (int i=0; i = CurrentLevel) <
stop_shake();
if (CURRSHAKE == LEFTSHAKE) <
CURRSHAKE = RIGHTSHAKE;
> else <
CURRSHAKE = LEFTSHAKE;
>
start_shake();
>
// Проверяем значение датчика тока. Если значение больше порогового (расчетное 5А),
// то деактивируем шейкер, меняем CURRSHAKE на противоположное (LEFTSHAKE, RIGHTSHAKE)
// и активируем по-новой.
>
void start_shake() <
digitalWrite(CURRSHAKE, LOW); // Подаем сигнал на активацию шейкера
shaketime = 0;
flip = true;
delay(500);
>
void stop_shake() <
digitalWrite(CURRSHAKE, HIGH); // Подаем сигнал на деактивацию шейкера
flip = false;
// stopshake = 0;
>
void startdovod() <
digitalWrite(DOVOD, LOW); // Подаем сигнал на активацию доводчика (Прометей)
flipD = true;
>
void stopdovod() <
digitalWrite(DOVOD, HIGH); // Подаем сигнал на деактивацию доводчика (Прометей)
flipD = false;
>
void lcdTimer() <
lcd.setCursor(0, 0);
lcd.print(«shake:»);
lcd.setCursor(6, 0);
lcd.print(SHAKERSTEP/60 — shaketime/60);
lcd.print("/");
lcd.print(SHAKERSTEP/60);
lcd.print(" ");
>
void lcdCurrent() <
lcd.setCursor(0, 1);
lcd.print(«C:»);
lcd.setCursor(2, 1);
lcd.print(getCurrent(), 1);
lcd.print("/");
lcd.print(CurrentLevel, 1);
>
int buttonRead() <
int readState = 0;
int returnCode = 0;
readState = !digitalRead(SHAKERSTEPUPPIN);
returnCode = readState;
readState = !digitalRead(SHAKERSTEPDOWNPIN) * 2;
returnCode+=readState;
readState = !digitalRead(MANUALSHAKE) * 4;
returnCode+=readState;
if (returnCode > 0) < delay(200); >
//lcd.setCursor(0,0);lcd.print(returnCode);
return returnCode;
>
void lcdMenu() <
lcd.setCursor(0, 0);
lcd.print(«1.Timer set»);
lcd.setCursor(0, 1);
lcd.print(«2.Current set»);
lcd.setCursor(0, 0);
>
void lcdCurrentMenu() <
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(«Current lvl:»);
lcd.print(CurrentLevel,1);
>
void lcdTimerMenu() <
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(«Timer set:»);
lcd.print(SHAKERSTEP/60);
>
void buttonProcced(byte buttonState) <
// Ручной shake
if ((buttonState == 4)&&(!showMenu)) <
start_shake();
>
// Ручной dovod
if ((buttonState == 3)&&(!showMenu)) <
startdovod();
>
// вызов меню
if (buttonState == 3) <
menuItem = 1;
lcd.clear();
showMenu = !showMenu;
if (showMenu) <
lcd.blink();
lcdMenu();
>
if (!showMenu) <
byte lowByte = ((SHAKERSTEP >> 0) & 0xFF);
byte highByte = ((SHAKERSTEP >> 8) & 0xFF);
EEPROM.write(eppromaddr, lowByte);
EEPROM.write(eppromaddr+1, highByte);
EEPROM.write(eppromaddr+2, CurrentLevel*10);
lcd.noBlink();
lcdTimer();
lcdCurrent();
>
>
// кнопка вниз в основном меню
if ((showMenu)&&(buttonState == 2)&&(menuItem =8)
lcdCurrentMenu();
>
// кнопка Ок в меню тока
if ((menuItem == 4)&&(buttonState == 4)) <
buttonState = 0;
menuItem = 1;
lcd.clear();
lcdMenu();
>
// кнопка Ок — выбор меню таймера
if ((menuItem == 1)&&(buttonState == 4)) <
menuItem = 3;
buttonState = 0;
lcdTimerMenu();
>
// кнопка вниз в меню таймера
if ((menuItem == 3)&&(buttonState == 2)) <
SHAKERSTEP-=300;
if (SHAKERSTEP 3600)
lcdTimerMenu();
>
// кнопка вверх в меню таймера
if ((menuItem == 3)&&(buttonState == 1)) <
SHAKERSTEP+=300;
// if (SHAKERSTEP > 0)

if (SHAKERSTEP > 3600)

lcdTimerMenu();
>
// книпка Ок в меню таймера
if ((menuItem == 3)&&(buttonState == 4)) <
menuItem = 1;
lcd.clear();
lcdMenu();
>
>
void inits() <
ZeroLevel = 0;
for (int i=0; i 0) < buttonProcced(buttonState); >
if (ms10>tms10) <
tms10 = ms10;
if (tms10%1000==0) < // выполнение каждые 10 сек
shaketime += 10;
if (!showMenu) <
lcdTimer();
lcdCurrent();
>
>

Читайте также:  Как убрать след от воска на одежде

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

Отладка

Но отладить логику оказалось немного сложнее. Система делалась под два котла: «Прометей» и «Buderus». С виду они похожи, но система колосников совершенно разная на практике. «Buderus», допускает частое и продолжительное шевеление колосниками, в отличие от «Прометея», который легко выкидывает содержимое топки. Также в «Прометее» необходимо обязательно вернуть в обратное положение рычаг колосников.

Поэтому в коде для «Прометея» было решено задействовать еще одну возможность автомобильного стеклоочистителя — третий контакт, который возвращает дворники на место.

Система работает второй год. Когда на улице -40 реально выручает, а то приходилось несколько раз за ночь вставать и дергать этот рычаг. Код программы далеко не идеальный, но к сожалению я не программист, как и тот человек который это придумал и начал воплощать первый вариант. Если будет конструктивная критика — то можете помочь его оптимизировать для тех, кому он может пригодиться.

Комментарии запрещены.

Присоединяйся