Буфер памяти для накопления массива

Простейшие вопросы в области инженерной разработки

Буфер памяти для накопления массива

Postby Denis29 on 18 Sep 2018, 16:52

Всем добрый день! Подскажите пожалуйста с решением след. задачи: в цикле при помощи Visa считываются данные с внешнего устройства с частотой 320 Гц, получается непрерывный поток значений сигнала. Необходимо накапливать данные значения в массив размером 320 точек, и далее уже выводить этот массив на график, обрабатывать и т.д. То есть создать некий буфер данных, который будет перезаписываться. Само накопление в массиве создать удалось, но он движется от точки к точке, а не порциями. нужно накапливать порцию и выдавать, накапливать и выдавать, с частотой раз в секунду. Для пояснения прикладываю рисунок.
Attachments
Буфер данных.jpg
Denis29
beginner
beginner
 
Posts: 10
Joined: 20 Feb 2014, 11:11
LabVIEW Version: 13, 14
Karma: 0

Re: Буфер памяти для накопления массива

Postby Borjomy_1 on 18 Sep 2018, 17:52

Палитра Signal Processing/Point By Point/Other Function PtByPt/Data Queue PtByPt.vi
А принимать значение полного буфера один раз в 320 замеров. Размер буфера может быть больше, но использовать для вычислений последние 320 значений. Но в реальности такая схема работать не будет. И вот почему: прием несинхронный, это раз и период сигнала принципиально не будет совпадать 320 точками. Т.е уже на втором периоде фаза поплывет. И второе, поиск начала периода это отдельная задача.
Borjomy_1
expert
expert
 
Posts: 1826
Joined: 28 Jun 2012, 09:32
Location: город семи холмов
Medals: 3
Activity (1) Professionalism (1) Silver (1)
LabVIEW Version: 4-8.6,9-14
Karma: 319
VIP

Re: Буфер памяти для накопления массива

Postby Denis29 on 19 Sep 2018, 17:41

Borjomy_1, Большое спасибо! Все заработало, массив выдается стабильно размером 320 точек и фаза вроде тоже не плывет, проверил путем склейки выдаваемых массивов в первоначальный массив. Единственное я не понял зачем нужен вывод "eliminated element" в блоке Data Queue. То есть получается он первую точку в очереди убирает?
Denis29
beginner
beginner
 
Posts: 10
Joined: 20 Feb 2014, 11:11
LabVIEW Version: 13, 14
Karma: 0

Re: Буфер памяти для накопления массива

Postby Borjomy_1 on 20 Sep 2018, 15:44

Denis29, функция универсальная, поэтому сделано на все варианты. Кому-то может и понадобится.
Borjomy_1
expert
expert
 
Posts: 1826
Joined: 28 Jun 2012, 09:32
Location: город семи холмов
Medals: 3
Activity (1) Professionalism (1) Silver (1)
LabVIEW Version: 4-8.6,9-14
Karma: 319
VIP


Return to Для чайников

Who is online

Users browsing this forum: Baidu and 17 guests

cron