Как стать автором
Обновить

Комментарии 27

Не увидел, а какая точность измерения ожидается? И диапазоны измерения перемещений?
А это зависит от подключенных линеек. Например у меня есть оптическая линейка с разрешением 0.005мм. Тесты показали, что импульсы при обработке я не теряю. Естественно есть ограничения по скорости перемещения. На своем станке я могу передвигать суппорт на 10мм за 3 сек.
Нет, я немножко не о том. Я спрашивал, какую точность измерения Вы желаете получить. Ведь обычно системы строятся по принципу определения желаемых характеристик, а уж затем рассматриваются пути и средства их достижения. Может, 5мкм — избыточная и механически недостижимая точность и достаточно 50мкм, а это совсем другое дело.
Понял. Мне достаточно 0.01мм и то это за глаза. А у самой линейки можно конечно урезать точность до тех же 0.01мм.
Ок. Рискну предложить рецепт дешевого самодельно датчика. На прозрачной пленке распечатайте ряд вертикальных рисок (типа ||||||||||| ) длиной ну так сантиметров 15-20 (чисто для удобства). Расстояние между рисками и толщина рисок — одинаковые и минимальные, на что способен принтер, но четкие. Вырежьте ленту с рисками, разрежьте пополам и совместите два куска ленты. Попробуйте перемещать куски ленты вдоль. Светодиодом ловите изменение яркости. Лайфхак: перемещаемую часть ленты рекомендуется повернуть на небольшой угол.
ЗЫ1: Готовая точная лента есть в старых струйниках эпсон.
ЗЫ2: Неплохой датчик перемещений получается из матриц планшетных сканеров.
Вы пишите немного в другой плоскости.
Данная статья об устройстве для снятия показаний с уже готовых датчиков, но не о том, как «оцифровать» станок.
У меня есть одна оптическая линейка (и то, купил её для тестирования своего устройства), несколько цифровых штангенциркулей и поворотный энкодер для снятия числа оборотов. Т.е. все датчики у меня уже есть. Пока нет готового устройства, чтобы снять с них показания.
Ок, разницу уяснил.
Не понятно, причем тут Арудино? Про IDE, скетчи и пр. ардуиновской шняги не слова. Или это дальше?
Данную статью пришлось урезать (то ли сайт глючит, то ли есть какие то ограничения на размер статьи, это моя первая статья).
Да, далее будет продолжение.
Плата Arduino тут используется в качестве основной.
Прошивка будет в формате hex.
Спасибо за пояснения, правильно я понял: планируете написать скетч в среде арудино и скомпилировать в hex, который в свою очередь залить в МК?
Не совсем так.
Прошивку я писал на чистом Си, не используя никаких ардуиновских библиотек. Т.е. я мог бы сделать свою плату, на которой распаять процессор и его обвязку. Но это дополнительные сложности для сборки. А плата Arduino дает законченное решение по обвязке проца.
Нубский вопрос: существует что-то промежуточное по точности позиционирования и по цене между бесконтактными датчиками (оптические, индуктивные) и цифровыми линейками?

Лайфхак — честную матричную клаву можно сделать еще на одной ардуине и связать их между собой))

:)
Тогда уж легче на STM перейти, вот например:
Али STM
с учетом практически одного ценового уровня выглядит намного вкуснее по характеристикам. Но порог входа в ардуино и отсутствие платных средств разработки (вернее, наличие бесплатных))) все же выводят их вперед.
По ценам платы сравнимы, но вы предлагаете вторую плату, т.е. цена получается удвоенная.
А что касается сред разработки под STM, то бесплатные тоже есть.
Я скорее всего доберусь до STM, тем более, знакомые без проблем под них прошивки пишут.
Единственное что, на борту простых STM нет EEPROM, но читал что данные во флэш можно писать.
Я уже тоже задумываюсь, глядя на такие вкусняшки. Код только перелопатить придется. А EEPROM можно и внешнюю подцепить.
А можно вот эту ссылку здесь оставить? www.yuriystoys.com
Парень давно таким же вопросом озаботился, начал с MSP430, сейчас уже готовые платы продает, хотя и дороговато. Есть вариант на Arduino. Плюс у него шикарное приложение на Android, которое все и показывает, а микроконтроллер — только для снятия собственно показаний с линеек. Проект более или менее открытый, достаточно много информации по протоколам и как все это вместе заставить работать
Я знаю этот проект.
Он достаточно интересный, но вроде бы (могу ошибаться), он «из коробки» мало видов линеек поддерживает. Хотя у меня сейчас так же.
И птичку планшет жалко… марать его масляными руками :) Может быть я добавлю поддержку планшетов, вот только есть одно НО: в андроиде на данный момент не очень шарю.
Мне все же самому хотелось собрать подобное устройство, чтобы так сказать пройти все стадии: продумывание архитектуры, анализ сигналов линеек, программирование, разводка платы (хотя может буду на макетке собирать), проектирование корпуса (корпус буду печатать на 3D принтере) — это всё для меня можно сказать «рабочий отдых» :)
Ну конечно, если хочется сделать самому — надо делать самому. Просто если парень ухитряется продавать свои поделки (причем он начал с выкладывания в свободный доступ всей информации для самостоятельного изготовления) значит он что-то такое делает правильно. И у него можно почерпнуть полезные идеи, которые весьма вероятно востребованы теми, кто покупает его платку.
Совсем не обязательно делать приложение для смарта — отдельный самостоятельный блок будет даже удобнее.
Я бы, сравнивая официальные цены Arduino (Али хоть и пользуюсь, но не очень то доверяю) и Raspberry Pi Zero + недорогой дисплей, вообще не стал бы с микроконтроллером связываться. 20 секунд загрузки при начале работы за станком погоды не сделают, а удобство и скорость программирования на том же Питоне гораздо выше. Но тут уж каждый выбирает, что ему ближе — кому STM32 милее сердцу, кому AVR, а кто-то вообще Spartan какой больше всего любит.
Насколько я помню, его прошивка поддерживает (или может поддерживать) почти все широко и не очень распространенные шкалы.
И да, по поводу функциональности. Мой опыт с простенькими iGAGING говорит о том, что наиболее часто используемая — обнуление, чтоб начать отсчет с текущей позиции. Там вообще помимо показометра мало что востребовано. Все, что свыше этого, люди предпочитают реализовывать с помощью CNC-конверсии.
На мега328 не получится гарантированно без потерь считать сигнал с квадратурного датчика или линейки. Нужен аппаратный счётчик. STM32 некоторые годятся, у них таймер может считать квадратурные сигналы.
не получится гарантированно без потерь считать сигнал с квадратурного датчика или линейки

При какой частоте?
При любой. От вибраций импульсы с линейки идут с очень высокой частотой. Программный счётчик чего-нибудь обязательно напропускает. Вибрации обычное дело. Например будут когда в токарном патроне зажат шестигранник.
А что вы подразумеваете под фразами «программный счетчик» и «аппаратный счетчик»?
Аппаратный счётчик считает без участия процессора. Например таймер в одном из режимов. Процессор просто читает из регистров таймера что тот насчитал. Программный счётчик это когда процессор обрабатывает состояние входов с квадратурного датчика. Не важно по прерываниям это делается или нет. Какой смысл делать программный счётчик сейчас, когда доступны процессоры где это всё уже реализовано аппаратно. И стоят эти процессоры примерно одинаково.
Понял вас.
Под «аппаратный/программный счетчик» подразумевал тоже что и вы, но на всякий случай решил переспросить.
Когда поставлю линейку на станок, отпишусь по результатам.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории