Digital DC power supply

Блоки питания, преобразователи напряжения, UPS'ы - это здесь :)
Аватара пользователя
larik
Мучитель микросхем
Сообщения: 403
Зарегистрирован: Вс окт 12, 2008 00:19:25
Откуда: Подольск, Мос. Область

Сообщение larik »

на рынке SMD да еше и 1% ... хм где такой не подскажеш? а то я все с материнок колупаю
Аватара пользователя
LINKS_234
Поставщик валерьянки для Кота
Сообщения: 2296
Зарегистрирован: Пн июл 14, 2008 18:12:37

Сообщение LINKS_234 »

это "великий" Минск - столица "великой" Беларуси . вот так на рынок приедешь - и понимаешь что живёшь не в столице , а в большом колхозе.
а что , на матерях бывают 1% ? :) я бы сам ковырял , если бы был фен :) а паяльником очень неудобно . надо сразу два в две руки :) а на транзисторы вообще три . два в руки и один в рот :)
есть вопросы ? чего-то не знаешь ? [url=http://s61.radikal.ru/i174/1006/79/bc6a635c1451.jpg][color=blue][b]прежде всего смотри это[/b][/color][/url]
Аватара пользователя
larik
Мучитель микросхем
Сообщения: 403
Зарегистрирован: Вс окт 12, 2008 00:19:25
Откуда: Подольск, Мос. Область

Сообщение larik »

а зачем фен то ? обычный паяльник и пинцет потоньше и все паяльник на 20-25 ват, поже могу фоткнуть... а нашет смд то проверят тестером 9,98 кОм это даже меньще 1%, причем почти все резюки точные это как не как мать плата всетаки =))))
P/S как там дела с прошивкой :oops: амперность будеш поправлять
Аватара пользователя
LINKS_234
Поставщик валерьянки для Кота
Сообщения: 2296
Зарегистрирован: Пн июл 14, 2008 18:12:37

Сообщение LINKS_234 »

я не знаю как паяльником и пинцетом отпаивать сразу два вывода быстро , посему и хочу фен :) прошивку сейчас и гляну - всёравно делать нечего :)

текс , а кто там кричал что под винду прог нету ? в исходниках всё валяется .

коменты разработчика рулят в некотором смысле :
Added R36 (5K6) for protection against current peaks higher
than 10A (can not happen under normal conditions but is possible
if the power transistor is overheated due to bad cooling and burns.
The resistor will save the live of the microcontroller).
:)))
может защиту какую-либо другую ввести ... этот резак помехи только создаёт. и номинал "слегка" завышен :) даже если пробьёт питающее напряжение на ногу , то для тока в 20мА необходим резак 1к6 .
думаю тут можно втыкнуть датчик температуры на радиатор и следить за нагревом. при превышении - вырубать транзистор :)
есть вопросы ? чего-то не знаешь ? [url=http://s61.radikal.ru/i174/1006/79/bc6a635c1451.jpg][color=blue][b]прежде всего смотри это[/b][/color][/url]
Аватара пользователя
LINKS_234
Поставщик валерьянки для Кота
Сообщения: 2296
Зарегистрирован: Пн июл 14, 2008 18:12:37

Сообщение LINKS_234 »

касательно шунта . в исходнике торчит следующее :

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

// convert voltage values to adc values, disp=10 is 1.0V

static int disp_u_to_adc(int disp){
   return((int)(disp * 102.3) / (ADC_REF * U_DIVIDER));
}


// calculate the needed adc offset for voltage drop on the
// current measurement shunt (the shunt has about 0.5 Ohm =1/2 Ohm)

static int disp_i_to_u_adc_offset(int disp){
   return(disp_u_to_adc(disp/20));
}


// convert adc values to voltage values, disp=10 is 1.0V
// disp_i_val is needed to calculate the offset for the voltage drop over
// the current measurement shunt

static int adc_u_to_disp(int adcunits,int disp_i_val){
   int adcdrop;
   adcdrop=disp_i_to_u_adc_offset(disp_i_val);
   if (adcunits < adcdrop){
      return(0);
   }
   adcunits=adcunits-adcdrop;
   return((int)(((adcunits /102.3)* ADC_REF * U_DIVIDER)+0.6));


насколько я вижу поправки с учётом падения на шунте введены. сейчас пока туго соображаю в чужом коде , но , возможно , завтра покопаюсь по-лучше. особенно в формулах.
есть вопросы ? чего-то не знаешь ? [url=http://s61.radikal.ru/i174/1006/79/bc6a635c1451.jpg][color=blue][b]прежде всего смотри это[/b][/color][/url]
Аватара пользователя
larik
Мучитель микросхем
Сообщения: 403
Зарегистрирован: Вс окт 12, 2008 00:19:25
Откуда: Подольск, Мос. Область

Сообщение larik »

LINKS_234 писал(а):
думаю тут можно втыкнуть датчик температуры на радиатор и следить за нагревом. при превышении - вырубать транзистор :)

мне кажется лучше еше при этом следить и за вентилятором (эт конеш может и не у всех) типо ШИМ контроллера, потомучто перегреватся будет он часто.
второй день гоняю и замечаю что как то тормознуто работает, мож конеш не привычно по сравнению от наших советских лабораторников Б5-45, там светодиодные стоят, жалко у мя они 50 V 0.5A поэтому и пришлось этот своять
Аватара пользователя
LINKS_234
Поставщик валерьянки для Кота
Сообщения: 2296
Зарегистрирован: Пн июл 14, 2008 18:12:37

Сообщение LINKS_234 »

у него задержки приличные стоят на опрос клавиатуры. в основном цикле. там же и вывод с установкой значения на ЦАП. думаю надо эти куски перекинуть на прерывание по таймеру.

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

if (check_buttons()==0){

         // no buttons pressed

         delay_ms(100);
         bpress=0;
         check_i2c_interface();
         check_buttons();
         delay_ms(150);

дальше идёт проверка на зажатие клавиши.
по-моему код не очень удачный . особенно с задержками и в основном цикле.
тут есть решения - если не нужен I2C от компа , то его код полностью выкинуть. Нажатие кнопок проверять с максимальной частотой , с дребезгом бороться в железе , на длинное нажатие заводить таймер , по прерыванию которого запускать быстрый перебор, если кнопка всё ещё нажата. в этом случае частота обновления и установка значений будут максимально приближены к АЦП преобразованиям.
по току пока ничего не могу сказать - надо вживую проверять и корректировать , т.к. поправка вроде введена.
есть вопросы ? чего-то не знаешь ? [url=http://s61.radikal.ru/i174/1006/79/bc6a635c1451.jpg][color=blue][b]прежде всего смотри это[/b][/color][/url]
Аватара пользователя
larik
Мучитель микросхем
Сообщения: 403
Зарегистрирован: Вс окт 12, 2008 00:19:25
Откуда: Подольск, Мос. Область

Сообщение larik »

ну мне пока что связь с компом не нужна, да и не разобрался я чето где и как прогу то брать, а вот скорость обработки хотелось бы повысить
по току- а пожет чето с резюком пошаманить, у мя стоит цепочка из двух 0.25 и как там написанно 1% погрешности, при том что R36 равен 0
Аватара пользователя
LINKS_234
Поставщик валерьянки для Кота
Сообщения: 2296
Зарегистрирован: Пн июл 14, 2008 18:12:37

Сообщение LINKS_234 »

собственно всё правильно . R36 защитный . измерительный - 0.5 Ом .

прогу тут - digitaldcpower-0.4.9\other_OS\win\i2ctalk.exe
работает с коммандной строкой.
i2c_rs232_pintest.exe - для проверки com-порта . устанавливает на двух ногах порта по-очереди единицы или нули на 5 сек.
есть вопросы ? чего-то не знаешь ? [url=http://s61.radikal.ru/i174/1006/79/bc6a635c1451.jpg][color=blue][b]прежде всего смотри это[/b][/color][/url]
Аватара пользователя
larik
Мучитель микросхем
Сообщения: 403
Зарегистрирован: Вс окт 12, 2008 00:19:25
Откуда: Подольск, Мос. Область

Сообщение larik »

ну командная строка эт не то... вот еслиб с каким нибудь интерфейсом да еше и с графиками :))
Аватара пользователя
LINKS_234
Поставщик валерьянки для Кота
Сообщения: 2296
Зарегистрирован: Пн июл 14, 2008 18:12:37

Сообщение LINKS_234 »

а вот графики уже нахрена ? :) тем более что лабораторник только принимает команды.
есть вопросы ? чего-то не знаешь ? [url=http://s61.radikal.ru/i174/1006/79/bc6a635c1451.jpg][color=blue][b]прежде всего смотри это[/b][/color][/url]
tipman
Первый раз сказал Мяу!
Сообщения: 28
Зарегистрирован: Пн янв 05, 2009 22:29:14

Сообщение tipman »

LINKS_234 писал(а):а вот графики уже нахрена ? :) тем более что лабораторник только принимает команды.


команды принимает, в соответствии со спецификацией i2c, ведущий то один, а вот на команды данные выдаёт, и в описалове на прогу по i2c

# set Imax to 0.20A:
i2ctalk i=20
# get current I value:
i2ctalk i

всё есть...
Аватара пользователя
LINKS_234
Поставщик валерьянки для Кота
Сообщения: 2296
Зарегистрирован: Пн июл 14, 2008 18:12:37

Сообщение LINKS_234 »

значит я хреново смотрел исходники :)
есть вопросы ? чего-то не знаешь ? [url=http://s61.radikal.ru/i174/1006/79/bc6a635c1451.jpg][color=blue][b]прежде всего смотри это[/b][/color][/url]
tipman
Первый раз сказал Мяу!
Сообщения: 28
Зарегистрирован: Пн янв 05, 2009 22:29:14

Сообщение tipman »

судя по приведённому коду корректировки падения на шунте действительно должно учитываться, но в результате видим иное, значит где то косяк.

знаний хватает и в коде поковыряться и графики с i2c порисовать в GUI но нет вообще времени сейчас, хотя очень хочется, но за темой я слежу, если что, помочь а уж тем более покритиковать :) ....
Аватара пользователя
LINKS_234
Поставщик валерьянки для Кота
Сообщения: 2296
Зарегистрирован: Пн июл 14, 2008 18:12:37

Сообщение LINKS_234 »

у автора не очень уж удачно сделан опрос клавиатуры , при котором МК опрашивает клавиатуру и гонит данные на ЖКИ по одним линиям. не совсем то , чего хотелось . задержки там стоят скорей всего на ожидание перед проверкой на длинное нажатие.
есть вопросы ? чего-то не знаешь ? [url=http://s61.radikal.ru/i174/1006/79/bc6a635c1451.jpg][color=blue][b]прежде всего смотри это[/b][/color][/url]
Аватара пользователя
LINKS_234
Поставщик валерьянки для Кота
Сообщения: 2296
Зарегистрирован: Пн июл 14, 2008 18:12:37

Сообщение LINKS_234 »

вопрос к собравшим :
показания вольтметра без нагрузки правильные ? если тупо подобрать по прибору R7 и R8 .
просто меня смущает очень такие строки :

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

static int disp_u_to_adc(int disp){
   return((int)(disp * 102.3) / (ADC_REF * U_DIVIDER))

и

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

// the divider R7/R8 [(R8+R7)/R8], you can calibrate here the voltmeter:
#define U_DIVIDER 11.35


во-первых 102.3 - насколько я помню должно быть 102.4
во-вторых U_DIVIDER какой-то странный . и непонятно какую формулу брать . по логике вещей это делитель напряжения. считать его надо так - R7/R8 для обычной версии . при этом получится 10 . если считать по формуле в скобках , то получится 11 , но никак не 11.35 . для варианта 30В получится 12.2 и 13.2 .
есть вопросы ? чего-то не знаешь ? [url=http://s61.radikal.ru/i174/1006/79/bc6a635c1451.jpg][color=blue][b]прежде всего смотри это[/b][/color][/url]
tipman
Первый раз сказал Мяу!
Сообщения: 28
Зарегистрирован: Пн янв 05, 2009 22:29:14

Сообщение tipman »

у меня с делителем всё ок
R7=10к, R8=988, исходник перекомпилил в своё время, когда мастерил на 11.13, с мультиметром совпадает, ну на небольших токах ессно
резисторы ставил, какие под руку попались, лишь бы разброс был поменьше
Аватара пользователя
LINKS_234
Поставщик валерьянки для Кота
Сообщения: 2296
Зарегистрирован: Пн июл 14, 2008 18:12:37

Сообщение LINKS_234 »

почему 11.13 ? ведь делитель 10:1 , т.е. первоначальный сигнал делится на 10 .
но это ещё фигня . дальше лучше :

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

// convert adc values to current values, disp=10 needed to be printed
// by the printing function as 0.10 A

static int disp_i_to_adc(int disp){
   return((int) (((disp * 10.23)* I_RESISTOR) / ADC_REF));
}


// convert adc values to current values, disp=10 needed to be printed
// by the printing function as 0.10 A
static int adc_i_to_disp(int adcunits){
   return((int) (((adcunits* ADC_REF)/(10.23 * I_RESISTOR))+0.6));
}

тут я вообще не понимаю этих формул и вообще зачем каждая из них.
есть вопросы ? чего-то не знаешь ? [url=http://s61.radikal.ru/i174/1006/79/bc6a635c1451.jpg][color=blue][b]прежде всего смотри это[/b][/color][/url]
tipman
Первый раз сказал Мяу!
Сообщения: 28
Зарегистрирован: Пн янв 05, 2009 22:29:14

Сообщение tipman »

R7=10к, R8=988 лично у меня
(R8+R7)/R8 = (10+0.988)/0.988 = 11.12, в моём случае

а вот 11.13 уже методом подгонки довёл
Аватара пользователя
LINKS_234
Поставщик валерьянки для Кота
Сообщения: 2296
Зарегистрирован: Пн июл 14, 2008 18:12:37

Сообщение LINKS_234 »

всё , понял с точки зрения логики , но не почему оно так :)
к примеру резаки по 1кОм два будут делить на 2 , посему (1+1)/1
... всё . теперь понял что к чему :) по закону ома это всё высчитывается через ток :)

текс , это понятно , но вот формулы очень уж странные какие-то . да и сам код сильно запутанный. на переменные автор не поскупился.
есть вопросы ? чего-то не знаешь ? [url=http://s61.radikal.ru/i174/1006/79/bc6a635c1451.jpg][color=blue][b]прежде всего смотри это[/b][/color][/url]
Ответить

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