Контроллер охлаждения
Хорошая астрокамера должна иметь механизм поддержания стабильной температуры сенсора. Для этой цели был сделан контроллер для пельтье. Этот контроллер подойдет для камеры cam8, cam8s и может работать автономно. Т.е. контроллер самостоятельно будет поддерживать заданную температуру.
Сам контроллер представляет из себя отдельный от камеры блок, который управляется по USB (да, 2 USB порта на одну камеру — лишнее, но маємо що маємо). Для питания пельтье (TEC1-3103, 3.5В, 3.4А) используется готовый DC-DC Adjustable Step-Down 5A модуль с ebay за 5$ и n-channel MOSFET. Ключем управляет микроконтроллер ATmega16. Связь с ПК — Virtual Com Port, через FT232RL. DC-DC модуль питается от внешнего блока питания 12В 2А. ATmega16 и FT232RL питаются от USB. Используется 2 датчика температуры DS18B20, один крепится на медном теплоотводе камеры, второй — с внешней стороны корпуса камеры.
Порядок сборки таков:
1) Собрать схему.
2) С помощью ISP-программатора залить в контроллер прошивку бутлоадера и выставить фьюзы. Скрин фьюзов в AVRProg и ChipBlasterAVR ниже.
3) Сразу же залить основную прошивку.
Бутлоадер нужен только для удобства. В течении первых 10с после подключения USB кабеля работает бутлоадер. В это время можно запустить AVRProg и перепрошить контроллер не вынимая плату из корпуса. Нужно только не забыть присвоить FT-шке номер COM порта ниже COM4 (иначе AVRProg может не увидеть нужный последовательный порт).
Алгоритм работы контроллера — пропорциональный регулятор с программным ШИМ (2Гц). Стабльность поддержания температуры — +-0.1-0.2С. Пробовал использовать аппаратный ШИМ на 32кГц, желаемого результата добиться не получилось — возникают наводки, которые портят изображение.
Был реализован алгоритм термореле с гистерезисом, но он давал худшую стабильность поддержания температуры. Для желающих его можно задействовать перекомпилировав исходники.
Также был реализован standalone mode, контроллер запоминает предыдущее свое состояние и при включении поддерживает температуру на сенсоре, которая была задана прошлый раз. Может быть полезен тем, кто не хочет иметь лишнего подключенного USB порта, или софт управления камерой поддерживает ASCOM, но не поддерживает управление ее температурой. Достаточно один раз задать желаемую температуру.
Для управления контроллером была написана небольшая программка:
Поддержка модуля охлаждения для камер семейства cam8 была интегрирована в ASCOM драйвер. Скачать драйвер.
Все необходимое для сборки.
Список деталей: http://astroccd.org/wp-content/uploads/2015/03/tec_board_list_of_elements.zip
Бутлоадер и основная прошивка + исходники: http://astroccd.org/wp-content/uploads/2015/04/TECboard_src.zip
Программа управления + исходники: http://astroccd.org/wp-content/uploads/2015/03/TECcontrol01.zip
Печатная плата (Sprint Layout) в моем случае: http://astroccd.org/wp-content/uploads/2015/03/tec_board_pcb.zip
Или на github: https://github.com/vakulenko/CAM-Cooler-Control
С моим экземпляром cam8 удалось добиться дельты в 28-30 градусов относительно температуры окружающего воздуха.
Hi!
Please help me!
I would like use Atmega8. Please change your software if is it possible.
Thank you!
Hello,
Possible, but not tested.
Zip with fw:
http://astroccd.org/wp-content/uploads/2015/05/tec-control-mega8_fw.zip
PC2 — internal DS18b20
PC3 — external DS18b20
PD5 — TEC MOSFET control
PD0,PD1 — UART
However, I’m recommend you atmega16 for this project.
Thank you!
I will to probe next week.
Здравствуйте!
Как адаптировать данный контроллер охлаждения для пельтье TEC1-12706 12В 6А ?
Возможно ли интегрировать поддержку контроллера модуля охлаждения в ASCOM драйвер для Canon EOS?
Добрый день,
Из схемы просто выбрасываем DC-DC преобразователь и используем 12в внешний блок питания достаточной мощности, также нужно проверить, чтобы VT1 вытянул максимальный ток на пельтье. Обороты вентилятора я бы не регулировал, пускай работает на 100% всегда, иначе он с этим контроллером будет работать рывками (контроллер использует софтовый ШИМ с частотой около 2Гц для управления пельтье).
Насколько я знаю, для Canon EOS нет ASCOM драйвера, т.е. не с чем интегрировать. Для отдельного управления контроллером есть мелкая самописная софтина.
Некоторые модели Canon EOS имеют встроенный датчик температуры на матрице, показания с которого Maxim DL вносит в fit заголовок.
Hi!
I made my cooler pcb and works but i have 3-3.1°C internal and external temp. In room i have 23°C not 3. I have 2.8-2.9V on pin 21,22. How can i solve it?
Hi,
Looks like broken temp sensors. It must be 5v at 21,22 pins (if your VCC is 5v).
Sorry i measured it wrong. I hav 3.9-4V It looks it divide the real temp by 8. Indor 24°C it says 3, outside 8°C it says 1, and in the fridge -15°C it says -1.9-2.
Hmm..
You use original .hex firmware, fuses and mega16 MCU?
Also try playing with R1, R2.
Yes i use atmega16a and .hex from this site. Tried R1 and R2 1k to 10k but the same. Tried internal 8MHz and external 8MHz but nothing. Can i write to .hex file a 8X multiplier somehow?
I think i found it. I use DS1820 sensor but you wrote DS18B20. Difference is 9bit vs 12bit.
J
I will update schematic soon to correct issue.
Добрый день, а можно ли сделать данный контроллер охлаждения для CAM85 на базе ардуино? Есть ли скетч который будет работать с ascom драйвером?
Добрый день,
Скетча нет, но есть прошивка в виде .hex файла, которую можно зашить в Arduino Nano. В этой прошивке пока есть баги, как поправлю — выложу здесь и на форуме.
Большое спасибо!
Прототип скетча для Arduino nano (mega328)
PD5=PD5=выход на MOSFET, активный уровень «1»
PA2=PC2=вход датчика с сенсора.
https://github.com/vakulenko/CAM-Cooler-Control/tree/master/TEC_board_arduino_nano
Чуть позже красиво оформлю.
Здравствуйте. Есть ли успехи по скетчу для Arduino Nano, схемку бы ещё для полной ясности. Спасибо.
Добрый день,
Самое последнее что делал по проекту самодельных камер есть на Гитхабе — https://github.com/vakulenko/CAM-Cooler-Control
Здравствуйте, а в UNO можно залить данную прошивку?
https://github.com/vakulenko/CAM-Cooler-Control/tree/master/TEC_board_arduino_nano
попробовал зашить, но возможно фьюзы не верно стоят на ардуинке-программка не увидела устройство.
расскажите с какими параметрами программировали пожалуйста
Добрый день, дело не в фьюзах. Для UNO нужно переделать немного код (имена регистров UART).
Thanks for your great firmware and schematic, I have used it to design my own board that incorporates usb 4 port hub and it’s great. In the future I will do my own version but using microchip as it’s what I work with. Good job!
If you check the cloudy nights forums I posted my pcb gerbers.
А можно в эту схему и прошивку, внедрить датчик влажности DHT22 ?
Можно, но не вижу смысла. С влагой внутри камеры нужно бороться, а не измерять.
Recently built and now debugging the board I built with the pic24fj64. I have a question with the algorithm you use to control the pwm in your firmware. You made it work very well and settle very close to the setpoint with little deviation. I can see the part in your firmware but I hope to use the same algorithm in my mcu. Could you explain how it works?
My version of FW uses simple P-regulator (proportional).
https://en.wikipedia.org/wiki/Proportional_control
подскажите, не совсем понял, все прошивки контроллера с компа делаются или нужен какой то отдельный прошивальщик?
Если делать контроллер по описанию выше понадобится AVR ISP программатор.
Благодарю за ответ. А где такой программатор надыбать можно?
Можно самому собрать или купить в интернет магазине.