IPB IPB

Здравствуйте, гость ( Вход | Регистрация )

29 страниц V  « < 5 6 7 8 9 > »   
Ответить в данную темуНачать новую тему
> Автономный Контроллер Чпу (stm32f103)
dr_gachet
сообщение 4.4.2013, 7:28
Сообщение #151


Завсегдатай
****

Группа: Пользователи
Сообщений: 100
Регистрация: 16.3.2013
Из: Cheboksary
Пользователь №: 34871



Да забыл передача идет в аскии и XY здесь условны при нажатии на различные кнопки на джойстике выбирается движение по XY или XZ или YZ.
Значения джойстика передаются в значениях от 0 до 255.
Нулевое положение джойстика - СТМ наверно должен принять по значению принимаемому во время перехода в ручной режим, только вот надо помнить что в этот момент джойстик трогать нельзя. Это чтобы не калибровать джойстик.
Перейти в начало страницы
 
+Цитировать сообщение
mm.Mike
сообщение 4.4.2013, 16:45
Сообщение #152


Завсегдатай
****

Группа: Пользователи
Сообщений: 220
Регистрация: 27.5.2012
Пользователь №: 33702



Цитата(dr_gachet @ 4.4.2013, 11:28) *
Да забыл передача идет в аскии и XY здесь условны при нажатии на различные кнопки на джойстике выбирается движение по XY или XZ или YZ.
Значения джойстика передаются в значениях от 0 до 255.
Нулевое положение джойстика - СТМ наверно должен принять по значению принимаемому во время перехода в ручной режим, только вот надо помнить что в этот момент джойстик трогать нельзя. Это чтобы не калибровать джойстик.


Ну со способом подключения джойстиком то все понятно. А вот действия станка по джойстику...
Я никогда раньще, до того как начал сам жделать ЧПУ, ни видел даже станков ЧПУ (именно станков) smile.gif
И как там гоняется джостиком (т.е.) плохо представляю.

А систему управления кнопками сделал так как было когда то в раскройном автомате (стол 20 метров длинной 2.5 шириной) для ткани на швейной фабрике (делал им САПР)..
Идешь рядом с порталом - жмешь кнопку.. (4х4 клавиатура) пока давишь - двигается. отпустил - перестало.
Вот нечто подобное и у себя сделал.

Но резистивный джойстик проще (для повторения другими) на АЦП ножки посадить. Хватит 3-х ног. зачем там еще один проц... не нужен..
АЦП в STM32 прекрасно работает, не отнимая ресурсов через DMA.
Перейти в начало страницы
 
+Цитировать сообщение
Arno
сообщение 4.4.2013, 20:48
Сообщение #153


Технический турист
*

Группа: Пользователи
Сообщений: 17
Регистрация: 24.3.2013
Пользователь №: 34913



Цитата(mm.Mike @ 4.4.2013, 5:02) *
Если вы про ручной режим управления, то..
Даже механические энкодеры купил когда то (такие обычно в регуляторах громкости). Но вот свободных ножек не хватает. Так что цеплять не буду.

Жаль.
Цитата
Ножек и так осталось минимум, а мне еще отический энкодер на ШД по Х цеплять..

Вопрос такой- возможно ли использовать ШД (например тот же NEMA 17) в качестве датчика обратной связи?
Цитата
Обхожусь клавитатурой и маскимальнрой скоростью перемещения/позиционирования вручную в 600 мм/мин. Настроенно (частота опроса клавитатуры) так, что при зажатой кнопке (6 кнопок на 3 координаты) - непрерывное перемещение по 1 мм за опрос. Отпускаещь кнопку - тут же останов.
Как ни странно, при таком останове (не плавном фактически) даже коордитата не сбивается.
Перемещение фиксированное на одно нажатие - шагами по 1мм (максимум) с возможность изменнить шаг на мешьший.

У меня примерно такое было на ГФ2171, не сказал бы что удобно но приходилось работать.
Цитата
Мне показалось это довольно удобно для позиционирования в 0 заготовки. Маховичками/джостиками наверное удобнее гонять по большому полю. Но для меня не актуально.

Маховичком удобнее работать при любом размере поля. Кроме привязки к заготовке можно просто фрезировать хоть по разметке хоть по координатам.
Перейти в начало страницы
 
+Цитировать сообщение
dr_gachet
сообщение 4.4.2013, 23:25
Сообщение #154


Завсегдатай
****

Группа: Пользователи
Сообщений: 100
Регистрация: 16.3.2013
Из: Cheboksary
Пользователь №: 34871



Начнем по порядку
Цитата
Ну со способом подключения джойстиком то все понятно. А вот действия станка по джойстику...

Во первых в типовом джойстике две резисторные оси. А потому одновременно рулим только двумя координатами XY, XZ, YZ ну и так далее если больше(переключение между управляемыми координатами кнопкой). Что в принципе не исключает использовать еще один резистор как в компьютерном джойстике или еще один двухосевой джойстик. Но мне кажется это избыточно.
Далее алгоритм работы такой:
При переключении в режим ручного управления контроллер станка в течении нескольких посылок через уарт или АДС - запоминает значения считываемые с резисторов и далее считает это значение за нулевое. Все что больше значит надо задать больше скорость в плюс по данной координате, если меньше то в минус. Больше разница больше скорость. И это хотя бы для двух координат одновременно.
Цитата
Я никогда раньще, до того как начал сам жделать ЧПУ, ни видел даже станков ЧПУ

Для сведения - В больших станках как было сказано на несколько постов выше действительно используется штурвал или маховичок или handwheel толко он выдает не скорость,а перемещение к примеру один оборот равен 1 мм. Меньшие перемещения выставляются по лимбу на нем. В общем полный аналог ручек перемещения координат в ручных станках. А также для длинных перемешений его можно крутануть и он по инерции будет крутится какое-то время - поэтому маховичком называют иногда.
Только когда задавался вопрос
Цитата
Вопрос - процентовку подачи сделать как нибудь можете? Электронный штурвал (маховичок)?

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

Всеже думаю что так лучше и попробую это обосновать.
1. Дополнительный проц нужен для того чтобы вынести управление хотя-бы на один метр от контроллера (тут должно быть нудное рассуждение о помехах в аналоговых линиях).
2. Дополнительный проц нужен для того чтобы можно было при желании вообще развязать пульт с станком (типа пустить ттл_уарт через блуту или зигбее или че еще придумается).
3. Если скажем протокол обмена организовать типа Advantech-adam_овского протокола по RS-485/422 то появится возможность как снимать информацию с неограниченного кол-ва датчиков так и рулить еще много чем включая скажем инверторы для управления шпинделем.
4. Можно передавать не только число считанное с резистора, но и готовые гкоды что позволит подключать и резисторы и маховички (то-есть ваши энкодеры). Только надо бы чтобы перемещения отрабатывались хоты бы не дольше 1/10 времени реакции оператора (человека).
5. Ну там остальные бла-бла-бла.
6. АДЦ лучше оставить - вдруг когда скажем сельсины захочется повесить :-)
Да и затраты на мегу8 фигня. цена 60р. Время на пайку ну час на монтажке - проводочками.
Если автору темы в лом паять готов запрезентовать готовую схемку только без корпуса (даже грешным делом посмотрел сколько это стоит у ПР и фиганулся у них отправить такую хрень в Австралию ровно в десять раз дешевле чем в Новосибирск).
Вот только протокол надо обсудить(может я что не додумал - ткните носом).
Перейти в начало страницы
 
+Цитировать сообщение
dr_gachet
сообщение 4.4.2013, 23:45
Сообщение #155


Завсегдатай
****

Группа: Пользователи
Сообщений: 100
Регистрация: 16.3.2013
Из: Cheboksary
Пользователь №: 34871



Цитата
Вопрос такой- возможно ли использовать ШД (например тот же NEMA 17) в качестве датчика обратной связи?

Проходили - возможно! Только придется еще усилители, компараторы добавлять и это ради 200 тиков на оборот. От мышки датчик может дать больше и без дополнительных усилителей. Или уж тогда сельсин лучше :-)
Перейти в начало страницы
 
+Цитировать сообщение
mm.Mike
сообщение 5.4.2013, 3:49
Сообщение #156


Завсегдатай
****

Группа: Пользователи
Сообщений: 220
Регистрация: 27.5.2012
Пользователь №: 33702



Цитата(Arno @ 5.4.2013, 0:48) *
Вопрос такой- возможно ли использовать ШД (например тот же NEMA 17) в качестве датчика обратной связи?


До того как наткнулся на е-бей на относительно дешовые энкодеры, идеально подходящие под вал моих ШД, думал и над этим.
Долго копал эту тему в Интернете и не нашел ни одного более менее достоверного упоминания об использовании обратного сигнала от того же силового ШД для определенияя "случился шаг или нет". Одни теоретические измышления по этому поводу.

А подключение еще одного ШД в пассивном режиме, на мой взгляд, просто не опрадано. Цена с оптическим энкодером практически одинакова. А лишний элемент увеличивающий инерционность и механическое сопростивление вращению...
Поскольку уже заказал нужно количество энкодеров, то сдаю ссылку smile.gif
http://www.ebay.com/itm/Agilent-QEDS-5887-...=item1c2052f589

Именно его я поставил. Встал идеально.

Сообщение отредактировал mm.Mike - 5.4.2013, 3:51
Перейти в начало страницы
 
+Цитировать сообщение
mm.Mike
сообщение 5.4.2013, 4:15
Сообщение #157


Завсегдатай
****

Группа: Пользователи
Сообщений: 220
Регистрация: 27.5.2012
Пользователь №: 33702



Цитата(dr_gachet @ 5.4.2013, 3:25) *
...А потому одновременно рулим только двумя координатами XY, XZ, YZ ну и так далее если больше(переключение между управляемыми координатами кнопкой)....Больше разница больше скорость. И это хотя бы для двух координат одновременно.


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

Хотя.. как то увидев как народ вертолетики гоняет. Загорелся и купил модель пилотажного вертолет. И только после первой попытки взлететь понял почему продовец так ехидно улыбался и настойчиво давал визитку мастерской по ремонту smile.gif
Выглядит все просто и красиво. А мне вертолета хватило на один полет.. а как просто - два джойстика.. газ, угол атаки.. 7 тыс. руб. за опыт smile.gif
Надеюсь со станком+джойстик проще. Фреза всего 100 руб стоит.. biggrin.gif

Цитата(dr_gachet @ 5.4.2013, 3:25) *
Для сведения - В больших станках как было сказано на несколько постов выше действительно используется штурвал или маховичок или handwheel толко он выдает не скорость,а перемещение к примеру один оборот равен 1 мм. Меньшие перемещения выставляются по лимбу на нем. В общем полный аналог ручек перемещения координат в ручных станках. А также для длинных перемешений его можно крутануть и он по инерции будет крутится какое-то время - поэтому маховичком называют иногда.

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

Цитата(dr_gachet @ 5.4.2013, 3:25) *
наверно имелось ввиду что им устанавливать и ограничение скорости подачи до определенного процента.
Наверно полезная функция чтобы гкоды не редактировать, но думаю для гаражного станка не актуальная ем более что в данном случае есть связь с компьютером по усб и можно всегда гкода отредактировать.

Гадать не буду. Но мысль об коррекции скорости из g-code в процессе его выполнения.. мне кажется несколько дикой :)

Цитата(dr_gachet @ 5.4.2013, 3:25) *
Всеже думаю что так лучше и попробую это обосновать.
1. Дополнительный проц нужен для того чтобы вынести управление хотя-бы на один метр от контроллера (тут должно быть нудное рассуждение о помехах в аналоговых линиях).
..


Согласен. Достаточно и этого пункта :) Косность мышления и эгоцентризм у меня biggrin.gif
Думаю только о своем станке.. Мне там вынесенный пультик в принципе не нужен. Некуда выносить их звукоизолирующего кожуха.

Перейти в начало страницы
 
+Цитировать сообщение
mm.Mike
сообщение 5.4.2013, 4:45
Сообщение #158


Завсегдатай
****

Группа: Пользователи
Сообщений: 220
Регистрация: 27.5.2012
Пользователь №: 33702



Цитата(Arno @ 5.4.2013, 0:48) *
Маховичком удобнее работать при любом размере поля. Кроме привязки к заготовке можно просто фрезировать хоть по разметке хоть по координатам.


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

Если нужна точноя работа с лимбом, то нужно:
1. Подавление дребезга, что бы не было пропусков "щелчков" или наоборот лишних щелчков в пограничном состоянии - это обязательно аппаратный канал таймера квадратичного демодулятора. А это означает - определенные ножки проца, ну и таймер задействовать. Их много в STM32, но не так что бы очень smile.gif
2. Оптический энкодер с хорошим разрешением. Механический - только громкость в магнитоле хорош регулировать - разрешение никакое.

Как то сложновато получается для домашнего ЧПУ. А удобства не принципиально лучше. Это же не 8 часов в день со сменой заготовки каждые 5 минут smile.gif

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

Да проще и безопаснее быстренько файл с g-кодом набросать, залить через USB прямо на ходу и запустить.
Перейти в начало страницы
 
+Цитировать сообщение
dr_gachet
сообщение 5.4.2013, 8:05
Сообщение #159


Завсегдатай
****

Группа: Пользователи
Сообщений: 100
Регистрация: 16.3.2013
Из: Cheboksary
Пользователь №: 34871



Цитата
А с электронным (энкодер с лимбом) - у него же обратную связь не сделаешь. риск загнать не туда по.
Если нужна точноя работа с лимбом, то нужно:
1. Подавление дребезга,
2. Оптический энкодер с хорошим разрешением.

Вообще у ручных станков эти ручки хорошо разбалтываются и люфт иногда до четверти оборота доходит и ничего работают на производстве и товар гонят тоннами.
В хорошем оптическом енкодере нет дребезга там компараторы с эффектом тригера шмидта стоят. Если конечно только не люфтит что-то в механнике.
И хорошего разрешения для штурвала не надо все равно рука оператора не позволит точнее чем полградуса спозиционировать, да и можно иметь кнопочку типа Х10.
Загнать не туда с кнопками или джойстиком проще.
Обратная связь ненужна если станок нормально отрабатывает программу то почему он не может нормально отработать кадр гкодов поступившй из уарта типа
G91 G01 X5 Y20 Z10 F200
И вообще вместо штурвала хорошо подойдет колесико от компьютерной мышки - там и енкодер есть и разрешение адаптировано под возможности человеческой руки. Только надо массу увеличить чтоб крутилось по инерции.

А главная плохая новость что контроллеры у китайцев подорожали хотел еще пару заказать глядь, а они уже около 34 баксов ломят. Зато правда появились другие около 28 только вот экранчик у них маленький 2.8', но проц VET.

Сообщение отредактировал dr_gachet - 5.4.2013, 8:16
Перейти в начало страницы
 
+Цитировать сообщение
mm.Mike
сообщение 5.4.2013, 17:06
Сообщение #160


Завсегдатай
****

Группа: Пользователи
Сообщений: 220
Регистрация: 27.5.2012
Пользователь №: 33702



Цитата(dr_gachet @ 5.4.2013, 12:05) *
Вообще у ручных станков эти ручки хорошо разбалтываются и люфт иногда до четверти оборота доходит и ничего работают на производстве и товар гонят тоннами.

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

Цитата(dr_gachet @ 5.4.2013, 12:05) *
В хорошем оптическом енкодере нет дребезга там компараторы с эффектом тригера шмидта стоят. Если конечно только не люфтит что-то в механнике.


Не тот тип дребезга что в механике. Не дребезг контактов. Когда экодер подключал - пришлось изучить теорию вопроса.
Теорию пересказывать не буду. Если интересно - гугл раскажет ab.gif

Оказалось интересно на практике поэксперементировать и понять - зачем нужен аппаратный квадратурный декодер для оптического энкодера. Можете поверить.. нужен именно аппаратный! Век живи.. век учись. biggrin.gif

Имено на практике убедился, что с софтверными прерываниями STM32 реализация квадратурного декодера для 512/оборот просто не справляется! Простой щелчок ногтем по корпусу энкодера генерит иногда пачку переходов 0/1 в каналах A или/и B с частотой 200КГц.

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


Перейти в начало страницы
 
+Цитировать сообщение
Arno
сообщение 5.4.2013, 18:23
Сообщение #161


Технический турист
*

Группа: Пользователи
Сообщений: 17
Регистрация: 24.3.2013
Пользователь №: 34913



Вопрос - процентовку подачи сделать как нибудь можете?
Цитата(dr_gachet @ 5.4.2013, 0:25) *
наверно имелось ввиду что им устанавливать и ограничение скорости подачи до определенного процента.
Наверно полезная функция чтобы гкоды не редактировать, но думаю для гаражного станка не актуальная ем более что в данном случае есть связь с компьютером по усб и можно всегда гкода отредактировать.

Процентовка подачи = на пульте управления отдельный регулятор (переменное сопротивление). От 0% до 200% например. При выполнении программы можно регулировать подачу от 0% (останов) до 200% (в 2 раза больше) от величины заданной в программе. Можно использовать как временный останов в обработке без выхода из программы обработки. Или например "притормаживать" на "неудобных" участках. Или увеличивать подачу, если кажется что например она маловата.

точно так же можно использовать в режиме настройки = например постоянно забита одна скорость подачи (1000 мм/мин например) и регулятором просто процентуем эту подачу.

Сообщение отредактировал Arno - 5.4.2013, 18:28
Перейти в начало страницы
 
+Цитировать сообщение
Arno
сообщение 5.4.2013, 18:53
Сообщение #162


Технический турист
*

Группа: Пользователи
Сообщений: 17
Регистрация: 24.3.2013
Пользователь №: 34913



Цитата(mm.Mike @ 5.4.2013, 5:45) *
С механическим штурвальчиком - на оси понятно.
А с электронным (энкодер с лимбом) - у него же обратную связь не сделаешь. риск загнать не туда по.

Если нужна точноя работа с лимбом, то нужно:
1. Подавление дребезга, что бы не было пропусков "щелчков" или наоборот лишних щелчков в пограничном состоянии - это обязательно аппаратный канал таймера квадратичного демодулятора. А это означает - определенные ножки проца, ну и таймер задействовать. Их много в STM32, но не так что бы очень smile.gif
2. Оптический энкодер с хорошим разрешением. Механический - только громкость в магнитоле хорош регулировать - разрешение никакое.

Как то сложновато получается для домашнего ЧПУ. А удобства не принципиально лучше. Это же не 8 часов в день со сменой заготовки каждые 5 минут smile.gif

Разметки лимба не требуется, точной работы от маховичка не требуется. В ручном режиме на экран должны выводиться текущие координаты - вот и вся обратная связь.
Цитата
Фрезеровкой по разметке, вручную я пытался пользоватся. Чревато. Стоит зазеваться и задержать фрезу в материале на пару секунд - подгорает фреза махом. В той же фанере, например.
Да проще и безопаснее быстренько файл с g-кодом набросать, залить через USB прямо на ходу и запустить.

Файлик можно прямо и на пульте набрать.
Перейти в начало страницы
 
+Цитировать сообщение
mm.Mike
сообщение 5.4.2013, 19:06
Сообщение #163


Завсегдатай
****

Группа: Пользователи
Сообщений: 220
Регистрация: 27.5.2012
Пользователь №: 33702



Цитата(Arno @ 5.4.2013, 22:23) *
Вопрос - процентовку подачи сделать как нибудь можете?

Процентовка подачи = на пульте управления отдельный регулятор (переменное сопротивление). От 0% до 200% например. При выполнении программы можно регулировать подачу от 0% (останов) до 200% (в 2 раза больше) от величины заданной в программе. Можно использовать как временный останов в обработке без выхода из программы обработки. Или например "притормаживать" на "неудобных" участках. Или увеличивать подачу, если кажется что например она маловата.

точно так же можно использовать в режиме настройки = например постоянно забита одна скорость подачи (1000 мм/мин например) и регулятором просто процентуем эту подачу.


Сделать можно все. Вопрос только в том, что лично для себя (уж не обижайтесь) я необходимости в такой фиче ну не вижу.
А просто так делать.. не греет меня эта идея.
У меня своих идей хватает чем занятся минимум на ближайший месяц :)

Но чисто программно, это займет строчек 20-30 кода, из которых половина - стандартная инициализация АЦП с DMA (в циклический буфер для усреднения скажем за 100msec). А остальное - расчет "процента" исходя из усредненнго значения АЦП по прерыванию от DMA, вывод на экран текущего процента и умножение на него частоты по каждой оси внутри генератора шагов.

Но всяко это дольше делать/отлаживать чем время на написание этого ответа. biggrin.gif
В основном - отлаживать: подключить /закрепить резистор.. прикинуть.. подобрать коэф. и пр.

Кто захочет cделать и плохо знает STM32 - могу подбросить кусочек исходника работы с АЦП (делал работу с АЦП в другом проекте) и сказать в каком месте файла steps.c нужно кооректировать скорость в генераторе шагов.
Хотя и примеров c АЦП STM32 полно.. гугл знает :) съем значения с резистора - типично типичнейшая задача.

-----------------------------------
Кстати, временный останов/продолжить у меня и сейчас есть. Фича полезная. Пару раз пригодилась.
Перейти в начало страницы
 
+Цитировать сообщение
mm.Mike
сообщение 5.4.2013, 19:09
Сообщение #164


Завсегдатай
****

Группа: Пользователи
Сообщений: 220
Регистрация: 27.5.2012
Пользователь №: 33702



Цитата(Arno @ 5.4.2013, 22:53) *
Файлик можно прямо и на пульте набрать.


Это уже не пульт/контроллер получается. Если на нем можно на полноценной клавитауре набрать г-код.
Перейти в начало страницы
 
+Цитировать сообщение
dr_gachet
сообщение 5.4.2013, 19:33
Сообщение #165


Завсегдатай
****

Группа: Пользователи
Сообщений: 100
Регистрация: 16.3.2013
Из: Cheboksary
Пользователь №: 34871



Цитата
Имено на практике убедился, что с софтверными прерываниями STM32 реализация квадратурного декодера для 512/оборот просто не справляется! Простой щелчок ногтем по корпусу энкодера генерит иногда пачку переходов 0/1 в каналах A или/и B с частотой 200КГц.

Наверно понял в чем ваша беда - в нормальных энкодерах кроме приемника оптического (фотодиод) обычно ставят схемку где каждый сигнал проходит через тригер шмитта обычно выполняемый на аналоговом компараторе или операционнике охваченном положительной обратной связью. Сигнал с фотодиода не сразу переходит из 1 в 0 или наоборот, а с растянутыми фронтами и за счет ПОС компаратор переключается в 1 при одном напряжении а чтобы переключится в 0 нужно чтобы напряжение опустилось значительно ниже скажем переходим в 1 при Uвх=4.2 вольта а переходим в 0 при Uвх=1.8 вольт это для диапазона TTL то есть 5 вольт. Посему чтобы снять сигнал с вывода энкодера он должен провернуться в обратную сторону на довольно большое расстояние. И тут уже он никогда не выдаст пачку импульсов от удара по нему пальцем. А вот если выход фотодиода запипирить на ттл вход даже через усилитель то и получится ровно то что у вас есть. Проверено пользовали и на 1024 и на 2048 все чистенько и гладенько.
А в том энкодере что вы выше показывали сдается мне что такой схемы обработки нет судя по его внешнему виду да и цена к таким мыслям распологает. А вообще делал в свое время энкодеры на мышиных оптопарах, но с компараторами на 1024 тика трафарет печатал на лазерном принтере на прозрачной пленке, вполне себе хорошо работает и работает уже лет пять в при трехсменном графике.
Так что ставьте компаратор и будет вам счастье.
А насчет
Цитата
зачем нужен аппаратный квадратурный декодер
так наличие аппаратного счетчик мы тридцать лет назад проходили (тогда просто по другому не было) :-)
Перейти в начало страницы
 
+Цитировать сообщение
Oxford
сообщение 5.4.2013, 20:18
Сообщение #166


Прописанный
*****

Группа: Пользователи
Сообщений: 638
Регистрация: 19.2.2011
Из: Киселевск
Пользователь №: 32173



У STM на входе стоит триггер шмидта, вопрос включен ли он, и подтяжка куда. Без подтяжки хаос будет всякий. Я тупо палец ложу на микросхему и он срабатывает, если без подтяжки.))

Сообщение отредактировал Oxford - 5.4.2013, 20:20


--------------------
Улыбаемся и машем!
Перейти в начало страницы
 
+Цитировать сообщение
dr_gachet
сообщение 5.4.2013, 20:35
Сообщение #167


Завсегдатай
****

Группа: Пользователи
Сообщений: 100
Регистрация: 16.3.2013
Из: Cheboksary
Пользователь №: 34871



Цитата
У STM на входе стоит триггер шмидта, вопрос включен ли он, и подтяжка куда.

Тут еще дело не только в тригере шмитта у аналогового компаратора и быстродействие слабое и вышеозвученные 200 кгц практически предел работы обычного компаратора типа LM339 и это тут помогает, а вот тригер шмитта на входе СТМ думаю и 50 мгц запросто пропустит. Хотя думаю если емкости паралельно входу повесить может это и поможет.

Сообщение отредактировал dr_gachet - 5.4.2013, 20:37
Перейти в начало страницы
 
+Цитировать сообщение
Oxford
сообщение 5.4.2013, 20:44
Сообщение #168


Прописанный
*****

Группа: Пользователи
Сообщений: 638
Регистрация: 19.2.2011
Из: Киселевск
Пользователь №: 32173



Цитата(dr_gachet @ 6.4.2013, 0:35) *
Тут еще дело не только в тригере шмитта у аналогового компаратора и быстродействие слабое и вышеозвученные 200 кгц практически предел работы обычного компаратора типа LM339 и это тут помогает, а вот тригер шмитта на входе СТМ думаю и 50 мгц запросто пропустит. Хотя думаю если емкости паралельно входу повесить может это и поможет.

Ну, фильтр повесить срезать сколько надо и все.


--------------------
Улыбаемся и машем!
Перейти в начало страницы
 
+Цитировать сообщение
mm.Mike
сообщение 5.4.2013, 21:05
Сообщение #169


Завсегдатай
****

Группа: Пользователи
Сообщений: 220
Регистрация: 27.5.2012
Пользователь №: 33702



Цитата(dr_gachet @ 6.4.2013, 0:35) *
Тут еще дело не только в тригере шмитта у аналогового компаратора и быстродействие слабое и вышеозвученные 200 кгц практически предел работы обычного компаратора типа LM339 и это тут помогает, а вот тригер шмитта на входе СТМ думаю и 50 мгц запросто пропустит. Хотя думаю если емкости паралельно входу повесить может это и поможет.


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

Rise Time tr - 200 ns
Fall Time tf - 50 ns
RL = 11 k pull-up

Но вот частота дерганья при простом шелчке ногтем уходит в пике до 200кГц. Сам проверял - делал подсчет в программе количества по счетчику.
Какой там компаратор стоит в экодере типа HEDS9xxx - фиг знает. в доке про это не сказано. Может вообще все на одном спец. кристале. Там схема в доке скорее структурная, чем принципиальная.

Не даром в таймерах STM32 есть режим, когда на два входа таймера подаются каналы A + B энкодера. А в регистре таймера - фактическое значения, уменьшающееся при счете назад экодера и увел. при счете вперед.
Весь подсчет делается апаратно и частота дребезга не имеет значения (<50 МГц)

TIM_EncoderInterfaceConfig(TIM8, TIM_EncoderMode_TI12, TIM_ICPolarity_Rising, TIM_ICPolarity_Rising);

Сообщение отредактировал mm.Mike - 5.4.2013, 21:29
Перейти в начало страницы
 
+Цитировать сообщение
mm.Mike
сообщение 5.4.2013, 21:08
Сообщение #170


Завсегдатай
****

Группа: Пользователи
Сообщений: 220
Регистрация: 27.5.2012
Пользователь №: 33702



Цитата(Oxford @ 6.4.2013, 0:44) *
Ну, фильтр повесить срезать сколько надо и все.


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

Сообщение отредактировал mm.Mike - 5.4.2013, 21:34
Перейти в начало страницы
 
+Цитировать сообщение
mm.Mike
сообщение 5.4.2013, 21:15
Сообщение #171


Завсегдатай
****

Группа: Пользователи
Сообщений: 220
Регистрация: 27.5.2012
Пользователь №: 33702



Цитата(dr_gachet @ 5.4.2013, 23:33) *
Наверно понял в чем ваша беда - в нормальных энкодерах кроме приемника оптического (фотодиод) обычно ставят схемку где каждый сигнал проходит через тригер шмитта обычно выполняемый на аналоговом компараторе или операционнике охваченном положительной обратной связью. Сигнал с фотодиода не сразу


Энкодер правильный. с компаратарми и прямоугольными сигналами на выходе.
А дребезг оптического энкодера - это классическое поведение. И вместо того, что бы разобратся с теорией и способами обработки данных с энкодеров, большинство в Интернете начинает предлагать "простые" и "очевидные" решения с фильтрами и пр..
К стыду своему скажу, что такие "простые решения" и мне в первую очередь приходили в голову :) Несколько часов потратил на эту, как мне показалось "мистику". Даже написал сообщение эмоциональное :)

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

Сообщение отредактировал mm.Mike - 5.4.2013, 21:33
Перейти в начало страницы
 
+Цитировать сообщение
Arno
сообщение 5.4.2013, 21:51
Сообщение #172


Технический турист
*

Группа: Пользователи
Сообщений: 17
Регистрация: 24.3.2013
Пользователь №: 34913



Файлик можно прямо и на пульте набрать.
Цитата(mm.Mike @ 5.4.2013, 20:09) *
Это уже не пульт/контроллер получается. Если на нем можно на полноценной клавитауре набрать г-код.

Зачем на полноценной? Цифры "0-9", знаки-" +-,", "сброс", "ввод", буквы-"X Y Z I J K G S F M" и того 25. Можно еще добавить кнопки переключения между режимами - ну максимум 32 кнопки. Это матрица кнопок 4*8. При использовании кодера декодера будет задействовано всего 5 выводов вместо 7 при прямом подключении к клавиатуре.
Перейти в начало страницы
 
+Цитировать сообщение
dr_gachet
сообщение 5.4.2013, 22:20
Сообщение #173


Завсегдатай
****

Группа: Пользователи
Сообщений: 100
Регистрация: 16.3.2013
Из: Cheboksary
Пользователь №: 34871



Цитата
Энкодер правильный. с компаратарми и прямоугольными сигналами на выходе.
Только ключевое слово было тригер шмитта а посредством чего он реализован компаратора, операционника, или готовый ТТЛовский типа К155ТЛ2/SN7414 это вторично. А голый компаратор на пути от фотодиода до СТМ только ухудшит ситуацию. Тут дело в том что пока начало или конец риски пролетает щель фотодиод открывается постепенно и компаратор который сработал по какому то уровню вполне может вернутся в обратное состояние в силу множества причин начиная от помех и кончая внутренними процессами в полупроводниках как самого компаратора так и фотодиода, а также из за бликов в оптической системе. Вот тут то и спасает тригер шмитта которому когда он захлопнется необходимо приложить существенно большую энергию для переключения (конечно там дело не в энергии - это так для доступности обьяснения).
И ограничение быстродействия тоже имеет весьма важное значение Врядли когда сигнал с энкодера превысит 200 кгц а чаще и 100кгц выше крыши так зачем нужны крутые фронты чтобы создавать лишнии помехи в линиях. Не даром в томже СТМ есть режим ограничения быстродействия выходов - чем круче фронт сигнала тем труднее его пропустить даже через короткий провод (начиная от звона и кончая гонками).
Перейти в начало страницы
 
+Цитировать сообщение
BosniaCNC
сообщение 5.4.2013, 23:08
Сообщение #174


Новичок
**

Группа: Пользователи
Сообщений: 37
Регистрация: 28.11.2008
Пользователь №: 15739



Regards to all !
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Перейти в начало страницы
 
+Цитировать сообщение
mm.Mike
сообщение 6.4.2013, 6:56
Сообщение #175


Завсегдатай
****

Группа: Пользователи
Сообщений: 220
Регистрация: 27.5.2012
Пользователь №: 33702



Цитата(dr_gachet @ 6.4.2013, 2:20) *
Только ключевое слово было тригер шмитта а посредством чего он реализован компаратора, операционника, или готовый ТТЛовский типа К155ТЛ2/SN7414 это вторично.

Я знаю что такое тригер шмидта и зачем он нужен biggrin.gif
Просто возникло предположение (как мне показалось в диталогах), что панаценя - ФНЧ на интегрирующей цепочке.
Это не так.
Перейти в начало страницы
 
+Цитировать сообщение

29 страниц V  « < 5 6 7 8 9 > » 
Ответить в данную темуНачать новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0


Текстовая версия Сейчас: 25.6.2024, 10:02