2.1. Программа Sync
Murzin Michael Murzin módosította ezt az oldalt ekkor: 1 hónapja

Программа Sync

Данная страница посвящена программе Sync для загрузки синхропоследовательности в синронизатор Due Pulse Programer.

Принцип работы

Синхронизатор построенный на основе Due Pulse Programer (аппаратная часть на Arduino Due) отрабатывает так называемые события, в течении которых состояния определенных пинов неизменны. Новое событие меняет конфигурацию пинов в соответствии с загруженной траекторией. В МРТ-консоли управляются пины 33 (SDR-передатчик), 40 (Осциллограф), 44 (ГРУ), 36 (Свитч). Траектория состоит из последовательности событий и загружается с помощью программы Sync. Данные о событиях и их длительности берутся из XML и посылаются в последовательный порт синхронизатора. Структура входного XML выглядит так:

<?xml version="1.0" encoding="utf-8"?>
<root>
<ParamCount> ... </ParamCount>
<RF>
    <RF1>1</RF1>
    <!--Sync event for SDR tranciever-->
</RF>

<SW>
    <SW1>0</SW1>
    <!--Sync event for Switch-->
</SW>

<ADC>
    <ADC1>0</ADC1>
    <!--Sync event for ADC oscilloscope-->
</ADC>

<GR>
    <GR1>1</GR1>
    <!--Sync event for GRU-->
</GR>

<CL>
    <CL1>1000</CL1>
    <!--Duration of event-->
</CL>
</root>

Величины RF, SW, ADC, GR отвечают за состояния синхронизирующих пинов для SDR, Switch, осциллографа и градиентных усилителей в течение конкретного события соответственно. Величина CL отвечает за длительность конкретного события.

После создания XML-файла необходимо подключить синхронизатор к компьютеру, сделать аппаратный сброс (нажать на красную кнопку на плате Arduino Due), после чего можно из директории с исполняемым файлом посылать команду вида:

Sync.exe <filename> -p <serial_port> [--debug]

После этого начинается загрузка траектории в память платы синхронизатора. При успешном завершении траектории ввыведется соответствующее сообщение. После этого необходимо послать односимвольную команду e (execute) в последовательный порт синхронизатора. Если всё сделанно правильно в терминале должна вывестись строка: Waiting for trigger. После этого необходимо подключить контакты Trigger Output радиопередатчика к пину 22 синхронизатора. На этом моменте можно запускать радиопередатчик.

Возможные проблемы при запуске Sync

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

  1. Неправильно указан COM-порт
  2. Неправильная структура XML
  3. Не найден файл XML

Данные ошибки будут занесены в файл лога. Однако возможны ошибки, которые не всегда очевидны:

  1. Неправильные значения величин в XML (величины RF, ADC, SW и GR принимают только 0 или 1, для величины CL принимаются значения от 20 до max(uint32_t))
  2. Указано неверное количество событий в ParamCount
  3. Не выполнен сброс синхронизатора
  4. COM-порт синхронизатора открыт в терминале или другой программе (для работы Sync необходимо его закрыть)