roboforum.ru

Технический форум по робототехнике.
Текущее время: 23 июн 2025, 01:20

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: Восемь ШИМ на PIC
СообщениеДобавлено: 04 фев 2009, 16:14 
Не в сети
Аватара пользователя

Зарегистрирован: 04 фев 2009, 16:02
Сообщения: 320
Откуда: Десногорск
прог. языки: VB, MicroC, Pascal, С++ Builder
Добрый день!!!

Задача следующая:
Микруха PIC16F870 имеет только один модуль формирования ШИМ.
Нужно сформировать 8 ШИМ сигналов разной скважности, причём частота ШИМ у всех одинакова и равна 50Гц. Диапазон длительности ШИМ-импульса = 500-2500 мкс.

И ещё до кучи:
Микруха PIC16F870 имеет 10-ти канальный АЦП.
Второстепенная задача:
необходимо читать внешнее напряжение от 0 до 5 вольт.
Это самое напряжение формируется делителем напряжения состоящего из двух резисторов, причём один из них - переменный.
Сама задача:
на переменный резистор подвешен груз, который при наклоне платформы с резистором, провисая меняет его сопротивление.

Короче говоря, необходимо придумать инклинометр.
Проблема в том, что для поворота переменника необходимо приличное усилие, что не может обеспечить груз.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Восемь ШИМ на PIC
СообщениеДобавлено: 04 фев 2009, 16:20 
Не в сети
Аватара пользователя

Зарегистрирован: 28 дек 2004, 20:33
Сообщения: 10211
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович
так вопрос в чем?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Восемь ШИМ на PIC
СообщениеДобавлено: 04 фев 2009, 16:21 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Это он нам задачу поставил, типа решайте :) ладно хоть поздоровался :)

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Восемь ШИМ на PIC
СообщениеДобавлено: 04 фев 2009, 16:26 
Не в сети

Зарегистрирован: 20 ноя 2008, 19:31
Сообщения: 431
Откуда: Чернобыль
прог. языки: асмемблер
ФИО: Валентин Семенович
Romeo писал(а):
Добрый день!!!
Задача следующая:
Микруха PIC16F870 имеет только один модуль формирования ШИМ.
Нужно сформировать 8 ШИМ сигналов разной скважности, причём частота ШИМ у всех одинакова и равна 50Гц. Диапазон длительности ШИМ-импульса = 500-2500 мкс.

Исходя из того что написано будет достаточно 2х видов импульса 1000мкс и 2000 мкс +-500мкс :)
зачем шим - делай программно :)

а по делу - делай одним шимом(таймером) но в разное время для разных каналов - 50 герц успеешь.

_________________
За здравый смысл у нас принимается мнение большинства.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Восемь ШИМ на PIC
СообщениеДобавлено: 04 фев 2009, 16:28 
Не в сети
Аватара пользователя

Зарегистрирован: 04 фев 2009, 16:02
Сообщения: 320
Откуда: Десногорск
прог. языки: VB, MicroC, Pascal, С++ Builder
По поводу ШИМ:
формировал с помощью 2-х таймеров, один задаёт период, а второй кратность длины импульса. Но вышло как-то коряво. Скважность не соответствует требуемой. Может кто использовал алгоритм построения ШИМ?

По поводу переменника:
пробовал изменить его конструкцию, чтобы уменьшить трение, но тогда контакт был прохой. Может необходимо заменить чем-то другим? Или решить задачу по-другому?
Есть у кого опыт?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Восемь ШИМ на PIC
СообщениеДобавлено: 04 фев 2009, 16:31 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Romeo писал(а):
Задача следующая:
Микруха PIC16F870 имеет только один модуль формирования ШИМ.
Нужно сформировать 8 ШИМ сигналов разной скважности, причём частота ШИМ у всех одинакова и равна 50Гц. Диапазон длительности ШИМ-импульса = 500-2500 мкс.


Для этого можно использовать таймер. Вот пример как это сделано для AVR - 8 servo управляются одним таймером - http://avr123.nm.ru/z13.htm
Вы можете аналогично сделать для PIC или AVR использовать - он дешевле обычно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Восемь ШИМ на PIC
СообщениеДобавлено: 04 фев 2009, 17:33 
Не в сети

Зарегистрирован: 27 авг 2008, 10:45
Сообщения: 1981
Откуда: Харьков
прог. языки: С/С++
Romeo писал(а):
По поводу переменника:
пробовал изменить его конструкцию, чтобы уменьшить трение, но тогда контакт был прохой. Может необходимо заменить чем-то другим? Или решить задачу по-другому?
Есть у кого опыт?

Инклинометр по идее должен хорошо получиться из двух- или трехосного акселерометра (нпример типа MMA7260), он вроде недорогой и работать будет надежно в отличие от систем с грузиками.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Восемь ШИМ на PIC
СообщениеДобавлено: 08 фев 2009, 13:54 
Не в сети
Аватара пользователя

Зарегистрирован: 04 фев 2009, 16:02
Сообщения: 320
Откуда: Десногорск
прог. языки: VB, MicroC, Pascal, С++ Builder
Подумал по поводу акселерометра ADXL203. Где его можно в инете купить? Google толкового ничего не сказал


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Восемь ШИМ на PIC
СообщениеДобавлено: 08 фев 2009, 13:56 
Не в сети

Зарегистрирован: 20 ноя 2008, 19:31
Сообщения: 431
Откуда: Чернобыль
прог. языки: асмемблер
ФИО: Валентин Семенович
http://www.efind.ru/icsearch/?search=ADXL203

_________________
За здравый смысл у нас принимается мнение большинства.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 9 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO