roboforum.ru

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

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




Начать новую тему Ответить на тему  [ Сообщений: 36 ]  На страницу 1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: Много-процессорность
СообщениеДобавлено: 26 ноя 2007, 16:39 
Не в сети
Аватара пользователя

Зарегистрирован: 28 авг 2006, 17:09
Сообщения: 664
Откуда: Всеволожск (СПб)
прог. языки: С, C++, Python, Lua, VHDL, Verilog, Forth
ФИО: Олег Белоусов
В процессе доделки текущего робота, думаю над следующим. Дальномеры у меня уже есть. С SD разобрался. Хочу камеру какую нибудь прицепить - есть идея раскурочить web камеру, оторвав от нее USB. Ну и какое нибудь радо, например BlueTooth. Так вот - много всего получается! Текущая Mega162 точно не справится, лежащая 644 может и потянет - а вот они вместе уже точно! Хотя можно переползти на что нибудь принципиально другое - благо что на работе и ColdFire есть и ARM SAM7. Но как-то это мало паябельно моими руками. Короче решил я затеять несколько микроконтроллеров. Один на движки+энкодеры, второй на бамперы+дальномер+серва крутить "головой" и еще один центральный для обвязки всего + SD + звук. Пока обвязать думаю по SPI. Но мало представляю себе как будут работать slave - надо разбираться. Кто-что скажет? Кто нибудь такое делал?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Много-процессорность
СообщениеДобавлено: 26 ноя 2007, 18:52 
Не в сети
Мастер Самоделкин
Аватара пользователя

Зарегистрирован: 11 окт 2004, 19:20
Сообщения: 3678
Откуда: Россия, СПб
прог. языки: C/C++, Python, asm
ФИО: Курмис Александр Андреевич
Думаю имеет смысл поставить МК+ПЛИС - стандартное решение если и МК загружен и тупой переферии много... 2 МК - уже труднее, протокол надо придумывать. SPI - правильная мысль, он пожалуй самый быстрый после параллельного интерфейса. Режим работы простой как топор: есть 2 чипа, у каждого в SPDR лежит байт. После акта передачи эти байты меняются местами. Акт передачи генерит Мастер. У Слейва по завершении происходит прерывание и он может переложить куда надо полученный байт и положить туда ответ если надо.
Минусы такие: если надо читать много байт подряд - придется слать столько-же байт мусора обратно, передача работает только в обе стороны одновременно.

_________________
Ниндзя - круче всех. Они умеют ходить по воде, делить на ноль и угадывать шаффл в АйПоде.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Много-процессорность
СообщениеДобавлено: 26 ноя 2007, 20:01 
Не в сети
Аватара пользователя

Зарегистрирован: 28 авг 2006, 17:09
Сообщения: 664
Откуда: Всеволожск (СПб)
прог. языки: С, C++, Python, Lua, VHDL, Verilog, Forth
ФИО: Олег Белоусов
Про ПЛИС на работе уже поспрашивал.. есть 100-ногие, в которые даже PicoBlaze влезет ;) Но это пока не для меня. Про "мусор" в SPI тоже уже понял, на примере с SD/MMC - там так сделано... Надо докупить несколько mega8 и начать паять "слоты" ;) А "матери" поставлю 644 ;) ...хоть ШИМы буду человеческие - а то сейчас все кроме звука програмные ;) Прошивать только их муторно будет - или кабель перетыкать или "чип селект" в програмер добавлять. А можно ложить образы на SD и главный пусть сам заливает ;)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Много-процессорность
СообщениеДобавлено: 26 ноя 2007, 23:34 
Не в сети
Аватара пользователя

Зарегистрирован: 08 окт 2004, 16:43
Сообщения: 2114
Откуда: St. Petersburg
Skype: quark-bot
ФИО: Клебан Виталий
Систему можно сделать мультиагентной. Т.е. одноранговой с независимыми модулями.

_________________
Все новости о моих проектах http://savethebest.ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Много-процессорность
СообщениеДобавлено: 28 ноя 2007, 04:25 
Не в сети
Аватара пользователя

Зарегистрирован: 15 сен 2007, 13:03
Сообщения: 6338
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович
думал над организацией многопроцессорности для паучка ... там как минимум 1 камень на ногу ... мысли пришли с спи... и скорость и простота радуют .. но решил что понадобится еще 1-2 вспомогетальных линии чтобы к примеру экстренно крикнуть моску в ухо что у нас нога заклинилась или зацепилась ... и моск перестал считать овечек и занялся этой проблемой..

кстати не подскажете как лучше считать обороты энкодером в плане программной части ?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Много-процессорность
СообщениеДобавлено: 28 ноя 2007, 10:53 
Не в сети
Аватара пользователя

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Много-процессорность
СообщениеДобавлено: 28 ноя 2007, 12:02 
Не в сети
Аватара пользователя

Зарегистрирован: 28 авг 2006, 17:09
Сообщения: 664
Откуда: Всеволожск (СПб)
прог. языки: С, C++, Python, Lua, VHDL, Verilog, Forth
ФИО: Олег Белоусов
Duhas писал(а):
кстати не подскажете как лучше считать обороты энкодером в плане программной части ?


У меня сейчас внешние прерывания (на смену фронта ) - лучше ИМХО никак ;)

Добавлено спустя 1 минуту 9 секунд:
EdGull писал(а):
а что мешает мозгу постоянно опрашивать все остальные МК?


Я так и собираюсь делать ;)

Добавлено спустя 6 минут:
Вот еще обдумываю вариант с инициализацией передачи от Slave - он ведь может дрыгнуть ногой когда хочет что-то послать, а на этой ноге с стороны master сидит прерывание. А дрыгать можно тем-же "чип селектом" - что-б не плодить сущности. Изначально и на мастере и на слэйве включить его на вход, и по ходу дела переключать его когда надо на выход. Только я думаю может случиться засада если оба его на выход включат случайно. Через резюк?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Много-процессорность
СообщениеДобавлено: 28 ноя 2007, 13:03 
Не в сети
Аватара пользователя

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Много-процессорность
СообщениеДобавлено: 28 ноя 2007, 13:26 
Не в сети
Аватара пользователя

Зарегистрирован: 27 ноя 2004, 00:42
Сообщения: 3339
Откуда: совсем Москва
ФИО: Григорий
А есть еще TWI =) Там и мастеров много, и стандарт это промышленный, и арбитраж коллизий на железном уровне (когда одновременно несколько "дрыгать" начнут чем попало)

_________________
злой полицейский


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Много-процессорность
СообщениеДобавлено: 28 ноя 2007, 14:34 
Не в сети
Аватара пользователя

Зарегистрирован: 28 авг 2006, 17:09
Сообщения: 664
Откуда: Всеволожск (СПб)
прог. языки: С, C++, Python, Lua, VHDL, Verilog, Forth
ФИО: Олег Белоусов
Уточняйте где там на mega162 нет, на tiny13 тоже ;)
Хотя если ставить в центр mega644 а на переферию mega8 - тогда вытанцовывается ;)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Много-процессорность
СообщениеДобавлено: 28 ноя 2007, 14:57 
Не в сети
Аватара пользователя

Зарегистрирован: 27 ноя 2004, 00:42
Сообщения: 3339
Откуда: совсем Москва
ФИО: Григорий
Хы!И точно - в меге 162 нету! :)
Ну тада ладно :)

_________________
злой полицейский


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Много-процессорность
СообщениеДобавлено: 02 дек 2007, 21:37 
Не в сети
Аватара пользователя

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Много-процессорность
СообщениеДобавлено: 03 дек 2007, 13:24 
Не в сети
Аватара пользователя

Зарегистрирован: 28 авг 2006, 17:09
Сообщения: 664
Откуда: Всеволожск (СПб)
прог. языки: С, C++, Python, Lua, VHDL, Verilog, Forth
ФИО: Олег Белоусов
И тем более что через SPI надо прошивать модули - так что его так и так надо выводить ;)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Много-процессорность
СообщениеДобавлено: 18 дек 2007, 21:58 
Не в сети

Зарегистрирован: 10 дек 2007, 17:45
Сообщения: 29
Откуда: Москва
ИМХО, Propeller P8X32A, хоть и банально это звучит. 8 процессоров в одном корпусе DIP-40 или LQFP-44. Паябельность хоть куда. Параллельность работы ядер. Для ходячего робота вполне хватит. Можно запараллелить 2 чипа...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Много-процессорность
СообщениеДобавлено: 20 дек 2007, 22:20 
Не в сети
Аватара пользователя

Зарегистрирован: 15 сен 2007, 13:03
Сообщения: 6338
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович
и минусы:
-всего 40 ног
-контроллер прерывания явно общий.. хотя хз... но внешних нормальных прерываний это не добавит..
-програмить будет тяжко... информации мало...
и зачем 8 ядер в паралели? кому они нах нужны в 1 камне ? чтобы их нормально нагрузить нужна дюжая куча данных.. откуда она ? вообше мне кажется камень галим...

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


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

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


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

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


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

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