Activity
Еще предложения:
Защитные диоды на ШД могут нарушить работу. Будет постоянно циркулировать противоЭДС по катушкам через диоды. И нужны быстрые диоды, чтобы успевали восстанавливаться, иначе будет КЗ.
В Н-схеме ЭДС обмоток ШД выпрямляется и идет обратно в источник питания. Опасность в том,что напряжение питания поднимается - или БП уйдет в защиту, или дравер сгорит, если нет запаса по питанию.
А если поставить TVS по питанию и гасить, то выдержат ли встроенные в мосфет диоды такие токи)
В биполярном ШД на обмотках 2*Uпит. Например, БП на 24В. Драйвер рисует верхушку синусоиды на 24В, потом быстро меняет полярность и рисует низ синусоиды на 24В, а сама синусоида получается 24+24 = 48В!
Поэтому ставить диоды от катушек на Uпит нельзя.
Пишут, что H-мост за счет встроенных диодов (в мосфетах) всегда выпрямляет и делает помехи одной полярности.
Шаги не пропускает? При криволинейной обработке одновременно 2 ШД работают.
А если самому написать G-code простой, круги, треугольники вырезать? Будет и криволинейность, и точная математика (руками цифры вбили).
Здравствуйте.
Прошу подсказать, поспорить, подискутировать:
- нужен ли дампер на блок питания БП шаговых двигателей
- можно ли поставить TVS и варистор на выход БП вместо дампера
По п.1. Если дампер гасит помеху (создаваемую ЭДС при изменении вращения ротора ШД и прочие ЭМИ), то импульс тока протекает через драйвер ШД по длинным проводам вдоль всего станка! Это же плохо для драйвера, и провода излучают.
Стало быть, лучше гасить противоЭДС на самом ШД? Диодами, TVS или как-то еще. Причем, те же TVS успеют ли восстановиться и не закоротят ли драйвер?
По п.2. Если ставить TVS и варистор на выходе БП, то нужен ли резистор 5-30 Ом? Обычно TVS и варистор “коротят” помеху без резистора и очень быстро, с огромными токами. Есть варианты с мощным резистором 0.5 Ом последовательно питанию, чтобы ограничить ток, но сам TVS обычно идет без последовательного резистора. Еще варианты с синфазными и обычными дросселями, LC фильтрами разных конфигураций.
По железу. Есть БП 28В 15А. ШД 11кг 23HS6403 2,5А 1,3R 4,2mH.
По-моему, лучше выпить 1 раз в месяц по-крупному, чем каждый день по чуть-чуть.
Если регулярно, то организм привыкнет, стопка войдет в обмен веществ и закрепится (психоэмоционально, химически, физиологически), что равно “алкоголизм”.
А если редко и от души, то это как стресс-встряска, но не закономерность.
Стресс лучше снимать при помощи хобби, завести мастерскую хоть в квартире, после этого спать легко и приятно.
Электромотор можно включать при высокой скорости нажатия педали газа или кик-дауне, т.е. когда водителю нужно ускорение. А при торможении рекуперировать энергию.
Для 6ГГц спаял детекторы на диодах SMS7630.
КСВ около 2.0
Однако, направленный ответвлитель НО нельзя использовать сразу с двумя детекторами: детектор на “прямой” дает небольшое отражение обратно, которое приподнимает напряжение на порту “обратный”. В итоге, измерить КСВ завышается.
На “прямом” 850мВ, и “обратный” детектор своим мизерным отражением почти не меняет эту величину.
Когда на DUT - эталон 50R, и “прямой” порт заглушен эталоном 50R, то на “обратном” детекторе 2мВ.
Если на “прямой” добавить детектор, которые немного отражает, то на “обратном” уже 120мВ.
Похоже, придется измерять только “обратную”.
Или ставить 2 НО.
Улучшил мост.
Балансировал:
- стачивание земляной подложки
- полоска жести над плечом с перекомпенсацией
- экран, устраняющий перекомпенсацию
В диапазоне 0-2ГГц и 3-6 ГГц доли мВ. А на 2.0-2.1 ГГц подъем до 8мВ, наверное, резонансы на смд-элементах.
Написал приложение для браузера Chrome. Доступ к СОМ-порту, кнопочки, графики - всё очень просто.
Здравствуйте.
Всегда было интересно, что внутри. И как оно работает.
Вчера сломался китайский аттенюатор 10дБ 6ГГц. Показал обрыв цепи.
Разобрал легко - сдвинул трубку-экран.
Внутри - керамическая пластина с напылением.
Не ронял, не гнул, хранил в жестяной коробке, наполненной ППЭ с прорезями.
Похоже, центральный пин провернулся и отколол пластину. Припаять не получилось - напыление осталось на пинах и корпусе.
Еще нашел в сети аттенюатор Mini-Circuits VAT-3 и терминатор ANNE-50 Mini-Circuits
axotron.se/…/the-anatomy-of-a-broken-attenuator/
axotron.se/…/the-anatomy-of-a-broken-termination/
Я с обычным ESP игрался - там есть цифровые порты, аналоговых мало. SD-карточка пишется, TFT быстро рисуется, есть i2c, 1wire. Заливал NodeMCU nodemcu-build.com
Я вот только не понял, можно ли там организовать loop и жесткую синхронизацию времени, например, каждые 10мс что-то делать. Есть таймеры TMR, но их точность я не измерял. Возможно, wifi стек может передержать таймеры? Там упор на асинхронность и параллельность.
LUA - язык весьма интересный. Сильно обогатил знания о парадигмах программирования. tylerneylon.com/a/learn-lua/
x, y = bar(‘zaphod’) функция может возвращать несколько результатов через зпт.
Пытаюсь моделировать схему.
Разъем с микрополосками и резистором.
Установить диод в модель невозможно - программа не может создать геометрию с S-параметрами. Зато можно моделировать резистор, прописав его RLC.
Приходится моделировать схему до диода, экспортировать ее S-параметры. Потом в Qucs соединять 2 блока, первый с S микрополосок, второй - S диода от производителя.
Итого, новая версия. Жду текстолит 0.8мм с Али.
Если моделировать длинный кабель на входе схемы (80-200мм), то график на диаграмме Смита закручивается в компактное кольцо, КСВ менее 2.
Боковой заземленный stub такой длинный, чтобы набрать нужную индуктивность для согласования, и такую длину сложно испортить via и стыком. Если бы заземленный stub был 3мм, то via 0.8мм сократит его до 2.2мм(?) и стык мог бы легко исказить длину.
Удалось сбалансировать этот мост до 10 мВ на 6 ГГц.
Заводские антенны (клеверы и штыри) дают 70-100 мВ, так что запас чувствительности есть.
На 433Мгц быстро настроил антенну inverted Vee. Длину плеч рассчитал, а угол наклона подобрал по min напряжению перекоса моста.
Пытаюсь согласовать диод на 5.6 - 5.8 ГГц
Нужно еще как-то измерить ослабление от этого RL…
А то, может, проще 60 Ом шунт поставить.
Насчет странностей Qucs нашел отзыв support.fccps.cz/download/…/wifi_coupler.html
Автор отмечает, что моделирование нелинейных RF элементов в Куксе (СВЧ детекторов, например) - плохая идея. А вот простые RF устройства моделируются нормально.
Добило еще то, что я взял даташит на диод HSMS-286, где есть и диаграмма Смита, и spice. Набил в Кукс и получил совсем другую диаграмму!
Попробовал сделать схему согласования по даташиту - получается ерунда.
Сделал детектор как на известном форуме.
Результат впечатлил - дикая отраженка и слабое детектирование.
Мощность сигнала -4dBm
Детектор с аттенюатором 83мВ, КСВ входа 2.0
Детектор с radial stub 222мВ, КСВ входа 4.0
Детектор на кабеле 10мВ, КСВ более 5.5
Если использовать НО с четырьмя портами (измерять сразу прямую и обратную волны), то плохой детектор будет гнать отраженку обратно и искажать.
QUCS работает странно.
Калькулятор микрополоски дает ширину 2.4мм, хотя все другие калькуляторы в интернете и rfsimm99 дают 1.6мм.
Моделирую диод SMS7630-079LF
Первый вариант: набил SPICE из даташита
Второй вариант: прицепил двухполюсник SERIAL.s2p
Результаты сильно разные.
И как согласовать? Не то, чтобы микрополосками согласовать, даже чип-LC не получается.
№1
№2
Пробую бесплатный софт Qucs.
Загрузил туда S-параметры диода, которые взял на сайте производителя.
Здравствуйте!
Помогите, в какой программе можно моделировать СВЧ схему?
Я не настоящий специалист, домашний любитель. Диаграмму Смита и проводимости понимаю, SimSmith знаю.
Решил сделать детектор СВЧ для 5.8ГГц.
Есть диод SMS7630, насчитал у него Zo = 20 - 68j при 6ГГц.
Т.е. диод с паразитной ёмкостью. Диаграмма Смита для него дана в даташите.
Нужно согласовать его с линией 50 Ом.
В SimSmith я смог согласовать его при помощи 2х индуктивностей. Да, я могу попробовать найти сосредоточенные чип-индуктивности (lumped). Но ведь можно согласовать, используя распределенные элементы: 2 микрополоски: одну под 90 градусов на землю (заодно, защищает от статики), вторую - последовательно к диоду. В некоторых даташитах на детекторные диоды есть подобные схемы. Еще есть варинт, где катод диода идет на терминатор radial stub.
Но я не знаю программ, где можно такое сделать!
Т.е. ввести материал FR4 0.8mm Er=4.2, комплексное сопротивление диода, нарисовать микрополоски и radial stub, а потом подогнать размеры для согласования импедансов.
Наконец, дошли все 0603 компоненты!
Сделал мост версии 2.
На 5.8ГГц сбалансировал до 30мВ.
На 433 до 0 мВ, ясен перец.
На 433 работает идеально.
На 5.8Г чуткий к пассам руками. А перекос в 30мВ мешает ловить КСВ, когда антенна имеет плохой КСВ, но смещает эти 30мВ в обратную сторону. Т.е. должно быть |-60| = 60мВ, а получается -60+30 = 30мВ, как будто антенна идеальная =)
Короче, для 5.8Г лучше Н.О.
Здравствуйте.
Продолжая тему измерения КСВ…
Купил тут на форме направленный ответвлитель НО 4-8ГГц. Стал экспериментировать.
Самые точные результаты получаются по измерителю мощности от Сергея Панкратова. Но приборчик у меня один, а измерять нужно 2 канала.
Решил пожертвовать точностью и сделать показометр.
Диоды с Али, SMS7630 в корпусе SC-79.
Даташит предлагает печатку на 24ГГц из дорогущего материала Rogers 0.254мм.
В наличии только 1.6мм FR4. 0.8мм жду с Али.
Первый вариант с аттенюатором 3дБ. Это улучшает согласование, КСВ намерил 1.9 Но чувствительность уменьшилась. Зато этот детектор широкополосный, работает и на 433Мгц, и на 6ГГц. Но имеет слабую защиту от статики.
Второй вариант сделан под 5.7ГГц. Защита от статики - лучшая - λ\4 stub на землю. Для постоянного тока = КЗ, а для частоты 5700 - open circuit. Я попробовал на 433Мгц - КЗ! Потому что полоска под конкретную частоту. Сразу после диода λ\4 radial stub, пишут, что работает как терминатор.
Детектор испытал на 5665 Мгц, КСВ около 4, зато чувствительность выше, чем у первого варианта.
По мВ: первый вариант давал 89мВ из-за аттенюатора, второй - 225мВ, несмотря на плохой КСВ.
Детекторы прикручиваю напрямую к НО, без пигтейлов.
Попробовал во втором варианте удалить radial stub, чувствительность упала в 6 раз! Например, вместо 38мВ получаю 6мВ.
Не знаю, как именно работает этот radial stub. Теоретически, он должен быть КЗ на этой частоте (терминатор). Но, возможно, он еще и как-то согласует…
uint16_t f_m = frequency / 100000L; //целая часть
uint32_t f_k = frequency % 100000L; //остаток
Выводим число f_m, потом точку, потом f_k
Мост (паянный-перепаянный, кривой, версии 1) удалось согласовать на 5.8ГГц до паразитных 0.099В, дальше не стал возиться. Проверил 2 заводских терминатора и 1 самодельный. На каждом получил около 0.099 В. Без нагрузки или с КЗ получаю 0.550 В. Генератор 200мВт подключен через аттенюатор 10дБ.
Над образцовым плечом 50+50 Ом напаял пластинку, максимально близко к резисторам для повышения паразитной емкости. А под выходным разъемом подточил земляную фольгу для снижения паразитной емкости в тестируемом плече.
Прибыли диоды SMS7630!
Мост ver.1 на SMS7630 заработал. Для второй версии жду смд-компоненты.
Проверил 446Мгц 100мВт в импульсном режиме, высокая скважность, телеметрия 1Гц.
Рассогласование бесконечность - 100мВ.
Согласование идеальное - 0.8мВ
Антенну InvertedVee смог согнуть на 2мВ.
Коаксиальный диполь заводской 433МГц дает 30мВ.
На 5.8ГГц всё веселее. Мост нужно балансировать!
Рассогласование бесконечность - 0.636 В
Согласование идеальное - 0.200 В
Антенны дают 0.280 - 0.400 В.
На выходе накрученный переходник с торчащим центральным пином работает как плохая антенна, давая 0.400В вместо 0.636В при пустом выходе.
Штырек RP-SMA === антенна на 5.8Г
Похоже, рассогласование моста лучше делать не открытым входом, а КЗ.
Ситуация такова, что решил отнести антенну подальше, впаял вместо разъема в передатчик кабель. Передатчик сегодня благополучно сгорел.
- после пайки проверили на КЗ?
- кабель внутри не имеет обрыва центральной жилы? (эквивалент включения без антенны)
Будьте добры, поделитесь файлами .mma MMANA для популярных антенн: клевер, хеликс, invVee, vee, GP и т.д.
Старые ссылки я нашел, но там 404 не найдено.
Почему вы так решили?
Извиняюсь, что влезаю. Интересная тема.
Одна антенна горизонтально, вторая - вертикально.
Варианты:
- чтобы не влиять друг на друга. Одна передает управление, вторая - принимает телеметрию. Одновременно! Маловероятно - и помеха перекрестно пролезет, и одновременно передавать и слушать - не правильно, и теряется маневр по поиску удачной поляризации.
- имеется “диверсити” - какая антенна принимает бОльший сигнал (м.б. и шум, без анализа полезной нагрузки), та подключается к приемнику \ передатчику поочередно.
- ФАР - маловероятно и дорого.
Поэтому поляризация или вертикальная, или горизонтальная, смотря какую антенну подключит схема (ASM antenna switch). У frsky такой стоит на приемниках.
Тут пишут, что переключение антенн хитрое. Пока RSSI большое, работает первая попавшаяся антенна. А если RSSI падает, то начинается переключение антенн для поиска лучшей. Или даже просто антенны переключаются, когда начинаются теряться пакеты - это даже умнее, чем по RSSI, который может радоваться сильному шуму вместо полезной нагрузки. Пакеты теряются -> переключаем антенны (а их всего 2), вдруг повезет.
openrcforums.com/forum/viewtopic.php?f=97&t=10603
Это дешифратор различных протоколов?
нарисовать такую плату в спринте не сложнее чем в любом другом CAD … расчитывается ширина вч дорожек и зазоры до земляных полигонов под конкретный материал платы и рисуется согласно расчетам
Я взял FR4 1.6мм, у него диэлектрическая константа сигма-эр Er от 4.0 до 4.9 как повезет.
Калькулятор chemandy.com/…/coplanar-waveguide-with-ground-calc…
Чтобы получить 50R копланар с землей, нужно дорожку делать 1.85мм и зазоры 0.36мм, что многовато для 0603 смд.
Вот если бы FR4 0.8мм, тогда дорожки шириной 1.0мм - как раз мелкие СМД торцом встают.
там как я понял код под один генератор и мне придется разбираться с протоколом и прикручивать второй … но это уже отправная точка чтобы не изобретать велосипед с нуля …
У чипа ADF есть пин LE, который переключает режимы “запись регистров через SPI” \ “рабочий режим”.
Если поставить 2 чипа, то на Ардуино (атмега, кому что привычнее) нужно выделить 2 ножки под 2 LE.
Конфигурация SPI для всех общая (делитель, порядок байт).
Дергаем LE_1, заливаем регистры.
Дергаем LE_2, заливаем регистры.
Это в теории…
Топология NWT6000 - дорогая. Явно не хоббийная в sprint-layout. Да и “рассыпуха” должна быть, иначе покупать ленты по 10-500 деталей накладно.
На Али искал резисторы 49R9 0402\0603, минимальный заказ 500 штук! Хобби накладное.
но именно с двумя отдельными генераторами (второй как гетеродин)
ADF4351 в качестве гетеродина? Многие пишут про его фазовый шум, спуры, “неудачные” точки в диапазоне частот и китайский кварц 25МГц.
Я надеюсь, что без фильтров он сгодится как генератор “шума” более-менее конкретной частоты для прогонки антенны.
Источники:
www.vhfdx.ru/apparatura/ua3djg_bridge
pe2er.nl/wifiswr/index.htm
www.vk4adc.com/web/…/83-microwave-rf-bridge
Версия 2 для 0603. Размеры минимальные.
Уже неясно, нужен ли тот короткий копланар, разорванный смд-резистором и испорченный близлежащими смд? И, вообще, нужен ли текстолит?
Уже есть 2 эквивалентных нагрузки 50 Ом на 18ГГц и 20ГГц с КСВ не более 1.10 : 1. Одна точно хорошая, на ней ID-номер выбит, нашел в каталоге XMA xmacorp.com/products/terminations Их продавали на ebay по 300-500р б\у с обещанием высоких метрологических характеристик. Хотя могли и подпалить мощностью или уронить…
Зачем переписывать весь даташит в прогу если в проге нужно 5% из него?
Сейчас нужно 5%, а потом 3 или 89.
Да и подстановка бит по нужным адресам - тоже неочевидное дело.
Поменялся кварц, захотелось менять мощность или low-noise-mode\low-spur-mode - надо ковыряться в битах.
Еще AD советуют избегать малого шага при низких частотах, когда дробление высокое - это можно удобно отследить по формулам в коде.
Вообще, я делаю ради энкодера и экранчика. Чтобы автономно выставлять частоту и быстро бегать с шагом N.
Фактически, коробочка на батарейках 35-4400 МГц или даже 8800 с усилителем и умножителем.
Репозиторий bitbucket.org/boris_n/ant/src
Да и вообще какой смысл что то заново изобретать- весь код рабочий, схемы рабочие, плата так же.
У меня все параметры доступны для настройки по даташиту. Это замедляет цикл, но позволяет “в лоб” дорабатывать код.
void ADF4351_prepareConfig() {
// PLL-Reg-R0 = 32bit
// Registerselect 3bit
// int F_Frac = 4; // 12bit
// int N_Int = 92; // 16bit
// reserved // 1bit
// PLL-Reg-R1 = 32bit
// Registerselect 3bit
//int M_Mod = 5; // 12bit
int P_Phase = 1; // 12bit bei 2x12bit hintereinander pow()-bug !!
uint8_t Prescal = 0; // 1bit geht nicht ???
uint8_t PhaseAdj = 0; // 1bit geht auch nicht ???
// reserved // 3bit
// PLL-Reg-R2 = 32bit
// Registerselect 3bit
uint8_t U1_CountRes = 0; // 1bit
uint8_t U2_Cp3state = 0; // 1bit
uint8_t U3_PwrDown = 0; // 1bit
uint8_t U4_PDpola = 1; // 1bit
uint8_t U5_LPD = 0; // 1bit
uint8_t U6_LPF = 1; // 1bit 1=Integer, 0=Frac not spported yet
uint8_t CP_ChgPump = 7; // 4bit
uint8_t D1_DoublBuf = 0; // 1bit
// int R_Counter = 1; // 10bit
// int RD1_Rdiv2 = 0; // 1bit
// int RD2refdoubl = 0; // 1bit
uint8_t M_Muxout = 0; // 3bit
uint8_t LoNoisSpur = ADF4351_lowNoiseOrSpurVariants[ADF4351_lowNoiseOrSpur_current]; //0 2bit
// reserved // 1bit
// PLL-Reg-R3 = 32bit
// Registerselect 3bit
int D_Clk_div = 150; // 12bit
uint8_t C_Clk_mode = 0; // 2bit
// reserved // 1bit
uint8_t F1_Csr = 0; // 1bit
// reserved // 2bit
uint8_t F2_ChgChan = 0; // 1bit
uint8_t F3_ADB = 0; // 1bit
uint8_t F4_BandSel = 0; // 1bit
// reserved // 8bit
// PLL-Reg-R4 = 32bit
// Registerselect 3bit
uint8_t D_out_PWR = ADF4351_outputPowerVariants[ADF4351_outputPower_current] ; // 2bit
uint8_t D_RF_ena = 1; // 1bit
uint8_t D_auxOutPwr = 0; // 2bit
uint8_t D_auxOutEna = 0; // 1bit
uint8_t D_auxOutSel = 0; // 1bit
uint8_t D_MTLD = 0; // 1bit
uint8_t D_VcoPwrDown = 0; // 1bit 1=VCO off
// int B_BandSelClk = 200; // 8bit
uint8_t D_RfDivSel = 3; // 3bit 3=70cm 4=2m
uint8_t D_FeedBck = 1; // 1bit
// reserved // 8bit
// PLL-Reg-R5 = 32bit
// Registerselect // 3bit
// reserved // 16bit
// reserved 11 // 2bit
// reserved // 1bit
uint8_t D_LdPinMod = 1; // 2bit muss 1 sein
// reserved // 8bit
// Referenz Freg Calc
// long ADF4351_referenceFreq = 250000; // Refrenquarz = 25000000hz
int R_Counter = 1; // 10bit
uint8_t RD1_Rdiv2 = 0; // 1bit
uint8_t RD2refdoubl = 0; // 1bit
int B_BandSelClk = 200; // 8bit
// int F4_BandSel = 0; // 1bit
// int F4_BandSel = 10.0 * B_BandSelClk / PFDFreq;
uint32_t RFout = ADF4351_frequency; // VCO-Frequenz
// calc bandselect und RF-div
uint8_t outdiv = 0;
if (RFout >= 220000000) {
outdiv = 1;
D_RfDivSel = B0;
}
if (RFout < 220000000) {
outdiv = 2;
D_RfDivSel = B001;
}
if (RFout < 110000000) {
outdiv = 4;
D_RfDivSel = B010;
}
if (RFout < 55000000) {
outdiv = 8;
D_RfDivSel = B011;
}
if (RFout < 27500000) {
outdiv = 16;
D_RfDivSel = B100;
}
if (RFout < 13800000) {
outdiv = 32;
D_RfDivSel = B101;
}
if (RFout < 6900000) {
outdiv = 64;
D_RfDivSel = B110;
}
float PFDFreq = ADF4351_referenceFreq * ((1.0 + RD2refdoubl) / (R_Counter * (1.0 + RD1_Rdiv2))); //Referenzfrequenz *10 (все частоту сокращена в 10раз почему-то)
float N = ((RFout) * outdiv) / PFDFreq;
uint16_t N_Int = N;
uint16_t M_Mod = PFDFreq * (100000 / ADF4351_freqStepCurrent) / 100000;
uint16_t F_Frac = round((N - N_Int) * M_Mod);
ADF4351_registers[0] = (unsigned long)(0 + F_Frac * pow(2, 3) + N_Int * pow(2, 15));
ADF4351_registers[1] = (unsigned long)(1 + M_Mod * pow(2, 3) + P_Phase * pow(2, 15) + Prescal * pow(2, 27) + PhaseAdj * pow(2, 28));
// ADF4351_registers[1] = (ADF4351_registers[1])+1; // Registerselect adjust ?? because unpossible 2x12bit in pow() funktion
ADF4351_registers[2] = (unsigned long)(2 + U1_CountRes * pow(2, 3) + U2_Cp3state * pow(2, 4) + U3_PwrDown * pow(2, 5) + U4_PDpola * pow(2, 6) + U5_LPD * pow(2, 7) + U6_LPF * pow(2, 8) + CP_ChgPump * pow(2, 9) + D1_DoublBuf * pow(2, 13) + R_Counter * pow(2, 14) + RD1_Rdiv2 * pow(2, 24) + RD2refdoubl * pow(2, 25) + M_Muxout * pow(2, 26) + LoNoisSpur * pow(2, 29));
ADF4351_registers[3] = (unsigned long)(3 + D_Clk_div * pow(2, 3) + C_Clk_mode * pow(2, 15) + 0 * pow(2, 17) + F1_Csr * pow(2, 18) + 0 * pow(2, 19) + F2_ChgChan * pow(2, 21) + F3_ADB * pow(2, 22) + F4_BandSel * pow(2, 23) + 0 * pow(2, 24));
ADF4351_registers[4] = (unsigned long)(4 + D_out_PWR * pow(2, 3) + D_RF_ena * pow(2, 5) + D_auxOutPwr * pow(2, 6) + D_auxOutEna * pow(2, 8) + D_auxOutSel * pow(2, 9) + D_MTLD * pow(2, 10) + D_VcoPwrDown * pow(2, 11) + B_BandSelClk * pow(2, 12) + D_RfDivSel * pow(2, 20) + D_FeedBck * pow(2, 23));
ADF4351_registers[5] = (unsigned long)(5 + 0 * pow(2, 3) + 3 * pow(2, 19) + 0 * pow(2, 21) + D_LdPinMod * pow(2, 22));
}
в идеале иметь возможность подключить два генератора к одному интерфейсу + два канала ацп и интерфейс к компу с протоколом WinNWT …
поддержка по возможности adf4350/adf4351/adf4356/max2871
Ого! 2 генератора = отладка SPI, чтобы дергать LE на каждом.
max2871 - только слышал про них, купить довольно сложно\дорого.
Зато adf4351 на каждом шагу и доступно.
В текущей версии доступны A6, A7 и несколько цифровых, а также rx-tx.
Можно сделать так:
Напряжение с детектора (Н.О.) или перекоса резистивного моста масштабировать на операционнике и подать на А6.
Или на ЦАП и потом i2c.
Выставляем частоту, шаг. Крутим энкодер.
По TX бегут изменяющиеся freq;voltage;
Далее пишем простую программу, которая нормирует и строит график.
Но вначале запустить бы генератор,который ползет из Китая.
Переделал плату под 0603, вытравил 2 штуки из стеклотекстолита 1.6мм. Из-за большой толщины диэлектрика копланар получается такой широкий. Был бы FR4 0.8мм, копланар получился бы шириной с СМД-элемент.
Детали жду с Али.
Здравствуйте.
В 2012 году в этой теме активно обсуждали измерения антенн.
В 2018 у меня родилось 2 темы:
Мостовой резистивный измеритель КСВ rcopen.com/forum/f8/topic516123
Генератор 35-4400 МГц для тестов (можно умножитель добавить, будет 8.8 ГГц) rcopen.com/forum/f8/topic517493
Если найдутся единомышленники или есть что сказать - пишите, пожалуйста.
Особо приветствуется критика от специалистов.
Пока сделал интерфейс. Самой платы adf еще нет…
На Ютубе человек говорит, что большой электролит 100мкФ у AMS 3.3 помог ему.
Попробую по картинке #1.
На генераторе раздельные аналоговое и цифровое питание, соединяются дросселем 100uH.
С гребенки на плате генератора уходит 3.3В цифрового питания - отправлю его на Ардуино.
На шину SPI поставлю дроссели Murata BLM18GG471.
По питанию от платы генератора к Ардуино: Murata BLM18GG471 и NFM21CC223R, несколько смд-конденсаторов. Земля между генератором и Ардуино напрямую. 3.3В и землю пропущу через ферритовое кольцо (синфазный дроссель).
Земляной провод и шлейф SPI будут в одном плотном жгуте, чтобы между линиями SPI и земляным проводом не было петель (рамки).
Может, +3.3В, землю и SPI вместе пропустить через ферритовое кольцо?