Jump to content

    

Скоростной АРМ - использование в качестве МК

Простите за чайниковский вопрос, но к примеру если пользоваться линуксом, то компилировать программу так же в "Eclipse+CodeSourcery"?

Почти так. CodeSourcery это всего-лишь сборка GCC. Для сборки программы к линуксу у вас будет аналогичный кросс-компилятор (тоже сборка GCC). Eclipse может работать с любым GCC.

Share this post


Link to post
Share on other sites
Coce Sourcery скачал, теперь хочу объединить с Eclipse по инструкции https://sites.google.com/site/stm32discover...ery-development Линукс для компиляции программы ведь необязателен, или я неправильно понял?

Я компилирую в виртуальной машине (Ubuntu), а саму машину запускаю из-под XP. Возможно, есть сборки CodeSourcery под Windows, я просто не интересовался. Тогда и Linux для запуска компилятора не нужен. А вот Эклипс нужен здесь, как рыбе зонтик. Просто лишнее усложнение на ровном месте. Но это мое личное мнение, и я не навязываю его другим. Для сборки проекта достаточно написать make - файл, а для написания кода хватает простого текстового редактора.

P.S. Советую не бояться Linux, а начать его осваивать. Рано или поздно он вам все равно потребуется ...

Share this post


Link to post
Share on other sites
P.S. Советую не бояться Linux, а начать его осваивать. Рано или поздно он вам все равно потребуется ...

 

Линукс, в принципе, не страшен. Он даже стоял когда-то второй системой, только Дебиан. Кстати, Дебиан или Убунту - не принципиально? Когда я выбирал линукс для ознакомления, то сложилось впечатление по прочитанному в сети, что Дебиан - самый старый, самый стабильный и т.д., вот его и выбрал.

Share this post


Link to post
Share on other sites
Кстати, Дебиан или Убунту - не принципиально?

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

Share this post


Link to post
Share on other sites
Удобнее выбрать более популярный дистрибутив, так как при возникновении вопросов легче будет найти ответы. Следовательно, убунту.

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

P.S. Для человека сильно привыкшего к windows рекомендую попробовать Kubuntu (Ubuntu + KDE). Кубунту внешне очень похожа на Win. Первое время будет более привычно выглядеть.

Share this post


Link to post
Share on other sites

Предложу еще один вариант: пачку Cortex-M4 ( stm32F4 168Mhz ), один принимает (есть аппаратный интерфейс под камеру) и раздает остальным покадрово для обработки.

Получаем:

-знакомый Keil

-20кадров в секунду, правда время обработки кадра будет ~100мс

-паябельные корпуса (хоть tqfp 64 )без необходимости ставить внешнюю память

 

Share this post


Link to post
Share on other sites
Предложу еще один вариант: пачку Cortex-M4

Мне эта задача чем-то напомнила систему авторегистрации нарушений ПДД, используемую ГАИ. Вот интересно, на чем там обработка реализована ? Скорее всего, мощный ARM, работающий под управлением Linux ...

Share this post


Link to post
Share on other sites
Читаю даташит к MT9V034C12STM, но не могу найти диапазон регистрируемых длин волн. Мне нужно ИК светом освещать предмет и регистрировать проходящий, чтобы узнать степень поглощения. Какой бы вы сенсор еще посоветовали?

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

Мы занимаемся подобными задачами. Нужные вам графики есть на странице 79. Готовых камер на этой матрице полно, но цены на них раз в 100 больше, чем на саму матрицу.

 

А вы камеру подобрали? Это больной вопрос... Дело даже не в частоте смены кадра, а скорее в выдержке, если можно так выразиться. Предмет же падает, поэтому время экспонирования должно быть минимальным, т.к. смаз в 2-3 пиксела это уже плохо.
У этой матрицы есть вывод LED_OUT, позволяющий управлять осветителем с нужной длительностью. Мы в качестве осветителей, используем мощные светодиоды. На сегодняшний момент самые яркие светодиоды с одним кристаллом делает Luminus. Я попробовал красный и зеленый SST-90. Импульсный ток наших осветителей с этими светодиодами может достигать до 15А. Средний до 4А. Светят ослепляюще, но в итоге света маловато получилось :biggrin:.

Есть ещё один момент - влияние внешней засветки во время длинных пауз. Аппаратно делаем запуск сразу двух кадров, первый - "стирающий", второй уже обрабатываем.

Share this post


Link to post
Share on other sites

Кстати у Texas Instruments есть хорошая линейка микропроцессоров для обработки видео вплоть до FULL HD 60fps. Называется линейка DaVinci, в каждом микропроцессоре ARM ядро + DSP. Знаю что многие производитель IP видеокамер используют именно DaVinci.

Edited by PoReX

Share this post


Link to post
Share on other sites
Мы занимаемся подобными задачами. Нужные вам графики есть на странице 79. Готовых камер на этой матрице полно, но цены на них раз в 100 больше, чем на саму матрицу.

 

У этой матрицы есть вывод LED_OUT, позволяющий управлять осветителем с нужной длительностью. Мы в качестве осветителей, используем мощные светодиоды. На сегодняшний момент самые яркие светодиоды с одним кристаллом делает Luminus. Я попробовал красный и зеленый SST-90. Импульсный ток наших осветителей с этими светодиодами может достигать до 15А. Средний до 4А. Светят ослепляюще, но в итоге света маловато получилось :biggrin:.

Есть ещё один момент - влияние внешней засветки во время длинных пауз. Аппаратно делаем запуск сразу двух кадров, первый - "стирающий", второй уже обрабатываем.

 

А как вы успеваете еще и стирающий кадр, если этот сенсор только 60кадров в секунду выдает? Я вот еще сенсор присмотрел LUPA-1300-2 LUPA-1300-2-datasheet.pdf. Вроде быстрый очень.

Только вот два вопроса возникают. У этого сенсора и у MT9V034 выходной интерфейс LVDS, а у процессора i.MX53 этот LVDS для подключения дисплея, а не для ввода изображения с камеры, как я понял из даташита. Помогите, пожалуйста, прояснить этот момент - подключение сенсора к контроллеру. И второе: сенсор сенсором, а он без объектива не используется же? Как-то нужно еще лепить туда объектив... нужно делать корпус, куда ставить этот сенсор и объектив? Я правильно понимаю?

Share this post


Link to post
Share on other sites

Используем внешний запуск по ножке. Делаем запуск второго кадра сразу как закончится первый. Время через которое изображение становится доступной в памяти равно 1/60*2+ время экспозиции. Кадр считываем по десятиразрядной параллельной шине. Вроде правильно понял ваш вопрос.

Ещё мы применяем IBIS4-6600 тоже не очень. Есть ещё серия Vita, но я решил больше с ними не связываться. Хватило двух раз, в третий раз решил не рисковать. Тем более есть альтернатива - Cmosis.

Попробовал быстрый сенсор фирмы Cmosis - CMV2000. CMV4000 - вообще родной братец CMV2000, но разрешение получше. Ну есть ещё быстрые сенсоры с большим разрешением этой же фирмы. Вот CMV2000 нам понравился - быстрый, global shutter, шумит не сильно.

Мы намаявшись с видеокамерами других фирм стали делать для себя. С матрицы кадр(ы) льётся в буфер, оттуда по USB2.0 в компьютер, далее обработка уже в PC. Матрицы у нас подключаются к FPGA, на ней же сделан контроллер SDRAM, поэтому я вам вряд ли смогу помочь в подключении к МК или DSP. Камера представляет из себя "бутерброд" из двух плат, заключенных в корпус. В корпус можно прикрутить(закрепить) нужный объектив.

Share this post


Link to post
Share on other sites

В сторону FPGA я даже не смотрел... А CMV300 600к/с - тоже подошла бы. В принципе, сенсоры есть. Осталось прояснить вопрос их подключения к процессору.

dinam, а мы с вами соседи, я чуть южнее в АлтГТУ :)

Share this post


Link to post
Share on other sites
Линукс или другие ОС нежелательны, потому что во-первых, их нужно осваивать
бьюсь об заклад что освоить правильную инициализацию периферии и памяти "большого процессора" может оказаться сложнее чем освоить несчастный простейший (и довольно однообразный по способу работы и освоения на широком спектре платформ) как три копейки Linux (из чего и следует мой статус под ником) :)

 

во-вторых, нужна реакция на результат обработки изображения (вовремя включить исполнительный механизм, чтобы в полете поймать предмет).
о величинах каких порядков идет речь? готов поспорить что Linux тут как раз подойдёт

 

Вопрос, который меня мучает, собственно вот в чем. Могу ли я программировать этот ARM Cortex-A8 как обычный МК
выше уже ответили что можно, без особых проблем в принципе

 

P.S.

прошу прощения, просто не мог пройти мимо, ведь автор темы может ошибочно полагать что Linux это сложнее чем то что он собрался покорять :)

 

Все знают, что нормальный, безглючный и полнофункциональный BSP под линукс стоит диких денег особенно если под заказную платформу.

В данном случае речь видимо идет о оригинальной камере.

чиво?! О_о

Но даже получив BSP придется платить дальше поскольку драйверы для графических ускорителей будут в бинарном виде и самим их поддерживать никак не возможно будет.
чиво?! О_о

Уже не говорю о цене инструментов, того же JTAG который мог бы отлаживать под линуксом.
чиво?! О_о

 

особенно последний пункт улыбнул, я вижу человек уже не первый год сидит на этом форуме и рассказывает байки про Linux как встраиваемую ОС, причем комментарий про JTAG накрепко убедил меня в том что я не ошибся =)))

Share this post


Link to post
Share on other sites
бьюсь об заклад что освоить правильную инициализацию периферии и памяти "большого процессора" может оказаться сложнее чем освоить несчастный простейший (и довольно однообразный по способу работы и освоения на широком спектре платформ) как три копейки Linux (из чего и следует мой статус под ником) :)

 

Линукс даже интересно бы запустить... ембеддед в смысле :) Я даже один раз пробовал отладочную плату запускать, даже скрипт писал на SH для общения с дисплейчиком по I2C, но это было давно и не считается. А вот как для линукса программу написать, в которой я буду с периферией общаться и как ее запустить при старте - я пока не понимаю.

 

о величинах каких порядков идет речь? готов поспорить что Linux тут как раз подойдёт

 

Свободное падение тела, но маленький размер, поэтому надо четко рассчитать время, через которое тело будет на определенной высоте. Если, я школьную кинематику не забыл, то с точностью до 100мкс надо бы ножкой дернуть суметь :)

Share this post


Link to post
Share on other sites
Свободное падение тела, но маленький размер, поэтому надо четко рассчитать время, через которое тело будет на определенной высоте. Если, я школьную кинематику не забыл, то с точностью до 100мкс надо бы ножкой дернуть суметь :)

 

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

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this