Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: 2 ШД от 16-разрядного таймера (OCR1A & OCR1B)
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > MCS51, AVR, PIC, STM8, 8bit
ATMExpert
Народ, может кто занимался таким управлением: 2 ШД от выводов OC1x. Есть задача управлять двумя ШД независимо, т.е. по сути 2 канала. Реально на макете работает от TC0 в режиме СТС: формируются импульсы STEP для разгона и выхода на рабочую частоту вращения ШД.
Заране благодарен за любые советы.
Xenia
Цитата(ATMExpert @ Nov 20 2009, 16:50) *
Народ, может кто занимался таким управлением: 2 ШД от выводов OC1x. Есть задача управлять двумя ШД независимо, т.е. по сути 2 канала. Реально на макете работает от TC0 в режиме СТС: формируются импульсы STEP для разгона и выхода на рабочую частоту вращения ШД.
Заране благодарен за любые советы.


Скажите пожалуйста, частота вращения ваших ШД определяется частотой меандра или его скважностью? Если скажностью, то такая задача может быть решена, т.к. на одном таймере можно приготовить несколько меандров с различной скважностью. А если частотой, то дело гиблое - на одном том же таймере две частоты не создашь.
ATMExpert
конечно частотой, а иначе скважность как будет отражаться на скорости?...

Видимо придется для одного ШД использовать ТС1 (для более плавного разгона до максимально возможной скорости), а для второго ШД- ТС0/2. Собственно, тему можно дальше не продолжать...
stells
с выводов OCR1A и OCR1B разные частоты не снять никак. но и два таймера не обязательно использовать, можно и один, если добавить дополнительные счетные регистры и формировать сигналы step по значениям этих регистров
acorn
Цитата(ATMExpert @ Nov 20 2009, 16:16) *
придется для одного ШД использовать ТС1 (для более плавного разгона до максимально возможной скорости)

Если это действительно шаговые двигатели, а не синхронник какой - зачем там разгон? Как скажешь - он и шагнет, разгоняться не надо. Ты точно знаешь, что делаешь?
esaulenka
Цитата(acorn @ Nov 20 2009, 21:23) *
Если это действительно шаговые двигатели, а не синхронник какой - зачем там разгон? Как скажешь - он и шагнет, разгоняться не надо. Ты точно знаешь, что делаешь?

Ну вот бывают такие, что без разгона шаги теряют.
Производитель об этом пишет целый трактат в документации - с таблицами шагов, необходимыми токами (когда режим установится, ток в обмотках можно снизить)...
Rst7
Какая частота следования импульсов по сравнению с тактовой частотой? Если она достаточно мала, то можно просто загружать новые значения в регистры OCR в соответствующих прерываниях, таймер пусть считает без ограничения периода, и настроить ножку на переключение по событию совпадения. Т.е. код в прерывании для, например, канала А будет просто OCR1A+=HalfPeriodChanA, где HalfPeriodChanA - глобальная переменная, хранящая количество циклов таймера для половины периода меандра.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.