Я старался. Решил сегодня провести тестовые измерения, столкнулся с программной проблемой с вашим прибором. Во вкладке "Измерение" ползунок переставляется по частотам 100Гц-1кГц-10-100-187, но измерение все время происходит на одной частоте, ползунок ездит, частота не меняется, в командной строке все время запись "Период= 720 000" Частота 100Гц. Печаль- беда.
Запустилась, но не с первого раза. Теперь частота переключается. Еще один глюк программы - работает не всякий раз, при обращении к устройству (измерение/попытка прокалибровать) через раз выдает такую ошибку Не работает чаще, в несколько раз, чем работает
Чтож, Виндовса у меня нет. Так что и дальше придется в таком режиме править ошибки.
Раскодировал ошибку, что у тебя на скриншоте. "Операция вводавывода была прервана из-за завершения потока команд или по запросу приложения." Определенная зацепка, хоть и слабенькая.
Такой вопрос - если запустить калибровку, подождать когда она закончится и запустить ее опять. И так несколько раз - будет такая ошибка вылезать? Если с калибровкой будет нормально, тогда понятно как окно измерения переделать надо будет.
Если же с калибровкой будет ошибка - то скопируй мне больший кусок лога, а то там куска стека не видно, непонятно что к чему.
Если в принципе нет устройства - программа запускается, но все операции, кроме просмотра графика не работают - пишет нет подключения к устройству. Если подключить и клацнуть по вкладке - открываются соотв. вкладки. В этом месте сбоя не было ни разу. Если просто войти во вкладку калибровки, не запуская саму калибровку, так же всегда работает. Если нажать кнопку калибровки любого сопротивления или открытые/замкнутые щупы - вот здесь начинаются сюрпризы, то же самое если из меню нажать кнопку "Измерение". Если прибор заработал, то он работает стабильно до закрытия программы или отключения от ЮСБ, можно заходить или выходить из вкладок,- все работает. Только полностью закрыл прогу, или разорвал ЮСБ- через 5 сек запускаешь - уже не работает. Только что подключил устройство- заработало с первого раза, все ОК. Далее закрываю программу, жду 5 сек, запускаю, жму "измерение"- ошибка. Опыт повторял 10 раз- одно и то же. На 11 раз захожу во вкладку Калибр. нажимаю "калибр разомкн. щупы"- пошла калибр., закрыл вкладку, нажал измерение- тоже работает. Провел следующий опыт - если запускать скрипт и первым делом не жать "Измерение", а заходить в калибр и запускать калибр. открытых щупов- далее скрипт нормально измеряет. В 50- 90% все ок. Если запустить скрипт и первым делом нажать "Измерение" почти наверняка выскочит ошибка, при этом калибровка уже 100% не запустится. Насколько смог определить беглым взглядом, ошибки от вкладки Изм и Калибр отличаются. Работает на 2-х ПК с ВинХР одинаково.
Теперь внес небольшие изменения. Теоретически теперь в пункте "Измерить" не должно быть USB Error, но начнет сильно тормозить интерфейс. Если падения прекратятся, то доделаю этот вариант, чтобы не тормозил интерфейс.
Чтож, боюсь что мысли по этому поводу у меня закончились
В проекте VNA избавился от всех этих проблем - там пишу код на Qt и C++ и инициализирую USB как обычный Virtual COM порт. А здесь уже видимо какой есть кривой код, такой и останется.
Просто этот код нет смысла развивать. Когда делал эту железку - надеялся, что libusb для Питона будет работать в асинхронном режиме. И вот - прошло пару лет, а воз и ныне там.
Сейчас уже понятно, что проще и надежнее делать на стороне железки Virtual COM Port. А на стороне ПК использовать C++ и QT. Уже немало повозился с этой связкой - работает достаточно стабильно. Но блин времени на это надо много. Поэтому забил.
Начал сравнивать в тот день когда стало ясно, что программа частоту не меняет. Соответственно на тот момент мог адекватно измерять только активное сопротивление вашим прибором. Недавно улучшил показания RLC USB на домашнем ПК. Обратил внимание на помехи в графиках На разных БП помехи отличались, взял свободный БП, установил нормальный фильтр по сети, помехи значительно снизились, заземлил корпус ПК на батарею, стало еще лучше, графики стали идеальными, показания стали намного стабильнее, без дерганий. В измерении сопротивлений прибор Bob1 намного точнее, особенно это заметно до 1R и после 100К Измерял резисторы на 1КГцб тот же ПК, те же щупы. Для остроты теста провел измерения и прибором Neekeetos, он у меня недавно так же появился, правда следует иметь ввиду, что там пинцет, с худшим контактом и более шумный.
SMD 2512 0,050 Bob 49,6 +/- 0,1mR Bal 49,6 +/-0,3mR Nik 44-45mR SMD 15mR Вов 14,7 +/- 0,1mR Bal 14,7 +/- 0,2mR Nik 10,5-11mR 5w 0,22R Bob 216,7 +/-0,2mR Bal 217,2+/-0,4mR SMD 1206 4,99K 1% Bob 4990R Bal 4991R Nik 5013-5014R SMD 1206 200K Bob 199,4K +/-0 Bal 199,6 +/-0,1K SMD 1206 2,2M Bob 2,239-2,240K Bal 2160-2200K Nik 2230-2320K
Измерял ёмкость разъема RCA прибором Bob на 50КГц плавает 1,345-1,350р, получается +/- 0,0025пФ Neekeetos 97KHz 1,2-2,2p На меньшей по размеру емкости (сгоревший термопредохранитель ) Bob получался разброс 3,154- 3,157пФ Индуктивность в 0805 в 10нГн только им не вышло измерить (Bob 50K 208,5-209mR 2-3nH), (Nik 97k 207-209mR 7-11nH) вот здесь ваш прибор должен фору дать.
но малые индуктивности мне не очень нужны, с СВЧ не работаю.
На вашем приборе при разомкнутых и закороченых щупах показания сильнее колебаются. Open 100Гц Bob 50M 0-3p Bal 20-100M 0-30p Nik 1k 10-50M 10p-1kHn Short Bob 0,0-0,4mR Bal 0-1mR Nik 0-1,5mR Измерял на 100Гц Low ESR кондер Capxon 470мкФ 16v почему-то значения ощутимо отличаются Bob 463,5мкФ 107,5mR Bal 456, 6 +/-0,1мкФ 118mR По стоимости (и качеству) комплектующих ваша конструкция самая дорогая, но потенциал не реализован в полной мере. b]Neekeetos[/b] -а простая и дешовая в повторении , хоть точность измерения и ниже, но для большинства случаев её более чем достаточно. Конструкция Bob1 , кажется восьмилетней давности разработки, тем не менее лучше. Точность на высоте. Программа ставится и управляется до безобразия просто, интуитивно понятно. читабельность отличная, без глюков. Калибровки достаточно O-Sh, есть возможность более точных, но меня и так устраивает.
Ага, спасибо. Делал эту железку больше для тренировки.
У RLC измерителя Bob1 - насколько часто обновляются результаты на экране? Думаю может добавить пункт в меню делать каждое измерение подольше, но несколько точнее.
Ага, спасибо. Делал эту железку больше для тренировки.
У RLC измерителя Bob1 - насколько часто обновляются результаты на экране?.
под рукой сейчас нет его, на вскидку более 1Гц, менее 2Гц, не мельтешит и не тормозит. Полагаю, что можно подняв амплитуду тестового сигнала можно получить результат куда выше, чем программным интегрированием + тормознутость будет раздражать. Столкнулся еще с одной неприятной мелочью - измеряем проволочку 0,15мм толщ, 45 мм длиной 10кГц 40,6мОм 80-83нГн, 93к 35мОм 128нГн, 187k 41,5мОм 134нГн Ладно реактивная составляющая поплыла, но активная ведь должна относительно точно измеряться- дело не хитрое + калибровка Short и 1Ом. Полагаю дело в емкостях каналов и коммутируемой емкости в канале генератора, либо в расчетах проги закралась ошибка. При каких условиях подключается конденсатор 3,3нФ через Analog SW?
Попробую по свободе поднять тестовый сигнал, опустить КУ в каналах, посмотрю как скажется на точности. Смотрел в канале тока осцилом при разомкнутых щупах- шум видно при 10мВ на клетку, включаю ИБП на 250Вт без фильтров в полуметре, амплитуда помех до 30мВ
Конденсатор 3.3 нФ подключается при частоте 100 Гц и 1 КГц. Иначе IV конвертор начинает возбуждаться на частотах 100-200 КГц. Если бы делал эту схему сейчас - фильтровал бы сигнал более тщательно. На 100 Гц явно не хватает фильтрации. Ну и подключил бы к питанию аналоговой части электролит побольше 100 или 220 микрофарад.
Повысил уровень тестового сигнала в 5 раз, (убрал 3К в делителе ) уменьшил усиление программируемых ОУ соответственно, на вскидку на 16дБ, поставил 56К. Добавил тантал 180мкф 6В 0,9 Ом по аналоговой части. Точность и стабильность показателей выросли невероятно! И превзошли по некоторым показателям USB RLC Bob1 Open теперь плавает на 100Гц от 400М до бесконечности, на 1кГц и 10 кгц - бесконечность, на 100кгц 650-690М, 187кГц 220-225М 0,022- 0,024пФ. Short 100 0,05-0,2мОм, 1кГц 0,04-0,07мОм, 10кГц 0,04-0,1 мОм, 93кгц 0,15-0,30мОм, 187к 0,06-0,15мОм 4,48- 4,55 нГн RCA 187kHz 1,267pF не плавает, сопротивление сер 8,22--8.37К Но есть косяки с верхним диапазоном проблема только, 2,2М 1% показывает 2,007К (1кГц) и расброс показаний по частотам Почему в прошивке устройства калибровка происходит только на одной частоте, а не на всех, как в скрипте? ? Это же 7 калибровок на 5 частот! 35 калибровок https://youtu.be/ux-Rt6QCCn0 https://youtu.be/kvs_N6Mrm_M
Попробовал на своем варианте большие сопротивления измерить. Правда попался резистор 4.65 МОм. Измерил при помощи UT71A.
На моем RLC измерителе показывает 4.61 МОм на частоте 1 КГц. Т.е. отличие в 1%, что для таких высокоомных резисторов допустимо. Кстати раз уж вы изменяли коэффициенты усиления - то вам возможно будет важен пункт меню Errors%.
Если на него нажать, то будет показываться ошибка в I/V каналах.
У меня для резистора 4.61 МОм на частоте 1 КГц показало. I% 1.4 V% 0,02
Как интерпретировать. В канале тока отличие от синусоиды 1.4 %. В канале напряжения 0.02% ошибка. Понятно, что для большого сопротивления ток очень маленький, и поэтому ошибка большая. А напряжение наоборот большое, поэтому ошибка незначительная.
Если изменяли коэффициенты усиления, то вполне могли залезть например по напряжению в нелинейную область. Если при измерении высокоомного резистора 2.2 МОм у вас V% вдруг неожиданно большой (больше 1%), то это значит, что вы залезли уже в нелинейную область, и синусоида стала не совсем синусоидальной.
Alex2 писал(а):
Почему в прошивке устройства калибровка происходит только на одной частоте, а не на всех, как в скрипте? ? Это же 7 калибровок на 5 частот! 35 калибровок
4,7М SMD 0805 , UNI-T M890 4,70M на 100Гц и 1кГц значительно хуже дела обстоят. возможно дело как раз в єтом кондере 3,3н. Еще вопросы- может стоило опорное напряжение для АЦП поставить 3,3/2= 1,65В, а не 2,5В и использовать полную амплитуду? Могу ли я попробовать этот вариант или без правки прошивки ничего не выйдет? Как будет реагировать МК, если я попробую сдвинуть опорное напряжение на центр питания МК? Видел, что вы писали об искажениях в R-t-R ОУ, но думаю, что выигрыш был бы больше. При каких условиях МК переключает режимы усиления напряжения и тока?
Напряжение ADC должно быть практически таким-же как и напряжение цифровой части (это в даташите написано).
При изменении коэффициентов усиления по хорошему надо подбирать цифры в process_measure.c (goodMin и goodMax). Но для этого надо перекомпилировать прошивку.
Большие V% на частотах 100Hz - 10KHz это уже значения, при которых ощибка получается приличная измерения. Явно в нелинейную область залезли немножко.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 20
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения