roboforum.ru

Технический форум по робототехнике.
Текущее время: 26 ноя 2024, 19:16

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




Начать новую тему Ответить на тему  [ Сообщений: 17 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: AVR, нужен USB+ШИМ в одном мк, как быть?
СообщениеДобавлено: 02 июн 2013, 02:50 
Не в сети
Аватара пользователя

Зарегистрирован: 01 май 2011, 01:15
Сообщения: 81
Добрый день. Ищу решение задачи, подскажите если есть инфа.

Надо создать контроллер, который постоянно опрашивает USB порт ПК в ожидании команд и еще чтобы он генерировал постоянно ШИМ в то же время, т.е. ставил порты на 1 и 0 в определенных интервалах. Прошивку USB установил, она в цикле опрашивает ПК в ожидании пакета. Как приходит пакет - выполняется программа. И теперь надо на фоне этого всего чтобы работала еще программа выставляющая ШИМ сигнал (0/1 с интервалами) на большом количестве линий. Какое здесь решение наиболее оптимально? Варианты возможные у меня такие:

1) поставить многозадачную ОС, типа http://www.freertos.org/ (не пользовался, подойдет ли и ее брать или другое что?)
2) включить аппаратный ШИМ и копировать его состояние на нужные линии (получится или нет хз)
3) замерить количество тактов на опрос USB и уменьшить интервалы ШИМ на это число (как это сделать хз)
4) поставить 2 контроллера (не хочу так)
5) проверить инфу о ватчдоге и прерываниях, может на них что-то можно замутить подобное

Что можете посоветовать?

_________________
OpenRobo.ru роботы для производства. Открытые проекты.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR, нужен USB+ШИМ в одном мк, как быть?
СообщениеДобавлено: 02 июн 2013, 03:06 
Не в сети
Аватара пользователя

Зарегистрирован: 18 апр 2009, 22:18
Сообщения: 10668
пока вы не уточните, что под этим
iburo писал(а):
и еще чтобы он генерировал постоянно ШИМ в то же время, т.е. ставил порты на 1 и 0 в определенных интервалах.
...
на большом количестве линий.

подразумевается, помочь вам смогут максимум тыкнув пальцем в небо.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR, нужен USB+ШИМ в одном мк, как быть?
СообщениеДобавлено: 02 июн 2013, 03:11 
Не в сети
Аватара пользователя

Зарегистрирован: 01 май 2011, 01:15
Сообщения: 81
Angel71 писал(а):
пока вы не уточните, что под этим
iburo писал(а):
и еще чтобы он генерировал постоянно ШИМ в то же время, т.е. ставил порты на 1 и 0 в определенных интервалах.
...
на большом количестве линий.

подразумевается, помочь вам смогут максимум тыкнув пальцем в небо.


нужно, чтобы выполнялась программа - поставить 1 на 200 тактов, поставить 0 на 100 тактов, например. ставится на портах. на фоне этой программы еще идет опрос USB, откуда приходят инструкции от ПК.

Добавлено спустя 2 минуты 36 секунд:
вот это устройство http://openrobo.ru/control/driver
надо чтобы был 1 контроллер, а там сейчас 2

_________________
OpenRobo.ru роботы для производства. Открытые проекты.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR, нужен USB+ШИМ в одном мк, как быть?
СообщениеДобавлено: 02 июн 2013, 08:43 
Не в сети
Аватара пользователя

Зарегистрирован: 10 дек 2010, 13:16
Сообщения: 4995
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей
Устройство не может опрашивать порт ЮСБ компьютера, а значит тебе надо разбираться со всякими эндпоинтами и ЮСБ-дескрипторами. Установка шима - задача тривиальнейшая по сравнению с запуском ЮСБ. Соответственно, после того, как ты разобрался как работает ЮСБ, написал прошивку для МК, поставил драйвера, написал софт для компа, ты просто в прерывании запускаешь нужный шим.

_________________
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR, нужен USB+ШИМ в одном мк, как быть?
СообщениеДобавлено: 02 июн 2013, 14:13 
Не в сети
Аватара пользователя

Зарегистрирован: 01 май 2011, 01:15
Сообщения: 81
dccharacter писал(а):
Устройство не может опрашивать порт ЮСБ компьютера, а значит тебе надо разбираться со всякими эндпоинтами и ЮСБ-дескрипторами. Установка шима - задача тривиальнейшая по сравнению с запуском ЮСБ. Соответственно, после того, как ты разобрался как работает ЮСБ, написал прошивку для МК, поставил драйвера, написал софт для компа, ты просто в прерывании запускаешь нужный шим.


С этим уже разобрался, все программы есть http://openrobo.ru/control/usb сделал на V-USB, USB работает и в цикле программа опрашивает нет ли пакета с ПК. А шим не удалось включить на том же контроллере, только на другом. Тоже думал насчет прерываний, надо будет изучить их получше.

_________________
OpenRobo.ru роботы для производства. Открытые проекты.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR, нужен USB+ШИМ в одном мк, как быть?
СообщениеДобавлено: 02 июн 2013, 16:30 
Не в сети
Аватара пользователя

Зарегистрирован: 10 дек 2010, 13:16
Сообщения: 4995
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей
iburo писал(а):
dccharacter писал(а):
Устройство не может опрашивать порт ЮСБ компьютера, а значит тебе надо разбираться со всякими эндпоинтами и ЮСБ-дескрипторами. Установка шима - задача тривиальнейшая по сравнению с запуском ЮСБ. Соответственно, после того, как ты разобрался как работает ЮСБ, написал прошивку для МК, поставил драйвера, написал софт для компа, ты просто в прерывании запускаешь нужный шим.


С этим уже разобрался, все программы есть http://openrobo.ru/control/usb сделал на V-USB, USB работает и в цикле программа опрашивает нет ли пакета с ПК. А шим не удалось включить на том же контроллере, только на другом. Тоже думал насчет прерываний, надо будет изучить их получше.

Стоп
Не надо прерываний
Ты в цикле смотришь, есть ли пакет
Если пакет есть - включаешь шим. Все.

_________________
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR, нужен USB+ШИМ в одном мк, как быть?
СообщениеДобавлено: 02 июн 2013, 23:43 
Не в сети
Аватара пользователя

Зарегистрирован: 01 май 2011, 01:15
Сообщения: 81
dccharacter писал(а):
Стоп
Не надо прерываний
Ты в цикле смотришь, есть ли пакет
Если пакет есть - включаешь шим. Все.


При этом надо продолжать смотреть пакеты и чтобы шим был включен. Аппаратный шим если подходит, то только при условии его копирования на множество линий, на счет этого точно не уверен, возможно ли.

_________________
OpenRobo.ru роботы для производства. Открытые проекты.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR, нужен USB+ШИМ в одном мк, как быть?
СообщениеДобавлено: 03 июн 2013, 01:20 
Не в сети
Аватара пользователя

Зарегистрирован: 10 дек 2010, 13:16
Сообщения: 4995
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей
Почитай даташит и посмотри, хватает ли тебе хардовых шимов.

_________________
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR, нужен USB+ШИМ в одном мк, как быть?
СообщениеДобавлено: 03 июн 2013, 02:36 
Не в сети
Аватара пользователя

Зарегистрирован: 01 май 2011, 01:15
Сообщения: 81
dccharacter писал(а):
Почитай даташит и посмотри, хватает ли тебе хардовых шимов.


не хватает, их мало (1-2, а надо 16). есть возможный вариант когда 1 апаратный шим копируется на множество линий, но тоже не понятно получится ли это

_________________
OpenRobo.ru роботы для производства. Открытые проекты.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR, нужен USB+ШИМ в одном мк, как быть?
СообщениеДобавлено: 03 июн 2013, 02:40 
Не в сети
Аватара пользователя

Зарегистрирован: 10 дек 2010, 13:16
Сообщения: 4995
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей
тогда прерывания. Но мне кажется ты V-USB поломаешь. Он же наверняка сидит на куче прерываний.

_________________
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR, нужен USB+ШИМ в одном мк, как быть?
СообщениеДобавлено: 03 июн 2013, 06:00 
Не в сети
Аватара пользователя

Зарегистрирован: 01 май 2011, 01:15
Сообщения: 81
dccharacter писал(а):
тогда прерывания. Но мне кажется ты V-USB поломаешь. Он же наверняка сидит на куче прерываний.


его функционирование может нарушится. прерывания есть, только не проверял еще, прокатит думаю, но могут быть проблемы и искажения шима. возможно прийдется брать контроллер со встроенным USB. или как-то считать такты в программе надо

_________________
OpenRobo.ru роботы для производства. Открытые проекты.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR, нужен USB+ШИМ в одном мк, как быть?
СообщениеДобавлено: 03 июн 2013, 10:18 
Не в сети
Аватара пользователя

Зарегистрирован: 15 ноя 2009, 13:37
Сообщения: 750
Откуда: Porto Franco "Odessa"
под ваши задачи надо контроллер менять .... или включать спец микруху со множеством шимов....точности не будет в вашей реализации , хотя я не увидел данных по частоте проца и по требованиям к самому шиму....

_________________
die Wahrheit ist irgendwo da draußen


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR, нужен USB+ШИМ в одном мк, как быть?
СообщениеДобавлено: 03 июн 2013, 11:55 
Не в сети
Аватара пользователя

Зарегистрирован: 01 май 2011, 01:15
Сообщения: 81
Romikgy писал(а):
под ваши задачи надо контроллер менять .... или включать спец микруху со множеством шимов....точности не будет в вашей реализации , хотя я не увидел данных по частоте проца и по требованиям к самому шиму....


можно второй поставить контроллер такой же с другой программой и так щас и работает - 2 контроллера стоят, но есть недостаток - по 8 линий надо на 1 двигатель, если бы был 1 контроллер, то надо было бы всего 4 и можно подключить достаточное количество. шим уже реализован отдельно, 25 кГц часота ШИМ, частота проца 12 МГЦ

_________________
OpenRobo.ru роботы для производства. Открытые проекты.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR, нужен USB+ШИМ в одном мк, как быть?
СообщениеДобавлено: 04 июн 2013, 06:22 
Не в сети
Аватара пользователя

Зарегистрирован: 15 сен 2007, 13:03
Сообщения: 6338
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович
ATxmega128A1U 18 аппаратных ШИМ...

_________________
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AVR, нужен USB+ШИМ в одном мк, как быть?
СообщениеДобавлено: 04 июн 2013, 07:56 
Не в сети
Аватара пользователя

Зарегистрирован: 01 май 2011, 01:15
Сообщения: 81
Duhas писал(а):
ATxmega128A1U 18 аппаратных ШИМ...


спс, это может быть полезно.
подумав немного принял решение делать на прерывании по таймеру счетчику. USB работает на одном прерывании, а установка шима на линиях на другом - по таймеру счетчику. и настроить еще таймер счетчик с подпрограммой обработки прерывания. думаю так получится хорошо, проверю этот вариант.

_________________
OpenRobo.ru роботы для производства. Открытые проекты.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 17 ]  На страницу 1, 2  След.

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


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

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


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

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