Вопросы по плате HSDIO

VISA, TCP/IP, USB, CAN, GPIB и подобные протоколы
Ответить
targasonic
interested
interested
Сообщения: 2
Зарегистрирован: 31 окт 2013, 09:48
Версия LabVIEW: 2013
Контактная информация:

Вопросы по плате HSDIO

Сообщение targasonic »

Добрый день. В данный момент изучаю LabVIEW и модульные приборы PXI.
Работаю с платой NI PXIe-6555 (генератор цифровых сигналов). Стоит задача, которая вызвала у меня затруднение:

Необходимо сформировать управляющие последовательности на выходах платы:
1. DIO_0 - тактовая частота (сделал)
2. DIO_1...DIO_3 - отправлять управляющие команды по SPI, по нажатию кнопки.

Проблема состоит в том, что я сформировал частоту на выход DIO_0 и получается, что сессия работы с DIO_0 открыта. Когда я хочу начать сессию с другими выходами (DIO_1...DIO_3), чтобы отправить посылку SPI, появляется ошибка - необходимо завершить начатую сессию, чтобы обратиться к другими DIO. Я не могу её завершить, так как прервется тактовая частота.

Вопросы:
1. Подскажите варианты решения данной ситуации.
2. Можно ли записать в память платы сигнал, завершить сессию работы с этой платой, при этом, чтобы этот сигнал бесконечно повторялся ?
3. Может быть это проще сделать через скриптовое описание? Подскажите пожулайста, материал с котором можно начать изучение скриптов в LabVIEW, а именно для генерации сигналов.

Заранее спасибо.
Аватара пользователя
Andrew Lunev

Activity Professionalism
VIP
VIP
Сообщения: 957
Зарегистрирован: 11 дек 2010, 12:31
Награды: 2
Версия LabVIEW: 2014-2021
Откуда: Москва
Благодарил (а): 4 раза
Поблагодарили: 10 раз

Re: Вопросы по плате HSDIO

Сообщение Andrew Lunev »

1. С вашим генератором я не работал, но скорее всего программируется он по стандартной концепции NI. В таком случае вы не можете создать несколько задач цифрового вывода одновременно. Задача может быть только одна, но она может быть многоканальной. Поэтому создаете четырехканальную задачу и для каждого канала формируете нужную цифровую последовательность.
2. Записать сигнал в плату можно и пустить его по кругу тоже можно, но только для задачи целиком и не завершая сессию(задачу).
3. Не понимаю про какие скрипты в LabView вы говорите. Что вы называете скриптами?

Если тактовая частота должны быть всегда, а команды по SPI должны меняться, то остается только в реальном времени генерировать последовательность и посылать ее в буфер. Но тут надо следить чтобы буфер не опустошался, иначе тактовый сигнал собьется.
Если тактовый сигнал нужен только в момент подачи команд, то генерируете сигналы на 4 канала, записываете в буфер и запускаете на вывод. После завершения вывода команды задача остановится. Следующую команду формируете так же и перезапускаете задачу.
targasonic
interested
interested
Сообщения: 2
Зарегистрирован: 31 окт 2013, 09:48
Версия LabVIEW: 2013
Контактная информация:

Re: Вопросы по плате HSDIO

Сообщение targasonic »

Сейчас я пошел по такому пути решения:
1. Создаю два файла в waveform editor, которые описывают все задействованные каналы.
1ый файл с частотой, которая пойдет на DIO_0:
Изображение
2ой такой же файл, но в дальнейшем в него буду добавлять команды SPI:

2. После этого записываю два этих файла в память платы.
3. по срабатыванию кнопки "отправить команду SPI", я переписываю файл SPI , добавляя в него команду:
Изображение

4. Устанавливаю триггер, который запускает передачу файла с командой.
5. после отправки этого файла, продолжаю посылать файл WORK...


Моя программа:
Изображение

(в данный момент вместо добавления команд SPI, я просто рандомом переписываю файл SPI (для отладки процесса перезаписи файла в памяти платы.))

Переключение генерации среди файлов, происходит по триггеру без проблем. Однако в памяти платы waveform "SPI" почему то не обновляется..
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Коммуникация с приборами»