Comments 41
С акселерометром круто конечно, но неудобно.
А почему неудобно? Каким способом Вы бы реализовали? Спрашиваю, потому что можно было бы усовершенствовать проект.
P.S. Помимо акселерометра есть еще управление с экранных кнопок.
P.S. Помимо акселерометра есть еще управление с экранных кнопок.
Я бы сделал повороты планшетом как рулем в машине, а скорость пальцем на экране. Прикольно было бы еще на машину поставить wi-fi камеру и транслировать на планшет.
Коль юзать уже wifi то полностью перейти на него да и радиус покрытия по больше будет
Спасибо за идею, попробую так реализовать.
По поводу Wi-Fi: видео realtime с передачей mjpeg потока на планшет — рабочий прототип уже имеется, правда камера покупная полностью и не бюджетная. А с wi-fi управлением планы есть, но пока что никак не подберу подходящего Wi-Fi модуля для подключения к контроллеру. Китайские на ebay брать боязно из-за скудной документации, а WIZnet модули на офсайте продают мин. кол-во 2 штуки, а в России за них заламывают большую цену. Но наверное придется брать 2 шт. wiznet за неимением других вариантов
По поводу Wi-Fi: видео realtime с передачей mjpeg потока на планшет — рабочий прототип уже имеется, правда камера покупная полностью и не бюджетная. А с wi-fi управлением планы есть, но пока что никак не подберу подходящего Wi-Fi модуля для подключения к контроллеру. Китайские на ebay брать боязно из-за скудной документации, а WIZnet модули на офсайте продают мин. кол-во 2 штуки, а в России за них заламывают большую цену. Но наверное придется брать 2 шт. wiznet за неимением других вариантов
А если брать модуль wi fi модуль от ноута, как альтернатива, конечно жуткий боян выйдет, но дешевле чем winzet
Ну у меня во первых нет лишнего Wi-Fi модуля от ноутбука, во вторых остается открытым вопрос по документации. WIZnet не сильно дорогие, 25$ за модуль, просто мин. заказ 2 шт, получается 50$ за 2 модуля.
Может быть подойдет роутер TL-MR3020 и прошивка OR-WRT? У меня допустим в планах попробовать скрестить его и Ваше детище, если времени хватит.
Почти реализовал такое управление, как вы предложили. Поворот машинки осуществляется поворотом планшета, а под большой правый палец рисуется вертикальный seekbar. Единственное — не придумал как реализовать задний ход: либо отдельную кнопку сделать, либо разделить ползунок на 2 части — двигаю вниз — машинка едет назад, двигаю вверх ползунок — машинка едет вперед. Скорость пропорциональна положению ползунка естественно.
А может обойтись без ползунка и скрестить 2 метода управления? Поворот влево/вправо и наклон вперед/назад. Возможно это будет не удобно, просто предположение.
Не очень понял вопроса. Имеете ввиду при помощи акселерометра? Если да, то это так и реализовано (см. видео).
P.S. Кстати как придет танк, реализую еще один метод управления: по бокам 2 ползунка, левый для левой гусеницы, правый для правой. Т.е. раздельное управление.
P.S. Кстати как придет танк, реализую еще один метод управления: по бокам 2 ползунка, левый для левой гусеницы, правый для правой. Т.е. раздельное управление.
У Вас реализованы наклоны влево/вправо вперед/назад, а я имею ввиду поворот, как рулем.
Это тоже самое. А вообще возьмите в руки телефон и попробуйте поуправлять виртуальной машинкой по вашей задумке, особенно обратите внимание в каком будет положении телефон, когда полный газ (максимально наклонили планшет вперед) и поворот влево/вправо.
Я бы сделал как в радиоуправляемых пультах. Т.е. под правый большой палец например регулятор скорости, а под левый переключатель взад-вперед.
Сделал. Видео работы выложил: www.youtube.com/watch?v=-28a1hSGIVQ
О, классно, когда всё вместе есть, да ещё и с исходниками. Вы молодец.
Насчёт подключения пиропатрона — хотите стрелялку сделать, или прыгать будет, как блоха? :) Как я понял, у вас задумка большая, и это только часть её. Платформа внушает, на неё много чего можно поставить.
P.S. Сейчас к вам набегут рассказывать, как вы неправильно поступили, взяв .net, и как бы они всё ловко на ассемблере/сях закодили. Не слушайте
Насчёт подключения пиропатрона — хотите стрелялку сделать, или прыгать будет, как блоха? :) Как я понял, у вас задумка большая, и это только часть её. Платформа внушает, на неё много чего можно поставить.
P.S. Сейчас к вам набегут рассказывать, как вы неправильно поступили, взяв .net, и как бы они всё ловко на ассемблере/сях закодили. Не слушайте
Сейчас к вам набегут рассказывать, как вы неправильно поступили, взяв .net, и как бы они всё ловко на ассемблере/сях закодили. Не слушайте
Ну этого я не боюсь, т.к. на такой же платформе 4WD реализовал на STM32, плюс на другом шасси реализовал на Arduino (processing), не ассемблер конечно, но все же…
Но вообще код контроллера не очень сложный, а вот над Android приложением голову пришлось немного поломать.
Кстати о коде… Вы злостный нарушитель С# Code Style Convention
Но если забить на педантизм, то гуд. Еще бы описали как среду разработки под .Net MF разворачивать (про аппаратную часть в том числе).
Но если забить на педантизм, то гуд. Еще бы описали как среду разработки под .Net MF разворачивать (про аппаратную часть в том числе).
Не спорю, т.к. под ПК не программировал наверное с годов этак 96-97 (и то это был Visual Basic). Проект создавался исключительно для аудитории хабра, чтобы показать программистам, что и из под привычного для них инструментария разработки Microsoft Visual можно работать с контроллерами.
Про то как разворачивать среду под .NET Micro Framework Писал с год назад, но на другом сайте. Если интересно, то вбейте в поисковик «Начинаем работать с .NET Micro Framework».
Про то как разворачивать среду под .NET Micro Framework Писал с год назад, но на другом сайте. Если интересно, то вбейте в поисковик «Начинаем работать с .NET Micro Framework».
Очень таки неплохо. А управление акселерометром очень отличное решение, правда машинка, как по мне, очень резко поворачивает.
Мне кажется это из-за того, что отсутствует рулевой механизм. Как автор сказал — система похожа на управления гусеничным траком.
Все настраивается в приложении под Android. Можно сделать, чтобы не так резко поворачивала. Ну и плюс меньше наклон планшета вбок — меньше поворот.
Отлично сделали!
Недавно реализовал нечто подобное (синезуб+Андроид+Ардуино) для декоративной подсветки.
И там столкнулся с проблемой: дело в том, что при использовании модуля HC-05 невозможно корректно принять несколько символов одновременно — в серийный порт приходил полный бред — проблема в синезуб-модуле.
Из проблемы вышел, посылая односимвольные команды.
Жаль, что не слышал на тот момент про Netduino — все таки маловато статей про этот контроллер, по сравнению с Ардуино.
Теперь буду знать :) Спасибо.
Недавно реализовал нечто подобное (синезуб+Андроид+Ардуино) для декоративной подсветки.
И там столкнулся с проблемой: дело в том, что при использовании модуля HC-05 невозможно корректно принять несколько символов одновременно — в серийный порт приходил полный бред — проблема в синезуб-модуле.
Из проблемы вышел, посылая односимвольные команды.
Жаль, что не слышал на тот момент про Netduino — все таки маловато статей про этот контроллер, по сравнению с Ардуино.
Теперь буду знать :) Спасибо.
Круто. Единственное смущает — класс чересчур большей класс Program в коде .net. Почему не распихать в разные классы?
а для чего писать во флеш время потери связи? есть же RAM? Или предусматривается пропадание питания и затем его автономное восстановление?
Если есть флэш в МК, то почему бы ее не использовать? А при каждом включении передавать значение по Bluetooth и писать значение в RAM ИМХО нецелесообразно. Хотя конечно кто на что горазд… Я решил так сделать, но вариантов может быть множество.
А вообще, это значение AutoOFF можно жестко задать в программе (там сейчас эта строка закомментирована), а все действия с FLASH памятью удалить, т.к. оно занимает не мало строчек кода (особенно в варианте машинки на STM32) и писалось чисто для демонстрации возможностей передачи данных с Android и записи по Flash. Думаю в системах «умный дом» и т.п. это очень пригодилось бы.
Вообще проект больше создавался как how-to в помощь начинающим роботостроителям, т.к. в принципе проект не очень то сложный и при наличии открытых исходников (я их постарался максимально прокомментировать) позволяет во всем разобраться самому. Для себя (как придет гусеничная платформа) буду делать более навороченный проект, описание со всеми исходниками естественно потом выложу. Но это уже будет не на .NET контроллере… FEZ Panda II совместно с граф. сенсорным экранчиком уйдет под климат-контроль управления батареями центрального отопления в квартире.
А вообще, это значение AutoOFF можно жестко задать в программе (там сейчас эта строка закомментирована), а все действия с FLASH памятью удалить, т.к. оно занимает не мало строчек кода (особенно в варианте машинки на STM32) и писалось чисто для демонстрации возможностей передачи данных с Android и записи по Flash. Думаю в системах «умный дом» и т.п. это очень пригодилось бы.
Вообще проект больше создавался как how-to в помощь начинающим роботостроителям, т.к. в принципе проект не очень то сложный и при наличии открытых исходников (я их постарался максимально прокомментировать) позволяет во всем разобраться самому. Для себя (как придет гусеничная платформа) буду делать более навороченный проект, описание со всеми исходниками естественно потом выложу. Но это уже будет не на .NET контроллере… FEZ Panda II совместно с граф. сенсорным экранчиком уйдет под климат-контроль управления батареями центрального отопления в квартире.
Обожаю Хабр!!!
Гуд! Интересно. Это именно то что хотел реализовать я, с учётом Вашего опыта надеюсь будет сделать проще! Был бы инвайт, не пожалел бы.
Он уже есть, а написано вроде что из песочницы. Странно
А чтобы качать исходники надо на меге аккаунт зарегистрировать?
Появился новый проект на Arduino, плюс добавилась возможность просмотра Real-Time видео с Wi-Fi IP-камеры на Android-смартфоне, а также функции управления pan/tilt камеры.
Sign up to leave a comment.
Машинка на контроллере с .NET Micro Framework, управляемая акселерометром Android-устройства