Съдържание:

Как да направим тъп робот за косачка по -умен: 4 стъпки
Как да направим тъп робот за косачка по -умен: 4 стъпки

Видео: Как да направим тъп робот за косачка по -умен: 4 стъпки

Видео: Как да направим тъп робот за косачка по -умен: 4 стъпки
Видео: Гибо мае кючеци 😂🤣🤣 2024, Ноември
Anonim
Направете тъп робот за косачка по -умен
Направете тъп робот за косачка по -умен

Така че имам прекрасен, но глупав робот за косачка за трева (Снимката е от www.harald-nyborg.dk).

Предполага се, че този робот ще отреже тревата ми, но тревата ми е твърде голяма и сложна, за да може наистина да влезе в ъглите.

На моите рисунки не са показани множество дървета и люлка и така нататък и така нататък. Резултатът е, че роботът прекарва много време, прегазвайки вече окосени отворени секции и твърде малко време за косене на твърдите части.

Затова реших да добавя малко външно разузнаване.

23-04-2020 РЕДАКТИРАНЕ: сензорът не работи напълно, затова промених няколко неща

Консумативи

2 външни двупосочни превключвателя

ИЛИ

1 стар usb рутер

1 usb релейна карта

1 дигипарк

1 usb хъб

1 водонепроницаема кутия за електроника

23-04-2020 РЕДАКТИРАНЕ:

OR1 стар usb рутер

1 usb релейна карта

1 usb2serial tll thinghy

1 usb хъб

1 водонепроницаема кутия за електроника

1 Dfrobot URM 37 v3.2 ултразвуков сензор (вероятно бихте могли да използвате всеки сензор =)

kmod-usb-serial-cp210x

Стъпка 1: Стъпка 1: Ръчно рязане на Manuel Multi Area

Стъпка 1: Рязане на Manuel Multi Area
Стъпка 1: Рязане на Manuel Multi Area
Стъпка 1: Рязане на Manuel Multi Area
Стъпка 1: Рязане на Manuel Multi Area

Снимката показва как преминах от една зона за рязане към 2 области.

Роботът ми ще се стартира автоматично на всеки 2 ден, така че докато се сетя да го променя от една област в друга, това работи добре.

Използвах 2 ръчни превключвателя, като тези, които бихте използвали в коридор или стълбище.

Това работи, с изключение на тези, които използвах, бяха с твърде лошо качество и затова имах бъгове, които пълзят в тях и ги объркват

Стъпка 2: Стъпка 2: Автоматичното решение

Стъпка 2: Автоматичното решение
Стъпка 2: Автоматичното решение
Стъпка 2: Автоматичното решение
Стъпка 2: Автоматичното решение
Стъпка 2: Автоматичното решение
Стъпка 2: Автоматичното решение
Стъпка 2: Автоматичното решение
Стъпка 2: Автоматичното решение

Затова реших да направя нещо автоматично.

Взех използван маршрутизатор Netgear R6100, взех този, защото има wifi, usb и достатъчно памет, за да експериментирам за експерименти, вместо да го натоварвам с OpenWrt и приятели.

Имам най -добър usb 2.0 хъб от ebays и релейна карта 12v.

Тогава имах дигиспарк от по -ранен проект. 23-04-2020 РЕДАКТИРАНЕ: вместо това използвах usb2seriel

свързах релетата вместо превключвателите. използвах реле 3 и 4

След това инсталирах OpenWrt и добавих към него Crelay, picocom и coreutils-stty.

23-04-2020 EDIT: добавен xxk, kmod-usb-serial-cp210x също

Включен 12V в рутера и релейната платка.

23-04-2020 РЕДАКТИРАНЕ: използва Urm 37 v3.2 вместо останалата част от тази страница

Тогава научих нещо „забавно“. релето boad ще се опита да включи usb концентратора, като по този начин ще попречи на digispark да се рестартира правилно. Така че отрязах захранващия проводник в usb кабела от релейната карта и usb концентратора.

Тогава включих digispark и usb релейната карта в usb 2.0 хъба, а хъбът в рутера.

Честно казано, програмирах digispark, преди да го добавя към рутера

В digispark добавих бутон, който свързах между P1 и Gnd.

Този бутон поставих, така че роботът ще го активира, след като се зарежда в гаража.

трябваше да добавя пружина към активирането, за да получа добър солиден ангажимент.

Стъпка 3: Стъпка 3: Софтуер

Файлът съдържа програма arduino ide за digispark.

Той е поставен в root/LawnSelector.

Този файл се нуждае от няколко digispark библиотеки, като digiCDC и платките digispark, добавени към arduino ide.

След това файловете/root/GrassCtr/*.

Това са файловете, които действително вършат работата.

Kreds1 променя релетата в area1

Kreds2 променя релетата в area2

KredsStatus пита USB релето коя област е активна

23-04-2020 РЕДАКТИРАНЕ: Използвайте UltraSoundSeriel вместо да четете digispark.

ReadDigiSpark, чете новините всеки вторник.. Изчакайте. Чете входното състояние на digispark

GrassCtl разсъждава.

Ето какво прави.

Ако роботът е включен за повече от 10 часа, той решава, че роботът е за през нощта и това активира тригер, което го кара да стартира във всяка област всеки втори път. Причината за това е, че моят робот започва с изрязване на целия ръб и по този начин реже ръбовете през ден.

След това, след като роботът коси, сензорът ще каже, че роботът е излязъл.

Всеки път, когато роботът се върне за зареждане на батерията (дефиниран като за повече от 20 минути), зоната ще бъде променена в другата зона.

Моля обърнете внимание. Софтуерът е ужасно бъркотия, но работи, така нататък и нагоре

Стъпка 4: Стъпка 4: Активиране на софтуера

За да стартираме софтуера, трябва да направим нещо.

Добавих го към cronJob

*/5 * * * */root/GrassCtrl/GrassCtl

към файла

/etc/crontabs/root

След това, за да включа cronjobs, направих

/etc/init.d/cron enable

Доколкото мога да разбера, роботът сега ще премине между стартиране на косене 1 или 2 и ще промени това, което е косено всеки път, когато е бил при зареждане на батериите.

И да, сега става всичко

Препоръчано: