Показаны сообщения с ярлыком кпк. Показать все сообщения
Показаны сообщения с ярлыком кпк. Показать все сообщения

вторник, 3 июня 2008 г.

Защищенный КПК своими руками

Целый час вчера сидел, разбирал старенький матричный принтер. Вот раньше делали! С трудом разобрал, несколько особенно неподатливых деталей пришлось просто выламывать, или перекусывать... Но поскольку времени на роботов у меня особенно нет, то пока руки работали, мозги в это же время уже обдумывали новый пост в мой любимый блог :)

В посте Выбор КПК для робота я обращал внимание на то, что КПК всегда можно вытащить из робота и использовать по прямому назначению. Однако, в том сообщении я совершенно забыл рассказать об опасностях использования КПК в роботе.

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

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

На Марсе условия еще жестче, нежели чем в обыкновенной городской квартире. Там, например, бывают пылевые бури, и ветер может кинуть и камнем в марсоход, и марсоходом, кстати, в камень - тоже! А камни там, судя по снимкам, часто - очень острые.

Поэтому, проектируя марсоход, стоит задуматься о безопасности КПК, его защищенности от воздействия вибраций, ударов, влаго- и пыле- защищенности.

Я даже написал небольшую статью по этому поводу и разместил ее на будущем RobotLab'е: Роботы на базе КПК. Проблема безопасности

В статье представлен обзор существующих защищенных КПК и краткое руководство по изготовлению "защищенного" КПК для робота своими руками.

Напоследок, хочу поделиться парой интересных ссылок, относящихся к КПК Palm, как к наиболее подходящему (на мой взгляд) КПК для изготовления бюджетного робота:

четверг, 1 мая 2008 г.

Выбор КПК для робота

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

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

Если у Вас нет КПК, и не хочется тратить слишком много денег, мой Вам совет - купите по дешевке обычный б/у Palm или его аналог. Его цена - порядка 1-2 тыс. руб.; купить можно, например, на Молотке, на eBay, или на каких-то других интернет-аукционах, барахолках и форумах.

Лично я для построения робота приобрел m125 (он на картинке), с монохромным дисплеем и на батарейках, со слотом расширения SD, работает этот зверь непрерывно порядка 30 часов(!). Кстати, такой КПК - вдобавок, еще и прекрасная читалка, он не пропадет, даже когда робот покроется пылью на антресоли...

Итак, для робота можно брать следующие модели: Palm m100, m105, m125, IIIxe, m500, Zire 21; Sony Clie SL-10, S300, S320, S360; а также любые другие, аналогичные по функционалу одной из указанных выше. Если Вы планируете использовать КПК также как читалку - старайтесь брать только модели со слотами расширения SD/MMC или MS.

Посмотреть спецификации различных карманных компьютеров можно, например, на сайте HPC.

Огромным преимуществом старых наладонников от Palm является их монохромность, а следовательно - очень высокое время автономной работы. Кроме того, под них очень много написано программ и утилит, они хорошо документированы, существуют неплохие среды для разработки под них.

Использование же Pocket PC хорошо тем, что в части программирования там все еще проще, поскольку все программирование может быть осуществлено с помощью Microsoft .Net Compact Framework, и с использованием современной мощной среды разработки Microsoft Visual Studio. Многие Pocket PC имеют интегрированные Bluetooth, Wi-Fi, GPS - управление этими модулями поможет сделать робота гораздо более интересным и продвинутым.

воскресенье, 6 апреля 2008 г.

Программирование в Palm OS

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

Хороший обзор возможностей программирования в Palm OS представлен в статье «Операционная система PalmOS для программиста» на CitForum.

Ознакомительная статья по CodeWarrior имеется на Ладошках. Там же, в колонке справа внизу - еще много статей по Palm OS. Читаем!

Много хороших ссылок в данном направлении дано на OpenNet. В частности, оттуда узнал, что даже интерпретатор Perl пытались в свое время сделать для Palm OS. Я лично Perl обожаю - насколько это вообще можно сказать, Perl - мой любимый язык программирования. И с Linux/Unix системами знаком очень близко, однако в качестве десктопа предпочитаю все же Windows. Но, не будем отдаляться от темы...

Еще один очень полезный ресурс по Palm OS расположился на Исходниках. Что может быть лучше, нежели чем иметь перед глазами готовые примеры? Ничего! Правда, большинство представленных исходников написаны под PRC-tools (для Linux/Unix систем), но приспособить их решения под CodeWarrior - дело пяти минут. Помимо исходников, данный сайт предлагает такие очень полезные вещи, как, например, SDK для Palm-ов, Sony CLIE и др. устройств и компонентов, с которыми можно работать в Palm OS. SDK я себе скачал первым делом!

Вообще, о текущем прогрессе... Оказывается, все-таки стрелки в UML-диаграммах я расставлять правильно не умею :) В частности, использование («use») иежду классами должно быть направлено в прямо противоположную сторону. Так что, пришлось полчаса поразгребать сгенерированный на основе UML код, чтобы он скомпилировался...

Как Вы уже поняли, я занят собственно написанием кода. Есть успехи: написал весь пакет CommPort, немного кода уже есть и в RobotMain. Уже сейчас проект нормально компилируется, умеет опрашивать COM-порт, и т.д. В данный момент занимаюсь проработкой модуля DBConnect (сохранение и загрузка данных из PDB-файла). Времени все это занимает не очень много, но у меня много и нету - как всегда, работа и семья съедают это время очень проворно :)

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

И еще одна не слишком, конечно, приятная новость, состоит в том, что, судя по всему, RoboNews.info загнулся окончательно. Уже больше месяца сайт не рожает новостей, ну, что же делать... Я создателям сразу говорил, что на энтузиазме они долго не протянут.

Зато пришла заявка в каталог Robotics.Ru: Робототехника в России - просится туда сайт Roboto.Ru, на первый взгляд мне понравился, да и контент уникальный. Буду пытаться связаться с владельцами, договориться о сотрудничестве... :)