MrVision

На Пикабу
123 рейтинг 1 подписчик 0 подписок 2 поста 0 в горячем
13

Русские ардуины: простые же платы, что там проверять?

Русские ардуины: простые же платы, что там проверять? Arduino, Arduino Nano V3, Уно, Электроника, Техника, Инженер, Пайка, Самоделки, Изготовление, Сборка, Длиннопост

Когда мы разработали первые Arduino-совместимые изделия на MIK32 Амур - ELBEAR ACE-UNO, и они завелись без «волшебного дыма» - мы воодушевились. После нескольких правок и пары итераций запустили небольшую серию – и поняли: «Хьюстон, у нас проблемы»… Далеко не все платы заводились сразу – сказывались особенности монтажа микроконтроллера (потребовалось определенное время, чтобы набить на этом шишек и наладить тех процессы и в нанесении пасты, и в ее оплавлении, и в самом выборе пасты), и иногда ошибки при монтаже на любой из стадий - авторастановщик/печь/отмывка/ручной монтаж... Как мы поняли довольно быстро - визуальный контроль не панацея, далеко не все получалось отследить «глазками»…

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

И делали это на первых порах не ребята на производстве, а высококвалифицированные инженеры, что конечно было в целом «из пушки по воробьям».

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

Попытки улучшить и ускорить проверку

Для упрощения проверки плат ELBEAR ACE-UNO на MIK32 Амур была создана специальная тестовая плата. Предварительно перед ее использованием всё так же проверялись уровни напряжений на тестпоинтах и отсутствие коротких замыканий на плате по питанию.

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

Тестовая плата при использовании с проверочной прошивкой позволяла проверить и цифровую, и аналоговую части платы. На ней находился набор светодиодов для каждого вывода проверяемой платы, переключатели для перемычек BOOT, некоторые дополнительные кнопки и светодиоды. Проверочная прошивка загружалась в проверяемую плату UNO (вместе с ней загружался и начальный загрузчик), а после тестовая плата надевалась сверху на проверяемую. Для проведения проверки проверяемая плата подключалась к ПК по интерфейсу USB, а на ПК открывалась программа монитора последовательного порта.

В прошивке на первом этапе все цифровые выводы платы по очереди выставлялись в 1, при этом на тестовой плате рядом с каждым выводом должен был зажигаться свой (только один) светодиод. Эта проверка позволяла выявить непропаи или закорачивания цифровых выводов платы.

На втором этапе проверялась работа АЦП и ЦАП – на двух каналах ЦАП формировались изменяющиеся в разные стороны уровни напряжений – один на увеличение, другой на уменьшение. Формируемые аналоговые сигналы подавались на светодиоды SDA, SCL на тестовой плате, а ожидаемые значения выводились в монитор порта. По итогам сравнения ожидаемых значений с яркостью свечения соответствующих светодиодов делался вывод о корректности работы каналов ЦАП.

Для проверки каналов АЦП в монитор порта на втором этапе выводились значения, измеренные на каждом канале. По умолчанию эти значения должны быть относительно маленькими. На тестовой плате есть кнопка, по нажатию которой на аналоговые выводы проверяемой платы подается высокий уровень напряжения. В процессе проверки платы данная кнопка нажималась, а проверяющий контролировал значения, выводимые в монитор порта – все они должны значительно увеличиться. Таким образом проверялась корректность работы каналов АЦП.

Помимо этого, в процессе проверялась работа встроенных на плату светодиода и кнопки.

Русские ардуины: простые же платы, что там проверять? Arduino, Arduino Nano V3, Уно, Электроника, Техника, Инженер, Пайка, Самоделки, Изготовление, Сборка, Длиннопост

После выхода пакета поддержки плат ELBEAR в ArduinoIDE к проверке добавился еще один этап – загрузка проверочного скетча на проверяемую плату в ArduinoIDE по интерфейсу USB и проверка работы интерфейса UART (при получении любых сообщений микроконтроллер эхом отправлял их обратно в порт).

Русские ардуины: простые же платы, что там проверять? Arduino, Arduino Nano V3, Уно, Электроника, Техника, Инженер, Пайка, Самоделки, Изготовление, Сборка, Длиннопост

Автоматизированная проверка плат

С появлением плат ELBEAR ACE-NANO на MIK32 Амур появилось и желание еще как-то ускорить и улучшить проверку плат после монтажа. Хотелось использовать для проверки не светодиоды и глаза проверяющего, а другой микроконтроллер, который сам будет принимать решение об успешности прохождения проверки. И почему бы для этого не использовать микроконтроллер с точно такой же платы с точно таким же набором выводов? И специальную тестовую плату делать не придется. Так родилась наша автоматизированная насколько это возможно проверка плат. Начали мы с платы ACE-NANO.

Для проверки нужна одна уже проверенная, заведомо рабочая плата NANO – она будет платой-мастером. В эту плату загружается специальная прошивка, которая управляет процессом проверки. Проверяемая плата изначально проверяется на наличие коротких замыканий, после чего в нее загружается проверочная прошивка (а вместе с ней и начальный загрузчик), которая слушает команды от платы-мастера и выполняет их. После загрузки прошивок проверяемая плата и плата-мастер соединяются друг с другом pin-to-pin в этакий «бутерброд», и плата-мастер подключается к ПК по интерфейсу USB.

Проверка состоит из нескольких этапов:

•  Stage MISO: проверяемая плата по очереди изменяет состояние цифровых выводов, а плата-мастер считывает состояние выводов и анализирует результаты.

•  Stage MOSI: плата-мастер по очереди изменяет состояние цифровых выводов, проверяемая плата считывает состояние выводов, отправляет результаты мастеру, а тот их анализирует.

•  Stage Analog: плата-мастер по очереди подает высокий уровень на все аналоговые выводы, а проверяемая плата каждый раз измеряет напряжение на всех своих выводах и отправляет результаты мастеру, а тот их анализирует. Проверяются и прямые каналы АЦП, и переключаемые.

•  Stage OTP content: проверяемая плата считывает из OTP памяти тестовую строку и результат отправляет плате-мастеру. Если память не запитана, плата-мастер получит пустую строку, а проверяющему придется проверить плату вручную.

•  Stage End Time: на этом этапе проверятся точность работы часов реального времени на проверяемой плате – при старте проверки по команде время заводится на обеих платах, а на данном этапе проверяемая плата присылает свое текущее время. Если оно близко к времени платы-мастера – с трактом часового кварца все в порядке.

На этапах MISO, MOSI, Analog в каждый момент времени активен только один вывод. Если это так – этапы проверки пройдены успешно. Если нет – в монитор порта выводится информация о «лишних» сработавших выводах – это повод проверить указанные выводы вручную.

Русские ардуины: простые же платы, что там проверять? Arduino, Arduino Nano V3, Уно, Электроника, Техника, Инженер, Пайка, Самоделки, Изготовление, Сборка, Длиннопост

После успешной автоматизированной проверки проводится проверка в ArduinoIDE – по интерфейсу USB в проверяемую плату загружается проверочный скетч, в котором проверяется работа встроенного светодиода и интерфейса UART – все сообщения, полученные от ПК, микроконтроллер отправляет обратно в порт. Этот этап остался неизменным.

Такая проверка для плат ACE-NANO нам понравилась, поэтому было решено сделать аналогичную проверку для плат ACE-UNO. Проверка производится точно так же, как с платами ACE-NANO. Единственное отличие – платы ACE-UNO не получается соединять «бутербродом» из-за некоторых разъемом, поэтому платы соединяются pin-to-pin проводами.

Русские ардуины: простые же платы, что там проверять? Arduino, Arduino Nano V3, Уно, Электроника, Техника, Инженер, Пайка, Самоделки, Изготовление, Сборка, Длиннопост

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

Ссылка на проект: https://elron.tech/russian-arduino-compatible-board/

Показать полностью 11
10

Программно-определяемые радиосистемы SDR Hack RF One и другие - что лучше - оригинал, российское изделие или китайский клон?

Программно-определяемые радиосистемы SDR Hack RF One и другие - что лучше - оригинал, российское изделие или китайский клон? Электроника, Sdr, Радиосистема, Радиолюбители, Техника, Инженер, Длиннопост

Мир радиосистем довольно сильно изменился после появления такого понятия, как SDR - software defined radio - программно-определяемые радиосистемы (ПОР).

SDR (ПОР) - это система радиосвязи , в которой компоненты, традиционно реализованные в аналоговых аппаратных средствах (например, микшеры, фильтры, усилители, модуляторы/демодуляторы, детекторы и т.д.) вместо этого реализуются с помощью программного обеспечения на компьютере или встроенной системе. Работы над SDR велись ориентировочно с 1970х годов, существовал ряд проектов по этому направлению. Но все они были дорогими, и далеко не для всех.

И только в 200х было обнаружено, что USB адаптеры DVB-T с контроллером и тюнером Realtek RTL2832U и Rafael Micro R820T и ценой 10-20$ могут использоваться в качестве широкополосного 3 МГц SDR-приемника.

Программно-определяемые радиосистемы SDR Hack RF One и другие - что лучше - оригинал, российское изделие или китайский клон? Электроника, Sdr, Радиосистема, Радиолюбители, Техника, Инженер, Длиннопост

Эрик Фрай выпустил выпустил первое программное обеспечение для использования чипсета RTL2832U в SDR-приложениях, что стало основой для создания RTL-SDR. Именно RTL-SDR считают прародителем современных SDR систем - с ним стоимость SDR систем упала фактически на порядок, а с низкой стоимостью резко повысилась доступность данных систем. А главное появилось необходимое программное обеспечение. Проект существует и развивается и сегодня:https://www.rtl-sdr.com/

Программно-определяемые радиосистемы SDR Hack RF One и другие - что лучше - оригинал, российское изделие или китайский клон? Электроника, Sdr, Радиосистема, Радиолюбители, Техника, Инженер, Длиннопост

На базе RTL-SDR появился интересный проект KrakenSDR - когерентная система на базе 5-ти RTL-SDR для пеленгации радиосигналов (прародитель - KerberosSDR на базе 4-х RTL-SDR): https://www.krakenrf.com/

С ростом распространенности SDR систем появилось и много различного программного обеспечения, начиная от уже существующего и расширяемого по поддерживаемым платам RTL-SDR https://www.rtl-sdr.com/, продолжая простой, примитивной но и очень работоспособной https://www.gqrx.dk/, главной лошадкой SDR https://www.gnuradio.org/ и многими другими программными решениями.

Среди SDR систем в диапазоне до 3,8 ГГц появилось много интересных и относительно недорогих систем (но конечно дороже RTL-SDR за $10-20):

  • bladeRF x40 (300 МГц-3,8 ГГц, ширина канала 28 МГц, частота дискретизации 38,4 Мвыб/с), $420;

  • LimeSDR (100 кГц-3,8ГГц, ширина канала 61,44 МГц, частота дискретизации 61,44 Мвыб/с), $299.

Мир не стоит на месте, верхнего диапазона 3,8 ГГц стало не хватать, появился ряд SDR, работающих на частотах до 6 ГГц (на самом деле сейчас уже по некоторым задачам 6 ГГц мало...):

  • Per Vices Crimson (0 МГц-6ГГц, ширина канала 1200 МГц, частота дискретизации 370 Мвыб/с), $6500;

  • Ettus USRP B205mini (70 МГц-6ГГц, ширина канала 56 МГц, частота дискретизации 61,44 Мвыб/с), $750;

  • Hack RF One (1 МГц-6ГГц, ширина канала 20 МГц, частота дискретизации 20 Мвыб/с), $299.

Почему цена у устройства Hack RF One такая низкая, несмотря на верхний диапазон в 6 ГГц?

Все дело в конструкторском подходе: для устройства авторы использовали дешевую микросхему для трансивера - MAX2839 в ревизии r9 (а в ревизиях r1-r8 - MAX2837). Эти микросхемы разработаны для работы в сетях WiMAX, имеют рабочий диапазон частот от 2,3 до 2,7 ГГц. Все остальные частоты Hack RF One отрабатывает за счет переноса сигнала в "родную" частотную область 2,3-2,7 ГГц (или наоборот из нее, если мы говорим о генерации сигнала). Этим же объясняется значительно более высокая чувствительность устройства в этом диапазоне частот (или сила выходного сигнала при генерации)

Теперь переходим к самому интересному - сегодня мы каждый день работаем с цифровыми устройствами, и привыкли к к тому, что устройство или работает, или нет. Аналоговые устройства обычно ведут себя иначе - у них бесконечное множество степеней свободы, и часто для хорошей работы нужна тонкая настройка.

В отношении плат SDR действует и то, и другое, так как изделие содержит и аналоговую и цифровую часть. Переходя к сути - наши азиатские коллеги давно и успешно делают клоны практически всех плат SDR, как правило очень дешево, но так ли хорошо они работают, и работают ли как задумали авторы проектов?

Как выясняется, нет... Авторы проекта Hack RF One еще в далеком 2021 году обратили на это внимание в своей статье, проведя сравнение оринигинального Hack RF One с клоном https://greatscottgadgets.com/2021/12-07-testing-a-hackrf-cl...

Программно-определяемые радиосистемы SDR Hack RF One и другие - что лучше - оригинал, российское изделие или китайский клон? Электроника, Sdr, Радиосистема, Радиолюбители, Техника, Инженер, Длиннопост

Получается, что покупая клон Hack RF One, USRP, limeSDR или другого SDR дешево от наших азиатских коллег, мы получаем кота в мешке... Работать устройство будет (вполне вероятно), но выходит ли оно на те параметры, которые заложил автор проекта SDR? И следующий вопрос - а что будет с характеристиками конечного изделия, в котором используется SDR? А если применяется несколько SDR плат, и все ведут себя по разному?

Так как вопросов к изделиям азиатских коллег много, при этом непонятно кому их задавать, оригинальные платы стоят ой как недешево и есть вопросы с импортом, было решено локализовать производство плат Hack RF One. Первые изделия вышли в 2024 году, к середине 2025 года вышла уже 4я ревизия плат в разном исполнении, последняя из которых - r9c (с USB Type-C и отдельных 2-х пиновым разъемом питания). Первые испытания у коллег в различных устройствах показали, что наши изделия работают стабильно, а также лучше азиатских клонов.

Для подтверждения (или опровержения) гипотез о плохой работе азиатских клонов (а мы слышали информацию от коллег о высоких вариациях в характеристиках и периодически о ненадежной работе) мы попросили наших партнеров из НГТУ провести небольшие сравнительные испытания наших изделий и китайских плат в условиях, в которых проводилось испытания оригинальных GSG Hack RF One в статье, и наложить все на один график.

Даже на этой небольшой выборке из 2-х наших плат, 2-х китайских и наложенными данными оригинальной платы GSG Hack RF One видно, что китайские платы ведут себя по-разному - одна ведет себя неплохо, а вторая в диапазоне частот до 2,3 ГГц на 10 дБ хуже по чувствительности, в диапазоне 2,7 ГГц и выше ведет себя получше (чувствительность хуже в диапазоне 0...5...7 дБ), но тоже хуже оригинальной платы и плат нашего производства. Платы нашего производства ведут себя не хуже оригинальной (в рамках наложения).

Причины поведения азиатских клонов скорее всего в том, что применяется не соответствующий спецификациям текстолит, некачественные компоненты, а главное, отсутствует 100% контроль изделий на должном уровне, что позволило бы выявить разброс параметров и предпринять необходимые действия по устранению этого разброса. К сожалению мы при производстве плат сталкивались с ситуациями, когда ряд компонентов не работает должным образом (индуктивности, фильтры), и их замена решает проблему (иногда всей партии), коллеги выявляли в китайских клонах дефектные АЦП, хотя "по бумагам" все верно. Эти моменты можно выявить только промежуточным или выходным контролем.

Для обеспечения 100% промежуточного контроля с оцифровкой результатов по работе на прием и передачу мы приняли решение использовать те же платы SDR Hack RF One в своих стендах проверки плат Hack RF One - это не совсем правильно, но при правильном подходе (верификация плат-эталонов, последующая проверка конечных изделий "по полной программе") позволяет выполнять проверки на прием и передачу гибко, быстро, а главное практически исключить человеческий фактор, добившись стабильных результатов в работе конечных изделий. У нас остается "цифровой паспорт" изделия, который мы можем всегда поднять, посмотреть что было, и например что стало после работы устройства, повторить испытания и сопоставить первоначальные испытания.

Мы протестировали китайские изделия на наших стендах.

Программно-определяемые радиосистемы SDR Hack RF One и другие - что лучше - оригинал, российское изделие или китайский клон? Электроника, Sdr, Радиосистема, Радиолюбители, Техника, Инженер, Длиннопост

И вот что получилось (при измерениях используется ослабление в 30 дБ):

Программно-определяемые радиосистемы SDR Hack RF One и другие - что лучше - оригинал, российское изделие или китайский клон? Электроника, Sdr, Радиосистема, Радиолюбители, Техника, Инженер, Длиннопост

Здесь все хорошо - испытуемая плата (dut) работает как надо, и на прием, и на передачу, отклонения от рефернсного результата (ref) незначительны, в пределах 1 дБ по приему и в пределах 1,75 дБ по передаче

Программно-определяемые радиосистемы SDR Hack RF One и другие - что лучше - оригинал, российское изделие или китайский клон? Электроника, Sdr, Радиосистема, Радиолюбители, Техника, Инженер, Длиннопост

Тут все работает на прием до момента включения усилителя (4,5 ГГц), и отвратительно работает на передачу

Программно-определяемые радиосистемы SDR Hack RF One и другие - что лучше - оригинал, российское изделие или китайский клон? Электроника, Sdr, Радиосистема, Радиолюбители, Техника, Инженер, Длиннопост

Здесь на прием все хорошо, но на передачу, в зоне включения усилителя (4,5 ГГц и выше) начинается беда...

Разработанные стенды теперь работают, обеспечивая необходимый уровень контроля плат Hack RF One и стабильность в результатах работы устройств.

Выводы: платы SDR в целом, и SDR Hack RF One - очень хорошее решение в радиосистемах, позволяющее решать массу разнообразных задач гибко и недорого, но крайне важно качество изготовление данных устройств. Клоны от азиатских коллег стоят дешево, но к сожалению это "кот в мешке". Клон для ознакомление с работой решение вполне себе нормальное, для серийного применения в конечном устройстве - решение спорное, как в плане выхода на планируемые характеристики, так и в плане надежности работы устройства.

Ссылка на страницу проекта: https://elron.tech/russian-hack-rf-one/

Показать полностью 25
Отличная работа, все прочитано!