- Вложения
-
- как-то так.doc
- (26 КБ) 342 скачивания
Терморегулятор на микроконтроллере PIC16F84 датчикe DS18B20
- Реклама
Так понятнее. Кое-что хочу уточнить.
1. Когда выключается блокировка?
2. Что должно произойти с вентилятором и блокировкой, если произошла ошибка датчика?
N.B.
Аппаратный ШИМ есть на борту у PIC16F628A. Его несложно реализовать. Тогда вентилятор можно будет эксплуатировать в более широком диапазоне мощностей (от 0 до 100%, или ограничить) в автоматическом режиме регулирования оборотов.
1. Когда выключается блокировка?
2. Что должно произойти с вентилятором и блокировкой, если произошла ошибка датчика?
N.B.
Аппаратный ШИМ есть на борту у PIC16F628A. Его несложно реализовать. Тогда вентилятор можно будет эксплуатировать в более широком диапазоне мощностей (от 0 до 100%, или ограничить) в автоматическом режиме регулирования оборотов.
Пока вот такой вариант. Описание работы во вложении. Что не так - пишите.
- Вложения
-
- Termometr_v8_Cool_CC.zip
- (16.96 КБ) 380 скачиваний
Посмотрю, попробую. У меня проблема с выходом в инет. Модем, Мегафон. Так вот последний стал делать какие-то эксперименты, во время которых в инет я могу выйти только утром до 10-11часов (8-9 по Москве), поэтому долго не отвечаю...
Насчёт блокировки: она уже работает продолжительное время, замечаний не имеет, у меня стоит уставка 30 градусов, выше-единица на выходе МК, ниже-нолик.
Перед тем как завести двигатель - смотрю на индикатор, замечаний пока не было, ну а будет сбой (не дай бог) на ШИМ - термоконтакт включения вентилятора остался в работе, не демонтирован, так что ничего фатального.
P.S. Выход на ШИМ надо бы инвертировать: включать единичкой, схемка немного не сошлась.
А насчёт регулирования ШИМ самим МК - неохота для такой ерунды алгоритм разрабатывать. Всё-так все мы в душе немного лентяи.
Посмотрел, попробовал. Не совсем понял, для чего блокировка устанавливается с десятыми градуса? Целых вполне достаточно. И совершенно не понял назначение кнопки ON_PWM. А выход на ШИМ надо бы инвертировать. Остальное вроде всё нормально.
Насчёт блокировки: она уже работает продолжительное время, замечаний не имеет, у меня стоит уставка 30 градусов, выше-единица на выходе МК, ниже-нолик.
Перед тем как завести двигатель - смотрю на индикатор, замечаний пока не было, ну а будет сбой (не дай бог) на ШИМ - термоконтакт включения вентилятора остался в работе, не демонтирован, так что ничего фатального.
P.S. Выход на ШИМ надо бы инвертировать: включать единичкой, схемка немного не сошлась.
А насчёт регулирования ШИМ самим МК - неохота для такой ерунды алгоритм разрабатывать. Всё-так все мы в душе немного лентяи.
Посмотрел, попробовал. Не совсем понял, для чего блокировка устанавливается с десятыми градуса? Целых вполне достаточно. И совершенно не понял назначение кнопки ON_PWM. А выход на ШИМ надо бы инвертировать. Остальное вроде всё нормально.
Инвертировал.nvz писал(а): P.S. Выход на ШИМ надо бы инвертировать: включать единичкой, схемка немного не сошлась.
Ну вот, опять: "Достигнут максимальный общий размер Ваших вложений."
Пока выложил на рапиду, потом перезалью на форум.
- Реклама
В протеусе вроде всё ОК, но, для чего всё-таки кнопка ON_PWM? для тестирования? в нормальном режиме 4 нога заземлена?
А текст можно и в блокноте.
А текст можно и в блокноте.
Неправильно понял ТЗ, чего-то вбил себе в голову, что должна быть кнопка для отключения.nvz писал(а):... для чего всё-таки кнопка ON_PWM? для тестирования? в нормальном режиме 4 нога заземлена?
Кнопку убрал. 4-ый вывод можно никуда не подключать.
На сайте все те же проблемы, поэтому прошивка снова здесь.
А предыдущая уже недействительна?
Скинь без объяснений
Ты не против, если я спрошу несколько вопросов у Базилио, накопилось......
Скинь без объяснений
Ты не против, если я спрошу несколько вопросов у Базилио, накопилось......
Не понял. Предыдущая прошивка? Или ссылка?nvz писал(а):А предыдущая уже недействительна?
Скинь без объяснений
Отличие между прошивками: в первой с кнопкой отключения выхода на ШИМ (Termometr_v8.1_Cool_CC.zip), в более новой кнопку убрал (Termometr_v8.2_Cool_CC.zip). Больше отличий между ними нет.
- Вложения
-
- Termometr_v8.1_Cool_CC.zip
- (17.02 КБ) 253 скачивания
-
- Termometr_v8.2_Cool_CC.zip
- (23.1 КБ) 289 скачиваний
(только для поддержки разговора) В предыдущеё прошивке 4нога заземлена, А в новой не надо?
Риторический вопрос.
Риторический вопрос.
4-ая ножка больше не задействована. Ее состояние программой игнорируется.nvz писал(а):В предыдущеё прошивке 4нога заземлена, А в новой не надо?
Риторический вопрос.
Можете использовать ее в качестве основного назначения - это вход сброса MCLR. При прошивке в конфигурации выставить галочку MCLR включен, а в схеме на него подать +5V, можно через RC цепочку. Это будет задерживать запуск программы на время, пока не установится напряжение питания. Иногда бывает полезным. Да еще меньше геморроя при прошивке МК.nvz писал(а):только для поддержки разговора
помогите добавить, плз,содержимое вложения в прошивку для pic16f628 - для увеличения диапазона температур заменил DS18B20 на AD7792 +TXA, или, если можно, исходники прошивки глянуть бы одним глазком 
- Вложения
-
- AD7792&ТХА.txt
- (3.71 КБ) 254 скачивания
Полнота познания всегда означает некоторое понимание глубины нашего неведения
Набросал схему в diptrace. Печатку пока не делал. Кому нужно, есть схема оригинальная с печаткой под односторонний монтаж - не шедевр, но задумывалась как базовая часть под возможные доработки
- Вложения
-
- TMRpowerPIC18F84_v1.zip
- вариант платы близкий к оригиналу, только односторонний монтаж с перемычками
- (13.68 КБ) 279 скачиваний
-
- TMRpowerPIC16F628_v3.zip
- мой вариант схемы
- (15.8 КБ) 289 скачиваний
Полнота познания всегда означает некоторое понимание глубины нашего неведения
- Сообщения: 16
- Зарегистрирован: Ср апр 13, 2011 23:02:48
Прошивка Termometr_v8.1_Cool_CC.zip и схема под индикатор с общим катодом? Если не очень сложно:
1 Можно в схеме добавить для индикатора четыре транзистора чтобы не переживать за ток, потребляемый индикатором?
2 Добавить кнопку MINUS (если не сложно)
3 оставить кнопку ON_PWM (если не сложно)
далее из Termometr_v8.1_Cool_CC поменять диапазоны:
4 Диапазон установки от 0 до 50 оС, затем снова 0…
заменить на: Диапазон установки от 0 до 125 оС, затем снова 0…
5 Меняется кнопкой PLUS от 80 до 95 градусов через один градус по кругу.
Заменить на: Меняется кнопкой PLUS от 0 до 125 градусов через один градус по кругу.
6 Меняется кнопкой PLUS от 1 до 10 градусов через один градус по кругу.
Заменить на: Меняется кнопкой PLUS от 1 до 25 градусов через один градус по кругу.
7 При отжатой кнопке ON_PWM выход PWM блокируется в состоянии логическая единица.
BLOCK на кнопку ON_PWM не должен реагировать и работает в соответствии с установленной температурой (если больше установленной вывод block ВЫСОКИЙ, если меньше вывод НИЗКИЙ. )
8 При ошибке датчика на индикаторе прочерки, на выходах BLOCK и PWM низкий уровень.
Заменить на: При ошибке датчика на индикаторе прочерки, на выходах BLOCK и PWM ВЫСОКИЙ уровень.
Спасибо за интересную тему и за помощь. В файле более детальное описание алгоритма:
1 Можно в схеме добавить для индикатора четыре транзистора чтобы не переживать за ток, потребляемый индикатором?
2 Добавить кнопку MINUS (если не сложно)
3 оставить кнопку ON_PWM (если не сложно)
далее из Termometr_v8.1_Cool_CC поменять диапазоны:
4 Диапазон установки от 0 до 50 оС, затем снова 0…
заменить на: Диапазон установки от 0 до 125 оС, затем снова 0…
5 Меняется кнопкой PLUS от 80 до 95 градусов через один градус по кругу.
Заменить на: Меняется кнопкой PLUS от 0 до 125 градусов через один градус по кругу.
6 Меняется кнопкой PLUS от 1 до 10 градусов через один градус по кругу.
Заменить на: Меняется кнопкой PLUS от 1 до 25 градусов через один градус по кругу.
7 При отжатой кнопке ON_PWM выход PWM блокируется в состоянии логическая единица.
BLOCK на кнопку ON_PWM не должен реагировать и работает в соответствии с установленной температурой (если больше установленной вывод block ВЫСОКИЙ, если меньше вывод НИЗКИЙ. )
8 При ошибке датчика на индикаторе прочерки, на выходах BLOCK и PWM низкий уровень.
Заменить на: При ошибке датчика на индикаторе прочерки, на выходах BLOCK и PWM ВЫСОКИЙ уровень.
Спасибо за интересную тему и за помощь. В файле более детальное описание алгоритма:
- Вложения
-
- Описание работы-edit1.doc
- (31 КБ) 269 скачиваний
В названии версии прошивки CC - индикаторы с общим катодом, CA - с общим анодом.serg-serg писал(а):Прошивка Termometr_v8.1_Cool_CC.zip и схема под индикатор с общим катодом?
Не сложно. Хочу уточнить, кнопка MINUS работает аналогично кнопке PLUS? То есть при достижении 0 переходит на верхний предел устанавливаемого параметра? Или, раз кнопки теперь будет две, то сделать для них "упор" в крайних положениях?serg-serg писал(а):2 Добавить кнопку MINUS (если не сложно)
Остальное вроде все понятно и не сложно для реализации.
- Сообщения: 16
- Зарегистрирован: Ср апр 13, 2011 23:02:48
Да. Пусть остается у MINUS переход на ....3-2-1-0-125-124-123...Soir писал(а):serg-serg писал(а):То есть при достижении 0 переходит на верхний предел устанавливаемого параметра?
Для BLOCK можно ли гипертезис увеличить до 2градусов? В идеале если это не сложно сделать изменяемый гипертезис как и у PWM.
Индикатор у меня с общим катодом. Хочу добавить три N-P-N транзистора на катоды. Между 1(pic)-1(индикатор), 18-2, 17-3. Для этого нужно в програмно инвертировать 1,18,17 PIC?
Подключить катоды через N-P-N хочу как на схеме. Будет работать? Нужно только будет только базу транзистров через резистор подключить соответсвенно к выводам pic 1,18,17 ?
- Вложения
-
- Termometr.png
- (29.09 КБ) 498 скачиваний
Можно.serg-serg писал(а):...Для BLOCK можно ли гипертезис увеличить до 2градусов? В идеале если это не сложно сделать изменяемый гипертезис как и у PWM.
Да, это делается программно.serg-serg писал(а):Индикатор у меня с общим катодом. Хочу добавить три N-P-N транзистора на катоды. Между 1(pic)-1(индикатор), 18-2, 17-3. Для этого нужно в програмно инвертировать 1,18,17 PIC?
Будет работать. Резисторы в схеме уже прорисованы: R12 - R15. У Вас будет три (три разряда). Сегмент H (точка) подключается к выводу 13 МК. И еще отличие: в новых вариантах моих схем по-другому организовано подключение кнопок, как в варианте Termometr_v8.1_Cool_CC.serg-serg писал(а):Подключить катоды через N-P-N хочу как на схеме. Будет работать? Нужно только будет только базу транзистров через резистр подключить соответсвенно к выводам pic 1,18,17 ?
- Сообщения: 16
- Зарегистрирован: Ср апр 13, 2011 23:02:48
Учтем. Тогда займусь сейчас сборкой на макетке.Soir писал(а):Сегмент H (точка) подключается к выводу 13 МК. И еще отличие: в новых вариантах моих схем по-другому организовано подключение кнопок, как в варианте Termometr_v8.1_Cool_CC.
Резисторы в цепь точки и ABCDEFG 300ом или 1ком лучше? Применение транзисторов в катод разгрузит PIC по току? Или PIC не важно через транзистор или резистор в плане нагрузки?
Кнопки подключаю на землю через 1ком(уточните насчет MINUS):
6pic -MODE
7pic - PLUS
8(?)pic -minus
Зависит от тока сегментов индикатора. Обычно ток до 20 мА. Таким образом сопротивление в пределах 200-300 Ом. От него также зависит яркость свечения. На макете поэкспериментируете. 1 кОм выбирался исходя из того, что общие катоды подключались без транзисторных ключей, напрямую к МК.serg-serg писал(а):Резисторы в цепь точки и ABCDEFG 300ом или 1ком лучше?
Да, безусловно разгрузит. Ток через каждый из выводов МК не должен превышать 25 мА, но это крайнее значение, лучше меньше.serg-serg писал(а):Применение транзисторов в катод разгрузит PIC по току? Или PIC не важно через транзистор или резистор в плане нагрузки?
Во вложении проект в Proteus (только для отладки и демонстрации). На его основании можете делать схему. Там и прошивка, но она пока прежняя. Но все равно, если знакомы с Proteus - попробуйте. Я пока сделал только установку температуры от 0 до 125 и возникли вопросы.serg-serg писал(а):Кнопки подключаю на землю через 1ком(уточните насчет MINUS):
1. Индикатор 3-х разрядный. Установленная температура выше 99,9 град будет без десятых.
2. Для индикации устанавливаемого параметра используются символы. Так при установке PWM символ P. Если PWM больше 99, то нужно думать другой вариант. Можно как-то точками, можно внешним светодиодом, можно последовательностью нажатий (например, сначала какой-то символ, опять же например, Out, а следующее нажатие на MODE уже температура срабатывания). Аналогично по остальным параметрам.
P.S.
В проекте вместо транзисторов инверторы. Так удобнее в Proteus при симуляции.
- Вложения
-
- Termometr_v8.3_Cool_CC.zip
- (20.59 КБ) 276 скачиваний
- Сообщения: 16
- Зарегистрирован: Ср апр 13, 2011 23:02:48
По схеме пока все понятно. Спасибо.
Индикатор у меня 4 разряда.
Может это упростит задачу?
Выводить например на 4:
085.4 и при >100 писать 105.5
или лучше первый ноль не зажигать если T<100 :
85.4 и при >100 писать 105.5
Индикатор у меня 4 разряда.
Может это упростит задачу?
Выводить например на 4:
085.4 и при >100 писать 105.5
или лучше первый ноль не зажигать если T<100 :
85.4 и при >100 писать 105.5


