суббота, 22 декабря 2018 г.

Hantek 2C42 vs USSR C1-65A

Небольшой тест для сравнения советского аналогового осциллографа С1-65А и китайского Hantek2C42.
Сигнал снимался с разъема платы разработчика, с микроконтроллером STM32F103VET6. Частота 998кГц. Режим скорости нарастания импульса GPIO_speed=50MHz.

На картинках слева и справа настройки напряжений и скорости развертки осциллографов идентичны. Сразу бросается в глаза несоответствие амплитуды. Судя по картинке с китайца амплитуда сигнала почти 4 В, но это конечно невозможно, ведь микроконтроллер питается напряжением 3.3В. Так что тут нас обманули, и никакие автоматические калибровки мне не помогли (На самом деле этот дефект пропал после обновления прошивки FPGA).

Но вот с отрисовкой переходного процесса и форме фронта ситуация кардинально повернулась на сторону Hantek. Увидев такую разницу не в пользу советского агрегата мне стало интересно, на самом ли деле там присутствуют такие переходные процессы, или может китаИц их "придумал"? 
Для этого я изменил прошивку на тестовой плате, на этот раз уменьшил скорость нарастания импульса GPIO_speed=2MHz. 
Вот что получилось:


Видно, что фронт стал более пологим, а выброс переходного процесса значительно уменьшился.  Картинка на С1-65А при этом почти не поменялась. Сложно сказать где этот переходной процесс образуется, на тестовой плате или внутри "китайца", но АЦП его обрабатывает коректно, не смотря на то, что частота колебаний превосходит 60MHz.

Еще в Hantek есть режим отсечения высокочастотной состовляющей Bandwidth Limit, вот пример:
Hantek2C42 BWLimit
Кого интересуют внутренности устройства, Вам сюда!

Hantek 2с42 что внутри? (HT2xxx)


Hantek 2c42
Устройство относится к Hantek2000 series, которая на данный момент состоит из четырех моделей: 2C42, 2D42, 2C72, 2D72. Визуально они отличаются, только маркировкой, модели "D" в отличии от "C" имеют встроенный DDS генератор, а "4" и "7" указывает на bandwidth 40MHz и 70MHz соответственно.


Полное описание, документацию и программное обеспечение можно найти на сайте производителя hantek.com.

Устройство может быть подключено к компьютеру по USB, для обновления прошивки. Так же имеется приложение с помощью которого можно управлять режимами и собирать данные или просто пользоваться как USB осциллографом.

По работе с этим прибором я сниму видео-обзор, но немного позже. Подожду пока китайцы  выпустят обновление прошивки, в котором исправят многочисленные недочеты.

Ну а с аппаратной частью уже ничего не поделаешь, так что начнем!






Питается устройство от двух параллельно соединенных Li-ion аккумуляторов (18650).
Hantek2c42 разборка

С помощью импульсных преобразователей формируются основные напряжения: 3.3V и двухполярное ±5V.



Hantek2c42 PCB HT2xxx_M
С другой стороны платы установлены две реле. Они коммутируют входы в зависимости от режима работы. Левее находится трансформатор, с помощью которого питание мультиметра гальванически отвязано от осциллографа (USB и осциллограф имеют общую землю). Емкость между землями составляет 2.2nF.


Hantek2c42 PCB HT2xxx_M

А тут мы видим пьезо-зуммер KLJ-1230, пищалку. Он на плате, далеко внутри корпуса, поэтому при работе слышно его не очень хорошо. Так что придется привыкать или как-то переделывать самому.

Hantek2c42 PCB HT2xxx_M

Шлейф соединяет основную плату с платой управления, на которой установлен дисплей, кнопки и процессор (микроконтроллер).

Hantek2c42 в разборе (обе платы)

Тут хорошо видно гальваническую развязку на оптронах EL817. А также ПЛИС или точнее FPGA LCMXO2-1200HC-4TG100C от Lattice. Самое интересное происходит именно в ней, данные из АЦП заносятся во внутреннюю память размером 8KB. Тактируется он от внешнего генератора на 25MHz, более высокие частоты сэмплирования получаются благодаря встроенной PLL. Там вообще много интересного в этой микросхеме datasheet.


Гальваническая развязка
Применен 8-битный АЦП AD9288BSTZ. В этом осциллографе он сильно разогнан.
Также тут видно отсутствующую микросхему U12, тут должен быть ЦАП в моделях с DDS. В оригинале устанавливают 3PD5651 (3PEAK ), но вместо него можно поставить DAC900E или DAC902E.


Удивительно, что распаяна вся обвязка отсутствующих микросхем, не хватает только выходного усилителя U13. Как для китайцев выглядит очень расточительно. Если впаять недостающую микросхему (EL5166ISZ или LMH6702) и несколько резисторов, а также ЦАП, то прибор распознается как модель с DDS генератором без необходимости редактировать программное обеспечение.



На второй плате установлена еще пара DC-DC преобразователь для питания подсветки. И контроллер зарядки через USB.

Hantek2c42 PCB HT2xxxKB

С другой стороны платы управления находится 40-pin разъем дисплея и основные "мозги" устройства. Микроконтроллер STM32F103VET6.
Можно заметить, что на плате разведен разъем для MicroSD, в корпусе так-же предусмотрено для него отверстие. Возможно эта опция появится в следующих моделях.
В углу платы видны контакты для прошивки и отладки микроконтроллера.
Hantek2c42 PCB HT2xxxKB


Ну и напоследок фотография дисплея P028H026-TP


Продолжение следует...


Если захотите и себе такого "зверя" –  приобретать рекомендую в фирменном магазине: Hantek Official Store.






Видео обзор:



пятница, 7 декабря 2018 г.

Драйвер трехфазного шагового двигателя на транзисторах (часть 2)

Небольшие изменения в схеме.

Добавлены конденсаторы.
Добавлен TVS диод, который защитит схему. Если кто-то покрутит двигатель, на выключенном устройстве он будет работать как генератор, и избыточное напряжение будет поглащено диодом.
Добавлен линейный стабилизатор для формирования +5В для питания дисплея и платы с микроконтроллером. И переменный резистор для формирования напряюения VO дисплея 1602A (контраст).

Полная схема драйвера и входного стабилизатора

Разведена плата
3D вид будущей платы

А вот уже плата после изготовления и пайки компонентов:





четверг, 6 декабря 2018 г.

Драйвер трехфазного шагового двигателя на транзисторах (часть 1)

Возникла необходимость управлять таким двигателем. Иероглифы я понимаю мягко говоря не очень хорошо, но покрутив в руках сам движок я понял, что это трехфазный шаговый двигатель. Из него выходит 6 проводов, в устройстве где он был установлен провода подключались по схеме триугольник, но для уменьшения тока я думаю лучше будет произвести соединение звездой.

Нужен мне этот двигатель для перемешения камеры, а именно слайдера во время съемки видео. Иногда это будет несколько оборотов в секунду, а иногда может и оборот в час, для съемки timelapse. Управление будет производится микроконтроллером STM32F103C8. Он как раз имеет аппаратную поддержку комплиментарных выходов с таймера, это должно облегчить программирование. Но вот с аппаратной частью у меня возникла небольшая загвостка, так как никогда не имел дела с построением таких драйверов. После нескольких часов раздумий и поисков по разным коробкам микросхем я нарисовал вот такую схему:
Выводы AH,AL,BH,BL,CH,CL пойдут прямо к микроконтроллеру, а выводы Out_A, Out_B и Out_C к обмоткам двигателя. Силовые транзисторы выбрал IRF7319, комплиментарная пара N- и P-MOSFET в одном корпусе SO8. Предполагается, что ток в обмотках не будет превышать 2 А, так что мощности этих транзисторов достаточно с запасом. Оба транзисторы управляются драйвером нижнего ключа IR4426.

Как думаете, нужно ли вообще в таких устройствах (с напряжением 10-15 В и токами до 2 А) заморачиваться с dead-time, или можно просто соидинить затворы верхнего и нижнего ключа? Стоит ли добавить внешние диоды параллельно транзисторам, или это тоже лишнее?

среда, 5 декабря 2018 г.

Китайский припой!


Давно паяю припоем Proskit 8PK-033A-L. Он меня посностью устраивает своим качеством, но вот по цене хотелось бы найти что-то подешевле.

Решил поискать припой на aliexpress. Нашел припой в два раза дешевле чем Proskit. В описании написанно, что припой очень хороший, содержит серебро и т.д.
Но когда заказ пришел оказалось, что пользоваться им невозможно. С помощью обычного паяльника еще как-то паять можно, но уверенности в качестве пайки нет никакой, да и на вид он не блестит совершенно.

  

После нескольких неудачных попыток пайки я решил провести несколько экспериментов с этим припоем. Вначале измерил температуру плавления, оказалось аж 270°С! Сразу стало интересно, чего туда намешали китайцы в этот припой. Есть ли там серебро, есть ли там свинец, или может это бессвинцовый припой, поэтому и температура плавления так велика?

Для эксперимента взял 1 г припоя, растворил его в горячей концентрированной азотной кислоте. Олово выпало в осадок в виде оловянной кислоты. Раствор профильтровал и добавил в него соляной кислоты. Получилось 0.6г белого осадока, какого-то нерастворимого хлорида, может быть свинца, а может быть и серебра.

Обнаружить хлорид серебра можно по его свойству темнеть на свету из-за востановления металического серебра (2AgCl2  2Ag+Cl2). Я посветил несколько секуно УФ лазером на порошк.

Но цвет не изменился, как был белым так и остался. Значит серебра в составе нет.

Теперь нужно удостоверится что это хлорид свинеца.

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

PbCl2 + 2 KI → PbI2 + 2 KCl
Чтоб уж почно быть уверенным, что это свинец, и в составе нет серебра я провел еще одну реакцию, с бихроматом натрия. В осадок выпал ярко желтый хромат свинца! Если бы тут было серебро осадок был бы красным. Сомнений не осталось.
Na2Cr2O7 + 2 Pb(NO3)2 + H2O = 2 PbCrO4 + 2 NaNO3 + 2 HNO3

Китайцы опять обмалули, открыл спор, вернул деньги, придется опять заказывать Proskit по 15$ за 100г.
Если кто подскажет хороший припой, подешевле, буду благодерен.

А вот и видео сравнения плавления двух припоев в потоке горячего воздуха от фена: