Добрый день.
Это мое первое сообщение на форуме. Нашел форум вчера, почитал, впечатлился. Масса полезной информации!!!Захотелось тоже поделиться опытом.
Если то, что я скажу уже давно известно и реализовано - не судите строго.Я до этого сам дошел. И вообще не в теме. Если это будет кому-то интересно, буду рад.
Как нас учили, любая автоматическая система предусматривает ВВОД информации, ОБРАБОТКУ и ВЫВОД на внешние устройства.
Смартфоны сейчас есть почти у всех, начинают даже устаревать и стоят разумных денег. Говорят, можно китайцев дешево купить.
Для ввода у смартфона есть видеокамера, компас, акселерометр, GPS и главное - доступ к Интернету!
Смартфон сам по себе очень сильный компьютер. Многие умеют писать апликации для них и вполне реально (и полезно) этому научиться.
А вот с выводом из смартфона - проблема. Можно использовать USB разъем, но это жуткий геморой. Перевести телефон в режим хоста, поддерживать разные модели даже одного производителя... У Айфонов вообще нет USB разъема, как мне кажется. Короче, USB вычеркиваем.
Есть еще аудио выход. С ним работать проще. Дудим звук определенной частоты. Подаем звук на ножку микроконтроллера и измеряем частоту. По мере роста можно будет делать более сложные и разумные протоколы, а для начала можно взять несколько частот и каждой частоте поставить в соответствие команду. По левому и по правому каналу можно передавать независимые частоты.
Так родилась идея.
Захотелось проверить. Реальный проект в голову не приходил, так что решил сделать тележку, управляемую телефоном через Интернет.
Тележку заказал на hobbyking за 13 долларов.Робототехникой никогда раньше не занимался. Полазив по сайту хоббикинг, понял, что хочу еще и сервопривод. Его тоже заказал. Пригодилось.
Я знаком с MSP430, поэтому развел под него плату. Можно спаять и на макетке, но когда есть PCB - меньше проблем при отладке и эксплуатации:
Так как я совсем не в теме - вывод сделал на реле. Вчера уже на этом форуме нашел, что крутые парни вместо реле используют L293D. А я не знал. Так что ШИМ реализовать не могу, но заложил мощный резистор 10 Ом последовательно с мотором. Резистор можно закорачивать - машинка едет быстрее. Важное достоинство реле - машинка прикольно щелкает при маневрировании.
Платы спаял две - на одной вместо реле установил ледики. Чтобы видно было состояние выходов, и при этом чтобы оно не убегало от меня:
Для машины спаял рамку, соединенную с сервоприводом. Так что можно поворачивать телефон выше ниже, и таким образом направлять камеру. На фото тележка без смартфона (я им фотографирую).
С железом покончили.
Программная часть состоит из трех частей:
MSP430 - код простой. По сути
- управление реле, это тот-же самый ЛЕД. Мигание ледиками - это первый пример для начинающих.
- Слушать аудио - это как кнопка с прерываниями. Тоже есть в примерах.
- Серво - для MSP430 есть в числе примеров PWM (ШИМ).
Андроид и вебсервер написали дети за два вечера. Я пока туда не лазил. Но вкратце выглядит так. Управление идет черз вебсокет. Апликация слушает команды из Интернета и транслирует их в шасси. Взамен апликация пока ничего не посылает, но ближайшее будущее будет посылать видеостриминг с камер. В планах еще добавить телеметрию (уровень заряда батареи, уровень сигнала, GPS позиция, ориентация по компасу...)
Так как видеостриминг пока не сделали - на тележке ездят два телефона. Один - управляет. А другой - впередсмотрящий. На втором бежит скайп
Вот такая поделка.