Шаговый двигатель управление что проще
Управление шаговым двигателем с помощью Android вещей
Я совершенно новичок в шаговых двигателях и изо всех сил пытаюсь управлять шаговым двигателем с помощью Android вещей. У меня есть программа Arduino для управления шаговым двигателем Nema 23, который подключен к драйверу M542. Приведенная ниже программа Arduino работает совершенно нормально.
Теперь я пытаюсь преобразовать эту программу в Android вещей, и я борюсь здесь. Я попробовал два разных способа.
1) просто заменив код на Android
При выполнении приведенного выше кода двигатель работает очень медленно, так как существует задержка в миллисекунды. Но код arduino имеет микросекунды.
2) используя модуль A4988 от https://github.com/Polidea/Polithings здесь также у меня есть та же проблема. Если я выполняю шаг один за другим, я в конечном итоге попадаю в ту же проблему, что и он движется очень медленно.
и когда я использую метод поворота, я вообще не могу заставить двигатель двигаться.
Я действительно не мог понять, как я могу управлять шаговым двигателем, который может двигаться быстро? Это просто проблема задержки? как же тогда я могу дать задержку в микросекунды?
Заранее благодарю вас всех за помощь.
3 ответа
- Как загрузить код с платы управления двигателем?
У меня есть плата управления шаговым двигателем, и мне было интересно, можно ли загрузить код с этой платы обратно на PC. Плата представляет собой светило микро шагового двигателя управления RDK с ARM microcontroller.
Привет, я совсем новичок в Arduino и электронике, так что потерпите меня. У меня есть проект по управлению шаговым двигателем с помощью Matlab и Simulink. А сейчас я просто хочу запустить эту штуку. Я подключил схему, протестировал ее с помощью простого кода для шагового двигателя, и она работает.
Как упоминали muminers, переключение высокой частоты обычно не выполняется непосредственно с устройством класса Linux, таким как Android или Raspberry Pi. Абстракции более высокого уровня могут привести к неточному времени, которое возможно на микроконтроллерах.
Однако в вашем случае вы можете воспользоваться PWM для отправки импульса более высокой частоты без необходимости постоянно переключать GPIO вручную.
Глядя на ввод-вывод для Raspberry Pi , вам нужно будет подключиться либо к BCM18 , либо к BCM13 , чтобы использовать PWM.
После этого вы можете установить частоту и рабочий цикл. Регулируя рабочий цикл, вы можете получить больше или меньше сигнала для вашего двигателя. Вот фрагмент кода:
Вы можете настроить частоту на что-то более похожее на 10 кГц и посмотреть, работает ли это лучше для вас.
прежде всего, сделайте простой скрипт python для handle stepper moter. https://circuitdigest.com/microcontroller-projects/controlling-stepper-motor-with-raspberry-pi затем установите мобильное приложение blueterm и передайте команду. чтобы также изменить сценарий some python.
Шаговые двигатели обычно требуют высокочастотных сигналов. Я не проверял это, но я действительно сомневаюсь, что AndroidOS способен генерировать один из, например, 10 кГц и даже период (возможно, если вы будете использовать Android NDK. но все еще сомневаюсь в этом).
Я хочу сказать, что устройство android не предназначено для того, чтобы быть драйвером для шагового двигателя. Он предназначен для предоставления параметров для фактического драйвера шагового двигателя. Почему бы вам не создать драйвер propper с помощью Arduino и просто не передать его своему приложению Android?
Именно так работают профессиональные производственные решения. Существует какое-то устройство пользовательского интерфейса (HMI pannel или PC), которое отправляет запросы пользователей на уровень драйверов.
- Arduino Проблемы С Шаговым Двигателем Uno
Я работаю с шаговым двигателем, подключенным к контактам 9, 10, 11 и 12 на Arduino Uno. Для того чтобы вращать шаговый двигатель, я написал вспомогательный метод. Этот конкретный шаговый двигатель вращается на 30 градусов за один шаг. Метод таков: void rotateStepperBy(float deg) < int steps = deg.
Я новичок в программировании Arduino и потратил пару дней, чтобы зайти так далеко, но, похоже, не могу понять, почему этот код не работает. Я пытаюсь управлять шаговым двигателем с помощью пульта дистанционного управления класса хобби RX/TX. У меня есть приемник RC, посылающий аналоговое значение.
Похожие вопросы:
Я пытаюсь получить пользовательское приложение android (работающее на Packard Bell liberty tab, android 3.2) для управления внешним двигателем. Нет необходимости в точном контроле, просто способ.
У меня есть старый планшет Android, и я хотел бы провести эксперимент по управлению другими электронными устройствами, такими как фары, охранная сигнализация и т. д. Через USB или BlueTooth. Есть.
У меня есть вопрос относительно управления шаговым двигателем при использовании стека Microchip TCP/IP. В прошлом я использовал таймер для управления моим шаговым двигателем. Я устанавливаю период.
У меня есть плата управления шаговым двигателем, и мне было интересно, можно ли загрузить код с этой платы обратно на PC. Плата представляет собой светило микро шагового двигателя управления RDK с.
Привет, я совсем новичок в Arduino и электронике, так что потерпите меня. У меня есть проект по управлению шаговым двигателем с помощью Matlab и Simulink. А сейчас я просто хочу запустить эту штуку.
Я работаю с шаговым двигателем, подключенным к контактам 9, 10, 11 и 12 на Arduino Uno. Для того чтобы вращать шаговый двигатель, я написал вспомогательный метод. Этот конкретный шаговый двигатель.
Я новичок в программировании Arduino и потратил пару дней, чтобы зайти так далеко, но, похоже, не могу понять, почему этот код не работает. Я пытаюсь управлять шаговым двигателем с помощью пульта.
Использование android вещей (Pico i.MX7D I/O) как управлять 4-контактным биполярным шаговым двигателем . Можете ли вы решить мне конфигурацию пин-кода? Это моя установка если кто-нибудь знает о step.
Я хотел бы создать программу Arduino, которая получает (через последовательный канал) только две команды: 1 и 2. С помощью этих команд я хотел бы Arduino управлять таким шаговым двигателем, как.
В настоящее время я пытаюсь управлять шаговым двигателем 28-BYJ-48 с помощью драйвера uln2003. Когда я запускаю свой код, мотор гудит и не двигается. В прилагаемом коде я использую pygame для.
Шаговый двигатель управление что проще
- ШДК
- Статьи
- Схемы
- Arduino
- Управление шаговыми двигателями
- Металлоискатели
- разное
- для Авто
- разное на микроконтроллерах
- всё на таймере NE555
- Конструктор схем
- Осциллографы
- Измерительная аппаратура
- Роботы
- Световые эффекты,управление светом
- Термостат
- Инверторы и преобразователи
- Защиты от перепадов напряжения
- Паяльные станции
- Аудио
- Дозиметры
- Часы
- Выключатели, переключатели,ИК,РФ
- Таймеры
- КУБ светодиодный
- Программаторы
- PIC microchip
- AVR ATmega и ATtiny
- Общее
- Электрические двигатели
- машины постоянного тока
- машины переменного тока
- Генераторы
- генератора независимого возбуждения
- синхронный генератор
- Авто-инжектор
- Элементы ЭСУД, описание
- Законы электротехники
- Основные законы из ТОЭ и др.
- Конкурсные работы 2015
- Конкурсные работы 2014
- Конкурсный работы 2013
- Конкурсные работы 2012
- Схемы
- Скачать
- Программирование
- Электрические расчеты
- Электрические программы
- Справочник
- Книги по релейной защите
- Авто
- Библиотека электромонтера
- Журналы
- Everyday Practical Electronics
- Радио
- Радиоаматор
- Радиолюбитель
- Радиоконструктор
- Схемотехника
- Радио Хобби
- Радиомир
- Ремонт и сервис
- Электрик
- Elektor Electronics
- Разное
- Книги, разные
- Программы,разные
- Ссылки
- Сайты связанные с электричеством
- Авто сайты
- Видео
- Самоделки
- Обучение Arduino
- дуга,разряд,пожар.
- Обучающие видео ролики
- P-CAD Schematic
- РОБОТЫ
- Техническое обслуживание компьютера
- Изготовление печатных плат
- Проекты
- Заказать прошивку
- Регистрация программистов
- С миру по байту
- Информация
- О сайте
- Реклама
- Добавить статью
- Обратная связь
- Обмен банерами
- Электроника из Китая
- В помощь студенту
- Электрические машины
- Эксплуатация релейной защиты
Чем меньше сопротивление R4 тем больше скорость вращения !
В данном включении запитывать двигатель лучше напряжением 9±2В, при меньшем он начинает проскальзывать, при большем – греется. Максимальная частота генератора, которая не приводит к проскальзыванию – 400 Гц (при Uпит=7В). Транзисторы – можно использовать любые MOSFET, с током стока не менее 0,5 А. Переключатель направления – тумблер ТП1-2 или кнопка П2К. П2К вообще-то не рекомендую. Отстой. Сколько не видел схем с ними — везде неисправность одна — не работают именно они. В принципе, для этих шаговых двигателей рекомендуютсхему с запускающим импульсом длиной 150 мкс и амплитудой 15-18В, но это приводит к усложнению схемы, а наша цель – простота. Для тех, кто интересуется шаговыми двигателями, можно сходитьсюда, здесь много полезной информации.
Генератор импульсов можно сделать, например, на 555 таймере. Вариант с регулируемой частотой от 1,5 до 450 Гц приведен на рис.
Схема подключения 6-ти выводного двигателя типа — АХ05 :
Библиотека для шагового двигателя Arduino v1.15
ОБНОВЛЕНИЯ
- v1.13 – исправлены мелкие баги, оптимизация
- v1.14 – исправлены ошибки разгона и торможения в KEEP_SPEED
- v1.15 – оптимизация, исправлены мелкие баги, stop() больше не сбрасывает maxSpeed
ТЕОРИЯ
Для подключения шаговых моторов к Arduino нужно использовать драйверы. Очень дешёвые и популярные моторы 28byj-48-5v часто продаются вместе со своим драйвером (транзисторная сборка ULN2003), подключить можно к любым 4-м пинам Ардуино и использовать.
Для работы с большими шаговиками (типа Nema 17) нужно использовать специализированные драйверы, ниже вы найдёте описания и схемы подключения для A4988, DRV8825 и TMC2208, драйверы такого формата подключаются и работают практически одинаково, т.к. разработаны для CNC шилдов и взаимозаменяемы. У этих драйверов нужно настроить ток при помощи крутилки на плате. Это можно сделать “на глаз”, заставив мотор вращаться и регулируя крутилку. Мотор должен вращаться, но не вибрировать как перфоратор и сильно не нагреваться. Лучше настроить ток по опорному напряжению Vref, у каждого драйвера оно считается по своей формуле (см. картинки ниже). Берём ток своего мотора из описания, подставляем в формулу вместо current, считаем, и накручиваем полученное напряжение крутилкой. Для измерения опорного напряжения нужно подключить щупы вольтметра к самой крутилке и пину GND.
Главное преимущество дорогущих драйверов TMC – отсутствие шума/свиста/вибраций при работе, так как драйвер своими силами интерполирует сигнал до микрошага 1/256.
БИБЛИОТЕКА
GyverStepper v1.15
Производительная библиотека для управления шаговыми моторами с Arduino
- Поддержка 4х пинового (шаг и полушаг) и STEP-DIR драйверов
- Автоматическое отключение питания при достижении цели
- Режимы работы:
- Вращение с заданной скоростью. Плавный разгон и торможение с ускорением
- Следование к позиции с ускорением и ограничением скорости
- Следование к позиции с заданной скоростью (без ускорения)
- Быстрый алгоритм управления шагами
- Два алгоритма плавного движения
- Мой планировщик обеспечивает максимальную производительность: скорость до 30’000 шагов/сек с ускорением (активен по умолчанию)
- Модифицированный планировщик из AccelStepper: максимальную плавность и скорость до 7’000 шагов/сек с ускорением (для активации пропиши дефайн SMOOTH_ALGORITHM)
- Поддержка “виртуальных” драйверов
Совместимость
Совместима со всеми Arduino платформами (используются Arduino-функции)
Простая схема с шаговым двигателем безопасна?
кокко
После различных разочарований я наконец понял, как найти эти проклятые провода на шаговых двигателях. Я думал, что управлять биполярными моторами проще, но в конце я предпочитаю однополюсные шаговые двигатели . больше кабелей, но проще в управлении.
Во всяком случае . после поломки моего единственного L293D я решил попробовать еще раз со знаменитым ULN2803A . С некоторым терпением и низким напряжением (5 В) я следовал приведенному выше описанию видео и записал все последовательности проводов шаговых двигателей, которые я спас.
- OKI EM-199 ( SMA6511 ) от принтера epson
- OKI EM-154 ( STK6711AMK4B ) от принтера epson
- OKI EM-318 ( LB1847 ) от принтера epson
- Mineba PM35L-048-HPI2 от принтера hp
- Mitsumi M55SP-1N от принтера hp
Как вы можете видеть, я нашел только те листы двигателей, которые я не смог найти. Так.
Из того, что я понимаю, Mitsumi M55SP-1N :
- потребляет меньше: 259mA/phase
- режим возбуждения используется в библиотеке 2-2 Phase excitation
- и я знаю, что могу использовать 12v чтобы управлять им.
Это первый раз, когда я использую шаговый двигатель
Я не хочу разрушать свой микроконтроллер или любую другую часть схемы.
Безопасно ли использовать ULN2803A для управления Mitsumi M55SP-1N при напряжении 12 В от 3,3 В или 5 В?
под этим я подразумеваю:
- У ULN2803A уже много защитных диодов. Достаточно безопасно?
- в спецификации Mitsumi M55SP-1N указано 259 мА / фаза * 4 = 1,1 Ампер .. верно? uln2803 обрабатывает 500 мА на канал и максимум 2,5 А .
- Энергоснабжение 1,25 Ампер . достаточно верно?
- Странная вещь случилась .. @ 5v с высокой скоростью, ступающей ULN2803A стал горячим. 50-60 град. С. нормально?
Если все в порядке (безопасно) . какой конденсатор я должен поставить рядом с Vin шагового двигателя?
И если вы думаете, что мне следует использовать один из вышеперечисленных шаговых драйверов или узнать больше о неизвестных двигателях, я с удовольствием узнаю что-то новое .
Примечание: Как я уже сказал, я уже проверил все двигатели при низком напряжении и низких оборотах, все они работают при 5 В, используя вышеуказанную схему, кроме конденсаторов. Это на макете .. теперь я хочу спаять это вместе. Я новичок в электронике, и то, что для вас очевидно, это то, чего я даже не знаю.
Брюс Эбботт
- У ULN2803A уже много защитных диодов. Достаточно безопасно?
- в спецификации Mitsumi M55SP-1N указано 259 мА / фаза * 4 = 1,1 Ампер .. верно?
Да (достаточно близко) Сопротивление каждой фазы составляет 50 Ом + -7%, поэтому при напряжении 12 В оно должно составлять примерно 12/50 = 240 мА на фазу (фактически оно должно быть даже меньше, чем это из-за падения напряжения в транзисторах Дарлингтона).
- Энергоснабжение 1,25 Ампер . достаточно верно?
Странная вещь случилась .. @ 5v с высокой скоростью, ступающей ULN2803A стал горячим. 50-60 град. С. нормально?
Прогрев на высокой скорости следует ожидать. Каждый раз, когда катушка выключается, обратный диод пропускает импульс тока, когда магнитное поле в катушке рассеивается. На высокой скорости диоды пропускают столько же тока при выключении катушек, сколько транзисторы при включении, что увеличивает общую потерю мощности. Транзисторы также имеют потери на переключение, которые становятся более значительными при увеличении скорости шага.
Температура корпуса 50-60 ° в порядке. ULN2803 не очень эффективен. При 240 мА каждый транзистор Дарлингтона падает примерно на 1,1 В, что равняется 1,1 Вт общей потери мощности при включении всех 4 фаз. Максимально допустимая температура соединения составляет 125 ° C. Тепловое сопротивление перехода к окружающей среде составляет 73 ° C / Вт (комплект D), поэтому при комнатной температуре (20 ° C) и 1,1 Вт температура перехода должна составлять
uln2803 обрабатывает 500 мА на канал и максимум 2,5 А .
Это абсолютные максимальные значения нагрузки, не рекомендуемые для нормальной работы. Для безопасности и надежности вы не должны превышать половину этих значений.