Бежично контролишите Лего моторе користећи Стеам Цонтроллер

Бежично контролишите Лего моторе користећи Стеам Цонтроллер

Када сам био млад, одувек сам желео да имам Лего технолошке сетове како бих могао да правим све врсте цоол ствари од њих. Аутономни тенкови са ротирајућим куполама који пуцају на Лего коцкице. Али тада нисам имао такав сет.

А није било ни обичних Лего коцкица. Имао сам само пријатеља чији је брат имао све ове скупе играчке.

А сада и ја имам сина ових година. И прави тенкове који се... глупо крећу напред док се не забију у зид :)

А сада је време за ЕСП32 и магију лемилице - хајде да саставимо прави даљински управљач за њих!

Не, наравно да знам за постојање таквих даљинских управљача. Али ниједан од њих ми не одговара у потпуности. Они су или инфрацрвени, технологија из 80-их или превелики. Или скупе. И што је најважније, нећу моћи да кажем свом сину ни за једну од њих: „Урадио сам ово специјално за тебе!“

Зато хајде да направимо нови и побољшани даљински управљач да управљамо свима њима!

Бежично контролишите Лего моторе користећи Стеам Цонтроллер

sastojci:

  • ЕСП32-ВРООМ-32Д | ВиФи, БЛЕ и процесор са И/О - довољно за контролу два мотори и ЛЕД.
  • ДРВ8833 | двоструки Х-мост са довољно снаге за моторе.
  • ТПС62162 | смањење напона на 17 В, као и за забаву приликом лемљења кућишта ВСОН-8 2к2 мм
  • ЦП2104 | за ЕСП32 програмирање
  • Конектори за повезивање мотора и диода. Исећи ћемо жице и лемити их на дну, а на врху залепити Лего конектор.

Све ово ће стати на прилично малу плочу - ево његовог изгледа у уређивачу ЕасиЕДА:

Бежично контролишите Лего моторе користећи Стеам Цонтроллер

Жица која се може видети на насловној фотографији није потребна за исправљање грешака, већ за напајање са УСБ-а. Можда није довољно за мотор, али, нажалост, још увек нисам добио контакте из Кине. Зато прво проверавам рад ЛЕД диода. За лепоту на фотографији, једноставно сам ставио конектор са мотора на плочу.

На верзији 1.1 моје плоче (за разлику од верзије 1.2, која је већ на ЕасиЕДА) није било ЛЕД диода, па сам залемио две антипаралелне диоде на излаз како бих могао да видим шта се дешава. Ако пажљиво погледате, видео приказује наизменичну активацију пара диода 0603, што указује на кретање напред/назад.

Што се тиче контролне табле, у почетку сам само желео да саставим додатну плочу са дугмадима и још један ЕСП32 - класични даљински управљач.

Међутим, тада сам се сетио да Стеам контролери имају Блуетоотх Лов Енерги (БЛЕ) начин рада. Одлучио сам да се позабавим овим проблемом и након неколико сати научио сам да примам пакете од контролора.

Да бисте то урадили, само треба да потражите ХИД уређај који себе назива СтеамЦонтроллер и да се повежете са њим. Затим користите недокументовану услугу од Валвеа и неколико недокументоване команде, омогућавајући пренос пакета.

Бежично контролишите Лего моторе користећи Стеам Цонтроллер

Такође сам наишао на недокументовани формат извештаја, који сам рашчланио ручно.

Бежично контролишите Лего моторе користећи Стеам Цонтроллер

После отприлике сат времена, значење заставица и вредности постало ми је јасно и успео сам да трепнем ЛЕД помоћу Стеам контролера и ЕСП32. ¯_(ツ)_/¯

Филес

вКСНУМКС: "пробни приступ"
- прва опција за коју сам изабрао погрешан регулатор напона. ТПС62291 само подиже напон на 6 В. Развијао сам неколико пројеката паралелно, а заборавио сам да уређај треба да ради са 9 В.

вКСНУМКС: "довољно добро"
— ова опција је видљива на видео снимцима и све ради

вКСНУМКС: "коначни"
— додали индикаторске ЛЕД диоде на излаз и оптимизовали величину и изглед плоче

Следећи кратки видео приказује фазу повезивања (1-3 секунде након укључивања) и контролу излаза мотора. Лего конектор још није повезан. Ићи ће на празан простор поред осталих конектора, означен белим правоугаоником.

Мој син сада редовно користи овај контролер за контролу уређаја које је направио.

Током стрес теста наишао сам само на један проблем: мислио сам да ће режим „брзог распадања“ покретача мотора најбоље функционисати, али је узроковао драстичан пад брзине мотора након неколико секунди рада. Па сам променио код да користим споро распадање.

Бежично контролишите Лего моторе користећи Стеам Цонтроллер

Још нисам сигуран како ДРВ ради и зашто се мотор у почетку брзо окреће, а затим након 10 секунди почиње постепено да успорава. Можда се МОСФЕТ-ови загревају и њихов отпор превише расте.

Надам се да ће ова једноставна употреба Ардуина послужити као инспирација другима да своју децу уведу у електронику.

Извор: ввв.хабр.цом

Додај коментар