LabView:вопросы и ответы

Обсуждаем цифровые устройства...
Ответить
Первый раз сказал Мяу!
Аватара пользователя
Сообщения: 25
Зарегистрирован: Вт ноя 30, 2010 22:27:49

Сообщение mak_mak »

У меня LabVIEW 2010, в какую сконвертить?
Реклама
Грызет канифоль
Аватара пользователя
Сообщения: 262
Зарегистрирован: Пт ноя 16, 2007 00:40:17
Откуда: Украина

Сообщение foxit »

mak_mak писал(а):У меня LabVIEW 2010, в какую сконвертить?
LabVIEW 2009
Реклама
Первый раз сказал Мяу!
Аватара пользователя
Сообщения: 25
Зарегистрирован: Вт ноя 30, 2010 22:27:49

Сообщение mak_mak »

Сконвертил LV_9.0
Вложения
visa_pin_ver_9.0.ZIP
(13.6 КБ) 333 скачивания
Грызет канифоль
Аватара пользователя
Сообщения: 262
Зарегистрирован: Пт ноя 16, 2007 00:40:17
Откуда: Украина

Сообщение foxit »

mak_mak писал(а):Ничего толкового не пришло в голову - смотри вложение.
Расскажи как это сделать.
Не могу повторить.
Вложения
visa_pin_1_2.zip
(20.29 КБ) 223 скачивания
Реклама
Эиком - электронные компоненты и радиодетали
orinoko

Сообщение orinoko »

Можно ещё вот так.
Правда, я так и не понял, что нужно отсылать - код символа в виде строки ( т. е. '3' + '0', например), или в виде байта (т.е. 0x30) ?
На вход "Visa Write" подаётся пакет в виде строки. Это обратите внимание.
Вложения
visa_pin_var_1.JPG
(57.75 КБ) 705 скачиваний
Реклама
Первый раз сказал Мяу!
Аватара пользователя
Сообщения: 25
Зарегистрирован: Вт ноя 30, 2010 22:27:49

Сообщение mak_mak »

Точно! Была и у меня такая мысль!
Реклама
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1135
Зарегистрирован: Сб июл 11, 2009 18:42:21
Откуда: Украина, г.Николаев

Сообщение Roman Venom »

у меня тоже вопрос на счёт преобразования DBL(1байт) to STRING. Сделал вот так... Но работает как-то странно(получается в буфере 8байт и не всегда корректно выводит в порт). Подскажите как правильно сделать.
Вложения
DBL to STRING.JPG
(7.74 КБ) 692 скачивания
Успех - императив!
Первый раз сказал Мяу!
Аватара пользователя
Сообщения: 25
Зарегистрирован: Вт ноя 30, 2010 22:27:49

Сообщение mak_mak »

Я преобразовываю в String так. Ещё думаю надо добаллять в конец строки признак окончания. Обычно 0D0A.
Вложения
DBL_to_String.GIF
(2.32 КБ) 486 скачиваний
Первый раз сказал Мяу!
Аватара пользователя
Сообщения: 25
Зарегистрирован: Вт ноя 30, 2010 22:27:49

Сообщение mak_mak »

Вот так у меня работает с COM портом.
Вложения
DBL_to_String_2.GIF
(3.55 КБ) 749 скачиваний
orinoko

Сообщение orinoko »

Ну вы извращаетесь, однако :)
Так будет гораздо корректнее. Тип "String" у лабвиев имеет более широкое понятие, чем обычно.
И вполне естественно, что число Double преобразуется в 8 байт
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1135
Зарегистрирован: Сб июл 11, 2009 18:42:21
Откуда: Украина, г.Николаев

Сообщение Roman Venom »

orinoko
Так будет гораздо корректнее. Тип "String" у лабвиев имеет более широкое понятие, чем обычно.
Спасибо. Просто и со вкусом. Только я использую 2-х байтный массив, т.к. необходим ещё пересчёт. А так всё работает отлично.

mak_mak
Ваш способ чё-то не работает. Наверное у меня руки кривые...
Успех - императив!
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1135
Зарегистрирован: Сб июл 11, 2009 18:42:21
Откуда: Украина, г.Николаев

Сообщение Roman Venom »

сделал вот таким образом (см. рисунок) компенсацию постоянной ошибки датчика, которая вылазит после определённого значения (если значение меньше константы, то добавляется 0,013. если нет, то выводится сигнал без изменений). НО. Прикол в том, что значение на индикаторе скачет. То показывается исправленное, то неисправленное. Т.е. как бы оно параллельно выполняется. Как сделать чтобы этот глюк победить?
Вложения
погрешность-датчика.jpg
(33.58 КБ) 703 скачивания
Успех - императив!
orinoko

Сообщение orinoko »

Оно выполняется не параллельно, я так думаю, а просто считанное значение то больше, то меньше контрольной точки. и естественно будет дёргаться. А почему уверенность, что появляется некоторая сист. погрешность после 4.2 ? Загадочная нелинейность. Что-то не то в датском королевстве :) Может просто получаемое значение умножать на коэффициент коррекции. Или вообще убрать эту константу и не заморачиваться с ней, так как 0,013 по отношению к 4,2 - это 0,3% дополнительной погрешности
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1135
Зарегистрирован: Сб июл 11, 2009 18:42:21
Откуда: Украина, г.Николаев

Сообщение Roman Venom »

orinoko
я так думаю, а просто считанное значение то больше, то меньше контрольной точки. и естественно будет дёргаться.
В том-то и дело что такое происходит даже с одним и тем же значением. Т.е., например, подключаю АЦП на 0.06В, в пересчёте получается 0.0428. Потом добавляю эти 0.013 и на индикаторе то 0.0428 то 0.06...
Что-то не то в датском королевстве Может просто получаемое значение умножать на коэффициент коррекции.
Можно. Но погрешность вылазит только после опр. значения. Прибавлять удобно:)
Успех - императив!
orinoko

Сообщение orinoko »

Значит у вас есть ещё одно место, где вы обновляете без коррекции. Попробуйте пошагово оттрассировать. Контрольные точки (Probe) поставить. Выложите вашу vi-шку, если не секретная, поглядим.
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1135
Зарегистрирован: Сб июл 11, 2009 18:42:21
Откуда: Украина, г.Николаев

Сообщение Roman Venom »

orinoko
Выложите вашу vi-шку, если не секретная, поглядим.
Да какие секреты...месяц как клацаю лабвью.
Вложения
Копия СОМ test1.rar
(26.73 КБ) 288 скачиваний
Успех - императив!
orinoko

Сообщение orinoko »

Посмотрел я вашу программу. Хочу сразу дать совет - Диаграмма должна быть понятно нарисована, а то я глаза сломал, пока разобрался в хитросплетениях проводников. Найдите и почитайте книжку "LabVIEW. Стиль программирования"
А теперь несколько уточняющих вопросов.
1. Отсылка. Число "Обороты" одно- или двухбайтное, если двух-, то первый байт - младший или старший?
2. Приём. Как выходит по программе, вы принимаете 3 байта, первый байт не используете, второй - старший байт АЦП, третий - младший байт АЦП. Я правильно понял или вы ошиблись? Нумерация у массивов начинается с "0".
Кстати, если вы используете AVR и и его внутренний ИОН, то напряжение у него 2,56 В
И ещё. Если внимательно рассмотреть соединения "светодиодов" на панели "Состояние буфера порта", то все они подключены к третьему байту пакета.
orinoko

Сообщение orinoko »

Вот немного оптимизированное то, что вы мне прислали
Вложения
КопияСОМtest1_v90.rar
(18 КБ) 279 скачиваний
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1135
Зарегистрирован: Сб июл 11, 2009 18:42:21
Откуда: Украина, г.Николаев

Сообщение Roman Venom »

orinoko
Диаграмма должна быть понятно нарисована, а то я глаза сломал, пока разобрался в хитросплетениях проводников. Найдите и почитайте книжку "LabVIEW. Стиль программирования"
Да, вы правы. Обещаю больше так не издеваться. :oops:
Число "Обороты" одно- или двухбайтное, если двух-, то первый байт - младший или старший?
Одно.
Приём. Как выходит по программе, вы принимаете 3 байта, первый байт не используете, второй - старший байт АЦП, третий - младший байт АЦП. Я правильно понял или вы ошиблись? Нумерация у массивов начинается с "0".
Да. Первый байт это проверка, два других уже сигнальные. Просто прога ещё не закончена, поэтому вводит в заблуждение.
Кстати, если вы используете AVR и и его внутренний ИОН, то напряжение у него 2,56 В
Использую внешний 2.5
И ещё. Если внимательно рассмотреть соединения "светодиодов" на панели "Состояние буфера порта", то все они подключены к третьему байту пакета.
Действительно. Я не заметил.
Вот немного оптимизированное то, что вы мне прислали
Да, красиво. Единственный вопрос. Каким образом вы объединили светодиоды в кластер?

П.С. А на счёт моей проблемы... значение АЦП просто скачет в пределах одного МЗР, так что думаю лучше усреднить несколько значений, будет не так прыгать.
Успех - императив!
orinoko

Сообщение orinoko »

Да, красиво. Единственный вопрос. Каким образом вы объединили светодиоды в кластер?
На фронт-панель вставляется пустой кластер, а в него потом кидаются необходимые элементы. Не забывать при этом, что каждый элемент имеет условный порядковый номер внутри кластера. Нумерацию всегда можно изменить - ПКМ на кластере - "Reorder Control in Claster"
Ответить

Вернуться в «Цифровая техника»