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

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

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

Postby laryc on 14 Aug 2013, 14:18

Похоже меня не поняли.. это текстовый режим в котором можно передавать только один децимальный символ - это я умею .. я речь вёл о возможности нагружать байт от 0 до 255 полезной информацией а в приведённом примере байт со значением 0хА будет обрывать передачу массива в буфер чтения то есть рвать поток данных на самом интересном месте ... мне нужно чтобы передать определённое число байт (передатчик сам это количество отмеряет ) и когда будет получено скажем 12 байт отправить квитанцию передатчику мол принято 12 байт и чтобы символ перевода каретки не останавливал поток данных
laryc
beginner
beginner
 
Posts: 19
Joined: 02 Jul 2013, 14:18
LabVIEW Version: 2012
Karma: 0

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

Postby Borjomy_1 on 14 Aug 2013, 14:30

Так что-ли?
P.S. Внимательно смотрите ВЫШЕприведенный пример - Enable Termination Char(T) установлен в False, т.е обработка символа конца строки ОТКЛЮЧЕНА
Attachments
Открытие COM1.png
Borjomy_1
expert
expert
 
Posts: 1828
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: Советы по программированию на LabVIEW

Postby laryc on 14 Aug 2013, 15:15

Спасибо теперь Вы меня поняли.. завтра так и попробую.. я пользовался для конфигурации порта инструментом VISA Byte at Serial Port в котором Enable Termination переводил в состояния false или thrue но перевод строки работал не обращая внимания на подачу этих сигналов .. интересно почему? .. может от того что небыло элемента закрытие сессии? а как работает этот элемент в Вашем примере ведь чтение и передача находятся в бесконечном цикле .. наверно он срабатывает когда останавливаем цикл?
laryc
beginner
beginner
 
Posts: 19
Joined: 02 Jul 2013, 14:18
LabVIEW Version: 2012
Karma: 0

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

Postby Borjomy_1 on 14 Aug 2013, 15:46

В данном случае никакого поиска конца строки не производится. Задается чтение 12 байт, после того, как они будут получены, обратно отдается строка "Next" (4 байта), которая призвана побудить удаленный хост к отдаче следующей порции данных.
Borjomy_1
expert
expert
 
Posts: 1828
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: Советы по программированию на LabVIEW

Postby AndreyDmitriev on 14 Aug 2013, 15:53

laryc wrote:я пользовался для конфигурации порта инструментом VISA Byte at Serial Port в котором Enable Termination переводил в состояния false или thrue но перевод строки работал не обращая внимания на подачу этих сигналов .. интересно почему?

А где вы там Enable Termination нашли и как этим инструментом порт конфигурировали?
Attachments
visa.png
visa.png (9.93 KiB) Viewed 8165 times
User avatar
AndreyDmitriev
VIP
VIP
 
Posts: 1225
Joined: 03 Feb 2010, 00:42
Location: Германия
Medals: 6
Activity (1) Professionalism (1) Tutorials (1) Gold (1) Black (2)
LabVIEW Version: 6.1 - 2016
Karma: 433

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

Postby laryc on 15 Aug 2013, 01:55

AndreyDmitriev wrote:А где вы там Enable Termination нашли и как этим инструментом порт конфигурировали?

а вы растяните мышкой этот элемент и в свойсвах выберете нужную опцию
laryc
beginner
beginner
 
Posts: 19
Joined: 02 Jul 2013, 14:18
LabVIEW Version: 2012
Karma: 0

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

Postby laryc on 15 Aug 2013, 03:31

собрал по предложенной схеме подключил все константы в конфигураторе serial port за исключением error in - не знаю что туда подать и получаю следующее сообщение ...The polymorphic subVI is broken. You must fix all errors in the polymorphic subVI before this VI can run....я понимаю что это косяк в моём LabView? ..Прошу помочь
laryc
beginner
beginner
 
Posts: 19
Joined: 02 Jul 2013, 14:18
LabVIEW Version: 2012
Karma: 0

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

Postby AndreyDmitriev on 15 Aug 2013, 11:33

laryc wrote:а вы растяните мышкой этот элемент и в свойсвах выберете нужную опцию

Вы не очень разобрались в том, как работают узлы свойств. Эти "опции" никак не связаны между собой.

laryc wrote:собрал по предложенной схеме подключил все константы в конфигураторе serial port за исключением error in - не знаю что туда подать и получаю следующее сообщение ...The polymorphic subVI is broken. You must fix all errors in the polymorphic subVI before this VI can run....я понимаю что это косяк в моём LabView?

Это похоже на косяк с VISA. Попробуйте поставить последнюю версию
http://joule.ni.com/nidu/cds/view/p/id/3823/lang/en

До кучи - если вы не знаете, что надо подать на error in - это говорит о том, что вы не очень разобрались в том, как вообще программируют в LabVIEW. Тут суть в том, что если где-то перед VISA Configure Serial Port возникает ошибка, которая заводится на вход, то в этом случае VI отрабатывать не будет, а просто передаст эту ошибку дальше по цепочке. В большинстве случаев при инициализации этот вывод не подключают (см. выше как пример Borjomy_1).
User avatar
AndreyDmitriev
VIP
VIP
 
Posts: 1225
Joined: 03 Feb 2010, 00:42
Location: Германия
Medals: 6
Activity (1) Professionalism (1) Tutorials (1) Gold (1) Black (2)
LabVIEW Version: 6.1 - 2016
Karma: 433

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

Postby laryc on 15 Aug 2013, 16:18

AndreyDmitriev wrote:
laryc wrote:
Вы не очень разобрались в том, как работают узлы свойств. Эти "опции" никак не связаны между собой.

Это похоже на косяк с VISA. Попробуйте поставить последнюю версию

До кучи - если вы не знаете, что надо подать на error in - это говорит о том, что вы не очень разобрались в том, как вообще программируют в LabVIEW. Тут суть в том, что если где-то перед VISA Configure Serial Port возникает ошибка, которая заводится на вход, то в этом случае VI отрабатывать не будет, а просто передаст эту ошибку дальше по цепочке. В большинстве случаев при инициализации этот вывод не подключают (см. выше как пример Borjomy_1).

ну так я же чайник.. несколько мешает перестроиться опыт эмбедера .. тут всё в потоке.. вот час не пойму как синхронизировать принимаемые данные.. технология печатной машинки кргда данные надо преобразовывать в строки не очень устраивает на стороне передатчика (там МК и так загружен) а вот как отговить пакет и раскидать его по потокам на многолучевой самописец пока не соображу... косяк решил просто переустановил ЛабВью и Виза заработала
laryc
beginner
beginner
 
Posts: 19
Joined: 02 Jul 2013, 14:18
LabVIEW Version: 2012
Karma: 0

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

Postby AndreyDmitriev on 15 Aug 2013, 16:31

laryc wrote:ну так я же чайник.. несколько мешает перестроиться опыт эмбедера .. тут всё в потоке.. вот час не пойму как синхронизировать принимаемые данные..

Да в этом нет ничего страшного - мы все прошли эту фазу. Просто я за некоторую "последовательность" освоения предмета. Если вы пользуетесь инструментом, имеет смысл разобраться как этот инструмент работает на простых примерах. Иначе на решаемую проблему будут накладываться проблемы самого инструмента, и вы в конечном итоге будете программировать в стиле "попробуем так и сяк - авось заработает". Чтобы отловить пакет - вам надо знать где он начинается и заканчивается. Если в одном пакете несколько каналов - вам надо знать как они разделяются.
User avatar
AndreyDmitriev
VIP
VIP
 
Posts: 1225
Joined: 03 Feb 2010, 00:42
Location: Германия
Medals: 6
Activity (1) Professionalism (1) Tutorials (1) Gold (1) Black (2)
LabVIEW Version: 6.1 - 2016
Karma: 433

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

Postby Andry on 13 Oct 2013, 20:17

Да,узнайте,интересно)
Andry
user
user
 
Posts: 76
Joined: 14 Jun 2013, 12:50
LabVIEW Version: 2012
Karma: 0

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

Postby rostislaw10 on 09 Nov 2013, 17:07

Народ, у меня странного рода проблема. А именно: после каких-то манипуляций с программой она перестала запускаться, после запуска устанавливается на паузу сама и while мигает не понимаю от чего и почему это и как решить? :cry:
Attachments
Снимокфыв.PNG
rostislaw10
interested
interested
 
Posts: 4
Joined: 08 Nov 2013, 15:34
LabVIEW Version: 2013
Karma: 0

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

Postby dadreamer on 09 Nov 2013, 17:13

rostislaw10, у вас поставился брейкпоинт на цикл While. В меню выберите View -> Breakpoint Manager и удалите бряк.
User avatar
dadreamer
professor
professor
 
Posts: 3150
Joined: 17 Feb 2013, 16:33
Medals: 4
Activity (1) Professionalism (1) Автор (2)
LabVIEW Version: 2.5 — 2018
Karma: 801
I/O VIP vision internet

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

Postby rostislaw10 on 09 Nov 2013, 17:20

dadreamer wrote:rostislaw10, у вас поставился брейкпоинт на цикл While. В меню выберите View -> Breakpoint Manager и удалите бряк.

Спасибо большое! Ума не приложу откуда он взялся.. я уж все перерыл, везде откаты сделал :D
rostislaw10
interested
interested
 
Posts: 4
Joined: 08 Nov 2013, 15:34
LabVIEW Version: 2013
Karma: 0

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

Postby laryc on 13 Nov 2013, 16:16

Созрело пару вопросов к спецам.
1. Нужно мультиплексировать константы 10 -> 1 ..понимаю так что нужно задействовать пачку функций "select" и ещё пачку логики? иначе никак?
нужен переключатель типа "галетник". если есть красивые решения прошу поделиться.
2. вопрос второй "изготовление ехе-шника так чтобы он работал на другой машине" .. на этом форуме я читал посты по этой теме,но они по времени старые. .. вот я воткнул себе версию ЛабВью 2013 что я там установил я ещё толком не исследовал ,но что там есть интригующее... мож моножно без всяких там убогих runtimov? неужто такая тяжёлая прога страдает всё ещё юношескими угрями?.. а без этого никак не сделать продукт ночей бессонных доступным другим пользователям..э-э-х..
laryc
beginner
beginner
 
Posts: 19
Joined: 02 Jul 2013, 14:18
LabVIEW Version: 2012
Karma: 0

PreviousNext

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

Who is online

Users browsing this forum: Google, terlihat, Yandex and 2 guests

cron