Если не трудно, поподробнее объясните пожалуйста, что такое интерфейс Step/Dir ?
Я подумал, раз на плате ( последней ) стоит микроконтроллер, значит его можно программировать и он имеет входы, например: для подключения энкодера. Не ?
У Вас же есть UHU. Их заменить хотите? Придется писать алгоритм управления движком на основе ПИД-алгоритма самостоятельно (не факт, что влезет в этот контроллер, нужно же 2-мя движками управлять)
Кроме того, ядро старое (MCS51), 8К памяти, программа уже прошита и наверняка защищена (так что свою программу Вы туда не засунете) Можно, конечно, новый проц воткнуть, благо есть в продаже ... я бы не взялся его программировать. Тут нужно быть гуру программирования, потому что писать нужно будет на чистом "с", а если не влезет, то и на АСМе...
А так, у Вас есть 2 UHU, на которых сделаны 2 сервы, интерфейс у них step-dir (то есть шаг-направление) - как у шаговика с драйвером - управляется легко, нужно всего 2 линии проца.
Вывод - не связывайтесь с этим устройством. Да и выход слабоват.
Нет, я пока хочу понять, что мне нужно, чтобы из станка убрать набор шестерёнок ?
Стало быть, эти платы мне не подходят и нужно брать Arduino 2560 Mega ? 1 штуку ? А у Attyny памяти больше чем у контроллера на последней плате ? Я в них пока ещё не ориентируюсь...
У меня есть 3 корпуса АТМЕГА1284, что в моём случае предпочтительнее, для реализации моей идеи ? Купить Arduino или использовать ATMEGA 1284 ? Чувствую что, мне просто времени не хватит, на освоение этих микроконтроллеров...
Понял. Ну, а что ещё мне нужно купить, для начала работ по внедрению микроконтроллера в токарный станок ? А в соседней теме создал ветку, где попросил у знающих людей помочь, пока тишина. Может быть Вы посмотрите ? Глядишь, что и подскажите ?
Соседняя ветка - это которая типа "ошибочная"? Там ссылки только на контроллеры, и, по большому счету, нет никакой разницы, который применять. Самое главное - это электро-механический привод. Сначала определитесь с сервами и механикой. Управлять оборотами шпинделя можно адуиной и одним оптроном. Определитесь с функциональностью - тогда можно подумать, нужен ли индикатор (ЖКИ), нужен ли тачскрин, или обойдемся кнопками... Только не берите ардуину на 168-м процессоре - может памяти не хватить.
Это макетка. По краям по 2 линии отверстий вдоль края (соединены) - используются для подачи питания, остальные соединены поперек, посередине (по осевой линии) разрыв, чтобы было удобно микросхему втыкать.
Ну дык... определитесь с нуждами то! Нану не стоит брать - у нее нету USB. Выберете шилду с кноками или с кнопками и индикатором, контроллер лучше взять того же форм-фактора - проще соединять - воткнул одно в другое и пользуешься этим бутербродом как одним целым.
По модулям там вполне все расписано, не знаю, что можно подсказать.
Вот, скажем, этого комплекта вполне бы хватило. И бюджетно...
Там торг ещё не закончился... Да расписано то, не понятно. В чём между ними различие ? На фига такое разнообразие ? Видимо есть причина ? А сколько нужно будет подключений для моих нужд ? Этажерка не вносит ограничения ? И, на кой мне, экран ?
Когда они будут у меня на столе, я сам смогу разобраться, что к чему. Но будет жалко, если окажется не то...
С нуждами то, я давно определился. Теперь бы вот, определиться с базой. Я же никогда с ними дела не имел и сразу, с чтения на непонятном языке, трудно решить, что мне лучше подойдёт ?
С нуждами то, я давно определился. Теперь бы вот, определиться с базой. Я же никогда с ними дела не имел и сразу, с чтения на непонятном языке, трудно решить, что мне лучше подойдёт ?
Нужды надо бы подробненько озвучить.
Если экран не нужен, смело берите arduino-mini и, скажем, макетку с проводочками. Ну и кнопки соответственно - в нужном количестве. Можно взять готовую матрицу 4х4.
Попробую ещё раз.
На токарном станке, нужно убрать шестерёнки, для настройки шага резьбы и подачи. Утомительное занятие, каждый раз менять их. Поэтому, нужно будет поставить серводвигатели на винт поперечной подачи и на ходовой винт. И нужно будет засинхронизировать вращение шпинделя с этими винтами. Скажем, для точения конусов и различных видов резьб. Синхронизация, крайне желательна, точная. Для управления моторами винтов приготовлены контроллеры UHU. Со шпинделем, вопрос пока не решён, хочется оставить ручку частоты вращения, на передней панели, а это потянет за собой необходимость изменять частоту вращения в любой момент времени и, соответственно, микроконтроллеру придётся всё это пересчитать и выдать на UHU- контроллеры скорректированный сигнал управления. Вот не знаю, по силам ему такая задача ? На каждом серводвигателе установлены энкодеры. На данный момент, планируется установить на шпиндель диск, с 16 импульсами. Можно поставить и метку, Начало оборота. Ещё, контроллер должен обеспечивать постоянство скорости резания т. е. с изменением диаметра детали, должна меняться и частота вращения шпинделя. Здесь, конечно, допустима некоторая погрешность, прецизионность не обязательна. Ну и, концевые само собой. А электронные линейки, можно завязать для такого дела ? В смысле, по ним чтобы можно было управлять ? Хотя... Вопрос какой- то туманный. Нужно ещё подумать над ним.
Вот исходя из этого, мне нужно выбрать микроконтроллер и обвязку к нему. Есть ещё одна идея, поставить на поворотную ось серво... Она должна только обеспечивать поворот резцедержалки, при обработке сферы. Возможно ли это реализовать на микроконтроллере ? Предвижу утвердительный ответ. А какой именно микроконтроллер нужно выбрать ? И по кнопкам не понял, зачем они ? Я же не буду программировать. Я залью программу и буду ручками- рычагами выбирать нужный режим.
С экраном пока не знаю... Вроде как, планирую сохранить обычное управление, а там экран вроде, как зайцу фонарь сзади. Хотя, если будут идеи, готов их рассмотреть.
Как- то так, думаю...
Нужды, скажем, это "нарезать метрическую резьбу диаметром 10мм шагом 2мм длина 150мм"
Если диаметр, длина и шаг нужно параметрировать - то это отдельная задача, боюсь, тогда нужен дисплейчик.
Что значит синхронизировать? Задавать К передачи? Фазу вращения?
Нужда, скажем, "точить конус морзе №1" - здесь параметры могут быть жесткими... хотя лучше бы при этом менять обороты в зависимости от текущего диаметра.
Иначе говоря, нужно определиться с перечнем процессов и возможностью их параметрирования.
Стоп. При чём здесь длина резьбы ? Я же не говорил что, обработка будет по программе. Я сказал что, коробка будет электронная. Скажем, нужно мне нарезать резьбу М12. Я поставил переключатель на нужное положение, а длину обработаю сам, вручную. Arduino только обеспечивает синхронизацию вращения шпинделя и ходового винта. Как это делалось с шестернями. Для обработки по программе, я включу компьютер и через Mach или другую программу, буду управлять UHU-контроллером. Наверное, минуя Arduino. Хотя, пока сам не знаю, как это будет выглядеть ? То же самое касается и обработки конуса. Скажем МК1. У него угол прописан стандартом и хранится в памяти Arduino. Какой бы диаметр я не поставил, Arduino проточит конус МК1. То, что это может получиться не правильный конус, уже я сам буду контролировать, через диаметр начала или конца. Чтобы получилось по ГОСТу.
С Мач3 такая фишка точно не пройдет :) Сия программа любит "полный контроль", то есть должна управлять всем. Иначе устанешь ей придумывать и подсовывать G-коды :)
А вот контроллер может. И мы уже имеем :
нужда 1: обеспечить синхронизацию продольной подачи со шнинделем для (какого?) количества заданных К. А поперечная подача при этом ручная? Проход1?
нужда 2: обеспечить точение конуса от текущего диаметра под (каким?) количеством заданных углов. Используются продольная и поперечная подачи. Коэффициент продольной подачи один?
Я правильно понял? Это все? Или еще что-нибудь нужно? А данные с переключателя для резьбы для контроллера чем снимать будем?
А дисплейчик мог бы отображать шаг подачи и угол :)
При нарезании резьбы, я могу поперечную подачу и обратный ход, сам прогнать. Контроллер работает только во время движения резца вдоль участка нарезания резьбы, до тех пор пока я его не остановлю, включив Реверс и отведя резец. А может, действительно, поставить экран и тогда можно задать начало и конец резьбы, скажем в глухом отверстии. Идея заманчивая, а как реализуема ? Не слишком ли много задач для контроллера ?
Количество проходов так же, я сам выбираю.
Количество конусов, я предполагал записать стандартные, а теперь, в связи с идеей экрана, не знаю...
Я не знаю возможностей Arduino и поэтому мне трудно что- либо решить.
Если бы вопрос был в приборах или регуляторах, проблем нет. Там я всё знаю и выберу самый оптимальный вариант. А микроконтроллеры я никогда не юзал. Если у Вас есть какие- то соображения в этом плане, выкладывайте. Обсудим.
По поводу, чем данные с переключателей снимать будем ? А что для этого есть ? Программные решения или аппаратные имеются ?
Если я правильно понимаю, вычислительные возможности у Arduino одинаковые. Разные только обьёмы памяти и количество входов- выходов ? Я правильно понял ?
Да, поняли правильно. Чем больше памяти, тем больше логики можно запихнуть. Если Вы в контроллерах не разбираетесь, то здесь мы поможем. Нужно плясать от задач. Сначала все пишется по максимуму, потом оценивается, что нужно для выполнения, неукладывающиеся в возможности задачи вычеркиваются или подбирается более мощный контроллер.
По поводу снятия данных с переключателя - не могу ничего сказать, потому что не знаю конструкции переключателя. Если переключатель механический, то возможны варианты:
1. набор концевиков и кулачек на оси.
2. переменный резистор на оси переключателя.
3. угловой энкодер на оси переключателя
Первый вариант заводится на соответствующее количество дискретных входов, или через чепочку резисторов на аналоговый вход, второй - на аналоговый вход, третий - на дискретные входы (количество зависит от энкодера). Я бы выбрал второй из-за простоты реализации.
Один из возможных кандидатов на роль переключателя http://www.ebay.de/itm/Lorlin-Drehschalter-1-x-12-Stellungen-CK-1049-Print-038455-/150838824701?_trksid=p4340.m1850&_trkparms=aid%3D222001%26algo%3DSIC.CURRENT%26ao%3D1%26asc%3D11%
26meid%3D691687242036660910%26pid%3D100011%26prg%3D1005%26rk%3D1%26#ht_500wt_1180
Энкодер наверное не подойдёт, после снятия питания, его положение, после нового включения будет непредсказуемым... Или предсказуемо ? Возможно, можно будет сделать переключатели по декадно, чтобы можно было выбирать шаг с точностью до второго знака после запятой. Т.е. на случай если понадобится нарезать резьбу с нестандартным шагом. Другими словами, взглянув на положение ручек, мы узнаем какой шаг или какая подача в данный момент установлены.
Если ставить дисплей то, тогда можно поставить энкодер и уже на дисплее увидеть величину шага и вид резьбы или подачу. Правда, я пока не представляю, как и сколько информации, можно разместить на экране. Возможно придётся поставить экран от автомобильных видеоплееров, с тачпадом ?
А вот что касается написания, тут я пока, совершенно ничего не могу обсуждать... Ибо необучен.
Переключатель хороший. То есть переключатель будет не штатный, а тот, который Вы поставите. Тогда подойдет вариант с резисторами и аналоговым входом. 2 переключателя - 2 входа.
Непонятна фраза "А вот что касается написания, тут я пока, совершенно ничего не могу обсуждать... Ибо необучен." Вас же не программу просят писать, а возможно подробнее описать функциональность. Грамотно сформулированное задание - залог нужного результата.
Программу написать поможем. Я поддержу, я как раз порограммист с уклоном в автоматизацию. И схему подключений нарисую.
Да, именно это я и имел в виду, программу.
Штатный переключатель, как таковой, не удовлетворяет условиям поставленной задачи, там можно выбрать только три параметра: шага или подачи. И второй переключатель, направление, на три положения: к патрону, нейтраль и от патрона. Всё. Как видим, не густо. Поэтому вместо них я и хочу поставить электрические переключатели, правда, пока не знаю, есть ли проблема с дребезгом контактов и сопротивлением контактов ? Думаю что это решается программным путём но, не понимаю, для контроллера это не сильная дополнительная нагрузка ?
Ещё вот что хочу спросить, не могли бы Вы предварительно прикинуть, достаточно ли у микроконтроллера ресурсов чтобы обрабатывать такой поток информации ? Скажем, резьбу нарезаем на частоте вращения шпинделя, скажем, 100 оборотров в минуту. Шаг резьбы выберем самый трудный, в плане количества импульсов с энкодеров, 3 мм. И вот теперь, предположим что, я изменил частоту вращения шпинделя, ручкой на передней панели. Скажем, поднял до 120 оборотов в минуту. Какова будет погрешность в шаге резьбы, после обработки этого изменения, контроллером ? Я понятно выражаюсь ? Может я, что- то не так сформулировал ? В общем, хватит ли быстродействия Arduino, для удержания заданной скорости резания при изменениях нагрузки на резце ( скажем, обрабатывается с ударной нагрузкой, типа зубчатого колеса или гладкий цилиндр ) и изменении частоты вращения, ручкой на передней панели ? Или, если подойти с другой стороны, какое количество импульсов с экодера, будет оптимальным, для решения нашей задачи ?
Кроме 100 оборотов в минуту (это примерно полтора в секунду) нужно знать коэффициент сервы на продольной подаче, то есть сколько шагов на мм. Предположим, 200. Тогда за секунду контроллер выдаст 200х3х1.5=900 импульсов. Это очень простая задача, даже с синхронизацией. Ардуино может и на порядок быстрее :)
Дребезг контактов убирается программно (а на аналоговом входе можно и электронно), сопротивление контактов роли не играют, это омы супротив килоомной обвязки.
Погрешность в шаге резьбы может появиться только во время увеличения (шаг будет запаздывать чуть-чуть), но после стабилизации оборотов он встанет на свое место.
У меня есть небольшой выбор энкодеров, от 200 импульсов/об до 1000имп/об. Шаг ходового винта 3мм, поперечной подачи 2мм.
У меня тут мысль мелькнула, не столкнёмся ли мы, или я, с проблемой кратности, при выборе шага резьбы ? В смысле, не возникнет такая ситуация что, желаемая резьба не укладывается в систему счёта микроконтроллера. Не знаю как это правильно объяснить... Ну, например, шаг резьбы 1 мм микроконтроллер сможет обсчитать без остатка, а для шага скажем 0,3 мм он обсчитает с остатком и придётся либо округлять, либо брать ближайшее число, что в итоге даст не точно 0,3мм, а скажем 0,29мм. Как то так вот. Я просто не знаю какие там частоты, какие делители и прочие премудрости... Те же количества импульсов с энкодеров, не всегда укладываются кратно в таблицу расчётов. Это как то поддаётся математическому расчёту ? А то я замыслил поставить декадные переключатели, например: 0,10-0,11-0,12-0,13-0,14-0,15мм и т.д. для шага нарезаемой резьбы... Или, мне нужно искать закатку ?
Берите последний или предпоследний. Я бы предпочел предпоследний, потому что для отображения инфы 2-х строк вполне достаточно, а кнопочки не помешають :)
По поводу шагов. Контролле оперирует не столько их количеством, сколько интервалами между ними, а они могут быть дробными. На 3 мм 200 шагов мало, нужно не менее 200 шагов на 1 мм, то есть 1000 шагов на 3 мм - то, что надо.
16 символов будет достаточно для моих целей ? Я почему то думал что, 20 лучше. Опять же, 4 строки... Плохо, когда не знаешь.
А вот по поводу шага теперь я в непонятке. Почему Вы считаете 200 импульсов на 3 мм ? Я не планировал ставить движок прямо на ходовой винт. Я планировал как минимум зубчатый ремень и колёса с соотношением 3:1 То есть на 3мм двигатель сделает три оборота т.е количество импульсов будет 600. А если энкодер выбрать 512 имп/об то, получится 1536 имп на 3 мм. Я об этом рассуждаю ? Или не о том ?
Ну, Вы же и не говорили, что Не будете ставить редуктор... И не указали, куда будете ставить энкодер, опять же. Если на вал сервы, то одно, если на вал привода - другое. Из Вас прям информацию клещами приходится тянуть :)))
В результате нужно получить не менее 300 импульсов на 1 мм.
А 2х16 - это вполне себе. Я обхожусь 2х8. Правда, приходится сильно слова сокращать, но можно ведь и бегущую строку сделать. Собственно, Вам виднее. Можно и побольше взять, и клаву отдельную... В конце концов, в МЕГЕ можно "черта лысого реализовать" :)
На каждом серводвигателе установлены энкодеры. На данный момент, планируется установить на шпиндель диск, с 16 импульсами. Можно поставить и метку, Начало оборота.
Ведь ходовой винт крутится довольно медленно и нет смысла заставлять двигатель крутиться с такой же скоростью. Или есть ?
Что касается дисплея. Ну никогда я не работал с МК, откуда мне знать, что и как он выводит ? И уж тем более, какую информацию можно получить с бегущей строки, во время работы ? В мноём представлении, дисплей выглядел гораздо крупнее и информативнее, чем маленкий экранчик с резко ограниченными возможностями. Завтра- послезавтра получу свои заказы, возможно тогда и пойму что и как можно организовать ? А пока, я в потёмках.
Дисплей выведет то, что Вы в него пихнете, неважно как, но на размер символов и наличие подсветки следует обратить внимание. Графический брать не стоит, разве что с интерфейсом SPI - с таким возни меньше, он сам умеет буквы рисовать :)
Если есть возможность поставить редуктор - нужно ставить. Скорость уменьшится, момент возрастет. Опять же, я не знаю, какую скорость нужно получить от ходового винта и какую скорость обеспечитвает Ваша серва... Это Вам решать (это я опять клещи взял и тяну... информацию :)))
Получил сегодня плату. Начинаю вникать.
Пока вернусь к Вашему вопросу по винту и скорости. Если исходить из шага винта 3 мм и предполагаемого шага резьбы, скажем тоже 3 мм то, получится что, ходовой винт будет вращаться со скоростью шпинделя. Для круглости положим 120 об/мин. Хе-х, самому страшно стало...
Двигатель, скажем, будет иметь 2000 об/мин . Для прикидки нам, думаю, такие цифры подойтут. Мне главное, въехать в эту тематику, а дальше я уже сам смогу внести коррективы.
По поводу дисплея и ввода с переключателей. Вы предлагали несколько вариантов и сами бы выбрали переменный резистор с вводом на аналоговый . Не могли бы Вы, набросать схему, реализующую этот способ ? Что то мне пока не понятно, как резистором выбирать фиксированные величины ? А как я буду определять, какой шаг или какая подача выбраны ? Нужны же фиксированные величины. Или для этого нужно будет шильду делать, под резистор ?
А по поводу энкодера на оси не могли бы вкратце описать, сколько входов нужно и как вообще это вычисляется ?
Я после Вашей бегущей строки поразмышлял и у меня такая мысль, на экран 20х4 выводится набор шагов и нам нужно только выбрать необходимый. Как я понял, эти дисплеи имеют тачпад, так вот, мы можем просто ткнуть в нужный шаг. Если, предположим, на экране не помещается весь набор, можно просто по экрану протащить до следующей серии величин. Что скажете про такой способ ? Реализация его, по сравнению с переключателем или резистором, даст что- нибудь полезное ?
Тачпады обычно идут с графическими дисплеями. Переменный резистор я предполагал только при наличии имеющегося переключателя с фиксированными положениями. Поэтому Вам нужен выбранный Вами галетник с набором резисторов. Я бы поставил 2 переключателя - один с диаметром резьбы, второй - для выбора шага (основной - крупный - мелкий - супермелкий) Ну, или кнопками через меню.
А, диаметр- то, зачем ?! И дальше тоже уже ничего не понимаю... Если ставить галетник то, резистор к чему ? На галетнике и распаивается вся цепочка... Или я не про то ?
Может, попробуем по другому ? Вы мне объясните, как и какой сигнал нужно подавать на на вход ( и какой вход ), чтобы решить вопрос с выбором шага ? Не обязательно углублённо, для начала можно поверхностно. Надеюсь, я ещё смогу разобраться сам. Ну уж если совсем отупел, тогда спрошу ещё раз но, думаю что до этого дело не дойдёт.
А тот вариант, который я изложил, про таблицу на экране, нельзя реализовать на тачпаде ? И ещё, мне пока не понятно, возможно ли, на Arduino, реализовать выбор шага и подачи на декадных переключателях ? На подобие тех, что стоят, скажем, на мостах постоянного тока или магазинах сопротивлений ? Возможно ли выбирать с приращением 0,01 мм, в диапазоне от 0,01 мм до 3,00 мм ?
Ну и последнее, а кнопками, через меню, это как будет выглядеть ?
Дело в том что, мне нужно кроме резьб ещё и подачи выбирать, поэтому я и спрашиваю про возможность декад. По моим планам это будет выглядеть так. Стоят три переключателя. Первый выбирает: 0, 1, 2, 3 и всё. Это будут единицы миллиметров. Второй перебирает десятые доли, от от 0 до 9 и третий перебирает сотые доли, от 0 до 9 Возможно, понадобится ещё один переключатель, выбирать тип резьбы. Как конус будем выбирать ? Я не знаю, как это заводится в Arduino, поэтому ничего путного пока сказать не могу
Есть ряд метрических резьб - к нему привязаны шаги этих резью, поэтому я и предложил выбирать диаметр. Можно, конечно, просто декадными переключателями формировать шаг с определенной точностью.
На переключателях распаиваются сопротивления - мы получаем дискретный аттенюатор, на который подаем опорное напряжение, сигнал с него заводим на аналоговый вход. То есть 10 возможных значений - на одном входе. Таких переключателей можно воткнуть 5 штук :)
А кнопками через меню... ну, видели дисплейчик на лазерном принтере для настройки параметров? Примерно так же.
Про конус - аналогично выбирать угол при постоянной подаче, или выбрать подачу, перейти в режим конуса и выбрать угол, или один переключатель будет делать выбор 10 типов подачи, остальные - угол...
В любом случае можно подключить 5 (точнее, 6) декадных переключателей. Логика вторична, алгоритм первичен.
А как задётся дискретность на входе ? Я имею в виду шаг или точность. Блин, такие вещи лучше обсуждать вживую... Быстрее и точно понимаешь, а так, сплошь и рядом, мусор перепадает.
Ну а, энкодером, как релизуется выбор шага ? Если не трудно, дайте пожалуйста линк, где можно посмотреть на схемы подключения на вход различных источников. Так я наверное быстрее пойму. А то в Поиск как зайдёшь, пока разберёшься, где что уже и забыл, зачем зашёл. А время уходит...
Подключение энкодера Состояние (текущий шаг) нужно выводить на индикатор. Принцип такой же, как и регулировка громкости в автомобильной магнитолле колесиком.
Дискретность задается очень просто - проверяется попадание значения в диапазон. Весь диапазон разбивается на части (количество = количеству положений переключателя)
Не, я немного не про то... Не к каким контактам подключать энкодер, а как на энкодере, скажем с 20 импульсами на оборот, реализовать перебор 399 позиций ? Что- то я никак не соображу, как на них, реализовать декадный способ ? И про дискретность тоже не понял. Количество чего ? Частей ? Это получается 10 переключателей ? Что то не соображу...
Дайте мне, во временное пользование, Ваши клещи.
Дискретность одного переключателя, иначе говоря, на сколько меняется напряжение при переключении на одну позицию.
Энкодером перебор 399 позиций реализуется очень просто - 20 оборотов по 20 импульсов :) Вы что, крутилкой на магнитоллах и видиках никогда не пользовались?
Вы про управление чем, говорите ? Реверсом ? Или оборотами ?
Оборотами. реверс в этой схеме вообще не предусмотрен
Есть там реверс, электрический переключатель. Обмотку переключает.
Я значит его на схеме не заметил.
Нет, это я его на схеме не указал. Ну, это не суть важно.
А такой контроллер http://www.ebay.de/itm/170815006869?ssPageName=STRK:MEWAX:IT&_trksid=p3984.m1423.l2649#ht_2178wt_1130 не подойдёт для моих целей, вместо 2560 Mega ?
А такой контроллер http://www.ebay.de/itm/170815006869?ssPageName=STRK:MEWAX:IT&_trksid=p3984.m1423.l2649#ht_2178wt_1130 не подойдёт для моих целей, вместо 2560 Mega ?
Управление 1 шаговиком или 2 DC-моторов (без обратной связи (то есть как серва не работает) - оно надо?
Если у Вас есть интерфейс step-dir, то нужен любой контроллер. У дуины есть плюс - простота программирования
Если не трудно, поподробнее объясните пожалуйста, что такое интерфейс Step/Dir ?
Я подумал, раз на плате ( последней ) стоит микроконтроллер, значит его можно программировать и он имеет входы, например: для подключения энкодера. Не ?
У Вас же есть UHU. Их заменить хотите? Придется писать алгоритм управления движком на основе ПИД-алгоритма самостоятельно (не факт, что влезет в этот контроллер, нужно же 2-мя движками управлять)
Кроме того, ядро старое (MCS51), 8К памяти, программа уже прошита и наверняка защищена (так что свою программу Вы туда не засунете) Можно, конечно, новый проц воткнуть, благо есть в продаже ... я бы не взялся его программировать. Тут нужно быть гуру программирования, потому что писать нужно будет на чистом "с", а если не влезет, то и на АСМе...
А так, у Вас есть 2 UHU, на которых сделаны 2 сервы, интерфейс у них step-dir (то есть шаг-направление) - как у шаговика с драйвером - управляется легко, нужно всего 2 линии проца.
Вывод - не связывайтесь с этим устройством. Да и выход слабоват.
Нет, я пока хочу понять, что мне нужно, чтобы из станка убрать набор шестерёнок ?
Стало быть, эти платы мне не подходят и нужно брать Arduino 2560 Mega ? 1 штуку ? А у Attyny памяти больше чем у контроллера на последней плате ? Я в них пока ещё не ориентируюсь...
Ардуину можно любую взять, совсем необязательно мегу, достаточно UNO или даже MINI на контроллере atmega328 (там 32 к памяти)
в attiny памяти совсем кот наплакал (2к), но ядро AVR, поэтому функциональность сравнивать нет смысла.
У меня есть 3 корпуса АТМЕГА1284, что в моём случае предпочтительнее, для реализации моей идеи ? Купить Arduino или использовать ATMEGA 1284 ? Чувствую что, мне просто времени не хватит, на освоение этих микроконтроллеров...
Вот Вы же сами и ответили на свой вопрос: времени не хватит
Ардуино осваивается быстро, на пару порядков легче, исключаются этапы сборки обвеса контроллера, программатора. Есть удобные библиотеки.
Понял. Ну, а что ещё мне нужно купить, для начала работ по внедрению микроконтроллера в токарный станок ? А в соседней теме создал ветку, где попросил у знающих людей помочь, пока тишина. Может быть Вы посмотрите ? Глядишь, что и подскажите ?
Соседняя ветка - это которая типа "ошибочная"? Там ссылки только на контроллеры, и, по большому счету, нет никакой разницы, который применять. Самое главное - это электро-механический привод. Сначала определитесь с сервами и механикой. Управлять оборотами шпинделя можно адуиной и одним оптроном. Определитесь с функциональностью - тогда можно подумать, нужен ли индикатор (ЖКИ), нужен ли тачскрин, или обойдемся кнопками... Только не берите ардуину на 168-м процессоре - может памяти не хватить.
Что это такое http://www.ebay.de/itm/5X-Mini-Solderless-Prototype-Breadboard-170-Tie-points-for-Arduino-Shield-/280920614734?pt=Wissenschaftliche_Ger%C3%A4te&hash=item41682c674e#ht_3423wt_1154 ? Пустые коробочки или монтажные коробочки ? Если монтажные, как они внутри обвязаны ? К ним идёт какая- нибудь инструкция ? Или, они открываются и можно самому разобраться что к чему ?
Нет, в Аппаратные вопросы - Подскажите пожалуйста, по модулям.
Что это такое http://www.ebay.de/itm/5X-Mini-Solderless-Prototype-Breadboard-170-Tie-points-for-Arduino-Shield-/280920614734?pt=Wissenschaftliche_Ger%C3%A4te&hash=item41682c674e#ht_3423wt_1154 ? Пустые коробочки или монтажные коробочки ? Если монтажные, как они внутри обвязаны ? К ним идёт какая- нибудь инструкция ? Или, они открываются и можно самому разобраться что к чему ?
Это макетка. По краям по 2 линии отверстий вдоль края (соединены) - используются для подачи питания, остальные соединены поперек, посередине (по осевой линии) разрыв, чтобы было удобно микросхему втыкать.
Есть смысл покупать ? Я имею в виду для моих нужд, т.е. если куплю Arduino Nano или Mini.
Ну дык... определитесь с нуждами то! Нану не стоит брать - у нее нету USB. Выберете шилду с кноками или с кнопками и индикатором, контроллер лучше взять того же форм-фактора - проще соединять - воткнул одно в другое и пользуешься этим бутербродом как одним целым.
По модулям там вполне все расписано, не знаю, что можно подсказать.
Вот, скажем, этого комплекта вполне бы хватило. И бюджетно...
Там торг ещё не закончился... Да расписано то, не понятно. В чём между ними различие ? На фига такое разнообразие ? Видимо есть причина ? А сколько нужно будет подключений для моих нужд ? Этажерка не вносит ограничения ? И, на кой мне, экран ?
Когда они будут у меня на столе, я сам смогу разобраться, что к чему. Но будет жалко, если окажется не то...
С нуждами то, я давно определился. Теперь бы вот, определиться с базой. Я же никогда с ними дела не имел и сразу, с чтения на непонятном языке, трудно решить, что мне лучше подойдёт ?
С нуждами то, я давно определился. Теперь бы вот, определиться с базой. Я же никогда с ними дела не имел и сразу, с чтения на непонятном языке, трудно решить, что мне лучше подойдёт ?
Нужды надо бы подробненько озвучить.
Если экран не нужен, смело берите arduino-mini и, скажем, макетку с проводочками. Ну и кнопки соответственно - в нужном количестве. Можно взять готовую матрицу 4х4.
Попробую ещё раз.
На токарном станке, нужно убрать шестерёнки, для настройки шага резьбы и подачи. Утомительное занятие, каждый раз менять их. Поэтому, нужно будет поставить серводвигатели на винт поперечной подачи и на ходовой винт. И нужно будет засинхронизировать вращение шпинделя с этими винтами. Скажем, для точения конусов и различных видов резьб. Синхронизация, крайне желательна, точная. Для управления моторами винтов приготовлены контроллеры UHU. Со шпинделем, вопрос пока не решён, хочется оставить ручку частоты вращения, на передней панели, а это потянет за собой необходимость изменять частоту вращения в любой момент времени и, соответственно, микроконтроллеру придётся всё это пересчитать и выдать на UHU- контроллеры скорректированный сигнал управления. Вот не знаю, по силам ему такая задача ? На каждом серводвигателе установлены энкодеры. На данный момент, планируется установить на шпиндель диск, с 16 импульсами. Можно поставить и метку, Начало оборота. Ещё, контроллер должен обеспечивать постоянство скорости резания т. е. с изменением диаметра детали, должна меняться и частота вращения шпинделя. Здесь, конечно, допустима некоторая погрешность, прецизионность не обязательна. Ну и, концевые само собой. А электронные линейки, можно завязать для такого дела ? В смысле, по ним чтобы можно было управлять ? Хотя... Вопрос какой- то туманный. Нужно ещё подумать над ним.
Вот исходя из этого, мне нужно выбрать микроконтроллер и обвязку к нему. Есть ещё одна идея, поставить на поворотную ось серво... Она должна только обеспечивать поворот резцедержалки, при обработке сферы. Возможно ли это реализовать на микроконтроллере ? Предвижу утвердительный ответ. А какой именно микроконтроллер нужно выбрать ? И по кнопкам не понял, зачем они ? Я же не буду программировать. Я залью программу и буду ручками- рычагами выбирать нужный режим.
С экраном пока не знаю... Вроде как, планирую сохранить обычное управление, а там экран вроде, как зайцу фонарь сзади. Хотя, если будут идеи, готов их рассмотреть.
Как- то так, думаю...
Это, простите, не нужды, а часть решения.
Нужды, скажем, это "нарезать метрическую резьбу диаметром 10мм шагом 2мм длина 150мм"
Если диаметр, длина и шаг нужно параметрировать - то это отдельная задача, боюсь, тогда нужен дисплейчик.
Что значит синхронизировать? Задавать К передачи? Фазу вращения?
Нужда, скажем, "точить конус морзе №1" - здесь параметры могут быть жесткими... хотя лучше бы при этом менять обороты в зависимости от текущего диаметра.
Иначе говоря, нужно определиться с перечнем процессов и возможностью их параметрирования.
Стоп. При чём здесь длина резьбы ? Я же не говорил что, обработка будет по программе. Я сказал что, коробка будет электронная. Скажем, нужно мне нарезать резьбу М12. Я поставил переключатель на нужное положение, а длину обработаю сам, вручную. Arduino только обеспечивает синхронизацию вращения шпинделя и ходового винта. Как это делалось с шестернями. Для обработки по программе, я включу компьютер и через Mach или другую программу, буду управлять UHU-контроллером. Наверное, минуя Arduino. Хотя, пока сам не знаю, как это будет выглядеть ? То же самое касается и обработки конуса. Скажем МК1. У него угол прописан стандартом и хранится в памяти Arduino. Какой бы диаметр я не поставил, Arduino проточит конус МК1. То, что это может получиться не правильный конус, уже я сам буду контролировать, через диаметр начала или конца. Чтобы получилось по ГОСТу.
Или я опять, не про то ?
С Мач3 такая фишка точно не пройдет :) Сия программа любит "полный контроль", то есть должна управлять всем. Иначе устанешь ей придумывать и подсовывать G-коды :)
А вот контроллер может. И мы уже имеем :
нужда 1: обеспечить синхронизацию продольной подачи со шнинделем для (какого?) количества заданных К. А поперечная подача при этом ручная? Проход1?
нужда 2: обеспечить точение конуса от текущего диаметра под (каким?) количеством заданных углов. Используются продольная и поперечная подачи. Коэффициент продольной подачи один?
Я правильно понял? Это все? Или еще что-нибудь нужно? А данные с переключателя для резьбы для контроллера чем снимать будем?
А дисплейчик мог бы отображать шаг подачи и угол :)
Вот Nano с USB http://www.ebay.de/itm/Duino-Nano-V3-0-ATmega328P-Free-Mini-USB-Cable-Arduino-Compatible-/280921265823?pt=Wissenschaftliche_Ger%C3%A4te&hash=item416836569f#ht_4873wt_896
Я просто мини и нано путаю. Логически нано должна быть меньше мини, а оно оказалось наоборот :) Это у мини нет USB, у нее UART
При нарезании резьбы, я могу поперечную подачу и обратный ход, сам прогнать. Контроллер работает только во время движения резца вдоль участка нарезания резьбы, до тех пор пока я его не остановлю, включив Реверс и отведя резец. А может, действительно, поставить экран и тогда можно задать начало и конец резьбы, скажем в глухом отверстии. Идея заманчивая, а как реализуема ? Не слишком ли много задач для контроллера ?
Количество проходов так же, я сам выбираю.
Количество конусов, я предполагал записать стандартные, а теперь, в связи с идеей экрана, не знаю...
Я не знаю возможностей Arduino и поэтому мне трудно что- либо решить.
Если бы вопрос был в приборах или регуляторах, проблем нет. Там я всё знаю и выберу самый оптимальный вариант. А микроконтроллеры я никогда не юзал. Если у Вас есть какие- то соображения в этом плане, выкладывайте. Обсудим.
По поводу, чем данные с переключателей снимать будем ? А что для этого есть ? Программные решения или аппаратные имеются ?
Если я правильно понимаю, вычислительные возможности у Arduino одинаковые. Разные только обьёмы памяти и количество входов- выходов ? Я правильно понял ?
Да, поняли правильно. Чем больше памяти, тем больше логики можно запихнуть. Если Вы в контроллерах не разбираетесь, то здесь мы поможем. Нужно плясать от задач. Сначала все пишется по максимуму, потом оценивается, что нужно для выполнения, неукладывающиеся в возможности задачи вычеркиваются или подбирается более мощный контроллер.
По поводу снятия данных с переключателя - не могу ничего сказать, потому что не знаю конструкции переключателя. Если переключатель механический, то возможны варианты:
1. набор концевиков и кулачек на оси.
2. переменный резистор на оси переключателя.
3. угловой энкодер на оси переключателя
Первый вариант заводится на соответствующее количество дискретных входов, или через чепочку резисторов на аналоговый вход, второй - на аналоговый вход, третий - на дискретные входы (количество зависит от энкодера). Я бы выбрал второй из-за простоты реализации.
Один из возможных кандидатов на роль переключателя http://www.ebay.de/itm/Lorlin-Drehschalter-1-x-12-Stellungen-CK-1049-Print-038455-/150838824701?_trksid=p4340.m1850&_trkparms=aid%3D222001%26algo%3DSIC.CURRENT%26ao%3D1%26asc%3D11%
26meid%3D691687242036660910%26pid%3D100011%26prg%3D1005%26rk%3D1%26#ht_500wt_1180
Энкодер наверное не подойдёт, после снятия питания, его положение, после нового включения будет непредсказуемым... Или предсказуемо ? Возможно, можно будет сделать переключатели по декадно, чтобы можно было выбирать шаг с точностью до второго знака после запятой. Т.е. на случай если понадобится нарезать резьбу с нестандартным шагом. Другими словами, взглянув на положение ручек, мы узнаем какой шаг или какая подача в данный момент установлены.
Если ставить дисплей то, тогда можно поставить энкодер и уже на дисплее увидеть величину шага и вид резьбы или подачу. Правда, я пока не представляю, как и сколько информации, можно разместить на экране. Возможно придётся поставить экран от автомобильных видеоплееров, с тачпадом ?
А вот что касается написания, тут я пока, совершенно ничего не могу обсуждать... Ибо необучен.
Переключатель хороший. То есть переключатель будет не штатный, а тот, который Вы поставите. Тогда подойдет вариант с резисторами и аналоговым входом. 2 переключателя - 2 входа.
Непонятна фраза "А вот что касается написания, тут я пока, совершенно ничего не могу обсуждать... Ибо необучен." Вас же не программу просят писать, а возможно подробнее описать функциональность. Грамотно сформулированное задание - залог нужного результата.
Программу написать поможем. Я поддержу, я как раз порограммист с уклоном в автоматизацию. И схему подключений нарисую.
Да, именно это я и имел в виду, программу.
Штатный переключатель, как таковой, не удовлетворяет условиям поставленной задачи, там можно выбрать только три параметра: шага или подачи. И второй переключатель, направление, на три положения: к патрону, нейтраль и от патрона. Всё. Как видим, не густо. Поэтому вместо них я и хочу поставить электрические переключатели, правда, пока не знаю, есть ли проблема с дребезгом контактов и сопротивлением контактов ? Думаю что это решается программным путём но, не понимаю, для контроллера это не сильная дополнительная нагрузка ?
Ещё вот что хочу спросить, не могли бы Вы предварительно прикинуть, достаточно ли у микроконтроллера ресурсов чтобы обрабатывать такой поток информации ? Скажем, резьбу нарезаем на частоте вращения шпинделя, скажем, 100 оборотров в минуту. Шаг резьбы выберем самый трудный, в плане количества импульсов с энкодеров, 3 мм. И вот теперь, предположим что, я изменил частоту вращения шпинделя, ручкой на передней панели. Скажем, поднял до 120 оборотов в минуту. Какова будет погрешность в шаге резьбы, после обработки этого изменения, контроллером ? Я понятно выражаюсь ? Может я, что- то не так сформулировал ? В общем, хватит ли быстродействия Arduino, для удержания заданной скорости резания при изменениях нагрузки на резце ( скажем, обрабатывается с ударной нагрузкой, типа зубчатого колеса или гладкий цилиндр ) и изменении частоты вращения, ручкой на передней панели ? Или, если подойти с другой стороны, какое количество импульсов с экодера, будет оптимальным, для решения нашей задачи ?
Кроме 100 оборотов в минуту (это примерно полтора в секунду) нужно знать коэффициент сервы на продольной подаче, то есть сколько шагов на мм. Предположим, 200. Тогда за секунду контроллер выдаст 200х3х1.5=900 импульсов. Это очень простая задача, даже с синхронизацией. Ардуино может и на порядок быстрее :)
Дребезг контактов убирается программно (а на аналоговом входе можно и электронно), сопротивление контактов роли не играют, это омы супротив килоомной обвязки.
Погрешность в шаге резьбы может появиться только во время увеличения (шаг будет запаздывать чуть-чуть), но после стабилизации оборотов он встанет на свое место.
У меня есть небольшой выбор энкодеров, от 200 импульсов/об до 1000имп/об. Шаг ходового винта 3мм, поперечной подачи 2мм.
У меня тут мысль мелькнула, не столкнёмся ли мы, или я, с проблемой кратности, при выборе шага резьбы ? В смысле, не возникнет такая ситуация что, желаемая резьба не укладывается в систему счёта микроконтроллера. Не знаю как это правильно объяснить... Ну, например, шаг резьбы 1 мм микроконтроллер сможет обсчитать без остатка, а для шага скажем 0,3 мм он обсчитает с остатком и придётся либо округлять, либо брать ближайшее число, что в итоге даст не точно 0,3мм, а скажем 0,29мм. Как то так вот. Я просто не знаю какие там частоты, какие делители и прочие премудрости... Те же количества импульсов с энкодеров, не всегда укладываются кратно в таблицу расчётов. Это как то поддаётся математическому расчёту ? А то я замыслил поставить декадные переключатели, например: 0,10-0,11-0,12-0,13-0,14-0,15мм и т.д. для шага нарезаемой резьбы... Или, мне нужно искать закатку ?
Ну вот, сбылась мечта идиота. Купил
http://www.ebay.de/itm/221075036763?,ssPageName=STRK:MEWNX:IT&_trksid=p3... http://www.ebay.de/itm/221075031939?ssPageName=STRK:MEWNX:IT&_trksid=p39... http://www.ebay.de/itm/221074136959?ssPageName=STRK:MEWNX:IT&_trksid=p39...
С дисплеем пока не определился, то ли купить такой
http://www.ebay.de/itm/251095558435?ssPageName=STRK:MEWAX:IT&_trksid=p39... , то ли такой
http://www.ebay.de/itm/170835468436?ssPageName=STRK:MEWAX:IT&_trksid=p39... , то ли такой
http://www.ebay.de/itm/160784833077?ssPageName=STRK:MEWAX:IT&_trksid=p39... , то ли такой
http://www.ebay.de/itm/DE-Lager-SainSmart-20x4-LCD-Module-Shield-IIC-I2C... , то ли такой
http://www.ebay.de/itm/320867568203?ssPageName=STRK:MEWAX:IT&_trksid=p39... , то ли такой взять http://www.ebay.de/itm/160842060221?ssPageName=STRK:MEWAX:IT&_trksid=p3984.m1423.l2649#ht_2375wt_690 ?
Что- нибудь посоветуете ?
Берите последний или предпоследний. Я бы предпочел предпоследний, потому что для отображения инфы 2-х строк вполне достаточно, а кнопочки не помешають :)
По поводу шагов. Контролле оперирует не столько их количеством, сколько интервалами между ними, а они могут быть дробными. На 3 мм 200 шагов мало, нужно не менее 200 шагов на 1 мм, то есть 1000 шагов на 3 мм - то, что надо.
16 символов будет достаточно для моих целей ? Я почему то думал что, 20 лучше. Опять же, 4 строки... Плохо, когда не знаешь.
А вот по поводу шага теперь я в непонятке. Почему Вы считаете 200 импульсов на 3 мм ? Я не планировал ставить движок прямо на ходовой винт. Я планировал как минимум зубчатый ремень и колёса с соотношением 3:1 То есть на 3мм двигатель сделает три оборота т.е количество импульсов будет 600. А если энкодер выбрать 512 имп/об то, получится 1536 имп на 3 мм. Я об этом рассуждаю ? Или не о том ?
Ну, Вы же и не говорили, что Не будете ставить редуктор... И не указали, куда будете ставить энкодер, опять же. Если на вал сервы, то одно, если на вал привода - другое. Из Вас прям информацию клещами приходится тянуть :)))
В результате нужно получить не менее 300 импульсов на 1 мм.
А 2х16 - это вполне себе. Я обхожусь 2х8. Правда, приходится сильно слова сокращать, но можно ведь и бегущую строку сделать. Собственно, Вам виднее. Можно и побольше взять, и клаву отдельную... В конце концов, в МЕГЕ можно "черта лысого реализовать" :)
Ну как же
Ведь ходовой винт крутится довольно медленно и нет смысла заставлять двигатель крутиться с такой же скоростью. Или есть ?
Что касается дисплея. Ну никогда я не работал с МК, откуда мне знать, что и как он выводит ? И уж тем более, какую информацию можно получить с бегущей строки, во время работы ? В мноём представлении, дисплей выглядел гораздо крупнее и информативнее, чем маленкий экранчик с резко ограниченными возможностями. Завтра- послезавтра получу свои заказы, возможно тогда и пойму что и как можно организовать ? А пока, я в потёмках.
Дисплей выведет то, что Вы в него пихнете, неважно как, но на размер символов и наличие подсветки следует обратить внимание. Графический брать не стоит, разве что с интерфейсом SPI - с таким возни меньше, он сам умеет буквы рисовать :)
Если есть возможность поставить редуктор - нужно ставить. Скорость уменьшится, момент возрастет. Опять же, я не знаю, какую скорость нужно получить от ходового винта и какую скорость обеспечитвает Ваша серва... Это Вам решать (это я опять клещи взял и тяну... информацию :)))
Блин, как неудобно здесь реализовано редактирование !!! Столько текста набрал и всё на смарку ?
Ладно, пока ничего больше не буду писать. Подожду посылку.
Получил сегодня плату. Начинаю вникать.
Пока вернусь к Вашему вопросу по винту и скорости. Если исходить из шага винта 3 мм и предполагаемого шага резьбы, скажем тоже 3 мм то, получится что, ходовой винт будет вращаться со скоростью шпинделя. Для круглости положим 120 об/мин. Хе-х, самому страшно стало...
Двигатель, скажем, будет иметь 2000 об/мин . Для прикидки нам, думаю, такие цифры подойтут. Мне главное, въехать в эту тематику, а дальше я уже сам смогу внести коррективы.
По поводу дисплея и ввода с переключателей. Вы предлагали несколько вариантов и сами бы выбрали переменный резистор с вводом на аналоговый . Не могли бы Вы, набросать схему, реализующую этот способ ? Что то мне пока не понятно, как резистором выбирать фиксированные величины ? А как я буду определять, какой шаг или какая подача выбраны ? Нужны же фиксированные величины. Или для этого нужно будет шильду делать, под резистор ?
А по поводу энкодера на оси не могли бы вкратце описать, сколько входов нужно и как вообще это вычисляется ?
Я после Вашей бегущей строки поразмышлял и у меня такая мысль, на экран 20х4 выводится набор шагов и нам нужно только выбрать необходимый. Как я понял, эти дисплеи имеют тачпад, так вот, мы можем просто ткнуть в нужный шаг. Если, предположим, на экране не помещается весь набор, можно просто по экрану протащить до следующей серии величин. Что скажете про такой способ ? Реализация его, по сравнению с переключателем или резистором, даст что- нибудь полезное ?
Тачпады обычно идут с графическими дисплеями. Переменный резистор я предполагал только при наличии имеющегося переключателя с фиксированными положениями. Поэтому Вам нужен выбранный Вами галетник с набором резисторов. Я бы поставил 2 переключателя - один с диаметром резьбы, второй - для выбора шага (основной - крупный - мелкий - супермелкий) Ну, или кнопками через меню.
А, диаметр- то, зачем ?! И дальше тоже уже ничего не понимаю... Если ставить галетник то, резистор к чему ? На галетнике и распаивается вся цепочка... Или я не про то ?
Может, попробуем по другому ? Вы мне объясните, как и какой сигнал нужно подавать на на вход ( и какой вход ), чтобы решить вопрос с выбором шага ? Не обязательно углублённо, для начала можно поверхностно. Надеюсь, я ещё смогу разобраться сам. Ну уж если совсем отупел, тогда спрошу ещё раз но, думаю что до этого дело не дойдёт.
А тот вариант, который я изложил, про таблицу на экране, нельзя реализовать на тачпаде ? И ещё, мне пока не понятно, возможно ли, на Arduino, реализовать выбор шага и подачи на декадных переключателях ? На подобие тех, что стоят, скажем, на мостах постоянного тока или магазинах сопротивлений ? Возможно ли выбирать с приращением 0,01 мм, в диапазоне от 0,01 мм до 3,00 мм ?
Ну и последнее, а кнопками, через меню, это как будет выглядеть ?
Дело в том что, мне нужно кроме резьб ещё и подачи выбирать, поэтому я и спрашиваю про возможность декад. По моим планам это будет выглядеть так. Стоят три переключателя. Первый выбирает: 0, 1, 2, 3 и всё. Это будут единицы миллиметров. Второй перебирает десятые доли, от от 0 до 9 и третий перебирает сотые доли, от 0 до 9 Возможно, понадобится ещё один переключатель, выбирать тип резьбы. Как конус будем выбирать ? Я не знаю, как это заводится в Arduino, поэтому ничего путного пока сказать не могу
Есть ряд метрических резьб - к нему привязаны шаги этих резью, поэтому я и предложил выбирать диаметр. Можно, конечно, просто декадными переключателями формировать шаг с определенной точностью.
На переключателях распаиваются сопротивления - мы получаем дискретный аттенюатор, на который подаем опорное напряжение, сигнал с него заводим на аналоговый вход. То есть 10 возможных значений - на одном входе. Таких переключателей можно воткнуть 5 штук :)
А кнопками через меню... ну, видели дисплейчик на лазерном принтере для настройки параметров? Примерно так же.
Про конус - аналогично выбирать угол при постоянной подаче, или выбрать подачу, перейти в режим конуса и выбрать угол, или один переключатель будет делать выбор 10 типов подачи, остальные - угол...
В любом случае можно подключить 5 (точнее, 6) декадных переключателей. Логика вторична, алгоритм первичен.
А как задётся дискретность на входе ? Я имею в виду шаг или точность. Блин, такие вещи лучше обсуждать вживую... Быстрее и точно понимаешь, а так, сплошь и рядом, мусор перепадает.
Ну а, энкодером, как релизуется выбор шага ? Если не трудно, дайте пожалуйста линк, где можно посмотреть на схемы подключения на вход различных источников. Так я наверное быстрее пойму. А то в Поиск как зайдёшь, пока разберёшься, где что уже и забыл, зачем зашёл. А время уходит...
Подключение энкодера Состояние (текущий шаг) нужно выводить на индикатор. Принцип такой же, как и регулировка громкости в автомобильной магнитолле колесиком.
Дискретность задается очень просто - проверяется попадание значения в диапазон. Весь диапазон разбивается на части (количество = количеству положений переключателя)
Не, я немного не про то... Не к каким контактам подключать энкодер, а как на энкодере, скажем с 20 импульсами на оборот, реализовать перебор 399 позиций ? Что- то я никак не соображу, как на них, реализовать декадный способ ? И про дискретность тоже не понял. Количество чего ? Частей ? Это получается 10 переключателей ? Что то не соображу...
Дайте мне, во временное пользование, Ваши клещи.
Дискретность одного переключателя, иначе говоря, на сколько меняется напряжение при переключении на одну позицию.
Энкодером перебор 399 позиций реализуется очень просто - 20 оборотов по 20 импульсов :) Вы что, крутилкой на магнитоллах и видиках никогда не пользовались?