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

 
 
4 страниц V  « < 2 3 4  
Reply to this topicStart new topic
> Скоростной АРМ - использование в качестве МК
greenie
сообщение Jul 10 2012, 15:58
Сообщение #46





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



Цитата(kovigor @ Jul 10 2012, 22:41) *
Изображение обязательно обрабатывать ? Или в вашей задаче падают разные тела, и нужно обнаруживать тела определенного вида ? Простого пересечения телом светового лучика недостаточно ?

Да, нужно выделить объект, посчитать его размеры, найти степень поглощения ИК-излучения, а потом, в зависимости от размеров, формы и поглощения принять решение и "ловить" его или нет. А эти объекты будут сыпаться один за другим. А по пересечению светового лучика я начну фотографировать и отсчет времени для "ловли". Ну и надо, чтобы в кадр попал объект полностью, поэтому и думаю скоростную камеру и скоростной процессор, чтобы много кадров потоком обрабатывать, а среди них будут появляться нужные с объектом целиком.

Подскажите, кто работал с видеосенсорами. Я так понимаю, что продаются они без платы, под них еще плату нужно делать? Корпус тоже нужно свой делать, чтобы объектив прицепить? В общем, если выбрать только сенсор, то его непросто начать использовать...
И вопрос про подключение сенсора к АРМу я так и не понял - что кортекс М4, что А8 - у них "камера интерфейс", а у сенсоров LVDS - это одно и то же?
Go to the top of the page
 
+Quote Post
AVR
сообщение Jul 10 2012, 16:09
Сообщение #47


фанат Linux'а
*****

Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008



Цитата(greenie @ Jul 10 2012, 19:24) *
Линукс даже интересно бы запустить... ембеддед в смысле sm.gif Я даже один раз пробовал отладочную плату запускать, даже скрипт писал на SH для общения с дисплейчиком по I2C, но это было давно и не считается. А вот как для линукса программу написать, в которой я буду с периферией общаться и как ее запустить при старте - я пока не понимаю.
работать с I2C в Linux не просто просто, а крайне просто, как раз на прошлой неделе этим занимался sm.gif
запустить программу при старте? запросто... о какой периферии идет речь?

по любым вопросам на тему Embedded Linux ко мне в личку - подскажу всем чем смогу, я упоротый в этом плане sm.gif

Цитата
Свободное падение тела, но маленький размер, поэтому надо четко рассчитать время, через которое тело будет на определенной высоте. Если, я школьную кинематику не забыл, то с точностью до 100мкс надо бы ножкой дернуть суметь sm.gif
как уже выше подсказали, правильнее использовать конечно внешний фото-датчик для таких вещей и даже обеспечивать его ранее срабатывание (настроить по вкусу)


--------------------
Go to the top of the page
 
+Quote Post
Danis
сообщение Jul 10 2012, 16:24
Сообщение #48


Twilight Zone
***

Группа: Свой
Сообщений: 454
Регистрация: 17-02-09
Из: Челябинск
Пользователь №: 44 990



Цитата(greenie @ Jul 4 2012, 16:37) *
Исходные данные. Нужно обрабатывать изображения падающего предмета раз 20 в сек. ...
А как это все делать для ARM Cortex-A8... И чтобы без всяких линуксов - принцип точно такой же, как обычный МК?


Я б на Вашем месте сначала реализовал это на большой машине с помощью готовых библиотек распознавания образов, затем, при положительном результате, разобрал и перенес нужные коды на микроконтроллер. Можно применить это: OpenCV (Open Source Computer Vision Library, библиотека компьютерного зрения с открытым исходным кодом).


--------------------
Magic Friend
Go to the top of the page
 
+Quote Post
greenie
сообщение Jul 17 2012, 17:00
Сообщение #49





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



Цитата(Danis @ Jul 10 2012, 23:24) *
Я б на Вашем месте сначала реализовал это на большой машине с помощью готовых библиотек распознавания образов, затем, при положительном результате, разобрал и перенес нужные коды на микроконтроллер. Можно применить это: OpenCV (Open Source Computer Vision Library, библиотека компьютерного зрения с открытым исходным кодом).


Оно реализовано, но для Виндоуз и кажется не на сишных библиотеках...


Кстати, а ембеддед линукс много процессорного времени использует на посторонние вещи? Как сильно мне придется отвыкать от того, что все такты тратятся на нужный мне алгоритм?
Go to the top of the page
 
+Quote Post
Petka
сообщение Jul 17 2012, 18:30
Сообщение #50


Профессионал
*****

Группа: Свой
Сообщений: 1 453
Регистрация: 23-08-05
Пользователь №: 7 886



Цитата(greenie @ Jul 17 2012, 21:00) *
...
Кстати, а ембеддед линукс много процессорного времени использует на посторонние вещи? Как сильно мне придется отвыкать от того, что все такты тратятся на нужный мне алгоритм?

Линукс ничего не делает "лишнего". Какие сервисы вы запустили на нём, те и будут работать. Не нужны никакие сервисы - отключайте их напрочь. Единственное что останется - 100 Раз в секунду будет вызываться планировщик. Если планировать нечего, то он никакого процессорного времени не сожрёт. Переключение контекста происходит достаточно быстро (десятки тактов). Итого мимо вашей программы пройдёт максимум 0,01%. Понятно, что драйвера периферии будут отжирать время. Но если без ОС, то всё-равно будут драйвера и будут жрать соизмеримое количество ресурсов.
Go to the top of the page
 
+Quote Post
AVR
сообщение Jul 18 2012, 21:37
Сообщение #51


фанат Linux'а
*****

Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008



Цитата(Petka @ Jul 17 2012, 22:30) *
Линукс ничего не делает "лишнего". Какие сервисы вы запустили на нём, те и будут работать. Не нужны никакие сервисы - отключайте их напрочь. Единственное что останется - 100 Раз в секунду будет вызываться планировщик. Если планировать нечего, то он никакого процессорного времени не сожрёт. Переключение контекста происходит достаточно быстро (десятки тактов). Итого мимо вашей программы пройдёт максимум 0,01%. Понятно, что драйвера периферии будут отжирать время. Но если без ОС, то всё-равно будут драйвера и будут жрать соизмеримое количество ресурсов.
согласен с подобными оценками, но лишь частично, не могу поверить что там меньше процента кушается (хотя Linux известен тем что не кушает лишнего проца)


--------------------
Go to the top of the page
 
+Quote Post
Petka
сообщение Jul 19 2012, 07:27
Сообщение #52


Профессионал
*****

Группа: Свой
Сообщений: 1 453
Регистрация: 23-08-05
Пользователь №: 7 886



Цитата(AVR @ Jul 19 2012, 01:37) *
согласен с подобными оценками, но лишь частично, не могу поверить что там меньше процента кушается (хотя Linux известен тем что не кушает лишнего проца)

Как раз на днях знакомился с подсистемой времени в Linux.
Па факту аппаратный таймер вызывался только с частотой, заданной при сборке ядра (в моём случае 1000 HZ). Никаких других неучтённых срабатываний таймера не было. Т.е. по факту в "фоне" вызывался только планировщик ядра. Если планировать нечего (работает только одно ваше приложение), то планировщик сразу возвращает вашему приложению управление. Само-собой если вы используете сеть, то отдаётся процессорное время сетевой подсистеме и т.д. Но как я говорил ранее - это в любом случае будет пожирать ресурсы. С Линуксом камень или нет.
Go to the top of the page
 
+Quote Post
sasamy
сообщение Jul 19 2012, 08:12
Сообщение #53


Знающий
****

Группа: Участник
Сообщений: 783
Регистрация: 22-11-08
Пользователь №: 41 858



Цитата(AVR @ Jul 19 2012, 01:37) *
не могу поверить что там меньше процента кушается (хотя Linux известен тем что не кушает лишнего проца)


а что может кушать проц на ненагруженной системе ? вот к примеру вывод top в таком случае - кроме самого top никто процессор не занимает. В квадратных скобках - процессы пространства ядра.
Цитата
Mem: 6964K used, 52984K free, 0K shrd, 0K buff, 1476K cached
CPU: 0% usr 0% sys 0% nic 99% idle 0% io 0% irq 0% sirq
Load average: 0.00 0.00 0.00 1/27 495
PID PPID USER STAT VSZ %VSZ %CPU COMMAND
494 486 root R 2216 4% 1% top
470 1 root S 2268 4% 0% /lib/udev/udevd -d
486 1 root S 2216 4% 0% -sh
1 0 root S 2136 4% 0% init
467 1 root S 2136 4% 0% /sbin/klogd
465 1 root S 2136 4% 0% /sbin/syslogd -m 0
5 2 root SW 0 0% 0% [khelper]
3 2 root SW 0 0% 0% [ksoftirqd/0]
2 0 root SW 0 0% 0% [kthreadd]
4 2 root SW 0 0% 0% [events/0]
8 2 root SW 0 0% 0% [async/mgr]
165 2 root SW 0 0% 0% [sync_supers]
167 2 root SW 0 0% 0% [bdi-default]
169 2 root SW 0 0% 0% [kblockd/0]
179 2 root SW 0 0% 0% [khubd]
200 2 root SW 0 0% 0% [rpciod/0]
233 2 root SW 0 0% 0% [kswapd0]
234 2 root SW 0 0% 0% [aio/0]
235 2 root SW 0 0% 0% [nfsiod]
236 2 root SW 0 0% 0% [crypto/0]


Сообщение отредактировал sasamy - Jul 19 2012, 08:14
Go to the top of the page
 
+Quote Post
nicks80
сообщение Oct 1 2012, 12:50
Сообщение #54


Частый гость
**

Группа: Участник
Сообщений: 97
Регистрация: 18-10-07
Пользователь №: 31 485



Цитата(greenie @ Jul 17 2012, 21:00) *
Оно реализовано, но для Виндоуз и кажется не на сишных библиотеках...


Кстати, а ембеддед линукс много процессорного времени использует на посторонние вещи? Как сильно мне придется отвыкать от того, что все такты тратятся на нужный мне алгоритм?

Надо начать на модели с обычным ПК, камерой и отладить (Отлаживать легче). А перенести это уже совсем другой менее итеративный процесс отладки.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 26th July 2025 - 07:09
Рейтинг@Mail.ru


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