Авторизация
Зарегистрироваться

avatar RSS блога Подписка

Цифровой штангенциркуль 150мм


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

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

Речь пойдёт о том самом цифровом интерфейсе, который на штангеле все видели, но никто не знает как им пользоваться.


Можно найти дешевле —
почему Gamesalor?
Во-первых, там практически самый дешёвый вариант. Причём не по акции, а на постоянной основе. Однако, следует учесть плату 1.5$ за трек, в случае заказа одного только циркуля может оказаться не очень выгодным по сравнению с тем же Али.
Во-вторых, это магазин с приличным оборотом, что заметно по тому что с каждым заказом что-то изменяется в лучшую сторону — инструкции перестали быть китайским, улучшается качество инструкций, начиная от описания и заканчивая бумагой, улучшения происходят и с футляром (для версии с футляром — она чуть дороже) — появилась поролоновая подложка и дополнительные отделения. Это выгодно отличает Геймсейлор от индивидуального продавца на Али у которых изменения произойдут только когда он полностью сольёт текущую партию и подвезёт новую.
В-третьих, PayPal. Этим всё сказано.
В-четвёртых — просто с ними, в случае чего, решать вопросы намного удобнее и легче. Возможно из-за «в-третьих».
Пример: на днях пришёл глючный штангель, у которого прыгали показания. Заменили (положили в следующий заказ) даже без диспута в палке, хватило видео с минимальными комментариями.
Удастся ли в подобном случае пободаться с продавцами на Али — не знаю, и если чесно, подобный опыт приобретать ни сам не хочу, ни кому другому не желаю.

P.S.: прошу не рассматривать эту аргументацию как выпад в сторону Алиэкспресса или фанатизм по поводу Геймсейлора. Это всего лишь частный случай, со своими нюансами. К слову, на DX этот циркуль вдвое дороже, но это ведь не повод хаять DX?


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

Про точность
Точность вполне достойная и соответствует заявленным 0.01-0.02мм.
Я замерял этим циркулем советскую калибровочную плашку 70мм — циркуль показал 70.01мм, что, во-первых, соответствует заявленной точности, а во-вторых, неизвестно вообще кто не прав — циркуль или плашка :)
плашка

Для чего это надо?
Варианты применения:
• Чтение на компьютер. Например, занесение сразу в Эксель при долгих нудных рутинных замерах.
• Использование совместно с устройством, управляющим точными процессами. Например, для сверлильного/токарного/фрезерного станка. Особенно актуально самоделкиным.

Как сделано у меня
Начну с того, что интерфейс реально работает:


Всё относительно просто. Делается топором из спичек и желудей за один вечер, включая пайку, изучение протокола и программирование конечного устройства (или адаптирование под себя найденного в инете чужого кода).
Лично для меня, основной проблемой было изготовление вилки к разъёму. Расположение контактов в разъёме не стандартное (не SMD), мало того никаких условий для крепления и удержания вилки тоже не предусмотрено. Никакие обломки компьютеров не подходят. В итоге сделал на первое время так: в кусочек стёрки воткнул тонкие пружинные лапки от разъёма LPT, на нужном расстоянии.

Расположение контактов слева направо (штангель экраном к себе):
[V-] [Data] [Clock] [V+]

Идеальным выходом будет подпаивание к плате циркуля напрямую и вывод своего (нормального) разъёма.

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

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

Дополнение
А для желающих ознакомиться получше, приведу некоторые подробности под спойлером.
Технические детали (про протокол штангеля)
Протокол штангеля
Как видно из протокола, штангель шлёт 48ми-битный поток, который содержит два 24х-битных слова, первое из которых содержит информацию об абсолютной позиции, а второе об относительной (если обнуление посередине).

По времени, в «нормальном» режиме длина слов примерно по 300мс, пауза между словами около 100мс, пауза до и после потока по 50мс. Итого вся длина посылки около 800мс (чуть больше).
Поток бинарный. Да-нет, 1-0. Читаем шину данных по «тику» шины Clock.

Читать можно как микроконтроллером, так и компьютером, скажем, на COM-порт.
Естественно, что предварительно необходимо согласовать/сбросить напряжение.
Учитывая, что напряжение питающей штангель кнопки-таблетки LR44 1.5В (максимум 1.7В), то примерно до этого уровня и следует сбрасывать.


Внимание!
По просьбам — добавка —
скетч для Ардуины
//У меня Ардуино Уно, версия среды 0022
//LCD выпилено с целью чтоб шло у всех
//Смотреть данные сериалмонитором
//При копировании — обязательно проверьте кавычки в Serial.print — они уплыли из-за переформатирования движком сайта
int dataIn = 11; //шина данных, можно менять
int clockIn = 2; //шина clock, не трогать, так надо (читайте про attachInterrupt)

int isin = 0; //д=1 мм=0
int isfs = 0; //p
int index;

unsigned long xData, oData;

int ledPin = 13; //мигалка на 13й вход
int ledState = LOW; //статус мигалки
long previousMillis = 0; //когда последний раз мигали
long interval = 500; // интервал мигания

long previousGetMillis = 0; //
long Timeout = 8; //mмс

float stringOne; //временные переменные
char charBuf[5];
char charBuf2[8];
void setup(){
digitalWrite (dataIn, 1);
digitalWrite (clockIn, 1);
pinMode (dataIn, INPUT); //привязываем шину данных
pinMode (clockIn, INPUT); //и clock

Serial.begin(9600);
delay(500);

attachInterrupt(0,getBit,RISING); //и аттачим clock на 2ю ногу
index = 0;
xData = 0;
oData = 999;
}

void loop(){
if ((index !=0) && (millis() — previousGetMillis > Timeout) ) {
index = 0;
xData = 0;
};

if (index >23) {
if (oData !=xData) {
if (isin==1){ //дюймы
if (isfs==1){ //минус
Serial.print(«inch: -»);
}else {
Serial.print(«inch: „);
}
stringOne =xData*5/10000.00000;
Serial.println(floatToString(charBuf2,stringOne,5,5));
}else { //мм
if (isfs==1){ //минус
Serial.print(“mm: -»);
}else {
Serial.print(«mm: „);
}
stringOne =xData/100.00;
Serial.println(floatToString(charBuf,stringOne,2,5));
};
};
oData =xData;
index=0;
xData=0;
};

if (millis() — previousMillis > interval) {
previousMillis = millis();
if (ledState == LOW)
ledState = HIGH;
else
ledState = LOW;
digitalWrite(ledPin, ledState);
}
}

void getBit(){ //чтение и флаги
previousGetMillis=millis();
if(index < 20){
if(digitalRead(dataIn)==1){
xData|= 1<<index;
}
} else {
if (index==20) //минус
isfs=digitalRead(dataIn);
if (index==23) //дюймы
isin=digitalRead(dataIn);
};

index++;
}

//функция для безгеморойного конверта переменной типа float в строку
char * floatToString(char * outstr, double val, byte precision, byte widthp){ //буфер под результат, число, точность (после запятой), минимальная длина
char temp[16];
byte i;

// compute the rounding factor and fractional multiplier
double roundingFactor = 0.5;
unsigned long mult = 1;
for (i = 0; i < precision; i++)
{
roundingFactor /= 10.0;
mult *= 10;
}
temp[0]='\0';
outstr[0]='\0';

if(val < 0.0){
strcpy(outstr,“-\0»);
val = -val;
}

val += roundingFactor;

strcat(outstr, itoa(int(val),temp,10)); // целая часть
if( precision > 0) {
strcat(outstr, ".\0"); // дробная
unsigned long frac;
unsigned long mult = 1;
byte padding = precision -1;
while(precision--)
mult *=10;

if(val >= 0)
frac = (val — int(val)) * mult;
else
frac = (int(val)- val ) * mult;
unsigned long frac1 = frac;

while(frac1 /= 10)
padding--;

while(padding--)
strcat(outstr,«0\0»);

strcat(outstr,itoa(frac,temp,10));
}

// пробелы (для формкатирования)
if ((widthp != 0)&&(widthp >= strlen(outstr))){
byte J=0;
J = widthp — strlen(outstr);
for (i=0; i< J; i++) {
temp[i] = ' ';
}

temp[i++] = '\0';
strcat(temp,outstr);
strcpy(outstr,temp);
}
return outstr;
}
Планирую купить +56 Добавить в избранное +46 +100
свернуть развернуть
Комментарии (44)
RSS
+
avatar
  • senneka
  • 17 ноября 2011, 11:08
0
Спасибо! MySku.ru на дисплее на фото — супер :)
Заказал такой, жду. Но мне и в голову не приходило что его можно к компу подключить.
+
avatar
  • SovGVD
  • 17 ноября 2011, 11:14
0
Однако спасибо =) не знал что там еще и поключить к ардуинке его можно
кстатии у меня если резко туда сюда его сдвигать/раздвигать, то ноль сильно сбивается, но в целом проблем нет — отличная штука при своей цене, а то замучился измерять обычной линейкой

а скетч для ардуинки не прилагается? =)
+
avatar
  • Shadow
  • 17 ноября 2011, 11:19
0
Совсем резко сдвигать-раздвигать не стоит. У него есть предел по скорости измерения. Полметра в секунду максимум, по-моему (но это не точно — инструкции под руками нет.)
+
avatar
  • Rai220
  • 17 ноября 2011, 16:57
0
А я свой, тоже с GameSalor'а тоже пробовал резко сдвигать, но он не сбивается. Максимум 0.01 мм после нескольких движений туда-обратно.
+
avatar
  • Shadow
  • 17 ноября 2011, 17:10
0
Гляжу в инструкцию — полтора метра в секунду максимальная скорость измерения.
Это, в общем-то, достаточно солидно. Не должно сбиваться.
Либо уж очень у нас разные понятия о резких движениях :)))
+
avatar
  • Shadow
  • 17 ноября 2011, 19:13
+1
Добавил скетч.
+
avatar
  • 1968
  • 17 ноября 2011, 11:37
0
Ох, шайтан! Ох, маладзецъ!
Следующий шаг — установка Windows 7 в калькулятор.
:)
+
avatar
  • Shadow
  • 17 ноября 2011, 11:42
0
Это всё от лукавого! Только DOS 6.22
+
avatar
0
Продукты мелкомягких не очень то приспособлены для устройств отличных от ПК. А вот линух вполне можно запихать почти куда угодно :)
+
avatar
  • S_N
  • 17 ноября 2011, 11:45
+1
Так протокол не I2C что-ли?
+
avatar
  • Shadow
  • 17 ноября 2011, 11:58
0
Нет. Там свой «китайский» протокол :)
+
avatar
0
«Ардуино наше все.»
Обзор отличный, «Хэндмейд форева».
+
avatar
  • t0kashi
  • 17 ноября 2011, 12:08
+1
Рука AVR-щика автоматом потянулась к «минусу» после этого коммента))))
Но сдержался.
+
avatar
+1
Йода говорил нам «Платформу уважай всякую Ты, о юный падован, ведь и AVR тоже тема хорошая»
;)
+
avatar
  • zerbino
  • 17 ноября 2011, 11:56
-1
нужен полный подробный манул начиная с «вот он — штангенциркуль. Идём и покупаем ТУТ ЭТО...» и т.д.)
Автор молодец) У меня этот девайс есть — очень полезен, если надо замерить например глубину протектора шины или ЦО или ещё много чего)
+
avatar
  • Shadow
  • 17 ноября 2011, 12:05
+6
Описать «купить тут это, а тут это», у меня получится плохо, т.к. я отпаиваю то, что надо, с мёртвой материны или выламываю из старого мобильника :) А скотч и изолента продаётся везде :))

Из того что купить — могу обозреть ардуину, тем более, что вроде ещё не было обзора. Но это мне нужно с мыслями собраться серьёзно. Чтобы и доступно, и информативно, и не особо коротко.
+
avatar
  • t0kashi
  • 17 ноября 2011, 12:10
0
Будете писать про ардуину — зовите меня. <Критик злорадно потирает руки>
+
avatar
  • zhigul
  • 17 ноября 2011, 12:24
0
Надо. Интересно что это.
+
avatar
  • koyotu
  • 17 ноября 2011, 12:06
0
Отличный обзор спасибо! Тоже с gamesalor.com вчера такой получил… чо теперь надо к компу подрубать… )))
+
avatar
+3
дает трек нахаляву при заказе от 50 баксов) есть фишка если добавлять в корзину товар из витч листа) он идет по наименьшей цене)) Люблю геймсейлор!
+
avatar
  • GorBest
  • 17 ноября 2011, 17:35
0
Подробней расскажи.
Понял. Супер
+
avatar
0
Ага, хороший магазин. Еще бы асортимент увеличили, цены бы не было :)
Как в следующий раз буду что-нить там заказывать попробую трюк с добавлением из вишлиста.
+
avatar
  • disasm
  • 18 ноября 2011, 09:51
0
Если хотите купить несколько предметов одного наименования, то добавляйте их из вишлиста.
Если в корзине просто увеличите количество, волшебство исчезает, и цены старые становятся.
+
avatar
0
пару раз добавь из виш листа. нужно 7 штук. 7 раз жми в виш листе… Главное то что продавец отправляет и баг не чинит. пользуемся!
+
avatar
0
проблема в другом вы не можете выбрать цвет либо наименование. приходиться в палке ему писать. хотя я и раньше так же в палке писал.
+
avatar
0
BiC со своей акцией типа товары со скидкой. Опустился в моих глазах ниже плинтуса.
+
avatar
  • pupkin
  • 17 ноября 2011, 14:10
0
как раз жду посылочку от туда + добавил 3 термометра
+
avatar
  • d480
  • 17 ноября 2011, 14:40
0
СтОит обратить внимание, что там рядом продаётся такой же, но в пластиковой коробке, и разница в цене всего в $1. Имеет смысл взять его, чисто из соображений будущей сохранности девайса. gamesalor.com/en-us/GoodsInfo.aspx?id=2165
+
avatar
  • Shadow
  • 17 ноября 2011, 14:54
0
Так точно!
Вроде упоминал, но забыл ссылку вписать.
Коробка годная, и при доставке спасёт, и при хранении на своём месте будет.
В последний раз с поролоновой подложкой пришла — меньше трястись внутри коробки будет пока доедет.
+
avatar
+1
А мне наоборот, раньше приходило с Гамесалора в пластиковой коробке, заполненной поролоном, а последний пришел в пластиковой коробке с пластиковыми же перегородками.

Заказывал в сентябре, пришло неделю назад, через 48 дней.
Заметил: почта с Гамесалора идет наибольшее возможное время, видимо они расположены в заднице китая.
+
avatar
  • Shadow
  • 17 ноября 2011, 15:39
0
Неделю назад пришёл в пластиковой коробке с пластиковыми перегородками, но с поролоном на дне :)))
У них вроде там есть выбор чина пост (или чина аирмайл штоль) и гонконг пост. По умолчанию чина. Через гонконг вроде как шустрей.
+
avatar
  • d480
  • 17 ноября 2011, 17:59
-1
Ещё одно наблюдение. Что ещё может тронуть чёрствое сердце старого самодельщика?
Вы удивитесь :-) Заточенные концы как заднего измерителя, так и нутромера. У оригинального прибора они полукруглые. В старые времена приходилось с большой осторожностью и прилежанием точить эти концы на заточном станке, боясь пергреть и отпустить их. А тут — заводская заточка, прям королевский пингвин.

Короче, я теперь тоже…
+
avatar
  • JhaoDa
  • 17 ноября 2011, 19:29
+1
Штангенциркуль к компу — это пять. Без сарказма. Смело можно писать статью на Хабр.
+
avatar
  • Docmaks
  • 17 ноября 2011, 21:47
0
Мозг разрушен. Спасибо. Плюсую.
+
avatar
  • Frank
  • 03 декабря 2011, 12:47
0
Китайцы на ДХ жгут:
img.dxcdn.com/productimages/sku_7880_4.jpg
+
avatar
  • Teodor
  • 13 декабря 2011, 20:15
0
в чем прикол?
+
avatar
  • Frank
  • 14 декабря 2011, 12:12
0
Сравните цифру на экране и на линейке штангенциркуля.
+
avatar
  • Teodor
  • 13 декабря 2011, 20:12
0
репост
+
avatar
  • alteral
  • 13 декабря 2011, 20:35
0
я понимаю мультиметр на FS9922 к компу это пять. но опять же через опторазвязку или ИК. с сарказмом!
но штангенциркуль к компу… реализация неплоха…
для сверлильного/токарного/фрезерного станка
ага, декоративный подарок токарю, не более. да и то не каждый «железных дел мастер» будет доверять китайской рулетке на проводе. формат посылки свой, для отправки по ИК или zigbee придется такой агарод городить что ОЙ!
занесение сразу в Эксель при долгих нудных рутинных замерах
ага промерять расстояние между каждым выводом упаковки PPGA-370 ))))

я вот че ждуу!
www.raspberrypi.org/
+
avatar
  • xaTxa
  • 30 мая 2012, 13:39
0
Друзья подскажите как там устроен измерительный узел? У меня один лежит постоянно выдает ошибку измерения и у товарища такой же. Как то можно почистить или отремонтировать его?
+
avatar
  • Shadow
  • 14 августа 2012, 23:26
0
Мне попадался глюк только такого плана: посреди шкалы выскакивает минус или абсолютно левое число, потом вроде как показывает правильно. В одном случае вылечилось затягиванием винтов на задней стенке. Во втором случае ничего не помогло, ни чистка, ни полный разбор.

Как выглядит ошибка? Что пишет на экране?
Батарейку менять пробовали? Выдернуть на час батарейку пробовали?
+
avatar
  • xaTxa
  • 15 августа 2012, 03:22
0
Спасибо за ответ, я уже починил его. Теперь работает отлично!
+
avatar
  • djinn_82
  • 27 октября 2014, 16:38
0
Уж не знаю, где меня обманули, но перейдя по этой, Вашей, ссылке и сделав заказ, получил пластиковый штангель-циркуль (((
+
avatar
0
как раз вчера, на работе, со штангеля отвалилась крышка с разъёма и как оказалось ВООБЩЕ НИ КТО на производстве не знает, что это такой за разъём. А я теперь знаю))))))))))))))))

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