## модулирование лазерного излучения ### Варьирование тока лазера Может ли лазер включаться-выключаться с частотой 1 МГц? Как проверить: #### Создать меандр с частотой 1 МГц через ЦАП управления током лазера PF3, PF4 -- в режиме input, pull-up. Названия INP_0, INP_1 соответственно. Планируется использовать для конфигурации при помощи джамперов (замыкать на GND). PE0, PE1 -- в режиме UART8, TX и RX соответственно. TIM8 -- тактируется от APB2 (92 МГц), генерирует update_interrupt каждые 1 мкс. В обработчике -- при помощи Set_LTEC -- включать-выключать лазер. Состояние лазера -- дублировать на выходы OUT10, OUT11 (лазеры 1 и 2 соответственно). Ток лазера задается только в прерывании TIM8. Стандартная процедура установки тока редуцируется до передачи нового тока блинкеру (TIM10_up_irq). Сначала работаем только с лазером 2, в режиме TASK_ENABLE. Сделано: TIM8 генерит прерывания, в прерываниях вызывается Set_LTEC (stm32f7xx_it.c:323, 328). Однако, установка тока лазера в прерывании работает только если примерно в этот же момент происходит установка тока в основном цикле (main.c:466). Иначе на MOSI не сигнала, на SCK нет тактирования, на CS нет. Голубой -- напряжение питания лазера. Так как ток меняется медленно, изменений между отдельными шагами изменения тока нет. Желтый -- MOSI Синий -- прерывания. Set_LTEC должен отрабатывать на каждом фронте (и рост и спад) Фиолетовый -- синхронизация. ![[RigolDS0.png]] То же, но: - Желтый канал не подключен - Синий -- уровень меняется при вызове Set_LTEC (изменение состояния пина в начале функции) ![[RigolDS1.png]] Проблема была в приведении типов из task.task_type в первый аргумент Set_LTEC. Синий -- OUT_11 Голубой -- напряжение на лазере 2. ![[RigolDS2.png]] #### Подать меандр на вход ОУ управления током в обход ЦАП Можно подать сигнал от 0 до 2.5 В на вход DA14A или DA27A. Наиболее удобно -- на дальние от ЦАП стороны резисторов R60 или R102 соответственно (сопротивление 7.5 кОм). Подавать относительно GNDA. ### интерферометр Маха-Цандера Даташит на модулятор: [[Mach-Zehnder modulator.pdf]] Фото модулатора: [[Pasted image 20250211154358.png]] #### Управление модулятором Выходной сигнал минимален, когда на RF вход (ближе к IN) подается постоянка 4 В, на DC (ближе к OUT) -- 5 В. Или -2 В на RF и -5 на DC. График зависимости выходной мощности от напряжения (постоянное) ![[Mach-Zander_voltage_plot.html]] На выходе только одна гармоника: Мощность гармоник взависимости от входов. Частота RF -- 1 MHz. | RF offset, V | RF Vpp, V | DC offset, V | main harmonic, dB | other harmonics, dB | diff, dB | | ------------ | --------- | ------------ | ----------------- | ------------------- | -------- | | 0 | 0.2 | -2 | -58 | -100 | -42 | | 0 | 0.2 | -3.3 | -60 | -100 | -40 | | 0 | 1 | 2 | -44 | -80 | -36 | | 0 | 1 | 3.3 | -45 | -80 | -35 | | 2 | 0.2 | 0 | -66 | -100 | -34 | | 3.3 | 0.2 | 0 | -64 | -95 | -31 | | 0 | 1 | -1 | -47 | -78 | -31 | | 0 | 3.3 | -3.3 | -33 | -64 | -31 | | 0 | 0.2 | 2 | -60 | -90 | -30 | | 0 | 1 | 1 | -49 | -77 | -28 | | 0 | 1 | -3.3 | -50 | -77 | -27 | | 0 | 0.2 | 0 | -72 | -90 | -18 | | 0 | 3.3 | 3.3 | -41 | -55 | -14 | | 0 | 1 | 0 | -65 | -77 | -12 | | 0 | 3.3 | 0 | -57 | -55 | 2 | | | | | | | | Оптимальные параметры для генератора: - Модуляция: синус 1 МГц. Симметрично относительно 0. - DC offset = 3.3 V - Нужно ли фиксировать фазу синуса относительно варьирования тока? -- да | RF offset, V | RF Vpp, V | DC offset, V | main harmonic, dB | other harmonics, dB | diff, dB | | ------------ | --------- | ------------ | ----------------- | ------------------- | -------- | | 0 | 1 | 3.3 | -45 | -80 | -35 | ##### Реализация: MCU через PWM создает меандр с частотой 1 МГц. Затем высшие гармоники отфильтровываются, синус усиливается, приводится к амплитуде (Vpp) 1 V, подается на RF вход модулятора. На DC вход подается постоянное напряжение 3.3 В. ###### Драйвер модулятора Вход -- меандр. ###### Фильтр проблема: RC фильтр пропускает основную частоту 1 МГц, подавляет следующие 10 гармоник, но пропускает частоты 20 МГц и выше | Фильтр | Результат фильтрования | | ------------------------------------ | ---------------------- | | ![[Pasted image 20250307134129.png]] | ![[RigolDS0 1.png]] | | ![[Pasted image 20250307134310.png]] | ![[RigolDS1 1.png]] | | ![[Pasted image 20250307134944.png]] | ![[RigolDS2 1.png]] | | ![[Pasted image 20250307135311.png]] | ![[RigolDS3.png]] | | ![[Pasted image 20250307135353.png]] | ![[RigolDS5.png]] | | ![[Pasted image 20250307135409.png]] | ![[RigolDS4.png]] | Наилучший вариант: - ![[Pasted image 20250307134944.png]] - ![[RigolDS9.png]] - ![[RigolDS8.png]] - ![[RigolDS7.png]] - ![[RigolDS6.png]] С двумя RLC цепями и частичной корректировкой: ![[Pasted image 20250307170056.png]] Голубой -- входной сигнал, меандр 1 МГц, амплитуда 3.3 В. Желый -- выходной сигнал. Синий -- спектр выходного сигнала. ![[RigolDS0.bmp]] ![[RigolDS25.png]] ![[RigolDS26.png]] Видно, что высшие гармоники подавить не удалось. Большая проблема -- проникновение ВЧ компонент меандра в цепь 1.5 В, они создают основную долю помех. ##### Выходной сигнал ## драйвер интерферометра Маха-Цандера Исходная схема 2 версии: ![[Pasted image 20250425151638.png]] ОУ радиочастотной части -- TPH2501 ([[TPH2501_GBW_120M.pdf]]). В данной схеме возникли проблемы с трансформатором и питающем его ОУ. Не удалось добиться нормальной работы: несмотря на правильные соотношения индуктивностей обмоток, трансформатор работал или на понижение, или сильно портил входной сигнал, просаживая его амплитуду. В итоге был поставлен повышающий DC-DC преобразователь на MT6308 c с модифицированной катушкой индуктивности (добавлена вторая обмотка, выводы который подключены на подсхему с негативным напряжением), питающий подсхему с положительным напряжением (20В). Также из модуля был удален выходной сглаживающий конденсатор: из-за малости нагрузки модуль работал в пульсирующем режиме, что приводило к большой пульсации выходного напряжения.![[photo_2025-04-25_15-40-33.jpg]] ![[photo_2025-04-25_15-40-35.jpg]]