Симуляция сигнала в Labview по формуле.

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

Activity
leader
leader
Сообщения: 932
Зарегистрирован: 17 янв 2016, 15:02
Награды: 1
Версия LabVIEW: 6.1,8.5,20

Re: Симуляция сигнала в Labview по формуле.

Сообщение Blackman »

Communicating between Application Instances
You cannot use the Obtain Queue, Obtain Notifier, Create
User Event, Create Semaphore, and Create Rendezvous functions
to
communicate between LabVIEW application instances. If you obtain or
create a queue, notifier, user event, semaphore, or rendezvous reference in
one application instance, you cannot use that reference in another
application instance.

Например: Два проекта в рамках одного процесса LabVIEW.exe.
Но про VI референсы ничего не сказано.
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Симуляция сигнала в Labview по формуле.

Сообщение dadreamer »

Blackman писал(а):Communicating between Application Instances
You cannot use the Obtain Queue, Obtain Notifier, Create
User Event, Create Semaphore, and Create Rendezvous functions
to
communicate between LabVIEW application instances. If you obtain or
create a queue, notifier, user event, semaphore, or rendezvous reference in
one application instance, you cannot use that reference in another
application instance.
Это написано про скомпилированные проги, то есть экзешники. И правда, между двумя EXE нельзя использовать ни очереди, ни уведомители, ни рандеву и иже с ними. А вот если речь о проектах в рамках одного процесса :labview: , то всё будет работать. Другое дело, что всё сломается, как только вы эти два проекта скомпилируете.
Blackman писал(а):Но про VI референсы ничего не сказано.
Ну и как, работает?
Blackman

Activity
leader
leader
Сообщения: 932
Зарегистрирован: 17 янв 2016, 15:02
Награды: 1
Версия LabVIEW: 6.1,8.5,20

Re: Симуляция сигнала в Labview по формуле.

Сообщение Blackman »

Нет. Это относится именно к Application instance LAbVIEW.exe.

You must use an application reference when you are using VI server properties and methods in one application instance, and you want to interact with a different application instance. It may not be obvious that VIs are running in multiple application instances. For example, each LabVIEW project has its own application instance. VIs running in project1.lvproj are running in a different application instance than VIs running in project2.lvproj. VIs not running in a project run in the main application instance. In addition, LabVIEW opens user VIs you place in the labview\help, labview\project, and labview\wizard directories in a private application instance. For example, if you place a VI in the labview\project directory and then launch this VI from the Tools menu, LabVIEW runs the VI in a private application instance (NI.LV.Dialog) that is separate from the main application instance.

Был у меня косяк, когда я пытался генерировать User Events в проекте 1 на референсах открытых в проекте 2. Тут же получил грозное предупреждение в виде ошибки)
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Симуляция сигнала в Labview по формуле.

Сообщение dadreamer »

Получается, что :labview: для каждого проекта создаёт отдельную область памяти со своим собственным контекстом и, например, очередь из одного проекта не может быть получена в другом, даже если имена совпадают во всех :vi: ? И если так, то остаются только средства межпроцессовой коммуникации?
И что с референсами? Я бы проверил, но сегодня уже лень :)
Blackman

Activity
leader
leader
Сообщения: 932
Зарегистрирован: 17 янв 2016, 15:02
Награды: 1
Версия LabVIEW: 6.1,8.5,20

Re: Симуляция сигнала в Labview по формуле.

Сообщение Blackman »

А я еще раз проверил)) С VI reference все в порядке. Открыл и пользуйся, где угодно. А вот со всем остальным добром вилы)
Вложения
2 App Instance.rar
(22.28 КБ) 118 скачиваний
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Симуляция сигнала в Labview по формуле.

Сообщение dadreamer »

Blackman писал(а):А я еще раз проверил)) С VI reference все в порядке. Открыл и пользуйся, где угодно. А вот со всем остальным добром вилы)
Добрался, наконец, до этого примера. Только я сперва сделал с нуля, сперва с референсами, потом с очередями. Первые работали, вторые тоже (!). Пробовал и по имени, и по magic cookie. Потом я закрыл :labview: , запустил ваш пример, ничего, естественно, не работало. Открыл снова свой пример - и у меня тоже не работает! :shok: Даже через "печеньки" не захотело - ошибка, и всё тут. По-видимому, :labview: после закрытия-открытия создал два контекста (с разными "банками" под "печенье"), а сперва был один, потому и работало. Ref'ы как работали, так и работают, всё ок. Через DVR не захотело, как и через очереди.
В общем, суть такая, что отдельные проекты между собой связывать нужно только посредством IPC, например TCP/UDP или Network Streams. А подобными "хаками" лучше не пользоваться, т.к. даже если работает, то рано или поздно работать не будет. И это хорошо описано здесь: https://lavag.org/topic/4690-queue-are- ... -in-lv-82/ (говорится, что в :labview: 8.0 и ранних можно было юзать queue/notifiers/events для связи двух проектов, но NI это запретили).
Кстати, через указатели работает нормально. Однако этим тоже лучше не пользоваться, т.к. в экзешниках работать перестанет.
Аватара пользователя
DefectoMed
beginner
beginner
Сообщения: 28
Зарегистрирован: 15 мар 2016, 16:02
Версия LabVIEW: 12
Контактная информация:

Re: Симуляция сигнала в Labview по формуле.

Сообщение DefectoMed »

Ребят, а как решить проблему: меня устраивает сигнал,который выходит на Puls Train при samples 32, но в этом случае шум получается не различный на протяжение всего сигнала,а повторяется. когда же я делаю одинковый samples, то сигнал в Puls Train получается не тот,что мне нужен. Как можно сделать различный шум на протяжении всего сигнала?
Вложения
samplesthesame.jpg
sampl32.jpg
Shum.vi
(55.97 КБ) 105 скачиваний
Artem.spb

Activity Автор
professor
professor
Сообщения: 3391
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

Re: Симуляция сигнала в Labview по формуле.

Сообщение Artem.spb »

я не понял, как у вас получается такой сигнал
p.png
если SHUMA=0,01 только амплитуда шума очень мала, остальное такое же
Аватара пользователя
DefectoMed
beginner
beginner
Сообщения: 28
Зарегистрирован: 15 мар 2016, 16:02
Версия LabVIEW: 12
Контактная информация:

Re: Симуляция сигнала в Labview по формуле.

Сообщение DefectoMed »

Artem.spb писал(а):я не понял, как у вас получается такой сигнал
p.png
если SHUMA=0,01 только амплитуда шума очень мала, остальное такое же
у меня на первой картинке такой же сигнал ,как у вас,просто я поставил 10 циклов. и он не такой как надо,хотя шум хорош) Я вот и не пойму.как сделать схожий шум,но ,чтоб сигнал был как на нижней картинке, при семплс 32
Artem.spb

Activity Автор
professor
professor
Сообщения: 3391
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

Re: Симуляция сигнала в Labview по формуле.

Сообщение Artem.spb »

В чём схожесть-то, никак не пойму?
скачки редкими должны быть что ли?
У вас во втором случае на весь сигнал 32 точки, естественно скачки будут так выглядеть. каждый скачок - это следующая точка.
А если точек 1100, то все скачки сливаются в мочалку.
Аватара пользователя
DefectoMed
beginner
beginner
Сообщения: 28
Зарегистрирован: 15 мар 2016, 16:02
Версия LabVIEW: 12
Контактная информация:

Re: Симуляция сигнала в Labview по формуле.

Сообщение DefectoMed »

Artem.spb писал(а):В чём схожесть-то, никак не пойму?
скачки редкими должны быть что ли?
У вас во втором случае на весь сигнал 32 точки, естественно скачки будут так выглядеть. каждый скачок - это следующая точка.
А если точек 1100, то все скачки сливаются в мочалку.
Сигнал должен выглядеть в точности как пульстрейн на первой картинке
Artem.spb

Activity Автор
professor
professor
Сообщения: 3391
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

Re: Симуляция сигнала в Labview по формуле.

Сообщение Artem.spb »

Ну он выглядит, в чём проблема-то?
Аватара пользователя
DefectoMed
beginner
beginner
Сообщения: 28
Зарегистрирован: 15 мар 2016, 16:02
Версия LabVIEW: 12
Контактная информация:

Re: Симуляция сигнала в Labview по формуле.

Сообщение DefectoMed »

Artem.spb писал(а):Ну он выглядит, в чём проблема-то?
мне нужен сигнал как справа,но чтоб шум был разный в течение всего сигнала
Вложения
srav.jpg
Artem.spb

Activity Автор
professor
professor
Сообщения: 3391
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

Re: Симуляция сигнала в Labview по формуле.

Сообщение Artem.spb »

может, я уже туплю под утро, но чем этот шум должен быть разным? форма, амплитуда, ещё что-то?
Аватара пользователя
DefectoMed
beginner
beginner
Сообщения: 28
Зарегистрирован: 15 мар 2016, 16:02
Версия LabVIEW: 12
Контактная информация:

Re: Симуляция сигнала в Labview по формуле.

Сообщение DefectoMed »

Artem.spb писал(а):может, я уже туплю под утро, но чем этот шум должен быть разным? форма, амплитуда, ещё что-то?
как я понимаю у меня задан шум на 1 цикл,а дальше повторяется) или это я туплю
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Для чайников»