Перейти к содержанию
    

Кто может разгадать кодировку линейного абсолютного энкодера?

24 минуты назад, Dimidrol сказал:

А если считыватель остановится на половине дырок от одного сегмента, и на половине от другого. Как будете различать? Ведь его размер только чуть-чуть больше этого сегмента. Тут что-то похитрее. Возможно где-то небольшое смещение части дырок присутствует, либо энкодер не абсолютный... Хотелось бы конец ленты посмотреть. 
И да, автор писал, что до 392 м лента может быть. 

Размеры как раз на сегмент. Синхронизирующее отверстие найдется, а кодовые, если с одной стороны не хватает, доберет с другой и инкрементирует/декрементирует.

 

27 минут назад, gte сказал:

А еще гений :biggrin:. При использовании периода в 16 мест и одном синхронизирующем не будет однозначного считывания   при имеющемся датчике. Лента может достигать 392 метра.

PS Прочитайте несколько страниц.

Гений делает просто. 

24 минуты назад, Dimidrol сказал:

И да, автор писал, что до 392 м лента может быть. 

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

Положение с точностью до 3 мм определяется по большим круглым отверстиям. Более точно, по малым. Там считыватели должны быть сдвинуты с шагом на 1 мм, чтобы равномерно заполнить 3 мм. По тому, сколько их сработало и каких, определяется этот мелкий сдвиг. А именно: 000, 001, 011, 111, 110, 100. 6 штук, 0,5 мм точность.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

25 минут назад, ViKo сказал:

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

При  существующем считывателе, в котором 32 светодиода на расстоянии 96 мм, шаге 1 мм, можно иметь 12 значащих бит. Вы обратите внимание, что лента начинается с одного отверстия, а заканчивается (точнее, начинается) лента 15 отверстиями, даже при 10 метрах. Это означает, что где-то в середине ленты есть неиспользуемые биты, так как 15 бит для 10, да и 392 метров избыточны. Вполне логично, что они используются для синхронизации и логично расположить их в центре ленты. Количество синхробит в центре при таком подходе будет зависеть от длины ленты. При 392 метрах их 3, при меньшей длине их будет больше.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 минуты назад, gte сказал:

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

Не видел. Фото есть?

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

6 минут назад, ViKo сказал:

Не видел. Фото есть?

Есть в тексте без фото. Смотрите последнее предложение.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В 09.11.2019 в 00:50, AlexandrY сказал:

Причем чем меньше отверстий на ленты тем больше абсолютное значение считываемой позиции.
Т.е. на самом деле реальное начало ленты идет с отверстиями почти во всех битах т.е. с кода 0xFFFE 

gte, если вы про это, то код не только большими отверстиями определяется. 1 бит за счет двойных считывателей, еще на 6 делится считывателями малых дыр.
В общем, не аргумент. Фото не будет. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

12 минут назад, ViKo сказал:

gte, если вы про это, то код не только большими отверстиями определяется. 1 бит за счет двойных считывателей, еще на 6 делится считывателями малых дыр.
В общем, не аргумент. Фото не будет. 

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

21 минуту назад, ViKo сказал:

Не видел. Фото есть?

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

А теперь представьте такой код 1_2_4_8__16_32_S_S__S_64_128_256__512_1024_2048_S

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

29 минут назад, gte сказал:

Повторяю еще раз. ... Как при длине 10 метров (да и 392м) использовать все значения 15 бит?

Никак. Больше повторять не буду. Их там нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Максимальная длина ленты такого вида 12,288 м.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 час назад, ViKo сказал:

Никак. Больше повторять не буду. Их там нет.

Значащих нет, но с одной стороны ленты закодировано отверстиями 0xFFFE, с другой 0x0001. Длина ленты 10 метров, период изменения кода 96 мм, на фото видно, что в коде есть повторяющееся отверстие + изменяющийся на единицу двоичный код.

13 минут назад, ViKo сказал:

Максимальная длина ленты такого вида 12,288 м.

Я же не сам придумал. Приведите пример кода, который будет неправильно идентифицироваться при кодировке 1_2_4_8__16_32_S_S__S_64_128_256__512_1024_2048_S

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

21 час назад, Plain сказал:
В 09.11.2019 в 11:14, _pv сказал:

оптопар всё-таки 32 и где-то дальше по ленте есть круглые отверстия на пол шага (3мм) смещённые

Вы конечно правы, 5 старших бит обязаны идти со сдвигом 3 мм, иначе на единичном отрезке не засинхронизироваться.

Ещё немного подумал — 5 старших бит не могут быть все со сдвигом на полбита. Наиболее вероятно, что до 7 значащих бит (12 м) лента кодируется одним типом синхронизации (стробом и 8-ю нулями после него), а 392-метровая другим (двумя стробами с шагом 1,5 бита):

 

bad-312.thumb.gif.f3fea16961b4435c9f6a00c25702b93f.gif

 

Также прекрасно видно, почему значащих бит может быть лишь 12 — красный 13-й давал бы синхросбой.

Изменено пользователем Plain

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

6 минут назад, Plain сказал:

Ещё немного подумал — 5 старших бит не могут быть все со сдвигом на полбита. Наиболее вероятно, что до 7 значащих бит (12 м) лента кодируется одним типом синхронизации (стробом и 8-ю нулями после него)

А как объяснить тот факт, что с другого конца ленты длиной 10 метров 15 единиц (отверстий) подряд?

В 07.11.2019 в 18:57, AlexandrY сказал:

Есть такой линейный абсолютный энкодер. Через него движется лента с отверстиями.

Тип ленты и производитель секрет?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

54 минуты назад, gte сказал:

Приведите пример кода, который будет неправильно идентифицироваться при кодировке 1_2_4_8__16_32_S_S__S_64_128_256__512_1024_2048_S 

1_true_S_S__S_false_S_S__S_64_128_256__true_S_false_S 
2 минуты назад, gte сказал:

А как объяснить тот факт, что с другого конца ленты длиной 10 метров 15 единиц (отверстий) подряд?

это фото пока не предъявлено

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

5 минут назад, gte сказал:

Тип ленты и производитель секрет?

https://www.google.com/search?&q=stainless+steel+392+absolute+encoder

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

30 минут назад, Vladivolt сказал:

1_true_S_S__S_false_S_S__S_64_128_256__true_S_false_S 

Очевидно, код соседних участков должен отличаться на единицу. Уточните соседний код.

30 минут назад, Vladivolt сказал:

это фото пока не предъявлено

Это да. Подождем.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 минуты назад, gte сказал:

Очевидно, код соседних участков должен отличаться на единицу. Уточните соседний код.

Это так, но сенсор не видит ни бита соседнего кода, но должен декодировать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...