ШИМ. Просто ШИМ

Флейм в чистом виде - все что угодно...
Но - в рамках закона :)
Arlleex
Друг Кота
Сообщения: 4435
Зарегистрирован: Сб мар 07, 2009 20:44:36

ШИМ. Просто ШИМ

Сообщение Arlleex »

Не понимаю, как реализовать на Меге 8. мне надо 9 режимов, режим 1 - 1в активное питание, 2 режим - ШИМ 2, 2В и т.д. до 9 В.

как это сделать и что надо высчитывать?
Не умеешь - не берись, но не взявшись не научишься...
Реклама
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

Для этого надо программу написать и некоторую схемку соорудить. Пример программирования ШИМ в AVR есть в задаче-упражнении 8 в моей домашней страничке. Фильтрация и преобразование напряжений - это задача-упражнение 9 в учебном курсе по AVR для начинающих с нуля.
Реклама
Аватара пользователя
SeregaT
Генеральный секретарь МЯУ
Сообщения: 18884
Зарегистрирован: Пн сен 03, 2007 18:24:27
Откуда: Россия. Омск.
Контактная информация:

Сообщение SeregaT »

Stalker46
Могу дать готовый код для меги 16 на си. Ширина импульса регулируется кнопками от 0 до 100% с выводом на LCD :)
Вложения
pwm.c
(3.91 КБ) 541 скачивание
Последний раз редактировалось SeregaT Вс июн 28, 2009 18:21:19, всего редактировалось 1 раз.
Аватара пользователя
ArtemKuchin
Поставщик валерьянки для Кота
Сообщения: 2277
Зарегистрирован: Вс апр 20, 2008 23:34:26
Откуда: Москва
Контактная информация:

Сообщение ArtemKuchin »

Ты по английски читать умеешь?

Общая идея проста: регулировать скважность ШИМа и выдавать сигнал ШИМа через фильтр нижних частот на базу транзистора, который уже управляет нагрузкой.

ФНЧ здесь будет сглаживать ШИМ и преобразовывать его в некое "плавное" напряжение. Можно сделать несколько каскадов фнч, чтобы убрать колебания почти в ноль.

Это общая идея. Как программить шим см. документацию к АВР, там все нормально сказано с примерами. Про ФНЧ см. викидепию и книжки. Про транзисторы тоже чего-нибудь смотри :)
Долой идиотизм!
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

artemm писал(а):Ты по английски читать умеешь ?
Конечно ! На русском он книг не читает, а на английском то запросто ...
Реклама
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

SeregaT писал(а): готовый код для меги 16 на си. Ширина импульса регулируется кнопками от 0 до 100% с выводом на LCD :)
о том как подключить LCD в этом варианте кода наверно трудно понять из строки

.equ __lcd_port=0x1B ;PORTA

но рисунок с толкованием есть в задаче управжнении 5 курса по AVR.
Реклама
Аватара пользователя
Пухич
Модератор
Сообщения: 4673
Зарегистрирован: Вс июн 01, 2008 00:17:35
Откуда: Я всего лишь плод вашего воображения...

Сообщение Пухич »

artemm писал(а): Общая идея проста: регулировать скважность ШИМа и выдавать сигнал ШИМа через фильтр нижних частот на базу транзистора, который уже управляет нагрузкой.
Сразу на базу? :)

Один мой знакомый помнится так делал..... И был не в восторге. :)
Знание - сила!
Аватара пользователя
SeregaT
Генеральный секретарь МЯУ
Сообщения: 18884
Зарегистрирован: Пн сен 03, 2007 18:24:27
Откуда: Россия. Омск.
Контактная информация:

Сообщение SeregaT »

ikarab писал(а):о том как подключить LCD в этом варианте кода наверно трудно понять из строки

.equ __lcd_port=0x1B ;PORTA
К чему Вы это написали? Всё там работает. Это строку CVAVR выдаёт автоматически.
Пухич писал(а):Сразу на базу? :)

Один мой знакомый помнится так делал..... И был не в восторге. :)
Тогда на затвор полевика, который может управляться логическим уровнем.
Последний раз редактировалось SeregaT Вс июн 28, 2009 18:30:54, всего редактировалось 1 раз.
Arlleex
Друг Кота
Сообщения: 4435
Зарегистрирован: Сб мар 07, 2009 20:44:36

Сообщение Arlleex »

мне надо просто подключить шим к коллекторному мотору. там даже 6 режимов хватит - первый - 5В, второй 6В, третий - 7В, четвертый - 8В, а 5 - 9В, а шестой - 10В. Пусть до 10В.

Это активное напряжение. и ФНЧ не нужен - мне мотор питать а не что то другое.
Нажимаю на кнопку - мотор с режимом 1 работает (5В), еще раз нажали - работает с (6В) вторым режимом)))
и т.д.
вот и надо ШИМ реализовать.
теперь бы узнать, как на асме писать прогу для ШИМ, я бы посмотрел суть, может быть разобрался и сое написал.
Не умеешь - не берись, но не взявшись не научишься...
Аватара пользователя
ArtemKuchin
Поставщик валерьянки для Кота
Сообщения: 2277
Зарегистрирован: Вс апр 20, 2008 23:34:26
Откуда: Москва
Контактная информация:

Сообщение ArtemKuchin »

Пухич писал(а):
artemm писал(а): Общая идея проста: регулировать скважность ШИМа и выдавать сигнал ШИМа через фильтр нижних частот на базу транзистора, который уже управляет нагрузкой.
Сразу на базу? :)

Один мой знакомый помнится так делал..... И был не в восторге. :)
Ему сойдет для начала:) Он же не сказал ЗАЧЕМ ему это. Может он светик хочет мееедлеееннооо включать :)

допорлнение:
Он успел быстрее. Ну мотор, так мотор. И ФНЧ, видишь, ненадо. НО транзистор нужон точно и лучше наверное КМОП какой-нибудь.
Последний раз редактировалось ArtemKuchin Вс июн 28, 2009 18:32:19, всего редактировалось 1 раз.
Долой идиотизм!
Аватара пользователя
saschai
Говорящий с текстолитом
Сообщения: 1596
Зарегистрирован: Вс дек 14, 2008 20:36:47
Откуда: SPb

Сообщение saschai »

ikarab писал(а):
но рисунок с толкованием есть в задаче управжнении 5 курса по AVR.
Пока ты у него там, что нибудь найдешь, насмотришься кучу рекламы, долго ржал над предложенной им ценой прошивки одного МК.
ikarab Давай прямую ссылку, а не отправляй человека бродить по дебрям своего коммерческого проекта :))
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

Stalker46 писал(а):мне надо просто подключить шим к коллекторному мотору. там даже 6 режимов хватит - первый - 5В, второй 6В, третий - 7В, четвертый - 8В, а 5 - 9В, а шестой - 10В. Пусть до 10В.
Как раз схема управления мотором и показана в начале задачи упражнения 8 в учебном курсе, про ШИМ на AVR.
Arlleex
Друг Кота
Сообщения: 4435
Зарегистрирован: Сб мар 07, 2009 20:44:36

Сообщение Arlleex »

вверху пост, зачем мне надо ШИМ использовать


а не включась светодиоды медленноооооооооооо :)))
Не умеешь - не берись, но не взявшись не научишься...
Аватара пользователя
SeregaT
Генеральный секретарь МЯУ
Сообщения: 18884
Зарегистрирован: Пн сен 03, 2007 18:24:27
Откуда: Россия. Омск.
Контактная информация:

Сообщение SeregaT »

Stalker46 писал(а):вверху пост, зачем мне надо ШИМ использовать


а не включась светодиоды медленноооооооооооо :)))
Тогда тему нужно было назвать: Включаем коллекторные электродвигатели меееедлееееенноооооо.
:)))
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

SeregaT писал(а):
ikarab писал(а):о том как подключить LCD в этом варианте кода наверно трудно понять из строки
.equ __lcd_port=0x1B ;PORTA
К чему Вы это написали ?
К тому что из этой строки нельзя определить какой КОНКРЕТНО вывод LCD нужно подключать к конкретному выводу AVR.
SeregaT писал(а):Всё там работает. Это строку CVAVR выдаёт автоматически.
Не сомневаюсь. Я ж вижу "корни" того кода - мой курс. Так что конечно работает.
Аватара пользователя
ArtemKuchin
Поставщик валерьянки для Кота
Сообщения: 2277
Зарегистрирован: Вс апр 20, 2008 23:34:26
Откуда: Москва
Контактная информация:

Сообщение ArtemKuchin »

Stalker46 писал(а):вверху пост, зачем мне надо ШИМ использовать

а не включась светодиоды медленноооооооооооо :)))
Да ф топку этот мотор, лучше включай светодиоды меедлеееннооо :)
И икарабовские уроки ф топку.

Вот на, смотри че сделать можно
http://www.artem.ru/cgi-bin/news?c=v&id=737
Долой идиотизм!
Аватара пользователя
SeregaT
Генеральный секретарь МЯУ
Сообщения: 18884
Зарегистрирован: Пн сен 03, 2007 18:24:27
Откуда: Россия. Омск.
Контактная информация:

Сообщение SeregaT »

ikarab писал(а):К тому что из этой строки нельзя определить какой КОНКРЕТНО вывод LCD нужно подключать к конкретному выводу AVR.
А зачем это? В CodeWizardAVR, когда настраиваешь LCD, написано что куда подключать.
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

SeregaT писал(а):
ikarab писал(а):К тому что из этой строки нельзя определить какой КОНКРЕТНО вывод LCD нужно подключать к конкретному выводу AVR.
А зачем это? В CodeWizardAVR, когда настраиваешь LCD, написано что куда подключать.
Правда ? Не знал об этом. Спасибо.
Аватара пользователя
SeregaT
Генеральный секретарь МЯУ
Сообщения: 18884
Зарегистрирован: Пн сен 03, 2007 18:24:27
Откуда: Россия. Омск.
Контактная информация:

Сообщение SeregaT »

ikarab писал(а):Я ж вижу "корни" того кода - мой курс. Так что конечно работает.
Вот только не совсем понятно, как это реализовать без файла m8_128.h
Аватара пользователя
ikarab
Опытный кот
Сообщения: 828
Зарегистрирован: Пн мар 16, 2009 21:40:57
Контактная информация:

Сообщение ikarab »

SeregaT писал(а):не совсем понятно, как это реализовать без файла m8_128.h
Не использовать обозначение u32

========

А куда кнопки подключены тоже мастер CVAVR показывает ?
Ответить

Вернуться в «МЯЯЯУ!»