Подключение электронного штангенциркуля к компьютеру

Обновлено: 04.07.2024

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

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

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

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

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

поэтому я решил переделать немного код

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

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

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

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

Уже более полугода владею дешёвым китайским электронным штангелем 150мм, в инструкции к которому написана фраза «digital interface». Возможность вывода на компьютер заинтересовала сразу, но созрел я на этот подвиг только сейчас.

Изначально мотивацией являлось просто любопытство, «чтоб было!» и «вдруг кто спросит, а у меня есть!», позже (уже по факту «получилось!») нашлось и реальное применение в проекте с самодельным ЧПУ-станочком.

Вводная


Главный герой, не смотря на свою дешевизну (около 8$), тем не менее, является очень точным прибором:

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

Поиск

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

Углубленный поиск по не русскоязычным ресурсам дал более продуктивные результаты. Как казалось по началу — всё достаточно просто и понятно, разжёвано осциллографами, снято на ютубе и т.д., однако конечного и рабочего «сходу» варианта не нашлось.

Так что, основной проблемой стал поиск информации.
Второй проблемой стало изготовление вилки к этому разъёму (который, в общем-то и не разъём совсем, а просто голые дорожки на плате). Контакты упорно не желали держаться. В конце-концов догадался воткнуть в кусочек стёрки лапки от LPT-порта. Штука получилась ненадёжной, но для теста вполне годной. На будущее решил в обязательном порядке подпаяться напрямую к плате и вывести свой разъём (штыревой CD-IN от материнки).

Решение

Для начала приведу нагло стыренные оттуда картинки с расположением контактов на циркуле и принципиальную схему подключения (не вижу смысла перерисовывать самому, а выдавать за своё — вообще непростительно):


Пины:


Схема:

Для согласования напряжений я использовал резистор 200Ом как и было рекомендовано. Конденсатора на 10мкФ не нашлось и я поставил 100мкФ выпаянный с мёртвой материнки.

Результат

Справившись с пайкой, приступил к написанию скетча. К слову сказать, в отсутствие макетной платы вышел из положения, собрав схему на «кроватке» от IDE-порта, с той же материнки.

Скетч, приведённый в вышеуказанной статье заработал без вопросов, но удовлетворения не принёс.
Китайский скетч из комментариев, работать «сходу» — отказался, но производил гораздо более серьёзное впечатление, вследствие чего, подвергся серьёзному «допиливанию».

Вот что из этого получилось (или готовый скетч для Arduino UNO, версия IDE 0022):


Удовлетворившись результатом, решил сделать финальное фото, и немного «босяцкой» рекламы для эффекта:

Передача измерений штангенциркуля на ПК через ардуино

Передача измерений штангенциркуля на ПК через ардуино

Есть желание собрать на Ардуине и цифровом штангенциркуле "передатчик" измеренного значения при нажатии кнопки для ввода в ячейку размера.
Три кнопки: только значение, значение + ввод, значение + табулятор) Там глядишь и Блютус приспособлю, что бы без проводов
Может ещё кому-то пригодится использующим САПР программы.

Я далек от этих электронных дел. Но руки с нужного места. (голова - не всегда. )
На сколько я понял, то для этих целей нужна Ардуина с ATmega32u4 (arduino pro micro должна подойти по размеру), которая может выступать в качестве мыши/клавиатуры. Если ошибаюсь - поправте.
Собрал недавно "Народный УЦИ" по проекту Олег А. с форума чипмейкер.ру на Ардуино НАНО. Там нужен был операционный усилитель для поднятия напряжения сигнальных выходов до понятных ардуине 2.5-5В логической 1 (+ инвертация сигнала получилась по схеме).
Если купить arduino pro micro на 3.3в, то там тоже нужно будет повышать напряжение, или нет?
А то я что-то не нашел, каким должно быть минимальное напряжение сигнала для 3.3В ардуины, что бы получить логическую 1(обычно пишут, что половина входного = 3.3/2=1.65В ).
Штангенциркуль питается от 1.5В батарейки. Дата и Клок примерно 1.25-1.3В. Достаточно ли такого напряжения? (или же нужно будет купить штангенциркуль с батарейкой на 3.0В и тогда не нужно будет парится с выходным сигналом)

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

Может уже кто делал подобное, или видел статью. Поделитесь пожалуйста ссылкой.
За одно буду дополнять тему и первый пост, если нету готового решения на Ардуино.
(не знал, в какой ветке тему создавать тему)

Немного погуглив собрал код в едино. (+ сторонняя помощь)
Отправляем измерения с штангенциркуля на ПК через Arduino pro micro после нажатия кнопки.
Теперь + меню подлинному нажатию и светодиодная индикация режима:
- результат + ввод
- результат + таб
- результат + выбрать всё



Этот обзор я начал писать почти три года назад, но потом из-за некоторых обстоятельств пришлось отложить на неопределенное время. И вот сейчас, наконец, дошли руки до него. И так, поехали:)

Посылка была немаленьких размеров:


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


USB-пульт был в картонной коробке, в которой тоже большую часть объема занимал пенопласт. В коробке были сам пульт, кабель USB-mini-USB и mini-CD с USB-Serial драйвером и программой Data Collection System 1.0:

Сам девайс был в кесйе, вставленном в картонный кожух. Кейс довольно жесткий, инструмент в нем хорошо защищен:

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


Инструкция только на английском языке, но написана грамотно и без ошибок:)

Спецификации:

• Длина измеряемой области: 300мм / 12" (306мм с копейками)
• Шаг измерения: 0,01мм/0,0005"
• Точность измерения: 0,04мм
• Функции: измерение снаружи (нижние губки) и изнутри (верхние губки), измерение глубины
• Материал металлических частей: нержавеющая сталь
• Цифровой интерфейс: mini-USB
• Питание: батарейка CR2032 3V или от шины USB
• Уровень защиты: IP54 (брызго- и пылезащищено)


Производитель поленился указать вес, но самому нетрудно было взвесить:


Кейс весит больше самого инструмента:


Батарейки в комплекте небыло. Я вставил Panasonic за 69 рублей, который проработал 2 года. Инструмент может работать без батарейки при подключении к компьютеру по USB.


Задняя сторона выглядит вполне стандартно:


На верхнем торце расположились металлический винтовой фиксатор и mini-USB порт, защищенный резиновой заглушкой, прикрепленной к корпусу:


На лицевой стороне сверху от LCD-экрана расположилась кнопка смены единицы измерения (мм/дюйм), а снизу — кнопки включения/выключения и обнуления. Автовключение при движении каретки, автовыключение и обнуление в любой позиции поддерживаются. Правее батарейного отделения находится колесо-доводчик:


Штангенциркуль может также измерять глубину, хотя это, на мой взгляд, функция чисто для галочки:


На конце с задней стороны выгравирован серийный номер:

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


Для проверки точности я взял установочную меру в 25мм от советского микрометра:


К моему великому удивлению инструмент выдал 25.00мм. Я морально был готов увидеть что-то вроде 25.02 или 25.03, но чтоб прям в яблочко бил — этого я никак не ожидал.

USB-пульт


USB-пульт не входил в комплект поставки, он продавался отдельно. Пульт подключается к штангенциркулю через порт mini-USB на инструменте. На самом пульте тоже есть порт mini-USB, куда втыкается кабель USB-mini-USB для подключения к компьютеру. Длина комплектного кабеля — 2м, длина кабеля, идущего от пульта к инструменту — 0,5м.


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


Задняя сторона пустует:


Открутив винтики, открывается такая картина:


С лицевой стороны плата выглядит так:


На плате расположились три микросхемы:
— USB-Serial преобразователь WCH CH340T (datasheet)
— микроконтроллер Silicon Labs C8051F321 (datasheet)
— компаратор ON Semiconductor LM339DG (datasheet)

P.S. Сейчас продается другой пульт с тремя кнопками, которого еще небыло в продаже когда я заказывал. Добавились кнопки обнуления и смены единицы измерения, и он стоит значительно дешевле — около $18 вместо $57.56 за однокнопочный. Новый пульт, насколько я понял, идет без программы Data Collection System — он вводит прямиком в Excel.

ПО Data Collection System 1.1


Версия 1.0, которая шла в комплекте, оказалась абсолютно непригодной для работы. Она только умела показывать измеренне значение, т.е. дублировала экран инструмента. Остальные функции либо не работали, либо работали по праздникам. Продавец, он же и производитель, попросил подробно описать проблему, после чего я ему отправил кучу скринов и видеороликов с изображением косяков программы. Спустя пару месяцев он отправил мне доработанную версию 1.1, которая уже работала как следует. Интерфейс программы на английском, выбора языка нет:


Левую часть почти целиком занимает поле, в котором отображаeтся таблица с измеренными значениями и сопутствующей каждому измерению информацией. Под ним расположились кнопка очистки этого поля, кнопка сохранения таблицы в файл *.xls (MS Excel), кнопка ручного считывания измерения (эквивалентно нажатию кнопки на пульте) и кнопка начала автоматического считывания по заданному в настройках промежутку времени.

В правой части крупным шрифтом в режиме реального времени дублируется экран штангенциркуля. Рядом обозначена единица измерения, заданная в настройках программы. Изменение единицы на инструменте не влияет на эту настройку, т.е. на инструменте может быть выставлена единица «мм», а в программе — дюймы, и программа будет показывать дюймы, хотя при записи не указывается единица измерения.

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

Блок настроек позволяет задать нормальное значение (стандарт), допустимое отклонение вниз/вверх от нормального значения, единица измерения (фактически бесполезная настройка, как уже объяснил), включение/выключение бипера компьютера при считывании замера, интервал в секундах для режима автоматического считывания, название проекта и имя оператора. Редактирование настроек можно активировать нажав на кнопку System Settings, которая превратится в OK для сохранения изменений.


Ниже расположена кнопка, с которой начинается и заканчивается работа программы с инструментом — Connect/Disconnect:

Заключение

Производитель явно имел в виду профессиональное применение, создавая этот инструмент. Это видно по качеству обработки металла, и это подтверждается высокой точностью измерения. Об этом свидетельствует также наличие mini-USB порта для ввода и сохранения замеров на компьютере, а интерфейс программного обеспечения подсказывает, что оно предназначено для использования на производстве. При этом мне кажется нелогичным, что у самой длинной модели в линейке максимальная измеряемая длина — 306мм (на производстве, где я работал когда приобретал инструмент, иногда приходилось выходить за этот предел (до 322мм), но это случалось редко). Это является, пожалуй, единственным существенным минусом для меня. Пыле-влагозащиту я не тестировал и не собираюсь — с инструментами я стараюсь обращаться бережно (кроме молотка и зубилы, конечно).

И так, минусы:
— нет версии длиннее 300мм
— глубиномер. Он мне только мешает
— время от времени возникающие ошибки при попытке подключиться к штангенциркулю из программы. Не знаю насколько я прав, но мне кажется это глюки USB-Serial драйвера
— отсутствие связи между настройками единцы измерения на инструменте и в программе
— при сохранении в *.xls файл не записывается информация о единице измерения, название проекта, имя оператора, стандартное значение и допуски вверх-вниз. Указывается отклонение от стандартного значения и величина отклонения, но все же это не то

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

На дворе — уже 21-й век, и пришла мне в голову мысль заменить мой старый штангенциркуль, который достался от деда, а деду — от прадеда ☺, на что-нибудь более современное; этакое электронное и цифровое.

Так и оказался в моих руках новенький блестящий электронный штангенциркуль из Поднебесной.


Технические характеристики цифрового штангенциркуля

Характеристики взяты из прилагаемой к штангенциркулю краткой инструкции:

0.02 мм / 0.001 дюйма (до 100 мм);

0.03 мм / 0.001 дюйма (св. 100 мм)

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

Цена на Алиэкспресс на дату обзора — около 970 российских рублей ($12.8) в комплекте с футляром проверить актуальную цену или купить.

Практически полные аналоги этого электронного штангенциркуля можно найти и в российских магазинах с помощью сервиса сравнения цен Яндекс.Маркет. Цены имеют большой разброс, примерно от 1000 до 2000 российских рублей, проверить актуальные цены или купить.

Из-за более высоких цен магазины с Яндекс.Маркет могут представлять больший интерес скорее для юридических лиц, чем для физических.

Упаковка, внешний вид и конструкция цифрового штангенциркуля

Штангенциркуль пришел в прочном пластиковом футляре с двумя защелками, надёжно удерживающими его створки:


Если приглядеться к фотографии, то в правом нижнем углу футляра можно заметить углубление для шильдика, который могут приклеивать некие виртуальные «производители» и объявлять, что это вроде как они прибор изготовили. :)

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

В футляре, кроме штангенциркуля, упакованного в трапецевидный пластиковый пакет, обнаруживается краткая инструкция по эксплуатации:


Важное замечание: необходимая для работы прибора батарейка LR44 в комплектацию не входит, её придётся покупать отдельно, можно тоже на Алиэкспресс, ссылка. Цена — $1.10 за десяток (!).

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


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

Посмотрим на рамку со снятой крышкой батарейного отсека:


Сверху рамки расположен традиционный винт её фиксации.

На самой рамке — три кнопки управления: синяя (переключение мм / дюймы), красная (вкл. / выкл.) и желтая (установка на ноль).

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

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

А во-вторых, в штангенциркуле есть функция автоматического выключения при длительном бездействии, срабатывает через 6 минут (проверено), функция не настраивается и не отключается.

Тем не менее, несмотря на наличие кнопки выключения, в выключенном состоянии потребление тока не прекращается.

Похоже, что выключение прибора на самом деле только отключает индикацию.

Потребление тока во включенном состоянии — 16.8 мкА (микроампер), потребление в выключенном состоянии — 15.5 мкА. Вот и вся экономия. :)

Крышка батарейного отсека держится на защелках. В некоторых клонах прибора она прикручивается аж двумя винтами; но это, право же, «архитектурное излишество» (хотя и ничем не мешающее).

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

Насечки сделаны достаточно глубокими, чтобы при вращении колёсика палец не проскальзывал.

Ещё одна важная деталь: при сведении губок никакой щели между ними не обнаруживается по всей их длине. Это — элементарная, но важная проверка.

За счёт электронной «начинки» рамка электронного штангенциркуля получилась толще, чем у «обычного»; но нельзя сказать, чтобы толщина стала слишком большой:


Наконец, посмотрим на обратную сторону штангенциркуля:


С обратной стороны прибор ничем не отличается от обыкновенных штангенциркулей.

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

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

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

Измерения с помощью цифрового штангенциркуля

Эта глава будет совсем короткой.

Работа с этим прибором почти не отличается от работы с обычным штангенциркулем, переучиваться не надо :) .

Сначала был проверен предел измерений. Он составил в миллиметрах 151.9, что чуть больше заявленных 150 мм.

В дюймах же, наоборот, составил чуть меньше заявленных 6 дюймов (оказалось 5.98).

Замер тонких предметов вполне возможен, хотя и на пределе точности. Например, замер толщины обёртки от шоколадки:


Пробный замер диаметра винта М3 показал величину чуть меньшую, чем 3 мм:


Для проверки точности на больших дистанциях было проведено сравнение с показаниями «дедовского» штангенциркуля, имеющего точность 0.05 мм. К сожалению, более подходящего эталона в домашнем хозяйстве не нашлось. :(

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

Итоги и выводы

Этот электронный штангенциркуль приятно удивил: ведь могут, когда захотят!

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

Особенно приятно считывание показаний: вместо поиска совпадения делений нониуса (как у древних штангенциркулей) достаточно посмотреть на крупные цифры дисплея.

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

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

При покупке штангенциркулей в момент их получения необходимо обращать внимание на некоторые детали:

  • «тело» прибора не должно иметь нештатных изгибов (такое бывает крайне редко; но чего только в жизни не случается!);
  • губки должны быть прямыми и сходиться без щелей (смотреть надо на просвет на фоне источника света);
  • кончики губок должны сходиться без перекосов друг относительно друга;
  • прочие мелочи, которых не должно быть: «болтанка» рамки, вмятины, царапины, сколы, трещины и т.п.

Ролик с насечками, наоборот, должен свободно «болтаться»; но при прижиме пальцем должен уверенно тянуть за собой рамку.

Не забываем о том, что производственный брак всё ещё не изжит окончательно и бесповоротно. :)

При заказе из Китая лучше заказывать в футляре: это значительно повышает для прибора шансы доехать без повреждений. Да и в дальнейшем он тоже поможет долгой и счастливой жизни штангенциркуля.

Купить этот цифровой штангенциркуль можно на Алиэкпресс проверить актуальную цену или купить, либо подобрать его аналог на Яндекс.Маркет проверить цены или купить.

Читайте также: