roboforum.ru

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


ARM9 Linux плата для робота

Обсуждение и примеры готовых и самосборных компонент для построения роботов.

ARM9 Linux плата для робота

Сообщение MiniMax » 26 июл 2010, 14:46

Решили делать специализированную плату для роботов.

Основные компоненты
TPS5420D (DC/DC converter, 6V-31V input, 5V/2A output)
HYI25D512160CE-5 (64Mbyte DDR1)
NAND128W3A2BN6E-ND (16MByte NAND FLASH, BOOT & DISK)
MCIMX233CAG4B ( 450Mhz ARM9)
LTC2950IDDB-1#TRMPBF ( Push button controller)
2xBTM7750G ( 7A DC motor driver)
2908-05WB-MG ( MicroSD holder, optional)

На плате запускается Linux.
Все Linux драйвера по управлению DC моторами будут обеспечены.
На плате будет HS USB HOST 2.0 ( 480Mbit ).
Можно будет подключать WEB самеры, Wi-Fi, BlueTooth и т.д. через USB
Размер платы будет ориентировочно 60x60mm.

Начало обсуждения здесь
http://robo.com.ua/forum/viewthread.php?forum_id=9&thread_id=183#post_3534

Если кому интересна эта тема, то приглашаю к обсуждению
Аватара пользователя
MiniMax
 
Сообщения: 36
Зарегистрирован: 26 июл 2010, 14:32

Re: ARM9 Linux плата для робота

Сообщение =DeaD= » 26 июл 2010, 14:48

Мысль №1. Лучше отделить силовую часть (драйверы движков) от ARM9, к тому же силовая часть может сильно различаться в зависимости от потребностей.

Мысль №2. Что будет выведено с самого ARM9? PWM, ADC, DAC, будет ли усилок минимальный для звука? Будет ли опция для экрана?
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: ARM9 Linux плата для робота

Сообщение MiniMax » 26 июл 2010, 15:30

Мысль №1. Лучше отделить силовую часть (драйверы движков) от ARM9, к тому же силовая часть может сильно различаться в зависимости от потребностей.


Cиловая часть проектируется довольно универсальной.
BTM7750G драйвер может работать от 1.8V до 42V 7A ( 12A в пике)
http://www.infineon.com/dgdl/BTM7750G_DS_10.pdf?folderId=db3a3043156fd5730116144c5d101c30&fileId=db3a304316f66ee80117644e21d86ab0

К тому-же будет возможность запитать процессор и драйвер с разных разъемов.
Минимальное напряжение для питания процессора ~6V.
На плате будет стоять step-down с 5V выходом для питания USB устройств.
TPS5420D (DC/DC converter, 6V-31V input, 5V/2A output)

Поэтому этой позицией закрываются большая часть существующих DC моторов от 2V до 40V.
Также в этом драйвере есть возможность использовать раздельно HIGH и LOW плечи моста.
Это означает, что будет возможность подключить до 8 моторов ( правда без изменения направления движения).

Мысль №2. Что будет выведено с самого ARM9? PWM, ADC, DAC, будет ли усилок минимальный для звука? Будет ли опция для экрана?


Процессор имеет 5 PWM выходов. Думаю, что 4 из них будут подключены к BTM7750G
Будет 12-bit Low-Resolution ADC (LRADC) на внешнем разъеме и все свободные IOs.
Более детально посмотреть на возможности процессора можно здесь
http://www.freescale.com/files/32bit/doc/fact_sheet/IMX233FS.pdf?fpsp=1
http://www.freescale.com/files/dsp/doc/ref_manual/IMX23RM.pdf

На плате планируем поставить Stereo Audio Jack ( для подключения наушников).
Кому надо добавит внешний audio усилитель, динамик.

У проессора есть интегрированный TV-encoder с видеовыходом.
Поэтому будет TV разъем.
Аватара пользователя
MiniMax
 
Сообщения: 36
Зарегистрирован: 26 июл 2010, 14:32

Re: ARM9 Linux плата для робота

Сообщение =DeaD= » 26 июл 2010, 15:53

TV-выход - неплохой вариант.

Я про силовую часть имел в виду - не лучше ли её вынести на отдельную плату и вообще сделать модулем?

Кому-то как раз надо будет лучше получить 4 PWM - если робот будет на модифицированных сервах + 2 сервы на pan-tilt веб-камеры. А вы их лишите такой вкусности :(

Да и помехи от силовой части на той же плате? Плюс еще дорожки на 7А надо толстые а на толстой фольге всякие нормы разводки хуже должны быть.

А сколько там может быть АЦП-входов?

Добавлено спустя 1 минуту 30 секунд:
PS: Кому-то безколлекторники будут нужны на роботе, кому-то еще какие-то другие варианты.

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

Re: ARM9 Linux плата для робота

Сообщение MiniMax » 26 июл 2010, 16:02

Будут доступны 8 12-bit аналоговых входов

1.2.24 Low-Resolution ADC, Touch-Screen Interface, and Temperature
Sensor
The LRADC provides 16 “physical” channels of 12-bit resolution analog-to-digital conversion. Only 8
“virtual” channels can be used at one time, but those 8 channels can be mapped to any of the 16 physical
channels. Some physical channels have dedicated inputs:
• Channel 15—VDD5V
• Channel 14—Bandgap reference
• Channel 13—USB_DN
• Channel 12—USB_DP
• Channel 10 and 11—Reserved
• Channel 8 and 9—Internal temperature sensing
• Channel 7—Battery
• Channel 6—VDDIO
The USB_DN/DP inputs can only be sampled with the LRADC in non-USB mode (see
HW_USBPHY_CTRL_DATA_ON_LRADC).
The remaining six channels are available for other uses and can be used for resistive button sense,
touch-screens, or other analog input. Channels 0 and 1 have integrated current sources to drive external
temperature monitor thermistors. Channels 2–5 have integrated drivers for resistive touch-screens. The
LRADC provides typical performance of 12-bit no-missing-codes, 9-bit/~56dB SNR, and 1% absolute
accuracy (limited by the bandgap reference).
See Chapter 33, “Low-Resolution ADC and Touch-Screen Interface,” for more information.

PPS: А зачем вам на драйвер двигателей тратить 4 PWM?

если использовать раздельно HIGH и LOW MOSFETs моста,
то можно будет регулировать скорость вращения всех 4-х.
Правда в одном направлении.
А так достаточно и 2 PWM на 1 драйвер мотора.
Аватара пользователя
MiniMax
 
Сообщения: 36
Зарегистрирован: 26 июл 2010, 14:32

Re: ARM9 Linux плата для робота

Сообщение =DeaD= » 26 июл 2010, 16:22

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

Re: ARM9 Linux плата для робота

Сообщение MiniMax » 26 июл 2010, 16:29

Все 5 PWM будут выведены и на разъем. Можно будет снять джамперы и отключить BTM7750G.
И использовать PWM для управления серво-машинками
Аватара пользователя
MiniMax
 
Сообщения: 36
Зарегистрирован: 26 июл 2010, 14:32

Re: ARM9 Linux плата для робота

Сообщение =DeaD= » 26 июл 2010, 16:45

Тогда вопросов больше не имею по поводу встраивания драйверов :)

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

Re: ARM9 Linux плата для робота

Сообщение MiniMax » 26 июл 2010, 16:56

Вариант с большим количеством оперативки будет?

Пока не планируется

Разъем для подключения и сам модуль экранчика типа как у mini2440 планируется?

экран не планируем

Цену я так понимаю пока не прикидывали?

Комплектация из Digikey выливается в 50-60US + печатная плата + сборка + ...
Цена не должна выйти за пределы $100

На плате будет установлен микрофон WM-64PNT
Изображение
Аватара пользователя
MiniMax
 
Сообщения: 36
Зарегистрирован: 26 июл 2010, 14:32

Re: ARM9 Linux плата для робота

Сообщение =DeaD= » 26 июл 2010, 17:04

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

Re: ARM9 Linux плата для робота

Сообщение Angel71 » 26 июл 2010, 17:25

+1
с 64метрами оперативы как-то "тесновато"
Аватара пользователя
Angel71
 
Сообщения: 10668
Зарегистрирован: 18 апр 2009, 22:18
Предупреждения: -1

Re: ARM9 Linux плата для робота

Сообщение MiniMax » 26 июл 2010, 17:28

Только вот 64Мб оперативки для части задач может не хватить.

64MB довольно много исходя из моего опыта применения Mini-Max/ARM9260.
Не хватало памяти только, когда я компилировал большие проекты не на PC, а на самой плате.
Но это же Linux. Просто добавил SWAP в систему, который был расположен на micro-SD или USB Flash.
Можно было-бы добавить второе посадочное место под DDR. Но места на таком маленьком форм-факторе не будет.

Сделайте хотя-бы инструкцию по самостоятельной замене чипа памяти + возможность такой замены и указание чипов какие можно ставить.


Посмотрел на чипы большей емкости в таком же корпусе. Цены космические.
http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=MT46V64M16TG-6T%20IT:A%20TR-ND

Пока остановились на 64M. Тем более, что мы ставим процессор в 128-pin LQFP (Maximum DRAM supported is 64MB).
Аватара пользователя
MiniMax
 
Сообщения: 36
Зарегистрирован: 26 июл 2010, 14:32

Re: ARM9 Linux плата для робота

Сообщение Angel71 » 26 июл 2010, 18:23

:) ну тады ойсь
Аватара пользователя
Angel71
 
Сообщения: 10668
Зарегистрирован: 18 апр 2009, 22:18
Предупреждения: -1

Re: ARM9 Linux плата для робота

Сообщение Michael_K » 26 июл 2010, 18:42

Если только комплектация встает в 60, то цена 100 ну никак не получится :(
Аватара пользователя
Michael_K
 
Сообщения: 6028
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Re: ARM9 Linux плата для робота

Сообщение Сергей » 26 июл 2010, 18:45

ИМХО уже есть неплохой вариант с такой же стоимостью - http://starterkit.ru/html/index.php?nam ... view&id=41

Добавлено спустя 1 минуту 29 секунд:
и LCD можно подцепить
Сергей
 
Сообщения: 3744
Зарегистрирован: 29 дек 2004, 23:15
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей

След.

Вернуться в Готовые модули

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

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