Вопросы новичка, подключение шаговика
- Войдите на сайт для отправки комментариев
Если написал не там то поправьте или перенесите пожалуйста.Просто рубрики схожей по тематике не нашел.
А теперь по делу.До покупки ардуино(у меня аналог Сarduino) никогда програмированием не занимался,но очень долго занимаюсь ремонтом электроники.Тут возникла задача,есть штатный магнитафон(Лексус)который управляется с дисплея,команды идут по штатной шине AVC-Lan,есть проигрыватель который управляется с пульта.Собственно возникла мысль считать команды штатного монитора и присвоить им команды пульта.Ничего универсального не нашел и понял,что надо делать самому.
Решил идти последовательно и учиться понемногу.Первым этапом решил тупо выдавать команду на ик диод,т.к раньше ничем подобным не занимался возникает несколько простых и глупых вопросов.Я считал код кнопки пульта программулиной,она мне выдала код из шести цифр и букв(как я понял в 16 кодировке)протокол NEC.Как я понял ик диод нужна вешать на цифровой выход,подойдет ли 13 вывод(внутри к нему привязан по умолчанию резистор).В какую систему мне надо переводить 16-ный код, что бы программа поняла его или она поймёт его.
Физику процесса моргания мне понятна,за определенный промежуток времени диод должен моргнуть нужное количество раз,т.е его надо чётко включить и выключить нужное количество раз.
Плата должна работать автономно без компа,сейчас хочу,что бы при нажатии на кнопку выдавало команду ик,так вот,как эту коману выдавать пока не допетрю(опыта и знаний не хватает ей богу).Наставьте на путь истинный,бросать не хочу,надо мне это добить.Я знаю протокол пульта и коды клавиш(пока нужно передать пару команд)дайте пример пожалуйста,а я попробую его поизучать и если не понятно позадовать глупые вопросы.
Я бы на курсы какие нибудь пошел,но работа и бла бла бла(да и просто не знаю есть ли они).....вот и пытаюсь после работы хоть как то вникнуть.Прочитал где то,что ардуино может освоить и первокласник,такое чуство,что я никак из яслей не перйду.
Правильно ли я понял, что вы хотите ардуиной эмулировать IK-пульт. Что-бы она посылала сигналы типа "нажата такая-то кнопка"?
>подойдет ли 13 вывод
Да подойдет. Но это не лучший вариант. Обычно к 13-тому привязан и встроенный на плату светодиод, которым удобно мигать в диагностических целях. Напрмер "послал команду" - мигнул диодом. Удобно при отладке, лучше не терять эту возможность.
Тем более что цена вопроса - купить за пару копеек резистор и использовать любой другой цифровой пин.
>за определенный промежуток времени диод должен моргнуть нужное количество раз
Не только. Длина каждого моргания тоже играют роль. Одна длина означает единицу, другая - ноль. Конкретные цифры "длины" - нужно смотреть в описание протокола. Вот эти "промарганные" единицы и нули и есть ваш код в двоичной форме. Кроме того могут еще быть еще "длинный миг" вначале, означающий "щас начнем данные передавать" и в конце "данные закончены".
Перевести в шестнадцатеричиный или десятичный вид (или наоборот), можно с помощью станрадтного виндового калькулятора переведенного в научный режим.
Писать все с нуля - не обязательно. Есть библиотека IRRemote, протокол NEC там вроде уже реализован (а мне в свое время с томпсоном пришлось танцевать, у них свой код). Позволяет как "ловить сигнал" и декодировать (можете посмотреть какие коды шлет ваш пульт), так и "послывать, воспроизводить".
Вот блог ее автора:www.arcfn.com/search
у меня вопрос по шаговому мотору
мотор - 28BYJ-48 12VDC выглядит -
в туториалах 4х и 6ти пиновые моторы что ввело меня в некоторый ступор.
но подключил по такой схеме -
залил немного переделанный motorknob.
Собственно вопросы -
если установить setSpeed больше 500, то двигатель залипает("свистит", вибрирует, но вал не крутит), почему?
нормально ли что я отдаю ему 5В с ардуины?
Можно ли его ускорить?
у мотора как я понял 64 шага.
однакоже в вышеприведенном коде он поворачивается на полный круг. хотя если я понял правильно stepper.step он должен прокрутиться на 2047 шагов.
Буду рад любому ответу.
Нормально ли что я отдаю ему 5В с ардуины?
- не нормально спалите ардуино, мотору надо 12В и большой ток
Можно ли его ускорить?
-После подачи 12В можно дальше експериментировать.
Сейчас прекратите, а то потом будет беда с платкой
блин, вот знал же что копировать нельзя - не то скопирую =( мотор - 28BYJ48 5V DC
Даже если он и 5В, ток потребления высокий, киньте отдельное питание. Самый простой случай из компа выведите 5В там ток такой что дальше будет ограничение микросхемы ULN)
И кстате эти моторы не скоростные, в них стоит еще редуктор. А шаговики нужно постепенно разгонять, сразу большая частота ничего не даст. Сделайте цикл и в нём гоняйте скорость
И кстате эти моторы не скоростные, в них стоит еще редуктор.
Сам придумал про редуктор или ктото подсказал?
Ты же модератор, прежде чем писать 7 раз подумай и проверь, я уже не первый раз встречаю такие ошибки
в напсаных тобой ответах пользователям .
2Shurup:
1-Все верно никто никому ничего не должен , но и вводить пользователей в заблуждение это не хорошо.
2-Я если чегото не знаю то лучше промолчу чем писать заведомо не верную информацию.
Если сайт бесплатный то должны быть правила. Я могу ознакомится с публичной офертой?
3-на фотографии которую выложил пользователь движек без редуктора
4-Если честно вчера был в плохом настроиении вот и попался этот пост под руку :)
Если я кого то обидел извините
Ладно про оферты и "должны быть" (никто ничего не должен) и проч. пропустим. Не будем раздувать флейм :)
>Если я кого то обидел извините
Ну я тоже может немного излишне горячо высказался :) Тем более что "наезд" был не на меня.
Просто совет на будущие: критикуйте совет, идею, позицию, но не автора, личность, человека. В этом случае намного больше шансов что вашу мысль услышат.
>Я если чегото не знаю то лучше промолчу чем писать заведомо не верную информацию
Это вполне понятный и логичный подход. Имеет право на существование. Но не единственно возможный. И другие имеют право выбирать другую стратегию поведения. Например я, как новичок, когда задаю вопрос, то предпочту что-бы мне ответили как можно быстрее, накидали "идей", "пути которые нужно проверить", ответсвенность за проверку которых, в любом случае, лежит на мне. А не "боялись сказать лишнего, а то заклюют".
К тому же, если вообще ударится в философию, если вы чего-то _действительно_ не знаете, то вы даже не знаете того что вы этого не знаете :) Получается что "нужно молчать всегда" ;)
Для чего мы тут собрались? Учится. Например я ответил. Неправильно. Если я угалал причину проблемы - мне скажут спасибо, если скажут "нет, проблема была в другом" - я скажу спасибо, я чему-то научился. Главное - психологический комфорт для всех участников процесса. Иначе не получится "сообщество".
О чём вы господа? Разве этот мелкий моторчик из кондиционера не с редуктором???
3-на фотографии которую выложил пользователь движек без редуктора
то схема включения, а не фото. Картинка нарисована во http://fritzing.org/
О чём вы господа? Разве этот мелкий моторчик из кондиционера не с редуктором???
Этот с редуктором, но это не шаговый двигатель, у шагового двигателя должно быть минимум 2 обмотки, а это значит минимум 4 провода для подключениея
>у шагового двигателя должно быть минимум 2 обмотки, а это значит минимум 4 провода для подключениея
Лезем в код библиотеки стандартной библиотеки Stepper (что можно перевести как "шаговик"). Файл Stepper.h
Смотрим строку 31: "The sequence of controls signals for 2 control wires is as follows"
Вообщем, если посмотреть код, то четко видно что степеры бывают 1 питание + 4 управляющих, и 1 питание + 2 управляющих.
>2 обмотки, а это значит минимум 4 провода для подключениея
На две обмотки, достаточно 3-х проводов подключения. Либо питание, либо землю можно сделать общими. Если вы посмотрите на первую картинку, второго поста, то увидите, что 4-рьмя управляющими рулятся, фактически, четыре обмотки.
Я вообще не понимаю о чем спор идет. Я выше давал ссылку на форум, где у человека был движок именно с такой маркировкой с четырьмя управляющими. И проблема у него была именно из-за того что он не знал о наличии в нем редуктора. Когда он это понял - проблема рассосалась. То есть то что в этих движках редуктор, как минимум, "бывает" сомнений не вызывает. И предположение о наличии редуктора, со стороны Adessit было вполне логично.
Есть ли редуктор в экземпляре Fenrir-а? На это ответить может только он.
Реудктор по любому есть, если гдето сбоку находится выход "якоря". А у этой серии у всех так. Он по ходу понижающий обороты
этот моторчик шаговый, картинка кривая, сидел этот моторчик в моём случае в кондиционере и подключен был в ULN2003
Вот более красивая картинка специально для вас
да мотор очень похож на тот что выше разве что приписка там не 12V DC а 5V DC
запитал от внешнего питания, так и вправду стало спокойнее на душе)
что такое редуктор я примерно представляю - как узнать что он есть или нет - не очень.
пробовал через digitalWrite включать как 1-2-3-4 так и как в указанном даташите 4- 4,3 - 3 - 3,2 - 2 - 2,1 - 1 - 1, 4 если я правильно понял. ничего. ни малейшего движения.
для использования stepper.step я вчера включал не так как тут 4-3-2-1 если смотреть out,
а 4-2-3-1, соответственно либа пускает (1,2)-(2,3)-(3,4)-(1,4). про "разгон" не совсем понял. как его правильно делать?
не вот так же -
На две обмотки, достаточно 3-х проводов подключения. Либо питание, либо землю можно сделать общими.
Если бы ты понимал принцип работы шагового двигателя думаю что ты бы не написал этого
как я уже писал ранее 4 провода это минимум
> как узнать что он есть или нет - не очень.
Ну скорее всего, если вал двигателя "по центру", как было на вашей картинке - то редуктора нет. А если "как-бы сбоку", не на центральной оси, а паралельно ей (как на фотках Adessit), то редуктор есть. Если он есть, то нужно сделать "много шагов", прежде чем вы сможете увидить их визуально.
>и как в указанном даташите 4- 4,3 - 3 - 3,2 - 2 - 2,1 - 1 - 1, 4
Все-таки это не совсем "ваш" даташит, попробуйте найти имменно на 5v, может у них схемы включения отличаются :( А может там будет написано какая у него макс. скорость, может с мелницей воюете.
Но, как я понял при speed<500 у вас и стандартная либа, все-таки крутит? Попробуйте все-таки "разгон". Идея выглядит проще в проверке чем, "подбирать схему", "прямая запись в порты" и т.п. Если не получится "разгон", тогда уж в дебри... :(
>не вот так же
Почти так, только вам же нужно "больше 500". И кроме "установки скорости" покрутить не мешало-бы.
>Если бы ты понимал принцип работы шагового двигателя думаю что ты бы не написал этого
А если бы вы поняли что хамить и тыкать незнакомым людям не стоит - ваша жизнь была бы проще.
Вам не хватило того что вы громко пукнули в лужу по поводу редукторов? Вам недостаточно того что вам уже показали фотки реального девайса? недостаточно того что указали строчку в библиотеке? Вы не можете посмотреть в документацию arduino.cc/en/Reference/StepperConstructor что-бы увидеть пример управления шаговым двигателем по двум управляющим проводам?
Взять словарик и перевести "pin3, pin4: optional the last two pins attached to the motor, if it's connected to four pins (int)" религия не позволяет?
Или просто Чувство Собственной Важности, не допускает что бывает что-то что вы понимаете не в полном объеме?
Так что возможно вы и больше разбираетесь в "принципах работы шагового двигателя", возможно вы даже правы по поводу "четерых проводов", но не пошли бы вы нахер со своим всезнанием излагаемой в такой форме?
да, точнее до <470 крутит либа спокойно. даташит не шайду никак нормальный( вот из того что нашел -
Model -28BYJ48;
Rated Voltage (DCV)-5;
Resistance Ω/Phase(at25℃) - 60;
Max.Freeload Pull-in Frequency (PPS) - ≥500;
Max.Freeload Pull-out Frequency(PPS)≥900;
Pull-in Torque(mN.m)- ≥29.4;
Operation Frequency (PPS)- 100
Detent Torque (mN.m)- ≥29.4
Temperature Rise(K) - ≤40
Noise(dB)- ≤35;
Step Angle (1-2phase) - 5.625°/64
Insulation Class - E
Разгон результатов не дал - все равно на 470 останавливается, я уж и так думаю может он на максимуме и крутится- полный оборот ~ 6 секунд. все таки моторчик то такой - дешевенький.
Смотрите что я выкопал в либе:
Как я понял, эта задержка между импульсами которые посылает либа на обмотки.
Что-бы не включать мозг сделал такой сектч (подставил ваши параметры).
В терминалах мне вернуло "1". То есть при данном наборе 64steps/470speed. Задержка между импульсами уже составляет одну миллисекунду. Значит самой библиотеке уже "ускорятся" некуда.
Она уже начинает гнать импульсы фактически без пауз, да еще с небольшим разнобоем из использования digitalWrite, вместо прямой записи в порт.
Так что похоже, без жестких извратов типа "напрямую писать в порты", как-то по другому генерировать частоту и т.п. не получится даже если "движок" может быстрее.
Можно еще попробовать "подхачить" библиотеку, перевести ее внутренюю кухню с миллисекунд, на микросекунды, но.... вообщем без танцев с бубном не обойтись.
Потер все сообщение, т.к. кроме оскорблений никакой полезной информации или вопросов в нем нет.
Администратор
P.S. Shurup забанен
если так уж хорошо разбираетесь в шаговых моторах посоветуйте пару тройку хороших ссылок.
Я у всех присутствующих прошу прощения, мне его (Shurup) надо было забанить после первого или второго сообщения в этой ветке.
2Alexander
>надо было забанить
Ну в будущие никто смотреть не умеет. А банить "с плеча", тоже не дело. Все иногда "выходим из себя", тем более что во втором сообщении он как бы извинился. "Официально предупредить" - возможно стоило.
Кстати, раз вы тут (а я помню, что вы правкой переводов занимаетесь) http://arduino.ru/Reference/Micros
Оригинал: "function has a resolution of four microseconds....has a resolution of eight microseconds"
Текущие перевод: ""функция micros() имеет разрешение 4 секунды ...... разрешение 8 секунд "
Как видим микросекунды превратились в секунды.
2Fenrir
Я попробую на симуляторе собрать степер (у меня "в железе" только сервы есть) и попытаться раскрутить его использую прямую запись в порт и микросекундные задержки. Если получится, попробуете потом мой скетч на реальном железе?
..... Как видим микросекунды превратились в секунды.
Спасибо. Поправил.
Оффтоп.
Похоже всё самое интересное я пропустил
Что-то я обвяз проблемами после свадьбы, пока. Есть у меня и моторшилд, о котором пишу материал,(отдельное спасибо http://domit.co.uk/) и моторчик и лаб.блок питания - проверил бы всё это, но нет же мебель скоро приедет надо квартиру довести до ума((((
Похоже всё самое интересное я пропустил
Не то чтоб. Так, — эмоции бушуют. :)
Вообщем накидал тут скетчик. Честно говоря в симуляторе даже стандартный степпер запустить не получилось, но "вдруго повезет"
По идее, "пишем напрямую в порт" (что обеспечивает синхронность пинов) и постепенно ускоряемся (уменьшаем время задержки между степами). Возможно нужно будет поигратся со стартовой задержкой между шагами, через сколько шагов ее уменьшать и на сколько. Подключение предполагал как в вашем первом скетче (пины 8,9,10,11). Схему включения взял из библиотеки ( при кодировании ее битовой маской в порт, нужно "перевернуть зеркально", 8-пин - самый младший бит).
Но чем дальше, тем больше подозреваю что "воюем с ветряными мельницами". Например в симуляторе, для степпера, такой параметр моделирования как "максимальная скорость" - 360RPM. Что даже хуже чем "у вас в реале".
leshak спасибо за помощь, но мне тут приехал freeduino motorshield а к нему вот здесь и пример freeduino.ru/arduino/mshield.html
там присоединяют мотор один в один как у меня и описывают что стоит мотор с шагом 32 и понижающий редуктор на 64. вот откуда и полный оборот получился 2048 = 32*64. тоесть неправильные данные я дал исходные к моему сожалению. получается, чтолюбую скорость что я устанавливал надо делить на 32. вобщем мотор не скоростной. Спасибо еще раз =)
>толюбую скорость что я устанавливал надо делить на 32
Я думал это стало понятно после того Adessit намекнул на редуктор, а гугл подтвердил. Но ведь даже из "деленной" скорости можно попытся выжать "еще чуть-чуть". В данном случае видно, что достигнут "предел библиотеки" (поэтому и попытался без нее сделать). Совпадает ли "предел библиотеки" с "пределом движка" - не известно. Только "попробовать".
Люди разгоняют шаговики до 3600 оборотов в минуту, даже если поделить на 64, получается примерно "оборот в секунду".
Вот обсуждение подобного "темного леса" forum.cxem.net/index.php, khalus.com.ua/kh/show/flm/stepper-article/index (раздел "разогнать"), делают обратную связь что-бы точно знать положение вала и т.п.
Вообщем при желании и большом запасе времени это может быть очень "долгоирающие" развлечение. В какой-то мере "спортивное" :)
А как реализовать подключение и управление шаговым двигателем 12В от ардуино?
Типа такого http://www.haydonkerk.com/LinearActuatorProducts/StepperMotorLinearActua...
Сила тока свыше 2А.
Неплохо бы готовое решение для ардуино...
А как реализовать подключение и управление шаговым двигателем 12В от ардуино?
...
Сила тока свыше 2А.
12В - пожалуйста, а вот 2 А - извините. Микросхема на шилде расчитана только на 0,6 А, нужно ставить внешние ключи.
Кажется нашел http://www.ebay.co.uk/itm/L298N-LMD18200-DC-Dual-H-bridge-isolated-Stepp...
Посоветуйте подойдет ли?
И куда там 12В подключать?
L298N LMD18200 DC Dual H-bridge isolated Stepper Motor Driver Controller Module
Size: 51mmX46mmX28mm.
Chip: LMD18200.
Work voltage: Control signal DC 4.5 ~ 5.5V.
DC motor drive voltage up to 55V, suggested the actual use of 12 - 48V (not less than 12V), with a drive power indicator.
Maximum output current of 3A (instantaneous peak current 6A), the maximum output power of 75W.
Motor speed can be achieved by smooth PWM speed control.
Anti-interference ability.
With a continued flow protection.
Can be individually controlled a DC motor or a solenoid or a single bi-directional solenoid and so on.
Reversing can be achieved.
Peak output current up to 6A, continuous output current up to 3A;
Working voltage up to 55V;
Low RDS (ON) typically 0.3W per switch;
TTL / CMOS compatible input level;
No "shoot-through" current;
With temperature alarm and overheat and short circuit protection;
Junction temperature of 170 ℃, the chip off;
Have good immunity.
А вот еще http://uk.shopotam.ru/catalog/260901173986-item.html
может он подойдет
А вот китайцы предлагают...
http://item.taobao.com/item.htm?id=13237717196
Если вот такой мотор на 12В прицепить к тому контроллеру будет ли работать?
http://item.taobao.com/item.htm?id=12640015828
Сможет ли этот мотор ~4 кило сдвинуть и с какой силой тока? Может 2А и не нужно
Любая из этих приблуд подойдет. А 4 кило любой мотор может сдвинуть, но на разное расстояние - от рычага зависит :) Ибо моторы дают момент а не тягу.
А для управления упиполярным ШД подойдет этот контроллер?
Как подключить к нему? У ШД два провода лишние получаются
Средние выводы обмоток не подключать
Спасибо.
А при этом мощность упадет?
Средние выводы можно подключить к +12В в принципе, но я бы не стал, а просто проверил потребляемый ток, и если он меньше номинального, то поднял бы напряжение. Тогда мощность точно сохранится, а удерживающий момент возрастет, потому что в униполярном режиме одномоментно будет одна полуобмотка работать, а в биполярном - обмотка целиком..
Как подключить ШД к контроллеру?
А1 на контроллере это А на схеме?
А2 на контроллере это А с черточкой на схеме?
Управлять контроллером с четырех ШИМ выходов ардуины?
Что за кнопка "logic power supply mode choose button" на контроллере, зачем она?
A1 - A
B1 - А с чертой
A2 - B
B2 - B с чертой
Управлять 4 выводами с ардуины
Управлять 4 выводами с ардуины
Обычными или с ШИМ?
Если нужны дробные шаги, то ШИМ. Если полный шаг или полушаг, то без разницы. Использовать стандартную библиотеку Stepper
Не работает, в чем причина не пойму
Мотор 12В, 1,8 град.
Питание 10В подаю.
Мотор дергается чуть ощутимо, если центральные провода посадить на +12В - дергается сильнее.
Но вращения нет.
Неправильно иницилизируете
Правильно:
спасибо. помогло + помогло снижение скорости до 100.
если назначить скорость свыше 100 движок стоит и гудит, не пойму.
Читая эту ветку, я так понял вопрос по скорости не решился.
Что его придется разгонять?
Двигатель 42BYGH801, не могу найти частоту вращения, но думаю она явно не 100.