Дальномер-линейка на ультразвуке (нужна помощь)

Проект с меню и подсчетом колличества по расстоянию.

Mischa23
Рядовой
Сообщения: 54
Зарегистрирован: 16.07.2018{, 05:21}
Репутация: 0
Имя: Михаил

Дальномер-линейка на ультразвуке (нужна помощь)

#21

Сообщение Mischa23 » 11.08.2018{, 08:51}

av писал(а):
10.08.2018{, 21:57}
jonik22sm, Вы о каком датчике спрашиваете ? Если о ультразвукавом идет речь то сомневаюсь, что такое возможно.

Отправлено спустя 7 минут 36 секунд:
Mischa23, Прокатал проект в эмуляторе (Протеус).

Вот что получилось:
СпойлерПоказать
Проект.jpg
Так как датчика у меня нет установил значение с датчика 100 мм.

Проект.
спасибо большое. сейчас макетку собиру и испытаю.
маленький вопрос по меню - presets отвечает за предустановки для толщины листа?
mode - показывает активный режим измерения?
а как сделать что бы в mode было 2 режима distance и radius? и при выборе distance далее можно выбрать уже толщину из заранее установленных?
---RADIUS--
=set->>
----------------------------------------------------------
--DISTANCE--
- 3 sloy-
-- T-21
=set->
--T-22
=set->
--T-23
=set->
--T-24
=set->
-5sloy-
-- T-21
=set->
--T-22
=set->
--T-23
=set->
--T-24
=set->
не дается мне понимание меню((( и видео кучу уже пересмотрел и прочитал и никак не пойму как с ним работать((((
дело в моей безмерной тупости(((((

Mischa23
Рядовой
Сообщения: 54
Зарегистрирован: 16.07.2018{, 05:21}
Репутация: 0
Имя: Михаил

Дальномер-линейка на ультразвуке (нужна помощь)

#22

Сообщение Mischa23 » 11.08.2018{, 10:36}

проверил сонар. он меряет в сантиметрах по умолчанию

Аватара пользователя
Hijin
Лейтенант
Сообщения: 325
Зарегистрирован: 22.08.2017{, 11:08}
Репутация: 13
Откуда: Винница
Имя: Юрий

Дальномер-линейка на ультразвуке (нужна помощь)

#23

Сообщение Hijin » 13.08.2018{, 15:38}

av писал(а):
10.08.2018{, 21:57}
Mischa23, Прокатал проект в эмуляторе (Протеус).

Вот что получилось:
av
А можно еще файл протеуса выложить?

Mischa23
Рядовой
Сообщения: 54
Зарегистрирован: 16.07.2018{, 05:21}
Репутация: 0
Имя: Михаил

Дальномер-линейка на ультразвуке (нужна помощь)

#24

Сообщение Mischa23 » 13.08.2018{, 16:47}

av,
вот ссылка на видео. посмотрите пожалуйста про этот датчик что говорят. не я это придумал!!!! а лиш проверил и так оно и есть!

Mischa23
Рядовой
Сообщения: 54
Зарегистрирован: 16.07.2018{, 05:21}
Репутация: 0
Имя: Михаил

Дальномер-линейка на ультразвуке (нужна помощь)

#25

Сообщение Mischa23 » 13.08.2018{, 16:51}

av писал(а):
13.08.2018{, 16:35}
Опишу работу меню:
При коротком нажатии кнопки энкодера заходим в меню.
В меню три пункта (Preset, Mode, Calibration)
Пункт "Preset" нажимаем кнопку энкодера вход в настройку. Крутим энкодером изменяем значение. Долгое нажатие на кнопку энкодера - выход из настройки "Preset". Крутим энкодер перелистываем на настройку "Mode" короткое нажатие на кнопку энкодера, попадаем в настройку режимов измерения. Выбрали режим, долгое нажатие выход из настройки "Mode". Листаем дальше по пунктам меню прокруткой энкодера и так далее... . Пресеты уже привязаны к замеру дистанции, в режиме диаметра они не подключены. Надеюсь все вам объяснил.
Кстати возможно ваш энкодер неправильно подсоединен. Пины энкодера подтянуты через резистор 10К к +5v ардуины. Так же в проекте к этим пинам пподключены подтягивающие резисторы. При нажатии или вращении энкодера на пины подается низкий сигнал (то есть замыкаются на массу(GND).
касаемо работы меню и в меню я все понял, но вопрос мой был в другом! именно по созданию и настройке меню, а не по управлению.

Отправлено спустя 1 минуту 37 секунд:
если прочитать сообщение #43 то там имелось ввиду немного другое

Mischa23
Рядовой
Сообщения: 54
Зарегистрирован: 16.07.2018{, 05:21}
Репутация: 0
Имя: Михаил

Дальномер-линейка на ультразвуке (нужна помощь)

#26

Сообщение Mischa23 » 13.08.2018{, 20:21}

av писал(а):
13.08.2018{, 17:06}
Mischa23, Я не экстрасенс что бы знать где в каком блоке автор создавший блок мог ошибиться !!! С ошибкой разобрались. Что вам мешает изменить в проекте строки и значения с мм.(миллиметры) на см.(сантиметры). Я и так вам написал проект. Так вы хотите что бы я его отлаживал под ваши нужды.
ни в коем случае. уже блока с энкодером более чем достаточно) и я не однократно вас поблагодарил. еслиб я хотел чтоб кто то сделал, ту тут видел тему что человек делает бесплатно за интерес.
а я все го лиш спросил про меню, а именно какой настрой кой можно сделать так что при выборе в пункте mode режима дистанции он там же, не выходя, можно выбрать предустановку с фиксированной длинной! а если выбрать диаметр то он выходит из меню в режиме диаметра. а если в режиме дистанции, то далее там же выбрать количество слоев и толщину. и после этого выбора чтоб выходил из меню уже в выбранном режиме уже с предьустановленной толщиной! понимаете? как бы одно вытекает из другого. тоесть 2 пункта меню с подпунктами - калибровка и режимы. я просто не знаю как еще попробовать обьяснить. просто подумал что переключатель не совсем подходит для этого.

Mischa23
Рядовой
Сообщения: 54
Зарегистрирован: 16.07.2018{, 05:21}
Репутация: 0
Имя: Михаил

Дальномер-линейка на ультразвуке (нужна помощь)

#27

Сообщение Mischa23 » 13.08.2018{, 20:22}

впрочем не берите в голову!!!
спасибо большое за настройку энкодера и доп блок дшля него.
я уверен что быстро всему научусь!
еще раз благодарю вас!

Mischa23
Рядовой
Сообщения: 54
Зарегистрирован: 16.07.2018{, 05:21}
Репутация: 0
Имя: Михаил

Дальномер-линейка на ультразвуке (нужна помощь)

#28

Сообщение Mischa23 » 14.08.2018{, 05:31}

av писал(а):
14.08.2018{, 00:30}
Mischa23, есть еще один очень простой вариант управления режимами. Добавить трехконтактный переключатель с фиксированными положениями:
1 положение режим радиус
2 положение режим расстояние
В меню настраивается только толщина и калибровка.
Даже не думал обижаться.
А вот с переключателем хорошая идея. И как раз у меня есть такой!!!

Аватара пользователя
Hijin
Лейтенант
Сообщения: 325
Зарегистрирован: 22.08.2017{, 11:08}
Репутация: 13
Откуда: Винница
Имя: Юрий

Дальномер-линейка на ультразвуке (нужна помощь)

#29

Сообщение Hijin » 14.08.2018{, 12:17}

av писал(а):
14.08.2018{, 10:28}
Исправил на управление режимом переключателем.
AV
если вам не сложно прикрепите пожалуйста файл протеуса в архив
И еще один вопрос не по теме где можно скачать ардуино нано для протеуса (мега и уно у меня есть) у меня версия протеуса 7,10

Mischa23
Рядовой
Сообщения: 54
Зарегистрирован: 16.07.2018{, 05:21}
Репутация: 0
Имя: Михаил

Дальномер-линейка на ультразвуке (нужна помощь)

#30

Сообщение Mischa23 » 20.08.2018{, 17:59}

av писал(а):
14.08.2018{, 12:39}
Hijin, файл протеуса в посте 47 (nano v.3.rar) но он для версии протеус 8. Откуда качал честно не помню. По запросу в гугле модели ардуино для протеуса. У меня две библиотеки моделей на все ардуино плюс ультразвуковой датчик.

Отправлено спустя 8 минут 34 секунды:
Упс... не сразу понял что требуется новый файл. Сейчас соберу полностью архив с исправлениями и выложу.

Отправлено спустя 3 минуты 20 секунд:
Проект с файлом для симулятора протеуса.
доброго времени. я немного пересобрал файлик и сделал меню в том виде, в котором оно мне нужно. Но есть несколько вопросов:
правильно ли я присвоил значение пунктам меню, которое должно быть фиксировано.
как теперь сделать переключение в переключателе - застрял с переменной PRESET/
Дальномер v.2.3.rar
(147.02 КБ) 65 скачиваний

Mischa23
Рядовой
Сообщения: 54
Зарегистрирован: 16.07.2018{, 05:21}
Репутация: 0
Имя: Михаил

Дальномер-линейка на ультразвуке (нужна помощь)

#31

Сообщение Mischa23 » 20.08.2018{, 20:17}

av писал(а):
20.08.2018{, 19:48}
Mischa23, во первых переменные подписывать константами неправильно. Переменная и константа разные вещи !
Во вторых:
Mischa23 писал(а):
20.08.2018{, 17:59}
как теперь сделать переключение в переключателе - застрял с переменной PRESET/
В том то все и дело, что вы изменили меню предложенное мной. Изменение значений в пункте "Sloya" будут изменять только толщину типа картона (Т-21,Т-22,Т-23,Т-24),толщина которого вам заранее известна и в изменении не нуждается.
Допустим картон с типом Т-21 имеет толщину 5мм. а Т-22 толщину 4мм.
Для замеров вам нужно выбрать только тип картона, что и было мной предложено в меню пункт "Preset".
Как это работало в моем меню: Выбираем в меню пункт "Preset", крутим ручкой энкодера изменяем значения пункта меню от 1 до 10.
Значения
1 - тип картона Т-21
2 - тип картона Т-22
3 - тип картона Т-24
и т.д.
Оставалось только выходное значение с блока MenuValue преобразовать в строки для отображения на дисплее тип картона (в моем случае выводилось на экране так Р1,Р2,Р3....). А так же это значение использовалось для переключателя(мультиплексора). На входа мультиплексора подаем константы для блока делителя, который делит значение измеренное датчиком на значение с выхода переключателя в зависимости от предустановки выбранной в пункте меню "Preset".
А то что вы нагородили в меню это в корне не правильно. Или вам все таки нужно ещё и каждый тип картона подгонять по милиметрикам.
До сих пор не пойму как будет работать ваше устройство :smile37:

Отправлено спустя 59 минут 31 секунду:
Mischa23,
Еще раз перечитал первый измененный пост темы. Я попробую изложить суть того что вы хотите. А вы поправите меня где нужно.

И так что мы имеем:
Нужно измерить ультразвуковым датчиком диаметр/радиус рулона (предположительно картона).
Измерить толщину(режим линейка) упаковки от основания (пола,поддона и т.д.) на который уложена упаковка.
На основании замера вычислить количество листов находящиеся в упаковке.
Толщина листа картона разных типов (Т-21,Т-22 и т.д.), которые нужно настроить перед замером толщины упаковки в меню настроек.
Как производится замер:
При нажатии на кнопку старт, происходит замер ультразвуковым датчиком расстояния до поверхности измерения.
Первый замер должен быть калибровочным и без продукции замера, а именно делаем замер прибор должен показать значение 0.
Если это значение отличное от ноля, заходим в меню и калибруем прибор.
Меню
1 Выбор режима работы(диаметр/линейка)
2 Предустановка толщины замеряемого типа (картона) ------->если точно известна толщина типов (картона)
3 Калибровка

Вот в моем видении так должен работать прибор.
Так и есть и ваше видение верно!
Но мне хочется, а даже наверное необходимо, сделать удобное меню. те начальные пункты, коих пока 11 это только цветочки))) есть разные профили, марки, и из разного типа бумаги! к примеру я могу держать в голове 10 цифр постоянно, а дальше? 40 видов? а 60? понимаете с такими удержаниями цифр в памяти можно очень легко ошибиться. у меня сейчас куча отмеренных картонок по высоте для каждого профиля которыми я отмеряю по 100штук и так пересчитываю, поэтому и задумался об устройстве удобном и понятном, ну чтоб вообще голову не включал и освободил ее для других мыслей. поставил профиль Б и марку и вперед. дело в удобстве, но это усложняет программу(((
тогда следующий вопрос - как каждому пункту меню присвоить конкретное значение и далее сделать его учитываемым при выборе оного???
или придется прописывать доп. условие if и else?
то есть если активно одно значение - другие выключены (я это вижу на данный момент так) и по такому же принципу как я понимаю работает переключатель MUX

Отправлено спустя 17 минут 56 секунд:
может ли в этом помочь таблица состояний?

Mischa23
Рядовой
Сообщения: 54
Зарегистрирован: 16.07.2018{, 05:21}
Репутация: 0
Имя: Михаил

Дальномер-линейка на ультразвуке (нужна помощь)

#32

Сообщение Mischa23 » 20.08.2018{, 21:01}

av писал(а):
20.08.2018{, 20:48}
Mischa23,

Что то не понял вашего вопроса,что значит
Mischa23 писал(а):
20.08.2018{, 20:35}
и далее сделать его учитываемым при выборе оного???
Насчет
Mischa23 писал(а):
20.08.2018{, 20:35}
как каждому пункту меню присвоить конкретное значение
В настройках блока меню выбираете с каким типом переменной (int,float,boolean и т.д.) будет работать тот или иной пункт меню.
1й пунк меню, поставил float/ а как далее этому пункту присвоить конкретное число которому оно будет ровняться.
сейчас получается я поставил к каждому пункту меню еще по переменной с фиксированным значением т.е. переменная 3slT21B у меня равна 0.15.
такое решение для пункта меню верное или это можно настроить в самом меню, ну присвоить 0.15 прям в самом меню?

Отправлено спустя 1 минуту 50 секунд:
если это решение верное то как его подставлять, а в моем случае делить на расстояние?
у вас это было реализовано mux переключателем, но при данном решении программы оно работать не будет( как еще это можно решить?

Mischa23
Рядовой
Сообщения: 54
Зарегистрирован: 16.07.2018{, 05:21}
Репутация: 0
Имя: Михаил

Дальномер-линейка на ультразвуке (нужна помощь)

#33

Сообщение Mischa23 » 21.08.2018{, 06:45}

av писал(а):
20.08.2018{, 21:16}
Mischa23, давайте сделаем так, вы составите таблицу с типами картона и их толщиной и скине мне в личку. А я попробую покручу их на симуляторе с проектом посмотрю что и как.
А разьве нельзя сделать с теми наименованиями и значениями которые сейчас?
Потом цифры то любые можно подставить?
Или нет?

Mischa23
Рядовой
Сообщения: 54
Зарегистрирован: 16.07.2018{, 05:21}
Репутация: 0
Имя: Михаил

Дальномер-линейка на ультразвуке (нужна помощь)

#34

Сообщение Mischa23 » 21.08.2018{, 15:15}

av писал(а):
21.08.2018{, 11:14}
Mischa23,
Mischa23 писал(а):
21.08.2018{, 06:45}
А разьве нельзя сделать с теми наименованиями и значениями которые сейчас?
Хорошо с теми так с теми наименованиями. Но потом не спрашивайте как и куда подставлять цифры для профилей. Кстати значения профилей до сих пор мне неизвестны. То что вы указали в первом посте "2. Линейка. По замеру высоты подсчитывает колличество штук. К примеру пачка 50 листов. Высота пачки 1 метр. Исходя из высоты подсчет колличества штук (т.е. высота одного листа 20см)." НЕВЕРНО
1метр делим на 50 листов будет высота одного листа 2см. но никак не 20см. Это единственное значение которое вы предоставили, о других значениях нет данных для прогонки в симуляторе.

Прогнал пока без значений но с названиями профилей. Вот что получилось:
СпойлерПоказать
Дальномер v 3.jpg
Это же к примеру!)

Отправлено спустя 53 секунды:
Вечером сделаю таблицу и исправлю менюшку

Mischa23
Рядовой
Сообщения: 54
Зарегистрирован: 16.07.2018{, 05:21}
Репутация: 0
Имя: Михаил

Дальномер-линейка на ультразвуке (нужна помощь)

#35

Сообщение Mischa23 » 21.08.2018{, 20:37}

av писал(а):
21.08.2018{, 17:01}
Mischa23, Не все так просто ! Изменения касаются почти всех плат.
1 Замер происходит уже по другой логике, а именно измерения идут в обратном направлении через масштабирование. Так как расчет измерения нужен не от датчика до (поддона), а расстояние от (поддона) до верхней поверхности замеряемого объекта (в наше случае стопка картона).
2 Что бы из меню выводить на дисплей не значения переменной "Preset", а названия профилей добавлен мультиплексор с обвязкой управления.
3 Для замера диаметра/радиуса так же был изменен алгоритм. При измерении радиуса нужна очень точная начальная точка отсчета (ось рулона). Датчик находится на неизменном зажиме/штативе. Поддон на котором складываются стопки картона так же положение неизменно.
Тогда нужно установить зажимы оси рулона точно на половине расстояния от датчика до поддона. При замере радиуса значения поступающие с датчика делим пополам блоком деления Эта точка и будет начальной для измерения радиуса.

Все это выглядит примерно так.
СпойлерПоказать
Радиус.jpg
СпойлерПоказать
Дистанция.jpg
Вас понял. но так мерить возможности нет да и смысл. получается нужно будет создавать какое то место со спец креплениями для замера, а тягать рулоны по 2 тонны так себе занятие и прибор замышлялся для сокращения времени работы а так мы его увеличим.
сейчас это так и вижу это так
InkedРадиус_LI.jpg
InkedДистанция_LI.jpg

Mischa23
Рядовой
Сообщения: 54
Зарегистрирован: 16.07.2018{, 05:21}
Репутация: 0
Имя: Михаил

Дальномер-линейка на ультразвуке (нужна помощь)

#36

Сообщение Mischa23 » 21.08.2018{, 21:05}

av писал(а):
21.08.2018{, 21:00}
Mischa23, а раньше нельзя было о этом сказать ? Почему из вас нужно все клещами тащить. Вроде не я за помощью обращался.
Ладно все это лирика. Теперь нужно переделывать проект.
прошу прощения. не мастер эпистолярного жанра. я то в этой теме и понятно, но я совсем забыл что это понятно только мне))) еще раз извиняюсь.
прикрепляю файлик с меню. толщину добавлю завтра, нормативы на работе оставил(
меню дальномер.xlsx
(9.74 КБ) 70 скачиваний

Mischa23
Рядовой
Сообщения: 54
Зарегистрирован: 16.07.2018{, 05:21}
Репутация: 0
Имя: Михаил

Дальномер-линейка на ультразвуке (нужна помощь)

#37

Сообщение Mischa23 » 21.08.2018{, 21:07}

av писал(а):
21.08.2018{, 21:04}
Mischa23, а раньше нельзя было о этом сказать ? Почему из вас нужно все клещами тащить. Вроде не я за помощью обращался.
Ладно все это лирика. Теперь нужно переделывать проект.

Отправлено спустя 4 минуты 28 секунд:
Вот проект пробуйте
кстати к слову) за ваше не равнодушие и помощь - готов помогать вам!!!
если нужны корпуса для ваших устройств - обращайтесь!!! смоделирую, напечатаю и отправлю!!!!

Ответить

Вернуться в «Проекты различных устройств на Arduino»