Заголовок сообщения: Re: Цифровое управление лабораторным источником (stm32f100c4
Добавлено: Вт ноя 01, 2011 15:35:31
Поставщик валерьянки для Кота
Карма: 1
Рейтинг сообщений: 5
Зарегистрирован: Ср май 11, 2011 21:37:45 Сообщений: 1995 Откуда: Цветочный город
Рейтинг сообщения:0
Galizin писал(а):
Спасибо тов Satyr и Мастер Ломастер что налили 3 страницы воды. А вообще то здесь обсуждается конкретная статся, а не можете и хотите Вы применять АРМ или нет.
извините, уважаемый Galizin, но пост на форуме - это как ребенок: ты его рожаешь в муках, а он, как только встал на ножки, тут же от тебя стремится отделаться и зажить самостоятельной жизнью... смиритесь. вы родили хорошую тему, спасибо вам за это, но теперь она в вас не нуждается диалектика, блин...
_________________ битва с дураками проиграна, победители торжествуют. слава победителям!
Нет. Всё абсолютно серьезно. Хочу более мощную версию БП (36 В, 4 А) сделать на ARM, и к энкодеру добавить несколько кнопок: on/off, set V, set I.
Мастер Ломастер писал(а):
не знаю, как вы, но сам себя я нищебродом не считаю.
Я всего лишь высказал своё мнение. Мне так показалось. Я сам поступаю точно так же, но почему-то убежден, что нормальный человек не должен говорить того, что говорите Вы или я.
Нет. Всё абсолютно серьезно. Хочу более мощную версию БП (36 В, 4 А) сделать на ARM, и к энкодеру добавить несколько кнопок: on/off, set V, set I.
Если нужны основы, то нужно искать не на этом сайте. Хорошая подборка на we.easyelectronics.ru. Форумы - на kazus.ru и electronix.ru. Еще есть примеры от ST. При неясности приходится лазить и туда и в исходные коды их библиотек. Можете взять эти исходники. Они почти рабочие. Или могу выслать последние. Отвечу на вопросы и даже помогу адаптировать под свои нужды, если что. Как я понимаю адаптация может заключаться в добавлении 3 кнопок (легко), добавлении ограничения на максимум (труднее) и смене дисплея на светодиодные индикаторы (очень тяжело, не представляю как все уместить на 4 цифрах). Если появятся вопросы - задавайте. Здесь или на казусе. На казусе ответят быстрее. У меня сложилось впечатление, что там людей, работающих с АРМ, тусуется больше. Интересно наблюдать, как люди недели через 2-3 уже начинают отвечать на вопросы. Что бы начать исследовать ARM вовсе не нужно его иметь. В среде есть симулятор. Работает достаточно хорошо. Можно отлаживать отдельные куски кода без железа. Например я так отлаживал связку ПДП, АЦП и тайметы. Конечно хорошо бы вообще иметь что то типа протеуса. Но и то что есть - большое подспорье. Главное, там можно настраивать периферию прямо на ходу. Устанавливать и сбрасывать нужные флажки. Потом то же самое можно уже повторить при инициализации. При работе с ARM лучше потратить 20-25 баксов и купить stm32-vldiscovery. Там стоит камень с большим количеством памяти. Все ножки выведены на штырьки. Поэтому моделировать устройство можно без печатной платы. По крайней мере я погонял сначала энкодер, АЦП, ЦАП и дисплей на discovery а уже потом взялся за паяльник. Самое главное - там есть st-link. Железо Программатора и отладчика в одном флаконе. И наконец третий этап. Устройство спаяно. У него оставлено 3 штырька для программирования и отладки. discovery переведен в режим внешнего программатора. Там уже смотрится все в железе нормальным отладчиком с точками останова и т.д.
Предлагаю вернуться к основной теме Предлагаемый блок питания достаточно хорошо вписывается и в мои потребности. Но есть вопросы и пожелания. С помощью блока питания, помимо традиционного использования, я хочу ещё заряжать и разряжать различные аккумуляторы - от Ni-Cd до кислотных. При этом нужно управлять и контролировать ток разряда - сейчас там идёт разряд аккумулятора просто через r23,r17 и полностью открытый vt4. Как модифицировать схему, что бы контроллером можно было управлять и ток разряда(в идеале ЦАП тот же)? Предложения проэмулирую и удачные варианты отмакетирую в железе. Программно Оочень хочется сбрасывать график заряда/разряда на комп через rs232, так как график на таком LCD неинформативен. Ещё мне не понравился номинал измерительного резистора - 1 ом. На 3А он, мало того, что выделяет 3W тепла, так и отхватывыает 3В от источника, на которые можно было бы повысить выходное напряжение Попробовал уменьшить до 0,1 +доп.усилитель в 10раз, пока не прошло - эмулятор показывает возбуждение при ограничении тока.
После прочтения этой статьи, а потом и других, сегодня купил STM32 Discavery Буду осваивать. До этого сидел на Atmel-е, в основном на ассемблере. Кстати попутный вопрос - а доступный ассемблер на stm32 есть? В Си тут используют ассемблерные вставки?
Вернёмся ещё. По крайней мере я и ещё один человек собираемся это сделать, но чуть попозже.
Dynastar писал(а):
С помощью блока питания, помимо традиционного использования, я хочу ещё заряжать и разряжать различные аккумуляторы - от Ni-Cd до кислотных. При этом нужно управлять и контролировать ток разряда
Если делать "по уму", то это не так просто, в идеале - это должен быть не лабораторный БП, а специально предназначенное устройство. Некоторые характеристики могут быть ухудшены (по сравнению с лабораторным БП), например, всё что связано с динамикой и пульсациями, но должны быть и специфичные узлы, которые обычно или совсем отсутствуют в лабораторном БП, или работают несколько иначе.
Dynastar писал(а):
Ещё мне не понравился номинал измерительного резистора - 1 ом. На 3А он, мало того, что выделяет 3W тепла, так и отхватывыает 3В от источника, на которые можно было бы повысить выходное напряжение
Поправка: при 3А на 1Ом будет рассеиваться 9Вт
Dynastar писал(а):
Попробовал уменьшить до 0,1 +доп.усилитель в 10раз, пока не прошло - эмулятор показывает возбуждение при ограничении тока.
ы-ы-ы известные грабли. Великий Леонид Иванович говорил как-то, что хороший лабораторный БП не всякому под силу сделать. И был прав
Dynastar писал(а):
Кстати попутный вопрос - а доступный ассемблер на stm32 есть? В Си тут используют ассемблерные вставки?
Есть. Только ассемблер для ARM это удовольствие для особо извращённых маньяков, да и смысла в нём никакого нет. Хотя в голом асме нет смысла и на любом другом МК в >90% случаев. Так что забудьте, вначале потренируйтесь на кошках мегах на С, потом можете браться за ARM. "С места в карьер" не советую
Заголовок сообщения: Re: Цифровое управление лабораторным источником (stm32f100c4
Добавлено: Ср ноя 16, 2011 18:59:37
Друг Кота
Карма: 26
Рейтинг сообщений: 108
Зарегистрирован: Чт ноя 04, 2010 01:56:36 Сообщений: 7439 Откуда: г. Москва
Рейтинг сообщения:0
Dynastar писал(а):
Кстати попутный вопрос - а доступный ассемблер на stm32 есть? В Си тут используют ассемблерные вставки?
Что тут в си используют и есть ли ассемблер от силикона никак не зависит. По существу - есть и си, и с++, и ассемблеры от нескольких контор под кортекс-м3. у стм32 ядро - кортекс-м3. Т.е. ответ положительный. Система комманд у кортексов, но если вникнуть - очень продуманная и приятная.
Я тоже знаю одного человека, который вернется к этой теме, но попозже.
Вообще, нарисовалась очень явная картина: кто не может сделать лабораторый источник питания, тот отчаянно пытается его сделать. Кто может, тот покупает готовый. За редким исключением.
Dynastar писал(а):
С помощью блока питания, помимо традиционного использования, я хочу ещё заряжать и разряжать различные аккумуляторы - от Ni-Cd до кислотных
Вам не блок питания нужен, а тестер аккумуляторв. Полно таких проектов в сети.
Dynastar писал(а):
Попробовал уменьшить до 0,1 +доп.усилитель в 10раз, пока не прошло - эмулятор показывает возбуждение при ограничении тока.
Ночи в симуляторе Вы решили пропустить в данном процессе?
Вообще, нарисовалась очень явная картина: кто не может сделать лабораторый источник питания, тот отчаянно пытается его сделать. Кто может, тот покупает готовый. За редким исключением.
Спасибо за тонкую английскую оценку моих возможностей Невнимательно прочитал статью, думал, что схема расчитана на 3А, а оказалось на 0,5А. Пересчитал, разобрался. С возбуждением/усилением тоже разобрался.
Цитата:
>>Попробовал уменьшить до 0,1 +доп.усилитель в 10раз, пока не прошло - эмулятор показывает возбуждение при ограничении тока. ы-ы-ы известные грабли. Великий Леонид Иванович говорил как-то, что хороший лабораторный БП не всякому под силу сделать. И был прав
А Вы не наступали никогда на грабли? Как по мне, лучше наступить на грабли в эмуляторе, чем в железе. С этим тоже сам разобрался. Вместо язвления можно было бы по делу подсказать.
Цитата:
Так что забудьте, вначале потренируйтесь на кошках мегах на С, потом можете браться за ARM. "С места в карьер" не советую
По поводу Си я, конечно, не асс, но на атмеге написать и применить в деле свою библиотеку для экрана от Nokia 1100 вполне смог. С ARM до сих пор дела не имел, но все с чего то начинают. Обложился pdf-ами, изучаю. Светодиодами уже мигаю Вопросов пока куча
Цитата:
Вам не блок питания нужен, а тестер аккумуляторв. Полно таких проектов в сети.
В этом блоке питания уже практически все есть, даже графики Не хватает только регулировки тока разряда. А плодить близкие по параметрам устройства не вижу смысла.
Цитата:
Ночи в симуляторе Вы решили пропустить в данном процессе?
Неделю уже просидел в симуляторе С этой схемой только начал.
Спасибо за тонкую английскую оценку моих возможностей
Да не обижайтесь. Я и вправду считаю, что никто из здесь присутствующих (и я не исключение) не может сделать полноценный источник питания.
Без проблем Отмакетировал вариант схемы с регулированием тока разряда. Сейчас в схеме ток заряда/разряда регулируются одним регулятором (точных ЦАП-ов то только 2). Некоторые номиналы не окончательные. 1000мФ на выходе - смотрел как реагирует БП. К выходу подключен аккумулятор (0,1 Ом - внутреннее сопротивление). Дополнительных "звонов", кроме уже имевшихся не увидел. Из имевшихся "звонов" увидел небольшой на токоизмерительном резисторе в момент перестройки напряжения. Посмотрите, покритикуйте. Эмулировал в Мультисиме 11. Файл могу выложить, но кажется вы пользуетесь другими программами. На токоизмерительном резисторе при разряде получается отрицательное напряжение. АЦП у этого контроллера я ещё не изучал, не знаю как он к этому отнесётся Но отрицательные выбросы присутствовали и у оригинала.
На токоизмерительном резисторе при разряде получается отрицательное напряжение. АЦП у этого контроллера я ещё не изучал, не знаю как он к этому отнесётся Но отрицательные выбросы присутствовали и у оригинала.
Не измеряет АЦП отрицательного напряжения. Да и вблизи нуля (в пределах десятка-другого мВ) могут быть проблемы, в зависимости от сопротивления источника входного напряжения и некоторых настроек. Кроме того, отрицательный ток (даже небольшой) нельзя подавать на любые выводы МК (даже цифровые), искажается работа аналоговой периферии даже не связанной с этим выводом.
Как я уже говорил, для зарядника не важна динамика, поэтому я бы максимально упростил аналоговую часть, переложив больше функций (в т.ч. и стабилизацию тока) на МК
По поводу АЦП я так и думал, просто у автора статьи кроме последовательного резистора 2,7к, нет защиты от отрицательного напряжения на входе АЦП. А в момент разряда электролита на выходе, отрицательное напряжение есть на токоизмерительном резисторе.
По поводу динамики - для меня это не будет ТОЛЬКО зарядником. И звон уже присутствует в оригинале, моя добавка вроде не звенит. Хотел поставить свои любимые OP07 , но оказалось в динамике явно хуже... А жаль, там регулировка скорее всего почти и не понадобилась бы..
Кстати по поводу цен на stm32 и atmeg, в качестве прикола Посмотрел в "Космодроме" (нашем основном магазине радиодеталей) цены на stm32f100c4 - 10 грн., а крошечная платка под TQFP48/LQFP48 - 15 грн !! Вот и считай.
По поводу АЦП я так и думал, просто у автора статьи кроме последовательного резистора 2,7к, нет защиты от отрицательного напряжения на входе АЦП. А в момент разряда электролита на выходе, отрицательное напряжение есть на токоизмерительном резисторе.
Во-первых, есть разница между коротким разрядом конденсатора, и разрядом батареи. Во-вторых, при разряде конденсатора ток можно не измерять, а ток разряда батареи очень желательно знать.
Dynastar писал(а):
По поводу динамики - для меня это не будет ТОЛЬКО зарядником.
Я уже высказывал своё отрицательное отношение к подобному совмещению функций.
Dynastar писал(а):
И звон уже присутствует в оригинале, моя добавка вроде не звенит.
Это не оправдание, чтобы делать плохо.
Dynastar писал(а):
Посмотрел в "Космодроме" (нашем основном магазине радиодеталей)
Харьков?
Последний раз редактировалось koyodza Чт ноя 17, 2011 23:00:52, всего редактировалось 1 раз.
По поводу динамики - для меня это не будет ТОЛЬКО зарядником.
А почему? Вы же делаете изделие для себя, к чему это совмещение функций в ущерб характеристикам? Я еще понимаю, когда эффективные менеджеры диктуют свои условия: совместить то-то с тем-то. Но Вы же сам себе голова. Специализированный зарядник будет по-любому лучше.
Dynastar писал(а):
цены на stm32f100c4 - 10 грн., а крошечная платка под TQFP48/LQFP48 - 15 грн !! Вот и считай.
А нафига эта платка? Всё и так прекрасно утюжится.
Во-первых, есть разница между коротким разрядом конденсатора, и разрядом батареи. Во-вторых, при разряде конденсатора ток можно не измерять, а ток разряда батареи очень желательно знать.
У себя думаю поставить 2 буферных усилителя (инв. и неинв.) для 2-х АЦП + защита от отрицалки. Но это уже на плате МК.
Цитата:
Это не оправдание, чтобы делать плохо.
Цитата:
к чему это совмещение функций в ущерб характеристикам?
Я и стараюсь сделать как можно лучше. Я не считаю, что мое изменение ухудшило данную схему. По эмуляции этого не видно.
Цитата:
Харьков?
Да, я из Харькова.
Цитата:
А нафига эта платка? Всё и так прекрасно утюжится.
Увы, хороший картридж уже стал нехорошим, на работе перебрал с десяток принтеров - получается плохо. Осваиваю фоторезист. Пока тоже не очень.
У себя думаю поставить 2 буферных усилителя (инв. и неинв.) для 2-х АЦП + защита от отрицалки. Но это уже на плате МК.
Не очень удачное решение. Лучше (для умного зарядника) сместить шкалу и измерять ток одним каналом.
Повторю в который раз (но, пожалуй, в последний): совмещение функций "умной зарядки" и лабораторного БП довольно неудачно. Лучше сделать два отдельных устройства, каждый со своим функционалом, со своими схемными решениями и электрическими характеристиками. Пока мы с Вами к обсуждению собственно схемотехники и алгоритмов работы того или иного устройства даже не приблизились
пример схемки ограничения напряжения/тока из даташита TSM101:
приблизительный аналог на ОУ (3 компаратора - напряжение, ток, температура):
Сигналы управления (задание и обр.связь) можно вывести на разъем, тогда регулировать и измерять можно как угодно - от резисторов до ШИМа от контроллера.
Предлагаю вернуться к основной теме Как модифицировать схему, что бы контроллером можно было управлять и ток разряда(в идеале ЦАП тот же)? Предложения проэмулирую и удачные варианты отмакетирую в железе. Попробовал уменьшить до 0,1 +доп.усилитель в 10раз, пока не прошло - эмулятор показывает возбуждение при ограничении тока.
По моему мнению самый простой способ сделать что то типа генераторов (поглотителей) тока для разряда. Будет несколько фиксированных значений. При 5 таких звеньях можно получить 32 значения тока разряда. Контролировать это не удастся. Второй способ. Если посмотреть на схему, то явно видна ее почти симметричность. Почти как усилитель ЗЧ. Только транзисторы для питания используется полевой, а для разряда - биполярный. Можно поставить 2 полевых. А регулировку и измерение тока сместить по уровню на середину питания контроллера например. Но это только идея. Сработает оно или нет - непонятно. Работу аналоговой схемы я описал в предыдущей статье. Возможно Вам это поможет. По поводу схемы с дополнительным усилением сигнала с шунта. Усиливать дополнительно сигнал с шунта НЕЛЬЗЯ!! Иначе схема потеряет устойчивость. Только 1 ОУ. Что бы добиться 3 ампер нужно просто поставить шунт 0,5 вольта / 3 ампера = 0,16 ома. По поводу защиты - в контроллере вроде есть встроенные диоды на землю. Так что резистора для защиты входа АЦП должно быть достаточно. Если у Вас есть желание вывести что либо через RS232, то необходимо аппаратно сделать только преобразователь уровней. На плате сигнал USART выводится на штырьки. В контроллере осталось около 500 байт флеша. Если возникнет желание - выложу последние исходники. Доделать вывод на USART там будет уже совсем не сложно. С программой контроллера окажу помощь в виде консультаций и прямого указания куда втыкать код вывода. C инициализацией usart надеюсь Вы справителсь самостоятельно. Вероятно Вам придется также переделывать вывод. У меня нет работы с отрицательными числами (Разряд) С программой под win не помогу.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 22
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения