Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
W wiki
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Packages & Registries
    • Packages & Registries
    • Package Registry
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • beam diagnostics
  • wiki
  • Wiki
  • dissector pv list

Last edited by Evgeny Bekhtenev Feb 10, 2025
Page history

dissector pv list

Title: Описание PV

TOP

  • Обозначение
  • Описание PV
    • Общие настройки
    • Коэффициент усиления
    • Банчи
    • Шкала
    • Моды
    • Общие для всех мод
    • Настройки профиля[opt_prof]
    • Результат измерения профиля[prof]
    • Настройки сканирования[opt_scan]
    • Результат сканирования[scan]
    • Настройки пооборотных[opt_turns]
    • Результат пооборотных измерений[turns]
    • Внутренние параметры
  • FFT
    • Параметры FFT
    • Результат FFT

Обозначение

Как описано в обзоре название PV имеет иерархию УСТАНОВКА:СИСТЕМА:значение-СУФФИКС. Для одного IOC часть имени УСТАНОВКА:СИСТЕМА Обычно одинакова и задается чарез переменные окружения $(P). В описании используется похожий синтаксис. В тексте сокращенно на переменную ссылаются как на значение.

Макрос $(P) для диссектора раскрывается как

  • VEPP4:dissector_e: - для электронов
  • VEPP4:dissector_p: - для позитронов
  • VEPP3:dissector_v3: - для VEPP3

Для мод параметры имеют вид $(P)параметр_мода-Суф.

Для результата имеют вид $(P)мода_результат-Суф.

Автоподстройки имеют вид

  • auto_* для периодической автоподстройки
  • auto1_* для однократной автоподстройки

Описание PV

Ток вертикальная шкала вычисляется по формуле

I = (U - U0) * pow10( step_gain * gain / 20) * GI

где U0, step_gain, gain, GI.

Общие настройки

$(P)connect-Cmd
: производить подключение

$(P)connected-Sts
: статус подключения

$(P)host-SP
: IP адрес пикапстанции, диапазон адресов 192.168.1.150-152

$(P)port-SP
: порт подключения, по умолчанию 2195

$(P)error-SP
: счетчик ошибок, при ошибке инкрементируется

Коэффициент усиления

$(P)gain-SP
: усиление код

$(P)step_gain-SP
: вес шага усиления (10дБ)

$(P)auto_gain-Cmd
: автоматическая подстройка усиления(пока не работает)

$(P)scan_gain-Cmd
: зарезервированно

$(P)level_nosig_gain-SP
: если сигнал меньше указанного уровня, усиление ставится в default_gain

$(P)tau_gain-SP
: зарезервированно

$(P)lim_gain-SP
: зарезервированно

$(P)default_gain-SP
: усиление при отсутствии сигнала

$(P)min_gain-SP
: минимальное усиление 0

$(P)max_gain-SP
: максимальное усиление 1

Банчи

$(P)bunch1-SP
$(P)bunch2-SP
$(P)bunch3-SP
$(P)bunch4-SP
: разрешить измерение соответствующего банча

$(P)sep0-SP
: смещение нумерации сепаратрис

$(P)sep1-SP
$(P)sep2-SP
$(P)sep3-SP
$(P)sep4-SP
: номер сепаратрисы для соответствующего банча

$(P)fine1-SP
$(P)fine2-SP
$(P)fine3-SP
$(P)fine4-SP
: задержка в пределах сепаратрисы

$(P)extr1-SP
$(P)extr2-SP
$(P)extr3-SP
$(P)extr4-SP
: знак максимума, 0 - любой

$(P)auto_sep-SP
$(P)auto1_sep-SP
: автоподстройка сепаратрисы, про результатам сканирования scan2d_i в диапазоне +-2 сепартрисы относительно текущего значения вычисляется амплитуда сигнала и номер сепаратрисы настраивается на максимум, при условии что сигнал превышает level_nosig_gain. Если extr больше нуля считаются значения сигнала больше нуля, если меньше - меньше, если равно - по модулю.

Шкала

$(P)GI-SP
: множитель тока

$(P)X1-SP
: левая граница шкалы профиля

$(P)X2-SP
: правая граница шкалы профиля

$(P)U0-SP
: смещение нуля

$(P)GI0-SP
: зарезервированно

$(P)GI1-SP
: зарезервированно

Моды

Соответствующий тип измерения называется модой. Основным типом измерений является профиль mode_prof. Также есть дополнительные виды измерения. Пооборотные измерения turns и сканирование профиля по сепаратрисам scanprof. Измерение производится если его проведенеие разрешено mode_* и заказано однократное *_do или периодическое измерение *_cont.

С целью экономии ресурсов измерение turnslong с размером буфера до 1М, производится если разрешены mode_turns, mode_turnslong и количество заказанных оборотов ne_turns больше 16384. При этом первые 16384 оборота копируются в результат mode_turns.

$(P)mode-I
: текущее состояние измерения

$(P)mode_turns-Cmd
: разрешение пооборотных измерений

$(P)mode_turnslong-Cmd
: разрешение пооборотных измерений до миллиона точек

$(P)mode_scan-Cmd
: зарезервированно

$(P)mode_scanprof-Cmd
: сканирование для подстройки сепаратрис

$(P)mode_prof-Cmd
: измерение профиля

Общие для всех мод

$(P)ndel0-SP
: задержка между ВЧ и частоты оборотов

$(P)gap-SP
: прореживание

Настройки профиля[opt_prof]

$(P)prof_do-SP
: провести однократное измерение профиля

$(P)prof_cont-SP
: проводить периодические измерения профиля

$(P)ne_prof-SP
: количество оборотов элементарного измерения, кратно 4 (по соображениям упрощения прошивки)

$(P)n_prof-SP
: количество точек профиля

$(P)naver_prof-SP
: усрелнение по формуле U[i] = U[i-1] * (1 - 1/naver) + U * 1/naver

$(P)tdel_prof-SP
: задержка старта следуюжего измерения для банча NONE

$(P)ext_ramp_prof-Cmd
: при старте ждать импульса 50 Гц

$(P)ext_start_prof-Cmd
: при старте ждать импульса на входе старт

$(P)timeout_prof-SP
: тайм аут операци в моде prof, мсек

Полное время измерения (ne_prof + 4) * n_prof оборотов, например для

ne_prof = 24
n_prof  = 512
(24 + 4) * 512 = 7/8 * 16384

время сканирования составит 17.5 мсек (считая что 16384 оборота 20 мсек)

Результат измерения профиля[prof]

$(P)ready_prof-I
: триггер готовности, всегда обновляется последним

$(P)prof_i1-I
$(P)prof_i2-I
$(P)prof_i3-I
$(P)prof_i4-I
: профиль для банчей

$(P)prof_axis-I
: горизонтальная ось профиля X1 - X2

$(P)prof_time-I
: время измерения профиля, сек

Настройки сканирования[opt_scan]

Сдующие парамеры берутся из prof

  • ne_prof
  • n_prof
  • naver_prof
  • ext_ramp_prof
  • ext_start_prof
  • timeout_prof

$(P)scan_do-SP
: провести однократное сканирование

$(P)scan_cont-SP
: проводить периодические сканирование каждые per_scan

$(P)per_scan-SP
: проводить сканирование через сек

$(P)refresh_scan-SP
: обновлять результат сканирования через сек

$(P)timeout_scan-SP
: время затраченно на сканирование, мсек

Результат сканирования[scan]

$(P)ready_scan-I
: триггер окончанич сканирования

$(P)scan2d_i-I
: результат сканирования 2D массив размерностью 222 * n_prof, контурный график

$(P)scan2d_height-I
: высота контурного графика

$(P)scan2d_width-I
: ширина контурного графика

$(P)scan2d_i_min-I
: минимальное значение контурного графика по вертикали( по сепаратрисам)

$(P)scan2d_i_max-I
: максимальное значение контурного графика по вертикали( по сепаратрисам)

$(P)scan2d_min-I
$(P)scan2d_max-I
: минимальное и максимальное значение контурного графика, по модулю равны

$(P)scan_time-I
: время затраченное на сканирование, сек

Настройки пооборотных[opt_turns]

$(P)turns_do-SP
: провести однократное пооборотное измерение

$(P)turns_cont-SP
: проводить периодическое пооборотное измерение

$(P)bunch_turns-SP
: для какого сгустка проводить пооборотные измерения

$(P)ne_turns-SP
: количество оборотов пооборотного измерения, если меньше 16384 заполняется только результат turns_i, если больше то и turnslong_i

$(P)ext_ramp_turns-Cmd
: запуск 50 Гц

$(P)ext_start_turns-Cmd
: запуск от старт

$(P)per_turns-SP
: периодичность проведение пооборотных измерений, сек

$(P)timeout_turns-SP
: таймаут, мсек

Результат пооборотных измерений[turns]

CSS может показывать только 128к оборотов, тем не менее в Edit->Prefernce->CSS Core->EPICS->max_array_bytes надо прописать обьем достаточный для приема 1М точек: 4200000.

$(P)ready_turns-I
: триггер окончания пооборотных измерений

$(P)turns_i-I
: ток пооборотных измерений

$(P)turns_axis-I
: горизонтальная ось обороты

$(P)turnslong_i-I
: ток пооборотных измерений до 1М

$(P)turnslong_axis-I
: горизонтальная ось обороты до 1М

$(P)turns_time-I
: время потраченное на проведение измерения, сек

Внутренние параметры

$(P)prof_i-I
: необработанный профиль для банча NONE

$(P)fine-SP
: задержка в пределах сепаратрисы

$(P)sep-SP
: номер сепаратрисы

FFT

Спектр вычисляется для каждого банча

  • turns_i1
  • turns_i2
  • turns_i3
  • turns_i4

для краткости параметры приведены только для первого банча turns_i1, для остальных банчей аналогично.

Параметры FFT

$(P)turns_i1:pre_filter-SP
$(P)turns_i1:pre_delta-SP
: зарезервировано

$(P)turns_i1:wnd-SP
$(P)turns_i1:arg1-SP
$(P)turns_i1:arg2-SP
$(P)turns_i1:subwnd-SP
$(P)turns_i1:mtbwnd-SP
: настройка окна, wnd - форма окна, arg1,arg2 - параметры окна, subwnd - вычитать среднее окна, mtbwnd - нормировать на площадь окна

Результат FFT

$(P)turns_timestep-I : шаг по времени пооборотных измерений, зависит от gap и VEPP4:FrequencySet-RB. В turns_timestep-I.C можно записать множитель шага, данное значени не сохраняется при перезагрузке IOC

$(P)FFT:turns_axis-I : ось частоты, зависит от turns_timestep

$(P)FFT:turns_i1:turns_i1-I
$(P)FFT:turns_i2:turns_i2-I
$(P)FFT:turns_i3:turns_i3-I
$(P)FFT:turns_i4:turns_i4-I
: спектр пооборотных измерений, для соответствующего банча

$(P)FFT:turns_i1:window:turns_i1-I
$(P)FFT:turns_i2:window:turns_i2-I
$(P)FFT:turns_i3:window:turns_i3-I
$(P)FFT:turns_i4:window:turns_i4-I
: применённое окно


========================================================

Не используется

$(P)finestep_scan-SP
: зарезервированно

$(P)finecount_scan-SP
: зарезервированно

$(P)sep_beg_scan-SP
: зарезервированно

$(P)sep_end_scan-SP
: зарезервированно

$(P)sep_step_scan-SP
: зарезервированно

$(P)sep_range_scan-SP
: зарезервированно

$(P)delayramp_scan-SP
: зарезервированно

$(P)ne_scan-SP
: количество оборотов элементарного измерения

$(P)scan_axis-I
: горизонтальная ось сканирования

$(P)delayramp_turns-SP
: зарезервированно

Clone repository
  • CSS install
  • Qt Creator в debian
  • broadcast
  • btune pv list
  • chan pv list
  • css use
  • dissector pv list
  • dissector
  • epics
  • git
  • Home
  • https_error
  • index
  • internal
  • kud pv list
View All Pages