Сельхозробот-2. Позиционирование
Dec. 5th, 2011 11:22 am![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
В продолжение к этому. Мне как-то совершенно очевидно, что в приемлемые сроки силами небольшой команды невозможно разработать софт управления роботами, которые будет справляться со всем разнообразием реальных условий.
Поэтому нужно выпустить машину, которую бы покупали и использовали даже при полной неработсопособности ее роботического софта. Как машину с ручным или просто дистанционным управлением. Но чтобы при этом мысль "а нахрена я это руками делаю, там же процессор есть", все время билась в затылке у тех, кто ею дистанционно или вручную управляет. А потом собирать если не готовый код, то use-case.
Для этого нужно еще и смещение потенциальной аудитории в сторону тех людей, которые имеют представление о том, что компьютеры вообще-то программировать можно. То есть либо техническая интеллигенция, которую на дачи загоняют жены и тещи, либо подростки-школьники еще не утратившие интереса к реальному устройству окружающего мира. Поэтому машина должна быть сильно компактнее минитрактора Беларус-132. Она должна быть экономически оправдана на приусадебном участке (в предположении что цена часа времени работика заметно дороже типичной цены рабочего часа сельскохозяйственного работника. Машинку покупает высокооплачиваемый специалист, для того чтобы сэкономить время и посидеть на даче за шашлычком, вместо того, чтобы грядки копать).
Правда, тут получается интересная синергия - для того, чтобы устройство могло управляться процессором, и для того чтобы устройство могло управляться подростком/женщиной требуется примерно одно и то же - сервоприводы на все управляющие элементы. (Что касается женщины, то тут я предвижу что мужчина будет покупать это устройство в надежде что теперь женщина от него с грядками отстанет, поскольку физической работы это не требует. Но женщина не захочет с железякой возиться, и максимум что он получит - это вскапывание участка за полчаса вместо дня.)
Плюс к этому - открытая прошивка, доступный для даунлоада SDK (или вообще преимущественно скриптовый софт, чтобы для хакинга требоался только ssh-клиент и wifi-точка, куда устройство подключится). И доступное за смешную цену у всех дилеров данной железки "руководство программиста", описывающее в первую очередь теоретические основы computer vision, особенностей управления механикой etc.
Ну и естественно, всякая community инфраструктура - форумы, причем посвященные не только программированию, но и агротехнике и прочим применениям данного устройства, багтрекеры, магазин 3d-party приложений.
Поэтому нужно выпустить машину, которую бы покупали и использовали даже при полной неработсопособности ее роботического софта. Как машину с ручным или просто дистанционным управлением. Но чтобы при этом мысль "а нахрена я это руками делаю, там же процессор есть", все время билась в затылке у тех, кто ею дистанционно или вручную управляет. А потом собирать если не готовый код, то use-case.
Для этого нужно еще и смещение потенциальной аудитории в сторону тех людей, которые имеют представление о том, что компьютеры вообще-то программировать можно. То есть либо техническая интеллигенция, которую на дачи загоняют жены и тещи, либо подростки-школьники еще не утратившие интереса к реальному устройству окружающего мира. Поэтому машина должна быть сильно компактнее минитрактора Беларус-132. Она должна быть экономически оправдана на приусадебном участке (в предположении что цена часа времени работика заметно дороже типичной цены рабочего часа сельскохозяйственного работника. Машинку покупает высокооплачиваемый специалист, для того чтобы сэкономить время и посидеть на даче за шашлычком, вместо того, чтобы грядки копать).
Правда, тут получается интересная синергия - для того, чтобы устройство могло управляться процессором, и для того чтобы устройство могло управляться подростком/женщиной требуется примерно одно и то же - сервоприводы на все управляющие элементы. (Что касается женщины, то тут я предвижу что мужчина будет покупать это устройство в надежде что теперь женщина от него с грядками отстанет, поскольку физической работы это не требует. Но женщина не захочет с железякой возиться, и максимум что он получит - это вскапывание участка за полчаса вместо дня.)
Плюс к этому - открытая прошивка, доступный для даунлоада SDK (или вообще преимущественно скриптовый софт, чтобы для хакинга требоался только ssh-клиент и wifi-точка, куда устройство подключится). И доступное за смешную цену у всех дилеров данной железки "руководство программиста", описывающее в первую очередь теоретические основы computer vision, особенностей управления механикой etc.
Ну и естественно, всякая community инфраструктура - форумы, причем посвященные не только программированию, но и агротехнике и прочим применениям данного устройства, багтрекеры, магазин 3d-party приложений.
no subject
Date: 2011-12-05 08:22 am (UTC)Которые во-первых дешэвле стандартной ноутбучной материнки, а в-главных повотряемей. В смысле -- под это есть и разведённые платы, и на два слоя и без BGA. И это можно заказать в ближайшэй лавочке по клепанию плат, а при прямых руках -- протравить и пропаять дома.
no subject
Date: 2011-12-05 08:27 am (UTC)Кстати, как вариант - подключение обычного ноутбука и управление с него.
no subject
Date: 2011-12-05 08:30 am (UTC)Ну и не должно по большей части писание скриптов требовать компиляции. А человек, который соберется computer vision library хакать, наверное и с настройкой кросскомпилятора справится.
Подключение обычного ноутбука через WiFi должно быть предусмотрено в штатной прошивке как вариант для дистанционного управления.
Но при этом протокол обмена между софтиной дистанционного управления и устройством должен быть открыт и полностью документирован.
no subject
Date: 2011-12-05 08:50 am (UTC)А здесь Erlang лучше справится, чем Python. ;-)
no subject
Date: 2011-12-05 08:56 am (UTC)Впрочем там будет куча наворотов на тему "сервопривод еще не завершил предыдущую операцию", так что разницы между грамотным программированием там и там может действительно быть не так много.
Вопрос на самом деле в Computer Vision, По WiFi для дистанционного управления мы гоним компрессированный видеопоток, надеясь что распознавать его будут человеческие глаза. В локально выполняющиеся скрипты мы можем подавать некомпрессированный видеопоток и с большим разрешением. Плюс еще в базовый софт устройства явно входит библиотека computer vision, с интерфейсом для скриптов, а на ноутбук ее придется отдельно ставить.
no subject
Date: 2011-12-05 09:08 am (UTC)no subject
Date: 2011-12-05 09:36 am (UTC)А внутри там, конечно, должна быть OpenCV, Причем, возможно, близкий к неотключаемуму интеллект на тему "если к нам под колеса кто-то прыгает - останавливаемся".
no subject
Date: 2011-12-05 12:48 pm (UTC)Не обязательно. Все, что можно заскриптовать на стороне дистанционного управления, можно заскриптовать на самом роботе. С оговоркой насчет доступных вычислительных ресурсов, конечно.
Поэтому хаканье на стороне ДУ можнет быть фактически загрузкой скриптов по WiFi на робота.
no subject
Date: 2011-12-06 03:36 pm (UTC)Да там уже нужны зайчатки Трёх законов:
1.1) не наезжай на препятствие
1.2) останавливай ножи, когда препятствие наезжает на тебя
2.1) управляйся по сети, когда это не противоречит Первым законам.
2.2) выполняй свои скрипты, когда это не противоречит Первым законам и управление не перехвачено по Закону 2.1
2.3) всегда слушайся руля и педалей
3) заботься о своей безопасности в той мере, в которой это не противоречит Первым и Вторым законам.
no subject
Date: 2011-12-05 10:32 am (UTC)no subject
Date: 2011-12-05 10:45 am (UTC)no subject
Date: 2011-12-05 11:21 am (UTC)Они, конечно, ужасны.
Но очень привлекательны для широких слоёв населения, и имеют очень низкий порог вхождения. Не это ли требуется проекту?
Почему бы четверокласснику не написать прогу на, скажем, LOGO, после того, как рулить косулкой с пульта ему надоест?
Времена 4 Mhz и 1К ОЗУ кончились, мы можем ставить всё.
no subject
Date: 2011-12-05 11:39 am (UTC)no subject
Date: 2011-12-05 11:58 am (UTC)И он выберет питон, а не нунах.
no subject
Date: 2011-12-06 07:01 pm (UTC)Ну-ну, подскажите статью для "быстрого старта". А то все рассказывают про низкий порог вхождения, а статью написать никто не может...
no subject
Date: 2011-12-07 06:28 am (UTC)Мой опыт обучения - человек, не зравший что такое рекурсия (электронщик, там она сложноприменима), примерно за неделю начал писать на Erlang, а еще через неделю выдал вполне работающий код - препроцессор, вставляющий в C-шный код что-то свое. И это без отрыва от основной работы в области микроэлектроники.
no subject
Date: 2011-12-05 09:57 am (UTC)Подключение обычного ноутбука (или дажэ стацыонарного компа) -- это безусловно.
no subject
Date: 2011-12-05 10:25 am (UTC)