Робот-газонокосилка (РобоКос)

Наше хобби — конструировать и программировать.
Демонстрация готовых роботов и устройств построенных своими руками.

Re: Робот-газонокосилка (РобоКос)

Сообщение Alex_Jet » 17 окт 2015, 16:09

Чувствую, специально поеду в Новосибирск лишь за колесами:) А кроме них, еще где-то приводы надо достать...
Контроллер действительно хороший! Если бы не та масштабность, которую я выбрал, то можно было бы купить.
Про масштабность - для облегчения отладки решил что в робокосе должно быть два контроллера - один центральный "сенсорный", другой перифирийный "управляющий".
Функции перифирийного:
1. Управление приводными моторами (PWM и 4 пина на управление в случае с L298N)
2. Управление мотором косы (1 пин, подключенный к Mosfet)
3. Опрос датчиков тока, блокирование работы моторов при превышении уставки
4. Счет импульсов с валов моторов приводов для прохождения точного расстояния
5. Опрос температурных датчиков, блокирование работы моторов при превышении уставки
6. Вывод информации на LCD
7. Взаимодействие, наверное, по I2C с центральным МК

Функции центрального:
1. Опрос 8-ми УЗ датчиков (6 датчиков препятствий, 2 датчика "обрыва")
2. Опрос 2-х кнопок бампера
3. Опрос 4-х ИК датчиков "обрыва"
4. Опрос 4-х ИК датчиков парковки (или все-таки будет достаточно 3-х?)
5. Измерение напряжения АКБ, тока заряда АКБ
6. Опрос магнитометра (или все-таки он должен быть на периферийном МК?)
7. Опрос кнопок управления
8. ИК/радио управление
9. Опрос датчика дождя
Последний раз редактировалось Alex_Jet 17 окт 2015, 20:50, всего редактировалось 1 раз.
Alex_Jet
 
Сообщения: 52
Зарегистрирован: 24 фев 2010, 20:58
Откуда: Томск

Re: Робот-газонокосилка (РобоКос)

Сообщение Medtech » 17 окт 2015, 16:43

Стоит добавить подвижный бампер и концевики к нему, как последний рубеж контроля препятствий, Сканер штрихкода или RFID меток для коррекции и контроля месторасположения робота.
Поставить забор вокруг участка.
Аватара пользователя
Medtech
 
Сообщения: 562
Зарегистрирован: 20 апр 2015, 22:02
Откуда: Москва
Skype: sergelola
ФИО: Сергей

Re: Робот-газонокосилка (РобоКос)

Сообщение Alex_Jet » 17 окт 2015, 21:04

Да, про подвижный бампер забыл - там запланировал 2 кнопки (включил в список выше). Про RFID и сканер - считаю излишним.
Забор вокруг самого участка есть, газон ото всего остального можно отделить декоративным заборчиком, в местах проходов/проездов временно размещать ИК барьеры.
Alex_Jet
 
Сообщения: 52
Зарегистрирован: 24 фев 2010, 20:58
Откуда: Томск

Re: Робот-газонокосилка (РобоКос)

Сообщение slom » 17 окт 2015, 22:40

ниче се задумка у вас....
ну тогда еще нужно гироскоп для определения перевернулся или нет, или наклона поверхностей.
звуковой датчик при обнаружении звуков похожих на животных, типа ежей, собак и кошек, включать отпугивающую сирену )
Аватара пользователя
slom
 
Сообщения: 645
Зарегистрирован: 07 сен 2014, 19:29
Откуда: Севастополь
Skype: slom_3d
прог. языки: 3d max :)

Re: Робот-газонокосилка (РобоКос)

Сообщение yak-40 » 18 окт 2015, 09:58

2Alex_JetВсё правильно, насчёт двух контроллеров. Я так и делал. Только дисплей считаю надо поставить на основной контроллер, а измерение напряжения бортовой сети на второстепенный. И ещё, ИК-управление на солнце очень плохо работает, так что радиоканал рулит :wink:
slom писал(а):звуковой датчик при обнаружении звуков похожих на животных, типа ежей, собак и кошек, включать отпугивающую сирену )
Вся живность и так разбежится от визга кос :D
- Этот человек - не человек! это робот!
- Как? уже делают?!
- Делают!!!
Аватара пользователя
yak-40
 
Сообщения: 3037
Зарегистрирован: 23 окт 2007, 22:03
Откуда: Москва
прог. языки: С
ФИО: Евгений Яковец

Re: Робот-газонокосилка (РобоКос)

Сообщение Alex_Jet » 18 окт 2015, 23:01

Думаю, вместо гироскопа пойдет магнитометр совмещенный с акселлерометром, например, LSM303DLH (http://easyelectronics.ru/elektronnyj-kompas-na-lsm303dlh.html). А вообще из доступных модулей (прототип именно из модулей будет состоять) есть только HMC5883L.
yak-40 писал(а):Только дисплей считаю надо поставить на основной контроллер, а измерение напряжения бортовой сети на второстепенный. И ещё, ИК-управление на солнце очень плохо работает, так что радиоканал рулит :wink:

Дисплей на перифирийном МК из того расчета что на нем будут свободные ноги (МК скорее всего один и тот же - atmega328p). Отладка все равно через uart. Измерение бортового напряжения на центральном из того расчета, что он будет мозгом, а значит будет принимать решение - "стричь дальше или идти заряжаться", то же и по зарядному току батареи - "ток снизился, значит идем стричь". Для простоты периферийный можно даже не опрашивать - только давать команды.
По ИК - может быть (хотя есть тупой опыт с аудиоцентром Panasonic - в летний солнечный день принимал команды с пульта на расстоянии до 30-35м), однако мне с большого расстояния будет не удобно управлять тележкой, оптимально до 10 м. А вот с "самонаведением" на зарядную станцию - вопрос более интересный. Как это реализовано у роботов-пылесосов?
Alex_Jet
 
Сообщения: 52
Зарегистрирован: 24 фев 2010, 20:58
Откуда: Томск

Re: Робот-газонокосилка (РобоКос)

Сообщение yak-40 » 19 окт 2015, 00:01

На роботе-пылесосе однозначно ИК. Вот например: http://roboforum.ru/forum88/topic4951-60.html
На улице же, обычно кабель, по которому бот едет на базу.
Alex_Jet писал(а):Для простоты периферийный можно даже не опрашивать - только давать команды.
Это зря. А вдруг он не работает, или завис...
- Этот человек - не человек! это робот!
- Как? уже делают?!
- Делают!!!
Аватара пользователя
yak-40
 
Сообщения: 3037
Зарегистрирован: 23 окт 2007, 22:03
Откуда: Москва
прог. языки: С
ФИО: Евгений Яковец

ardumower.com - немецкий проект

Сообщение 5m0 » 19 окт 2015, 17:50

Вот http://ardumower.com/index.php/de/
немецкий проект газонокосилки. Мозги ардуино мега. куча датчиков как планирует @Alex_Jet
так же у них есть магазин от запчастей до готового прототипа.
Софт открытый.

Пока мы изобретаем велосипед...
У них уже вполне готовое решение. Сейчас в проект ищут программистов для отладки софта.

Если кто готов пойти по немецкому пути я готов присоединиться :) так как мои знания зачаточны могу только копировать.
По их принципиальной схеме купил почти всю электронику. Пока балуюсь с прототипом (тележка на ардуино уно)
5m0
 
Сообщения: 29
Зарегистрирован: 19 окт 2015, 17:15
Откуда: Московская область

Re: Робот-газонокосилка (РобоКос)

Сообщение Alex_Jet » 21 окт 2015, 14:31

Я, думаю, что любой кто задавался вопросом конструирования робокоса уже знает этих энтузиастов. Мое мнение: Ардуино - это баловство, модули от нее удобно использовать в прототипах, но писать надо на Си в нормальных компиляторах. Ценники на их варианты деталей кусаются и поэтому необходима адаптация для наших условий, как например сделал автор топика (поставив на приводы моторы от стеклоподъемников ВАЗ-2110).
В части программирования все не так уж и сложно если вы понимаете как должно работать железо друг с другом, а также если можете составить алгоритм работы и перевести его в Си код. На данный момент заказал моторы приводов, подбираю нужные электронные модули на Ali и в свободное время по своим прошлым наработкам пишу main.c для центрального и периферийного МК. Соответственно первый в тестировании будет периферийный с временными кнопками на борту, для тестов скоростей, поворотов подцеплю TSOP на INT0, хотя в дальнейшем по INT0 и INT1 будут считаться обороты валов моторов приводов.

Добавлено спустя 2 часа 47 минут 10 секунд:
yak-40 писал(а):Это зря. А вдруг он не работает, или завис...

Значит, надо будет ждать ответ от него если он разобрал команду. Кстати, Вы на основе какого интерфейса организовали связь между МК?
Alex_Jet
 
Сообщения: 52
Зарегистрирован: 24 фев 2010, 20:58
Откуда: Томск

Re: Робот-газонокосилка (РобоКос)

Сообщение yak-40 » 22 окт 2015, 09:24

Alex_Jet писал(а): Кстати, Вы на основе какого интерфейса организовали связь между МК?

I2C
- Этот человек - не человек! это робот!
- Как? уже делают?!
- Делают!!!
Аватара пользователя
yak-40
 
Сообщения: 3037
Зарегистрирован: 23 окт 2007, 22:03
Откуда: Москва
прог. языки: С
ФИО: Евгений Яковец

Re: Робот-газонокосилка (РобоКос)

Сообщение Alex_Jet » 22 окт 2015, 11:12

Интересно! Приложите, плиз исходники.
Alex_Jet
 
Сообщения: 52
Зарегистрирован: 24 фев 2010, 20:58
Откуда: Томск

Re: Робот-газонокосилка (РобоКос)

Сообщение yak-40 » 22 окт 2015, 11:57

Alex_Jet писал(а):Интересно! Приложите, плиз исходники.

Исходники чего? Обмена по I2C? Так примеров в инете навалом)
Моей программы? Так она заточена под конкретное железо, про которое вы как-то сказали "Что-то все как-то примитивно..." :wink:
- Этот человек - не человек! это робот!
- Как? уже делают?!
- Делают!!!
Аватара пользователя
yak-40
 
Сообщения: 3037
Зарегистрирован: 23 окт 2007, 22:03
Откуда: Москва
прог. языки: С
ФИО: Евгений Яковец

Re: Робот-газонокосилка (РобоКос)

Сообщение Alex_Jet » 22 окт 2015, 13:52

yak-40 писал(а):Исходники чего? Обмена по I2C? Так примеров в инете навалом)
Моей программы? Так она заточена под конкретное железо, про которое вы как-то сказали "Что-то все как-то примитивно..." :wink:

Ну для меня примитивно - это с использованием доп.логики, реле, когда есть более продвинутые решения (о, которых Вы знаете). Но это не значит плохо! Ведь все гениальное просто:)
Интересен не столько обмен по I2C (с аппаратным я еще не работал, к сожалению), а какой протокол Вы придумали?
Помнится мне что для связи по nRFL2401 я придумал нечто такое:
Код: Выделить всё
//Передача команд и прием данных
#define   WhatAdrRemDev      bufferout[0]               //Запрос адреса удаленного устройства
#define   WhatNumOWSens      bufferout[1]               //Запрос номера 1-wire сенсоров удаленного устройства
#define   WhatNumADC      bufferout[2]               //Запрос номера АЦП удаленного устройства
#define   WhatNumRemIn      bufferout[3]               //Запрос номера входов удаленного устройства
#define   WhatNumRemOut      bufferout[4]               //Запрос номера выходов удаленного устройства

#define   ThisAdrRemDev      bufferin[0]               //Принятый адрес удаленного устройства
#define   ThisNumOWSens      bufferin[1]               //Принятое количество 1-wire сенсоров удаленного устройства
#define   ThisNumADC      bufferin[2]               //Принятое количество АЦП удаленного устройства
#define   ThisNumRemIn      bufferin[3]               //Принятое количество входов удаленного устройства
#define   ThisNumRemOut      bufferin[4]               //Принятое количество выходов удаленного устройства

#define   DataFromRemDev1H   bufferin[5+i]               //Данные №1 HSB от удаленного устройства (3 байта)
#define   DataFromRemDev1L   bufferin[8+i]               //Данные №1 LSB от удаленного устройства (3 байта)
#define   DataFromRemDev2      bufferin[11+i]               //Данные №2 от удаленного устройства (3 байта)
#define   DataFromRemDev3      bufferin[14+i]               //Данные №3 от удаленного устройства (3 байта)
#define   DataFromRemDev4      bufferin[17+i]               //Данные №4 от удаленного устройства (3 байта)
Alex_Jet
 
Сообщения: 52
Зарегистрирован: 24 фев 2010, 20:58
Откуда: Томск

Re: Робот-газонокосилка (РобоКос)

Сообщение 5m0 » 22 окт 2015, 17:33

Alex_Jet писал(а):Я, думаю, что любой кто задавался вопросом конструирования робокоса уже знает этих энтузиастов. Мое мнение: Ардуино - это баловство, модули от нее удобно использовать в прототипах, но писать надо на Си в нормальных компиляторах. Ценники на их варианты деталей кусаются и поэтому необходима адаптация для наших условий, как например сделал автор топика (поставив на приводы моторы от стеклоподъемников ВАЗ-2110).
В части программирования все не так уж и сложно если вы понимаете как должно работать железо друг с другом, а также если можете составить алгоритм работы и перевести его в Си код. На данный момент заказал моторы приводов, подбираю нужные электронные модули на Ali и в свободное время по своим прошлым наработкам пишу main.c для центрального и периферийного МК. Соответственно первый в тестировании будет периферийный с временными кнопками на борту, для тестов скоростей, поворотов подцеплю TSOP на INT0, хотя в дальнейшем по INT0 и INT1 будут считаться обороты валов моторов приводов.



Позвольте не согласиться.
Ардуино это не балавство, это быстрый старт и масштабируемость. Благодоря китайцам это еще и бюджетно. Бюджет от 200рублей за ардуину и от 30рублей за сенсор... Куда уж бюджетней. Сонары по 80руб, ик датчики в этих же пределах... компас+акселерометр от 300рублей.
На магазин при ardumover нужно ориентироваться только как руководство к действию, и как пример ТТХ при поиске комплектующих.

Буду строить по немецкому шаблону. на 24В
поэтому в основном комплектуху ищу с грузовиков ;)

Пока рассматриваю в качестве привода колес следующий вариант:
Мотор стеклоочистителя с редуктором например вот такой на камаз
http://chel.pulscen.ru/products/motor_s ... om_8472797

Не знаю лучше он мотора стеклоподъемников или хуже но ТТХ близки к немецким по мощности, а кто смотрел видео с их сайта, видел как бургер кило под 90 садится на робота сверху и едет :)
Единственный недостаток слишком маленькая частота вращения порядка 35оборотов в минуту. Т.е. скорость при 25см колесах будет 1.3-1.5 км/час.

Для привода режущего ножа планирую использовать мотор отопителя также на 24В мощностью 80-100Вт.

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

Итак на данный момент имеем следующий бюджет:
моторы 3шт=3тр
моторшилды 3шт = 400руб
дс-дс 300руб

контроллер мега 400руб
нано 2шт=200руб
сенсоры россыпью =500руб
датчики 500руб

аккумулятор 24 В 10Ah Lifepo4 с зарядником - 10труб это самая дорогая часть, можно поставить свинец за 2тр.

Итого: 15.1тр + непредвиденные15% =17,5тр. или 10тр со свинцом

Сейчас на маркете посмотрел минималка на заводского 50тр.
5m0
 
Сообщения: 29
Зарегистрирован: 19 окт 2015, 17:15
Откуда: Московская область

Re: Робот-газонокосилка (РобоКос)

Сообщение JohnnyFive » 23 окт 2015, 11:25

:shock: а где это мегу можно купить за 400 рубасов и литийжелезофосфат по 10 000 руб с зарядкой?

хотя про lifepo4 нашел по минимуму без зарядки в мск

Напряжение : 36в
Емкость: 13 ач
Химия: LiFePO4
Размер: 26*11*15 см
Токи до 30А продолжительно
Провода 12 AWG силикон
Есть зарядки 36в2А 2500р, 36в 5А 3750р

за 15 000 рублей...
Аватара пользователя
JohnnyFive
 
Сообщения: 33
Зарегистрирован: 16 май 2014, 15:03
Откуда: Москва

Пред.След.

Вернуться в Наши проекты

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6