2.2.1. Программа pico_test_00_second_copy
Vinokurov Viacheslav Vinokurov editó esta página hace 1 mes

Программа pico_test_00_second_copy

Программа pico_test_00_second_copy является сторонней утилитой к осциллографу Pico4000a и позволяет собирать с него необходимое количество информации в заданное время.

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

Цифровой осциллограф Pico4000a требует для сбора данных количество собираемых точек в каждый из моментов сбора данных, частоту дискретизации, количество каналов и массив times, содержащий время, в которые необходимо осуществить сбор данных. Программа pico_test_00_second_copy принимает на вход XML файл содержащий необходимые параметры. Структура XML выглядит так:

<root>
    <points>
        <title>Points</title>
        <value>[150000, ...]</value>
    </points>
    <num_of_channels>
        <title>Number of Channels</title>
        <value>4</value>
    </num_of_channels>
    <times>
        <title>Times</title>
        <value>[0.0015, ...]</value>
    </times>
    <sample_freq>
        <title>Sample Frequency</title>
        <value>400000000</value>
    </sample_freq>
</root>

Утилита предполагает множественный сбор данных, поэтому значения для точек сбора (Points) и моментов сбора (Times) передается в виде массива. Создав указанный файл, подключите осциллограф к компьютеру. Канал A осциллографа подключается к синхронизатору, оставшиеся каналы подключаются к источникам сигнала. Выполнив предыдущие действия можно запускать программу следующим образом:

pico_test_00_second_copy.exe <filename> [--debug, --below]

Флаг --below позволяет устанавливать триггер для сбора по заднему фронту. По завершению работы программы в папке outputs выгружаются собранные с каждого канала данные в файл data_fixed.csv.

Програмная синхронизация с радиопередатчиком

В силу аппаратных задержек осциллографа в некоторых случаях синхросигнал может прийти раньше полной инициализации осциллографа. В этом случае осциллограф отработает по таймауту. Чтобы этого избежать в программе pico_test_00_second_copy используются методы межпроцессного взаимодействия (IPC), в частности семафоры. Программа pico_test_00_second_copy посылает команду управляющей программе (GUI или скрипт автоматического запуска) после завершения инициализации осциллографа. Когда команда принята в управляющем ПО, начинается запуск передатчика и синхронизатора.

Возможные ошибки

При возникновении ошибок смотрите логи в папке picologs. В логах пишется только код ошибки или состояния осциллографа. В файле PicoStatus.h приведены коды состояний.

Тем не менее типовые ошибки могут происходить и при состоянии PICO_OK. Например:

  1. Не пришел синхросигнал
  2. Не закрыта другая утилита для Picoscope

В случае подобных ошибок проверьте оборудование.