Регистрация | Вход

[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 2 из 2
  • «
  • 1
  • 2
Модератор форума: demanik, ivan_fd  
Форум Picbasic.ru » Программирование МК » Proton PicBasic » Пока часы и термо
Пока часы и термо
mikhail09p Дата: Пн, 06.09.2010, 23:10  |                                                                                                                Сообщение # 16
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 481
Репутация: 14   ±
Замечания:   ±
На сайте с 04.05.2010

Статус: Offline

Quote (demanik)
GIE = 0 PRINT... GIE = 1

Попробывал - пургу гонит после чтения температуры.

А можно на нерус. дисплей вывести рус. символы? Рисуется же знак градуса?

Сообщение отредактировал mikhail09p - Пн, 06.09.2010, 23:19
ivan_fd Дата: Пн, 06.09.2010, 23:20  |                                                                                                                Сообщение # 17
Группа: Модераторы
Ранг:  Специалист
Сообщений: 894
Репутация: 124   ±
Замечания:   ±
На сайте с 12.01.2009

Статус: Offline

Код с последними изменениями в студию.

Quote (mikhail09p)
А можно на нерус. дисплей вывести рус. символы?


Нет, разве только нарисовать свои, но только 8 шт.
mikhail09p Дата: Пн, 06.09.2010, 23:33  |                                                                                                                Сообщение # 18
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 481
Репутация: 14   ±
Замечания:   ±
На сайте с 04.05.2010

Статус: Offline

Так я отменил
GIE = 0
PRINT...
GIE = 1
А код вот он. Счёт дней, месяцев и года я убрал. Мне нужно только изменение температуры в течении суток.
Завтра буду писать подпрограмму установок времени, температур.

Как написать свои символы?

Прикрепления: 7478876.rar (52.7 Kb)

Сообщение отредактировал mikhail09p - Пн, 06.09.2010, 23:34
ivan_fd Дата: Пн, 06.09.2010, 23:43  |                                                                                                                Сообщение # 19
Группа: Модераторы
Ранг:  Специалист
Сообщений: 894
Репутация: 124   ±
Замечания:   ±
На сайте с 12.01.2009

Статус: Offline

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

Quote (mikhail09p)
Как написать свои символы?

; Вносим свои символы в память

Code
    Print $FE,64,$00,$00,$00,$00,$00,$00,$1F,$00 ' 0-символ
     Print $FE,64+8,$00,$00,$00,$00,$00,$1F,$1F,$00 ' 1-символ
     Print $FE,64+16,$00,$00,$00,$00,$1F,$1F,$1F,$00 ' 2-символ
     Print $FE,64+24,$00,$00,$00,$1F,$1F,$1F,$1F,$00 ' 3-символ
     Print $FE,64+32,$00,$00,$1F,$1F,$1F,$1F,$1F,$00 ' 4-символ

можно только 8.
И вывод:
Code

   Print $FE,128,0,1,2,3,
mikhail09p Дата: Пн, 06.09.2010, 23:56  |                                                                                                                Сообщение # 20
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 481
Репутация: 14   ±
Замечания:   ±
На сайте с 04.05.2010

Статус: Offline

Quote (ivan_fd)
Так где же программа подвисает, у меня в протеусе не виснет. Правда что то на изменение температуры реагирует медленно.

Уже не виснет. Я поначалу забыл SetupFlag = 0 сделать, вот она и капризничила biggrin
А что это за символы Вы нарисовали?
ivan_fd Дата: Вт, 07.09.2010, 00:08  |                                                                                                                Сообщение # 21
Группа: Модераторы
Ранг:  Специалист
Сообщений: 894
Репутация: 124   ±
Замечания:   ±
На сайте с 12.01.2009

Статус: Offline

Quote
Каждый символ 5х8 занимает в памяти CGRAM восемь байт (по одному байту на строку).
Младшие 5 бит каждого байта определяют какие из пяти точек строки должны гореть, а какие нет.
Старшие три бита - не используются.

Quote (mikhail09p)
А что это за символы Вы нарисовали?

Прикрепления: 3285850.gif (1.7 Kb)
ЯНДЕКС Дата: 07.09.2010
mikhail09p Дата: Вт, 07.09.2010, 00:19  |                                                                                                                Сообщение # 22
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 481
Репутация: 14   ±
Замечания:   ±
На сайте с 04.05.2010

Статус: Offline

Это в памяти дисплея? Откуда Вы цитируете?

Нашёл, разбираюсь.
Разобрался, рисую буквы У, Л, Д,П, Ч, Б. Буду писать: УЛ, ДОМ, и, может, со временем, дни недели.
wink

Сообщение отредактировал mikhail09p - Вт, 07.09.2010, 10:00
demanik Дата: Вт, 07.09.2010, 22:09  |                                                                                                                Сообщение # 23
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 448
Репутация: 10   ±
Замечания:   ±
На сайте с 11.12.2007

Статус: Offline

Quote (mikhail09p)
Quote (demanik)
GIE = 0 PRINT... GIE = 1
Попробывал - пургу гонит после чтения температуры.

Вконце обработчика прерываний добавте:
CONTEXT RESTORE


Попробуй всё и вся... может быть пол...

mikhail09p Дата: Ср, 08.09.2010, 09:56  |                                                                                                                Сообщение # 24
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 481
Репутация: 14   ±
Замечания:   ±
На сайте с 04.05.2010

Статус: Offline

Пока сделал русские смволы и опрос датчиков каждые 2 сек. по принципу сначала команда на преобазования двум датчикам, а через секунду - опрос.
Как думаете, не будет часто? Где-то читал, что если часто они преобразовывают, то немножко нагреваются и врут. Но как часто и правда ли это?

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

Прикрепления: 7557777.rar (83.8 Kb)

Сообщение отредактировал mikhail09p - Ср, 08.09.2010, 23:44
mikhail09p Дата: Пт, 17.09.2010, 19:12  |                                                                                                                Сообщение # 25
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 481
Репутация: 14   ±
Замечания:   ±
На сайте с 04.05.2010

Статус: Offline

Вот работоспособная версия девайса. Работает в железе.

Принцып работы:
Сутки разбиты на четыре участка:
примером первый от 5 до 8 часов - уст. 22 Градусов ( комфортно проснулись и помыли зубы)
второй от 8 до 15 часов - уст. 18 Градусов ( никиго нет дома)
третий от 15 до 22 часов - уст. 22 Градуса (дети приходят около 15 и спать ложимся в 23.00)
четвёртый от 22 до 5 часов - уст. 18 Градусов (спим).

В течении работы на любом участке можно оперативно изменить температуру ( раньше пришли домой), но программа в целом не изменится - изменение будет действительно только до начала следующего участка.
Если температура доходит до установленной на 0.2 и мене Градуса, товыход управления меняет своё состояние каждую секунду (половина мощности).
Ну, установка времени, понятно.

Жду предложений.

Добавлено (17.09.2010, 19.12.25)
---------------------------------------------
Предложений не поступило. Наверное, никому не интересно. cool

Вот эволюция проэкта, спасибо Николаю, который даёт толчки в мышлении smile
Да, частота кварца 4433169Гц.

Прикрепления: Prog_Thermo_m.rar (89.2 Kb)

Сообщение отредактировал mikhail09p - Пт, 17.09.2010, 19:12
vad1 Дата: Вс, 03.10.2010, 01:05  |                                                                                                                Сообщение # 26
Группа: Проверенные
Ранг:  Новенький
Сообщений: 4
Репутация: 0   ±
Замечания:   ±
На сайте с 26.09.2010

Статус: Offline

искал примерно эту концепцию. эта схема дефакто является хронотермостатом. сюда неплохо бы добавить график зависимостей температуры подачи от уличной температуры. допустим на улице резко похолодало, но в контролируемом помещении еще ничего не меняется. но программа уже температуру подачи увеличила для компенсации увеличившихся потерь внутри помещения. тоесть добавляется регулировка по температуре обогревающего контура в зависимости от внешней температуры. правда в схему потребуется добавить датчик отопительного контура.
mikhail09p Дата: Вс, 03.10.2010, 12:35  |                                                                                                                Сообщение # 27
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 481
Репутация: 14   ±
Замечания:   ±
На сайте с 04.05.2010

Статус: Offline

vad1, я тоже так хотел иначально!
Если нарисуете график, то я добавлю термодатчик на улице (сначала он и был) и датчик контроля температуры отопительной системы. Я так понимаю, это будет контроль минимальной температуры теплоносителя: чтобы при похолодании система не слишком остывала.
Ребята советуют, что лучше добавить зависимость от скорости ветра, но я считаю, что это лишнее..
vad1 Дата: Вс, 03.10.2010, 23:15  |                                                                                                                Сообщение # 28
Группа: Проверенные
Ранг:  Новенький
Сообщений: 4
Репутация: 0   ±
Замечания:   ±
На сайте с 26.09.2010

Статус: Offline

нет, именно зависимость подачи от уличной температуры заметно влияет на комфорт. я под мк не делал, эксперименты ставил под компом. графика как такового не было, и котел работал в следующем режиме- остывание теплоносителя до определенной темп., затем прогрев до макс разрешенной. именно эти пороги и регулировал в зависимости от уличной. допустим если внешка от -20 до -15 то мин котловой воды=27 мах 90. Тоесть котел включается если теплоноситель меньше 27 и выключается если больше 90. если же на улице +15 то мин=20 мах 60. Естественно остается контроль температуры помещения, но он при достижении заданной темп. помещения сдвигает мах порог градусов эдак на 30 вниз не трогая минимальный. Таким образом убирается вредное последствие хронотермостата- холодные батареи в период простоев, резкие расширения теплоносителя и отопительного контура, и исключается тактование котла в период интенсивного прогрева помещения, когда он через каждые 3 минуты зажигает горелку. конечно для каждой системы надо подбирать свои значения, но это не сложно, достаточно замерить макс. темп. теплоносителя в нагреве и мин. в простое и от этого кружить. Кстати такая система при верно подобранных значениях нормально работала без контроля воздуха в помещении, т.к. каждому значению внешки противопоставляется определенная порция тепла, кроме этого теплоноситель сам весьма точно показывает теплопотери. В принципе можно сделать чтобы МК сам вычислял эти пороги, но это уже ПИД

Добавлено (03.10.2010, 23.15.41)
---------------------------------------------
да, пока проект работал, делал функцию, которая правила таблицу соответствий, то есть при превышении комнатной темп. функция убавляла на немного макс значение котловой, соответствующее текущей уличной. по прошествии определенного времени эта функция и выставила все значения макс. темп котловой воды в нужные.

mikhail09p Дата: Пн, 04.10.2010, 23:46  |                                                                                                                Сообщение # 29
Группа: Проверенные
Ранг:  Помогаю всем
Сообщений: 481
Репутация: 14   ±
Замечания:   ±
На сайте с 04.05.2010

Статус: Offline

Это слишком сложно для меня пока. Надо обдумать.
Форум Picbasic.ru » Программирование МК » Proton PicBasic » Пока часы и термо
  • Страница 2 из 2
  • «
  • 1
  • 2
Поиск: