Справка по DGCS


DGCS - Delay Generator Control System


Документация: Worksheet/.


DGCS - это система управления генераторами задрежек компании Standford Research System.

Возможности системы:

  1. Работа с множеством устройств одновременно;
  2. Изменение режима триггера;
  3. Изменение времени задержки каждого канала;
  4. Изменение временной ширины импульса;
  5. Контроль работы устройства (чтение регистора ошибок);
  6. Возможность удаленной работы драйвера посредством технологии DIM;


Конфигурирование системы


Конфигурирование системы производится при помощи конфигурационного файла dgcs_dg645_devices.cmd. Данный файл необходимо открыть в текствоом редакторе и найти строки настройки устройства:

   rem   Device     Facility DevName Identitier COM  TcpPort IPClient       Polling Priority   DevLabel
   call :DG645      DGCS     DG645   G1         1    5025    172.21.4.240   4       tpHighest  G1
   call :DG645      DGCS     DG645   G2         2    5025    172.21.4.241   4       tpHighest  G2
   call :DG645      DGCS     DG645   G3         3    5025    172.21.4.242   4       tpHighest  G3
   call :DG645      DGCS     DG645   G4         4    5025    172.21.4.243   4       tpHighest  G4
  
В столбце "Facility" указывается название системы. В данном случае это DGCS. Если данную систему планируется использовать в качестве подсистемы, то название системы следует указать в формате "NAMESYSTEM.DGCS".

В столбце "DevName" указывается имя устройства. Так как в данном конфигураторе используются устройства SRS Delay Generator DG645, то рекомендуется оставить данный столбец неизменным.

В столбце "Identifire" указывается конфигурационный идентификатор устройства. Идентификатор для каждого устройства должен быть уникален воизбежании конфликта работы драйверов.

В столбце "COM" указывается виртуальный (не физический) номер COM-порта. Он необходим для создания канала связи с устройством (для каждого устройства он должен быть уникален).

В столбце "TcpPort" необходимо TCP-порт для обмена данных с устройством (обычно указывается в инструкции по эксплуатации к устройству, либо в параметрах устройства).

В столбце "IPClient" указывается IP-адрес устройства.

В столбце "Polling" указывается скорость пробуждения потока канала связи.

В столбце "Priority" указывается приоритет потока канала связи. Данный параметр может иметь следующие значени:

  1. tpIdle - самый низший приоритет. Рекомендуется для вычислительных потоков, которые выполняют длительные вычисления. Чтобы они не мешали выполнению других потоков, им дается самый низший приоритет. Низкоприоритетный поток будет выполняться, только пока система не занята. При высокой загрузке процессора выполнение потока может задерживаться на неопределенное время.
  2. tpLowest - низкий приоритет.
  3. tpLower - приоритет ниже среднего.
  4. tpNormal - средний приоритет. Такой приоритет имеет основной поток программы, где выполняются команды пользователя и отображение графики.
  5. tpHigher - выше среднего.
  6. tpHighest - высокий.
  7. tpTimeCritical - самый высокий. Потоки этого приоритета обязаны освобождать процессор в самые минимальные сроки. Если для низкоприоритетных потоков циклы ожидания не рекомендуются, то для высокоприоритетных потоков они просто запрещены, так как могут подвесить систему. Потоки с приоритетом tpTimeCritical с высокой вероятностью будут выполняться строго периодически, примерно каждые 10 миллисекунд. При высокой загрузке процессора выполнение высокоприоритетного потока будет также с большой вероятностью происходить вовремя.

В столбце "DevLabel" указывается наименавиение устройство, которое будет отображаться на мнемосхеме системы.

После того, как все параметры будут указаны следует запустить файл dgcs_dg645_devices.cmd, что создаст файлы конфигурации устройства.


Запуск системы


Запуск системы производиться путем открытия файла !dgcs.cfg через CRW32.exe. Сделать это следует следущим образом:

  1. Открыть папку Config, где находятся конфигурационные файлы системы;
  2. При помощи правой кнопки мыши нажать на файл !dgcs.cfg;
  3. В открывшемся меню выбрать "Открыть с помощью...";
  4. В открывшемся окне прописать (выбрать) путь до до исполняемого файла Crw32.exe или CrwGo.exe (пример: c:\Crw32exe\Сrw32.exe);
  5. Нажать OK.
После выполненной процедуры произойдет запуск сисетмы.


Удаленная работа системы


В данной системе предусметрена удаленное управление при помощи технологии DIM. Система делится на две части: серверную и клиентскую. Серверная часть системы работает на ЭВМ, которое управляет непосредственно устройствами. Клиентская часть системы работает на удаленной ЭВМ (например, рабочее место оператора установки, где используется система). Для корректной работы системы в данном режиме необходимо в основных конфигурационных файлах сервера и клиента (dgcs_daq_server.cfg и dgcs_daq_client.cfg) внести изменения - для переменной DIM_DNS_NODE указать IP-адрес или HOST-имя устройства где запущен DIM_DNS (например: DIM_DNS_NODE = simply). В случае простейшего использования данного режима, в файле dgcs_daq_server.cfg, в качестве адреса устройства DIM_DNS слудет указать точку (.), тогда процесс DIM_DNS запуститься вместе с серверной часть системы, а в файле dgcs_daq_client .cfg, в качестве DIM_DNS указывается IP-адрес ЭВМ, где работает сервеная часть системы. Запуск серверной и клентской частей системы просходит также, как описано в предыдущей главе, только при запуске вместо файла !dgcs.cfg используются файлы !dgcs_server.cfg и !dgcs_client.cfg соответственно.


Консольные команды


Драйвер поддерживает управление через консольные команды (см ниже). Используются следущие команды:

  @Clear                     - сбросить регистры состояний устройства
  @Delay канал, значение     - установить новую задержку/ширину канала
  @Amplitude выход, значение - установить новую амплитуду выхода
  @Offset выход, значение    - установить новое смещение выхода
  @Polarity выход, значение  - установить новое значение полярности выхода
  @Trigger                   - вызвать срабатывание триггера
  @TriggerMode значение      - установить новый режим работы триггера
  @TriggerLevel значение     - установить новый уровень триггера
 


Список сокращений и аббревиатур


Для именования кривых, тегов, сенсоров, окон и других программных объектов используются следующие соглашения о наименовании:

   Система:
    DGCS Название
   Подсистема:
    .DG645 - Название подсистемы
   Идентификация устройств:
    .G1 - Идентификатор устройства
   Параметры:
    DIMCMD_MY    -    The DIM command data
    DIMGUICLICK  -    The DIM click sensor data
    POLL_ENABLE  -    Enable polling flag
    POLL_RATE    -    Polling rate, poll/sec
    ERROR_CNT    -    Device error counter
    CLOCK        -    Host clock Date-Time
    SERVID       -    ServerId: pid@hostname
    IDN_MODEL    -    Device Identifier
    IDN_SERIAL   -    Device serial number
    IDN_VERSION  -    Device software version
    ESR          -    Event Status Register
    INSR         -    Instrument Status Register
    TRIGGERMODE  -    Device Trigger Mode
    TRIGGERLEVEL -    Device Trigger level
    AB_DELAY     -    Device channel A delay
    AB_WIDTH     -    Device channel B delay
    AB_LVLAMP    -    Level Amplitude AB
    AB_LVLOFF    -    Level Offset AB
    AB_LVLPOL    -    Level Polarity AB
    CD_DELAY     -    Device channel C delay
    CD_WIDTH     -    Device channel D delay
    CD_LVLAMP    -    Level Amplitude CD
    CD_LVLOFF    -    Level Offset CD
    CD_LVLPOL    -    Level Polarity CD
    EF_DELAY     -    Device channel E delay
    EF_WIDTH     -    Device channel F delay
    EF_LVLAMP    -    Level Amplitude EF
    EF_LVLOFF    -    Level Offset EF
    EF_LVLPOL    -    Level Polarity EF
    GH_DELAY     -    Device channel G delay
    GH_WIDTH     -    Device channel H delay
    GH_LVLAMP    -    Level Amplitude GH
    GH_LVLOFF    -    Level Offset GH
    GH_LVLPOL    -    Level Polarity GH

    STATE        -    State device tag
    SYSTEMMODE   -    System Mode tag
   Например:
    DGCS.DG645.G1.DIMCMD_MY
    DGCS.DG645.G1.DIMGUICLICK
    DGCS.DG645.G1.POLL_ENABLE
    DGCS.DG645.G1.POLL_RATE
    DGCS.DG645.G1.ERROR_CNT
    DGCS.DG645.G1.CLOCK
    DGCS.DG645.G1.SERVID
    DGCS.DG645.G1.IDN_MODEL
    DGCS.DG645.G1.IDN_SERIAL
    DGCS.DG645.G1.IDN_VERSION
    DGCS.DG645.G1.ESR
    DGCS.DG645.G1.INSR
    DGCS.DG645.G1.TRIGGERMODE
    DGCS.DG645.G1.TRIGGERLEVEL
    DGCS.DG645.G1.AB_DELAY
    DGCS.DG645.G1.AB_WIDTH
    DGCS.DG645.G1.AB_LVLAMP
    DGCS.DG645.G1.AB_LVLOFF
    DGCS.DG645.G1.AB_LVLPOL
    DGCS.DG645.G1.CD_DELAY
    DGCS.DG645.G1.CD_WIDTH
    DGCS.DG645.G1.CD_LVLAMP
    DGCS.DG645.G1.CD_LVLOFF
    DGCS.DG645.G1.CD_LVLPOL
    DGCS.DG645.G1.EF_DELAY
    DGCS.DG645.G1.EF_WIDTH
    DGCS.DG645.G1.EF_LVLAMP
    DGCS.DG645.G1.EF_LVLOFF
    DGCS.DG645.G1.EF_LVLPOL
    DGCS.DG645.G1.GH_DELAY
    DGCS.DG645.G1.GH_WIDTH
    DGCS.DG645.G1.GH_LVLAMP
    DGCS.DG645.G1.GH_LVLOFF
    DGCS.DG645.G1.GH_LVLPOL
  


CRW-DAQ © 2001..2024 Alexey Kuryakin kouriakine@mail.ru.