|
Скоростной АРМ - использование в качестве МК |
|
|
|
Jul 4 2012, 13:37
|
Группа: Участник
Сообщений: 12
Регистрация: 4-07-12
Из: Barnaul
Пользователь №: 72 628

|
Уважаемые форумчане, долго не могу разобраться в вопросе. Периодический поиск на просторах инета и форумах результата не дает, вот даже зарегистрировался, чтобы создать тему. Исходные данные. Нужно обрабатывать изображения падающего предмета раз 20 в сек. Т.е. за 50мс нужно получить изображение с фотокамеры, провести все алгоритмы обработки и приступить к следующему кадру. Есть опыт работы с АВР и АРМ с встроенной памятью. Думаю, что можно использовать ARM Cortex-A8 к примеру. Частота 1ГГц должно хватить. Линукс или другие ОС нежелательны, потому что во-первых, их нужно осваивать, во-вторых, нужна реакция на результат обработки изображения (вовремя включить исполнительный механизм, чтобы в полете поймать предмет). Вопрос, который меня мучает, собственно вот в чем. Могу ли я программировать этот ARM Cortex-A8 как обычный МК (вот например, сейчас на работе я использую STM32F103, раньше были атмеги и иксмеги)? Плату можно купить любую отладочную с этим или похожим АРМом, мне важна частота и объем оперативки. ПРосто не пойму, как программировать контроллеры с внешней флэш. Вот например сейчас все просто - написал в Keil'е программу, скомпилировал, залил ее ST-Link'ом. А как это все делать для ARM Cortex-A8... И чтобы без всяких линуксов - принцип точно такой же, как обычный МК?
|
|
|
|
|
 |
Ответов
|
Jul 6 2012, 15:23
|
Группа: Участник
Сообщений: 12
Регистрация: 4-07-12
Из: Barnaul
Пользователь №: 72 628

|
Очень рад, что обсуждение бурное, надеюсь хоть немного все прояснить. Цитата(kovigor @ Jul 6 2012, 03:14)  Компилятор такой. Для i.MX53 качайте виртуальную машину (Ubuntu) с сайта FreeScale, ставьте в ней CodeSourcery, собирайте библиотеку NewLib и пробуйте писать простейшие программки: Ubuntu: http://www.freescale.com/webapp/sps/site/p...esign_Tools_TabВыберите: "Board Support Packages" CodeSourcery: https://sourcery.mentor.com/GNUToolchain/su...757fcaeae081292Выберите: "Download Sourcery CodeBench Lite 2012.03-56" Вот статья, по которой я разбирался с newlib: https://balau82.wordpress.com/2010/12/16/us...metal-programs/Coce Sourcery скачал, теперь хочу объединить с Eclipse по инструкции https://sites.google.com/site/stm32discover...ery-development Линукс для компиляции программы ведь необязателен, или я неправильно понял? Цитата(dinam @ Jul 6 2012, 08:51)  Насчет матрицы LUPA-300. Я попробовал штук 6 разных матриц разных производителей. Так вот эта оказалась самой паршивой по качеству изображения, может и я что-то где-то накосячил, но с другими такого не было. Плюс был аппаратный глюк в самой матрице, да и её производитель поменялся. Так что с поддержкой, будет наверное совсем плохо. Рекомендую попробовать MT9V034. Дешевая, легко покупаемая, беспроблемная. Читаю даташит к MT9V034C12STM, но не могу найти диапазон регистрируемых длин волн. Мне нужно ИК светом освещать предмет и регистрировать проходящий, чтобы узнать степень поглощения. Какой бы вы сенсор еще посоветовали? Вначале я вообще надеялся найти готовый модуль - сенсор с контроллером, чтобы подключиться к нему по spi, usb или ethernet, благо сейчас эти все порты в контроллерах есть, а в таких продвинутых, как мне нужен из-за быстродействия, и подавно. Но такого не нашел, решил подцеплять сенсор вручную на ноги, правда пока смутно представляю, как я это дело все запущу и подозреваю, что не один месяц уйдет на запуск железа, что совсем не касается научной работы, а есть только инструмент. Цитата(andrewlekar @ Jul 6 2012, 15:48)  Мне кажется или описанную задачу можно с наименьшим геммороем решить на ПК? По-моему, вполне реально обрабатывать видеопоток с указанной скоростью и сервоприводом пошевелить с заданной реакцией. ПК просто это лишнее, тем более ситуация следующая: предмет свободно падает, на одном уровне я его фотографирую, пока обрабатываю изображение, он летит дальше, а внизу орган воздействия - мне нужно его включить четко вовремя, а как это сделать с ОС, пусть и ОСРВ, я не знаю. Зато знаю, что такое прерывания, таймеры и т.д. в МК  Поэтому и выбрал данный путь - управлять процессором как микроконтроллером. Мне бы только к регистрам обращаться возможность получить, а там уж дело техники  Цитата(AlexMik1 @ Jul 6 2012, 16:48)  у меня почти аналогичная задача про работу вручную вы наверное имеете ввиду через какой-то спец интерфейс проца? Я заказал плату на таком проце AT91SAM9XE512, по скорости он вам вряд ли подойдет, но в нем есть ISI интерфейс для руления камерой, как бы в теории все просто, настроить нужные регистры, кадр пишется напрямую в память, по окончании кадра получаем прерывание, обрабатываем кадр. Как будет на практике еще не знаю  по поводу самой камеры, то вроде бы сейчас не проблема 30 fps (кадров в секунду), видел много 60 fps, так что получать кадры с 20fps вроде бы не проблема, проблема успеть обработать А вы камеру подобрали? Это больной вопрос... Дело даже не в частоте смены кадра, а скорее в выдержке, если можно так выразиться. Предмет же падает, поэтому время экспонирования должно быть минимальным, т.к. смаз в 2-3 пиксела это уже плохо. Цитата(sasamy @ Jul 6 2012, 19:07)  Глупость - в любом случае оптимальней использовать готовое чем изобретать велосипеды. еще одна глупость - заапросто будет потому что смогу использовать всю мощь gpu и vpu. главное - голова на плечах, а у кого она есть берет ОС и не парится над низкоуровневым программированием а решает свои задачи. вот - есть же зачатки рационализма, не все потеряно у вас еще  Просто тут ОС не знаю даже, зачем нужна. Мне только изображение получить нужно и все. Обработка - это просто алгоритм над массивом байтов, ну и дернуть ногой через заданное количество миллисекунд...
|
|
|
|
|
Jul 9 2012, 02:12
|
Профессионал
    
Группа: Свой
Сообщений: 1 415
Регистрация: 10-06-05
Из: Наукоград Кольцово(Новосибирск)
Пользователь №: 5 898

|
Цитата(greenie @ Jul 6 2012, 22:23)  Читаю даташит к MT9V034C12STM, но не могу найти диапазон регистрируемых длин волн. Мне нужно ИК светом освещать предмет и регистрировать проходящий, чтобы узнать степень поглощения. Какой бы вы сенсор еще посоветовали? Вначале я вообще надеялся найти готовый модуль - сенсор с контроллером, чтобы подключиться к нему по spi, usb или ethernet, благо сейчас эти все порты в контроллерах есть, а в таких продвинутых, как мне нужен из-за быстродействия, и подавно. Но такого не нашел, решил подцеплять сенсор вручную на ноги, правда пока смутно представляю, как я это дело все запущу и подозреваю, что не один месяц уйдет на запуск железа, что совсем не касается научной работы, а есть только инструмент. Мы занимаемся подобными задачами. Нужные вам графики есть на странице 79. Готовых камер на этой матрице полно, но цены на них раз в 100 больше, чем на саму матрицу. Цитата(greenie @ Jul 6 2012, 22:23)  А вы камеру подобрали? Это больной вопрос... Дело даже не в частоте смены кадра, а скорее в выдержке, если можно так выразиться. Предмет же падает, поэтому время экспонирования должно быть минимальным, т.к. смаз в 2-3 пиксела это уже плохо. У этой матрицы есть вывод LED_OUT, позволяющий управлять осветителем с нужной длительностью. Мы в качестве осветителей, используем мощные светодиоды. На сегодняшний момент самые яркие светодиоды с одним кристаллом делает Luminus. Я попробовал красный и зеленый SST-90. Импульсный ток наших осветителей с этими светодиодами может достигать до 15А. Средний до 4А. Светят ослепляюще, но в итоге света маловато получилось  . Есть ещё один момент - влияние внешней засветки во время длинных пауз. Аппаратно делаем запуск сразу двух кадров, первый - "стирающий", второй уже обрабатываем.
|
|
|
|
Сообщений в этой теме
greenie Скоростной АРМ - использование в качестве МК Jul 4 2012, 13:37 kovigor Цитата(greenie @ Jul 4 2012, 16:37) Могу ... Jul 4 2012, 13:50 AlexandrY Цитата(greenie @ Jul 4 2012, 16:37) ПРост... Jul 4 2012, 14:37 sharikov Цитата(greenie @ Jul 4 2012, 17:37) Нужно... Jul 5 2012, 03:47 SergeyDDD Цитата(sharikov @ Jul 5 2012, 06:47) Вы п... Jul 5 2012, 05:40  sasamy Цитата(SergeyDDD @ Jul 5 2012, 09:40) И е... Jul 6 2012, 09:09   SergeyDDD Цитата(sasamy @ Jul 6 2012, 12:09) Исполь... Jul 6 2012, 11:13    sasamy Цитата(SergeyDDD @ Jul 6 2012, 15:13) Опт... Jul 6 2012, 12:07     SergeyDDD Цитата(sasamy @ Jul 6 2012, 15:07) Глупос... Jul 6 2012, 13:31      sasamy Цитата(SergeyDDD @ Jul 6 2012, 17:31) Еще... Jul 6 2012, 13:38       scifi Я не модератор, но всё равно напомню про правила ф... Jul 6 2012, 13:51        IgorKossak Цитата(scifi @ Jul 6 2012, 16:51) Личные ... Jul 6 2012, 14:23       SergeyDDD Цитата(sasamy @ Jul 6 2012, 16:38) ему ну... Jul 6 2012, 14:42        sasamy Цитата(SergeyDDD @ Jul 6 2012, 18:42) [Ил... Jul 6 2012, 15:20         SergeyDDD Цитата(sasamy @ Jul 6 2012, 18:20) Рацион... Jul 6 2012, 15:31 AlexandrY Цитата(sharikov @ Jul 5 2012, 06:47) Вы п... Jul 5 2012, 06:15 greenie Может, использовать линукс правильнее с данным про... Jul 5 2012, 11:58 sharikov Цитата(greenie @ Jul 5 2012, 15:58) Может... Jul 5 2012, 19:32 dinam Цитата(greenie @ Jul 5 2012, 18:58) Камер... Jul 6 2012, 01:51 AlexMik1 Цитата(greenie @ Jul 5 2012, 14:58) Конеч... Jul 6 2012, 09:48 greenie Кстати, от KEIL придется отказаться, наверное, там... Jul 5 2012, 12:58 kovigor Цитата(greenie @ Jul 5 2012, 15:58) Сейча... Jul 5 2012, 20:14 SergeyDDD Цитата(greenie @ Jul 5 2012, 15:58) Кстат... Jul 6 2012, 06:06 KRS greenie,
посмотрите ARM DS-5, там есть все необход... Jul 5 2012, 21:21 andrewlekar Мне кажется или описанную задачу можно с наименьши... Jul 6 2012, 08:48 AlexMik1 Цитата(greenie @ Jul 6 2012, 18:23) А вы ... Jul 6 2012, 15:56 kovigor Цитата(greenie @ Jul 6 2012, 18:23) Coce ... Jul 6 2012, 19:17 greenie Цитата(sasamy @ Jul 6 2012, 22:20) Рацион... Jul 6 2012, 15:34 sasamy Цитата(greenie @ Jul 6 2012, 19:34) Если ... Jul 6 2012, 16:18 greenie Цитата(SergeyDDD @ Jul 5 2012, 12:40) У F... Jul 6 2012, 15:58 Petka Цитата(greenie @ Jul 6 2012, 19:58) Прост... Jul 6 2012, 17:16 greenie Цитата(kovigor @ Jul 7 2012, 02:17) P.S. ... Jul 7 2012, 04:04 scifi Цитата(greenie @ Jul 7 2012, 08:04) Кстат... Jul 7 2012, 06:29  Petka Цитата(scifi @ Jul 7 2012, 10:29) Удобнее... Jul 7 2012, 07:14 pdk Предложу еще один вариант: пачку Cortex-M4 ( stm32... Jul 7 2012, 07:20 kovigor Цитата(pdk @ Jul 7 2012, 10:20) Предложу ... Jul 7 2012, 11:00 PoReX Кстати у Texas Instruments есть хорошая линейка ми... Jul 9 2012, 06:22 greenie Цитата(dinam @ Jul 9 2012, 09:12) Мы зани... Jul 9 2012, 11:07 dinam Используем внешний запуск по ножке. Делаем запуск ... Jul 9 2012, 13:03 greenie В сторону FPGA я даже не смотрел... А CMV300 600к... Jul 9 2012, 13:23 AVR Цитата(greenie @ Jul 4 2012, 17:37) Линук... Jul 10 2012, 13:53 greenie Цитата(AVR @ Jul 10 2012, 20:53) бьюсь об... Jul 10 2012, 15:24 kovigor Цитата(greenie @ Jul 10 2012, 18:24) Своб... Jul 10 2012, 15:41 AVR Цитата(greenie @ Jul 10 2012, 19:24) Лину... Jul 10 2012, 16:09 greenie Цитата(kovigor @ Jul 10 2012, 22:41) Изоб... Jul 10 2012, 15:58 Danis Цитата(greenie @ Jul 4 2012, 16:37) Исход... Jul 10 2012, 16:24 greenie Цитата(Danis @ Jul 10 2012, 23:24) Я б на... Jul 17 2012, 17:00 Petka Цитата(greenie @ Jul 17 2012, 21:00) ...
... Jul 17 2012, 18:30  AVR Цитата(Petka @ Jul 17 2012, 22:30) Линукс... Jul 18 2012, 21:37   Petka Цитата(AVR @ Jul 19 2012, 01:37) согласен... Jul 19 2012, 07:27   sasamy Цитата(AVR @ Jul 19 2012, 01:37) не могу ... Jul 19 2012, 08:12 nicks80 Цитата(greenie @ Jul 17 2012, 21:00) Оно ... Oct 1 2012, 12:50
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|