Лабораторный БП PSL-3604

Блоки питания, преобразователи напряжения, UPS'ы - это здесь :)
Аватара пользователя
morokot
Вымогатель припоя
Сообщения: 587
Зарегистрирован: Вт сен 13, 2011 13:29:09
Откуда: Крым, Симферополь

Re: Лабораторный БП PSL-3604

Сообщение morokot »

Есть также и 0,1%, серия RT0805
http://www.compel.ru/datapdf/yag/ps/rt0 ... d40162.pdf

RT0805BRD07100KL
RT0805BRE0710KL
RT0805BRE0720KL
Реклама
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

Re: Лабораторный БП PSL-3604

Сообщение Леонид Иванович »

Приступаю к написанию прошивки, а это дело, как известно, начинается с написания ТЗ. Чтобы не писать ненужный документ, совместил ТЗ с руководством пользователя. Присоединил черновик v4, на глюки нумерации параграфов внимания не обращайте, замечания и предложения по алгоритмам принимаются.
Вложения
PSL-3604_Draft4.pdf
(891.15 КБ) 919 скачиваний
Реклама
Аватара пользователя
morokot
Вымогатель припоя
Сообщения: 587
Зарегистрирован: Вт сен 13, 2011 13:29:09
Откуда: Крым, Симферополь

Re: Лабораторный БП PSL-3604

Сообщение morokot »

Впечатляет... :shock:
Не к чему придраться...
Аватара пользователя
dmirrr
Мучитель микросхем
Сообщения: 475
Зарегистрирован: Вт дек 07, 2010 15:34:19
Откуда: UA

Re: Лабораторный БП PSL-3604

Сообщение dmirrr »

morokot писал(а):Если не ошибаюсь, цена указана за 10 шт. (около 0,5$)
Ошибаетесь, цена за 100шт. Их и заказал.
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
morokot
Вымогатель припоя
Сообщения: 587
Зарегистрирован: Вт сен 13, 2011 13:29:09
Откуда: Крым, Симферополь

Re: Лабораторный БП PSL-3604

Сообщение morokot »

Да, уточнил, за 100 шт.
0,1%, серия RT0805 ещё дешевле, как ни странно...
Реклама
Аватара пользователя
dmirrr
Мучитель микросхем
Сообщения: 475
Зарегистрирован: Вт дек 07, 2010 15:34:19
Откуда: UA

Re: Лабораторный БП PSL-3604

Сообщение dmirrr »

Шаг перестройки выходного напряжения 0,1В и 0,01В. Если нужно перестроится с 3,3В на 30 устанет рука крутить, это не один оборот нужно сделать. Или предполагается для таких масштабных перестроек пользоваться пресетами? Может стоит сделать шаг перестройки настраиваемый через ПК?
Максимальные значения тока/напряжения однозначно нужно сделать изменяемыми, достаточно через ПК.
Меню довольно насыщено, но все вроде нужное, и большого смысла прятать только для установки с компьютера нет. Хотя, на платах предусмотрена установка датчика температуры либо DS18B20 либо LM75. Как будет переключатся тип датчика, или будет автоопределение? Как калибровать LM75, или температура будет определятся по характеристике из datasheet. Ну и меню вентилятора прятать, если нет термодатчика.
Теперь по калибровке: выход из калибровки по таймеру убран? По опыту пользования предыдущей версии на Mega8 было неоднократно. что не успевал переставить щупы мультиметра в режим измерения токов (отвлекался) и калибровка заканчивалась по таймеру, приходилось начинать все с начала. Пока все. Сделаю, погоняю, может и еще вопросы возникнут.
Реклама
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

Re: Лабораторный БП PSL-3604

Сообщение Леонид Иванович »

dmirrr писал(а):Шаг перестройки выходного напряжения 0,1В и 0,01В. Если нужно перестроится с 3,3В на 30 устанет рука крутить
Это точно. Проверил, поставил на генераторе шаг 0.1 Гц и с 3.3 Гц до 30 Гц крутил 15 секунд :( С одной стороны, 0.1 В - самый ходовой шаг, хотелось бы его сделать основным. Получается, вместе с FINE нужен еще и COARSE. На как это удобней сделать, пока непонятно. Может, пусть кнопка FINE перебирает по кругу 3 шага? Индицировать можно другим видом мигания цифр.
dmirrr писал(а):Может стоит сделать шаг перестройки настраиваемый через ПК?
Хотелось бы с шагом разобраться на месте. Как вариант, можно сделать меню настройки шага. В общем, вопрос пока открыт.
dmirrr писал(а):Максимальные значения тока/напряжения однозначно нужно сделать изменяемыми, достаточно через ПК.
Это я планировал сделать, только пока в документацию не внес. Глубоко закопанное меню, например, с вызовом по удержанию кнопки при включении. Или даже при замыкании чего-нибудь внутри. Настраивать надо максимальное напряжение, ток и мощность.
dmirrr писал(а):на платах предусмотрена установка датчика температуры либо DS18B20 либо LM75. Как будет переключатся тип датчика, или будет автоопределение?
Только не LM75, а LM19. Не планировал делать автоопределение. Думаю, будут две конфигурации для компиляции. Ну а проект планирую сделать изначально с открытыми исходниками.
dmirrr писал(а):Как калибровать LM75
Зачем калибровать? У LM19 ±2.5°C, этого вполне хватит.
dmirrr писал(а):Ну и меню вентилятора прятать, если нет термодатчика.
Может не быть вентилятора, а термодатчик обязателен. Он обеспечивает защиту от перегрева.
dmirrr писал(а):выход из калибровки по таймеру убран?
Убран. Выход только по кнопкам. Сам процесс калибровки не очень нравится в плане задействованных кнопок, скорее всего, поменяется. Но это нужно смотреть на реальном приборе. Спасибо за замечания!
Аватара пользователя
dmirrr
Мучитель микросхем
Сообщения: 475
Зарегистрирован: Вт дек 07, 2010 15:34:19
Откуда: UA

Re: Лабораторный БП PSL-3604

Сообщение dmirrr »

Леонид Иванович писал(а):Только не LM75, а LM19
Извиняюсь, опечатался немного :)
А возможен вариант, когда устанавливать напряжение с нажатым энкодером, при это устанавливать шаг , допустим сразу 1В? Тогда процедура установки будет очень простой: нажал - установка грубо,с большим шагом, допустим 1В отпустил - установка точно, с шагом 0.1В, с нажатой кнопкой "Fine" - 0.01В. Ну и при нажатом энкодере "Fine" отключать. В каком-то югославском измерителе такое было, уже не помню каком, реализовано было механически, но удобно. Но это может конфликтовать с остальными функциями, нужно думать. Если изменяемый шаг реализовать через кнопку "Fine", тогда, по моему мнению, удобней для пользования, будет мигать изменяемым розрядом. Пока других мыслей нет.
А по поводу термодатчика, лучше делать одну прошивку и тип датчика переключать либо через меню, либо с ПК, если будет достаточно свободной памяти в STM32F100С4. Прошивку под STM32 компилировать немного не намного сложней чем под AVR, но согласитесь, как-то неправильно будет для изменения типа датчика качать среду разработки, компилировать проект.
Леонид Иванович писал(а):Глубоко закопанное меню, например, с вызовом по удержанию кнопки при включении.
Туда-же предлагаю спрятать калибровку, все настройки, которые делаются один раз после сборки БП (максимальные значения тока/напряжения, настройки температурных порогов, вентилятора, шаги перестройки и т.д.). В рабочем меню оставить минимум, только то, что может понадобится изменить оперативно. Будет два отдельных меню, будет проще с организацией и навигацией по меню.
Аватара пользователя
ChipKiller
Сверлит текстолит когтями
Сообщения: 1163
Зарегистрирован: Ср янв 05, 2011 16:25:15

Re: Лабораторный БП PSL-3604

Сообщение ChipKiller »

Леонид Иванович писал(а):замечания и предложения по алгоритмам принимаются.
... после беглого прочтения ТЗ возникла пара вопросов.
1. на базе чего сделана реализация USB ? (cp210x, ft232 ......)
2. где храним параметры ? ( может на свободные PB8..9 повесить 24cXX ?)
Аватара пользователя
dmirrr
Мучитель микросхем
Сообщения: 475
Зарегистрирован: Вт дек 07, 2010 15:34:19
Откуда: UA

Re: Лабораторный БП PSL-3604

Сообщение dmirrr »

Ничего, что я отвечу?
1. Преобразователь на FT232, но можно применить любой другой, имеющийся в наличии, так, как USB-UART выполнен отдельным модулем, гальваническая развязка разведена на плате управления.
2. В последней версии платы управления так и сделано.
Изображение
Аватара пользователя
amv2000
Опытный кот
Сообщения: 725
Зарегистрирован: Вт апр 26, 2011 13:58:36
Откуда: Ростовская область

Re: Лабораторный БП PSL-3604

Сообщение amv2000 »

dmirrr писал(а):А возможен вариант, когда устанавливать напряжение с нажатым энкодером
Это будет неудобно, удерживать кнопку энкодера и крутить его очень постараться надо.
А вот насчет калибровки согласен, можно при включении и (при нажатом к примеру энкодере) заходить в меню калибровки, завершив калибровку, сохраняем настройки и далее работаем только в основном меню.
Galizin
Мучитель микросхем
Сообщения: 478
Зарегистрирован: Ср окт 15, 2008 09:33:03
Откуда: Воронеж

Re: Лабораторный БП PSL-3604

Сообщение Galizin »

dmirrr писал(а):2. где храним параметры ? ( может на свободные PB8..9 повесить 24cXX ?)
Параметры можно хранить
1. Во флеше. Нужно выделить 2 страницы флеша по 1к. Если нужно сохранять только последние напряжение и ток то это 4 байта. Ресурс флеши - 10000. Так что хватит на то что бы сохранить 10000*(2048/4) раз. Это конечно не миллион, но тоже много. Там же можно хранить и калибровочные коэф., тогда циклов несколько меньше.
2. В регистрах, подпитываемых от батареи. Там не очень много памяти, но хватает что бы сохранить последние установки. Под калибровочные коэффициенты можно выделить тогда 1 блок.

Сохранять можно по выключению питания. Тогда ресурс распространяется не на количество перестроек а на количество выключений. Для этого нужно сделать определение выключения - делитель с выпрямителя для определения начала выключения. Ну и конденсатор побольше, что бы успеть сохраниться.

stm32 имеет спец режим ADC для слежения за порогом. Как только входное напряжение на заданном канале ADC перевалит порог - генерируется прерывание. Вот в этом прерывании все можно и сохранить и дождаться полного выключения. Исходники всего что я написал выкладывал.
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

Re: Лабораторный БП PSL-3604

Сообщение Леонид Иванович »

amv2000 писал(а):Это будет неудобно, удерживать кнопку энкодера и крутить его очень постараться надо.
Неудобно. Пока вопрос с шагом регулировки остается открытым. Может быть, сделать шаг зависимым от значения, как сделано у меня в генераторах (и вполне удобно при использовании)? Только здесь более плавно увеличивать шаг, скажем, 0.1 В до 9.9 В, 0.2 В, до 19.9 В, 0.5 В дальше. А кнопка FINE может сначала включать постоянный шаг 0.1 В (светодиод FINE мигает), второе нажатие - включает шаг 0.01 В (светодиод FINE горит).
amv2000 писал(а):насчет калибровки согласен, можно при включении и (при нажатом к примеру энкодере) заходить
Входить в калибровку нужно после прогрева источника, причем дергать при этом питание не очень желательно, чтобы не вызвать термический стресс. Поэтому специально сделал вход в калибровку из меню. Все пункты меня являются одинаково ненужными при эксплуатации источника. Поэтому нет смысла разбивать меню на две части - невозможно будет выделить "более нужные" функции.
Galizin писал(а):1. Во флеше. Нужно выделить 2 страницы флеша по 1к.
Очень сильно боюсь, что задуманное не влезет в 16 кбайт. Поэтому выделять под эмуляцию EEPROM целых 2 кбайт - расточительство.
Galizin писал(а):2. В регистрах, подпитываемых от батареи.
Добавлять на плату батарейку - намного большее зло, чем добавлять 24С04. Батерейка оправдана лишь тогда, когда нужны часы.
Galizin писал(а):Сохранять можно по выключению питания. Тогда ресурс распространяется не на количество перестроек а на количество выключений. Для этого нужно сделать определение выключения
Думал и про такое. Но сигнал пропадания сети на плату управления не заведен, нестабилизированного напряжения там тоже нет. Как вариант, можно мониторить напряжение 5 В, из которого делаю 3.3 В. Тоже будет некоторое время. Тогда можно под эмуляцию EEPROM отвести только одну страницу, раз будет гарантированное время на стирание и запись.

Анализируя варианты, пришел к выводу, что лучше всего использовать внешнюю 24С04.
Аватара пользователя
Starichok51
Модератор
Сообщения: 19054
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Re: Лабораторный БП PSL-3604

Сообщение Starichok51 »

1. кнопка FINE может по кругу гонять и 3 шага: 1В, 0,1В, 0,01В
2. кнопка энкодера при удержании будет по кругу гонять 3 шага: 1В, 0,1В, 0,01В. можно при удержании кнопки автоматически показывать на дисплее текущий шаг, а смену шага делать с интервалом, например, 1 секунда.
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Аватара пользователя
amv2000
Опытный кот
Сообщения: 725
Зарегистрирован: Вт апр 26, 2011 13:58:36
Откуда: Ростовская область

Re: Лабораторный БП PSL-3604

Сообщение amv2000 »

Galizin писал(а):stm32 имеет спец режим ADC для слежения за порогом.
Это Вы наверное за этот кусок кода говорите, как я понял?

Код: Выделить всё

/* Включить программируемый детектор напряжения */
  PWR->CR |= PWR_CR_PLS_2|PWR_CR_PLS_1; /* 2.8 V */
  PWR->CR |= PWR_CR_PVDE; /* Включить детектор напряжения питания PVD */

  { /* Задержка для стабилизации питания */
    __IO uint32_t Delay = 1000000;
    while (Delay--) ;
  }
// ******** застрять до нормальнога питания! ********
  /* проверяем питание */
  while ( (PWR->CSR & PWR_CSR_PVDO ) != 0 ) ; // ждать пока подымится питание или не сбросится встроенным ресетом.
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

Re: Лабораторный БП PSL-3604

Сообщение Леонид Иванович »

Starichok51 писал(а):1. кнопка FINE может по кругу гонять и 3 шага: 1В, 0,1В, 0,01В
Да, это хороший вариант. Только для безопасности нужно постоянно индицировать текущее значение шага. Можно сделать, например, так:

Шаг 0.1 В - основной, светодиод FINE не горит.
Шаг 0.01 В - мелкий шаг, светодиод FINE горит.
Шаг 1 В - крупный шаг, светодиод FINE мигает, предупреждая об опасности сильно быстро изменить напряжение.
Аватара пользователя
Starichok51
Модератор
Сообщения: 19054
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Re: Лабораторный БП PSL-3604

Сообщение Starichok51 »

можно и светодиодом управлять.
но по мне удобнее, как я уже говорил:
можно при удержании кнопки энкодера автоматически показывать на дисплее текущий шаг, а смену шага делать с интервалом, например, 1 секунда
удержание кнопки энкодера автоматически переводит дисплей в индикацию шага.
можно менять шаг, как я написал, через 1 секунду, пока кнопка не отпущена
а можно сделать так: следующее удержание кнопки переключает величину шага и показывает ее, и так по кругу.
если привязываться к светодиоду, то автоматически переводить дисплей в индикацию шага не нужно.
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
victor.s
Открыл глаза
Сообщения: 47
Зарегистрирован: Ср сен 19, 2012 12:37:44
Откуда: Киев

Re: Лабораторный БП PSL-3604

Сообщение victor.s »

По поводу шага регулировки - а почему бы не выбирать шаг автоматом взависимости от скорости вращения энкодера?
Типа крутанул быстро - меняется с шагом 1В. Крутишь чуть медленне - 0.1В.

Так сделано например в осциллографах Ригол и во многих микроволновках. По опыту - очень удобно и максимально естественно.
На той же микроволновке нет проблем\неудобств выставить как 10 секунд так и 10 минут.
Кроме того, слышал очень много нареканий на удобство пользования осциллографами где такого режима нет.

Для 0.01В можно и кнопку Fine нажать, или, поскольку это требуется достаточно редко и, когда старшие разраяды уже выставлены, нужно поменять максимум 9 значений, то шаг 0.01 применять при ОЧЕНЬ медленном вращении. Хотя, кнопка Fine наверное тут все-же будет лучше.
victor.s
Открыл глаза
Сообщения: 47
Зарегистрирован: Ср сен 19, 2012 12:37:44
Откуда: Киев

Re: Лабораторный БП PSL-3604

Сообщение victor.s »

Кроме того, для безопасности, в режиме когда нагрузка подключена, вполне можно игнорировать скорость и всегда менять выходное напряжение только на 0.1/0.01В
Аватара пользователя
ChipKiller
Сверлит текстолит когтями
Сообщения: 1163
Зарегистрирован: Ср янв 05, 2011 16:25:15

Re: Лабораторный БП PSL-3604

Сообщение ChipKiller »

почему бы не выбирать шаг автоматом взависимости от скорости вращения энкодера?
.. Flash не резиновая - ИМХО вначале обеспечивают необходимый функционал, а "плюшки" потом. Все удобства в 16 кило можно и не втиснуть
Ответить

Вернуться в «Питание»