v4orb2.wiki

описание пикапов и диссектора ВЭПП3-4
git clone https://star.inp.nsk.su/~bekhte/v4orb2.wiki.git
Log | Files | Refs

psv3udp.md (62318B)


      1 Title: Пикап-станция для ВЭПП-3 UDP
      2 CSS: table.css
      3 
      4 {{TOC}}
      5 
      6 # Пикап-станция для ВЭПП-3 UDP
      7 
      8 ## 1 Общее описание
      9 
     10 Новый блок электроники (или пикап-станция)
     11 предназначен для измерения координат
     12 пучка на основе измерения средних
     13 значений сигналов с 4-х электродов
     14 пикапа. Средние значения сигнала пучка
     15 за 1 оборот дают пооборотные измерения.
     16 Средние значения сигнала пучка за
     17 <i>N<sub>e</sub></i> оборотов
     18 (где <i>N<sub>e</sub></i> программируется)
     19 дают накопленные данные. Блок выполнен
     20 в корпусе 1 U евромеханики шириной 19
     21 дюймов и глубиной 340 мм. К нему подводятся
     22 4 кабеля с электродов пикапа, 3 кабеля с
     23 синхросигналами, кабель Ethernet 100 Mb/sec и
     24 гнездо сетевого питания 220В 50 Гц. Виды
     25 блока со стороны передней и задней
     26 панелей показаны на Рис. [1](#image001) и [2](#image002).
     27 
     28 ![<b>Рис. 1.</b> Вид на пикап-станцию со стороны передней панели.][image001]
     29 
     30 [image001]:psv3udp.img/image001.png "Рис. 1. Вид на пикап-станцию со стороны передней панели." width=800px
     31 
     32 ![<b>Рис. 2.</b> Вид на пикап-станцию со стороны задней панели.][image002]
     33 
     34 [image002]:psv3udp.img/image002.png "Рис. 2. Вид на пикап-станцию со стороны задней панели." width=800px
     35 
     36 На передней панели
     37 находятся 3 разъема типа SMA, 3 светодиода
     38 (2 красных и 1 зеленый) и гнездо для
     39 подключения кабеля Ethernet. Левый SMA разъем
     40 предназначен для подачи
     41 синхросигнала с частотой ВЧ <i>F<sub>HF</sub></i> = 18<i>F<sub>0</sub></i>,
     42 где <i>F<sub>0</sub></i> = 4.03&nbsp;МГц –
     43 частота обращения. Это синусоидальный
     44 сигнал с частотой 72.54&nbsp;МГц и амплитудой
     45 от 0.2&nbsp;В. Средний SMA разъем предназначен
     46 для подачи синхросигнала частотой 3&nbsp;Гц.
     47 Правый SMA разъем предназначен для подачи
     48 импульса “Впуск”, привязанный по
     49 времени с инжекцией пучка в накопитель.
     50 Амплитуда этих синхросигналов – от
     51 ~1.2&nbsp;В до ~3&nbsp;В. Гнездо Ethernet через кабель соединяется
     52 с локальной сетью, частота работы 100&nbsp;Мбит/сек. Назначение светодиодов:
     53 
     54 - зеленый светодиод
     55 горит при включении питания и правильном
     56 конфигурировании FPGA;
     57 
     58 - средний красный
     59 светодиод загорается, когда появляется
     60 связь блока с Ethernet сетью (наличие “Link”);
     61 
     62 - левый красный светодиод
     63 загорается во время цикла измерения.
     64 
     65 На задней панели
     66 находятся 4 разъема типа SMA для соединения
     67 с пикапом и гнездо сетевого питания
     68 220&nbsp;В. Нумерация входов справа налево,
     69 если находиться лицом к задней панели.
     70 
     71 ## 2 Принцип действия пикап-станции
     72 
     73 Блок-схема пикап-станции
     74 для ВЭПП-3 представлена на [Рис. 3](#image003).
     75 
     76 <a name="image003"></a>
     77 
     78 ![<b>Рис. 3.</b> Блок-схема пикап-станции для ВЭПП-3.](psv3udp.img/image003.png)
     79 
     80 Обработка
     81 сигнала заключается в выделении и
     82 измерении 18-й гармоники частоты обращения
     83 <i>18F<sub>0</sub></i>(~72.54 МГц).
     84 Примерный вид сигнала на входе АЦП для
     85 одного оборота показан на [Рис. 4](#image004).
     86 Длительность сигнала (на полуширине) –
     87 примерно равна 30% периода обращения <i>T<sub>0</sub></i>
     88 
     89 <a name="image004"></a>
     90 
     91 ![<b>Рис. 4.</b> Примерный вид сигнала на входе АЦП.](psv3udp.img/image004.png)
     92 
     93 Данный сигнал оцифровывается АЦП с частотой
     94 дискретизации <i>28F<sub>0</sub></i>(~112.8 МГц), то
     95 есть на каждый период обращения приходится
     96 28 точек отсчетов АЦП. Частота сигнала
     97 на входе АЦП за счет свертки от
     98 дискретизации будет равна <i>28F<sub>0</sub></i> – <i>18F<sub>0</sub></i> = <i>10F<sub>0</sub></i>.
     99 В FPGA цифровой сигнал детектируется
    100 квадратурным синхронным детектором и
    101 интегрируется за каждый период обращения.
    102 Результатом являются данные пооборотных
    103 измерений, которые записываются в память
    104 и одновременно накапливаются (суммируются
    105 напряжения от отдельных оборотов).
    106 Результатом накопления являются так
    107 называемые “медленные” (или накопленные)
    108 данные – сумма напряжений с электрода
    109 пикапа за <i>N<sub>e</sub></i> оборотов,
    110 где <i>N<sub>e</sub></i> – длительность
    111 элементарного цикла измерения в оборотах.
    112 Величина <i>N<sub>e</sub></i> может
    113 программироваться, максимальная величина
    114 <i>N<sub>e</sub></i> составляет
    115 2<sup>24</sup>.
    116 Емкость памяти пооборотных измерений
    117 составляет 128К оборотов. Существует
    118 также так называемый буфер памяти
    119 “быстрых” измерений (“Fast” data) емкостью
    120 2К, каждая ячейка которой является суммой
    121 напряжений с электрода пикапа за <i>N<sub>av</sub></i> оборотов,
    122 где величина <i>N<sub>av</sub></i> программируется
    123 в диапазоне от 1 до 2<sup>13</sup>.
    124 Задается величина <i>N<sub>av</sub></i> кодом [регистра 12](#reg0c).
    125 
    126 Матрица ключей позволяет
    127 подключать любой из каналов обработки
    128 сигналов к любому электроду пикапа, что
    129 позволяет устранить влияние неодинаковости
    130 каналов на результат измерения.
    131 Управляется матрица ключей двухбитным
    132 кодом <i>Sw</i>. Соответствие между номерами
    133 каналов обработки сигналов <i>Ch </i>и
    134 электродами пикапа <i>n </i>в зависимости
    135 от кода состояния матрицы ключей <i>Sw</i> приведено в [Таблице 1](#tab1).
    136 
    137 
    138 [Таблица 1.][tab1]
    139 | &nbsp; | Sw=0           |||| Sw=1           |||| Sw=2           ||||  Sw=3          ||||
    140 |:------:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|
    141 |	Ch   |  0 |  1 |  2 |  3 |  0 |  1 |  2 |  3 |  0 |  1 |  2 |  3 |  0 |  1 |  2 |  3 |
    142 |	n    |  1 |  2 |  3 |  0 |  0 |  3 |  2 |  1 |  2 |  1 |  0 |  3 |  3 |  0 |  1 |  2 |
    143 
    144 
    145 Существуют 2 режима
    146 работы пикап-станции:
    147 
    148 1) Режим с переключением
    149 каналов, когда периодически к каждому
    150 из каналов по очереди подключаются
    151 разные электроды пикапа (основной
    152 режим).
    153 
    154 2) Режим без переключения
    155 каналов (вспомогательный режим).
    156 
    157 Временная диаграмма
    158 работы пикап-станции в первом режиме
    159 показана на [Рис. 5](#image005).
    160 
    161 <a name="image005"></a>
    162 
    163 ![<b>Рис. 5.</b> Временная диаграмма работы пикап-станции в основном режиме.](psv3udp.img/image005.png)
    164 
    165 Полный
    166 цикл измерения <i>T<sub>Σ</sub></i> в данном
    167 режиме состоит из 4-х элементарных
    168 циклов, каждому из которых соответствует
    169 свой код состояния матрицы ключей <i>Sw</i>.
    170 Длительность каждого элементарного
    171 цикла <i>T<sub>e</sub></i> = <i>T<sub>0</sub></i> × <i>N<sub>e</sub></i>,
    172 где <i>T<sub>0</sub></i> – период
    173 обращения. Величина <i>N<sub>e</sub></i> задается
    174 программно записью в регистры [1](#reg01),[2](#reg02)
    175 соответствующих кодов.
    176 
    177 По
    178 окончании полного цикла измерения <i>T<sub>Σ</sub></i> накопленные
    179 результаты измерений (16 чисел типа
    180 <i>double </i> по
    181 64 бит) <i>U<sub>i,j</sub></i> лежат в 16
    182 выходных регистрах, откуда могут быть
    183 прочитаны и использованы для вычисления
    184 положения пучка. Накопленные сигналы
    185 с электродов пикапа <i>U<sub>i,j</sub></i>,
    186 где <i>i </i> – код комбинации
    187 ключей <i>Sw</i>(0-3), <i>j</i> – номер
    188 канала электроники (0-3). Используя [Таблицу 1](#tab1)
    189 соответствия каналов и электродов
    190 пикапа, на основе этих данных получаем
    191 матрицу 4×4 напряжений сигналов <i>U<sub>i,n</sub></i>,
    192 где <i>i </i> – код комбинации
    193 ключей <i>Sw</i>(0-3), <i>n</i> номер
    194 электрода пикапа (0-3). Таким образом, для
    195 каждого электрода пикапа <i>n</i> по окончании
    196 полного цикла измерений мы имеем 4
    197 напряжения сигнала для различных каналов
    198 электроники <i>Ch</i>.
    199 
    200 Во втором режиме (без переключения каналов)
    201 полный цикл измерения <i>T<sub>Σ</sub></i> состоит
    202 только из одного элементарного цикла.
    203 Код состояния матрицы ключей <i>Sw</i> в данном
    204 режиме фиксированный и равен <i>M</i>,
    205 величина <i>M</i> задается
    206 битами 0, 1 [регистра 3](#reg03). Данный режим задается
    207 установкой “1” бита 0 [регистра 0](#reg00). Как
    208 правило, этот режим используется для
    209 получения большого массива пооборотных
    210 измерений и является вспомогательным.
    211 
    212 ## 3 Программирование пикап-станции
    213 
    214 Для приема-передачи
    215 данных в пикап-станции реализован UDP
    216 сервер. Сервер получает параметры,
    217 которые записывает в соответствующие
    218 регистры, а также команды на
    219 выполнение/остановку измерений и
    220 получение результатов измерений.
    221 
    222 Все пикап-станции имеют
    223 фиксированный номер порта 2195. Номер
    224 порта компьютера, с которого происходит
    225 обращение к пикап-станции, может быть
    226 произвольным. Именно на этот порт и
    227 придет ответ пикап-станции.
    228 
    229 Из всех ICMP пакетов
    230 пикап-станция отвечает только на PING.
    231 Другие ICMP пакеты игнорируются.
    232 
    233 Основные результаты
    234 измерений могут быть 3-х типов:
    235 
    236 1) Накопленные данные – 16 64-битных числа
    237 типа <i>double</i>,
    238 которые соответствуют сигналам с 4-х
    239 электродов пикапа <i>U<sub>ij</sub></i> для четырех
    240 кодов состояния матрицы ключей <i>Sw</i>,
    241 а также 4 16-битных числа типа <i>unsigned short int</i>, которые
    242 соответствуют максимумам сигналов в
    243 кодах АЦП (в диапазоне 0-16383);
    244 
    245 2) Пооборотные данные
    246 – 4 массива до 128К 32-битных чисел типа
    247 <i>float</i>, которые соответствуют сигналам
    248 с 4-х электродов пикапа. Существует
    249 возможность накапливать в каждой точке
    250 обоих массивов напряжения сигналов до
    251 256 оборотов (это задается кодом в [регистре 12](#reg0c)).
    252 Это позволяет увеличить интервал
    253 наблюдения пучка до 3 сек и наблюдать
    254 какие-нибудь медленные колебания пучка;
    255 
    256 3) “Быстрые” данные – 4 массива до 2К
    257 32-битных чисел типа <i>float</i>,
    258 которые соответствуют сигналам с 4-х
    259 электродов пикапа; каждая ячейка массива
    260 является суммой напряжений с электрода
    261 пикапа за <i>N<sub>av</sub></i> оборотов.
    262 
    263 Дополнительно могут
    264 высылаться данные АЦП (результаты
    265 оцифровки сигнала с помощью АЦП с
    266 частотой выборок ~112.8 МГц или осциллограммы)
    267 – 4 массива по 128 16-битных числа типа
    268 <i>unsigned short int</i>, которые соответствуют
    269 сигналам с 4-х электродов пикапа. Эти
    270 данные не нужны для штатной работы, а
    271 используются для диагностики пикап-станции.
    272 
    273 Запуск измерения
    274 пикап-станции может быть внутренним –
    275 сразу после прихода соответствующей
    276 команды, или внешним – по приходу одного
    277 из двух внешних синхроимпульсов: либо
    278 сигнала “Впуск”, привязанного к моменту
    279 инжекции пучка (или удара по пучку), либо
    280 синхросигнала 3 Гц. Срабатывание от этих
    281 синхросигналов задается установкой в
    282 “1” битов 13 или 12 [регистра 0](#reg00) соответственно.
    283 
    284 Порядок байт, используемый
    285 при передаче данных из компьютера в
    286 блок и обратно – big endian (от старшего
    287 байта к младшему). Все пакеты, посылаемые
    288 пикап-станцией, содержат байт идентификации
    289 (байт 0), по которому можно однозначно
    290 определить тип пакета.
    291 
    292 ### 3.1 Описание регистров параметров
    293 
    294 В [Таблицах 2-12](#tab2) приведено
    295 описание регистров параметров. Всего
    296 регистров 16 (номера 0-15). Длина каждого
    297 регистра – 2 байта.
    298 
    299 #### Регистр 0 (0x00)[reg00]
    300 
    301 [<b>Таблица 2.</b> Описание регистра 0 (адрес 0х00).][tab2]
    302 | Номера битов | 15 | 14 | 13 | 12 | 11-1 |  0 |
    303 |:------------:|:--:|:--:|:--:|:--:|:----:|:--:|
    304 |	Описание   | Не исполь-зуются | Включение режима “Timeback” (1 – включено) | Внутренний запуск (0) или внешний запуск (1) измерений. | Синхронизация с частотой 3 Гц, «1»-есть, «0»-нет | Не исполь-зуются | Выключение режима переключения ключами (1) |
    305 
    306 Если бит 0 [регистра 0](#reg00)
    307 равен “0”, то работа осуществляется в
    308 соответствии с [Рис. 5](#image005) (основной режим).
    309 Если бит 0 [регистра 0](#reg00) равен “1”, то
    310 выполняется только один элементарный
    311 цикл с фиксированным кодом <i>Sw</i>,
    312 задаваемым кодом [регистра 3](#reg03).
    313 
    314 #### Регистр 1 (0x01)[reg01]
    315 
    316 [<b>Таблица 3. </b> Описание регистра 1 (адрес 0х01).][tab3]
    317 | Номера битов | 15-8 | 7-0 |
    318 |:--------------:|:----:|:---:|
    319 |Описание | Не используется | <i>Ne</i> длительность элементарного цикла измерения в оборотах (младшие 8 бит)|
    320 
    321 #### Регистр 2 (0x02)[reg02]
    322 
    323 [<b>Таблица 4. </b> Описание регистра 2 (адрес 0х02).][tab4]
    324 | Номера битов |                           15-0                                                      |
    325 |:------------:|:-----------------------------------------------------------------------------------:|
    326 | Описание     | <i>Ne</i> – длительность элементарного цикла измерения в оборотах (старшие 16 бит)} |
    327 
    328 #### Регистр 3 (0x03)[reg03]
    329 
    330 [<b>Таблица 5. </b> Описание регистра 3 (адрес 0х03).][tab5]
    331 | Номера битов |       15-2      | 1-0                                                     |
    332 |:------------:|:---------------:|:-------------------------------------------------------:|
    333 | Описание     | Не используются | Код состояния матрицы ключей <i>Sw</i> во втором режиме |
    334 
    335 #### Регистр 4 (0x04)[reg04]
    336 
    337 [<b>Таблица 6. </b> Описание регистра 4 (адрес 0х04).][tab6]
    338 | Номера битов | 15-0 |
    339 |:------------:|:----:|
    340 | Описание | Число оборотов с момента сброса пучка, после которого останавливается процесс записи в буфер пооборотных измерений в режиме “Timeback” |
    341 
    342 #### Регистр 6 (0x06)[reg06]
    343 
    344 [<b>Таблица 7. </b> Описание регистра 6 (адрес 0х06).][tab7]
    345 | Номера битов |          15-8   | 7-4                            | 3-0                            |
    346 |:------------:|:---------------:|:------------------------------:|:------------------------------:|
    347 | Описание     | Не используются | Код усиления 2-го каскада (дБ) | Код усиления 1-го каскада (дБ) |
    348 
    349 
    350 При установке кода
    351 усиления вначале задается код усиления
    352 1-го каскада (0-15) и только, когда он
    353 достигнет 15, затем задается код усиления
    354 2-го каскада (0-15).
    355 
    356 #### Регистр 8 (0x08)[reg08]
    357 
    358 [<b>Таблица 8. </b>Описание регистра 8 (адрес 0х08).][tab8]
    359 | Номера битов |                                 15-0                                          |
    360 |:------------:|:-----------------------------------------------------------------------------:|
    361 | Описание     |  Код минимального времени между двумя измерениями <i>code_T<sub>MIN</sub></i> |
    362 
    363 При запуске каждого измерения начинает
    364 отсчитываться интервал времени:
    365 
    366 <i>T<sub>MIN</sub></i> = <i>code_T<sub>MIN</sub></i>×1024×40 нс.
    367 
    368 Следующее измерение запустится не ранее, чем через
    369 время <i>T<sub>MIN</sub></i> после начала
    370 предыдущего измерения.
    371 
    372 #### Регистр 9 (0x09)[reg09]
    373 
    374 
    375 [<b>Таблица 9. </b> Описание регистра 9 (адрес 0х09).][tab9]
    376 | Номера битов | 15-1 | 0 |
    377 |:------------:|:----:|:-:|
    378 | Описание | Не используются | Номер ячейки памяти буфера пооборотных измерений, при которой прекратилась запись в этот буфер в режиме “Timeback” (старший бит) |
    379 
    380 #### Регистр 10 (0x0a)[reg0a]
    381 
    382 
    383 [<b>Таблица 10. </b> Описание регистра 10 (адрес 0х0a).][tab10]
    384 | Номера битов | 15-0 |
    385 |:------------:|:----:|
    386 | Описание     | Номер ячейки памяти буфера пооборотных измерений, при которой прекратилась запись в этот буфер в режиме “Timeback” (младшие 2 байта) |
    387 
    388 #### Регистр 11 (0x0b)[reg0b]
    389 
    390 
    391 [<b>Таблица 11. </b> Описание регистра 11 (адрес 0х0b).][tab11]
    392 | Номера битов | 15-0                                                      |
    393 |:------------:|:---------------------------------------------------------:|
    394 | Описание     | Содержит код опорной частоты (см.  описание команды 0х06) |
    395 
    396 Регистр 11 работает
    397 только на чтение.
    398 
    399 #### Регистр 12 (0x0c)[reg0c]
    400 
    401 
    402 [<b>Таблица 12.</b> Описание регистра 12 (адрес 0х0с).][tab12]
    403 | Номера битов |     15-13       | 12-0 |
    404 |:------------:|:---------------:|:----:|
    405 | Описание     | Не используются | Задает число накапливаемых оборотов для каждой точки буфера “быстрых” измерений (<i>N<sub>av</sub></i>). |
    406 
    407 Код <i>code12</i>,
    408 находящийся в младших 13 битах регистра
    409 12, задает число накапливаемых оборотов
    410 для каждой точки буфера “быстрых”
    411 измерений <i>N<sub>av</sub></i> = <i>code12</i> + 1. Если этот
    412 код равен нулю, то мы получаем пооборотные
    413 измерения без всяких накоплений. За
    414 счет этого кода можно растянуть время
    415 наблюдения до:
    416 
    417 <i>T</i> = 2048×8192×248нс ≈ 4.16 сек.
    418 
    419 #### Регистр 13 (0x0d)[reg0d]
    420 
    421 
    422 [<b>Таблица 13. </b> Описание регистра 13 (адрес 0х0d).][tab13]
    423 | Номера битов |     15-8        | 7-0 |
    424 |:------------:|:---------------:|:---:|
    425 | Описание     | Не используются | Задает начальную задержку с момента прихода внешнего синхроимпульса до старта цикла измерения (в тактах АЦП – 1/(28<i>F<sub>0</sub></i>)) |
    426 
    427 #### Регистр 14 (0x0e)[reg0e]
    428 
    429 
    430 [<b>Таблица 14. </b> Описание регистра 14 (адрес 0х0e).][tab14]
    431 | Номера битов | 15-0 |
    432 |:------------:|:----:|
    433 | Описание     | Нижний порог суммы сигналов с 2-х электродов пикапа для режима “Timeback” в формате <i>float</i> (младшие 2 байта) |
    434 
    435 #### Регистр 15 (0x0f)[reg0f]
    436 
    437 
    438 [<b>Таблица 15. </b> Описание регистра 15 (адрес 0х0f).][tab15]
    439 | Номера битов | 15-0 |
    440 |:------------:|:----:|
    441 |   Описание   | Нижний порог суммы сигналов с 2-х электродов пикапа для режима |
    442 
    443 #### Регистр 16 (0x10)[reg10]
    444 
    445 
    446 [<b>Таблица 16. </b> Описание регистра 16 (адрес 0х10).][tab16]
    447 | Номера битов | 15-0 |
    448 |:------------:|:----:|
    449 |    Описание  | Измеренная сумма сигналов с 2-х электродов пикапа для режима “Timeback” в формате <i>float</i> (младшие 2 байта) |
    450 
    451 Регистр 16 работает только на чтение.
    452 
    453 #### Регистр 17 (0x11)[reg11]
    454 
    455 
    456 [<b>Таблица 17. </b> Описание регистра 17 (адрес 0х11).][tab17]
    457 | Номера битов | 15-0 |
    458 |:------------:|:----:|
    459 |   Описание   | Измеренная сумма сигналов с 2-х электродов пикапа для режима “Timeback” в формате <i>float</i> (старшие 2 байта) |
    460 
    461 Регистр 17 работает только на чтение.
    462 
    463 #### Регистр 18 (0x12)[reg12]
    464 
    465 
    466 [<b>Таблица 18. </b>Описание регистра 18 (адрес 0х12).][tab18]
    467 | Номера битов |  15-1           | 0 |
    468 |:------------:|:---------------:|:-:|
    469 | Описание     | Не используются | В режиме “Timeback” является индикатором остановки процесса записи в буфер пооборотных измерений: 0 – запись идет, 1 – запись остановлена |
    470 
    471 Регистр 18 работает только на чтение.
    472 
    473 ### 3.2 Структура команд
    474 
    475 Стек команд.
    476 
    477 Команды, посылаемые из
    478 компьютера в пикап-станцию, содержат 6
    479 байт. На [Рис. 6](#image006) показана структура команды.
    480 
    481 <a name="image006"></a>
    482 
    483 ![<b>Рис. 6.</b> Структура команды.](psv3udp.img/image006.png)
    484 
    485 Команда содержит код
    486 команды (байт 0) и 5 байт параметров
    487 команды. Байт 1 для команд записи в
    488 рабочие регистры и чтения из рабочих
    489 регистров содержит номер регистра, для
    490 команд запроса данных определяет номер
    491 кадра ответных пакетов данных. Байты
    492 2, 3 для команды записи в рабочий регистр
    493 содержат данные, которые нужно записать
    494 в регистр, для команд запроса пооборотных
    495 данных определяют номер начальной
    496 страницы буфера пооборотных измерений,
    497 для остальных команд не имеют значения.
    498 Байты 4, 5 для команд запроса пооборотных
    499 данных определяют номер конечной
    500 страницы буфера пооборотных измерений,
    501 для остальных команд не имеют значения.
    502 
    503 После получения команды
    504 пикап-станция сразу же посылает пакет
    505 подтверждения получения команды “ACK”
    506 (Acknowledgement) – 4 байта, показанные на [Рис. 7](#image007).
    507 
    508 <a name="image007"></a>
    509 
    510 ![<b>Рис. 7.</b> Ответ “ACK” на полученную команду.](psv3udp.img/image007.png)
    511 
    512 Байт 0 – тип пакета
    513 (0х10). Байт 1 – код команды, байт 2 – номер
    514 регистра, байт 3 – статус. Если команда
    515 правильна, то есть, это существующая
    516 команда, и номер регистра лежит в
    517 диапазоне 0-15, то статус равен 0х0F. Если
    518 поступает несуществующая команда, то
    519 статус равен 0х10. Если номер регистра
    520 лежит за диапазоном 0-15, то статус равен
    521 0х20.
    522 
    523 В пикап-станции реализован
    524 двухуровневый стек команд. Имеется
    525 буфер команд и рабочий регистр команд.
    526 Первоначально, поступающая команда
    527 записывается в буфер. Если пикап-станция
    528 в момент прихода какой-либо команды
    529 свободна (не занята выполнением предыдущей
    530 команды), то сразу же произойдет перезапись
    531 из буфера команд в рабочий регистр
    532 команд, и команда начнет выполняться.
    533 Если пикап-станция в момент прихода
    534 какой-либо команды занята выполнением
    535 предыдущей команды, то перезапись из
    536 буфера команд в рабочий регистр команд
    537 (с последующим выполнением команды)
    538 произойдет только после выполнения
    539 предыдущей команды. Если в момент
    540 ожидания выполнения команды поступит
    541 еще одна команда, то она перезапишет
    542 команду, находившуюся в буфере. Существует
    543 несколько исключений. Если запущен цикл
    544 измерения, либо цикл инициализации
    545 генератора опорной частоты, либо цикл
    546 инициализации генератора калибровочного
    547 сигнала, то некоторые команды (например,
    548 команда чтения рабочего регистра) могут
    549 быть выполнены сразу, не дожидаясь
    550 окончания цикла. Подробнее об этом будет
    551 сказано ниже.
    552 
    553 ### 3.3 Описание типов команд
    554 
    555 #### Команда 0x00 - запись в регистры параметров[cmd00]
    556 
    557 Номер регистра
    558 содержится в байте 1 команды, записываемые
    559 данные – в байтах 2, 3. В ответ на эту
    560 команду пикап- станция сразу же посылает
    561 4 байта “АСК”. Момент выполнения записи
    562 в регистры зависит от того, запущен в
    563 момент прихода команды цикл измерения
    564 (или инициализации генераторов опорной
    565 частоты и калибровочного сигнала) или
    566 нет. Если цикл измерения запущен, то
    567 процесс записи в регистр осуществится
    568 только после его окончания.
    569 
    570 #### Команда 0x01 - чтение АЦП[cmd01]
    571 
    572 Чтение массива данных АЦП (осциллограмма). В
    573 ответ на эту команду пикап-станция сразу
    574 же посылает 4 байта “АСК”. Далее
    575 посылается пакет из 1034 байт ([Рис. 8](#image008)),
    576 включающий “шапку” из 10 байт и 512 2-х
    577 байтных слов типа <i>unsigned short int</i>в кодах
    578 АЦП (диапазон – 0-16383).
    579 
    580 <a name="image008"></a>
    581 
    582 ![<b>Рис. 8.</b> Структура получаемого пакета в ответ на команду 0х01.](psv3udp.img/image008.png)
    583 
    584 Данные содержат
    585 128 точек по времени (выборок) АЦП по 4-м
    586 каналам, соответствующих 4-м напряжениям
    587 сигналов с электродов пикапа. Каждая
    588 точка включает в себя 4 напряжения
    589 сигналов с электродов пикапа, следующих
    590 по очереди: U0, U1, U2, U3, U0, U1 и т.д. Значения
    591 лежат в диапазоне 0-16383, для получения
    592 реальных напряжений нужно вычесть 8192.
    593 
    594 Содержимое “шапки”
    595 приведено на [Рис. 9](#image009).
    596 
    597 <a name="image009"></a>
    598 
    599 ![<b>Рис. 9.</b> Содержимое “шапки” при посылке данных АЦП.](psv3udp.img/image009.png)
    600 
    601 Байт 0 – тип пакета
    602 (0xF1), по нему идентифицируется полученный
    603 компьютером пакет. Байт 2 соответствует
    604 байту 1 команды. На [Рис. 6](#image006) он называется
    605 “Номер регистра”. Байт 9 – номер
    606 измерения, которому соответствует
    607 данная осциллограмма (0-255). После каждого
    608 измерения счетчик номера измерения
    609 инкрементируется на 1. После 255 он
    610 сбрасывается в 0 и т.д. Байтам 3-8 присвоены
    611 числа 3-8.
    612 
    613 Момент посылки данных
    614 АЦП зависит от того, запущен в момент
    615 прихода команды 0x01 цикл измерения (или
    616 инициализации) или нет. Если цикл
    617 измерения запущен, то отправка пакета
    618 данных начнется только после его
    619 окончания.
    620 
    621 #### Команда 0x02 – чтение накопленных данных[cmd02]
    622 
    623 В ответ на
    624 эту команду пикап- станция сразу же
    625 посылает 4 байта “АСК”. Далее посылается
    626 пакет из 146 байт ([Рис. 10](#image010)), включающий:
    627 
    628 а) “шапку” из 10 байт,
    629 
    630 б)
    631 накопленные напряжения сигналов с
    632 пикапа <i>U<sub>ij</sub></i>(16 8-байтных
    633 слов типа <i>double</i>),
    634 
    635 в)
    636 максимумы оцифрованных сигналов в кодах
    637 АЦП для 4-х каналов <i>M<sub>i</sub></i>(4 2-байтных
    638 слова типа <i>unsigned short int</i>).
    639 
    640 На основе прочитанных
    641 кодов накопленных напряжений сигналов
    642 <i>code_U </i>нужно вычислить реальные средние
    643 значения напряжений на входах АЦП <i>U</i>по формуле:
    644 
    645 <i>U</i> = <i>code_U</i>/(2047×28×(<i>N<sub>e</sub></i>+1)).
    646 
    647 Вычисленные таким
    648 образом средние значения напряжений
    649 будут относиться к оцифрованным с
    650 помощью АЦП сигналам в диапазоне -8192 –&gt; +8191.
    651 
    652 <a name="image010"></a>
    653 
    654 ![<b>Рис. 10.</b> Структура получаемого пакета в ответ на команду 0х02.](psv3udp.img/image010.png)
    655 
    656 Максимумы сигналов АЦП
    657 лежат в диапазоне 0-16383, для получения
    658 реальных напряжений нужно вычесть 8192.
    659 Эти максимумы позволяют без чтения
    660 осциллограммы ([команды 0х01](#cmd01)) понять, какую
    661 часть диапазона АЦП занимает сигнал и
    662 при необходимости сменить код усиления.
    663 Содержимое “шапки” приведено на [Рис. 11](#image011).
    664 
    665 <a name="image011"></a>
    666 
    667 ![<b>Рис. 11.</b> Содержимое “шапки” при посылке накопленных данных.](psv3udp.img/image011.png)
    668 
    669 Байт 0 – тип пакета
    670 (0xF2), по нему идентифицируется полученный
    671 компьютером пакет. Байт 2 – соответствует
    672 байту 1 команды. На [Рис. 6](#image006) он называется
    673 “Номер регистра”.
    674 
    675 #### Команда 0x03 – запуск цикла измерения[cmd03]
    676 
    677 В ответ на эту команду
    678 пикап-станция сразу же посылает 4 байта
    679 “АСК”. Затем, если пикап-станция работает
    680 в режиме с внутренним запуском (биты
    681 12, 13 [регистра 0](#reg00) равны 0), сразу же запустится
    682 цикл измерения. Если же пикап-станция
    683 работает в режиме с внешним запуском
    684 (либо бит 12, либо бит 13 [регистра 0](#reg00) равен
    685 1), цикл измерения запустится только
    686 после прихода внешнего синхроимпульса.
    687 По окончании цикла измерения пикап-станция
    688 посылает пакет из 2-х байт “CONF”
    689 (“Confirmation”), показанный на [Рис. 12](#image012). Данный
    690 пакет сигнализирует о том, что цикл
    691 измерения успешно завершился, можно
    692 читать данные.
    693 
    694 <a name="image012"></a>
    695 
    696 ![<b>Рис. 12.</b> Пакет “CONF”, посылаемый после окончания цикла измерения.](psv3udp.img/image012.png)
    697 
    698 #### Команда 0x04 – чтение регистра параметров[cmd04]
    699 
    700 Номер регистра, чтение
    701 которого запрашивается, содержится в
    702 байте 2 команды. В ответ на эту команду
    703 пикап-станция сразу же посылает 4 байта
    704 “АСК”. Затем сразу же посылает 4-х
    705 байтовый пакет данных, показанный на
    706 [Рис. 13](#image013).
    707 
    708 <a name="image013"></a>
    709 
    710 ![<b>Рис. 13.</b> Структура получаемого пакета в ответ на команду 0х04.](psv3udp.img/image013.png)
    711 
    712 Байт 0 – тип пакета
    713 (0xF4), по нему идентифицируется полученный
    714 компьютером пакет. Байт 1 – номер
    715 регистра, из которого читается содержимое.
    716 
    717 Байты 2, 3 – само содержимое прочитанного
    718 регистра – 2 байта. Пакет данных посылается
    719 сразу, независимо от того, запущен цикл
    720 измерения (или инициализации) или нет.
    721 
    722 #### Команда 0x05 – остановка цикла измерения[cmd05]
    723 
    724 В ответ на эту команду
    725 пикап-станция сразу же посылает 4 байта
    726 “АСК”. Затем сразу же выполняет данную
    727 команду, то есть останавливает цикл
    728 измерения. Вообще, полезно перед каждым
    729 новым запуском измерения подавать
    730 данную команду.
    731 
    732 #### Команда 0x06 - инициализация PLL[cmd06]
    733 
    734 Инициализация
    735 генератора опорной частоты <i>F<sub>ОП</sub></i> = <i>28F<sub>0</sub></i>(~112.8 МГц).
    736 
    737 В ответ на эту команду
    738 пикап-станция сразу же посылает 4 байта
    739 “АСК”. Затем сразу же выполняет данную
    740 команду, то есть инициализирует генератор
    741 опорной частоты. Процесс инициализации
    742 занимает по времени около 600 мс. По
    743 окончании инициализации пикап-станция
    744 посылает пакет из 2-х байт “CONF”, показанный
    745 на [Рис. 14](#image014).
    746 
    747 <a name="image014"></a>
    748 
    749 ![<b>Рис. 14.</b> Пакет “CONF”, посылаемый после окончания инициализации генератора опорной частоты.](psv3udp.img/image014.png)
    750 
    751 Данную процедуру необходимо выполнять каждый
    752 раз после включения пикап- станции.
    753 Измерить опорную частоту можно, прочитав
    754 [регистр 11](#reg0b). Связь между опорной частотой
    755 <i>F<sub>ОП</sub></i> и прочитанным
    756 кодом <i>code</i>:
    757 
    758 <i>F<sub>ОП</sub></i> = (25×<i>code</i>)/8192 МГц.
    759 
    760 Контроль за опорной частотой
    761 позволяет отследить просадки
    762 (кратковременные выключения) питания.
    763 В отсутствие инициализации или в
    764 отсутствии синхросигнала частотой <i>F<sub>0</sub></i> опорная
    765 частота лежит за пределами диапазона
    766 <i>28F<sub>0</sub></i> ± 1 МГц. Таким
    767 образом, критерием правильности установки
    768 опорной частоты является нахождение
    769 этой частоты в диапазоне 111.8 – 113.8 МГц.
    770 
    771 #### Команда 0x07 – обнуление счетчика номера измерения[cmd07]
    772 
    773 В ответ на эту команду
    774 пикап-станция сразу же посылает 4 байта
    775 “АСК”. Затем сразу же выполняет данную
    776 команду, то есть обнуляет номер измерения.
    777 Данная команда полезна для работы группы
    778 пикап-станций, когда нужно привязать
    779 получаемые от пикап- станций данные к
    780 конкретному измерению.
    781 
    782 #### Команда 0x0b – чтение памяти пооборотных измерений[cmd0b]
    783 
    784 В ответ на эту команду
    785 пикап-станция сразу же посылает 4 байта
    786 “АСК”. Затем, в зависимости от того,
    787 запущен цикл измерения или нет, она,
    788 либо сразу же посылает данные (если цикл
    789 измерения не запущен), либо ожидает
    790 окончания цикла измерения, и только
    791 затем посылает данные.
    792 
    793 Память содержит
    794 измеренные напряжения с электродов
    795 пикапа за 128 К (131072) оборотов. Содержимое
    796 памяти показано на [Рис. 16](#image016).
    797 
    798 <a name="image016"></a>
    799 
    800 ![<b>Рис. 16.</b> Содержимое памяти пооборотных данных.](psv3udp.img/image016.png)
    801 
    802 Каждый оборот включает
    803 в себя 4 напряжения с электродов пикапа
    804 U0, U1, U2, U3, представляющих собой 4-байтовые
    805 числа типа <i>float</i>. Связь между прочитанным
    806 кодом <i>code_U </i>и реальным средним значением
    807 напряжения на входе АЦП <i>U</i>:
    808 
    809 <i>U</i> = <i>code_U</i>/(2047×28).
    810 
    811 Вычисленные таким
    812 образом средние значения напряжений
    813 будут относиться к оцифрованным с
    814 помощью АЦП сигналам в диапазоне -8192 –&gt; +8191.
    815 
    816 Логически весь объем
    817 памяти разбит на 2048 страниц, каждая
    818 страница содержит 64 оборота ([Рис.17](#image017)).
    819 
    820 <a name="image017"></a>
    821 
    822 ![<b>Рис. 17.</b> Структура памяти пооборотных данных.](psv3udp.img/image017.png)
    823 
    824 С помощью команды 0х0В можно прочитать
    825 любую порцию страниц. Диапазон читаемых
    826 страниц задается самой командой (см.
    827 [Рис. 6](#ima006)). Начальная страница <i>N<sub>p1</sub></i> содержится
    828 в байтах 2, 3 команды. Конечная страница
    829 <i>N<sub>p2</sub></i> содержится
    830 в байтах 4, 5 команды. В ответ на команду
    831 посылается <i>N<sub>p</sub></i> страниц в
    832 диапазоне от <i>N<sub>p1</sub></i> до <i>N<sub>p2</sub></i> включительно
    833 (<i>N<sub>p</sub></i> = <i>N<sub>p1</sub></i> – <i>N<sub>p2</sub></i> + 1).
    834 Каждая страница посылается отдельным
    835 пакетом со своей 10-байтовой “шапкой”
    836 ([Рис. 18](#image018)).
    837 
    838 <a name="image018"></a>
    839 
    840 ![<b>Рис. 18.</b> Структура одного из пакетов, содержащего страницу <i>N</i>.](psv3udp.img/image018.png)
    841 
    842 Размер каждого пакета
    843 равен 1034 байт. Вначале идет 10-байтовая
    844 “шапка”, затем напряжения с электродов
    845 пикапа за 64 оборота, каждый оборот
    846 состоит из напряжений U0, U1, U2, U3 с электродов
    847 0, 1, 2, 3 соответственно. Структура “шапки”
    848 показана на [Рис. 19](#image019).
    849 
    850 <a name="image019"></a>
    851 
    852 ![<b>Рис. 19.</b> Содержимое “шапки” при посылке пакета пооборотных данных.](psv3udp.img/image019.png)
    853 
    854 Байт 0 – тип пакета (0xFВ), по нему идентифицируется
    855 полученный компьютером пакет.
    856 
    857 Байт 1 – код команды (0х0В).
    858 
    859 Байт 2 – номер “кадра”
    860 (0-255), он эквивалентен байту 1 команды
    861 (“Номер регистра”), то есть задается
    862 запрашиваемым устройством.
    863 
    864 Байты 3, 4 –
    865 номер пакета (равный номеру страницы).
    866 
    867 Байты 5, 6 – начальная страница <i>N<sub>p1</sub></i> запрашиваемой
    868 порции страниц.
    869 
    870 Байты 7, 8 – конечная
    871 страница <i>N<sub>p2</sub></i> запрашиваемой
    872 порции страниц. Байт 9 – номер измерения.
    873 
    874 В случае, если какой-либо
    875 пакет из запрашиваемой порции окажется
    876 испорченным, его можно будет получить
    877 еще раз, запросив данную страницу.
    878 
    879 #### Команда 0x0c – запись в регистр параметров с последующим чтением[cmd0c]
    880 
    881 Данная команда объединяет
    882 [команды 0х00](#cmd00) и [0х04](#cmd04).
    883 Номер регистра содержится
    884 в байте 1 команды, записываемые данные
    885 – в байтах 2, 3. В ответ на эту команду
    886 пикап-станция сразу же посылает 4 байта
    887 “АСК”. Момент выполнения записи в
    888 регистры зависит от того, запущен в
    889 момент прихода команды цикл измерения
    890 (или инициализации генераторов опорной
    891 частоты и калибровочного сигнала) или
    892 нет. Если цикл измерения запущен, то
    893 процесс записи в регистр осуществится
    894 только после его окончания. Затем, после
    895 записи в регистр сразу же осуществляется
    896 его чтение. Пикап-станция посылает
    897 4-байтовый пакет, показанный на [Рис. 13](#image013).
    898 
    899 #### Команда 0x0d – чтение памяти “быстрых” измерений (“Fast” data)[cmd0d]
    900 
    901 По этой команде читается память “быстрых”
    902 измерений емкостью 2К (2048) точек. Если
    903 <i>N<sub>av</sub></i> = 0, то
    904 содержимое данной памяти такое же, что
    905 и для первых 2048 оборотов памяти пооборотных
    906 измерений. В ответ на эту команду
    907 пикап-станция сразу же посылает 4 байта
    908 “АСК”. Затем, в зависимости от того,
    909 запущен цикл измерения или нет, она,
    910 либо сразу же посылает данные (если цикл
    911 измерения не запущен), либо ожидает
    912 окончания цикла измерения, и только
    913 затем посылает данные.
    914 
    915 Структура памяти
    916 “быстрых” измерений полностью аналогична
    917 структуре памяти пооборотных измерений.
    918 Отличие только в емкости памяти. Данная
    919 память состоит из 32 страниц по 64 точки
    920 в каждой странице ([Рис. 20](#image020)). “Шапка” также
    921 полностью аналогична “шапке” при
    922 [команде 0х0В](#cmd0b), только байт 1 – код команды
    923 равен 0х0D ([Рис. 21](#image021)).
    924 
    925 <a name="image020"></a>
    926 
    927 ![<b>Рис. 20.</b> Структура памяти “быстрых” измерений.](psv3udp.img/image020.png)
    928 
    929 <a name="image021"></a>
    930 
    931 ![<b>Рис. 21.</b> Содержимое “шапки” при посылке пакета “быстрых” измерений.](psv3udp.img/image021.png)
    932 
    933 #### Команда 0x0f – синхронное чтение регистра параметров[cmd0f]
    934 
    935 Данная команда аналогична
    936 [команде 0х04](#cmd04), единственное ее отличие в
    937 том, что процесс посылки пакета данных
    938 (4 байта) привязан по времени к окончанию
    939 цикла измерения. Если цикл измерения
    940 не запущен, то и посылки данных не будет.
    941 Если после подачи [команды 0х03](#cmd03) с внешним
    942 запуском подать команду 0х0F, то содержимое
    943 регистра придет после окончания цикла
    944 измерения (сразу после “CONF”).
    945 
    946 ### 3.4 Сводная таблица типов пакетов от пикап-станции
    947 
    948 
    949 [Таблица 19][tab19]
    950 | Байт идентификации (байт&nbsp;0) | Длина пакета (байт) | Тип пакета |
    951 |:----:|:----:|:---------------------------------------------:|
    952 | 0х10 | 4    | Пакет подтверждения получения команды – “АСК” |
    953 | 0х11 | 2    | Пакет, сигнализирующий о завершении цикла измерения (инициализации) – “CONF” |
    954 | 0хF1 | 1034 | Массив данных АЦП (осциллограмма) |
    955 | 0хF2 | 82   | Накопленные данные |
    956 | 0хF4 | 4    | Содержимое рабочего регистра|
    957 | 0хFВ | 1034 | Массив пооборотных или “быстрых” данных (1 страница)
    958 
    959 ### 3.5 Временные диаграммы работы пикап-станции
    960 
    961 На [Рис. 23](#image023) показана
    962 временная диаграмма работы пикап-станции
    963 в режиме работы с внешним запуском при
    964 запросе на пооборотные данные. Вначале
    965 подается [команда 0х03](#cmd03). Сразу же из
    966 пикап-станции придет подтверждение
    967 “АСК” получения команды. Реально цикл
    968 измерения запустится по приходу внешнего
    969 синхроимпульса “Впуск”. Компьютер
    970 далее должен дождаться окончания цикла
    971 измерения – прихода из пикап-станции
    972 пакета “CONF”. После этого он с помощью
    973 [команды 0x0B](#cmd0b) запрашивает и получает
    974 пооборотные данные. Далее компьютер
    975 может запрашивать и другие типы данных.
    976 Скорость передачи данных пооборотных
    977 измерений примерно 50 Мбит/сек. Массив
    978 данных 8К оборотов передается примерно
    979 за 21 мс.
    980 
    981 <a name="image023"></a>
    982 
    983 ![<b>Рис. 23.</b> Временная диаграмма работы пикап-станции с внешним запуском.](psv3udp.img/image023.png)
    984 
    985 На [Рис. 24](#image024) показана
    986 временная диаграмма, поясняющая работу
    987 стека команд. Допустим, одна за другой
    988 в пикап-станцию приходят 2 команды: [0x0B](#cmd0b)
    989 и [0х02](#cmd02). Команда [0x0B](#cmd0b) будет сразу же выполняться
    990 – пикап-станция будет посылать пооборотные
    991 данные, а команда [0х02](#cmd02) будет ожидать своей
    992 очереди в буфере команд. По окончании
    993 цикла передачи пооборотных данных
    994 пикап-станция вначале пошлет пакет
    995 “АСК” (раньше она его послать не может
    996 из-за того, что занят передатчик), а затем
    997 и сами накопленные данные.
    998 
    999 <a name="image024"></a>
   1000 
   1001 ![<b>Рис. 24.</b> Временная диаграмма, поясняющая работу стека команд.](psv3udp.img/image024.png)
   1002 
   1003 ### 3.6 Watchdog[Watchdog]
   1004 
   1005 Для предотвращения
   1006 “зависания” UDP сервера в пикап-станции
   1007 реализован watchdog. Если какое-то время из
   1008 Ethernet приемопередатчика не поступают
   1009 команды, либо приемопередатчик не
   1010 посылает никаких данных, на UDP сервер
   1011 поступает команда “Reset” – импульс
   1012 длительностью 80 нс. По окончании этого
   1013 импульса UDP сервер снова готов к приему
   1014 команд. Время, через которое при отсутствии
   1015 потока данных (в обоих направлениях)
   1016 подается команда “Reset”, зависит от
   1017 того, установлен или нет в единицу бит
   1018 13 [регистра 0](#reg00). Если этот бит установлен
   1019 (запуск измерения от внешнего синхроимпульса
   1020 “Впуск”), это время (timeout) равно 86 сек.
   1021 Если этот бит не установлен, данное
   1022 время (timeout) равно 0.67 сек. После подачи
   1023 команды “Reset” все таблицы IP адресов
   1024 UDP сервера обнуляются. Это означает, что
   1025 если, например, после подачи [команды 0х03](#cmd03)
   1026 в случае внешнего запуска синхроимпульс
   1027 “Впуск” придет более, чем через 86 сек,
   1028 пикап-станция по окончании цикла
   1029 измерения пошлет пакет “CONF” по адресу
   1030 “0.0.0.0”, а не по адресу компьютера, с
   1031 которого был сделан запрос.
   1032 
   1033 ### 3.7 Режим “Timeback”[Timeback]
   1034 
   1035 Для включения режима
   1036 автоматической прокрутки памяти
   1037 пикап-станции нужно сделать записи в
   1038 следующих регистрах:
   1039 
   1040 1) В регистры [14](#reg0e),[15](#reg0f) записать
   1041 нижний предел суммы 2-х напряжений
   1042 пооборотных измерений каналов 0, 2 в
   1043 формате <i>float</i> (4 байта): в регистр [14](#reg0e)
   1044 записать младшие 2 байта, в регистр [15](#reg0f)
   1045 записать старшие 2 байта. Напомним, что
   1046 величина напряжения пооборотных
   1047 измерений равна:
   1048 
   1049 U<sub>ti</sub> = 2048×28×U<sub>ADCi</sub>,
   1050 
   1051 где U<sub>ADCi</sub> – среднее
   1052 значение напряжения сигнала канала <i>i</i> в кодах АЦП
   1053 (±8191).
   1054 
   1055 2) В [регистре 0](#reg00) бит 14
   1056 установить в 1, что означает режим
   1057 автоматической прокрутки.
   1058 
   1059 3)
   1060 В [регистр 4](#reg04) записать число оборотов N<sub>об</sub>,
   1061 в течение которых будет заполняться
   1062 буфер пооборотных измерений после
   1063 сброса пучка (0-65535). Реальное число
   1064 оборотов, в течение которых будет
   1065 заполняться буфер пооборотных измерений
   1066 после сброса пучка, будет на 16 оборотов
   1067 больше, то есть N<sub>об</sub> + 16.
   1068 
   1069 Запуск режима
   1070 автоматической прокрутки (непрерывной
   1071 записи в память) осуществляется с помощью
   1072 [команды 3](#cmd03), как и обычный запуск. Программная
   1073 остановка режима автоматической
   1074 прокрутки осуществляется с помощью
   1075 [команды 5](#cmd05), как и для обычного режима.
   1076 
   1077 После
   1078 запуска режима автоматической прокрутки
   1079 запись в память будет осуществляться
   1080 до тех пор, пока сумма сигналов по каналам
   1081 0 и 2 (U<sub>t0</sub> + U<sub>t2</sub>)
   1082 будет больше числа, записанного в
   1083 регистрах [14](#reg0e), [15](#reg0f). Если прочитывать статусный
   1084 [регистр 18](#reg12), то в этом случае должна быть
   1085 0. После остановки данного режима в
   1086 [регистре 18](#reg12) будет находиться 1.
   1087 
   1088 После остановки режима
   1089 автоматической прокрутки номер ячейки
   1090 памяти <i>N</i>, при котором прекратилась
   1091 запись, будет лежать в регистрах [9](#reg09), [10](#reg0a).
   1092 Ячейка памяти с номером <i>N-1</i> – это
   1093 последняя ячейка, в которой произошла
   1094 запись перед остановкой. В ячейке с
   1095 номером <i>N</i> лежат испорченные данные,
   1096 и эту ячейку нужно отбросить. После
   1097 остановки нужно прочитать весь буфер
   1098 пооборотных измерений (131072 оборота), и,
   1099 зная номер ячейки <i>N</i>, преобразовать
   1100 его, свернув по времени. После этого
   1101 надо отбросить последнюю ячейку,
   1102 соответствующую номеру <i>N</i>, оставив
   1103 таким образом 131071 оборот.
   1104 
   1105 Во время работы режима автоматической
   1106 прокрутки медленные измерения не
   1107 работают, но в регистрах [16](#reg10), [17](#reg11) будет
   1108 находиться сумма сигналов по каналам
   1109 0 и 2 (U<sub>t0</sub> + U<sub>t2</sub>)
   1110 в формате <i>float</i> (4 байта): в
   1111 регистре [16](#reg10) – младшие 2 байта, в регистре
   1112 [17](#reg11) – старшие 2 байта. Кроме того, во время
   1113 работы режима автоматической прокрутки
   1114 можно записывать нижний предел суммы
   1115 2-х напряжений пооборотных измерений в
   1116 регистры [14](#reg0e), [15](#reg0f). Один из возможных сценариев
   1117 работы в данном режиме – постоянно
   1118 прочитывая регистры [16](#reg10), [17](#reg11), постоянно
   1119 корректировать нижний предел, записывая
   1120 коды в регистры [14](#reg0e), [15](#reg0f). Это позволит отделить
   1121 остановку режима вследствие резкого
   1122 сброса пучка от остановки из-за медленной
   1123 деградации пучка.