Мазмұны:

Raspberry Pi Cam Tank V1.0: 8 қадам (суреттермен)
Raspberry Pi Cam Tank V1.0: 8 қадам (суреттермен)

Бейне: Raspberry Pi Cam Tank V1.0: 8 қадам (суреттермен)

Бейне: Raspberry Pi Cam Tank V1.0: 8 қадам (суреттермен)
Бейне: BigTreeTech - Manta - M8P - Basics 2024, Шілде
Anonim
Image
Image
Raspberry Pi Cam Tank V1.0
Raspberry Pi Cam Tank V1.0

Мен бала кезімнен танктерді жақсы көремін. Өзімнің жеке ойыншықтар жасау - менің армандарымның бірі. Бірақ білім мен дағдылардың жоқтығынан. Арман - бұл жай ғана арман.

Инженерлік және өнеркәсіптік дизайн саласында ұзақ жылдар оқығаннан кейін. Мен дағдылар мен білім алдым. Және арзан хобби 3D принтерлердің арқасында. Мен ақыры қадамымды жасай аламын.

Мен бұл танктің қандай ерекшеліктерін алғым келеді?

  • Қашықтан басқару
  • Аспалы бос дөңгелектер (нағыз танк сияқты!)
  • Айналмалы мұнарасы бар және BB тапаншасы 6 мм оқты атып түсіре алады
  • Бейне контроллерге жіберілуі мүмкін, осылайша сіз оны алыстан басқара аласыз

Басында мен ардуиноны контроллер ретінде қолдануды жоспарладым, бірақ кейбір зерттеулерден кейін бейнені өздігінен таратудың практикалық әдісі жоқ екенін байқадым. Алайда, Raspberry Pi бейне ағынына жақсы үміткер болып көрінеді. Сіз мұны әйеліңіздің телефонынан басқара аласыз!

Бастайық.

1 -қадам: қажет бөлшектер

Бақылау үшін

Raspberry Pi B нұсқасы

Қуатты Usb хаб (Belkin F4u040)

USB веб -камерасы (Logitech C270)

Wifi кілті (Edimax)

Әйелден еркекке секіру кабелі

Көлік жүргізу үшін

Серво немесе қозғалтқышты жалғастыратын екі жоғары момент (екі жетекші доңғалақ үшін)

Доңғалақ біліктеріне арналған 1/8 дюймдік болат (үйде деподан сатып алынады және арзан)

Он жеңді мойынтіректер (Макмастерге тапсырыс берілген)

Суспензияға арналған кейбір серіппелер (Harbor Freight -те көктемгі ассортимент сатып алынды, арзан)

Мұнара үшін

BB автоматтық ойыншық

Бір жоғары моментті мини тұрақты ток қозғалтқышы

Жоғары және төмен еңкейтуге арналған микросерво

1/4 дюймдік болат мылтық осі ретінде жүрді

Басқа заттар

Мен бұл резервуардың көп бөлігін 3D басып шығардым, егер сізде лазерлік кескішке оңай қол жеткізе алсаңыз, ол да жұмыс істейтін болады.

Мен PLA жіпшесін басып шығару үшін қолдандым, себебі онымен күресу оңай (ABS -те орау мәселесі жоқ). Бірақ, құмдау, кесу, кейін бұрғылау өте қиын.

Сіз 3D басып шығаруды теңшелген бөлшектер үшін жақсы деп ойлайсыз және сіз өте күрделі бөлікті бір бөлікке басып шығара аласыз. Бұл шындық. Алайда, менің ойымша, бұл әдіс әуесқойлар үшін практикалық және үнемді емес. Себептер:

Сіздің хобби принтері дәл болмайды.

Сіз өлшеу мен есептеулерде қателіктер жібересіз (төзімділік, туралау және т.

Қалай болғанда да, сіздің басып шығаруларыңыз жұмыс істемеуі немесе бірінші кадрға сәйкес келмеу ықтималдығы жоғары. Кішкене бөлік үшін бұл жақсы, сіз модельді өзгерте аласыз, содан кейін қайта басып шығара аласыз. Бірақ үлкенірек және күрделі бөлігі үшін бірнеше сағат бойы басып шығарудан кейін бірдеңе дұрыс емес екенін білу көңілсіз қалдырады. Бұл уақыт пен материалды ысырап ету. Міне, менің көзқарасым:

Кез келген нәрсе симметриялы болғандықтан, оның жартысын ғана басып шығарып көріңіз, егер бәрі жақсы болса, бәрін басып шығарыңыз.

3D басып шығару туралы ойлана отырып, бөлікті модельдеу. Принтер кереуетін бекіту үшін тегіс бет болуы мүмкін бе? Көп тірек құрылымды болдырмау үшін оны кішкене бөліктерге бөлуге бола ма?

Бөлшектердің көптеген мүмкіндіктері бар (көптеген басқа бөліктермен өзара әрекеттесу) үшін модельді модульдерге бөліңіз. Егер бір функция сәтсіз болса, сізде бүкіл бөлікті қайта басып шығару болмайды. Модульді түзетіп, оны қайта басып шығарыңыз. Мен оларды қосу үшін бұрандалар мен гайкаларды қолданамын.

Қолмен жұмыс жасайтын құралдармен, қол арамен, X-акто, электр бұрғы, ыстық желім тапаншасымен жақсы дос болыңыз. Егер сіз қатені басып шығаруды түзете алсаңыз, оны түзетіңіз.

Бұл менің танкімнің көптеген бөліктері бар екенін түсіндіреді. Мен бұл бөліктерді әлі де түзетемін және жақсы комбинацияны тапқаннан кейін мен оларды бір бөлік ретінде басып шығара аламын. Сонда бұл менің Cam Tank v2.0 болар еді.

2 -қадам: Жүргізу жүйесі

Image
Image
Жүргізу жүйесі
Жүргізу жүйесі
Жүргізу жүйесі
Жүргізу жүйесі

Тоқтату

Бастапқыда мен ілмектерсіз прототип жасадым, мойынтіректер мен дөңгелектері бар төменгі корпустың осьтері. Бірақ оператордың жайлылығын ойлап (мен оны ағынды бейнені қараймын!), Мен оны салқындату үшін суспензия қосуды шештім.

Менде тек спиральды серіппелер, гидравликалық және жапырақты серіппе жоқ. Мен бастапқыда PLA көмегімен бұралу жолағының механизмін сынап көрдім. (Бұралу штангасының ілінуі кейбір цистерналарда жиі кездеседі). Ерлі -зайыптылардың бұралуынан кейін PLA басылған тақтасы жұмсарып, ақырында бұзылады. ABS бұл үшін жақсы болуы мүмкін, бірақ мен ешқашан тырыспадым. Сонымен, қосымша зерттеулерден кейін мен Christie суспензиясының дизайнын таптым, міне оның қалай жұмыс істейтінін көрсететін қысқаша бейне.

Алайда, кристи суспензиясының көптеген ұсақ бөлшектері бар, мен ол кезде принтерге сенбеймін. Сондықтан мен осылай тоқтата тұрдым.

(сурет)

Бұл конфигурация тым көп ішкі кеңістікті алады. Сондықтан мен ішкі қолды 90 градусқа айналдырамын. Назар аударыңыз, бірінші және соңғы дөңгелек қысқа болды

Артқы кергіш

Мен танк кейбір кедергілерден өтіп бара жатқанда, бос тұрған дөңгелектер жоғары қозғалуы мүмкін, ал жол кернеуді жоғалтады деп ойладым. Мен артқы доңғалаққа кернеу механизмін қостым. Негізінен бұл екі ось шынайы осьті үнемі итеріп, жолдарды қысу үшін күш береді.

Доңғалақтар мен жолдар

Мен бұл шынжыр табанды тректер мен дөңгелектерді қатты конструкцияларда жасадым. Мен машина жасау туралы көп білмеймін, сондықтан редукторды есептей алмаймын. Сондықтан мен «Басып шығару» түймесін басқанға дейін жұмыс істейтінін білу үшін қатты бөлшектерді модельдедім. Әр жол 3мм қосалқы жіппен қосылады. Ол сәл тегістеу кезінде жақсы жұмыс істейді. Бірақ жолдың дизайнында кемшіліктер бар, беті жанасатын жер тым тегіс, оны ұстау қиын. Егер мен оны төңкеріп басып шығаратын болсам, мен протекторды қосар едім, бірақ тіске байланысты қосымша материал қажет болады. Болашақ шешімдер: 1: тісті бөлек басып шығарыңыз, содан кейін оларды жабыстырыңыз. 2. Бірнеше резеңке жабын бүріккіш бояуын жағыңыз.

Содан кейін мен сервоға арналған корпусты басып шығардым және жетекші доңғалақты серво қолына бұрандалармен бекітуге болатынына көз жеткіздім.

3 -қадам: қару -жарақ жүйесі

Image
Image
Қару жүйесі
Қару жүйесі
Қару жүйесі
Қару жүйесі

Бұл бөлім мен үшін ең қызықты. Сіз камералық ойыншық сатып ала аласыз. Бірақ мен бір ойыншық комбайн мен қару таппадым.

Мен бұл автоматтық пневматикалық ойыншықты сатылымда 9,99 долларға сатып алдым. (Бұл қазір шамамен 20 доллар, мен кейінірек арзанырақ нәрсені сынап көруім мүмкін) Және механизмді түсіну үшін оны жыртып алыңыз. Мен денені толығымен кесіп, оны резервуарыма жабыстыра аламын. Бірақ маған ұсқынсыз көрінетін жартылай дене ұнамайды. Сондықтан мен аздап өлшеп алып, механикалық бөлікті жөндедім. Бұл бөліктерден мен 3D басып шығару туралы сабақ алдым: сіз әрқашан қателесесіз. Әр бөлікті орналастыру үшін 5 баспа қажет, және оны мінсіз етіп жасау үшін көптеген кесу, тегістеу және ыстық желімдеу қажет.

Ойыншық мылтықтың әр бөлігі менің қайталанған денемде дұрыс қозғалғаннан кейін, мен денені қысу үшін тағы төрт бөлікті басып шығардым. Сондай -ақ, еңкейту механизмі, BB оқ воронкасы мен камера тірегі қосылды. Бұл бөлшектердің барлығы мылтықтың корпусына бекітілген. Ақыр соңында оларды кем дегенде екі бөлікке біріктіруге болады. Бірақ мен әлі дайын емеспін деп ойлаймын.

Мұнара негізіне мен еңкейтуге арналған микро серво мен айналуға арналған тұрақты ток қозғалтқышын қостым.

Содан кейін мен мылтықты сынап көре бастадым, 4 АА батареясын жалғадым, ол жақсы атылады. Мен оның жақсы жұмыс істейтініне шынымен қуандым. Бірақ келесі күні мен мәселе таптым.

Міне, менің қару сынауымның видеосы. мұнара 3В адаптерге қосылды.

4 -қадам: Pi орнатыңыз

Бұл ең маңызды бөлігі, біздің танктің жүрегі-Raspberry Pi!

Егер сіз әлі Raspberry Pi ойнаған болмасаңыз. Мен осы кітаптан бастауды ұсынамын: MAKE -дің таңқурай пи -нен жұмыс істеуін бастау. Сіз Pi туралы негіздер мен жан -жақты түсінік ала аласыз.

Ең соңғы raspbian ОЖ алыңыз.

Мен ұсынатын келесі құрал - бұл қашықтағы жұмыс үстелі. Міне Адам Райлидің оқулығы. Орнатқаннан кейін сіз Pi жұмыс үстелін компьютерден көре аласыз (Mac -де тексерілмеген). Пиді «жалаңаш» іске қосу үшін дисплей, тышқан мен пернетақта қажет емес дегенді білдіреді. Менің кейбір достарым ssh пәрмен жолын қолданады. Бірақ мен жұмыс үстелін жақсы көремін.

Алдыңғы зерттеулерге сүйене отырып, мен Raspberry Pi бейнені ағынмен жіберуге болатынын білдім. Мен Pi -дегі әр түрлі қосымшалармен араласуды бастадым. Көптеген қосымшалардың ұзақтығы (секунд) немесе кадр жиілігі төмен. Бірнеше апта бойы интернеттегі бейнелер мен оқулықтарды аралап, бақытқа орай, мен шешімді таптым. Ютубтағы вебиопи туралы видео маған үлкен үміт берді. Қосымша зерттеулер мені бұл жолдың дұрыс екеніне сендірді.

Webiopi - бұл Pi мен басқа интернет құрылғыларының арасындағы байланысты шынымен жеңілдеткен негіз. Ол барлық Pi GPIOS -ты басқарады, содан кейін теңшелген html бар серверді іске қосады. Сіз бұл html -ге басқа құрылғылардан (компьютерден, смартфоннан және т.б.) қол жеткізе аласыз және браузерде wifi қашықтықтағы түймені бассаңыз, GPIO іске қосылады.

Бейне мені үміттендірді, webiopi оқулығына негізделген-cambot жобасы. Ол MagPi журналында #9 [html] [pdf] және #10 [html] [pdf] журналдарында көрсетілген. Рахмет Эрик ПТАК!

Оқу құралын біртіндеп орындау арқылы сіз екі доңғалақты камбот жасай аласыз! Бұл қалай жұмыс істейді: екі қозғалтқышты H-көпірмен жалғаңыз, содан кейін бағыт пен жылдамдықты басқару үшін 6 GPIO түйреуіші бар H көпірін басқарыңыз. Webiopi GPIO басқару үшін қолданылады. Ал MJPG-стример бейне ағыны үшін қолданылады.

Егер сіз бірнеше ай бұрын Pi немесе Linux -те жаңадан болсаңыз, барлық қадамдарды орындағаннан кейін сізде кішкене проблемалар туындауы мүмкін. Сіз вебопи мен ағынды бейнеге арналған питон кодын бөлек іске қоса аласыз, бірақ оларды қалай қосуды білмейсіз бе? Пәрменнен кейін & қосуға болатынын білу үшін біраз уақыт қажет болды (және Google, BTW -те іздеу өте қиын), яғни бұл команданың фонда орындалғанын қалайсыз. Сондықтан мен мұны әр уақытта жасаймын:

sudo python cambot.py &

sudo./stream.sh

Менің ойымша, сіз жоғарыдағы пәрменді қамтитын bash файлын бір файлға жасайсыз және бір рет іске қосасыз. Мен әлі тырыспадым.

Мен бұл негізгі қондырғыны екі тұрақты ток қозғалтқышымен көрдім, ол жұмыс істейді, бірақ мендегі қозғалтқыштың қуаты жеткіліксіз. Мені басқа нұсқаға апарады: үздіксіз сервос.

Жаңа сұрақ туындайды: webiopi PWM басқарылатын серверлерді қолдай ма?

Жауап - иә, бірақ өздігінен емес: PWM бағдарламалық жасақтамасын құру үшін RPIO қажет

RPIO орнату (бірінші apt-get install әдісінде сәттілік жоқ. Github әдісі мен үшін жақсы жұмыс істейді)

Үлгі коды және басқа талқылаулар

Енді сіздің бот екі сервоспен жаңартылды! Қосымша қолмен не істеуге болатынын ойлаңыз!

Мен жоғарыда келтірілген үлгі кодын резервуарыма сәйкес етіп өзгерттім. Мұны істеу үшін сізге информатика мамандығы қажет емес. Сіз үлгі кодын түсініп, нені көшіру керектігін және қайда өзгерту керектігін біле алатын болсаңыз жақсы.

5 -қадам: электронды байланыс

Электронды байланыс
Электронды байланыс
Электронды байланыс
Электронды байланыс
Электронды байланыс
Электронды байланыс

Мен сатып алған қуат банкі Anker Astro Pro екі USB порты мен бір 9В порты бар (оны сатып алудың басты себебі). Мен Pi, Wi -Fi қосқышын және веб -камераны бір USB портымен қосуға тырыстым. Іске қосылмайды. Мен басқа USB портын қуатты USB хабына қолдандым.

Содан кейін мен серверлерді USB хаб портымен қуаттай аламын деп ойладым. Ол жұмыс істейді, бірақ Wi -Fi байланысы өте тұрақсыз.

Бұл мәселені шешу үшін мен 6В серво қажеттілігін қамтамасыз ету үшін 4 АА батареясын әкелдім. Мен USB кабелін жерге сымды (қара) шығарып, AA аккумуляторлық жерге қосу үшін жалғадым.

3 серво, қызылдан 6В -қа дейін, жерге қара және GPIO түйреуіштеріне қосылған сигнал түйреуіші.

Жоспарланғандай, мұнара айналатын қозғалтқыш пен мылтық қозғалтқышы H-көпірі бар 6В кернеуі болуы керек. Бірақ мен бәрін қосқанда, мылтық атылмайды! Қозғалтқыш айналуға тырысады, бірақ редукторды басқара алмайды. Шығу кернеуі дұрыс, бірақ жүргізуге жеткілікті ток жоқ сияқты. Мен MOSFET -ті де сынап көрдім.

Уақытша себептерге байланысты бұл бөліктен бас тартуым керек. Міне, сондықтан мылтық сынағында мылтық моторын адаптерге қолмен қосуым керек. Электроникада әлі де көп нәрсені үйрену керек. Ең нашар сценарий, мен әрқашан мылтықты серво тарту және босату триггерімен басқара аламын.

6 -қадам: Интерфейс

Image
Image
Интерфейс
Интерфейс
Интерфейс
Интерфейс

Мен сонымен қатар cambot және rasprover үлгі кодтарынан интерфейстерді өзгерттім. Мен смартфонды контроллер ретінде пайдалануды жоспарлағандықтан, мен телефонның орналасуын оңтайландырдым (galaxy note3).

Көптеген орналасулар мен стильдерді index.html -де өңдеуге болады. Дегенмен, әдепкі түйме (қара жиегі бар қара сұр) стилі webiopi.css ішінде орналасқан/usr/share/webiopi/htdocs. Мен оны өзгерту үшін sudo nano іске қосу үшін терминалды қолдандым.

Бейне ағыны экранның ортасында орналасқан, жүргізуді басқару сол жақта, қару басқару оң жақта. Мен басқаруды жақсырақ басқаруды қалайтын жоғары (алға), тоқтатуға, төменге (артқа) екі жиынтық ретінде жасадым, бірақ бейнеде кейде бұл ыңғайсыз екенін айтуға болады.

7 -қадам: Болашаққа жоспар

Өздеріңіз білетіндей, бұл жоба әлі аяқталған жоқ. Таңқурай пи байқауының арқасында мен өткен аптада көп жиналдым, мен оны мерзімінен бұрын аяқтауға тырыстым. Мылтық атылмайтынын білмейінше, бәрі жақсы болады …

Ол жақсартатын көп нәрсе бар, бірақ сіз менің тәжірибемнен бірдеңе үйрене аласыз деп үміттенемін.

Қысқа мерзімді жоспар:

Мылтықты іске қосыңыз !!!

BB үшін үлкен контейнер

Танк әлемді зерттеуі керек-үйдегі wifi-дан кетіңіз!

Pi-де арнайы түйінді орнатыңыз, сонда телефон оған кез келген жерде қосыла алады

Іске қосылған кезде танк командасын орындаңыз

Pi қауіпсіз түрде өшіру үшін өшіру түймесін қосыңыз.

Ұзақ мерзімді жоспар:

Тұрақтылық пен ұстау үшін жақсы қозғалтқыш жүйесі

Нан тақтасының орнына менің жеке тақтаны жасаңыз

Бірінші адамның бейнежазбасы

Басқа мылтық? Оны жауынгерлік кемеге айналдырайық!

Өзін -өзі патрульдеу үшін сенсорлар қосу керек пе?

Автоматты нысандауға арналған компьютерлік көру!

Алыстағы резервуарды басқарыңыз: мен бәрін үйде көремін!

8 -қадам: Оқығаныңызға рахмет

Менің нашар ағылшын тілімді оқығаныңыз үшін рахмет (бұл менің бірінші тілім емес). Сіз мұнда көңілді болдыңыз немесе бірдеңе үйрендіңіз деп үміттенемін. Бұл жалғасатын жоба болады, сондықтан егер сізде кез келген салада тәжірибеңіз болса, мен сіздің кеңесіңізді бағалаймын.

Егер сізде сұрақтар туындаса, түсініктеме қалдырыңыз, мен жауап беруге тырысамын.

Жақын арада Cam Tank2.0-жаңартуға рұқсат етіңіз.

Ақырында, бұл шайқас сценарийін көрсететін бейне. Бұл өте қызықты.

Ләззат алыңыз және келесі кездескенше!

Ұсынылған: