Virt2real
Компания
44,58
рейтинг
30 октября 2012 в 10:09

Разное → Контроллер «Virt2real», или просто — Виртурилка

— Ты пил пиво, — тихо заговорил Джо. — Плохо работал консервный нож.
Ты сказал, что сам смастеришь консервный нож, побольше и получше. Это я и есть.
Генри Каттнер, «Робот-зазнайка»


UPD> Начат сбор предзаказов habrahabr.ru/post/163865

Кто-бы мог подумать, что мы своими руками сможем разработать такую красавицу и умницу. Мало того — не просто разработать на бумаге, а ещё и получить десяток работающих образцов.

Картинка Для Привлечения Внимания


Пролог


Давным-давно мы с коллегой начали заниматься управлением через Интернет всякими штуковинами типа вебкамер и маленьких машинок. Чуть позже у нас появились ездящие девайсы посерьёзнее, способные нести на борту свой контроллер и ёмкую батарею. К тому же я увлёкся всякими летающими штуковинами — самолётами и коптерами, что внесло дополнительную лепту в список хотелок.

Не покидала мысль о том что хорошо бы сделать видео не «вид сбоку или сверху», а вид с борта девайса, от первого лица. То что самолётчики/коптеристы называют FPV. Было это примерно пару лет назад. Пробовали ставить на машинку аналоговую камеру и передатчик, принимали видео на ТВ-тюнер, далее отдавали на видеосервер для раздачи рулящим машинками. Но сразу всплыли нюансы — одновременно можно транслировать только 3-4 видеопотока, иначе появляются наводки с одного канала на другой. Плюс дороговизна такого решения, плюс проблемы с разрешёнными частотами, плюс паршивое качество картинки с постоянно появляющимися помехами… В общем, попробовали и забили на это дело. К тому же, возможностей управляющего контроллера (тогда всё было сделано на базе всем известной Ардуинки) начало нехватать. Стали искать другие варианты, чтоб было недорого, дёшево, удобно и практично. Но имеющиеся в продаже (за границей, само собой и с довольно высокой стомостью) на тот момент железки для нужд не подходили. Одни умели всё кроме видео, другие умели только видео, но не позволяли подключать периферию, и т.д. и т.п.



Поискали подходящие контроллеры в продаже в России — есть в малых количествах и за дикие деньги. С двойной, а то и с тройной накруткой. А нам-то не одна-две штуки нужно, нам надо много таких контроллеров. А кошелёк не резиновый. Да и потакать ценовому беспределу перепродающих посредников как-то не хотелось.

Попробовали заказать отладочную плату, дабы на ней смастерить девайс, который мог бы управлять машинкой и передавать видео. Но столкнулись с проблемой — забугорные магазины не хотят отправлять контроллеры в Россию, так как они находятся в списке А — товары двойного назначения. То есть устройства, которые можно применять и в мирных, и в военных целях. На первый взгляд — бред полный, но по факту так оно и есть. Все контроллеры, которые нас устраивали по функционалу, находятся в том злополучном списке. Я лично звонил в Farnell и имел увлекательную получасовую беседу с милой (надеюсь) девушкой, которая с тысячей извинений сообщила что они не могут отправить нам требуемую железку (если не ошибаюсь, это был BeagleBoard). Именно она сообщила что в Евросоюзе свято блюдут все правила, так что просто так они отправить не могут, а чтоб отправить им надо получать сертификат на железку, причём сертификат действует ограниченное время и получается для каждого заказчика. Срок получения сертификата — около месяца, и совсем не факт что он будет получен. Помимо этого, от заказчика (т.е. меня, в данном случае) потребуется рукописный документ, заверенный у нотариуса, где будет полное описание планируемого использование железки. Я уж было собрался писать такой документ, но девушка попросила не напрягать их зря, ибо вероятность получения положительного результата очень ничтожна, а иметь такой ге… иметь такие проблемы из-за штучной продажи им абсолютно невыгодно.

После этой неудачной попытки мы попробовали заказать железки из штатов. Железка называлась LeopardBoard. Её нам выслали без лишней нервотрёпки, но проблемы неожиданно всплыли на нашей, российской, таможне. Пришла бумажка от таможенников по почте, где от нас требовали доказать что вожделенная железка не имеет на борту модулей сильной криптографии и ещё чего-то (уж не помню, чего именно, извиняйте). Коллега лично съездил на таможню, но ничего путного втолковать им не удалось — железка пролежала на таможне около месяца, после чего уехала обратно к отправителю.

После таких мытарств мы окончательно обозлились на весь мир и стали думать, что делать.

В один из дождливых осенних дней ко мне в гости заглянул тот самый питерский коллега, с которым засели на кухне и, попивая пиво, начали задушевный разговор про то, кто и что интересного придумал, чтоб решить нашу проблему с выбором железа. Когда выпито было уже довольно много, коллега изрёк мысль, которая поначалу показалась дикой. А почему бы, сказал он, нам не сделать свой луна-парк, с блэк-джеком и шлюхами контроллер. Который был бы изначально заточен на подключение разной периферии (цифровая камера, моторы, датчики, светодиодики, динамик и т.д.), имел бы на борту какою-нибудь беспроводную связь (wi-fi или bluetooth) и был бы неприхотлив насчёт питания. Чтоб можно было взять тележку (машинку, танк, самолёт, коптер, далее продолжать по вкусу), воткнуть в неё железку-контроллер, добавить необходимых датчиков, запитать всё от любой имеющейся батарейки или аккумулятора и в результате получить готовую управляемую умную штуковину.

Оставшаяся часть вечера ушла на бешеное фантазирование на тему того, сколько всего разного интересного управляемого можно сделать, заимев подходящий контроллер…

Сформулировался список требований для железки:

— Низкая цена конечного устройства!
— Мощный процессор, умеющий аппаратно жать видео в H264 (т.е. имеющий соответствующий DSP)
— Интерфейс для подключения цифровой камеры
— USB-host для подключения периферии (особенно актуальны 3G/4G модемы)
— Низкое энергопотребление
— Широкий диапазон напряжения питания
— Малые размеры (чтобы можно было установить в небольшую машинку, например)
— Linux на борту (большое количество уже разработанного софта)
— Беспроводная связь на борту (Bluetooth не рассматривали, только Wi-Fi)
— Проводная связь (Ethernet)
— Аппаратный генератор PWM
— Большое количество пинов ввода-вывода, для подключения разнообразной периферии
— Композитный видеовыход (для передачи видео с помощью аналоговых видеопередатчиков)

Прошло некоторое время. Та дикая идея, высказанная под пивко, начала потихоньку реализовываться. Выбрали подходящую SoC с DSP на борту, умеющую на лету обрабатывать и жать видео в h264 с приемлемой задержкой. Которая, к тому же, имеет кучу всего в своём составе (пины ввода-вывода, или GPIO, плюс всевозможные интерфейсы). Это проц семейства DaVinci фирмы Texas Instruments — TMS320DM365. Digital Media System-on-Chip (DMSoC). www.ti.com/product/tms320dm365 На выбор очень повлияла цена процессора, его возможности, а так же сферы его применения — он очень широко используется в IP камерах, видеорегистраторах, мультимедиа-плеерах, и т.д. и т.п.

Далее осталось «всего лишь» разработать плату на базе этого процессора. На этом этапе мы слегка забуксовали, но вскоре нашли своего человека, который согласился заняться разработкой.

В это время (лето 2011 года) мы впервые услышали загадочное слово «Raspberry PI» :-) Первый анонс этой железки на Хабре слегка встревожил, ибо буржуи заявили о разработке девайса, который очень близок к тому что мы долгое время искали, а потом решили сделать самостоятельно. Но, прочитав всё про эту Малинку, успокоились — железка хоть и довольно близка к нашей, в практическом применении вот лично нам не подходит. Ибо RaspberryPi, всё-таки, больше ориентирована на десктопное применение, хотя и имеет возможность подключения периферии для DIY применения. К тому же цена с учётом доставки получается довольно высокой, учитывая необходимость добавления вайфая, камеры и т.д. Примерно в то же время появились другие аналогичные железки (Beagleboard, Beaglebone, Pandaboard и т.д.), но ни одна из железок в полной мере нам не подходила. Это придало нам сил, поскольку мы окончательно осознали, что движемся в верном направлении.

Кстати, когда в очередной раз звонил в Farnell насчёт Raspberry Pi, поинтересовался у них — почему BeagleBone находится в списке экспортных ограничений, а Raspberry — нет. Толком мне ничего не разъяснили, но подтвердили — Малины в этом списке нет. Возможно, пока нет :-)

Процесс разработки проходил довольно весело. Прям-таки мечта поэта. Сидишь, придумываешь что бы ты хотел чтоб было на борту, а Александр (коллега, непосредственно занимающийся именно схемотехникой железки) либо говорит «да легко, блин» и добавляет только что придуманный функционал в схему, либо отвечает что «не, шибко дорого выйдет» и предлагает другой вариант.

Вся разработка происходила в свободное от основной работы время (т.е. по вечерам-ночам) и на собственные деньги. Точнее, на деньги одного из коллег, который по мере возможности финансировал весь проект и всю нашу команду. Так что на полном серьёзе на железку можно лепить наклейку «Разработано и сделано в России». Правда, из импортных деталей, тут уж ничего не поделаешь. К сожалению, нужных микропроцессоров и прочих деталей которые произведены в России мы не нашли.

Итак, спустя некоторое время у нас появился полный комплект документации для производства железки. К тому времени уже придумали название. Я ехал в машине, слушал радио, думал про железку, про машинки и про то как бы не врезаться в дамочку на жёлтой бэхе, которая очень коварно меня подрезала на перекрёстке у торгового центра XXL. А по радио «Эхо Москвы» как раз шло обсуждение очередной акции оппозиции и ведущий произнёс фразу «добро пожаловать в реальность». И как-то само собой в голову пришло сочетание — виртуальность в реальность, вирт в рил, virt2real. Тут же отзвонился коллеге в Питер, который название одобрил и которому тоже как раз нечто аналогичное на ум пришло. В общем, название сразу прижилось. А железку, соотвественно, стали называть «виртурилкой».

Для отладочных целей было решено изготовить десять сэмплов. Что и было сделано на одном из московских предприятий. Фактически, с первого раза мы сделали образец максимально приближенный к серийному.

Virt2real в сборе — два этажа


Virt2real в разобранном виде. Мелкая платка — для отладочных целей, в конечном виде слот для microSD и USB будут на основной плате.


Разобраный бутерброд, другой ракурс.


Первый этаж чипами наружу


Вы не представляете (ну, за исключением тех людей, кто часто занимается разработкой девайсов) что это такое — держать в руках готовую плату, которую придумали год назад, сидя на кухне и попивая пиво. Это кайф, восторг и гордость в энной степени. Пусть даже это всего лишь сэмпл, в котором уже нашли пару косяков.

В общем, дальше последовал процесс ловли багов. Хотя, надо сказать, Александр поработал отлично — всего пара-тройка косяков при таком объёме железа это отличный результат. Тем более что косяки получилось устранить довольно оперативно. К сожалению, нет видео, на котором было бы заснято как мелкой фрезой бурили скважину до третьего слоя платы (всего у платы 10 слоёв), чтобы поменять местами линии дифференциальной пары. Это было эпично :-)

Постепенно, по мере ковыряния с виртурилкой, всплыли ещё мелкие нюансы, которые на качество эксплуатации не влияют, но если их сделать немного по-другому — было бы удобнее. Такие мелкие исправления отложили до следующего этапа — мелкой серии, в которой можно было бы сразу все выловленные недочёты и неудобства пофиксить.

Самая сложная и неприятная часть разработки поджидала нас там где ее, честно говоря, не особо ждали. Сложнось заключалась в том, что никто из команды никогда не занимался портированием Линукса на различные аппаратные платформы. То есть вообще как это делается мы знали, даже был опыт написания своей ОС, для своих специфичных задач, WinCE опять же портировали, но Linux-ом как-то судьба не сводила до этих пор. А оказывается есть хорошие сборки Линукса, если плохие… Для оживления платы мы воспользовались SDK от RidgeRun. Этот SDK распространяется на платной основе, но для некоммерческих применений его можно попользовать даром. От софта требовалось обспечить работу с оборудованием и вообще посмотреть, на что она способна. RidgeRun нам приглянулся тем, что там есть поддержка реальной платы на DM365 (Leopard Board), включена поддержка аппаратых кодеков и достаточно неплохая файловая система. Но как обычно, дьявол кроется в деталях (за подробносями можно обратиться к классической работе freeworld.thc.org/root/phun/unmaintain.html). Оказалась, что этот SDK путем несметного количества костылей и подпорок заточен именно под ту железку для которой он изначально создвался — LeopardBoard. Шаг влево — шаг вправо и все разваливается так, что потом даже не собирается. Причем выполнение make clean (внимание!!!) приводит к тому, что не только удаляются следы жизнедеятельность компилятора, но и исходные коды тоже перезаливаются из RidgeRun-овского репозиторя — прощайте изменения. Видимо разработчикам SDK в голову не приходило, что кому-то зачем-то может потребоваться править их код. По странному стечению обстотельств у нас 90% времени ушло как раз на борьбу с SDK вместо того, чтобы реализовать то, что мы хотим. Однако в конечном итоге SDK не устоял под напором и железка заработала.

В общем, итогом работ по портированию SDK RidgeRun стало решение разработать свой SDK для нашей платформы.

Вот на этой стадии мы сейчас и находимся — железку можно хоть завтра в серию, а вот с SDK пока не всё так как хотелось бы. Что, впрочем, не влияет на юзабельность — виртурилка уже прекрасно рулит тележкой и лодочкой (см. видео в конце топика) :-)

В плане применения конечным пользователем-дуитёселфщиком предполагаем три уровня:

1. Начинающий — железка с нашей прошивкой, SSH-доступом и веб-админкой. Юзер может заливать свои скрипты на языках высокого уровня (PHP, Node.js, Perl, Python, Erlang) или готовые кросс-копилированные исполнимые приложения.
2. Продвинутый — всё то же что и для начинающего плюс SDK для сборки своих и любых сторонних приложений
3. Профи — использует сторонние дистрибутивы и SDK (Arago / OE / Angstrom / прочее)

Сейчас на борту доступны высокоуровневые языки программирования из обычного джентльментского набора — PHP, Node.js, Perl, Python, Erlang. Про Bash вообще молчу. Данного комплекта достаточно для удовлетворения 80% потребностей в плане управления ездящими штуковинами. Для оставшихся 20% — C/C++, но требуется кросс-компиляция.

Практически весь функционал контроллера доступен из «админки» — самописного управляющего веб-интерфейса. Удобно — не надо в консоль лазить.

Пролог закончился, теперь самое интересное — описание платы.


Устройство virt2real, «Виртурилка», изготовлена на базе процессора фирмы Texas Instruments семейства DaVinci TMS320DM365. Возможна установка более мощной модификации, TMS320DM368 (400Mhz), они полностью совместимы по ногам.

Так как изначально планировалось применение на борту управляемых железок, на плате не стали монтировать цифровой видеовыход, хотя проц это позволяет (HDMI). Возможно, добавим в специализированной версии платы. Зато на борту есть аналоговый видеовыход, т.е. можно видео и при помощи аналогового видеопередатчика передавать, что довольно актуально при управлении на дальних расстояниях.

Монтажная плата (собственно, сам контроллер)
Устройство — двухэтажное.
Первый этаж — основная плата, на которой, смонтированы все основные модули. Плата имеет десять слоёв.
Второй этаж — плата расширения. Разрабатывается отдельно для каждого конкретного применения, в случае серийного выпуска конкретного изделия. На данный момент второй этаж общий для DIY применения. На него выведены сигналы GPIO, RG45. Смонтированы силовые чипы и от них разведены клеммные колодки для подключения силовой нагрузки — моторов, лампочек и т.д.

Размеры: 70х42х10мм (первый этаж)

Процессор

ARM9 210-300Mhz (ARM926EJ-S rev 5) On-Chip L1 Cache 32 KB (ARM9)
Технология ARM Jazelle
Объем кэша команд — 16КБ
Объем кэша данных — 8КБ
Объем встроенного в процессор ОЗУ 32КБ
Little Endian
Два видео-сопроцессора (HDVICP, MJCP)
Часы реального времени PRTCSS (Power Management and Real Time Clock Subsystem)
Четыре 64-битных таймера общего назначения
Один 64-битный таймер Watch Dog

Процессор выполнен по 65nm технологии
Расширенный температурный диапазон (-40°C — 85°C) (для варианта процессора в индустриальном исполнении), для обычного —

DSP

Аппаратное ускорение MJCP и HDVICP
Аппаратная поддержка H.264, MPEG4, MPEG2, MJPEG, JPEG, WMV9/VC1
Разрешение кодируемого видео D1 и меньше, 720p (1080p для DM368) 30 fps

Видеоподсистема

4:2:2 (8-/16-bit) интерфейс
8-/16-bit YCC до 24-бит RGB888 цифровой выход
Аппаратный On-Screen Display (OSD)
Интерфейс IPIPE (IPIPEIF)
ISIF (Image Sensor Interface) и CMOS Imager Interface
Histogram Module
Lens distortion correction module (LDC)
Hardware 3A statistics collection module (H3A)
Композитный NTSC/PAL видеовыход
Компонентный видеовыход (соответствующие сигналы выведены на второй этаж, но предстоит реализовать конечную поддержку)
LCD (поддерживается процессором, но в текущей версии платы не используется. Будет задействован в следующих версиях)

Память

DDR2 128 — 256Mb
NAND 256Mb

Интерфейсы и периферия

GPIO — 51 шт. Логические уровни 3.3В и 1.8В
PWM — 4 шт
I2C
SPI — 5 шт
UART — 2 шт
DAC — 3 шт
ADC — 6 шт
USB 2.0 High-Speed host port
USB-клиент
microSD
Аналоговый компонентный видеовыход
Аналоговый композитный видеовыход (максимум 480p)
Аудиокодек CQ93VC (AAC-LC,G.711,MP3,WMA)
Линейный аудиовыход (моно)
Аудиовыход на спикер (моно, 300 mV на нагрузке 8 ом)
Аналоговый микрофонный аудиовход
10/100Mb RJ45 Ethernet
Вход для цифровой камеры
Wi-Fi b/g (чип HDG104)
Разъёмы для подключения силовой нагрузки (моторы) (3 микросхемы L293D)
McBSP интерфейс (Multi-Channel Buffered Serial Port)

Камера
На данный момент опробованы OV7690, OV7675 (шина 8 бит), вообще должны работать любые с шиной 8/10 бит, при наличии драйвера соответствующей камеры

Питание

2.8 — 15 Вольт. Потребляемый ток (основная плата при включённом wi-fi) при напряжении > 5В — 220mAh. При напряжении питания меньше чем 5В, потребляемый ток больше. Источник питания схемы выполнен по схеме SEPIC, который может как повышать так и понижать питающее напряжение для того, чтобы обеспечить необходимые напряжения в схеме, например при питании от 3-х вольт плата все равно выдаст требуемые 5В на USB.

Модули расширения

Вообще, второй этаж был задуман так, чтобы позволить легко реализовать специфику разнообразных пользовательских приложений. На второй этаж заведены всевозможные питающие напряжения и интерфейсы, при том, что используются стандартные PLD разъемы с шагом 2.54 мм. Если очень захочется, человек может сам в домашних условиях, разработать, нарисовать вытравить и распаять плату для решения своей задачи — требования к ней практически никакие не предъявляются. И он получит компактное устройство с мощным процессором для решения своих задач. Можно наоборот, интегрировать плату в собственную разработку. Вся необходимая информация будет предоставлена. Не надо вдаваться в дебри про то, как устроен процессор и его периферия.

Операционная система

Linux 2.6.32.17
Android

SDK RidgeRun (на данный момент), MontaVista, Arago/OE, Angstrom,

Демонстрационные ролики


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

Итак, видео №1 — Общий обзор девайса virt2real (или же Виртурилки)


Видео №2 — Самое Главное Видео. У всех ардуинщиков должно пробить слезу ностальгии, ибо здесь заснято моргание светодиодом.



Видео №3 — Установка виртурилки на гусеничную платформу. Часть 1.
Кстати, шасси тележки очень даже неплохое. Называется DAGU RP5, купить можно здесь (МСК). Ни разу не реклама, просто я стопицот раз в этом магазине заказывал разную мелочёвку, привозят быстро и без лишней нервотрёпки. Хотя, в принципе, да — это моя им бесплатная реклама :-) Честно — магазину респект, все бы так работали.



Видео №4 — Установка виртурилки на гусеничную платформу. Часть 2.


Видео №5 — Гусеничная платформа, управляемая Virt2real, в дейтсвии



Видео №6 — вид с борта тележки из прошлого видеоролика



Видео №7 — установка виртурилки на борт радиоуправляемой лодочки, дабы сделать управление оной со смартфона (конечно же, с видео с борта)



Видео №8 — продолжение прошлого видеоролика про установку железки на лодочку.



Видео №9 — Автономная трансляция на видеосервер



Видео №10 — Использование 3G модема и автономная трансляция видео (через RTMP) на видеосервер



Видео №11 — Виртурика как аналоговая камера (используется композитный видеовыход)



Видео №12 — Снова Виртурилка как аналоговая камера, но на этот раз — с OSD. Т.е. с отдельным слоем поверх видео

Небольшое пояснение: так как виртурилка, в первую очередь, задумывалась как контроллер для управления ездящих/летающих/плавающих девайсов — на борту отсутствует цифровой видеовыход. Т.е. к ней нельзя подключить монитор. Зато можно подключить аналоговый видеопередатчик, что актуально для летающих платформ с дальнобойным видео (самолёты/коптеры). Дальнобойное видео пока только аналоговое, так что именно под него мы и подстраивались. У виртурилки есть НЧ-видеовыход (композитный), который можно подключить к видеопередатчику, чтобы передавать видео далеко-далеко. Одновременно с этим видео можно записывать на SD-карту.

Помимо композитного выхода есть ещё и компонентный выход. Его не так просто по воздуху передать, так что его оставили пока незадействованым.



Видео №13 — Виртурилка и FPV видеопередатчик



Само собой, это лишь несколько небольших примеров. Возможностей у железки — море. Получилось даже больше, чем планировалось. А это очень даже неплохо, так как аппетит приходит во время еды. По мере осваивания новых, ранее неизвестных, функций, модернизируем и первоначальное использование. А когда выясняется что некий функционал практически поддерживается, но не хватает небольшой обвязки — вносим изменения в схему железки, или дополняем плату расширения.

Таким образом появилась идея использовать виртурилку как видеомодуль домашней охранной сигнализации. Просто до безобразия — я собрался на этаже (где моя квартира расположена) сделать видеонаблюдение. Ибо всякие нехорошие люди начали стены разрисовывать, бумажки всякие поджигать, и просто-напросто шалить. Собрался поставить видекамеру наблюдения, но всплыли проблемы — тот комп, который у меня круглосуточно функционирует, не имеет платы видеозахвата. Да и нагружать его дополнительной заботой как-то не хочется. Так что нужно чтоб видео с камеры наблюдения приходило уже в цифровом виде, чтоб его только на диск записать.

Само собой, сразу возникла идея использовать виртурилку в качестве главного блока домашнего видеонаблюдения. Но вот беда — у платы есть разъём только для цифровой видеокамеры. А CMOS камеры не славятся светочувствительностью, что довольно актуально в условиях лестничной площадки, где довольно паршивое освещение.

Написал коллеге о проблеме, в результате чего появилось решение — к виртурилке, в разъём цифровой видеокамеры, подключается небольшой переходник, который имеет несколько входов для обычных аналоговых CCD видеокамер. Мощности DSP хватает на оцифровку сразу четырёх камер (в случае DM365) и восьми (для DM368). В системе видится несколько устройств (/dev/video0, /dev/video1 и т.д.), каждое из которых можно обрабатывать — ужимать в h264 и либо сохранять на SD карту, либо передавать по сети. Вот и получилось требуемое — виртурилка оцифровывает картинку с нескольких камер и передаёт на сервер.

Данный функционал пока не могу продемонстрировать, ибо плата-переходник пока в разработке. Но как только сделаем — будет соответствующее демонстрационное видео.

Ещё интересный функционал по обработке видео предоставляет OpenCV. Эта бибилиотека есть на борту, но в плане практического применения я ещё её не проверял, извиняйте.

Эпилог


Изначально мы планировали использование железки только в DYI проектах, особенно в плане дистанционного управления (через Интернет и локально, с обычных компов, со смартфона, с планшета и т.д.) разными механическими девайсами. Но постепенно пришли к выводу что возможно применение и в конечных промышленных девайсах. Так как мы являемся авторами-разработчиками и имеем все возможности для модификации платы под конкретные нужды, можем выкинуть всё лишнее и оставить только необходимое (для удешевления конечного устройства) и выпустить, например, видеорегистраторы на базе нашей платформы. Видеорегистратор с подключением к беспроводной сети (Wi-Fi или 3G/4G) — можно сразу видео транслировать на видеосервер или подключиться к машине удалённо и посмотреть что в ней творится, и т.д. и т.п. Вариантов конечного применения — море. Тут уж всё будет зависить от того, что предложит заказчик или инвестор.

Если у вас есть предложения по сотрудничеству — пишите письма. С креативными идеями — велкам в комменты.

Официальный сайт — http://virt2real.ru
Форум — http://forum.virt2real.ru
Wiki — http://wiki.virt2real.ru
e-mail — info@virt2real.ru
Youtube канал — http://www.youtube.com/user/virt2real
Twitter — http://twitter.com/virt2real

P.S. Пользуясь случаем, хотелось бы от лица всех разработчиков высказать глубочайшее почтение и уважение нашим супругам. Которые довольно долгое время терпели наше просиживание за компьютерами. А мы занимались разработкой, вместо того чтобы уделить внимание своим половинкам. Мы вас любим и стараемся на ваше же благо. Чмоке-чмоке, короче.

P.P.S. Наша команда:
Евгений Realizator МФТИ, «Факультет Радиотехники и Кибернетики»
Александр AV2R кандидат физмат наук, МФТИ, «Факультет Радиотехники и Кибернетики»
Макс mkrentovskiy ТулГУ, «Факультет Технической Кибернетики», «ЭВМ, комплексы, системы и сети»
Серёга Gol ТулГУ, «Факультет Технической Кибернетики», «ЭВМ, комплексы, системы и сети». Но выперли с 4-го курса за перманентное раздолбайство :-)
Автор: @Gol
Virt2real
рейтинг 44,58
Компания прекратила активность на сайте

Комментарии (210)

  • +9
    Очень круто! И какая же цена данного девайса для получения в личное пользование?
    Респект вам, теперь у ардуинохейтеров будет на одну плату для ненависти больше :)
    • +2
      Про конечную цену пока рано говорить, ибо будет зависеть от тиража. Но, само собой, будет дешевле (на крайний вариант, сравнимо) чем похожие железки из-за границы (а главное — без проблем с таможней), иначе бы не затевали всю эту эпопею.
      • +3
        Поглядывал на ардуино, но теперь хочу виртурилку. Желаю удачи и скорейшего выпуска устройства в серию.
      • 0
        Вы нереальные молодцы!
        Я тоже хочу себе Виртурилку! Она, как мне кажется, покруче RPi будет.
        • +2
          назначения немного разные
          • +3
            совсем разные
      • 0
        Искренне надеюсь, что вы найдите спонсора для запуска в серию. Очень жаль что нельзя купить прямо сейчас.
        Под свой проект ищу аппаратную реализацию которая бы работала на стороне клиента, ваш девайс подходит идеально, впрочем как RPi.
        Удачи вам!
  • +4
    Очень круто!
    Вы молодцы!!!
    • +1
      Спасибо, очень старались :-)
  • 0
    Ребят, расскажите про ваш background
    • +1
      У нас тут мнения разделились, по поводу какого именно бэкграунда ваш вопрос :-) Можете уточнить?
      • 0
        Это означает на английском «образование/предыдущий опыт работы»
        • +1
          Добавил в конце топика
          • 0
            Спасибо) У читателей не тесно связанных с роботостроительством теперь будет более точное представление как можно прийти «к жизни такой» ))
  • +1
    На экспорт не думали продавать?
    • +3
      Хороший вопрос. Теперь подумаем.
    • +1
      Раз уж они они ввезти не смогли, то вывезти — точно не смогут.
      ФТС РФ — тот ещё квест!
      • 0
        Надо паять в Белоруссии или на Украине! Процессоры для С-300 делают же в Швейцарии…
        • 0
          Кстати, у нас ряд ограничений по ввозу как раз из-за Белоруссии.
          В связи с таможенных союзом и белорусскими требованиями приёмопередающие устройства ввозятся как какое-то ОМП.
  • 0
    Потрясающая штука! на такой наверное очень удобно будет делать народный мониторинг и кучу новых крутых проектов! ААА!!! Сколько новых перспектив!)
    • +1
      У меня самого тут уже немеряное количество проектов сразу восстало из ящика.
  • +55
    image
  • +1
    Для похожих целей в свое время взял китайдроид и IOIO. Как пойдет в серию — желаю опробовать ваш гаджет.
  • +1
    Будет ли на «Начинающем» уровне поддержка Ruby?
    • +2
      Если нужен — будет.
      • +1
        Да, было бы здорово :)
      • 0
        И Java хочется, раз уж Jazelle есть :)
        Классный девайс, на мой взгляд. Надо брать :)
      • 0
        А ещё LuaJIT-2 (а в следующем году бы и 3) бы (с симлинком в «lua») ;)
        Вообще самое то было бы!

        Кстати, ребят, я тут уже лет 5-6 как вынашиваю идею умного дома своими руками, но катастрофически не хватает времени её развивать (особенно после рождения двоих сыновей).
        Да и вообще, я сисадмин-самоучка, так что идей-то куча, а опыта реализации не особо.

        В общем, можно к вам в почту завалиться (ну или какую-нибудь Jabber-конференцию, чтоли...) на тему умного дома? :)
  • +2
    Расскажите, пожалуйста, про Александра. =) Чем он занимается в реальной жизни, помимо виртурилки? Где и как получал опыт разработки подобных устройств. Какой институт заканчивал?
    Какие программы были использованы при разработке платы? Была ли какая-то отладочная плата, или до первой партии в 10шт. всё было исключительно на мониторе?
    Где брали детали для плат, например, тот же fpc коннектор?
    • +1
      Александр здесь появится ближе к вечеру, тогда сам расскажет.
      • +3
        пусть отдельную статью намутит лучше, там должно быть много, если по-хорошему писать
        • +2
          Похоже к отдельной статье дело и идет. Если просто выложить логи обсуждений команды за год — уже увлекательнейшее чтиво получится. Сам иногда перечитываю. :-)
          • 0
            ждём :)
    • +10
      Про меня рассказывать особенно нечего. Закончил МФТИ, занимался кучей разных вещей, и в итоге появилась квалификация на стыке разработки железа и софта. В теме с 2000-го года. Все начиналось с этой штуковины . Потом много лет занимался контрактной разработкой электроники, все больше как программист, но с годами все ближе и ближе к железу. Сейчас разрабатываю некоторое мобильное устройство для работы в GSM сетях, о котором, увы, подробно рассказывать не имею возможности. Мы с Евгением учились в институте на одном курсе, и когда они с Сергеем пришли ко мне с этой задачей, я присоединился к проекту. Разработка проводилась в редкие моменты, когда появлялось свободное время, поэтому она длилась так долго. Реально с можно было бы сделать это все месяца за 4, если работать как белые человеки, на не урывками по ночам в свободное от работы время. Изначально моей функцией было техническое руководство созданием платы. Схема рисовалась о OrCad-e, плата рисовалась в PCAD-е. Первоначальный вариант схемы делал не я — мы привлекали стороннего специалиста. Я ее только потом переделывал, когда после того, как она была отдана нам, обнаружил в ней порядка 150 ошибок в самых неожиданных местах :) Как говорится, перепутал RAS и CAS, потому что… не знает как работает память DDR. С разводкой было проще. Мы привлекли очень высококвалифицированного товарища — который сделал все безупречно. При разработке приходилось экономить средства, поэтому пошли на риск и стали делать все в конечном виде. Хотелось сделать все максимально приближенным к реальности, то чтобы следующая итерация была уже серией. Сразу закупили комплектующие на 12 комплектов и изготовили печатаные платы на 10 комплектов.
      Сначала были смонтированы 2, мы убедились, что устройство работает, потом еще 8, чтобы можно было нескольким людям поэкспериментировать. Нам хочется получить как можно больше отзывов, чтобы учесть их в следующей итерации. Дальше планируем доработать схему, без революционных преобразований, выпустить еще 2 платы, убедиться в том, что все получилось и по этой документации выпускать тираж. То есть основные идеи были сразу прописаны в ТЗ и мы, типа, знаем, что делаем :)
      Насчет комплектующих — так просто и не расскажешь. Часть компонентов заказывали у производителей, как опытные образцы (то есть даром, взамен на развернутое описание нашего проекта), часть просто купили в магазинах типа electronshik.ru и т.д. Часть завозилась через посредников из digikey, farnell и т.д. Платы, в том числе FPC заказывали в PCB Technology, специфика такова, что для данный процессор без использования micro via не развести, поэтому количество компаний, которые могут это сделать — не очень большое. Монтаж делали там же. Параллельно прорабатывали вопрос про выпуск серии (закупка компонентов, поиск производителя печатных плат, производства для монтажа и т.д.), но это уже не технологический вопрос. К сожалению, тиражировать электронику в России очень не выгодно. Но окончательного решения насчет того, где это все будет делаться — еще не принято.
      • 0
        Спасибо большое за развёрнутый ответ, т.е эта разработка, фактически, как серьёзное хобби? А товарищ, который помогал с разводкой — тоже знакомый, или просто фрилансер?
        ps Я вам ещё личное сообщение отправил по личному, соответственно, вопросу — если не затруднит, ответьте, пожалуйста =)
  • +2
    Черт, выпускайте уж скорее! Предзаказ тоже будет уместен, возьму сразу 2 штуки! (одну для кофейного автомата, вторую для опытов).
    • 0
      Присоединяюсь. Правда интерес чисто профессиональный.
  • +1
    Ну наконец-то кто-то сделал подобную вещь, а то все эти огромные демоплаты от всяких TI и иже с ними, на которых тонны лишнего.
    Хороший продукт.
  • +1
    какая же задержка камера — плеер? для интерактивного управления крайне важная вещь. в цифрах, если можно.
    З.Ы. имеется ввиду цифровая передача изображения.
    • 0
      Это самое критичное и было — лаг видео. Разрешение — 640х480, меньшее даже не рассматриваем. Сейчас при MJPEG — 200-250мс по wi-fi, через роутер. Напрямую (на железке SoftAP) ещё не проверял. Но тут тормоза из-за флэша, тестовое приложение для управления на AIR написано. Нативное приложение пошустрее отрисовывать будет. А вот видео ужатое H264 с передачей по RTP — около 100мс, тут всё идеально. Но тоже предстоит приложение разрабатывать, сейчас (в демках видно) пока GStreamer использую для воспроизведения.
      • 0
        А если через аналоговый выход — то какой лаг? И сколько весит, кстати? Для летающих девайсов это важно.
        • 0
          На аналоговом выходе заметной глазу задержки вообще нет. Сравнивал с аналоговым выходом GoPro — у нас так же. Пренебрежительно мизерная, в общем, не знаю как точно измерить. Даже для самолёта подойдёт (я сам самолётчик).
      • 0
        ну, блин, на Qt надо налабать управляющую программу и убрать все проблемы, связанные с Air =)
    • 0
      Ну я для побочного применения (для автономной трансляции на видеосервер) лаг некритичен, тут и разрешение поболее можно (DM365 поддерживает 720p 30fps, DM368 — 1080p 30 fps), лишь бы канал в инет подходящий был.
    • 0
      Кстати, сравнивал с Parrot Ar.Drone (правда, первой версии) — у нас пошустрее видео идёт :-)
  • +2
    Молодцы!
    На мой взгляд, будущее за такими как Вы — маленькими группами энтузиастов, увлеченных своим делом. Которым нравится работать над своими проектами.
    • 0
      Тьфу-тьфу-тьфу, и соль через левое плечо…
  • 0
    Люто радуюсь за ваши успехи!!! Жду когда девайс поступит в продажу!
    • 0
      Ну, до полноценных успехов ещё далеко. Сейчас пока личная-командная победа — «Мы её сделали!» :-)
  • +5
    … разработать такую красавицу и умницу

    Судя по фотографиям это скорее красавец и умница. :)
    • +3
      Виртурилка — всё же «она». А вот антенна… Как там Бендер говорил? «Как же я без моего бендера-младшего?»
  • +1
    Сделайте рассылку на мыло, когда будет готово — купил бы с удовольствием, мыло сообщим, я думаю тут многие захотят.
    • 0
      До сего дня хранили полное молчание о разработке. Но теперь будем новости в Твитер постить. Так что «рассылка» как раз там и получится.
      • +1
        Кстати интересный вопрос про суеверия при разработке. Что я заметил во время нашей работы по виртурилке — после рассказа очередному человеку о проекте всплывали какие-то проблемы, отодвигавшие результат на несколько недель или месяц.
        А, еще вспомнил — изначально мы закладывали соотношение ширины и длины платы как золотое сечение. Но позже проблемы с компоновкой заставили от него отойти. :-)
        Может поделитесь у кого какие суеверия есть? Эдакий обмен эзотерическими аспектами разработки. Не знаю насколько такой опыт полезен, но то что интересен — точно.
        • 0
          Не давать бубен кому попало.
  • 0
    Кстати, для CarPC DIY тоже, по-моему, клёвый вариант, там народ на Андроиде мается с камерой заднего вида и видеорегистратором, тут же можно было бы замутить видеосервер + регистратор, как я понимаю… Выглядит вкусно, пишите ещё!
    • 0
      Мало того — тут ещё и не одну камеру можно подключить. Я упоминал дополнительный переходник для подключения аналоговых CCD камер (сразу нескольких).
      • 0
        Да я понял, тут и выходит как минимум две — заднего хода и видеорегистрация
  • 0
    Оплошал я. Забыл самое главное — команду упомянуть. Исправляюсь — добавил в конце топика.
  • 0
    Молодцы!

    Отличный пост и отличное подтверждение моих тезисов вот в этом посте: и затянутая разработка железа, и традиционные проблемы «железячников» с портированием выливающиеся в неизвестную дату коммерческой готовности встраиваемого софта и много другое.

    Взяли бы готовый SoM — с таким напором имели бы готовую к серии и продажам железку к прошлым новогодним праздникам!

    Но всё равно, вы молодцы — желаю удачи!
    • 0
      В статье мы постарались не забуриваться в совсем уж аппаратную плоскость обсуждения (аспекты проектирования). Если кратко — наш мониторинг готовых на тот момент решений не дал нужного результата, это раз. И второе — при разработке мы учли множество специфических вещей, которые не всегда предусмотрены в готовых платах.
      За ссылку спасибо — попробуем подумать в этом направлении. А пока мы пошли по принципу «самый короткий путь — тот, который знаешь». :-)
      • 0
        Я понял это.
        Но пошли по пути изобретения велосипеда.
        Плата в любом случае была бы своя, а вот процессор разводить и всё остальное, а зачем ещё и портировать ось — смысла не имело на мой взгляд. Путь долгий, дорогой и требует большого кол-ва компетенций для толкового результата.
        Есть пути проще и короче.

        Кстати, рекомендую ещё 485-й вывести, протоколы на базе него вроде сейчас и в RC применяются.
        • +1
          Не буду спорить, мы решили в общем-то стандартную задачу, заложив в нее столько требуемой нам специфики, сколько смогли. Использование модулей имеет много ограничений, основным из которых, на мой взгляд, является их доступность с течением времени. Плюс, номенклатура этих модулей тоже не очень большая. Нашим преимуществом является то, что сделав железку мы можем модифицировать ее как нам захочется, а с модулями так не выйдет. На самом деле мы как раз и сделали свой SоM, заточенный под конкретный класс задач :)
    • 0
      Насколько помню, когда затевали проект искали готовые варианты и полуфабрикаты, но не нашли подходящего.
  • 0
    Или я не внимательно читал, или Вы не уточнили вес изделия и точные габариты.
    Первое очень критично для самолето/вертолето моделистов.
    • 0
      Габариты указаны (70х42х10мм) а вот вес да, ещё не измеряли. Сравниваю вот с GoPro Hero 2 — гоупро тяжелее. Точных весов под рукой нет, так что сейчас не смогу взвесить.
  • +1
    Молодцы! А если бы на второй этаж вывели шину данных/адреса, то цены вам бы не было!

    К сожалению, не всё можно прокачать через GPIO. Хотелось бы иметь возможность вешать на второй этаж ПЛИС в зависимости от конкретного устройства, активно с ней общаться.
    • 0
      Есть такая идея, так что вполне возможно что так и поступим.
      • 0
        Тогда я встану в очередь)

        jAN выдает правильную мысль, что разводить процессор / писать SDK — дело неблагодарное. Но на их SoM'ах доступны только 16/8/0 бит шины, поэтому пользоваться внешней ПЛИСиной очень геморно.
        • 0
          Нет, конечно же SDK совсем с нуля никто писать не собирается. Написать патчи для PSP от производителя — да, но это намного проще.
    • 0
      Или вы имеете в виду выходы I2C? Для I2C как раз на второй этаж выведены I2C_DATA и I2C_CLK
      • 0
        Нет, я именно про общую с внешней ПЛИС шину адреса/данных.

        Либо любой другой интерфейс с приличной скоростью
        • 0
          Всё в наших руках. Если очень надо будет (прям хоть опрос устраивай — что наиболее востребовано) — всегда можно внести изменения в схему и добавить интерфейс. У нас после небольшой оптимизации как раз место на первом этаже освободилось. Надо у Александра уточнить, серьёзные ли потребуются переделки.
          • +2
            Есть мысль USB чип (FTDI FT245) вынести на промежуточную плату (которая на картинке с SDIO разъемом), тогда можно будет организовать 8-битную шину на которую цеплять всевозможные устройства. Типа снимаем USB контроллер, если он не нужен, и ставим свой контроллер. Но вопрос в процессе проработки. Сейчас с помощью FT245 мы имеем высокопроизводительную консоль, но по ощущениям, несмотря на все ее прелести она нам не слишком нужна.
        • 0
          SPI? у 365 он есть.
          • 0
            SPI целых пять есть. Но тут человек про другое спрашивал.
            • 0
              Это сугубо моё личное мнение: наиболее простым вариантом как с fpga, так и с процессора будет именно SPI. Использование всех 5 уменьшает кол-во gpio и отключает clkout(0,1). Расскажите, пожалуйста, о других возможных вариантах.
              • +2
                Про возможность организации 8-битной внешней шины в будущем я написал. Сейчас для высокоскоростного обмена предназначен именно SPI. Если фантазировать, то можно задействовать USB HOST порт, Ethernet порт или SDIO порт, отказавшись от SD карты. Но эти варианты подразумевают наличие мощного контроллера на втором этаже — только тогда можно будет получить выигрыш в скорости. Абстрактно рассуждать об организации высокоскоростного интерфейса тяжело. Если бы было понятно зачем это нужно — конкретная постановка задачи, было бы намного проще предложить какой-то вариант.
                • +1
                  При разработке всякого рода радиоприемников ПЛИС и процессор сильно завязаны друг на друга. Поэтому при написании софта для процессора удобно иметь возможность обращаться к регистрам ПЛИСины как к любым другим ячейкам памяти. Просто по указателю. При этом между ПЛИС и процессором идет постоянный двунаправленный обмен данными. Относительно интенсивный, но самое главное — жестко завязанный по времени. Задержки больше десятков микросекунд — недопустимы.

                  Типичный обмен выглядит примерно так:
                  1) ПЛИС формирует прерывания для процессора 5 раз в 1 мс
                  2) Каждое прерывание процессор опрашивает 300-3000 флагов готовности измерений
                  3) Если измерения готовы (в среднем они готовы раз в 1 мс), забирает их себе в ОЗУ. Каждое измерение — от 3 до 64 32-разрядных чисел. В ответ кладет два 32-разрядных числа.
                  4) По пути изредка раздает команды управления

                  Вероятно, скорости и надежности SPI на это хватит. Но будет ли это удобно… Всё равно что использовать ОЗУ, подключенное по сети.
    • +3
      Мысль насчет ПЛИС у нас тоже была, но выводить шину интерфейса EMI на второй этаж не очень хотелось. У нас в нашем конструктиве всего 88 контактов. Внешняя шина займет очень много места. Рост числа контактов приведет либо к увеличению габаритов платы, либо надо будет ставить разъемы с меньшим шагом, и тогда к ним будет труднее подпаиваться. Это с одной стороны. С другой стороны у процессора есть всего 2 чипселекта для внешней шины, и оба они заняты — на одном висит NAND, на втором USB контроллер для подключения к компу. С третьей стороны у нас устройство разрабатывалось как контроллер, поэтому упор делался на конечный функционал, а внешняя шина — это некоторое промежуточное звено, которое в нашем случае будет работать в ущерб другим функциям. То есть сигналами, используемыми для внешней шины моторчиком уже не порулишь. Поэтому от внешней шины мы отказались. Для относительно скоростного обмена данными мы планировали использовать SPI (12 Мбит/с). Тогда на втором этаже можно разместить контроллер или ПЛИС, которая будет выполнять заданные функции под управлением этого интерфейса.
      • 0
        Мож шину получится не «на второй этаж» вести, а «в подвал»? Не вместо платы расширения, а в дополнение, типа для второй платы расширения?..
        • +1
          Есть такая мысль, чтобы зарезервировать контактные площадки, чтобы к ним можно было легко подпаять SMD разъем, какой-нить с шагом в 1 мм. Тогда туда можно будет вывести кучу всего полезного, того, что обычным людям не требуется.
  • +8
    Выпускайте уже в продажу быстрее. Не знаю пока она зачем мне, но даже ради поддержки вас куплю одну штуку, а там гляди придумаю куда примастерить)
  • 0
    Вообще респект вам ребята! Я Raspberry Pi так и не заказал ибо ждать ну очень не хочется, а хочется побыстрее сесть и сделать.
    А о крудфандинге/донейте не думали?
    • 0
      Raspberry у нас есть (специально сравнивали) — она всё же больше под стационарное применение заточена. Плюс очень прожорливая в плане питания. И габариты приличные, а уж торчащая SD-карта — вообще жесть. Так что — не конкурент ни разу. Но зато очень дешёвая (хотя с доставкой получается не так уж и очень).

      Про краудсорсинг думали, очень возможно что попробуем если желающие найдутся.
      • 0
        Желающие есть! только в комментах увидел человек 10, сам бы купил штук 10 — 20
  • 0
    Я в деле RC нуб. Расскажите как с этой машинкой можно по радио пообщаться на расстояниях до 500 — 1000 метров. wifi же, я так понимаю не добьет. Хочу самолет собрать.
    • 0
      Для дальнобойного применения — либо обычную аппу подключать (пульт), либо на UART вешать трансивер. Какой-нибудь APC220 (433Мгц, на открытом воздухе бьёт примерно на километр на 9600бит/сек). А видео с борта — через аналоговый видеопередатчик, видеодемонстрашка есть в топике (Видео №13)
    • 0
      Через мобильный интернет;-) моя мечта с 2000 года…
      • 0
        У нас в одном из роликов показана работа с 3G модемом, можно и йоту прицепить при желании. Вопрос в задержках видеопотока. Будем экспериментировать еще — у нас железка только-только на ноги встала, идет фаза активного тестирования для разных применений.
      • 0
        Капризная штука — этот интернет. Поэтому управление будет либо какой-нибудь переферией, либо автопилотом.
  • 0
    Парни, Вы молодцы! Подписался на Ваш твиттер, напишите, когда будете продавать устройства, хочу приобрести несколько.
  • 0
    на второй этаж бы еще 9dof систему…
    • 0
      Это без проблем подключается по i2c. Хоть прям щас бери да подключай. И второй этаж для этого вообще не нужен
      • 0
        >Вообще, второй этаж был задуман так, чтобы позволить легко реализовать специфику разнообразных пользовательских приложений.
        Тогда он вообще не нужен
        • 0
          Нужен для разводки более сложной периферии. А для dof по i2c — четыре проводка подключить. Или вы имели в виду не готовый DOF взять а свой развести? Если так — то да, согласен.
  • –5
    Памяти минимум 512 надо, иначе Firefox не пойдёт…
  • –3
    А вы в Сколково не пытались получить грант?
    • +3
      Нет. Ну, пока нет, и не уверен что будем пробовать. Хотя в наше время зарекаться нельзя. Только сейчас у нас проект дорос до такой стадии, когда можно всерьез рассматривать шаги в этом направлении. Очень не хотелось на ранних стадиях превратить идею в «пшик-стартап», когда недоразвитые ноги бегут далеко впереди головы.
  • +1
    Поздравляю Евгения и всю команду! Надеюсь на скорое продолжение ;)
    • 0
      Илья спасибо! Стараемся вовсю! Год работы над проектом в тяжелом режиме, однако, придает уверенности в своих силах, особенно когда видишь результат.
  • +2
    А если на kickstarter вам эту штуку прорекламировать?
    • +1
      У нас нет постоянно проживающего в штатах участника команды, а там есть всякие нюансы по родине проекта.
  • +2
    Я бы выложил ваш проект на краудфандинг и начинал собирать заказы.

    И выложите видео нормального качества, плиз, а не с экрана ноутбука или чего у вас там.
    • +2
      Насколько мне известно адекватных площадок краудфандинга в России нет пока. Поправьте, если ошибаюсь.
      По видео — учтем.
      • +1
        Во-первых, всё же есть, во-вторых, кто говорил про Россию?!
        • 0
          А вне Федерации — «список А» и ай-яй-яй…

          Если только Китай…
          • 0
            Поясните, что вы имеете в виду. Что нельзя будет ВЫВОЗИТЬ из РФ? Ну так не проблема перевести производство в другие страны.
            • 0
              Ввозить внутрь РФ будет нельзя из других стран.
              • +1
                Ну так а при чём здесь сбор денег на зарубежных площадках? Собрали и производи здесь, проблем-то.
      • 0
        А может без площадки? Просто разместить кнопку «donate» и подпись «Мы уже собрали Х денег, до запуска в серию нужно ещё Y рублей». Я бы пару тысяч подкинул, особенно, если бы это дало скидку при покупке устройства.
        • 0
          Тут много вопросов доверия людей к проекту и системе сбора средств. Вот если бы, например, такая площадка родилась под крылом хабра и была бы совместным проектом с каким-нибудь банком или фондом — да, жизненно.
  • 0
    Поискали подходящие контроллеры в продаже в России — есть в малых количествах и за дикие деньги. С двойной, а то и с тройной накруткой. А нам-то не одна-две штуки нужно, нам надо много таких контроллеров. А кошелёк не резиновый. Да и потакать ценовому беспределу перепродающих посредников как-то не хотелось.
    Ну дык, «список А» же. Возят то, что вывозить нельзя, рискуют. Вдруг их показательно прищучат к очередным выборам в США? Если нельзя, но очень хочется, то можно, но дорого…
  • +5
    ТУЛА! ЗДАРОВА!!! ЗЕМЛЯКИ!

    • 0
      Привет! Ну, проект, всё-таки, бОльшей частью Москва-Питер, в Туле у нас только Макс остался.
      • 0
        И что же он тут, все зачеты сдает?)
        • 0
          Ээээ… Зачёты??? У нас универ закончился в 2002-м (у меня) и в 2004-м у него :-) Так что все зачоты уже давно в прошлом
  • +2
    >>Вы не представляете (ну, за исключением тех людей, кто часто занимается разработкой девайсов) что это такое —
    >>держать в руках готовую плату, которую придумали год назад, сидя на кухне и попивая пиво.
    Представляю, на днях получил с производства первые опытные образцы, не давинчи конечно но и не AVR, ещё не включал.
    >>Самое Главное Видео. У всех ардуинщиков должно пробить слезу ностальгии, ибо здесь заснято моргание
    >>светодиодом.
    Ниразу не ардуинщик, но радость мигающего светодиода ничто не заменит, это да. Едва ли не первое что делается с новым девайсом — помигать светодиодом.
    Было бы здорово видеть качественные фотки платы в большом разрешении, люблю разглядывать.
    За статью спасибо.
    • +1
      Моя невеста сейчас ностальгирует, как моргала аналоговой схемой в 5 классе.
  • +1
    К сожалению, нет видео, на котором было бы заснято как мелкой фрезой бурили скважину до третьего слоя платы (всего у платы 10 слоёв), чтобы поменять местами линии дифференциальной пары.


    *CRAZY* :)
    А в чем разводили плату и почему так много слоев?
    Во сколько обошлось изготовление одной платы?
    • 0
      Плату разводили в PCAD, Минимальное количество слоев, в которых можно развести данный процессор — 6. Но есть рекомендации производителя и практика использования дополнительных земляных слоев для обеспечения устойчивости работы высокочастотных шин… Процессор в BGA корпусе с шагом 0.4 так просто не разведешь. И тут даже не в количестве слоев дело, а в используемой технологии, потому требуются micro via. 10 плат, которые мы произвели были конечно золотыми, но при партии в 1000 штук при заказе в Китае можно получить цену ~10$, что нас вполне устраивает.
      • 0
        Сам немного занимаюсь разработкой железа и понимаю, что это огромная работа! Молодцы, респект!
      • 0
        шаг же вроде 0.65 у dm36x?
        но micro via все равно требует :(

        так сколько, если не секрет, стоило изготовление?
        • 0
          Каждая плата вышла дешевле штуки зелени, судя по заявлению;-)
        • 0
          Да шаг 0.65 подтверждаю. Это я с чем-то другим перепутал. Насчет стоимости, предпочел бы не будоражить сознание, учитывая, что стоимость 10-ти комплектов — это совершенно абстрактная величина.
  • +3
    … про машинки и про то как бы не врезаться в дамочку на жёлтой бэхе, которая очень коварно меня подрезала на перекрёстке у торгового центра...

    Стиль повествования рулит :)
    • +2
      Я испытываю глубокую ненависть к сухим официальным текстам. Так что, по возможности, стараюсь излагать живым языком :-)
      • 0
        Редкое сочетание гуманитарного и технарского склада?! :)
        Отдельное спасибо за описание такого количества нюансов в комментариях!
        • –1
          Только вот не надо обзываться! Гуманитариев среди нас нет, одни технари, вот специально специальности (сорри за каламбур) указал в конце топика :-)
          • –2
            Технарь так никогда не напишет ;)
            • 0
              Технари разные бывают. У некоторых даже всё в порядке с русским языком.
              • +3
                image
  • +1
    О, привет конкурентам! Мы тут доделываем что-то похожее, только немного попроще (без кодирования видео) и думается заметно дешевле. Скоро всем покажем.

    Кстати, сколько примерно итераций заняло изготовление платы? DDR да ещё и свой wifi с первого раза заводится редко.

    • 0
      Почему конкурентам? :) Может быть «потенциальным партнерам». :)
      А у вас для каких целей устройство?
      • 0
        Ну если совсем вкратце, то это готовый встраиваемый компьютер с полным набором нужной периферии для дешёвых отдельных устройств. Т.е. это такая штука, которую остаётся только в корпус вставить и запрограммировать, потому что всё остальное на ней уже есть. Ну и это «всё остальное», в отличие от вашей железки, не включает в себя вход для камеры и (по крайней мере пока) ethernet.

        В общем, это продвинутая замена собственной разработки платам с микроконтроллером, к которым изолентой примотана всякая периферия. Видимо область применения не очень пересекается с вашей, хотя наверное это всё будет зависеть от конечной цены.
        • 0
          Интересно. Ждем анонса с нетерпением.
        • 0
          Видеозахват очень круто. Что на счет устройства захвата через HDMI? Я хочу из фотоаппарата сделать Ip камеру.
      • 0
        Кстати, SoC, который вы используете, вообще доступен в промышленных объёмах? По слухам, у raspberry pi например большие проблемы с поставками broadcomовских SoC'ов. И Allwinner свои дешёвые A10/A13 отгружает как-то не очень просто.
        • 0
          Смотря что считать промышленными объемами. 1000 штук можно купить хоть сейчас с поставкой в три недели. TI предлагает количества до 5000 прямо со склада через дистрибьютора на своем сайте. Вопрос о квотировании 10000 штук на след. год, когда мы их спрашивали, они даже думать не стали, сказали, что поставят без проблем.
          Вот если говорить о 100000 штуках, то скорее всего надо будет поработать и lead time будет полгода — не меньше. Но о таких количествах у нас пока речь не идет. Что касается Allwinner, то да, знаю, с ним есть проблема, потому что производственный план расписан далеко-далеко вперед, и если речь идет о партии меньше миллиона, они даже разговаривать не станут и документации не дадут. Но все таки у нас процессор достаточно специфичный, поэтому есть основания полагать, что для наших задач у TI процессоров найдется.
          • 0
            А как же на allwinner тогда cubieboard появился. Разработчик Том, бывший сорудник этой компании. Быть может он через знакомых партии меньше берет?
            • 0
              Насколько я понимаю, 100 штук allwinner a10 купить не проблема, а cubieboard в природе существует именно столько.
    • +1
      С первой итерации пошло, правда кое-что пришлось подточить и посверлить :)
  • +3
    Уже хочу! Много! Ещё больше! И что-бы на площадке сайта продавались ещё и модули разные и совместимые камеры!
    Блиииин… Это такая мечта, что просто дальше и некуда!
    • 0
      Про камеры мы много спорим. Я настаиваю на качественной камере (ну, относительно), а не самой дешёвой. Сейчас для отладки как раз дешёвенькие подключили (ov7675), не очень радуют. Хотя при нормальном освещении вроде более-менее.
  • +1
    Собирайте предзаказы. Будет понятен спрос ну и вообще, я не против поддержать отечественного производителя. Подскажите, а можно будет завести на вашей виртурилке пакет owfs (1-wire), для дома было бы самое то, мониторить и управлять устройствами.
    • 0
      1-wire есть, само собой. Я градусник DS18B20 всё собирался подключить на пробу, но тут в последнее время моск взрывался от обилия работ, так что не до него пока.
  • +4
    Очень круто! Поздравляю :)

    Запилите на ней видеорегистратор для машины у которого можно камеру на шнуре утащить втихаря под стекло, а сам блок под панелью сныкать, с руками отрывать будут.
    • 0
      Спасибо! Реально старались! :-)
      Мысль про скрытый видеорегистратор однако хороша! Нам бы сейчас еще обойти проблему с длиной шнурка — и решение считай готово, да.
      • 0
        А где вы видите проблему длины шнурка? 30см есть? ну и отлично. Камера на мелком кронштейне за зеркалом средним. Сам девайс предельно плоский и прячется под козырек солнечный. На липучке. Провод питания заводится либо от подсветки. либо традиционно, но длинным проводом сверху, прячась за молдингом окантовки двери. Все реально уже сейчас и установка займет десять минут в любой машине.
        • 0
          Даже полметра пашет без проблем, специально проверял шлейф подлиннее.
      • 0
        Видеокамеры скрытой установке вроде как запрещены к продаже.
        • 0
          Похоже, о том и речь…
          • 0
            При съемке видеокамера может переводиться из скрытого состояние в заметное окружающим.
            • 0
              Тут дело в продаже. Ясен пень, что замаскировать можно и дивикам двадцатилетней давности.
  • –1
    А что за светодиод такой что-то я не понял?
    • 0
      Минусёр второе видео смотрел?
    • 0
      Вообще это SML-LX0404SIUPGUSB
      • 0
        Ясно, просто в видео говорится что светодиод один и светит синим, белым, голубым и фиолетовым, думал может светодиод какой-то специальный, типа цвет от напряжения(ШИМа) зависит.
        Если светодиод RGB, то почему он у вас зелёным не светил или красным?
        • 0
          Там на самом деле несколько светодиодиков в нем, и комбинация их цветов дает результирующий цвет.
          • 0
            Да, я понял конечно же что внутри там три светодиода. Просто синий, белый, голубой и фиолетовый довольно «близкие» цвета применительно к светодиодам, поэтому думал может какой-то хитрый светодиод.
  • 0
    Cлоёность, модульность, похожесть на макетку и открытость шины — т.е. нацеленность на сборщиков и экспериментаторов, думаю, должны быть в числе «фишек» изделия…
  • +1
    я тоже столкнулся с проблемами при заказе beaglebone, единственные кто спокойно отправили были австрийцы www.tigal.com, за две недели до Москвы успешно доехал.
  • 0
    Замечательное устройство! У Raspberry Pi выигрывает по количеству интерфейсов и форм фактору ( то что можно как у Arduino сверху поставить плату расширения). Если сделать такую же простую среду программирования как у Arduino, что бы можно было уже через 5 минут после того как вытащил из коробки работать с ней (добавив конечно в язык расширения типа запуска из кода каких то программ и тп), и назвать как ни будь вроде ARMduino, то может стать настолько же популярной как и остальные *duino.

    ПС.
    На счет названия. Виртом в интернете называют виртуальный секс (пруфлинк — lurkmore.to/%D0%92%D0%B8%D1%80%D1%82)
    • +2
      Ну мы написали про поддерживаемые языки — при таком арсенале смысла писать отдельную среду программирования особо нет…

      п.с. а кто сказал что виртурилку нельзя использовать в этой области?
      • +2
        Это больше вопрос не техники, а маркетинга. Из этого арсенала: PHP, Node.js, Perl, Python, Erlang — я, к примеру, ни одного языка не знаю, возможно я, конечно, отношусь к 1%, а остальные 99% хоть какой то из них знают, но мне кажется что соотношение скорее обратное (можно провести опрос на форумах авио- и прочих моделистов, которые как я понял одна из целевых аудиторий) и соответственно доля рынка сильно снижается, потому что если у человека не хватит терпения прочитать книжку вроде «Как писать на PHP» то покупать плату он не станет.

        Тут есть на практике пример — arduino. Обычная плата с AVR микроконтроллером, но что бы её программировать, не надо читать книгу об устройстве микроконтроллера, не надо читать книгу про AVR Studio, язык программирования для нее изучается за 5-10 минут — и как результат известность и популярность.

        Но это важно только если затачивать плату под массового потребителя. Для других целей, наверно, там другие вещи будут важны.
        • 0
          Ну вообще для ардуины Вы пишете почти на C/C++. Просто когда есть огромное количество прекрасных пошаговых инструкций все кажется простым и легким.
          Мы, по сути, делаем на виртурилке доступными огромное количество языковых инструментов, доступных на настольном компьютере.
          • +1
            И там и там конечно Си, но для измерения напряжения в AVR Studio код выглядит так
            ADMUX = 0x44;
            ADCSRA = (1 << ADEN)|(1 << ADSC)|(1<<ADPS2)|(1<<ADPS1);

            while(ADCSRA & (1 << ADSC));

            l2 = (ADCL & 0xFF);
            h2 = (ADCH & 0x03);
            val = ((h2<<8) | l2);

            а для Arduino IDE:
            int sensorValue = analogRead(A0);

            Понятно что с первым можно разобраться. Я это уже дел и мне уже это не кажется чем то сложным. Но я помню свои ощущения когда я два года назад читал даташиты с целью понять что все эти буквы значат. По этому вначале купил arduino, а потом только с AVR стал разбираться.

            Главный аргумент делать что то понятное новичкам — то что их больше чем продвинутых. (во сколько раз трудно сказать, но по ощущением на порядок)

            В теории, среду вроде Arduino' вской можно достаточно просто сделать. Нужно написать текстовый редактор с парой кнопок, который будет редактировать какой то файл являющейся частью проекта скрытого от пользователя, в котором будут подключены написанные библиотеки и прочее. А затем при нажатии «скомпилировать» запускаться компилятор. На распембери я сейчас скидываю на него свои исходники и pro файл, а затем из консоли запускаю qmake и make(я с Qt Creator'a перешел поэтому использую это). То есть (просто для примера) при этой схеме нужен общий проект с реализованными функциями ввода, вывода и прочего и редактор, который бы открывал один файл, редактировал его, а потом запускал мэйки. Но на практике все конечно намного сложнее и время затратнее.
      • 0
        Лего лого, если правильно помню, — отличный образец полу-игровой IDE для ЧПУ, рекомендую посмотреть по возможности
    • 0
      ARMduino уже есть arduino.cc/en/Main/ArduinoBoardDue на Atmel SAM3X8E ARM Cortex-M3
    • 0
      А ещё Вирт — фамилия одного умного дядьки :-) Так что тут уж кому что
  • +1
    Молодцы! Ничего тут не скажешь!
  • 0
    Офигенная штуковина, ребята! Вы большие молодцы!
    Получилось даже получше всяких Raspberry.
    Надеюсь вы еще будете публиковать новости о своей разработке на Хабре!
    ЗЫ уже хочу купить парочку виртурилок!
  • 0
    Вы мне вот что расскажите. H.264 жмется, понятное дело, отдельным ядром, выдавая на выходе что-то терпимое.

    Вы представляете, как запаять CMOS видеокамеру? Такую же качественную, как в Logitech B910?
    • 0
      C910 у меня как раз эталоном является (та же B910, считай). У OmniVision много всяких моделей, будем выбирать дотошно (сейчас паршивенькая-дешёвенькая). У меня вот, к примеру, в планшете ASUS TF300 тоже вроде сенсор OVххх стоит (долго искал конкретную модель но пока так и не нашёл), картинка чуть ли не лучше чем у C910. «Запаивать видеокамеры» не требуется — модуль камеры идёт на небольшом шлейфике, который втыкается в шлейф-переходник любой длины. Лично проверял шлейф 50см — работает без проблем. Так что можно и короткий делать, и длинный. Короче, как угодно. Сейчас шлейф слегка колхозный (на видео демках видно), но окончательный будет заводской пайки, так что просто воткнуть модуль сенсора и всё заработает.
    • 0
      Кстати, Макс, на недавней Яндекс.конфе по Эрлангу (когда пиво уже распивать начали) я к тебе подходил, как раз хотел тебе железку эту нашу показать, но ты так раскритиковал аналогичные девайсы в плане кодирования видео что я рисковать не стал :-) И ещё я тебя мучил вопросами по минимизации задержки для скармливания видеопотока ерлику, эт тоже как раз применительно к виртурилке было. Сейчас вот RTP пытаюсь скормить напрямую Erlyvideo, но пока не удалось.
      • +1
        Да он вообще критикан тот ещё :)
  • 0
    Реквестирую второй Ethernet порт
    • 0
      А нужен независимый порт, или достаточно хаб на втором этаже поставить?
      • 0
        Независимый порт. Я давно ищу недорогой гаджет, чтобы на нем поднять шейпер трафика.
        • +1
          А Carambol-у смотрели?
          • 0
            Нет, сейчас гляну, спасибо.
          • 0
            Посмотрел описание. Там процессор Ralink RT3050.
            Расковыриваем подходящий роутер (Zyxel Keenetic Lite(4G), DIR-300/NRU) и получаем почти карамболу. Только что размер поболе будет.
            • 0
              Да, примерно так и есть.
  • 0
    Очень был бы рад увидеть сей девайс здесь:
    Matlab/Simulink, Hardware for Project-Based Learning

    • 0
      Мы бы тоже были рады увидеть его там :-)
  • +1
    Приезжало ТВ снимало у меня дома :-) Это ужас. Заранее примерный текст составили чтоб не теряться, но репортёр весь план порушил нафиг. Так что сейчас вот сижу, чувствую себя идиотом. Похоже, рассказывал вообще не то что надо было. Короче, если шибко уж облажался — чур громко не ржать :-)
    • 0
      Попроси их выслать ролик с передачей — сможешь вырезать непонравившиеся куски и выложить на ютьюб более-менее приличную версию. При поиске инвестиций и в других случаях ролик с телепередачей о своем продукте лишним не будет :) Если не секрет — какой телеканал?
    • 0
      Прям ностальгия :-D
  • 0
    Россия 2, «Вести.ру», эфир ночью 01:55, повтор утром у пятницу 8:42. Но могут перенести на понедельник. Запись обещали на сайте вестей выложить.
    • 0
      Наш проект тоже ребята из «России-2» снимали :) Если попросить, могут выслать материалы.
  • 0
    Обязательно приобрету! Запускайте продажу поскорее!
    • 0
      Мои поздравления! Эпичная работа! Даешь серийные девайсы!
  • 0
    Молодцы!
  • +1
    Поздравляю парни! Приятно что сидели за одной партой, а с некоторыми и на соседних горшках )
    • 0
      Здарова, Серёг! Спасиб! Теперь главное не просрать все полимеры.
  • 0
    Если сделаете проект открытым, хотя бы в плане прошивки и SDK, то цены ему не будет, а если еще и аппаратную часть открытой, то оторвут с руками и ногами. Удачи Вам!
    • 0
      Прошивка и SDK однозначно открытыми будут, это даже не обсуждается. Аппаратная часть — частично открыта будет (доп модули, всё кроме основной платы).
  • 0
    Начали сбор предзаказов habrahabr.ru/post/163865/
  • +1
    Возможно, это моё слишком сильное воображение и это никому больше не мешает. Тогда, пожалуйста, просто не обращайте внимание и пройдите мимо. Но я о названии. Виртурилка — что-то тут не то для русскоязычного :), извините, уха! Извините, но «дурилка» какая-то слышится. Притом, что само устройство более чем достойно! (восхищения, похвалы, гордости за своё детище для вас — создателей и за страну для нас — наблюдателей, кучи предзаказов и так далее) Не знаю… Это как туалетная бумага «Серла» и мыло «Дуру». Только это всё иностранцы, а тут мы сами… Ещё раз прошу прощения, если я один такой!
  • 0
    Ух ты! Туляки с политеха рулят! есть еще порох в пороховницах!
    • 0
      Я вот уже пожалел что про ТулГУ написал :-) Тут рулит МФТИ. Я из ТулГУ отчислился с 4-го курса ибо достал бред «особо талантливых» преподов с моей кафедры (ТК). Так что не благодара ТулГУ, а вопреки :-D
      • 0
        а, чорт! Но все равно приятно земляков встретить :)
        • 0
          взаимно :-)
  • 0
    Не томите как и где заказать? А может быть вы отдадите в свободное плаванье небольшой тиражик в магазины, что бы не нужно было искать вас и стыковаться. А так после универа заехал забрал из магазина? ;)
  • 0
    А вам приходила в голову идея использовать в качестве мозгов какой-нибудь смартфон?
    • 0
      А зачем? Arduino ADK и так хватает.
    • +1
      Эта идея уже многократно реализована — всякие айпады на колесиках и андроиди на тележках. Поищите на кикстартере.
      Если коротко, у смартфонов есть три беды:
      1. У него практически нет внешних GPIO и к нему трудно подцепить кучу периферии (иными словами, «кишки внутри»)
      2. Он большой и создавался под другие задачи — экран накладывает свои ограничения
      3. Цена. Я понимаю, что китайские андроиды есть по цене виртурилки. Но если виртурилку сделать тиражом в 50 000 экземпляров — все встанет на свои места.

    • 0
      Понимаю что в вопросе используется технический сленг, но все равно он чудесен! :)

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.

Самое читаемое Разное