Система стабилизации намотки троса с применением шагового двигателя на ардуино

Заказать уникальную курсовую работу
Тип работы: Курсовая работа
Предмет: Микропроцессоры
  • 35 35 страниц
  • 4 + 4 источника
  • Добавлена 06.10.2017
1 496 руб.
  • Содержание
  • Часть работы
  • Список литературы
  • Вопросы/Ответы
СОДЕРЖАНИЕ


ВВЕДЕНИЕ 3
АНАЛИЗ ТЕХНИЧЕСКОГО ЗАДАНИЯ 4
1 ВЫБОР АППАПАТНОЙ ЧАСТИ 6
1.1 ВЫБОР ШАГОВОГО ДВИГАТЕЛЯ 6
1.2 ВЫБОР КОНТРОЛЛЕРА 14
1.3 ВЫБОР ДРАЙВЕРА ШАГОВОГО ДВИГАТЕЛЯ 22
1.4 ФУНКЦИОНАЛЬНАЯ СХЕМА УСТРОЙСТВА 26
1.5 ПРИНЦИПИТАЛЬНАЯ СХЕМА УСТРОЙСТВА 27
2 РАЗРАБОТКА ПРОГРАММНОЙ ЧАСТИ 28
ЗАКЛЮЧЕНИЕ 35
СПИСКОК ЛИТЕРАТУРЫ 36

Фрагмент для ознакомления

Компиляция и загрузка кода осуществляется из пункта меню скетч или по горячим клавишам.Рис.12 Программа ArduinoSoftwareПрограммирование ArduinoUno можно осуществить с помощью ArduinoSoftware (IDE). ATmega328 на ArduinoUno поставляется с предварительно запрограммированным загрузчиком, который позволяет вам загружать новый код без использования внешнего аппаратного программиста. Он связывается с использованием исходного протокола STK500. Также можно обойти загрузчик и запрограммировать микроконтроллер через ICSP (In-CircuitSerialProgramming) с использованием ArduinoISP или аналогичного.1.3 ВЫБОР ДРАЙВЕРА ШАГОВОГО ДВИГАТЕЛЯВ качестве дравера шагового двигателя искользуется микросхема-драйвер ULN2003.Драйвер ULN2003 представляют собой высоковольтные массивы Дарлингтона для работы с большими токами.Рис.13 Элемент микросхемы ULN2003 Каждый массив содержит семь пар с открытым коллектором Дарлингтона с общими излучателями. Каждый канал рассчитан на 500 мА и может выдерживать пиковые токи 600 мА.Подающие диоды включены для индуктивной нагрузки, а входы закреплены напротив выходов, чтобы упростить компоновку платы.Рис.14 Цоколевка микросхемы ULN2003Интерфейс версий для всех общих семейств логики: ULN2003 (5 В TTL, CMOS).Эти универсальные драйверы используются для управления широким спектром нагрузок, включая соленоиды, реле двигателей постоянного тока, светодиодные дисплеи, лампы накаливания, термопечатающие головки и мощные буферы и шаговые электродвигатели.ULN 2003A поставляется в 16-контактных пластиковых DIP-корпусах с медным свинцовым каркасом для снижения теплового сопротивления.Рис.15 Микросхема ULN2003 в DIPкорпусеОни также доступны в небольшом корпусе (SO-16).Рис.16 Микросхема ULN2003 в корпусе SO-16Особенности конструкции:Семь Дарлингонов на корпусВыходной ток 500 мА на драйвер (пик 600 мА)Выходное напряжение 50 ВИнтегрированные подавляющие диоды для индуктивных нагрузокВыходы могут быть параллельны для более высокого токаВходы TTL / CMOS / PMOS / DTLВходы расположены напротив выходов, чтобы упростить компоновкуДля использования микросхемы можно использовать готовый драйвер.1.4 ФУНКЦИОНАЛЬНАЯ СХЕМА УСТРОЙСТВАФункциональная схема устройства состоит из нескольких блоков.Контроллер шагового двигателя, плата ArduinoДрайвер шагового двигателяШаговый двигательРис.17 Функциональная схема1.5 ПРИНЦИПИТАЛЬНАЯ СХЕМА УСТРОЙСТВАОкончательная принципиальная схема устройства будет иметь следующий видРис.18 Принциписальная схема устройства2 РАЗРАБОТКА ПРОГРАММНОЙ ЧАСТИУстройство стабилизации намотки троса работает по следующему принципу. Электропривод намотки осуществляется шаговый двигателем. Стабилизация вращения барабана осуществляется за счет потенциометра, который механически связан с тросом.В зависимости от натяжения троса регулируется скорость вращения барабана. Алгоритм работы работает в бесконечном цикле, в котором осуществляется проверка натяжения троса, и в зависимости от натяжения производится коррекция скорости. Скоростьбарабана задается переменным резистором R2, а корректировка скорости в зависимости от натяжения задается резистором R1. Резисторы включены последовательно.Рис.19 Блок-схема алгоритмаПрограмма для микроконтроллера, написана в среде разработки Arduinoна языкеC.Рис.20 Среда разработки ArduinoВ программе использована стандартная библиотека для работы с шаговыми двигателями Stepper.h. Данная библиотека позволяет программировать работу шагового двигателя наиболее простым способом.Эта библиотека позволяет управлять униполярными и биполярными шаговыми двигателями. Функции:Stepper (steps, pin1, pin2)Stepper (steps, pin1, pin2, pin3, pin4)setSpeed (rpm)step (steps)Stepper (steps, pin1, pin2)Stepper (steps, pin1, pin2, pin3, pin4)Описание: Эта функция создает новый класс, который определяет подключение шагового двигателя к платформе Arduino. Поместите ее в начало скетча, до функций setup () и loop (). Число параметров зависит от подключения вашего двигателя к плате — посредством двух или четырех проводов.Параметры:steps: Число шагов на один оборот вашего двигателя. Если вам известен угол поворота на один шаг, разделите 360 на этот угол и получите количество шагов на оборот. (int) pin1, pin2: два провода, подключенные к двигателю (int) pin3, pin4: опционально: два последних провода, если мотор подключен посредством 4-х проводов (int) Возвращает:новый объект класса Stepper.Пример:Stepper myStepper = Stepper (100, 5, 6);Stepper: setSpeed (rpms)Описание:Устанавливает частоту вращения шагового двигателя в оборотах в минуту.Для установки количества шагов используйте функцию step (). Параметры:rpms: скорость, с которой двигатель должен вращаться в оборотах в минуту — положительное число (long)Stepper: step (steps)Описание:Устанавливает определенное количество шагов мотора, со скоростью, определенную функцией setSpeed (). Эта функция блокиреует работу программы до завершения движения ротора. Например, вы установили скорость 1об/мин и 100 шагов для 100-шагового двигателя. В результате этого функция будет выполняться целую минуту. Для лучшего контроля, устанавливайте большую частоту вращения и двигайтесь на малое количество шагов.Параметры:steps: число шагов мотора — положительное число для одного направления, отрицательное — для другого. (int)Программа составлена с учетом алгоритма представленного на рис. 19, в программе производится считывание значения потенциометра и задание скорости в соответствии с отклонением натяжения троса.Исходный код:// подключаембиблиотекуStepper#include // количество шагов, которое выолняет мотор за один оборотconstintstepsPerRevolution = 200; // инициализируем библиотеку Stepper на контактах 8, 9, 10 и 11SteppermyStepper(stepsPerRevolution, 8, 9, 10, 11);// количество шагов, которые сделал моторintstepCount = 0; voidsetup() {}void loop() {// считываем значение потенциометра:intsensorReading = analogRead(A0); // подгоняем считанное значение под диапазон от «0» до «100»:intmotorSpeed = map(sensorReading, 0, 1023, 0, 100); // задаемскоростьмотора:myStepper.setSpeed(motorSpeed); // одинполныйоборотвпередmyStepper.step(stepsPerRevolution);}ЗАКЛЮЧЕНИЕВ курсовом проекте была представлена разработка системы стабилизациинамотки троса с применением шагового двигателя на ардуино.В процессе работы были получены знания и навыки по работе с шаговыми двигателями их подключением. Также были получены знания по программированию микроконтроллеров на платформе Arduino.СПИСКОК ЛИТЕРАТУРЫ1.Ардуино [Электронный ресурс]. – Режим доступа: http://arduino.ru/2.Ардуино [Электронный ресурс]. – Режим доступа: https://ru.wikipedia.org/wiki/Arduino 3.А. В. Кравченко. 10 практических устройств на AVR-микроконтроллерах, 2014.[Текст] — 340 с.4.УллиСоммер. Программирование микроконтроллерных плат Arduino/Freeduino. БХВ-Петербург; 2012 г.,[Текст] 256 стр.

СПИСКОК ЛИТЕРАТУРЫ

1. Ардуино [Электронный ресурс]. – Режим доступа: http://arduino.ru/
2. Ардуино [Электронный ресурс]. – Режим доступа: https://ru.wikipedia.org/wiki/Arduino
3. А. В. Кравченко. 10 практических устройств на AVR-микроконтроллерах, 2014. [Текст] — 340 с.
4. Улли Соммер. Программирование микроконтроллерных плат Arduino/Freeduino. БХВ-Петербург; 2012 г., [Текст] 256 стр.

Вопрос-ответ:

Что такое система стабилизации намотки троса?

Система стабилизации намотки троса - это устройство, которое предназначено для поддержания натяжения и равномерной намотки троса при его использовании.

Как работает система стабилизации намотки троса с применением шагового двигателя на ардуино?

Система использует шаговый двигатель и контроллер Arduino для контроля натяжения и намотки троса. Шаговый двигатель перемещает намотку троса в нужном направлении, а Arduino контролирует скорость вращения и положение двигателя, чтобы обеспечить стабильное натяжение и равномерную намотку.

Как выбрать подходящий шаговый двигатель для системы стабилизации намотки троса?

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

Как выбрать подходящий контроллер для системы стабилизации намотки троса?

Выбор контроллера зависит от требований к функциональности и возможностям программирования. Arduino является популярным выбором благодаря своей простоте использования и широкому сообществу разработчиков.

Как выбрать подходящий драйвер шагового двигателя для системы стабилизации намотки троса?

Выбор драйвера шагового двигателя зависит от требований к току, поддерживаемым режимам работы, защите от перегрузок и другим параметрам. Некоторые популярные драйверы включают в себя A4988 и DRV8825.

Что такое система стабилизации намотки троса с применением шагового двигателя?

Система стабилизации намотки троса с применением шагового двигателя - это устройство, которое использует шаговый двигатель для автоматической стабилизации намотки троса. Она позволяет контролировать и регулировать натяжение троса при его намотке на бобину или катушку.

Как выбрать шаговый двигатель для системы стабилизации намотки троса?

При выборе шагового двигателя для системы стабилизации намотки троса необходимо учитывать несколько факторов. Важно определить требуемый крутящий момент, скорость вращения и разрешение шагового двигателя. Также следует учесть размеры и вес самого двигателя, чтобы он подходил для конкретной конструкции системы.

Как выбрать контроллер для системы стабилизации намотки троса?

При выборе контроллера для системы стабилизации намотки троса важно учитывать такие факторы, как поддержка шаговых двигателей, количество доступных портов ввода-вывода, наличие аналоговых и цифровых входов, а также возможность программирования и настройки контроллера. Рекомендуется использовать Arduino, так как она предоставляет все необходимые возможности для реализации данной системы.

Как выбрать драйвер шагового двигателя для системы стабилизации намотки троса?

Для выбора драйвера шагового двигателя для системы стабилизации намотки троса следует учитывать требуемое напряжение и ток, поддерживаемые драйвером. Также важно обратить внимание на возможность микрошагового режима работы, который обеспечивает более плавное и точное движение двигателя. Некоторые популярные драйверы для Arduino включают A4988 и DRV8825.

Как разработать программную часть системы стабилизации намотки троса?

Для разработки программной части системы стабилизации намотки троса необходимо использовать Arduino IDE или другую среду разработки, поддерживающую Arduino. В программе нужно реализовать алгоритм управления двигателем, который будет контролировать натяжение троса и поддерживать его на заданном уровне. Можно использовать различные библиотеки для работы с шаговыми двигателями, такие как AccelStepper или Stepper.

Что такое система стабилизации намотки троса?

Система стабилизации намотки троса - это устройство, которое позволяет автоматически регулировать наматывание троса на катушку с помощью шагового двигателя и контроллера Arduino.

Как выбрать шаговый двигатель для системы стабилизации намотки троса?

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