Авторизация
Зарегистрироваться

Самодельный миллиомметр, построенный на недорогом АЦП MCP3421


Всем привет. Сегодня я хотел бы рассказать о достаточно дешёвой реализации самодельного миллиомметра, с использованием древнего, не сильно быстрого, но зато доступного по цене и достаточно популярного АЦП MCP3421, а так же микроконтроллера, в моём случае использован Arduino Nano (ATmega168), для работы с АЦП по шине I2C.
Кроме собственно АЦП и микроконтроллера, понадобится ещё ряд компонентов, от которых будет сильно зависеть точность измерений.
И конечно же, огромным плюсом было бы наличие точных сопротивлений, для возможности проверки и калибровки показаний самодельного миллиомметра.


Миллиомметр понадобился мне для проверки сопротивления полевых транзисторов, при заказе их с Ali, что бы хоть как то сразу понять палёные они или нет (оригиналы конечно встречается крайне редко, но есть б/у варианты оригиналов, либо чисто китайские транзюки), ведь корректно измерить такие малые сопротивления на обычном мультиметре, не получится. Мультиметром, с функцией измерения ёмкостей, можно лишь измерить ёмкость затвора, на соответствие заявленному значению из даташита.

Так как, обычно такие транзисторы, в полностью открытом состоянии, имеют сопротивление сток-исток более 10мОм (>0.01Ом), то высокая точность измерителя, в целом не требуется, но по возможности хотелось бы выжать всё что возможно.

За основу, при построении миллиомметра, была взята данная статья: ссылка, от неё я отталкивался, с целью экономии времени на создание и настройку измерителя. Благодарю автора данной статьи.

Компоненты миллиомметра

Дополнительно, кроме самого АЦП и контроллера к нему, понадобятся следующие компоненты:

1) Специальные зажимы Кельвина, в кол-ве 2-х штук: ссылка
2) Достаточно толстый провод. Нужно будет 4 коротких куска, для соединения зажимов со входами АЦП (два провода) и цепью состоящей с эталонным резистором (два оставшихся провода).
3) Линейный стабилизатор напряжения на 3.3В. Я применил AMS1117, заказав их сразу много штук: ссылка
От него питается как цепь с эталонным резистором, так и сам АЦП. Входное напряжение берётся с платы Arduino Nano (пин «5V», тока с USB порта хватит и на питание контроллера и на остальные компоненты миллиомметра).
4) Точный резистор из манганина или константана, примерно на 100Ом, или то что есть под рукой, максимально хорошее по точности.
5) Дисплей для вывода информации. Я применил дисплей LCD1602A, который покупал ещё кажется в 2012 году, и с тех пор он мне всё не пригождался, и вот его час настал. Если будете покупать этот экран в 2022 году, то берите его с переходником под интерфейс I2C, хотя наверное сейчас без него и не найти этот дисплей.
Мой дисплей без такого переходника, подключен россыпью проводов, с применением немного другой библиотеки дисплея, нежели в статье.
Дисплей питается напряжением 5В и 3.3В (токи потребления небольшие), всё берётся с платы Arduino Nano.
Так же, можно вообще забить на экран, ведь данные так же будут выводится в консоль через последовательный порт, при подключении на ПК, что чуть менее удобно, чем вывод на экран, без него мы теряем автономность и независимость устройства.

В упрощенном виде, у меня получился такой вариант схемы:

Здесь показан немного другой линейный стабилизатор, аналог AMS1117 (проверяйте номера ног по даташиту), и не показана запитка самого АЦП. Входное напряжение 5В поступающее на стабилизатор, идёт с платы Arduino Nano.
R1 это эталонный резистор в цепи, RX — измеряемое сопротивление.
Так же, на схеме не показан дисплей.

В качестве эталонного резистора, я применил составной резистор (3-и маломощных резистора с 1% точностью, соединенные в параллель), с итоговым сопротивлением ~110Ом, согласно более-менее точных показаний мультиметра Aneng AN8008.
В статье, которую я брал за основу, автор применяет эталонное сопротивление из манганина, значение которого не убежит от нагрева. При этом, сам резистор должен быть максимально точным по разбросу реального значения с указанным.

Я решил соединить три резистора в параллель, вместо применения одного резистора на 110Ом, что бы минимизировать нагрев, а значит и изменение сопротивления, ввиду того что у меня есть только «обычные» резисторы, и при этом маломощные, из набора заказанного на Ali.
Но, конечно лучше так не делать (ведь между группой резисторов как не крути есть разброс), и греться они всё равно будут (пусть и не так сильно, ведь через них пойдёт ток около 30мА, при 3.3В), толку от этого не сильно много по отношению к варианту с одним резистором, но для ряда задач, когда нужно собрать бюджетное устройство из легко доступных и недорогих компонентов, при не сильно большой точности, такой вариант имеет место быть.

Самый точный резистор имеющийся у меня, производства СССР, имеет относительно высокое сопротивление 1КОм и точность 0.1%. Он хоть и точный, но не из манганина или константана.
Изначально, я хотел использовать его в качестве эталона в схеме миллиомметра, но позже, уже при тесте устройства понял, что из-за такого большого сопротивления, АЦП не сможет корректно произвести измерение напряжения, при тестировании сопротивления с миллиоммным значением. Найти похожий резистор но на 100Ом (или около того), поштучно, весьма проблематично, но можно поспрашивать на авито у локальных торгашей, но лучше конечно искать сразу из манганина или константана, как можно более точные по номиналу (либо «забить» на точность, если есть возможность измерить сопротивление высокоточным поверенным омметром, с учётом сопротивления применённых проводов).

Если свободной платы Arduino Nano сейчас нет под рукой, то придётся покупать её по завышенной цене (даже плата на 168-ой атмеге стоит не дёшево), или рассмотреть возможность работы например с использованием платы на ESP8266, которые сейчас намного дешевле, но могут быть нюансы с ПО.

АЦП

АЦП требует минимум обвязки, и на Ali продаётся уже в виде готового модуля.
Я не смог найти в своих закромах керамические конденсаторы на 100нФ (0.1мкФ), которые указаны на приведённой в статье схеме, хотя у меня где валялся пакетик таких конденсаторов, поэтому спаял всё без их использования.

Сам АЦП MCP3421 одноканальный, разрядность измерений до 18бит в дифференциальном режиме, и до 17бит в обычном режиме. При разрядности 18 бит, АЦП делает около 3.75 измерений в секунду, что очень медленно, но для нашей задачи достаточно и этого.

АЦП имеет в своём составе встроенный источник опорного напряжения (ИОН), поэтому внешний ИОН ему не нужен, но питание всё равно должно подаваться нормальное, с минимальными шумами.
Нормальным вариантом, для бюджетной конструкции, будет являться применение линейного стабилизатора AMS1117, на 3.3В, имеющего достаточно хорошую точность выходного напряжения, и достаточно большой возможный выходной ток.

Либо, более жирный вариант качественного питания — использование редкой микросхемы REF193. REF193 на Ali найти за не дорого не удалось, хотя тех же 5-и вольтовых REF195 (и вроде бы даже не поддельных), там много, за вполне разумные деньги.
Максимальный ток REF193 всего 30мА, как и потребляемый ток у самой измеряемой схемы, состоящей из эталонного и измеряемого резисторов.
В принципе сам АЦП кушает очень мало, и если подобрать чуть большее эталонное сопротивление, то в целом должно получиться запитать всё целиком от этого опорника, или запитать только саму тестовую часть схемы, где точность подаваемого напряжения для цепи состоящей из эталонного и тестового резисторов важнее, чем в случае с самим АЦП, имеющим встроенный ИОН.

Если необходимо, то АЦП MCP3421 можно заменить так же достаточно популярным АЦП ADS1115, который способен обеспечить разрядность измерений до 16бит, и имеет большее количество каналов, и немного большую стоимость, есть аналогичные примеры миллиомметров на его основе.

Итоговая конструкция, тестирование

В моём случае, у меня нет возможности произвести калибровку миллиомметра на точных сопротивлениях, поэтому её я не проводил. Эталонный резистор так же не особо подходящий, но попробуем поработать с тем что есть.

Скетч.

Скетч достаточно прост и понятен, и отредактирован мною под мой дисплей, не имеющий поддержки соединения по I2C, как было у автора.

#include <Wire.h> // SDA и SCL (А4 и А5)
#include <MCP3421.h> // https://github.com/liman324/MCP3421.git
#include <LiquidCrystal.h> 
const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
  
 MCP3421 mcp;
 
 unsigned long dig,dig_sum;
 float u,r;
 const float u3300 = 3.292;  // опорное напряжение (V)
 const float  r_ogr = 109.88;// эталонное сопротивление (Om)
 const float r_0 = 0.0010;   // погрешность нуля (Om)
 int i,n=0,m;
 
void setup() {
 Serial.begin(115200);
 Wire.begin();
 lcd.begin(16, 2);
 mcp.setConfig(3,3);// 12 14 16 18 bit - 0-3 // 1x 2x 4x 8x gain - 0-3
 //lcd.init();
 //lcd.backlight();
}
 
void loop() {  
 /// авто переключение диапазонов /////////
 dig = mcp.readWire();  
 if(dig>131070&&n==0){mcp.setConfig(3,2);delay(50);n=1;}
 if(dig>131070&&n==1){mcp.setConfig(3,1);delay(50);n=2;}
 if(dig>131070&&n==2){mcp.setConfig(3,0);delay(50);n=3;}
 if(dig<65000&&n==1){mcp.setConfig(3,3);delay(50);n=0;}
 if(dig<65000&&n==2){mcp.setConfig(3,2);delay(50);n=1;}
 if(dig<65000&&n==3){mcp.setConfig(3,1);delay(50);n=2;}
 
  // калибровка диапазонов //
 dig = mcp.readWire(); 
 if(n==0){u = dig * 0.2569 /131071;}// n0 8   Om
 if(n==1){u = dig * 0.5156 /131071;}// n1 18  Om
 if(n==2){u = dig * 1.0270 /131071;}// n2 38  Om
 if(n==3){u = dig * 2.0510 /131071;}// n3 170 Om
 
 /// измерение /////////////////////////// 
 while(i<20){i++;
 dig = mcp.readWire();
 dig_sum = dig_sum+dig;
 delay(50);}
 i=0;
 dig=dig_sum/20;
 dig_sum=0;
 
 /// монитор порта ////////////////////////
 Serial.print(dig);
 Serial.print("  u=");
 Serial.print(u,6);
 Serial.print("  r=");
 Serial.print(((r_ogr*u)/(u3300-u))-r_0,4-n);
 Serial.print("  n=");
 Serial.println(n);
 
 switch(n){
  case 0: m=4;break;
  case 1: m=3;break;
  case 2: m=3;break;
  case 3: m=2;break;
  }
 r = ((r_ogr*u)/(u3300-u))-r_0;
 if(r>172){lcd.setCursor(0, 0);
 lcd.print(" R > 172.00 Om ");}
 else{lcd.setCursor(0, 0);
 lcd.print(" R = ");
 lcd.print(r,m);
 lcd.print(" Om   ");}
 lcd.setCursor(0, 1);
 lcd.print(" N ");
 lcd.print(n);
 if(r>172){lcd.setCursor(5, 1);
 lcd.print(" 0.000");
 lcd.print(" mA");}
 else{lcd.setCursor(5, 1);
 lcd.print(" ");
 lcd.print((u3300/(r+r_ogr))*1000);
 lcd.print(" mA");}
}


В скетче присутствуют следующие задаваемые величины:

const float u3300 = 3.292 — опорное напряжение, В. В моём случае это напряжение с выхода AMS1117, подающееся в цепь R1-Rх, от точности его установки и поддержания в процессе измерения, зависит точность итогового измерения АЦП того напряжения, которое упадёт на исследуемом резисторе. Напряжение измерено мультиметром Aneng AN8008.

const float r_ogr = 109.88 — значение эталонного сопротивления, Ом. Сопротивление измерено мультиметром Aneng AN8008.

const float r_0 = 0.0010 — погрешность нуля, Ом. Определяется при замыкании щупов между собой.

Миллиометр измеряет сопротивления в диапазоне от 0,0000Ом до 172.00Ом, в 4-х диапазонах.

В качестве настроек АЦП, выбрано усиление 8x, и максимально доступная разрядность измеряемых значений, равная 18 бит.

В качестве «известного» сопротивления, применю шунт с заявленным сопротивлением 10мОм, купленный в кол-ве 10шт здесь: ссылка
Насколько точно значение сопротивления шунта по отношению к заявленному, сказать сложно, предполагаю что погрешность значения находится в районе 1%-5%, но это не точно. Плохо что у меня нет эталонного высокоточного измерителя, или точного резистора для точной оценки.

Произвожу измерение сопротивления двух шунтов, из 10 штук.

Первый шунт:


Показания немного плавают при длительности измерения более 1-ой минуты.

Второй шунт. Тут измеренные значения немного иные, и очень близки к 10мОм (0.01Ом):


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

В целом, точность достаточная для проверки сопротивления полевика. Единственное, с проверкой сопротивления на полевых транзисторах надо быть аккуратней, ведь для полного открытия нужно подать на его затвор напряжение около 12В.

Я при проверке сопротивления одного из полевиков, в последствии оказавшегося пробитым, повредил один АЦП, пришлось заказывать новый и ждать ещё месяц. Хотя повреждённый АЦП вроде бы и частично работал, показывая сопротивление (при измерении резистора на десятки Ом) с большой погрешностью, и для измерений уже не годился.

О том как я собирал данный миллиомметр, разбирался с работоспособностью дисплея, а так же сжёг первый АЦП, расскажу на видео (получилось затянутым, но быть может поможет начинающим, не уверенным в своих силах по сборке такого миллиомметра, хотя сложного по сути ничего нет):


Проверю полевой транзистор IRF520N, купленный на Ali в кол-ве 10 штук с год назад, за недорого, в качестве транзистора который не жалко случайно спалить.

Сравню со вторым экземпляром:

Получаем сопротивление сток-исток около 70мОм, а по даташиту там должно быть 200мОм, транзистор рассчитан на достаточно большое напряжение сток-исток, и в данном случае, он скорее всего быстро сгорит, при достижении напряжения близкого к 100В, и при наличии более менее протекающего тока.

Измерил так же мультиметром ёмкость заствор-исток, получил 1.5нФ, что соответствует ёмкости 1500пФ, а по даташиту всего 330пФ.

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

Вот скриншот из даташита:

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

Измерение сопротивления открытого IRF520N на видео:


Выводы

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

Другой вариант, как в случае с моими IRF520N, где я знал что беру подделку, но мне они нужны были для тестов (небольшие напряжения и токи), так как в случае чего, их не жалко и спалить.
Ну и наконец, можно достаточно точно измерить данным миллиомметром сопротивление резисторов и шунтов, когда оно имеет крайне низкое значение, уже не доступное для корректного измерения мультиметром.
Планирую купить +25 Добавить в избранное +88 +134
свернуть развернуть
Комментарии (52)
RSS
+
avatar
  • asm
  • 17 октября 2022, 19:33
0
Но внутреннее сопротивление источников питания он ведь не сможет?
А как я понимаю, миллиомметрами большинство именно ради них обзаводится.
+
avatar
  • djdff
  • 17 октября 2022, 19:48
+4
Там другой тип замера, и не только для этого ими обзаводятся :)
+
avatar
0
миллиомметрами большинство именно ради них обзаводится
ет
+
avatar
  • djdff
  • 17 октября 2022, 19:46
+6
По теме все красиво, но не лучше ли замеры делать более существенными токами? Можно понять когда заменяется что-то слабое, но сопротивление очень критично именно на сильнотоковых
Подкинул на него ампер другой, и по напруге.
Ещё раз, по теме у вас все красиво, я без претензий, но проверять так проверять.
+
avatar
0
Поддерживаю! Я сам проверяю мосфеты (высоковольтные, для применения в качестве силовых в ИИП), подавая на них стабилизированный (насколько это возможно от регулируемого БП, а-ля «лабораторник») ток в 2000 мА через термистор и измеряя напряжение падения на канале мосфета обычным мультиметром в режиме 200мВ. Полученный результат делю на 2 (ведь у нас ток 2А) и получаю значение сопротивления в миллиомах. Можно подать ток в 1000мА и тогда на вольтметре сразу будет отображаться сопротивление канала в миллиомах без дополнительных вычислений. В принципе, для отбраковки явных подделок такой способ годится. На затвор подавал напряжение в 12,6 вольт от трех последовательно соединенных аккумуляторов Li-Ion.
Существенный момент: напряжение измерять необходимо не на концах проводов, а непосредственно на выводах транзистора, тогда будет исключено сопротивление проводов.
+
avatar
  • djdff
  • 20 октября 2022, 11:08
0
У меня есть источники стаб тока, но что-то я ленивый стал последнее время
Использую любой источник тока и два канала осцилла с математикой, точность страдает конечно, но я ведь не в космос их, если сотню надо отсортировать получается очень быстро :)
+
avatar
  • u3712
  • 17 октября 2022, 19:47
-4
АЦП имеет в своём составе встроенный источник опорного напряжения (ИОН), поэтому внешний ИОН ему не нужен, но питание всё равно должно подаваться нормальное, с минимальными шумами.

Либо, более жирный вариант качественного питания — использование редкой микросхемы REF193. REF193 на Ali найти за не дорого не удалось, хотя тех же 5-и вольтовых REF195 (и вроде бы даже не поддельных), там много, за вполне разумные деньги.

const float u3300 = 3.292 — опорное напряжение, В. В моём случае это напряжение с выхода AMS1117, подающееся в цепь R1-Rх, от точности его установки и поддержания в процессе измерения, зависит точность итогового измерения АЦП того напряжения, которое упадёт на исследуемом резисторе.
Как старательно обходятся собственноручно созданные проблемы. А нужно было лишь взять ADC без встроенного Vref. ))
Вообще, подобные измерения стоит делать на переменном токе, или хотя-бы пульсирующем. Гальванические пары при столь малом полезном сигнале дают весьма чудесатые результаты. ))
К слову о
при проверке сопротивления одного из полевиков, в последствии оказавшегося пробитым, повредил один АЦП, пришлось заказывать новый и ждать ещё месяц.
Так лениво было поставить резистор и диод для защиты ADC? Я не понимаю.
+
avatar
+5
вообще, подобные измерения стоит делать на переменном токе, или хотя-бы пульсирующем
сопротивление каналов полевиков — не стоит)
+
avatar
  • sdfpro
  • 17 октября 2022, 19:55
0
по поводу защиты обоснованное замечание, ранее стаким не сталкивался, надо прикинуть что и как включить чтобы не было влияний на измерения.
+
avatar
  • dens17
  • 17 октября 2022, 19:47
+2
Цена: 137р
Немного некорректно.
Всё это конечно хорошо, но надо паять кучу проводков, дисплей, Arduino Nano + всякие скетчи…
Не всем это зайдёт, лень возиться, колхоз, зрение и часть людей категорически ненавидит всякие скетчи. Им проще, по акциям, взять готовый аппарат Yr1035.
+
avatar
  • djdff
  • 17 октября 2022, 19:50
+2
Ну так тут и тег сделано руками стоит.
+
avatar
  • sdfpro
  • 17 октября 2022, 19:53
+6
ну не всем нужен прибор за несколько тысяч, ради пары измерений в год. Тут если есть ардуинка, надо потратить ещё где-то 350р, и будет измеритель.
+
avatar
  • hanzo
  • 17 октября 2022, 20:59
+1
ради пары измерений в год
гораздо изящнее, точнее и легше будет вариант
>>>
Подкинул на него ампер другой, и по напруге
+
avatar
  • sdfpro
  • 17 октября 2022, 21:05
-1
можно и так, но здесь нагляднее, и спор на Али глядишь получится выйграть если что)
+
avatar
  • OlegDDL
  • 29 октября 2022, 12:00
0
Нюанс в том, насколько эти измерения корректны. Сравнивать измерения при 3 вольт и токе 30 ма, с даташитными при 10 вольт и токе почти в 6 ампер совершенно не корректно.
+
avatar
  • katran
  • 17 октября 2022, 20:27
0
собрать на макетке чтобы проверить разок… почему нет?
+
avatar
  • dens17
  • 17 октября 2022, 20:39
+1
собрать на макетке
Если только это, то вопросов вообще нет. Но всякие скетчи и Arduino отсекут многих. Старшее поколение, обычно, несильно любит это дело.
+
avatar
  • sdfpro
  • 17 октября 2022, 21:06
0
ну а что там сложного то? я считаю что любой радиолюбитель средней руки, осилит скетч, темболее в данном случае, бери да копируй. надо только пару переменных сменить. Экран можно не память, или взять вариант с i2c, там всего будет два провода под данные, да ещё штуки 3 провода под питание.
+
avatar
0
mysku.club/blog/aliexpress/93123.html#comment4150843
Мой вариант, без скетчей. Но подходит только для сопротивлений от 1 миллиома и выше. Можно и до 0,1 мОм точность поднять, подняв ток до 10 ампер, но не каждый транзистор это перенесет.
+
avatar
  • dens17
  • 20 октября 2022, 17:33
+1
Мой вариант, без скетчей.
Когда делал и примерно так. Но потом убедился, что мне достаточно двух пунктов.
1) Yr1035 и батарейка Крона.
2) Разбираем один транзистор и смотрим кристалл.
+
avatar
  • Brendon
  • 17 октября 2022, 19:50
+8
Для полевых транзисторов это все решается не только проще, а еще и правильнее, измерение падение (и соответственно расчет сопротивления) при определенном токе, измерять просто милиомметром не совсем корректно.
ЛБП, батарейка на 9 вольт и любой современный мультиметр, больше ничего не нужно.
+
avatar
+1
Можно и так, как упрощённый вариант.
Почти все производители измеряют сопротивление открытого канала на номинальном токе и в импульсном режиме (Pulse width ≤ 400μs; duty cycle ≤ 2%).
+
avatar
0
Я именно так и измеряю ))
+
avatar
  • Vingrad
  • 17 октября 2022, 20:05
+4
Проще спаять генератор постоянного тока на 1 А, например, и измерить мультиметром напряжение на открытом транзисторе. Заодно вспомнить закон Ома. :)
+
avatar
  • sdfpro
  • 17 октября 2022, 21:09
0
ну у мен универсальная измерялка больше. вот те же шунты что пришли, там уже на пакетике почти стёрлась маркировка, написанная в спешке рукой китайца. на Али через пару лет я уже и не найду этот заказ (не всегда вспомнишь что там было в описании), а тут я взял его и измерил. Так же есть резисторы оранжевые такие, алюминиевые с Али, с маркировкой что они 100 ваттные (на 50ватт ещё бывают такие же но в чуть меньше корпусе), так вот у меня есть на 0.1 Ом, на 0.2Ом, на 0.5Ом, тут так же их удобнее будет изменить.
+
avatar
0
Стремление — похвально, но я считаю что делать DIY измериловку имеет смысл только при крайней уникальности изделия (читай невозможности купить) либо при большой разнице в цене готового / самодельного (без значимого ухудшения параметров самоделки).
Как пример могу привести измеритель Miron 63 v3 модифицированный на питание от лития и на 3 реле (кто в теме тот поймет). Такую бибу купить нельзя, алгоритм измерений уникален, характеристики прибора очень хорошие. И да, он тоже умеет измерять миллиомы )
+
avatar
  • sdfpro
  • 17 октября 2022, 21:13
0
так готовые миллиометры, в частности что мелькали на данном сайте, например в недавно обзоре на аналогичные зажимы, стоят около 2кр, тут все изделие О
от силы на 500р тянет, и в случае чего можно либо с другого проекта часть деталей взять, либо разобрать. Ну а так конечно гюудобнец готовое юзать. А так, я в свое время хотел посмотреть стонал осциллографом(лет 8 назад), но возможности и желания купить его ради пары измерений ее было, собрал самодельный на stm32, было интересно посмотреть что как. По цене вышло 150р).

ну и еще, небольшой рассказ про данный ацп еще возможно кому то будет полезен, ведь есть еще куча применений хороших и недорогих ацп, так же как и более крутые ацп (более быстрые и точные, с большей разрядностью).
+
avatar
+3
Писал когда-то либу для ЦАП Microchip MCP4725, может кому пригодится. До 3го знака довольно таки точно. Есть встроенная power fail safe eeprom.
+
avatar
+4
Получаем сопротивление сток-исток около 70мОм, а по даташиту там должно быть 200мОм, транзистор рассчитан на достаточно большое напряжение сток-исток, и в данном случае, он скорее всего быстро сгорит, при достижении напряжения близкого к 100В, и при наличии более менее протекающего тока.
Вы не понимаете того, о чем пишете.
Чем меньше сопротивление канала, тем меньше рассеиваемая транзистором мощность, тем меньше он греется и, соответственно, у него меньше шансов выйти из строя.
+
avatar
  • sdfpro
  • 18 октября 2022, 01:28
+5
из того что вы написали, это я вижу что вы не поняли что я написал. Так а как это относится к тому что транзистор не соответствует даташиту? думаете он лучше чем оригинал irf520n?) вот и фишка то в том что это не оригинал, а внутри корпуса какой то левый кристалл, например от транзюка рассчитанного всего лишь на 20В, и от сюда меньшее сопротивление канала, и большая ёмкость затвора, что логично.

кроме сопротивления канала, у полевого транзиора ещё куча других параметров, и то что как вы пишите что у него меньше шансов выйти из строя, не совсем так, ибо все относительно, и зависит от того насколько транзистор загружен относительно допустимых параметров.
+
avatar
  • muraveiX
  • 18 октября 2022, 07:37
0
Наверно, для полной уверенности в «высоковольтности», надо делать прибор, проверяющий ее.Например, Тестер полупроводников
Высоковольтный генератор с ограничением тока.
внутри корпуса какой то левый кристалл
Очень давно, я принимал участие в изготовлении микросхем, конкретно в их испытании.
Так вот, при их проверке использовались «цеховые» нормы, которые были в разы жестче чем ТУ.
+
avatar
+1
Я все прекрасно понял, это Вы так коряво и замысловато выразили свою мысль о том, что это не IR520. Достаточно было остановиться на несоответствии сопротивления канала.
Дальнейшие рассуждения про «сгорит» неверные, поскольку оторваны от других параметров. Например, если у транзистора допустимое напряжение стока 200 В, то упомянутые Вами 100 В на стоке — это рабочий режим и, при сопротивлении канала 70 мОм на транзисторе рассеется примерно в 3 раза меньшая мощность, чем при сопротивлении канала 200 мОм.
А вот если у транзистра с меньшим сопротивлением канала допустимое напряжение стока будет 50В, то, естественно, он выдет из строя при подаче на море 100В.
+
avatar
  • muraveiX
  • 18 октября 2022, 15:13
+2
должно быть 200мОм,
Это максимальное значение, мин. не ограниченно.
«Вам дали гораздо лучший мех полевик!» :)
+
avatar
0
Кроме того, в даташите значение сопротивления канала приводится при токе, как минимум на два порядка большем, чем в приведённом показометре.

Да и с ёмкостью затвора — вы на какой частоте измеряли?
+
avatar
  • linkar
  • 18 октября 2022, 01:44
0
Чем меньше сопротивление канала, тем меньше рассеиваемая транзистором мощность, тем меньше он греется и, соответственно, у него меньше шансов выйти из строя.
Вероятно ноги у этого заблуждения растут из того, что параметры, заметно отличные от даташита, могут указывать на перемаркировку более дешевого (в нашем случае — более низковольтного) транзистора. Но сопротивление перехода без емкости затвора неинформативно.
+
avatar
+2
Это не заблуждение, просто посчитайте рассеиваемую каналом мощность при токе, скажем, 10 А в обоих случаях.
Про другие, значимые для адекватной оценки транзистора, параметры автор в заметке забыл (или не знал) написать, сосредоточившись только на сопротивлении канала.
+
avatar
  • linkar
  • 18 октября 2022, 11:10
+3
Вы говорите о теплом, а я о мягком, т.е. о разном. Я не спорю о том, что ТС неверно трактует измеряемое, я говорю о другом. Низкое сопротивление открытого канала в транзисторах схожего назначения более типично для низковольтной серии. И транзистор в рабочей цепи выйдет из строя не по тому, что у него сопротивление канала занижено (напротив, нагрев кристалла из-за омического сопротивления будет ниже), а потому что рабочее напряжение предположительно будет ниже. А сопротивление канала — один из маркеров того, что у нас в руках не то, что написано на корпусе.
+
avatar
  • snag
  • 18 октября 2022, 06:07
+1
Не в плане поумничать, а от недостатка знаний…
Разве при четырехпроводном измерении не нужен источник тока и раздельное питание?
Просто некоторое время назад делал «измеритель» для проволоки (чтобы не расчитывать по формулам) на ардуино микро на его собственном ацп. К счастью у меня были три калиброванных резистора, подаренные еще когда компьютеры занимали целый этаж :-). Там набегала линейная погрешность, которая решалась аппроксимацией.
Склоняюсь к тому, что стоит переделать свою поделку с учетом Вашего проекта.
+
avatar
  • xonixer
  • 18 октября 2022, 07:00
+1
А здесь и четырёхпроводка не нужна, она бессмысленна на таких токах. Даже если подключить двухпроводкой из почти деревянных проводов (сопротивлением, например, 1Ом), то при последовательных 110Ом в цепи это менее 1% погрешности.

Не стоит подходить к показометру с точки зрения измерений.
+
avatar
  • penzet
  • 18 октября 2022, 06:50
0
Во времена СССР продавался радиоконструктор, приставка к мультиметру для измерения низкоомных сопротивлений. Собрал таких штук 20, для всех кто нуждался и по сей день сам пользуюсь.
+
avatar
0
Схемкой/ссылкой не поделитесь? Любопытно стало, может быть есть смысл тоже такое соорудить :-)
+
avatar
+3
сам не брал, но знакомый берёт транзисторы на али в магазине Aoweziic Raw material spot Store, говорит орига
+
avatar
  • mooni73
  • 18 октября 2022, 21:57
+3
Реально интересно: каково будет сопротивление при токе в 5А, указанном в мануале для этого измерения. Ведь собрать простейший стенд не сложно. Не нужно ни кодов, ни образцовых резюков»
+
avatar
  • tklim
  • 18 октября 2022, 23:17
+7
Забавно, сам придумал «прибор», Сам придумал методику измерения. На выходе получились какие-то цифры — не соответствует даташиту == подделка.
Там, вроде, написано 200мОм при каких условиях. При 30мА вролне нормально что выйдет меньше. На графиках там в основном токи от 1А начинают рассматриваються.
Ну а емкость затвора измерять мультиметром — еще более бесполезная затея. Тоже, в ДШ описаны и методика измерений, и условия. Так что бессмысленно сравнивать полученное с ДШ.

В лучшем случае, резисторы можно мерить таким методом.
Сам АЦП простой и удобный, но для измерения напряжений повыше — уже плохо подходит из-за достаточно низкого входного сопротивления и большой емкости.
+
avatar
  • sim31r
  • 23 октября 2022, 23:57
0
Если емкость затвора отличается в 10 раз, это явно повод задуматься, что тут что-то не так. Любые параметры измеренные идентично можно сравнивать.
Даташит это другое, там «практичная» емкость нужная для расчета заряда на переключение затвора. Даташит не пишется для определения подделок подручными средствами ))
+
avatar
+1
Там, вроде, написано 200мОм при каких условиях. При 30мА вролне нормально что выйдет меньше.
Сопротивление канала зависит от температуры (и в даташитах есть график), но от тока через транзистор — нет.
+
avatar
+2
/// авто переключение диапазонов /////////
 dig = mcp.readWire();  
 if(dig>131070&&n==0){mcp.setConfig(3,2);delay(50);n=1;}
 if(dig>131070&&n==1){mcp.setConfig(3,1);delay(50);n=2;}
 if(dig>131070&&n==2){mcp.setConfig(3,0);delay(50);n=3;}

Если dig окажется больше 131070, код последовательно присвоит n сначала 1, потом 2, потом 3. Это так и задумывалось?
+
avatar
  • jam_yps
  • 24 октября 2022, 01:36
0
Вероятно — да. Ну, не бинарное дерево, простой перебор.
+
avatar
0
Смысла использовать дерево на 4-х значениях нет) Вопрос тут в другом — если в первой строчке будет прочитано 131071, то по очереди выполнятся условия во второй, третьей и четвертных строчках. То есть, программа никогда не остановится на n = 1 или n = 2.

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.