Измерительная тележка/колесо

Kolyamba
Offline
Зарегистрирован: 23.10.2013

Здравствуйте, уважаемые гуру Ардуино.

Возникла необходимость в изготовлении измерительной тележки - для измерения расстояний на ж.д. путях

Принцип работы  - как у мерных колес:

колесо катится по поверхности, около оси есть зубчатое колесо (с прорезями) и оптопара как в старых компьютерных мышках.

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

С мехенической частью  - у меня вопросов никаких нет. Для корректного измерения расстояний по оси пути  - измерительных колес будет 2 штуки - по одному на каждую рельсу. От них валами через дифференциальную передачу будет выход на зубчатое колесо. Таким образом я получу среднее пройденное расстояние по обеим рельсовым ниткам - и в итоге по оси пути. Это очень актуально при прохождении кривых участков пути.

А вот с электронной частью и выводом на дисплей - возникает вопрос как это реализовать, посколько с ардуино и другими электросхемами я еще не сталкивался.

Нашел на просторах интернета проекты по реализации счетчика обротов беличьего колеса, но это не подходит ко мне, поскольку точность при подсчете целых оборотов будет низкой. Зубчатое колесо особенно с большим диаметром и большим количеством зубцов (прорезей) обеспечит куда более высокую точность измерения. Да и как перевести импульсы в расстояния ?? с возможностью юстировки желательно в полевых условиях.

Прошу Ваших подсказок в реализации этого проекта.

На данный момент начато изготовление тележки, а вот выбор ардуино-платы - пока тоже под вопросом. Нужна обычная, или достаточно будет NANO ??

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

длина окружности/пройденное расстояние =  2ПR

Узнаете количество импульстов для один оборот N

разделите расстояние на количество импульсов получите расстояние на один импульс

Посчитали испульсы домножили на предыдущий коэффициент получили расстояние

ардуина и нано пойдет, микроконтроллер тот же (под обычной вы наверно подразумеваете UNO)

Kolyamba
Offline
Зарегистрирован: 23.10.2013

jeka_tm  Спасибо за быстрый ответ. :)

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

тут будет вопрос как описать это программой и как вывести это на дисплей.

помимо этого есть вопросы - как это все соединять.

По поводу того что и nano подойдет  - спасибо за совет. :)

закажу его сегодня.

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

программой в принципе так и описывается, только другими словами. вам нужен код?

для начала определитесь с дисплеем а потом как его уже подключить

может взять 1602

определитесь как у вас будет работать. какие датчики. где будет ардуина, где датчик, где дисплей, кнопки наверно тоже будут для обнуления например

Kolyamba
Offline
Зарегистрирован: 23.10.2013

jeka_tm, да - получается нужен сам код - поскольку я ни разу его не писал, поэтому надо разобраться что для этого нужно.

дисплей уже присматриваю 1602 - наверное что то типа этого

ну и сама плата ардуино

Структурная схема тележки на рисунке

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

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

мельком пробежался по коду примера. кажется они определяют нажатую кнопку уровню напряжения. ну ладно. тоже вариант. 

итого вам нужны:

1. оптопара

2. ардуина уно

3. шилд дисплея

4.источник питания 5В (например такой http://www.aliexpress.com/item/Free-Shippig-Sales-Promotion-Battery-2600mAh-perfume-Power-Bank-portable-external-battery-charger-for-iPhone5-4/1101530621.html)

ну и выключатель. остальное все программа и физические измерения

вопрос: а вам это зачем? вы работаете на железной дороге?

 

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

источник питания нужно выбирать из требуемого времени автономной работы

Kolyamba
Offline
Зарегистрирован: 23.10.2013

 Да - имею прямое отношение к железке

и возникает необходимость измерения расстоянй по ней.

рулекой долго и не совсем удобно

катать колесо - по рельсе - сложнвато

и оба эти способа не позволяют измерить путь по оси

нужно промерять и правую и левую нитки.

Если применять плату УНО (например такую), то тогда наверное имеет смысл сделать по датчику на каждом колесе и тем самым исключить дифференциал. Соответственно измерять длины правой и левой нитки что в принципе тоже необходимо и для расчета по оси  - брать просто среднее значение.

По источнику питания - должен выдерживать пару дней работы, но это уже потом можно подобрать эксперементальным путем

 

Вопрос: какой код примера вы смотрели ? которое про беличье колесо ??

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

который для шилда дисплея. там кнопки опрашиваются необычным образом

можете по датчику на колесо, 2 дисплея и 2 ардуины. можете 1 ардуину с одним дисплеем и все на него выводит. напишите левая стороная такое расстояние, правая сторона такое расстояние,. ну короче как фантазия вам позволит.

2 дня непрерывной работы?

2 дня ходит измерять. жестоко у вас на работе. ни поесть ни поспать)))

Kolyamba
Offline
Зарегистрирован: 23.10.2013

т.е. дисплей надо подбирать другой ?? или все же этот подойдет ??

схему тогда желательно 2 датчика (по одному на каждое колесо), одна ардуина, один дисплей

тока думаю, что тут уже надо трехстрочный дисплей

по строчно информация по расстоянию левая, правая и по оси.

__________

да нет - не так все плохо. это на тот случай если не будет возможности сделать подзарядку батареи

а так за день реально той же рулеткой 20 км измерить.

думаю тележкой - производительность больше будет  ))

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

жесть. хорошо. не забудьте задитить датчики от пыли грязи воды. а то намеряете

в 1602 2 строки. думаю вам и так хватит. оставить можно какой есть. 

трехстрочных не бывает, я по крайней мере не видел. есть 4 строчные

вы пешком за день 20 км проходите по шпалам? или все таки на транспорте?

Kolyamba
Offline
Зарегистрирован: 23.10.2013

защита конечно будет

дисплей тогда оставлю этот

конечно по шпалам - друго пути нет  )))

__________

седня закаываю компоненты - через месяц когда приду - начну ваять тележку  ))

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

хорошо. до встречи через месяц

Kolyamba
Offline
Зарегистрирован: 23.10.2013

ок  )))

maksim
Offline
Зарегистрирован: 12.02.2012

Вам надо вот такой вот вид транспорта

с установленными энкодерами на его переднем и среднем колесах.

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

))) было бы прикольно. только таскать тяжеловато

Kolyamba
Offline
Зарегистрирован: 23.10.2013

Хорошая телега, но не совсем практично

Kolyamba
Offline
Зарегистрирован: 23.10.2013

Здравствуйте всем!
С прошедшими новогодними праздниками  :)

Незадолго до наступления Нового года, получил я наконец то посылку с платой Arduino и дисплеем. Предновогодняя суета, не позволила как то занятся конструкцией тележки.
Теперь настала наконец то пора ее создания.

Пока шла посылка, я продумывал конструкцию тележки.
основной конструктив остается прежний.
два считывающих ролика с которых информация поступает на плату ардуино и выводится на дисплей.
(В перспективе планирую добавить акселерометр для регистрации продольных и поперечных уклонов, механизм для измерения радиусов кривых и какое нибудь записывающее устройство - карту памяти с записью где какие возвышения и радиусы кривых), но это пока в перспективе, сначада надо собрать основу и что бы тележка нормально считала расстояния.
Вот в качестве считывающего устройства планировалось использовать оптопару и диск с перфорацией по периметру. Вроде бы все просто. Оптопару палнировал взять с каких нибудь компьютеных мышек, однако конструкция мышек за то время когда я в них залазил последний раз сильно изменилась. Как таковой оптопары внутри уже давно нет, а искать раритет, там более два одинаковых раритета - проблематично.
Наверное есть и аналоги оптопары ???

В тоже время, ковыряние мышки навело на мысль оказаться от оптопары и использовать именно сам лазерный сенсор мыши.
Первоначально подумал, что закрепить плату от мышки над поверхностью катания рельса и получить чистые данные о перемещении. Но вот поверхность эта во первых бывает довольно хорошо накатана до блеска (а мышки то не очень хорошо работают на гладких блестящих плвехностях), да и всякий мусор и пыль не пойдут на пользу сенсору.
В итоге пришел к идее, что все таки оставить  само мерное колесо с прижимом к рельсу  на его валу в герметичном корпусе закрепить цилиндр диаметром равным диаметру мерного колеса и шириной в пару сантиметров. Тут уже поверхность можно сделать матовой и шершавой и проблем со считыванием не будет.

Начал искать информацю в этом направлении
наткнулся на вот эту статью:
http://robocraft.ru/blog/arduino/101.html
Непонятно описанное ограничение по смещениям по осям Х и Y от -127 до 127.
это получается что для измерения бесконечных расстояний мне мышка не подойдет ??
и еще вот в этой статье http://www.ixbt.com/peripheral/mice-sensor.shtml написна максимальная скорость перемещения 1м/с, а это где то 3,6 км/ч - маловато будет. Надо хотя бы километров 5 в час. (Но опять же статья написана в 2005 году, мож с тех пор что то поменялось ?? появились другие сенсоры и т.д.)

Или все таки не заморачиваться с лазерными мышками а продолжить идею с оптопарой ??
опять есть вопрос: если оптопара считает количество отверстий (в перфорации диска), то как производится учет направления движения ?? в той же мышке ??

maksim
Offline
Зарегистрирован: 12.02.2012

Какую еще лазерную мышь? зачем? для чего? забудьте!

Датчик Холла вам в помощь.

На крайний случай оптопара, причем можно не щелевую как у вас на картинке, а отражающую, тогда не придется делать прорези и на ту поверхность куда вы хотели светить мышью будет достаточно нанести черно-белые полосы.

Зачем вам направление движения определять? Если уж очень надо то ставиться по два датчика на каждое колесо, тогда и направление можно будет определить.

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

да зря вы в сторону "лазерных сенсоров" посмотрели. максим правильно сказал датчик холла или оптический

в мышках раньше оптопара стояла, последнюю которую разбирал там уже энкодер, механический судя по размерам

на ебее можно было купить любых из них. вот например

вот оптический. правда без колеса с прорезями. придется делать

http://www.ebay.com/itm/5mm-Slotted-1CH-Optical-Switch-Speed-Detection-Velocity-Sensor-Module-/331044344191?pt=AU_B_I_Electrical_Test_Equipment&hash=item4d13c7d17f

а вот и на датчике холла. тут все проще. магнит закрепили на диске, рядом датчик и все. измеряйте

http://www.ebay.com/itm/Hall-Switch-Sensor-Module-For-Arduino-Smart-Car-Motor-Speed-Test-New-/251384708218?pt=LH_DefaultDomain_0&hash=item3a87b23c7a

maksim
Offline
Зарегистрирован: 12.02.2012

На счет датчика Холла не так все просто если нужна точность не в один оборот колеса... в этом случае лучше использовать автомобильный из распределителя (например ТАЗ 2108), он имеет напротив самого датчика магнит и при прохождение через все это дело зуба зубчатого колеса уменьшается воздушный зазор между магнитом и датчикам в результате получаем "выходной сигнал".

Kolyamba
Offline
Зарегистрирован: 23.10.2013

Здравствуйте
Спасибо за ответ по поводу лазерных мышей.
Насчет датчика холла. я думаю что он не подойдет по причине точности в один оборот. Это повлечет за собой большую погрешность при нескольких измерениях. Точность будет очень низка.
Все таки получатся что оптопара -более предпочтительна.
Насчет прорезей на диске - это не проблемма6 можно взять диск из оргстекла и наклеить н а него из черную пленка с заранее вырезанными прорезями (это можно сделать на плоттере)
Да и точность тут будет  - один зуб  довольно таки приемлимо.  Я рассчитываю достичь точости не менее 10 см на 1 км.
Насчет учета направления движения. Это нужно для того что бы при необходимости откатиться назад для фиксации точки и т.д.
Сейчас читаю про оптопары в мышках. Там для определения направления вращения стоит один светодиод и два фототранзистора, что в общем то логично и понятно.
Надо все таки поискать оптопару с такими характеристиками

Клапауций
Offline
Зарегистрирован: 10.02.2013

можно рельс перфорировать.

*казалось бы, при чём здесь лазерные мыши?

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

да если бы нашли мышку упростили себе задачу. механика собрана с оптикой. только подключить к вашему колесу. точность там высокая (много щелей). да и направление можно опеределить. вот только у ардуины на меге328 только 2 прерывания. для определения направления нужно будет 2 прерывания. соответственно нужно будет 2 арудины

максим вам предложил вариант детали от машины, незнаю только насколько удобно его подцеплять

Kolyamba
Offline
Зарегистрирован: 23.10.2013

Клапауций

Рельс перфорировать к сожалению  - невозможно :):).

jeka_tm попробую все же поискать старую мышку. Вопрос только. если я уже буду подключаться уже к выходу от мышки (а не напрямую к микросхеме) я получу данные о направлении движения ??

или все же для того что бы получить данные о направлении нужно 2 арудуины ??

А учитывая мои дальнейшие хотелки по оборудованию тележки, получается что арудино вообще не подойдет ?

и надо мастырить какой нить комп на тележку ??

Предложение Максима по датчику холла.

Сейчас более углубенно смотрю что он может выдавать. http://cxem.net/electronic_news/electronic_news257.php

Я ошибся - говоря что у него точность в один оборот. там точность по количеству зубъев. Аналог на машине - это система ABS.

Судя по описанию он может выдавать данные о направлении и скорости, а нужно направление и расстояние, но для данных о направлении нужно две пластины, получается аналог как и с двумя фототранзисторами в датчике мышки. А в простейшем случае  - это прямо аналог оптопаре, только с помощью магнитных полей.

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

для измерения скорость с одного колеса нужно 1 прерывание. 2 колеса - 2 прерывания. соответственно ардуины хватало

для 2 колес с определением направления нужно 4 прерывания. для этого или 2 ардуины на меге 328 ставить. или использовать http://arduino.ru/Hardware/ArduinoBoardMega2560 . но это как из пушки по воробьям. если владеете паяльником можете и на меге8 собрать. выйдет дешевле. в меге8 также 2 прерывания

хотелки у вас увеличиваются. хочется все больше. соответственно с вашими новыми хотелками придется и железо менять или увеличивать количество

для измерения ускорения, наклона ардуина подходит. sd карточку поддерживает

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

Kolyamba
Offline
Зарегистрирован: 23.10.2013

jeka_tm  дельные замечания.

ну да - программировать я сейчас не умею

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

после решения данной задачи я думаю я уже буду четко понимать что хочу и что может получиться.

К слову заводская  тележка с описанным функционалом  (по типу моих хотелок) стоит не не одну сотню тысяч рублей.

и создавали ее довольно грамотные люди. Я пока с ними тягаться в этом деле ну никак не могу.

Хотя бы в  том, что для измерения поперечного угла наклона (возвышения одного рельса на другим) датчик для ардуины акселерометр MMA7361 не подойдет - не хватит точности имерений. Этот датчик не измерит превышение одного рельса над другим с точностью до 1 мм. Тут надо что то посерьезнее использовать.

Поэтому и хочу для начала сделать телегу со счетчиком расстояния и учетом направления перемещения.

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

ну тогда я вам написал что вам нужно. железо вы уже купили уно как я понял. но ее на 2 колеса не хватит с определением направления. или покупайте еще уно или купите сразу мегу2560 чтобы на одной плате. под мегу есть и шилды с большими жк дисплеями, но тут все упирается в то что пока не можете программировать. думайте. определяйтесь

Kolyamba
Offline
Зарегистрирован: 23.10.2013

Спасибо за ответ.

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

Пока начну с малого - с одной платы и создания самой телеги  - там тоже не все просто

 

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

ну да. начните с одного колеса а там уже будете усложнять

maksim
Offline
Зарегистрирован: 12.02.2012

Ну уж ладно вам, УНЫ вам хватит заглаза для этой задачи. По поводу точности датчика Холла - точность зависит только от того сколько вы сделаете прорезей в диске и от диаметра диска. Именно прорезей, не нужно городить огород, магнит один, прорезей много точность хоть до миллиметра можно получить.

maksim
Offline
Зарегистрирован: 12.02.2012

Берете таких 4 штуки в любом тазовском магазине

отрываете клемник и вуаля готовый датчик Холла для дуины. Ну а дальше все как у обычного энкодера...

 

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

максим объясните как 2 прерываниями обойтись если требуется 4?

думаете погрешность не увеличится если читать digitalread или через portd например?

Kolyamba
Offline
Зарегистрирован: 23.10.2013

maksim ну ведь датчик холла это по сути и есть оптопара.

для определения направления нужен еще один контакт.

maksim
Offline
Зарегистрирован: 12.02.2012

Прерывания скорее всего вообше не понадобятся, так как скорость будет низкой, но если уж очень надо ,то волшебное слово - PCINT.

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

так он вам написал 4 штуки. по 2 штуки на колесо. датчик холла не оптопара

maksim
Offline
Зарегистрирован: 12.02.2012

Kolyamba пишет:

ведь датчик холла это по сути и есть оптопара.

Нет. Никак вообще и уж тем более не по сути.

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

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

Kolyamba
Offline
Зарегистрирован: 23.10.2013

maksim и jeka_tm можно чуть поподробнее.

Получается, что собрав телегу и установив по приведеному на фото датчику на каждое колеср, я получаю счетчик расстяоний с определением направления движеня ??

кстати что то за датчик, порыл по номерам выбитым на датчике 1112 3833  - ничего похожего не нашел

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

вам писал максим внутри датчик холла. 2 датчика и шестерню намагниченную на каждое колесо. по размеру зубьев ничего сказать не могу, максим думаю подскажет

maksim
Offline
Зарегистрирован: 12.02.2012

Kolyamba пишет:

установив по приведеному на фото датчику на каждое колеср, я получаю счетчик расстяоний с определением направления движеня ??

Читайте выше.

Kolyamba пишет:

кстати что то за датчик, порыл по номерам выбитым на датчике 1112 3833  - ничего похожего не нашел

Читайте выше.

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013
maksim
Offline
Зарегистрирован: 12.02.2012

Ну если для человека не проблема изготовить стальной диск с прорезями, то лучше датчик Холла, в противном случае оптопара. При этом если колеса будут точиться токарем, то можно на фрезере прям на юбке колес сделать прорези.

Kolyamba
Offline
Зарегистрирован: 23.10.2013

Насчет датчика холла - все таки сложность изготовления намагниченного перфорированного металлического диска с равными расстояниями между прорезями - это довольно трудоемко для меня и практически не осуществимо. Разве что попробовать как то использовать зубчаты колеса от механизмов ABS с автомобиля. Однако учитвая то, что эти зубчатки выполнены заодно со ступицей колеса...

Все таки на оптике будет попроще использовать.

да и датчиков холла тоже надо 4, как и оптопары. И если в арудино можно использовать до 5 прерываний, то тогда может стоит все таки и остановиться на оптике ??

Для меня просто будет изготовить наклейки на диск из оргстекла с нужным количеством прорезей

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

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

maksim
Offline
Зарегистрирован: 12.02.2012

Какое еще намагничивание??? Вы о чем? Не надо ничего намагничивать. И не надо никаких магнитов.

LoneDog
Offline
Зарегистрирован: 22.10.2013

а вот  такая штука не подойдет в качестве зубчатого колеса?

Клапауций
Offline
Зарегистрирован: 10.02.2013

можно намагнитить рельс.

maksim
Offline
Зарегистрирован: 12.02.2012

LoneDog пишет:

а вот  такая штука не подойдет в качестве зубчатого колеса?

Нет. Оно в щель датчика не пролезет...

maksim
Offline
Зарегистрирован: 12.02.2012

Клапауций пишет:

можно намагнитить рельс.

или покласить в черно-белые полоски.

Kolyamba
Offline
Зарегистрирован: 23.10.2013

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

а шкив от ремня ГРМ - довольно таки крупная штука.

К сожалению возможности работать с металлом у меня нет, поэтому видимо вариант с датчками холла отпадает.

Буду пробовать делать с оптопарой, как и планировал, с учетом замечаний написанных jeka_tm и Максимом.