реклама на сайте
подробности

 
 
> Обработка 3х фотоимпульсных датчиков, частота 300 Гц максимум, Нужны либо внешние таймеры, либо 3 в МК, 16 бит
haker_fox
сообщение Aug 2 2007, 06:53
Сообщение #1


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



Здравствуйте! Имеется три фотоимпулсьных датчика (оптопара, которая перекрывается вращаемой крыльчаткой), частота импульсов с каждого в пределе достигает 300 Гц. Их нужно опрашивать в реальном времени, в момент начала вращения двигателя, следя за кол-вом импульсов и т.о. измерять пройденное расстояние. По моим прикидкам, раз за 1 сек. датчик дает примерно 300 импульсов, а часть робота движется от одной крайней точки к другой около 10 сек, соответсвено за это время мы насчиатаем 3000 импульсов, и для хранения этого числа нужно не менее 12 бит (округилим до 16). ATmega16(32), которую планируем использовать для управления, имеет один такой таймер, да и тот занят под PWM. В принципе можно и задействоать 8 битный таймер, дополнив его программным счетчиком, но дачтика 3. Что можете посоветовать в этой ситуации?
Пока мои идеи:
1. найти соотв. МК (например ATmega1281), у которого 4 16-битных таймера, но это дорого...
2. использовать внешние мсх таймеров, с которых можно считывать значение по шине I2C или подобной. Есть ли такие в природе?
3. Парсить все три датчика программно, но это займет много времени МК, учитывая, что на нем еще крутиться ОС scmRTOS.
Прошу прощения за немного сумбурный стиль изложения.


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
skn
сообщение Aug 2 2007, 08:29
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 31
Регистрация: 20-03-06
Пользователь №: 15 416



Как то я про три датчика упустил. Таймеры, если и есть, то наверняка будут проблемы с покупкой. Можно использовать ПЛИС, но дешевле, наверное, контроллер пожирнее поставить.
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Aug 2 2007, 08:50
Сообщение #3


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



Цитата(skn @ Aug 2 2007, 16:29) *
Как то я про три датчика упустил. Таймеры, если и есть, то наверняка будут проблемы с покупкой. Можно использовать ПЛИС, но дешевле, наверное, контроллер пожирнее поставить.

Видимо действительно придется ставить жирный МК.. С плис не умею работать( Осваивать некогда... времени в обрез... На крайний случай думаю поставить дешевые at90s2313 на управление каждым движком. В роботе, который модернизирую, 3 "сложных звена", состоящих из: двигателя, двух концевиков, фотоимпульсника и электромагнитного тормоза. Так вот, бросить на каждый такой набор по одному МК... и свзать их с главным МК по I2C. Главному МК еще останеться управлять двигателем поворота робота (там только два крайних положения), схватами + разруливать работу трех первых МК, держать свзять с ПК и пультом ручного управления. Хотя не очень-то мне этот вариант и нравиться, уж чего чего , а МК не нужно плодить в системе (ИМХО).Смотрю в сторону ATmega1281 или ATmega2561, но хватит ли производительности одного кристалла? К сожалению, не знаю как расчитать... Осваивать более мощный МК опять же время не позволяет...


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
superbizzon
сообщение Aug 2 2007, 09:05
Сообщение #4


Участник
*

Группа: Новичок
Сообщений: 32
Регистрация: 28-04-05
Пользователь №: 4 592



Цитата(haker_fox @ Aug 2 2007, 12:50) *
Смотрю в сторону ATmega1281 или ATmega2561, но хватит ли производительности одного кристалла? К сожалению, не знаю как расчитать... Осваивать более мощный МК опять же время не позволяет...


Хватит и ещё запас останется... на самом деле задачкато так се и огород с несколькими МК городить точно не сотоит... и всвязи с этимже непонятно - а зачем ОС там?
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Aug 2 2007, 09:10
Сообщение #5


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



Цитата(superbizzon @ Aug 2 2007, 17:05) *
Хватит и ещё запас останется... на самом деле задачкато так се и огород с несколькими МК городить точно не сотоит... и всвязи с этимже непонятно - а зачем ОС там?

Многозадачность так или иначе понадобиться: задач несколько (управление двигателями, опрос датчиков, связь с ПК, связь с пультом ручн. управления). scmRTOS надежно себя показала в управлении другого робота! Огромнейшее спасибо уважаемому dxp за сей продукт!


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
superbizzon
сообщение Aug 2 2007, 09:22
Сообщение #6


Участник
*

Группа: Новичок
Сообщений: 32
Регистрация: 28-04-05
Пользователь №: 4 592



Цитата(haker_fox @ Aug 2 2007, 13:10) *
Многозадачность так или иначе понадобиться: задач несколько (управление двигателями, опрос датчиков, связь с ПК, связь с пультом ручн. управления). scmRTOS надежно себя показала в управлении другого робота! Огромнейшее спасибо уважаемому dxp за сей продукт!

Хм... у меня вот обычно в девайсах тоже многозадачность, но както никогда не возникало даже позывов использовать какуюнить ОС, всегда и так было понятно как делать.... хотя канешно в любом случае интересно посмотреть что за зверь - не подскажете где взять/почитать? smile.gif
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Aug 3 2007, 01:25
Сообщение #7


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



Цитата(superbizzon @ Aug 2 2007, 17:22) *
Хм... у меня вот обычно в девайсах тоже многозадачность, но както никогда не возникало даже позывов использовать какуюнить ОС, всегда и так было понятно как делать.... хотя канешно в любом случае интересно посмотреть что за зверь - не подскажете где взять/почитать? smile.gif

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

Цитата(Igor26 @ Aug 2 2007, 19:04) *
А все три датчика одновременно работают?

Эта ситуация не исключена.

Цитата(SpyBot @ Aug 2 2007, 20:24) *
А планируется ли дребезг?

Как я понял большинство (или все?) фотоимпульсники дребезжат... Сегодня хочу провести испытание, завести выход датчика на МК и посчитать кол-во импульсов за одно и тоже расстояние, пройденное элементом робота. На осциллографе вроде был чистый меандр... Но страховка не помешает.

Цитата(=GM= @ Aug 2 2007, 22:21) *
А что если под задачи управления двигателями и, соответственно, опрос датчиков выделить отдельный мелконогий МК, скажем, какую-нибудь тайни 8-ми ногую. Тогда операционка полностью разгрузится от деталей управления, только глобальные команды, типа "ноге 2 продвинуться на 10 см".

Вчера вечером подумал, и окончательно пришел к тому же выводу. Мне так удобнее по нескольким причинам...
Тем более начальство требует запуска робота к сентябрю - октябрю.
Цитата(=GM= @ Aug 2 2007, 22:21) *
(Валяется у меня дома один робот с УЗ обзором, руки так и чешутся его запустить...жалко времени не хватает.)

У меня промышленный робот, предназначенный для обслуживания токарного станка с ЧПУ smile.gif

Цитата(bodja74 @ Aug 3 2007, 05:17) *
Не нужно никакого крутого контроллера

Говорилось о жирном МК smile.gif У которого не менее трех 16 битных таймеров и куча ног.
Цитата(bodja74 @ Aug 3 2007, 05:17) *
все эти задачи я года полтора решил на тини2313

Для моего случая это не подходит. У меня робот двигается в трехмерной системе координат. Для обслуживания каждой координаты требуется:
1. Линия для включения двигателя.
2. Линия для управления направленим движения.
3. Линия для PWM модуляции.
4. Две линии для двух концевиков крайних положений + еще одна для фотоимпульсника.
5. Одна линия для управления тормозом.
Итого 7 линий. При трех координатах имеет 21 линию. А еще есть другие датчики и один двигатель на поворот базы робота, где не требудется управление скоростью.
Значит тини уже не подходит. Потому-то речь и шла о жирном МК.
Цитата(bodja74 @ Aug 3 2007, 05:17) *
,правда пришлось буквально трамбовать в нее код ,у меня только обслуживание протокола сьел 70% памяти программы ,думаю мега48 или 88 в самый раз.

Трамбовка кода это на мой взгляд звучит не серьезно. Есть написание программы, затем ее оптимизация. Я стараюсь брать МК с запасом по ресурсам на 50% больше.
Цитата(bodja74 @ Aug 3 2007, 05:17) *
Если потребуется более детальное описание алгоритма регулировки оборотов двигателей ,пишите на личку.Протокол я думаю для вас - это уже дело техники

Спасибо, но с PWM модуляцией мы вроде разобрались smile.gif


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
bodja74
сообщение Aug 5 2007, 17:03
Сообщение #8


Знающий
****

Группа: Свой
Сообщений: 543
Регистрация: 22-10-05
Пользователь №: 9 984



Цитата(haker_fox @ Aug 3 2007, 04:25) *
Для моего случая это не подходит. У меня робот двигается в трехмерной системе координат. Для обслуживания каждой координаты требуется:
1. Линия для включения двигателя.
2. Линия для управления направленим движения.
3. Линия для PWM модуляции.
4. Две линии для двух концевиков крайних положений + еще одна для фотоимпульсника.
5. Одна линия для управления тормозом.
Итого 7 линий. При трех координатах имеет 21 линию. А еще есть другие датчики и один двигатель на поворот базы робота, где не требудется управление скоростью.
Значит тини уже не подходит. Потому-то речь и шла о жирном МК.

1 Сделано
2 Сделано
3 Сделано
4 Концевиков нет ,считается по фотоимпульсам
5 Сделано

Все это для двух двигателей и поворотной платформы. smile.gif + по 485 клонируем до 128 таких модулей smile.gif
Цитата
Трамбовка кода это на мой взгляд звучит не серьезно. Есть написание программы, затем ее оптимизация. Я стараюсь брать МК с запасом по ресурсам на 50% больше.

Я знаю .Щас прислали железку на меге64 ,трамбовать точно не прийдется .
Цитата
Спасибо, но с PWM модуляцией мы вроде разобрались smile.gif

Я не про ШИМ ,а про стабилизацию оборотов хотя бы на 10 разных скоростях ,ну да ладно smile.gif
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Aug 6 2007, 02:24
Сообщение #9


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



Цитата(bodja74 @ Aug 6 2007, 01:03) *
4 Концевиков нет ,считается по фотоимпульсам

В моем случае они нужны. Один, как минимум, для определения нулевого положения звена.
Цитата(bodja74 @ Aug 6 2007, 01:03) *
Я не про ШИМ ,а про стабилизацию оборотов хотя бы на 10 разных скоростях ,ну да ладно smile.gif

Простите, просто не понял Вас. Думаю, что стабилизация скорости вращения не очень сложный вопрос. Хотя как знать...


--------------------
Выбор.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- haker_fox   Обработка 3х фотоимпульсных датчиков, частота 300 Гц максимум   Aug 2 2007, 06:53
- - superbizzon   ябы использовал INTы.... настало прерывание - +1 в...   Aug 2 2007, 07:13
- - skn   Можно использовать 8-ми битный таймер. Настроить п...   Aug 2 2007, 07:23
|- - haker_fox   Цитата(skn @ Aug 2 2007, 15:23) Можно исп...   Aug 2 2007, 08:15
|- - Igor26   Цитата(haker_fox @ Aug 2 2007, 12:15) сущ...   Aug 2 2007, 08:32
|- - aesok   Цитатаябы использовал INTы.... настало прерывание ...   Aug 2 2007, 08:44
|- - defunct   Цитата(haker_fox @ Aug 2 2007, 11:15) Вид...   Aug 9 2007, 12:54
|- - alexander55   Цитата(defunct @ Aug 9 2007, 16:54) Может...   Aug 9 2007, 13:07
|||- - alexander55   Цитата(haker_fox @ Aug 6 2007, 05:24) В м...   Aug 7 2007, 07:47
|||- - haker_fox   Цитата(alexander55 @ Aug 7 2007, 15:47) Я...   Aug 8 2007, 00:27
|||- - alexander55   Цитата(haker_fox @ Aug 8 2007, 04:27) Как...   Aug 9 2007, 05:44
|||- - haker_fox   To alexander55: Большое спасибо за приведенный при...   Aug 10 2007, 02:03
||- - evgeny_ch   Цитата(haker_fox @ Aug 3 2007, 04:25) Как...   Aug 9 2007, 08:52
|- - =GM=   Цитата(haker_fox @ Aug 2 2007, 08:10) Мно...   Aug 2 2007, 14:21
|- - bodja74   Цитата(haker_fox @ Aug 2 2007, 12:10) Мно...   Aug 2 2007, 21:17
- - _artem_   Согласен с superbizzon, используйте 3 ИНТх . В обр...   Aug 2 2007, 09:50
- - Igor26   А все три датчика одновременно работают?   Aug 2 2007, 11:04
- - SpyBot   А планируется ли дребезг?   Aug 2 2007, 12:24
- - oran-be   300 Гц - это необходим опрос с частотой > 600Гц...   Aug 3 2007, 04:58
- - SpyBot   Бывают датчики, которые ещё и реагируют на, наприм...   Aug 3 2007, 09:11
|- - =GM=   Цитата(SpyBot @ Aug 3 2007, 08:11) Тут ин...   Aug 3 2007, 10:37
- - kolobok0   Цитата(haker_fox @ Aug 2 2007, 10:53) Здр...   Aug 9 2007, 14:54
- - bodja74   Вот нашел ,где лежат мои художества http://techn...   Aug 10 2007, 10:29
- - haker_fox   Цитата(bodja74 @ Aug 10 2007, 19:29) Вот ...   Aug 13 2007, 00:06


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd June 2025 - 04:37
Рейтинг@Mail.ru


Страница сгенерированна за 0.01468 секунд с 7
ELECTRONIX ©2004-2016