Все текстовые протоколы работают по терминальному символу. Это профстандарт.
Терминал в принципе, если вы его используете для мониторинга глазками - да, является "хакерством". Такую реализацию в системах, которые работают в системах реального времени той или иной степени жесткости, ставить нельзя. Это костыли, прикрывающие лень разработчика. Но они чреваты сбоями в самый неподходящий момент. Проходили
VISA Bytes at Serial Port не выполняет своих функций
-
Vitekkz88
- expert
- Сообщения: 1100
- Зарегистрирован: 21 янв 2014, 15:45
- Награды: 3
- Версия LabVIEW: 12,13,14
- Откуда: Томск
- Контактная информация:
Re: VISA Bytes at Serial Port не выполняет своих функций
Вот для этого я его и использую. Хакерство-не хакерстово, а задачу свою выполняет. И та картинка, что я привёл выше , тоже выполняет свою задачу хорошо.Borjomy_1 писал(а): Терминал в принципе, если вы его используете для мониторинга глазками - да, является "хакерством".
Наконец-то мы до истины добрались, Borjomy_1! Я уж думал Вы не вспомните про свой горький опыт и реал-тайм. Вот с этого и начинайте, что в реал-тайм системах такой подход не приемлем потому, что вызывает временные задержки на чтение данных из порта(уже третий раз).Borjomy_1 писал(а): Такую реализацию в системах, которые работают в системах реального времени той или иной степени жесткости, ставить нельзя...они чреваты сбоями в самый неподходящий момент. Проходили
Вот как раз задач с реал-таймом на сериальном порте не так уж много(это моё субъективное мнение, я таких проектов не видел). В подавляющем большинстве случаев что требуется от последовательного порта? Вывод информации, управление, неторопливый сбор данных, отладка. Ну будет задержка лишняя в 10 мс, ну и черт с ней. Вы всё равно этот ответ даже воспринять не успеете.
Вывод:
Метод на картинке может использоваться, если к системам не предъявляются строгие временные ограничения на запрос/ответ. Получаем терминал вывода данных в LabVIEW. В противном случае вычитывать информацию необходимо в соответствии с протоколом по методу Borjomy_1, путём определения количества требуемых байт для чтения, указанием этого количества для VISA Read в явном виде и т.д.
Не так уж всё принципиально и безграмотно оказывается.
Инженер - это открыто светящийся интеллект, свободный и не обидный юмор, это легкость и широта мысли...Это воспитанность, тонкость вкусов, хорошая речь, плавно согласованная и без сорных словечек...
-А. И. Солженицын
-А. И. Солженицын
-
- doctor
- Сообщения: 2211
- Зарегистрирован: 28 июн 2012, 09:32
- Награды: 3
- Версия LabVIEW: 2009..2020
- Откуда: город семи холмов
- Благодарил (а): 27 раз
- Поблагодарили: 27 раз
Re: VISA Bytes at Serial Port не выполняет своих функций
В подавляющем случае это протоколы связи с датчиками типа ModBus. Они диалоговые, т.е задержки критичны. Скорость не ограничивается 115200, есть реализации до 3 Мбит. И весьма часто требуют выжимать максимум из полосы пропускания.В подавляющем большинстве случаев что требуется от последовательного порта?
-
- user
- Сообщения: 95
- Зарегистрирован: 05 июл 2016, 21:02
- Версия LabVIEW: 12
- Контактная информация:
Re: VISA Bytes at Serial Port не выполняет своих функций
Спасибо за интересный спор)))
Проблему решил закидыванием куска VISA Bytes at Serial Port и VISA Read в цикл с выходом по условию считывания байтов! Пока работает
Проблему решил закидыванием куска VISA Bytes at Serial Port и VISA Read в цикл с выходом по условию считывания байтов! Пока работает
-
Kosist
- expert
- Сообщения: 1236
- Зарегистрирован: 21 фев 2011, 23:44
- Награды: 2
- Версия LabVIEW: 2013-2020
- Благодарил (а): 23 раза
- Поблагодарили: 30 раз
- Контактная информация:
Re: VISA Bytes at Serial Port не выполняет своих функций
Но, надеюсь, Вы не забыли "повесить" в цикл выход также и по таймауту, если ничего не пришло в ответ?AlexOskar писал(а):Спасибо за интересный спор)))
Проблему решил закидыванием куска VISA Bytes at Serial Port и VISA Read в цикл с выходом по условию считывания байтов! Пока работает
Мы делили апельсин - много наших полегло...
-
- user
- Сообщения: 95
- Зарегистрирован: 05 июл 2016, 21:02
- Версия LabVIEW: 12
- Контактная информация:
Re: VISA Bytes at Serial Port не выполняет своих функций
От радости, что все наконец заработало, я вырубил комп и думаю пару дней не буду ничего там делать! Вот потом сделаю выход по таймауту, спасибо за совет!
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
- 1 Ответы
- 247 Просмотры
-
Последнее сообщение Artem.spb
-
- 2 Ответы
- 657 Просмотры
-
Последнее сообщение Borjomy_1
-
- 4 Ответы
- 240 Просмотры
-
Последнее сообщение Embedder74