OmniBoard: Bluetooth көзөмөлү менен скейтборд жана Hoverboard гибриди: 19 кадам (сүрөттөр менен)
OmniBoard: Bluetooth көзөмөлү менен скейтборд жана Hoverboard гибриди: 19 кадам (сүрөттөр менен)
Anonim
OmniBoard: Bluetooth көзөмөлү менен скейтборд жана Hoverboard гибриди
OmniBoard: Bluetooth көзөмөлү менен скейтборд жана Hoverboard гибриди

OmniBoard-бул Bluetooth Smartphone тиркемеси аркылуу башкарылуучу жаңы Электр Скейтборд-Говерборд Гибрид. Ал эркиндиктин бардык үч даражасы менен бирдей кыймылдай алат, алдыга жылат, өз огунун айланасында айланат жана капталга каптайт.

Бул сизге каалаган багытта жылууга, ошондой эле сиздин типтүү транспорттук ыкмаңыз менен (электрдик) скейтборддор, hoverboards, унаалар, велосипеддер ж.

Досум экөөбүз OmniBoardду кызыктуу көнүгүү жана чакырык катары курууну чечтик, ошондой эле Instructables конкурстарына, тактап айтканда дөңгөлөктөргө каршы чыгууну чечтик. Биз мурда болуп көрбөгөн, салкын жана пайдалуу боло турган нерсени жасоону кааладык. Коомдук транзиттик система көбүнчө ишенимдүү болбогондуктан жана шаардын кыймылы эртең менен жана түштөн кийин жумушка жана жумуштан кайтуу учурунда коркунучтуу болгондуктан, велосипед же скейтборд сыяктуу транспорттун альтернативдүү түрү пайдалуу. Электр скейтборддору жана велосипеддери узак аралыкка жүрүү үчүн пайдалуу, бирок бул тема үчүн керектөөчүлөрдүн жана DIYдин көптөгөн чечимдери бар. Ошентип, биз дөңгөлөктү кайра ойлоп таап, жаңы жана кызыктуу OmniBoard кылууну чечтик.

1 -кадам: Куралдар жана материалдар

Куралдар жана материалдар
Куралдар жана материалдар
Куралдар жана материалдар
Куралдар жана материалдар
Куралдар жана материалдар
Куралдар жана материалдар

Drive системасы

  • (4) Omni Wheels
  • (4) 60 тиш чыгырыгы
  • (4) 20 тиш чыгырыгы
  • (4) GT2 Timing Belt (биз 140 тиш колдонгон)
  • (8) 7мм ID, 19мм OD подшипниги*
  • (20) M5 (же окшош өлчөмдөгү) машина бурамалары, болжол менен 25 мм*
  • (28) Гайкалар, машинанын бурамалары менен бирдей өлчөмдө*
  • (32) №2 жыгач бурамалар, 3/8 "узун*
  • (16) Бурчтуу кашаа, эң жакшысы төрт тешик, бурчтан бурама тешикке чейин кеминде 1/2 "болушу керек*
  • 1'x2 'фанера баракчасы*
  • Скейтборддун бети

Электроника:

Drive системасы

  • (4) DC Motors
  • (4) Электрондук ылдамдыкты көзөмөлдөөчүлөр (ESC)
  • Power Distribution Board (PDB)
  • 16AWG Силикон зымы - Кызыл жана Кара
  • XT90 Connector Parallel Splitter
  • XT90 туташтыргычы Эркек куйругу менен
  • (8 Pairs) 4mm Bullet Connector
  • (4 жуп) XT60 туташтыргычы
  • (2) LiPo батареялары

Алыстан башкаруу

  • Эки тараптуу Perf Board*
  • LM7805 Voltage Regulator*
  • 24AWG Solid Core Wires - Ассорти Түс*
  • HC-05 Bluetooth модулу*
  • Arduino Uno v3*
  • (32 пин) Эки жактуу эркек пин баштары*
  • (12 пин) Бир жактуу але пин баштары*

Куралдар:

  • Лайкоо станциясы жана Лайк
  • Сым кескичтер
  • Сым тазалагычтар
  • Pense
  • Кайчы
  • Бургулоо биттери: 1-3/8 ", 3/4", 1/4"

Жабдуулар

  • 3D принтер
  • Лазердик кескич
  • Band Saw
  • Drill Press

*Жергиликтүү электроника дүкөнүнөн же аппараттык дүкөндөн алынды.

2 -кадам: Бул кантип иштейт

Бул кантип иштейт
Бул кантип иштейт

Omniboard - бул электр скейтборду жана hoverboard! Ал алдыга жана артка, капталга жана айланууга жөндөмдүү, бардыгы телефонуңуздагы джойстик тарабынан башкарылат.

Omniboard ар тараптуу дөңгөлөккө бекитилген төрт мотор менен иштейт. Omni дөңгөлөктөрүнүн капталынан жылышына уруксат берилгендиктен, ар бир кыймылдаткычтын ылдамдыгы менен багытынын өзгөрүшү, тактага колдонуучу каалаган багытта жогорудагы сүрөттө сүрөттөлгөндөй жылууга мүмкүндүк берет.

3 -кадам: Omni дөңгөлөктөрүнүн огун чогултуу

Омни дөңгөлөктөрүнүн огун чогултуу
Омни дөңгөлөктөрүнүн огун чогултуу
Омни дөңгөлөктөрүнүн огун чогултуу
Омни дөңгөлөктөрүнүн огун чогултуу
Омни дөңгөлөктөрүнүн огун чогултуу
Омни дөңгөлөктөрүнүн огун чогултуу
Омни дөңгөлөктөрүнүн огун чогултуу
Омни дөңгөлөктөрүнүн огун чогултуу

Окторду чогултуу үчүн сизге керектүү бөлүктөр:

  • (8) 3D басылган подшипник аралык
  • (4) 3D басып чыгарылган чоң шкив аралыгы
  • (8) Подшипник
  • (4) Omni дөңгөлөгү
  • (4) Чоң чыгырык
  • (4) 3x3x80mm клавишасы

Биринчиден, көрсөтүлгөндөй валдын учуна подшипник аралыкты салгыңыз келет. Боштук абдан бекем болушу үчүн жасалган, ошондуктан мен аны алуу үчүн вице же балка колдонууну сунуштайм. Эгерде ал өтө бош болсо, аны ключтун өйдө жагына бир аз өйдө көтөрүп, жакасын бекитиңиз. Башка жак үчүн жака жөнүндө тынчсыздануунун кажети жок.

Андан кийин, омни дөңгөлөгүн жылдырыңыз, андан кийин карама -каршы багытталган подшипниктин аралыгы. Сиз азыр подшипниктерди жылдырсаңыз болот (анча деле тыгыз эмес) жана бул сүрөттө көрүнүшү керек. Акырында, сиз узун арык шкив аралыгын чыгара аласыз. Бул учурда, чыгырыктын бурамаларын кыспаңыз же аларды ключка койбоңуз. Булар кийин келет.

4 -кадам: Omni Wheel Trucks кесүү жана бургулоо

Image
Image
Omni Wheel жүк ташуучу машиналарды кесүү жана бургулоо
Omni Wheel жүк ташуучу машиналарды кесүү жана бургулоо
Omni Wheel жүк ташуучу машиналарды кесүү жана бургулоо
Omni Wheel жүк ташуучу машиналарды кесүү жана бургулоо
Omni Wheel жүк ташуучу машиналарды кесүү жана бургулоо
Omni Wheel жүк ташуучу машиналарды кесүү жана бургулоо

Бул жерде сиздин лазер кескич жана 3/8 дюймдук калың фанера жардамга келет! Рамканы лазер менен кесүү үчүн CAD.dxf форматында тиркелет.

Андан кийин лазер кескичтин фанерага калтыра турган кичинекей кресттеринин үстүндө эки тешик бургулайсыз. Бир аз кичине крест 3/4 "кичине 1/4" менен бургуланат, ал эми чоңураак кросс 1-3/8 "тешип бүтөт. Бул абдан маанилүү 3/4 "тешиктерди бир тараптан, экинчи жарымын экинчи тараптан кесүү үчүн, жарым бөлүгүн эсиңизде сактаңыз. Андан кийин 3/4 дюймунун ортосунан 3/8 дюймдук кичинекей тешикти бургула, мурда сиз кеспеген катмар аркылуу.

Акыр -аягы, бурчтук кашаанын тик бурчтуу бөлүктөрдүн кыска жактарына бурап салыңыз. Сизде бардык дөңгөлөктүү жүк ташуучу унааларды чогултуу үчүн азыр керектүү нерселердин бардыгы бар.

5 -кадам: Omni Wheel Trucks жыйноо

Omni Wheel жүк ташуучу унааларды чогултуу
Omni Wheel жүк ташуучу унааларды чогултуу
Omni Wheel жүк ташуучу унааларды чогултуу
Omni Wheel жүк ташуучу унааларды чогултуу
Omni Wheel жүк ташуучу унааларды чогултуу
Omni Wheel жүк ташуучу унааларды чогултуу

Эми биз жүк ташуучу машинанын курамын бүтүрө алабыз! Сизге акыркы эки кадамдын бөлүктөрү керек болот:

  • (4) Убакыт куру
  • (4) 3D басылган кичинекей шкив аралыгы
  • (4) Кичи шкив
  • (4) Мотор

Ар бир фанера тарапты подшипниктерге жылдырыңыз. Эгерде 3/4 тешиктер подшипниктерге оңой батпаса, анда аларды бир аз кененирээк тегиздөө үчүн Дремелди колдонуңуз. Орнотулгандан кийин, чыгырыктын кулпусунун үстүнө чыгырыкты коюп, белгиленген бурамаларды бекемдеңиз. Тик бурчтуу бөлүктү бардык дөңгөлөктүн үстүндө оймо.

Бул жерде, сиздин бардык дөңгөлөгүңүздүн эркин айланарын текшериңиз. Эгер андай болбосо, сиздин чыгырык фанерага кысылып калышы мүмкүн. Аны дагы бир аз көтөрүңүз.

Кийинчерээк биз моторлорду орнотобуз. 1-3/8 тешиктери бир аз өтө кичинекей, андыктан мотор ичине батпай калганга чейин, ички тегерекчени Дремел менен акырын кумдаштырыңыз. Моторду күчкө салып, деформация кылуудан сак болуңуз Кыймылдаткычты ордуна койгондон кийин, курду кичинекей чыгырыктардын үстүнө, андан кийин кичинекей чыгырыктарды алардын аралыгынын үстүнө жана 3.175мм кыймылдаткыч валына коюңуз. Орнотулган бурамаларды бекемдеңиз.

Ыкчамдуулук жана симметрия үчүн, жүк ташуучу унаанын бир жагына экөөнө, экинчисине экинчи жагын рулеткаларды жана кайыштарды койгусу келет.

6 -кадам: Скейтборд платформасына орнотуу

Скейтборд платформасына орнотуу
Скейтборд платформасына орнотуу
Скейтборд платформасына орнотуу
Скейтборд платформасына орнотуу
Скейтборд платформасына орнотуу
Скейтборд платформасына орнотуу

Эми биз жүк ташуучу унааларды скейтборд платформасына бекитебиз. Сиз фанерадан жана кармагычтан өзүңүздүкүн жасай аласыз; биздики эски скейтборддон алынды.

Биринчиден, сүрөттө көрсөтүлгөндөй фанеранын эки тарабында тең 1/4 дюйм бургулоону каалайсыз. Ар бир тешикке M5 бурамасы менен бурчтук кронштейнди бекиткиле жана анын келишине жол бербөө үчүн ички жагына эки жаңгак менен бекиткиле. вибрациядан улам бош. Транспорттук аянтчанын изинин чегинде турганда, жүк ташуучу унааларды мүмкүн болушунча эң кыйшык эмес бурч менен орнотууга мүмкүндүк берген тешиктерди өлчөп, бургулаңыз. !

7 -кадам: моторлорду ширетүү

Image
Image
Моторлорду ширетүү
Моторлорду ширетүү

4мм эркек ок коннекторлорун моторлорго туташтыра турган зымга кошуп, андан кийин бул зымды мотор терминалдарына кошуңуз. Кабелдик уюштуруу үчүн, ар бир зым 6смге чейин кесилип, эки четинен сыйрылган

Кеңеш: Зымдарды ок коннекторлоруна эритүү оңой, андан кийин моторго башка жолго караганда.

Ок коннекторун зымга ширетүү үчүн, аны жардам колунун изоляцияланган аллигатор кыскычына коюңуз (жылуулук ок коннекторунун корпусунан металлга, жылуулук өткөргүч жардам колунун денесине тез тарайт). Андан кийин ок коннекторуна бир аз ширеткичти чогултуңуз, болжол менен жарымында жана темирди туташтыргычта кармап турганда, видеодо көрсөтүлгөндөй зымды солярдык бассейнге малып коюңуз. Андан кийин жылуулук зымды жана ок коннекторун кичирейтет.

Андан кийин, зымды мотор терминалынын жанына коюп, жардам колу менен тигинен кармаңыз. Мен моторду тескери кармоо үчүн ширетүүчү роллду колдондум. Андан кийин зымды мотор терминалына ээрчиңиз. Зымдардын тартиби жана түсү түшүнүксүз жана эч кандай мааниге ээ эмес, анткени заказды айлантууну артка которууга болот, эгер зарыл болсо кийинки кадамдарда жасалат.

8 -кадам: ESC батарея туташтыргычтарын ширетүү

ESC батарея туташтыргычтарын ширетүү
ESC батарея туташтыргычтарын ширетүү
ESC батарея туташтыргычтарын ширетүү
ESC батарея туташтыргычтарын ширетүү

Лайкоодон мурун, ачык зымдардын учтарын жылуулоо үчүн колдонула турган зымдардын ар биринин жылуулугун азайтыңыз.

Батарейканын туташтыргычына алып баруучу жолдун бирин кескилеңиз, сыйрып алыңыз, жылуулукту азайтыңыз жана XT60 туташтыргычына кызыл түстө XT60 позитивдүү терминалына, кара түстү XT60 терс терминалына кошуңуз.

Эскертүү: ESC зымдарын бирден кескиле, анткени позитивдүү жана терс терминалдардын ортосунда заряддалышы мүмкүн болгон конденсатор бар, эгер кайчы же зым кескичтер экөөнү тең кессе, кыска болот.

XT60 туташтыргычына зымды ширетүү үчүн, XT60 туташтыргычынын денесин кармоо үчүн жардам колун колдонуңуз. Андан кийин, XT60 терминалына бир аз ширетүүнү жарым жолдо чогултуп, XT60 туташтыргычында темирди кармап турганда, мурунку кадамдагы видеодо көрсөтүлгөндөй, зымды суюк ширетүүчү бассейнге малып коюңуз. Муздагандан кийин, жылуулукту төмөн жылдырып, ачык турган учун жылуулаңыз жана аны ширетүүчү темирдин капталдары менен жылытыңыз.

Муну ЭСКтин батарея коннекторлорунун калган зымдары үчүн кайталаңыз.

9 -кадам: Электр бөлүштүрүү тактасын ширетүү (PDB)

Электр бөлүштүрүү тактасын ширетүү (PDB)
Электр бөлүштүрүү тактасын ширетүү (PDB)
Электр бөлүштүрүү тактасын ширетүү (PDB)
Электр бөлүштүрүү тактасын ширетүү (PDB)
Электр бөлүштүрүү тактасын ширетүү (PDB)
Электр бөлүштүрүү тактасын ширетүү (PDB)
Электр бөлүштүрүү тактасын ширетүү (PDB)
Электр бөлүштүрүү тактасын ширетүү (PDB)

PDB тиешелүүлүгүнө жараша 11.1V жана 250A бирдиктүү чыңалуусу жана току бар эки литий полимердик (LiPo) батареядан кириш алып, аны төрт ЭСКке таратат.

Кеңеш: Эркек XT90 туташтыргычын алгач PDB төшөмдөрүнө, андан кийин ESCsке 16 AWG зымдарын, андан кийин XT60 коннекторлорун бул зымдарга кошуу оңой.

Мурда, зымдарды ширетүүдө, жылуулукту кыскартуучу зымдардын ар бирине туура келет, андыктан ал кыска туташууну болтурбоо үчүн кийинчерээк ачык турган ширетилген учуна жылдырылышы мүмкүн.

Зымдарды PDB төшөмөлөрүнө ширетүү үчүн, жардам колун колдонуу менен зымдарды тике кармап туруу оңой болду (айрыкча чоң XT90 кабели) жана аны столдун үстүндө жаткан ПДБнын үстүнө коюу. Андан кийин зымды PDB төшөгүнүн айланасына ширетүү. Андан кийин, жылуулукту кичирейтүү менен жылдырып, схеманы жылуулаңыз.

Муну ESC зымдарынын калган бөлүгүндө кайталаңыз.

XT60ты ширетүү үчүн, ESC батарея терминалын XT60s менен кантип алмаштыруу боюнча мурунку кадамды аткарыңыз.

10 -кадам: Зымдарды туташтыруу

Зымдарды туташтыруу
Зымдарды туташтыруу

Мотор зымдарын ESCтин ок коннекторунун терминалдарына туташтырыңыз. Андан кийин, ESCтен ак сигналдын пинин 9 -пинге жана кара жерге пинди Arduinoдогу GND пинине туташтырыңыз. Бардык ESC жана зымдарды тактага бекитүү үчүн кош кулпу тилкелери колдонулган.

Моторлордун айлануусу туура экенин текшерүү үчүн (алдыңкы жагына айлануу), төмөндөгү Arduino кодунун үлгүсүн иштетиңиз.

#кошуу

Servo мотор;

байт сааты боюнча Ылдамдык = 110; кол коюлбаган узак интервал = 1500; int motorPin = 9;

жараксыз орнотуу ()

{Serial.begin (9600); motor.attach (motorPin); Serial.println ("Башталгыч тест"); }

боштук цикл ()

{motor.write (clockwiseSpeed); Serial.println ("Мотордун айлануусун токтотуу"); кечигүү (интервал); }

ESCтен моторго туташкан зымдардын тартиби мотордун айлануусун аныктайт. Эгерде мотордун айлануусу сааттын жебесине каршы болсо, анда моторго көңүл буруңуз жана "Omniboard контроллерин программалоо" кадамындагы контроллер кодундагы логиканы өзгөртүңүз. Эгерде ал саат жебеси боюнча алдыга карай айланып жатса, анда айлануу туура болот. Муну төрт мотордун ар бири үчүн жасаңыз. Эгерде мотор айланбай жатса, анда бош туташууга алып келген муздак ширетүү бар болсо, бардык туташтыргычтарыңызды кайра текшериңиз.

11 -кадам: ESC режимин өзгөртүү

ESC режимин өзгөртүү
ESC режимин өзгөртүү

Демейки боюнча, тазаланган ЭСК практикалык режимде. Бул LED жарыгы менен көрсөтүлөт. Моторду артка карай программалык түрдө башкаруу үчүн, альпинизм режими керек.

Бул режимге кирүү үчүн, ESCти Arduinoго ак сигналдын пинин 9 -пинге жана кара жерге пинди Arduinoдогу GND пинге туташтырып Arduino менен туташтырыңыз. Андан кийин Arduino тактасына төмөнкү программаны жүктөп, иштетиңиз:

#кошуу

Servo мотор;

байт stopSpeed = 90; кол коюлбаган узак интервал = 1500; int motorPin = 9;

жараксыз орнотуу ()

{Serial.begin (9600); motor.attach (motorPin); Serial.println ("Башталгыч тест"); }

боштук цикл ()

{motor.write (stopSpeed); Serial.println ("Мотордун айлануусун токтотуу"); кечигүү (интервал); }

ESCти күйгүзүңүз, андан кийин программалоо баскычын эки секунд басып туруңуз. LED индикатору азыр жаркырап тургандан айырмаланып туруктуу болот, демек режим ийгиликтүү көтөрүлүү режимине которулду.

12 -кадам: Bluetooth модулу жана телефону менен интерфейс

Bluetooth модулу жана телефону менен интерфейс
Bluetooth модулу жана телефону менен интерфейс
Bluetooth модулу жана телефону менен интерфейс
Bluetooth модулу жана телефону менен интерфейс
Bluetooth модулу жана телефону менен интерфейс
Bluetooth модулу жана телефону менен интерфейс

HC-05 Bluetooth модулу Ардуиного телефон аркылуу байланышып, скейтбордду колдонмо аркылуу зымсыз башкарууга мүмкүндүк берет. Мен Bluetooth модулунун интерфейстеринде кандайдыр бир кемчиликтерди тапканым үчүн, акыркы схеманы ширетүүдөн мурун, аны сынап көрүү жакшы болмок, Биз Bluetooth модулундагы 6 казыктын 4үн колдонобуз. Булар: Tx (берүү), Rx (алуу), 5V жана GND (Ground). HC-05 Bluetooth модулунан Tx жана Rx төөнөгүчтөрүн Arduinoдогу 10 жана 11 казыктарына туташтырыңыз. Андан кийин, 5V пинди жана GND казыктарын Arduinoдогу энбелгиси бар төөнөгүчтөргө туташтырыңыз.

Blynk колдонмосунда, жогорудагы сүрөттөрдө көрсөтүлгөндөй, Bluetooth жана баскыч виджеттерин кошуңуз. Андан кийин, баскычка Arduino Unoдогу камтылган LEDге туташкан D13 санарип пинин дайындаңыз.

Bluetooth модулу туташтырылган жана bluetooth модулу туташкандыгын текшерүү үчүн төмөнкү модулду Arduinoго жүктөп, иштетиңиз. Андан кийин Күйгүзүү/Өчүрүү баскычын которуңуз жана Arduino өзгөрүүсүндөгү орнотулган LEDди байкаңыз.

#аныктоо BLYNK_PRINT Сериал

#кошуу

#кошуу

// Сиз Blynk тиркемесинде Автордук Токенди алышыңыз керек.

// Проект Орнотууларына өтүңүз (гайка сүрөтчөсү). char auth = "Сиздин аныктыгыңызды текшерүүчү токен";

SoftwareSerial SerialBLE (10, 11); // RX, TX

BLYNK_WRITE (V1)

{int pinValue = param.asInt (); // V1 пинден кирүүчү маанини өзгөрмөгө дайындоо}

жараксыз орнотуу ()

{Serial.begin (9600); // мүчүлүштүктөрдү жоюу консолу SerialBLE.begin (9600); Blynk.begin (SerialBLE, авторизация); Serial.println ("Байланыштар күтүлүүдө …"); }

боштук цикл ()

{Blynk.run (); }

13 -кадам: Arduino Shieldди ширетүү

Arduino Shield менен ширетүү
Arduino Shield менен ширетүү
Arduino Shield менен ширетүү
Arduino Shield менен ширетүү
Arduino Shield менен ширетүү
Arduino Shield менен ширетүү
Arduino Shield менен ширетүү
Arduino Shield менен ширетүү

Прототиптен схемаларды жана бош секирүүчү зымдарды тазалоо үчүн, биз ESCs жана Bluetooth модулдарынын ар бирине туташкан Arduino калканчын, ошондой эле Arduino үчүн электр менен камсыздоону кошо ширетебиз.

Төмөндөгү схеманы эки тараптуу тактайга кошуңуз.

Мен алгач эки тараптуу эркек пин баштарын Arduino ургаачыларынын башына орнотуп, андан кийин аны эки тарабы үчүн перформанын үстү жагына коштум. Алар ширетилгенден кийин, мен Arduino тактасынан тактанын астыңкы бөлүгүн ширетүү үчүн алып салдым. Андан кийин, мен ESC бир жактуу Эркек пин баштарын 4 тактадан 3кө тактайдын ылдый жагына коштум. Андан кийин, мен HC-05 Bluetooth модулун тигинен коюп, туташтыргычтарды тактайдын ылдый жагына кошуп койдум.

Bluetooth модулу 5В чыңалуусун киргизүүнү талап кылгандыктан жана ПДБ 12Вга чейин жөнгө салынгандыктан, мен LD7805ти колдонуп, Arduino'дон учурдагы тартууну чектөө үчүн токту түшүрдүм. Ушул эле 5В камсыздоосу Arduino 5V пинине туташкан, ошондуктан Arduino калкан аркылуу иштей алат, кошумча баррель джек адаптеринен айырмаланып.

LM7805 төөнөгүчтөрү жогорудагы сүрөттө көрсөтүлгөндөй, перформанын үстүндө отурган чыңалуу жөнгө салуучу компонент менен, тактайдын ылдый жагына ширетилген. Мен схемада сүрөттөлгөндөй, бардык компоненттерге жана ESC пин штрихтерине жана HC-05 Bluetooth модулуна бардык күч байланыштарын коштум. ПДБнын 12В чыгышы LM7805 чыңалуу жөндөгүчүнүн VCC киришине (эң сол жакта) төөнөгүчкө жана жерге төөнөгүчкө (ортосуна) ширетилген. Акырында, ESC сигнал пин баштарынын ар бири жана HC-05 Bluetooth модулу Tx жана Rx пиндери Arduino санарип казыктарына эки тараптуу эркек пин баштары аркылуу схемада көрсөтүлгөн.

14 -кадам: Blynk аркылуу тиркеме түзүү

Blynk аркылуу колдонмону түзүү
Blynk аркылуу колдонмону түзүү

Omniboard Blynk тиркемеси аркылуу каалаган смартфондун жардамы менен Bluetooth аркылуу көзөмөлдөнөт. Blynk-бул HC-05 сыяктуу Bluetooth же зымсыз мүмкүнчүлүктөрү бар Bluetooth / зымсыз модулдары бар бир нече микроконтроллерлер менен иштей турган модулдарды жана виджеттерди колдонууга мүмкүндүк берген Android жана iOS колдонмосу.

1. Blynkти телефонуңузга орнотуңуз.

2. Каттоо эсебин түзүңүз жана кириңиз

3. Жаңы долбоор түзүп, ага ат коюңуз. Мен "Omniboard контроллери" деп ат койдум, микроконтроллер катары Arduino Uno тандап, интерфейс түрү катары Bluetooth тандадым.

4. Экранда төмөнкү виджеттерди сүйрөңүз жана таштаңыз: Bluetooth, Карта, 2 баскыч жана Джойстик

15 -кадам: Ардуино менен виджеттердин интерфейси

Ардуино менен виджеттердин интерфейси
Ардуино менен виджеттердин интерфейси
Ардуино менен виджеттердин интерфейси
Ардуино менен виджеттердин интерфейси
Ардуино менен виджеттердин интерфейси
Ардуино менен виджеттердин интерфейси

Баскыч Hoverboard режимин vs Skateboard режимин которуштуруу үчүн колдонулат. Hoverboard режими круиздик ылдамдыкты кармап турганда айланууну жана стафени так көзөмөлдөөгө мүмкүндүк берет. Ал эми скейтборд режими алдыга ылдамдыкты жана айланууну так көзөмөлгө алат. Джойстик скейтбордду которгуч баскычы менен алмаштырылган эки даража эркиндик менен башкарат. Карта сиздин учурдагы жайгашууңузду жана башка жерлерге баруучу жолдорду көрсөтөт. Bluetooth интерфейсине Bluetooth модулу менен туташууга мүмкүнчүлүк берет.

Джойстиктин жөндөөлөрү:

Чыгаруу түрү үчүн "Бириктирүүнү" тандап, аны V1 виртуалдык пинге дайындаңыз

Баскычтарды жөндөө:

  • Биринчи баскычка "Hover Mode" жана экинчи баскычка "Cruise Control" деп ат коюңуз.
  • Биринчи баскычтын чыгарылышын V2 виртуалдык пинге дайындаңыз жана режимди "Которууга" өзгөртүңүз.
  • Экинчи баскычтын чыгарылышын V3 виртуалдык пинге дайындаңыз жана режимди "Которуу" кылып өзгөртүңүз.
  • Биринчи баскычтардын которгуч аттарын "Hover" жана "Skate" деп өзгөртүп, "ON" жана "OFF" бойдон калтырыңыз.

Картанын Орнотуулары:

Киргизүүнү V4 деп дайындаңыз

Bluetooth Орнотуулары:

Blynk колдонмосунан Bluetooth виджетин тандап, модулуңузга туташыңыз. Bluetooth модулунун демейки сырсөзү '1234'

16 -кадам: Omniboard контроллерин программалоо

Omniboard контроллерин программалоо
Omniboard контроллерин программалоо
Omniboard контроллерин программалоо
Omniboard контроллерин программалоо
Omniboard контроллерин программалоо
Omniboard контроллерин программалоо

Omniboard динамикасы "Кантип иштейт" бөлүмүнөн алынган динамика алгоритминин негизинде программаланган. Ар бир 3 даража эркиндик, форвард, стафе жана спин өз алдынча эсептелген жана Omniboard кыймылын башкаруунун толук спектрине алып келүү үчүн бири -бирине жабыштырылган. Ар бир кыймылдаткычты башкаруу джойстиктин кыймылына сызыктуу пропорционалдуу. Ардуиного төмөнкү кодду жүктөп, иштетиңиз.

#аныктоо BLYNK_PRINT Сериал

#кошуу

#кошуу

#кошуу

Servo motorFR; Servo motorFL; Servo motorBR; Servo motorBL;

bool motorFRrev = true;

bool motorFLrev = true; bool motorBRrev = true; bool motorBLrev = true;

сүзүүчү моторFRang = 330.0*PI/180.0;

float motorFLang = 30.0*PI/180.0; сүзүүчү моторBRang = 210.0*PI/180.0; float motorBLang = 150.0*PI/180.0;

сүзүүчү моторFRspeedT;

сүзүүчү моторFLspeedT; сүзүүчү моторBRspeedT; сүзүүчү моторBLspeedT;

сүзүүчү моторFRspeedR;

сүзүүчү моторFLspeedR; сүзүүчү моторBRspeedR; сүзүүчү моторBLspeedR;

float maxAccel = 10;

байт forwardSpeed = 110;

байт backSpeed = 70; байт stopSpeed = 90; // эксперименталдык аныкталган санга өзгөртүү

int cruiseControl;

int yawMode;

// Сиз Blynk тиркемесинде Автордук Токенди алышыңыз керек.

// Проект Орнотууларына өтүңүз (гайка сүрөтчөсү). char auth = "8523d5e902804a8690e61caba69446a2";

SoftwareSerial SerialBLE (10, 11); // RX, TX

BLYNK_WRITE (V2) {cruiseControl = param.asInt ();}

BLYNK_WRITE (V3) {yawMode = param.asInt ();} WidgetMap myMap (V4);

BLYNK_WRITE (V1)

{int x = param [0].asInt (); int y = param [1].asInt ();

if (! cruiseControl) calcTranslation (x, y);

if (yawMode) calcRotation (x, y); башка {motorFRspeedR = 0; motorFLspeedR = 0; motorBRspeedR = 0; motorBLspeedR = 0; } writeToMotors (); }

жараксыз орнотуу ()

{motorFR.attach (9); motorFL.attach (6); motorBR.attach (5); motorBL.attach (3); кечигүү (1500); // моторлордун инициализациясын күтө туруңуз // Мүчүлүштүктөрдү оңдоочу Serial.begin (9600);

SerialBLE.begin (9600);

Blynk.begin (SerialBLE, авторизация);

Serial.println ("Байланыштар күтүлүүдө …");

// Эгерде сиз бардык пункттарды алып салгыңыз келсе:

//myMap.clear ();

int index = 1;

float lat = 43.653172; float lon = -79.384042; myMap.location (индекс, лат, lon, "value"); }

боштук цикл ()

{Blynk.run (); }

бош кальций Котормо (int joyX, int joyY)

{float normX = (joyX - 127.0) /128.0; float normY = (кубанычY - 127.0) /128.0; motorFRspeedT = (normY*cos (motorFRang) + normX*sin (motorFRang))*(1 - 2*motorFRrev); motorFLspeedT = (normY*cos (motorFLang) + normX*sin (motorFLang))*(1 - 2*motorFLrev); motorBRspeedT = (normY*cos (motorBRang) + normX*sin (motorBRang))*(1 - 2*motorBRrev); motorBLspeedT = (normY*cos (motorBLang) + normX*sin (motorBLang))*(1 - 2*motorBLrev); }

бош калькуляция (int joyX, int joyY)

{float normX = (joyX - 127.0) /128.0; float normY = (кубанычY - 127.0) /128.0; motorFRspeedR = joyX*(1 - 2*motorFRrev); motorFLspeedR = -joyX*(1 - 2*motorFLrev); motorBRspeedR = -joyX*(1 - 2*motorBRrev); motorBLspeedR = joyX*(1 - 2*motorBLrev); }

Void writeToMotors ()

{float motorFRspeed = motorFRspeedT + motorFRspeedR; сүзүүчү моторFLspeed = motorFLspeedT + motorFLspeedR; сүзүүчү моторBRspeed = motorBRspeedT + motorBRspeedR; сүзүүчү моторBLspeed = motorBLspeedT + motorBLspeedR;

long motorFRmapped = map ((long) (100*motorFRspeed), -100, 100, backSpeed, forwardSpeed);

long motorFLmapped = карта ((узун) (100*motorFLspeed), -100, 100, backSpeed, forwardSpeed); long motorBRmapped = map ((long) (100*motorBRspeed), -100, 100, backSpeed, forwardSpeed); long motorBLmapped = map ((long) (100*motorBLspeed), -100, 100, backSpeed, forwardSpeed); motorFR.write (motorFRmapped); motorFL.write (motorFLmapped); motorBR.write (motorBRmapped); motorBL.write (motorBLmapped); }

17 -кадам: Электроника корпусун орнотуу

Электроника корпусун орнотуу
Электроника корпусун орнотуу
Электроника корпусун орнотуу
Электроника корпусун орнотуу
Электроника корпусун орнотуу
Электроника корпусун орнотуу
Электрондук корпусту орнотуу
Электрондук корпусту орнотуу

Бардык зымдарды жана тетиктерди ылдыйга салбоо үчүн, тиркелген корпусту 3D басып чыгарыңыз, андан кийин аны M5 бурамалары менен скейтбордго сайыңыз.

18 -кадам: Сүрөт тартуу

Сүрөт тартуу
Сүрөт тартуу
Сүрөт тартуу
Сүрөт тартуу
Сүрөт тартуу
Сүрөт тартуу

Жогорку палубанын дизайны үчүн илхам - бул ПХБ схемалары жана үлгүлөрү. Ал үчүн адегенде скейтборддун түбүнө сүрөтчүнүн скотчунун тегереги жабылган. Андан кийин үстүнкү палубанын баары ак боек менен капталган. Кургак болгондон кийин, ал схеманын терс териси менен беткап менен капталат, андан кийин кара пальто менен боёлот. Андан кийин, үстүңкү катмардан кылдаттык менен маскаларды тазалаңыз жана муздак көрүнгөн скейтборд.

Мен сизди Omniboard үчүн дизайнды жекелештирүүгө жана чыгармачылык эркиндигиңизди колдонууга чакырам.

19 -кадам: Тест жана Демо

Image
Image

Дөңгөлөктөр сынагынын экинчи сыйлыгы 2017

Алыстан башкаруу сынагы 2017
Алыстан башкаруу сынагы 2017

Алыстан башкаруу сынагынын 2017 -жылдагы биринчи сыйлыгы

Сунушталууда: