Visits: 793
В этой части только итог и версия 2.0 универсальной, которая позволяет управлять шаговым двигателем во всех трех режимах и 3.0 специальной библиотеки только для одного полушагового режима.
В этих библиотеках приметен метод когда данные управления шаговым двигателем собраны в массивы и в зависимости от требуемого режима используется тот или иной массив данных.
Последний режим который бы хотелось рассмотреть это полушаговый режим. В этом режиме потребление максимальное, но и мощность которую способен отдать ШД на вал также максимальна, но в нем можно использовать максимальную скорость вращения двигателем которая в предыдущих режимах недостижима. В суммарном значении из-за скорости работы общее потребление энергии может быть значительно ниже. По этой причине его рекомендуется применять на практике.
Из сканирования работы фаз шагового двигателя видно, то цикл управления фазы “как-бы” разбит на 3 части, при этом постоянно напряжение подается на один или два полюса. Это обеспечивать в такой схемотехники максимальный вращающийся момент.
Визуально управление ШД можно представить так:
Функция работы шагового двигателя для версии 2 будет выглядеть так:
void TMR2_ISR(void) { uint8_t maska; static uint8_t stepp; //------------------------------------------------------------------------------ maska = (uint8_t)(LATC&0xF0); // загрузить текущее значение регистра и очистить биты для шагового if(!steps) { LATC = maska; // PIE4bits.TMR2IE = 0; } else { if(uprlfaz==2) { if(direction) { LATC = (uint8_t)(one_and_two_phase[stepp--]|maska); // загрузить текущее значение для управления шаговым двигателем if(stepp==255)stepp=7; } else { LATC = (uint8_t)(one_and_two_phase[stepp++]|maska); // загрузить текущее значение для управления шаговым двигателем if(stepp>7)stepp=0; } } else if(uprlfaz==1) { if(direction) { LATC = (uint8_t)(two_phase[stepp--]|maska); // загрузить текущее значение для управления шаговым двигателем if(stepp==255)stepp=3; } else { LATC = (uint8_t)(two_phase[stepp++]|maska); // загрузить текущее значение для управления шаговым двигателем if(stepp>3)stepp=0; } } else { if(direction) { LATC = (uint8_t)(one_phase[stepp--]|maska); // загрузить текущее значение для управления шаговым двигателем if(stepp==255)stepp=3; } else { LATC = (uint8_t)(one_phase[stepp++]|maska); // загрузить текущее значение для управления шаговым двигателем if(stepp>3)stepp=0; } } //------------------------------------------------------------------------------ steps--; // уменьшить шаг } //------------------------------------------------------------------------------ // clear the TMR2 interrupt flag PIR4bits.TMR2IF = 0; if(TMR2_InterruptHandler) { TMR2_InterruptHandler(); } }
Файлы для загрузки V2.0
Униполярный шаговый двигатель - часть 2 (v2.0) 601.69 KB 39 downloads
* Revision history: v 2.0 * работает совместно с таймером...Для компактности и эффективности все таки стоит отказаться от универсальности и использовать только алгоритм который нужен в конкретном изделии.
Компактная версия библиотеки V3.0 – в которой используется только пошаговый режим в этом режиме есть преимущество не только в мощности, но и в скорости управления режим работы. А чем выше скорость тем тише работает двигатель (ниже вибрационный шум) и естественно падает суммарная потребляемая мощность.
Файлы для загрузки V3.0
Униполярный шаговый двигатель - часть 2 (v3.0) 598.64 KB 57 downloads
* Библиотека управления шаговым двигателем *...Это может быть интересно
- Светодиоды со встроенным драйвером WS2812BVisits: 916 Производитель http://www.world-semi.com Краткое описание продукции фирмы Каталог продукции” catcatcat_ws_19 catcatcat_ws_15 catcatcat_ws_11 catcatcat_ws_07 catcatcat_ws_03 catcatcat_ws_18 catcatcat_ws_14 catcatcat_ws_10 catcatcat_ws_06 catcatcat_ws_02 catcatcat_ws_05 catcatcat_ws_09 catcatcat_ws_13 catcatcat_ws_17 catcatcat_ws_16 catcatcat_ws_12 catcatcat_ws_08 catcatcat_ws_04 catcatcat_ws_01 This jQuery …
- Customs codes for exportVisits: 88 Митні коди (HS Code) для надсилання посилок за кордон. Для відправки товару за кордон на сьогодні необхідно зазначати митні коди. Часто визначення коду займає багато часу. Для …
- Часы + Календарь + Термометр + …Visits: 2676 Часы + Календарь + Термометр + Индикатор влажности + Секундомер + Дистанционное управление на ИК лучах (пульты на RC-5 протоколе) + Автоматическая регулировка яркости + Возможность вывода данных через USB, …
- MCC PIC24 – модуль OUTPUT COMPARE – в режиме генератора звуковых сигналовVisits: 600 При проектировании простых устройств автоматики, часто необходимо иметь механизм звукового оповещения. Самый верхний уровень, это формирование голосовых сообщений, но об этом, как то по позже… В самом примитивном …
- Защита датчиков температуры DS18B20 от статического электричестваVisits: 1809 Статья перепечатана с сайта http://svetomuzyka.narod.ru При удалении датчика на большие расстояния возникает опасность наведения импульсов высокого напряжения на кабель, который соединяет датчик с контролером. Если не принимать меры защиты, …
- Проект с использованием MCC часть 01Visits: 2485 Для изучения MCC я выбрал простой контроллер PIC16F1509. Выбор его был обусловлен богатой новой периферией которую можно изучить. Для начала была собрана схема на макетной плате Внешний вид …
- Проект с использованием MCC часть 06Visits: 1242 Изменим схему следующим образом добавим две тактовые кнопки BT1 и BT2. Теперь переключимся на конфигурацию выводов, для этого сделаем двойной клик в окне Ресурсы проекта на Pin Module. …
- Система отопления на солнечных коллекторах от Дмитрия (rv3dpi)Visits: 3179 Солнечные коллекторы для отопления в Европе используют в более 50% от общего количества установленных гелиосистем. Однако следует понимать, что гелиосистемы предназначены лишь для поддержки отопления и экономии затрат на основную …
- Часы-кухонный таймерVisits: 3925 Каждая кухня должна иметь кухонный таймер, который позволяет напоминать хозяйке когда проходить определенный промежуток времени. Например, печем пирог, варим яйца… , чтобы не смотреть постоянно на часы, установим таймер и …
- CLUBBEST-50-LightVisits: 231 CLUBBEST-50-LIGHT Зміст Короткий опис проекту. 1 Опис схемотехніки візуалізатора музики. 2 Аудіо вхід. 3 MCU. 4 Цифровий вихід. 5 Схема живлення MCU. 6 Складання пристрою. 7 Список …