Советы по программированию на LabVIEW

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

Re: Советы по программированию на LabVIEW

Postby Andrew Lunev on 16 Apr 2016, 15:15

User avatar
Andrew Lunev
leader
leader
 
Posts: 855
Joined: 11 Dec 2010, 12:31
Location: Москва
Medals: 2
Activity (1) Professionalism (1)
LabVIEW Version: 2016
Karma: 244
hardware I/O VIP teachers

Re: Советы по программированию на LabVIEW

Postby Darkmen999 on 16 Apr 2016, 15:34

Извините. Раньше времени панику навел. Видимо был невнимателен, и показалась всякая ернуда. Заработался)
Большое спасибо за помощь!
Darkmen999
interested
interested
 
Posts: 3
Joined: 16 Apr 2016, 11:17
LabVIEW Version: 2012
Karma: 0

Re: Советы по программированию на LabVIEW

Postby Alex77 on 02 Jun 2016, 12:45

Прошу помощи. в LabVIEW совсем новичок. Я получаю значения с СОМ в виде строки, преобразую элементы строки в числовые данные и вывожу значения на график. Но периодически на вход приходит пустая строка и LabView выдает ошибку. Пока решил проблему склеиванием приходящей с порта строки со строкой 0,0,0,0,0,0 (выглядит ужасно, знаю).
Но из-за этого на графиках появляются провалы. Необходимо сделать так, чтобы когда приходит пустая строка, мы вместо нее посылали предыдущую строку. Можете подсказать, как это реализовать? Я так понимаю можно задействовать Case Structure, но как это сделать пока без понятия.
Буду очень благодарен за помощь
Alex77
interested
interested
 
Posts: 8
Joined: 30 May 2016, 12:22
LabVIEW Version: 15
Karma: 0

Re: Советы по программированию на LabVIEW

Postby ladik on 02 Jun 2016, 13:15

Alex77, хм..Вы уже писали это недавно вот тут viewtopic.php?f=69&t=57. И подсказку я Вам там набросал. Используйте сдвиговые регистры.
User avatar
ladik
advanced
advanced
 
Posts: 188
Joined: 18 Nov 2014, 11:45
Location: Астана
Medals: 1
Silver (1)
LabVIEW Version: 2011, 2015
Karma: 67
hardware I/O VIP

Re: Советы по программированию на LabVIEW

Postby dadreamer on 02 Jun 2016, 13:17

ladik, очевидно, автор хочет реализовать всё именно на Case структуре. :)
User avatar
dadreamer
doctor
doctor
 
Posts: 2921
Joined: 17 Feb 2013, 16:33
Medals: 4
Activity (1) Professionalism (1) Автор (2)
LabVIEW Version: 2.5 — 2017
Karma: 711
I/O VIP vision internet

Re: Советы по программированию на LabVIEW

Postby Alex77 on 02 Jun 2016, 14:55

ladik, Прошу прощения, не заметил ваш комментарий. Сделал вот так, но labview ругается... В чем может быть дело?
Вы не могли бы объяснить, каким образом работает ваш пример?
Alex77
interested
interested
 
Posts: 8
Joined: 30 May 2016, 12:22
LabVIEW Version: 15
Karma: 0

Re: Советы по программированию на LabVIEW

Postby ladik on 03 Jun 2016, 08:57

Хм, Вы совсем не хотите думать и разбираться в том, как работает мой пример. Массив-константа за циклом - это пример данных с пустыми строками, т.е. то, что Вы получаете с порта. Цикл while, чтобы выполнялось не единожды. Пример работает очень просто. Мы получаем строку, если она не пустая, выводим её, и сохраняем в сдвиговом регистре. Если пустая - выводим последнее сохранённое значение. Почитайте Help, как работает каждая функция в примере. Вам не нужен массив констант, цикл for, index array. Вам в свой VI нужно добавить только сдвиговый регистр, проверку на пустую строку и функцию Select.
User avatar
ladik
advanced
advanced
 
Posts: 188
Joined: 18 Nov 2014, 11:45
Location: Астана
Medals: 1
Silver (1)
LabVIEW Version: 2011, 2015
Karma: 67
hardware I/O VIP

Re: Советы по программированию на LabVIEW

Postby Alex77 on 05 Jun 2016, 13:57

ladik, Прошу прощения за мою "тупоголовость" и огромное вам спасибо. Сделал, все работает. Поставил два блока проверки последовательно, чтобы еще сильнее снизить вероятность прихода пустой строки.
Alex77
interested
interested
 
Posts: 8
Joined: 30 May 2016, 12:22
LabVIEW Version: 15
Karma: 0

Re: Советы по программированию на LabVIEW

Postby Blackman on 05 Jun 2016, 18:09

Blackman
leader
leader
 
Posts: 694
Joined: 17 Jan 2016, 15:02
Medals: 1
Activity (1)
LabVIEW Version: 6.1,8.5,20
Karma: 174

Re: Советы по программированию на LabVIEW

Postby dadreamer on 05 Jun 2016, 18:15

User avatar
dadreamer
doctor
doctor
 
Posts: 2921
Joined: 17 Feb 2013, 16:33
Medals: 4
Activity (1) Professionalism (1) Автор (2)
LabVIEW Version: 2.5 — 2017
Karma: 711
I/O VIP vision internet

Re: Советы по программированию на LabVIEW

Postby Alex77 on 05 Jun 2016, 22:16

dadreamer, Когда поставил только одну проверку, то при приеме все же словил пару раз пустые строки. Мне кажется такая конструкция более удобна, она представляет собой единый блок, с ней можно работать независимо от основного цикла.
К сожалению, в описании к прибору, с которого принимаются сигналы нет ничего кроме описания параметров, приходящих в строках, разделенных запятыми..
За литературу большое спасибо, почитаю на досуге.
Сейчас возникла еще одна задача - считать среднеквадратичное значение данных, принятых за определенный промежуток времени. Нашел блок для вычисления RMS во вкладке обработка сигнала, но на сколько я понимаю он работает c непрерывным сигналом, а у меня просто поток изменяющихся значений...
Alex77
interested
interested
 
Posts: 8
Joined: 30 May 2016, 12:22
LabVIEW Version: 15
Karma: 0

Re: Советы по программированию на LabVIEW

Postby Alex77 on 05 Jun 2016, 22:24

Blackman, ой, не заметил. Исправил!
Alex77
interested
interested
 
Posts: 8
Joined: 30 May 2016, 12:22
LabVIEW Version: 15
Karma: 0

Re: Советы по программированию на LabVIEW

Postby Blackman on 05 Jun 2016, 23:19

Прием пустой строки не связана с ее проверкой. Наиболее вероятной причиной приема пустой строки является ошибка функции VISA Read, значение которой даст конкретную причину ошибки.
Для Вашего случая можно использовать функцию RMS Point by Point Signal Processing -> Point by Point -> Probablity & Statistics Point by Point.
Blackman
leader
leader
 
Posts: 694
Joined: 17 Jan 2016, 15:02
Medals: 1
Activity (1)
LabVIEW Version: 6.1,8.5,20
Karma: 174

Re: Советы по программированию на LabVIEW

Postby Boris_K on 05 Jun 2016, 23:38

Race conditions - самый опасный, скользкий и противный баг!
Boris_K
adviser
adviser
 
Posts: 246
Joined: 28 Jan 2015, 14:25
LabVIEW Version: 2012 Pro
Karma: 6

Re: Советы по программированию на LabVIEW

Postby Alex77 on 06 Jun 2016, 00:31

Blackman, я знаю, что прием пустой строки не связан с ее проверкой. Я просто неправильно выразился..
Alex77
interested
interested
 
Posts: 8
Joined: 30 May 2016, 12:22
LabVIEW Version: 15
Karma: 0

PreviousNext

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

Who is online

Users browsing this forum: Bing [Bot], Google and 6 guests

cron