roboforum.ru

Технический форум по робототехнике.


Восемь ШИМ на PIC

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

Восемь ШИМ на PIC

Сообщение Romeo » 04 фев 2009, 16:14

Добрый день!!!

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

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

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

Re: Восемь ШИМ на PIC

Сообщение EdGull » 04 фев 2009, 16:20

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

Re: Восемь ШИМ на PIC

Сообщение =DeaD= » 04 фев 2009, 16:21

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

Re: Восемь ШИМ на PIC

Сообщение zubr » 04 фев 2009, 16:26

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

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

а по делу - делай одним шимом(таймером) но в разное время для разных каналов - 50 герц успеешь.
За здравый смысл у нас принимается мнение большинства.
zubr
 
Сообщения: 431
Зарегистрирован: 20 ноя 2008, 19:31
Откуда: Чернобыль
прог. языки: асмемблер
ФИО: Валентин Семенович

Re: Восемь ШИМ на PIC

Сообщение Romeo » 04 фев 2009, 16:28

По поводу ШИМ:
формировал с помощью 2-х таймеров, один задаёт период, а второй кратность длины импульса. Но вышло как-то коряво. Скважность не соответствует требуемой. Может кто использовал алгоритм построения ШИМ?

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

Re: Восемь ШИМ на PIC

Сообщение avr123.nm.ru » 04 фев 2009, 16:31

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


Для этого можно использовать таймер. Вот пример как это сделано для AVR - 8 servo управляются одним таймером - http://avr123.nm.ru/z13.htm
Вы можете аналогично сделать для PIC или AVR использовать - он дешевле обычно.
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва
Предупреждения: -8

Re: Восемь ШИМ на PIC

Сообщение boez » 04 фев 2009, 17:33

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

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

Re: Восемь ШИМ на PIC

Сообщение Romeo » 08 фев 2009, 13:54

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

Re: Восемь ШИМ на PIC

Сообщение zubr » 08 фев 2009, 13:56

За здравый смысл у нас принимается мнение большинства.
zubr
 
Сообщения: 431
Зарегистрирован: 20 ноя 2008, 19:31
Откуда: Чернобыль
прог. языки: асмемблер
ФИО: Валентин Семенович


Вернуться в Новичкам или основы основ роботостроения.

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

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