Регулятор для паяльника
Re: Регулятор для паяльника
Ну с выключением бузера можно побороться, надо в протеусе схему собрать проверить. А вот с лампочкой разбираться не очень хочется, что-то мне подсказывает что много переписывать надо. Ты хочешь регулятор использовать для освещения или нагревателя?
Кидай архив с последней версией где всё относительно нормально.
Кидай архив с последней версией где всё относительно нормально.
- elektro.kot
- Электрический кот
- Сообщения: 1020
- Зарегистрирован: Сб фев 04, 2017 12:16:42
- Откуда: Украина
Re: Регулятор для паяльника
С выключением бузера как бы поборолись, выключается одновременно с миганием и лишнего не бузит.
Для нагревателя, хотя дополнительная функциональность лишней не бывает, как правило.
Лампочка 40 ват мигает только при установленных 25% мощности, однако
.
При 50% уже не мигает, так что править код в этом случае смысла/необходимости нет.
Смысл есть добавить в настройки возможность задать время выключения - TIME_POWER_OFF - несколько фиксированных значений - 30 мин., 60 мин., 120 мин. - было бы вполне достаточно. Это сложно?
В архиве все, включая проект протеус (shema_buzzer.pdsprj), бузер у меня в протеусе работать не хочет, подцепил динамик.В ролике - работа кода, и лампочка при при 50% мощности.
Для нагревателя, хотя дополнительная функциональность лишней не бывает, как правило.
Лампочка 40 ват мигает только при установленных 25% мощности, однако
При 50% уже не мигает, так что править код в этом случае смысла/необходимости нет.
Смысл есть добавить в настройки возможность задать время выключения - TIME_POWER_OFF - несколько фиксированных значений - 30 мин., 60 мин., 120 мин. - было бы вполне достаточно. Это сложно?
В архиве все, включая проект протеус (shema_buzzer.pdsprj), бузер у меня в протеусе работать не хочет, подцепил динамик.В ролике - работа кода
Код: Выделить всё
if ( --Tim100msek==0 ) {
OFF(BUZZER); //выключен
Tim100msek=100;
// ...... ардубино и наебиэкспресс убивают творчество в зародыше.
Re: Регулятор для паяльника
Добавить не сложно, сам об этом думал. Нужно перенести переменную где храниться время отключения в другую область памяти.
- elektro.kot
- Электрический кот
- Сообщения: 1020
- Зарегистрирован: Сб фев 04, 2017 12:16:42
- Откуда: Украина
Re: Регулятор для паяльника
Я имел в виду пункт меню настроек, типа, [Job], в котором можно задавать время выключения фиксированными значениями, например, [30], [60], [120].
... ардубино и наебиэкспресс убивают творчество в зародыше.
Re: Регулятор для паяльника
Быстро результат не жди, у меня много вопросов к коду. Например вот этот кусок:
Происходит проверка для какого контроллера компиляция, но в обоих случаях создаётся один и тот-же макрос.
Код: Выделить всё
#if defined (__AVR_ATmega8__)
# define Tim_Pause(tim) ( (tim/0.004)+1 )
#else
# define Tim_Pause(tim) ( (tim/0.004)+1 )
#endif - elektro.kot
- Электрический кот
- Сообщения: 1020
- Зарегистрирован: Сб фев 04, 2017 12:16:42
- Откуда: Украина
Re: Регулятор для паяльника
В коде везде проверка мк, некоторая избыточность кода может быть просто чтобы не запутаться, что к чему.
... ардубино и наебиэкспресс убивают творчество в зародыше.
Re: Регулятор для паяльника
В том то и дело что проверки стоят, но они не все нужны. Вот ещё нашёл сброс сторожевого таймера (в случае atmega8 сброса не происходит), всё хорошо, только сторожевой таймер включен фьюзами, но не инициализирован. То есть по факту не работает.
Что-бы не запутаться пишут комментарии и дают говорящие имена переменным и функциям.
Итак, вроде что-то получилось и можно тестировать.
Вот что изменилось:
1. Удалён параметр _t_, вместо него теперь tOF. Время автоматического отключения, указывается в десятках минут, но не более 10 часов (600 минут или на экране 60). Если указать 0, то автоотключение будет выключено.
2. Введён параметр tAL, указывается в минутах и задаёт время начала мигания до отключения. Не может быть установлен больше tOF или 10 минут.
3. Звуковое оповещение срабатывает примерно за 20 секунд до отключения.
Сейчас раздумываю о звуковом подтверждении нажатия кнопок и входе в настройки.
Ссылка на бинарик: http://rgho.st/7GVVnslrh
Что-бы не запутаться пишут комментарии и дают говорящие имена переменным и функциям.
Итак, вроде что-то получилось и можно тестировать.
Вот что изменилось:
1. Удалён параметр _t_, вместо него теперь tOF. Время автоматического отключения, указывается в десятках минут, но не более 10 часов (600 минут или на экране 60). Если указать 0, то автоотключение будет выключено.
2. Введён параметр tAL, указывается в минутах и задаёт время начала мигания до отключения. Не может быть установлен больше tOF или 10 минут.
3. Звуковое оповещение срабатывает примерно за 20 секунд до отключения.
Сейчас раздумываю о звуковом подтверждении нажатия кнопок и входе в настройки.
Ссылка на бинарик: http://rgho.st/7GVVnslrh
- elektro.kot
- Электрический кот
- Сообщения: 1020
- Зарегистрирован: Сб фев 04, 2017 12:16:42
- Откуда: Украина
Re: Регулятор для паяльника
Кто-то чистит код от промежуточных версий, кто-то оставляет, не закомментировав, например, ненужные проверки. Я тоже все вкрапления в разных местах OFF(BUZZER); по ходу работы просто закомментировал, потом почистил.
Звуковое подтверждение нажатия кнопок и входа в настройки, как опция, интересно, но не всегда нужно, мои кнопки 12х12 щелкают четко и громко, хотя да, у других могут быть и молчаливые кнопки.
Добавлено after 1 hour 21 minute 41 second:
Вопросы
Ни для tOF, ни для tAL указать 0 не могу, если жать по кругу кнопки [-][+], то для tOF или 1..., или ...60, задать 0 не получается, т.е., отключить автовыключение не могу. Для tAL - 1...10 по кругу.
Т.е., если задать tOF = 1 , tAL = 1 , то должно начать мигать сразу?
Тестирование в железе
1.
tOF = 1, tAL = 1, начало мигать через 1 мин. после включения нагрузки.
Мигало тоже минут 10.
Сигнал бузера как бы за 20 секунд до отключения.
2.
tOF = 1, tAL = 9, мигания нет, что понятно, потому что время работы задано 10 минут, а мигание - через 90 минут работы, если я правильно понимаю логику работы этого варианта прошивки.
Мигание включилось одновременно с бузером за 20 секунд до отключения.
Т.е., мигаение надо задать не 1...10*10мин, а в текущем варианте 1...10, но в минутах, без кратности.
- tAL по факту устанавливается не меньше 1, не больше 9.
- Кратность tOF * 10 мин. как бы логично, а вот tAL в практическом использовании логичнее от 1 минуты.
- 600 минут в коде и 60 на экране - уже путает
.
Исходники не судьба
?
Без исходников прошить под разные мк и индикаторы не прошить
.
Ну и возможность подправить в коде значения tOF, tAL, исходя из конкретных условий или предппочтений, не была бы лишней.
Если не считать мелких шероховатостей, то данный функционал просто супер. То, чего очень-очень-очень не хватало.
Звуковое подтверждение нажатия кнопок и входа в настройки, как опция, интересно, но не всегда нужно, мои кнопки 12х12 щелкают четко и громко, хотя да, у других могут быть и молчаливые кнопки.
Добавлено after 1 hour 21 minute 41 second:
Вопросы
600 минут или на экране 60 - будет путать, если 600 минут, то и на экране 600 минут, место для третьей цифры есть.1. Удалён параметр _t_, вместо него теперь tOF. Время автоматического отключения, указывается в десятках минут, но не более 10 часов
(600 минут или на экране 60). Если указать 0, то автоотключение будет выключено.
Ни для tOF, ни для tAL указать 0 не могу, если жать по кругу кнопки [-][+], то для tOF или 1..., или ...60, задать 0 не получается, т.е., отключить автовыключение не могу. Для tAL - 1...10 по кругу.
Не может быть установлен больше tOF или МЕНЬШЕ 10 минут? Логичнее было бы не больше 10 мин.2. Введён параметр tAL, указывается в минутах и задаёт время начала мигания до отключения. Не может быть установлен больше tOF или 10 минут.
Т.е., если задать tOF = 1 , tAL = 1 , то должно начать мигать сразу?
20 секунд мало, можно не успеть добежать из туалета.3. Звуковое оповещение срабатывает примерно за 20 секунд до отключения.
Тестирование в железе
1.
tOF = 1, tAL = 1, начало мигать через 1 мин. после включения нагрузки.
Мигало тоже минут 10.
Сигнал бузера как бы за 20 секунд до отключения.
2.
tOF = 1, tAL = 9, мигания нет, что понятно, потому что время работы задано 10 минут, а мигание - через 90 минут работы, если я правильно понимаю логику работы этого варианта прошивки.
Мигание включилось одновременно с бузером за 20 секунд до отключения.
Т.е., мигаение надо задать не 1...10*10мин, а в текущем варианте 1...10, но в минутах, без кратности.
- tAL по факту устанавливается не меньше 1, не больше 9.
- Кратность tOF * 10 мин. как бы логично, а вот tAL в практическом использовании логичнее от 1 минуты.
- 600 минут в коде и 60 на экране - уже путает
Исходники не судьба
Без исходников прошить под разные мк и индикаторы не прошить
Ну и возможность подправить в коде значения tOF, tAL, исходя из конкретных условий или предппочтений, не была бы лишней.
Если не считать мелких шероховатостей, то данный функционал просто супер. То, чего очень-очень-очень не хватало.
Последний раз редактировалось elektro.kot Пн июн 18, 2018 22:45:08, всего редактировалось 1 раз.
... ардубино и наебиэкспресс убивают творчество в зародыше.
Re: Регулятор для паяльника
Исходники будут, но когда всё будет готово.
tOF - кратность 10 минут, можно и сделать отображение в сотнях.
tAL - Кратность 1 минута. С некорректным миганием разберусь
Ошибку с невозможностью установки ноля просмотрел на релизе, сейчас исправлю.
tOF - кратность 10 минут, можно и сделать отображение в сотнях.
tAL - Кратность 1 минута. С некорректным миганием разберусь
Ошибку с невозможностью установки ноля просмотрел на релизе, сейчас исправлю.
- elektro.kot
- Электрический кот
- Сообщения: 1020
- Зарегистрирован: Сб фев 04, 2017 12:16:42
- Откуда: Украина
Re: Регулятор для паяльника
Только что проверил.
tOF - 2, tAL-1 - мигает намного дольше 1 минуты, и 20 секунд бузера на практике таки мало, не все молодые и прыткие
.
Добавлено after 2 minutes 32 seconds:
отображение в сотнях было бы лучше - сейчас меняется 1...2...3 ... 60 , было бы 10...20...30 ... 600 - было бы "интуитивно" понятно, что увеличиваем на 10 минут, в отличие от tAL - где увеличиваем на 1 минуту.
Добавлено after 7 minutes 31 second:
снова сделал
tOF - 2, tAL-1 - мигать начало минуты через 3 после включения нагрузки.
Добавлено after 16 minutes 2 seconds:
Повторно:
tOF - 2, tAL-1 - общее время работы ~20 мин., мигать начало через несколько минут после начала работы (точнее не засек), мигало ~15 минут (засек секундомером),
может, получилось, что tAL - это не смещение относительно tOF, а абсолютное значение времени мигания?
tOF - 2, tAL-1 - мигает намного дольше 1 минуты, и 20 секунд бузера на практике таки мало, не все молодые и прыткие
Добавлено after 2 minutes 32 seconds:
отображение в сотнях было бы лучше - сейчас меняется 1...2...3 ... 60 , было бы 10...20...30 ... 600 - было бы "интуитивно" понятно, что увеличиваем на 10 минут, в отличие от tAL - где увеличиваем на 1 минуту.
Добавлено after 7 minutes 31 second:
снова сделал
tOF - 2, tAL-1 - мигать начало минуты через 3 после включения нагрузки.
Добавлено after 16 minutes 2 seconds:
Повторно:
tOF - 2, tAL-1 - общее время работы ~20 мин., мигать начало через несколько минут после начала работы (точнее не засек), мигало ~15 минут (засек секундомером),
может, получилось, что tAL - это не смещение относительно tOF, а абсолютное значение времени мигания?
... ардубино и наебиэкспресс убивают творчество в зародыше.
Re: Регулятор для паяльника
Подправил код:
1. Пищалку увеличил до 30 секунд.
2. Индикация tOF теперь трёхзначная.
3. tOF теперь можно выставить в ноль.
4. Индикацию предупреждения об отключении исправил.
http://rgho.st/6FGwRYqw9
1. Пищалку увеличил до 30 секунд.
2. Индикация tOF теперь трёхзначная.
3. tOF теперь можно выставить в ноль.
4. Индикацию предупреждения об отключении исправил.
http://rgho.st/6FGwRYqw9
- elektro.kot
- Электрический кот
- Сообщения: 1020
- Зарегистрирован: Сб фев 04, 2017 12:16:42
- Откуда: Украина
Re: Регулятор для паяльника
Делаю, отпишусь.
Добавлено after 52 minutes 13 seconds:
Если tOF==000 - нет перехода к tAL - супер.
tAL - при переходе сюда иногда появляется 55 (?), листание [-+] - от 0 до 9.
Если при tOF==10, доступное мак. значение tAL==9 , то при tOF==20, мак. доступное значение tAL==10 , так задумано?
Тестирование 1
tOF==10, tAL==1
- включение мигания - за 1 мин. до отключения
- включение бузера - за 30 сек. до отключения
- в работе 10 мин.
Тестирование 2
tOF==20, tAL==5
- включение мигания - за 5 мин. до отключения
- включение бузера - за 30 сек. до отключения
- в работе 20 мин.
Код работает, как часы, теперь этот регулятор просто куколка
.
Кроме запланированного озвучивания кнопок:
- можно задать при включении нагрузки не установку указанного в настройках фиксированного значения мощности, а установку при включении нагрузки последнего (фактического при отключении питания регулятора) значения мощности?
это важно, поскольку рабочая мощность практически никогда не соппадает з фиксированными значениями, всегда приходится подстраивать;
- в режиме работы добавить помигивающую точку в левом или правом разряде индикатора - для индицирования этого самого рабочего режима?
Добавлено after 52 minutes 13 seconds:
Если tOF==000 - нет перехода к tAL - супер.
tAL - при переходе сюда иногда появляется 55 (?), листание [-+] - от 0 до 9.
Если при tOF==10, доступное мак. значение tAL==9 , то при tOF==20, мак. доступное значение tAL==10 , так задумано?
Тестирование 1
tOF==10, tAL==1
- включение мигания - за 1 мин. до отключения
- включение бузера - за 30 сек. до отключения
- в работе 10 мин.
Тестирование 2
tOF==20, tAL==5
- включение мигания - за 5 мин. до отключения
- включение бузера - за 30 сек. до отключения
- в работе 20 мин.
Код работает, как часы, теперь этот регулятор просто куколка
.Кроме запланированного озвучивания кнопок:
- можно задать при включении нагрузки не установку указанного в настройках фиксированного значения мощности, а установку при включении нагрузки последнего (фактического при отключении питания регулятора) значения мощности?
это важно, поскольку рабочая мощность практически никогда не соппадает з фиксированными значениями, всегда приходится подстраивать;
- в режиме работы добавить помигивающую точку в левом или правом разряде индикатора - для индицирования этого самого рабочего режима?
... ардубино и наебиэкспресс убивают творчество в зародыше.
Re: Регулятор для паяльника
55 на tAL постараюсь отловить. В какие моменты появляется, когда tOF был равен нолю или когда любому значению?
Максимум 9 для tAL при tOF = 10, так и задумано.
Включение с последней использованной мощностью реализовать можно, но пропадает смысл пресетов.
Смысл мигающей точки не понятен, ведь если на экране цифры, то значит уже рабочий режим.
Максимум 9 для tAL при tOF = 10, так и задумано.
Включение с последней использованной мощностью реализовать можно, но пропадает смысл пресетов.
Смысл мигающей точки не понятен, ведь если на экране цифры, то значит уже рабочий режим.
- elektro.kot
- Электрический кот
- Сообщения: 1020
- Зарегистрирован: Сб фев 04, 2017 12:16:42
- Откуда: Украина
Re: Регулятор для паяльника
55 на tAL точно помню при заходе в настройки после прошивки, и было еще раз, кажется, я первый раз после прошивки не зашел в настройки tAL, т.е., 55 появляется при первом заходе в tAL, когда tAL не задан
Также после прошивки при первом заходе в tOF на индикаторе 550
И то, и то не напрягает.
После настройки все отображается, как задумано, - и в tAL, и в tOF - то, что задано.
Немного поработал с регулятор, да, в последней использованной мощности особого смысла нет, "рабочую" мощность задал как фикс. настройку №2, пример: фикс.№2 = [55] для коректировки - фикс.№1 = [50], фикс.№3 - [60] - вполне устраивает.
Мигающая раз в секунду точка в рабочем режиме просто чтобы немного "оживить" рабочее место
, хотя подобное в паяльных станция делают для индикации режима нагрева, в этом регуляторе оно действительно только как элемент дизайна.
Также после прошивки при первом заходе в tOF на индикаторе 550
И то, и то не напрягает.
После настройки все отображается, как задумано, - и в tAL, и в tOF - то, что задано.
Немного поработал с регулятор, да, в последней использованной мощности особого смысла нет, "рабочую" мощность задал как фикс. настройку №2, пример: фикс.№2 = [55] для коректировки - фикс.№1 = [50], фикс.№3 - [60] - вполне устраивает.
Мигающая раз в секунду точка в рабочем режиме просто чтобы немного "оживить" рабочее место
Последний раз редактировалось elektro.kot Вт июн 19, 2018 07:43:08, всего редактировалось 1 раз.
... ардубино и наебиэкспресс убивают творчество в зародыше.
Re: Регулятор для паяльника
Эти значения появились из-за мусора в памяти, и там похоже не 55 а 255 (максимальное значение для переменных типа uint8_t). Нужно сделать проверку если значения в памяти больше максимальных, то выводить ошибку памяти EEP. Много украшений в 8к не запихнёшь. Я вообще удивлён что автор выложил прошу для mega48 размером больше 4к.
- elektro.kot
- Электрический кот
- Сообщения: 1020
- Зарегистрирован: Сб фев 04, 2017 12:16:42
- Откуда: Украина
Re: Регулятор для паяльника
Да, выводить ошибку памяти EEP было бы полезно, у меня оно два раза появилось при первом заходе в настройки после ЕЕР, но мало ли где и как оно может проявиться еще.
Да, с украшением это я чот нафантазировал, полезнее было бы выводить в рабочем режим инфу о текущей фиксированной настройке - если фикс. настройка №1 - точка в левом разряде, фикс. настройка №2 - точка в среднем разряде, фикс. настройка №3 - точка в правом разряде. Для забывчивых, как я.
Мега48 - функционал - работает так же, как мега8, или есть отличия?
Да, с украшением это я чот нафантазировал, полезнее было бы выводить в рабочем режим инфу о текущей фиксированной настройке - если фикс. настройка №1 - точка в левом разряде, фикс. настройка №2 - точка в среднем разряде, фикс. настройка №3 - точка в правом разряде. Для забывчивых, как я.
Мега48 - функционал - работает так же, как мега8, или есть отличия?
... ардубино и наебиэкспресс убивают творчество в зародыше.
Re: Регулятор для паяльника
У mega48 памяти 4k, у mega8 памяти 8k, прошивка почти 8k размером. Разобрался, по факту прошивка около 2.5к, ещё много можно напихать.
Ну вроде всё устранил. Простые проверки, а размер ощутимо вырос. Исходники и бинарик: https://yadi.sk/d/2yt8Qiwd3Y6YYQ
Перезалил файл, ссылка прежняя. Мелкие исправления сделал.
Ну вроде всё устранил. Простые проверки, а размер ощутимо вырос. Исходники и бинарик: https://yadi.sk/d/2yt8Qiwd3Y6YYQ
Перезалил файл, ссылка прежняя. Мелкие исправления сделал.
- elektro.kot
- Электрический кот
- Сообщения: 1020
- Зарегистрирован: Сб фев 04, 2017 12:16:42
- Откуда: Украина
Re: Регулятор для паяльника
Простые проверки - добавили проверку памяти?
Добавлено after 1 minute 34 seconds:
ещё много можно напихать - и что планируете
?
Добавлено after 1 minute 34 seconds:
ещё много можно напихать - и что планируете
... ардубино и наебиэкспресс убивают творчество в зародыше.
Re: Регулятор для паяльника
Добавил проверку значений в памяти. Добавить можно всё что угодно, вопрос в том что нужно для этого регулятора?
- elektro.kot
- Электрический кот
- Сообщения: 1020
- Зарегистрирован: Сб фев 04, 2017 12:16:42
- Откуда: Украина
Re: Регулятор для паяльника
Последния версия вашей прошивки работает великолепно.
Что нужно, покажет практика.
Из не озвученных ранее замечаний, при настройке после прошивки при переходе в фиксированные настройки отображается 255 для всех фикс. настроек и режимов числа/проценты, т.е., начальные значения, как в вашем коде для tOF=10, tAL=1, не задаются. Так было изначально в оригинальной прошивке. Не пришла мысль проверить, включается с этими значениями - 255 - нагрузка, или не включается. Если включается и регулятор жарит на все 255, т.е., на все 100%, это не есть хорошо для нагрузки.
Было бы логично для фиксированных настроек изначально тоже задавать какие-нибудь небольшие значения по умолчанию, напр., фикс. №1=5%, фикс. №2=10%, фикс. №3=15%, и в числах фикс. №1=10, фикс. №2=20, фикс. №3=30.
Добавлено after 9 minutes 57 seconds:
Проверил.
Если после прошивки пропустить настройку фиксированных значений - оставить 255, нагрузка не включается и на индикатор выводится 255, требуя ввести значение фиксированной настройки. Т.е., включить нагрузку без установки фиксированных значений невозможно.
Что нужно, покажет практика.
Из не озвученных ранее замечаний, при настройке после прошивки при переходе в фиксированные настройки отображается 255 для всех фикс. настроек и режимов числа/проценты, т.е., начальные значения, как в вашем коде для tOF=10, tAL=1, не задаются. Так было изначально в оригинальной прошивке. Не пришла мысль проверить, включается с этими значениями - 255 - нагрузка, или не включается. Если включается и регулятор жарит на все 255, т.е., на все 100%, это не есть хорошо для нагрузки.
Было бы логично для фиксированных настроек изначально тоже задавать какие-нибудь небольшие значения по умолчанию, напр., фикс. №1=5%, фикс. №2=10%, фикс. №3=15%, и в числах фикс. №1=10, фикс. №2=20, фикс. №3=30.
Добавлено after 9 minutes 57 seconds:
Проверил.
Если после прошивки пропустить настройку фиксированных значений - оставить 255, нагрузка не включается и на индикатор выводится 255, требуя ввести значение фиксированной настройки. Т.е., включить нагрузку без установки фиксированных значений невозможно.
... ардубино и наебиэкспресс убивают творчество в зародыше.