Программное обеспечение для электроплиты
- Symbiosis
- Вымогатель припоя
- Сообщения: 600
- Зарегистрирован: Вс апр 27, 2008 13:44:52
- Контактная информация:
Программное обеспечение для электроплиты
У меня есть варочная панель Hansa стеклокерамическая. Ей уже много лет , но менять не хочу так как выглядит совершенно как новая. В ней сенсорные кнопки и два семисегментных индикатора. Нажимаешь кнопку включения, загораются дефисы на обоих семисегментных индикаторах. Они горят 10 секунд, за это время надо включить одну из конфорок кнопками +/- для соответсвующей конфорки. Если в течении 10 секунд этого не сделать, то печь выключится.
Печь импульсная. Там одна спираль и при выборе мощности (1-9 диапазон) включается на разные интервалы конфорка. Вопрос первый - где это время узнать, ну т.е. чтобы не эксперементировать, а конкретные значения времени уже знать и использовать ?
Вопрос второй: может быть уже встречался кому-нибудь готовый проект ?
А причины вопроса - электроника варочной панели накрылась... Во всем винаваты тараканы, которые сожрали или как то провзаимодействовали с платой, плата вся в коррозии. Изучать и повторять схемотехнику нет желания. К тому же хочется добавить пару своих фишек - звуковой сигнал каждые 10 минут работы печи, чтобы не забывать про нее (часто вода выкипает). Организовать автоотключение после часа (возможно более) работы, чтобы случайно включенная печь не спалила дом (мало ли чего). Изменить цвет индикаторов =)
Может быть еще чего порекомендуете ?
Печь импульсная. Там одна спираль и при выборе мощности (1-9 диапазон) включается на разные интервалы конфорка. Вопрос первый - где это время узнать, ну т.е. чтобы не эксперементировать, а конкретные значения времени уже знать и использовать ?
Вопрос второй: может быть уже встречался кому-нибудь готовый проект ?
А причины вопроса - электроника варочной панели накрылась... Во всем винаваты тараканы, которые сожрали или как то провзаимодействовали с платой, плата вся в коррозии. Изучать и повторять схемотехнику нет желания. К тому же хочется добавить пару своих фишек - звуковой сигнал каждые 10 минут работы печи, чтобы не забывать про нее (часто вода выкипает). Организовать автоотключение после часа (возможно более) работы, чтобы случайно включенная печь не спалила дом (мало ли чего). Изменить цвет индикаторов =)
Может быть еще чего порекомендуете ?
- Реклама
- Aheir
- Модератор
- Сообщения: 4517
- Зарегистрирован: Пн апр 03, 2006 11:43:25
- Откуда: Санкт - Петербург
- Контактная информация:
Re: Программное обеспечение для электроплиты
Собственно, здесь, как всегда, 2 варианта:
1. Начинать ДЕЛАТЬ самому, по ходу спрашивая непонятные моменты на форуме
2. Поручить это специалисту...
1. Начинать ДЕЛАТЬ самому, по ходу спрашивая непонятные моменты на форуме
2. Поручить это специалисту...
Оптимизм х (Опыт + Знания) = const
- Symbiosis
- Вымогатель припоя
- Сообщения: 600
- Зарегистрирован: Вс апр 27, 2008 13:44:52
- Контактная информация:
Re: Программное обеспечение для электроплиты
Вот собственно фирменная плата управления. Сенсоры - ИК фототранзистор и ИК-светодиод.
Размеры своей платы буду делать точ в точ по этой.
Возник вопрос, насколько будут глючные сенсоры, если я буду использовать непрерывно светящиеся ИК диоды ? Расстояние работы должно быть не более 1 см + просветить стекло прозрачное для ИК. Насколько будет чувствителен сенсор к боковой засветке и к самой печке во время работы? Наверное имеет смысл сделать модуляцию, например 38кГц, как в пульте. Есть ли для этого специальные микросхемы - для построения сенсоров ? Не хочу это вводить в задачи микроконтроллера, боюсь запутаться =)
Пока вижу такое решение - использовать непрерывный режим, компаратором задать очень узкое окно, чтобы сенсор работал только при непосредственно на стекле лежащем пальце. Отфильтровать случайные срабатывания "антидребезгом" программно.
Размеры своей платы буду делать точ в точ по этой.
Возник вопрос, насколько будут глючные сенсоры, если я буду использовать непрерывно светящиеся ИК диоды ? Расстояние работы должно быть не более 1 см + просветить стекло прозрачное для ИК. Насколько будет чувствителен сенсор к боковой засветке и к самой печке во время работы? Наверное имеет смысл сделать модуляцию, например 38кГц, как в пульте. Есть ли для этого специальные микросхемы - для построения сенсоров ? Не хочу это вводить в задачи микроконтроллера, боюсь запутаться =)
Пока вижу такое решение - использовать непрерывный режим, компаратором задать очень узкое окно, чтобы сенсор работал только при непосредственно на стекле лежащем пальце. Отфильтровать случайные срабатывания "антидребезгом" программно.
- Вложения
-
- _DSC0164.JPG
- Фирменная плата управления
- (130.43 КБ) 457 скачиваний
- Symbiosis
- Вымогатель припоя
- Сообщения: 600
- Зарегистрирован: Вс апр 27, 2008 13:44:52
- Контактная информация:
Re: Программное обеспечение для электроплиты
Составил алгоритм работы печи. Прошу более опытных в разработке устройств товарищей прокоментировать. Думаю недочетов много.
- Вложения
-
- Алгоритм варочной панели.jpg
- Блок схема
- (171.06 КБ) 446 скачиваний
- Symbiosis
- Вымогатель припоя
- Сообщения: 600
- Зарегистрирован: Вс апр 27, 2008 13:44:52
- Контактная информация:
Re: Программное обеспечение для электроплиты
Контроллер выбрал MEGA16? потому что много очень их у меня. Думал сперва динамическую индикацию и опрос кнопок в прерывание засунуть. Но в итоге решил статическую индикацию использовать. Опрос кнопок прямо в теле цикла делать. Т.е. вообще от прерываний отказаться.
Вот что получилось до настоящего момента. PORTC и PORTD - это индикаторы. Где я уже натворил ошибок ?
Код: Выделить всё
while (1)
{
m1: if (PORTA==0x00)
{
delay_ms(drebezg);
};
if (PORTA==0x00)
{
PORTC = number[10];
PORTD = number[10];
BUZZER=1;
delay_ms(450);
BUZZER=0;
delay_ms(550);
PORTC = 0x00;
PORTD = 0x00;
goto m2;
};
else
{
PORTC = number[11];
PORTD = number[11];
for (b=1; b<=6; b++)
{
BUZZER=1;
delay_ms(200)
BUZZER=0;
delay_ms(200)
};
goto m1;
};
m2: if (POWER == 1)
{
PORTC = number[0];
PORTD = number[0];
};
else
{
goto m1;
};
if (1UP == 1)
{
delay_ms(drebezg);
if (1UP == 1)
{
heat1++;
};
};
if (1DOWN == 1)
{
delay_ms(drebezg);
if (1DOWN == 1)
{
heat1--;
};
};
if (2UP == 1)
{
delay_ms(drebezg);
if (2UP == 1)
{
heat2++;
};
};
if (2DOWN == 1)
{
delay_ms(drebezg);
if (2DOWN == 1)
{
heat2--;
};
};
- Реклама
- pyzhman
- Друг Кота
- Сообщения: 7016
- Зарегистрирован: Вс июл 12, 2009 19:15:29
- Откуда: Ижевск
- Контактная информация:
Re: Программное обеспечение для электроплиты
Убрать все goto, очень неудобно с ними. В алгоритме написать где "Да", где "Нет" в блоках проверки. Схему выложить.
Docendo discimus
- Symbiosis
- Вымогатель припоя
- Сообщения: 600
- Зарегистрирован: Вс апр 27, 2008 13:44:52
- Контактная информация:
Re: Программное обеспечение для электроплиты
Код: Выделить всё
if (1UP == 1) // Если кнопка + первой конфорки нажата, увеличиваем переменную на 1
{
delay_ms(drebezg);
if (1UP == 1)
{
heat1++;
BUZZER=1; // Пищим буззером
delay_ms(200);
BUZZER=0;
if (heat1 == 0 || heat1 == 9) // Если достигли пределов,
{
heat1 = -heat1; // то идем в обратную сторону
};
};
};- pyzhman
- Друг Кота
- Сообщения: 7016
- Зарегистрирован: Вс июл 12, 2009 19:15:29
- Откуда: Ижевск
- Контактная информация:
Re: Программное обеспечение для электроплиты
Код: Выделить всё
heat1 = -heat1; // то идем в обратную сторонуDocendo discimus
- Symbiosis
- Вымогатель припоя
- Сообщения: 600
- Зарегистрирован: Вс апр 27, 2008 13:44:52
- Контактная информация:
Re: Программное обеспечение для электроплиты
Ну в arduino так делал =) былНе уверен что в CVAVR так можно )
- Symbiosis
- Вымогатель припоя
- Сообщения: 600
- Зарегистрирован: Вс апр 27, 2008 13:44:52
- Контактная информация:
Re: Программное обеспечение для электроплиты
Ну у меня значение от 0 до 9 должно быть. 9 градаций мощности. Надо или по кругу пускать или просто невозможно сделать дальше листать... Какие еще варианты могут быть ?
- pyzhman
- Друг Кота
- Сообщения: 7016
- Зарегистрирован: Вс июл 12, 2009 19:15:29
- Откуда: Ижевск
- Контактная информация:
Re: Программное обеспечение для электроплиты
Так зачем его в минуса вгонять, если должно быть по кругу? + вложение.
- Вложения
-
- _DSC0164_1.JPG
- (82.77 КБ) 377 скачиваний
Docendo discimus
- Symbiosis
- Вымогатель припоя
- Сообщения: 600
- Зарегистрирован: Вс апр 27, 2008 13:44:52
- Контактная информация:
Re: Программное обеспечение для электроплиты
Как прогнать по кругу ? )
Разъем правый используется - через него питание поступает +12В. Через него подключаются два реле , которые коммутируют конфорки. Верхний разъем используется для программирования.
Разъем правый используется - через него питание поступает +12В. Через него подключаются два реле , которые коммутируют конфорки. Верхний разъем используется для программирования.
- Вложения
-
- _DSC0164 копия.jpg
- (146.91 КБ) 355 скачиваний
- pyzhman
- Друг Кота
- Сообщения: 7016
- Зарегистрирован: Вс июл 12, 2009 19:15:29
- Откуда: Ижевск
- Контактная информация:
Re: Программное обеспечение для электроплиты
Насколько понял конфорки две. Что такое Lock? Как два реле коммутируют две конфорки с изменением нагрева? На определенное время включаются?
По всей видимости не по кругу надо гонять. При нажатии на "+" гнать до 9, а при нажатии на "-" до 0, то биш до выключения. Не так ли?
По всей видимости не по кругу надо гонять. При нажатии на "+" гнать до 9, а при нажатии на "-" до 0, то биш до выключения. Не так ли?
Docendo discimus
- Symbiosis
- Вымогатель припоя
- Сообщения: 600
- Зарегистрирован: Вс апр 27, 2008 13:44:52
- Контактная информация:
Re: Программное обеспечение для электроплиты
lock - блокировка кнопок. выключенную плиту можно заблокировать долгим нажатием кнопки. снятие с блокировки - повторное длительное нажатие. да, реле включают обогреватель на определенное время. максимум - 90% заполнение, период 150 сек.
- pyzhman
- Друг Кота
- Сообщения: 7016
- Зарегистрирован: Вс июл 12, 2009 19:15:29
- Откуда: Ижевск
- Контактная информация:
Re: Программное обеспечение для электроплиты
Реле так работает? Естественно на каждую конфорку свое.
- Вложения
-
- Реле.JPG
- (20.75 КБ) 382 скачивания
Docendo discimus
- Symbiosis
- Вымогатель припоя
- Сообщения: 600
- Зарегистрирован: Вс апр 27, 2008 13:44:52
- Контактная информация:
Re: Программное обеспечение для электроплиты
ага, совершенно верно )
- pyzhman
- Друг Кота
- Сообщения: 7016
- Зарегистрирован: Вс июл 12, 2009 19:15:29
- Откуда: Ижевск
- Контактная информация:
Re: Программное обеспечение для электроплиты
Нарисуйте схему. И для начала в приложении.
- Вложения
-
- Begin.jpg
- (46.48 КБ) 346 скачиваний
Docendo discimus
- Symbiosis
- Вымогатель припоя
- Сообщения: 600
- Зарегистрирован: Вс апр 27, 2008 13:44:52
- Контактная информация:
Re: Программное обеспечение для электроплиты
Так уже лучше ?
Код: Выделить всё
if (1UP == 1) // Если кнопка + первой конфорки нажата, увеличиваем переменную на 1
{
delay_ms(drebezg);
if (1UP == 1 && heat1<9) // При условии что уже не максимум
{
heat1++;
BUZZER=1; // Пищим буззером
delay_ms(200);
BUZZER=0;
};
};
if (1DOWN == 1) // Если кнопка - первой конфорки нажата, уменьшаем переменную на 1
{
delay_ms(drebezg);
if (1DOWN == 1 && heat1>0)// При условии что уже не минимум
{
heat1--;
BUZZER=1;
delay_ms(200);
BUZZER=0;
};
};Re: Программное обеспечение для электроплиты
Извиняйте понравился стиль файла Алгоритм варочной панели.jpg моно поподробней в какой это программе сделано?Symbiosis писал(а):Составил алгоритм работы печи...................


