Cov txheej txheem:

Ntoo Bluetooth Chaw Taws Teeb rau Lego Duplo Tsheb ciav hlau: 3 Kauj Ruam (nrog Duab)
Ntoo Bluetooth Chaw Taws Teeb rau Lego Duplo Tsheb ciav hlau: 3 Kauj Ruam (nrog Duab)

Video: Ntoo Bluetooth Chaw Taws Teeb rau Lego Duplo Tsheb ciav hlau: 3 Kauj Ruam (nrog Duab)

Video: Ntoo Bluetooth Chaw Taws Teeb rau Lego Duplo Tsheb ciav hlau: 3 Kauj Ruam (nrog Duab)
Video: 10 самых АТМОСФЕРНЫХ мест Дагестана. БОЛЬШОЙ ВЫПУСК #Дагестан #ПутешествиеПоДагестану 2024, Hlis ntuj nqeg
Anonim
Ntoo Bluetooth Chaw Taws Teeb rau Lego Duplo Tsheb nqaj hlau
Ntoo Bluetooth Chaw Taws Teeb rau Lego Duplo Tsheb nqaj hlau
Ntoo Bluetooth Chaw Taws Teeb rau Lego Duplo Tsheb nqaj hlau
Ntoo Bluetooth Chaw Taws Teeb rau Lego Duplo Tsheb nqaj hlau

Kuv cov menyuam nyiam qhov kev qhia me me Lego Duplo tshwj xeeb tshaj yog kuv tus yau tshaj uas tawm tsam sib tham nrog nws tus kheej cov lus yog li kuv xav tsim nws qee yam uas yuav pab nws ua si nrog lub tsheb ciav hlau ntawm tus neeg laus lossis xov tooj/ntsiav tshuaj. Ib yam dab tsi uas yuav ntxiv qhov ntev ntxiv rau lub tsheb ciav hlau thiab muab nws tus nqi ua si ntxiv

Lego teeb twb muaj ob peb txoj hauv kev los tswj lub tsheb ciav hlau, koj tuaj yeem thawb nws rau pem hauv ntej kom pib thiab tuav nws kom nres nws, koj tuaj yeem tswj nws siv cov cim xim uas mus rau ntawm txoj kev yog li thaum lub tsheb ciav hlau hla nws hla nws ua qhov sib txawv ua piv txwv. rau pem hauv ntej, thim rov qab, ua si suab qhib lub teeb. Koj tseem tuaj yeem rub tawm daim ntawv thov rau koj lub xov tooj lossis ntsiav tshuaj uas tuaj yeem txuas rau lub tsheb ciav hlau ntawm bluetooth.

Nov yog kev tshuaj xyuas tag nrho ntawm lub tsheb ciav hlau

Tom qab yos hav zoov nyob ib puag ncig hauv internet Kuv pom muaj tsawg tus neeg sib txawv uas muaj txhua tus npaj sau cov cai los tswj lub tsheb ciav hlau. Qhov 'Poweredup' node sau los ntawm nathan.kellenicki (https://nathan.kellenicki.com/node-poweredup/) zoo li pib tau zoo, Nws tau sau siv Javascript uas kuv tsis yog ib nrab paub nrog tab sis xav yog tias kuv tuaj yeem pom java raws microchip, qhov no yuav yog qhov pib zoo.

Ib zaug ntxiv tom qab yos hav zoov nyob hauv internet dua kuv pom lub espruino system, qhov no zoo ib yam li ardiuno tab sis puag ncig javascript. Txoj cai espriuno tuaj yeem thauj mus rau MDBT42Q mircochip uas muaj bluetooth embed. Kuv xav yog tias kuv tuaj yeem thauj tus "txhawb nqa" tus qauv rau nws kuv yuav yog ib nrab txoj kev nyob ntawd, txawm li cas los xij qhov no yooj yim tsis yog qhov xwm txheej uas muaj ntau lub tsev qiv ntawv mus rau qhov loj rau thauj ntawm MDBT42Q, yog li nws zoo li kuv yuav tsum nrhiav kev daws teeb meem yooj yim….

Kauj ruam 1: Txoj Cai

Txoj Cai
Txoj Cai

Esprinuo

Rau cov uas tsis paub Espruino platform https://www.espruino.com (thiab kuv tsis tau) nws zoo ib yam li Arduino, Muaj ob peb qhov sib txawv tseem ceeb ib qho nws tau sau rau javascript es c, Nws zoo li me dua yog li muaj qhov ua piv txwv li cas los xij qhov kev txhawb nqa ntawm lub rooj sab laj yog qhov zoo thiab muaj txiaj ntsig zoo.

Javascript ntsib lub tsheb ciav hlau

Thawj qhov teeb meem yog txuas mus rau lub tsheb ciav hlau ntawm bluetooth, Qhov no tuaj yeem ua tiav siv NRF chav kawm uas xa nrog cov lej espruino.

NRF.connect tuaj yeem siv txuas rau lub tsheb ciav hlau txawm li cas los xij koj thawj zaug xav tau los nrhiav qhov chaw nyob ntawm lub tsheb ciav hlau nws tus kheej, koj tuaj yeem siv NRF.findDevices kom tau txais cov ntaub ntawv no

Thaum koj ua tiav qhov no koj yuav tsum xa lub tsheb ciav hlau ob tus nqi rau kev tuav tes nrog lub tsheb ciav hlau, rau kuv lub tsheb ciav hlau no yog "00001623-1212-efde-1623-785feabcd123" ua raws los ntawm "00001624-1212-efde-1623-785feabcd123" Kuv ntseeg qhov no yuav zoo ib yam rau txhua lub tsheb ciav hlau tau teeb tsa tab sis lwm qhov piv txwv xws li cov khoom thauj khoom tej zaum txawv

Thaum koj muaj qhov no koj tuaj yeem txuas lub tsheb ciav hlau siv ua haujlwm zoo li hauv qab no, koj puas tuaj yeem qhia thaum lub tsheb ciav hlau txuas nrog vim nws yuav nyem nws lub taub hau xiav

NRF.connect ("e0: 7d: ea: 0c: 03:29"). Ces (muaj nuj nqi (g) {

console.log ("Pib txuas 2"); tau = g; xa rov qab gatt.getPrimaryService ("00001623-1212-efde-1623-785feabcd123"); }). tom qab ntawd (muaj nuj nqi (kev pabcuam) {xa rov qab service.getCharacteristic ("00001624-1212-efde-1623-785feabcd123");}).).then (tus nqi => {console.log (tus nqi);}).

Cov khoom lom zem

Tam sim no koj txuas nrog lub tsheb ciav hlau nws yog lub sijhawm rau txhua qhov khoom lom zem zoo li txav nws mus rau tom ntej, ua suab thiab tig lub teeb rau thiab tawm. Nws yog txoj haujlwm yooj yim ntawm kev xa tsheb ciav hlau tus nqi npaj ua ntej, ua raws li qhov hais kom ua piv txwv

muaj nuj nqi play_horn () {

console.log ("message =", Characteristic_store); const prepval = tshiab Uint8Array ([0x0a, 0x00, 0x41, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x01]); const xa tus nqi = tshiab Uint8Array ([0x08, 0x00, 0x81, 0x01, 0x11, 0x51, 0x01, 0x09]); Yam ntxwv_store.writeValue (prepval). Ces (_ => {Tus yam ntxwv_store.writeValue (xa tus nqi);}); }

Koj yuav tsum tau ua me ntsis khawb ib ncig txhawm rau nrhiav lwm cov lus txib dua li cov uas kuv tau siv

Khawm thiab Levers

Lub cev sab nraud ntawm cov chaw taws teeb yog ncaj ncaj rau pem hauv ntej plaub lub nyees khawm (kom ua suab, tig lub teeb rau thiab tawm) thiab ib lub hwj chim uas txuas rau qib kom koj tuaj yeem tswj qhov nrawm thiab kev qhia ntawm lub tsheb ciav hlau.

Lub pob tsis xav tau rub tawm tus neeg tawm tsam koj tuaj yeem ua qhov no hauv txoj cai, piv txwv li

pinMode (D15, 'input_pulldown');

Koj tuaj yeem txuas lub hwj chim rau ib qho ntawm cov tswv yim thiab tom qab ntawd nyeem nws cov teeb liab sib piv siv cov lus txib hauv qab no

var nyeem ntawv = analogRead (D31);

Lwm qhov sib txawv rau arduino yog tias esprunio tsis muaj teeb tsa thiab voj. Yog li hloov kuv tso txhua qhov cais cov lus txib/ua rau lub luag haujlwm thiab tom qab ntawd teeb tsa setInterval uas loops txhua txhua 100 milliseconds, mloog lub pob tom qab ntawd ua haujlwm qhov xav tau thaum lub pob tau raug nias.

yog (digitalRead (D15) == 1) {play_horn (); }

Ua tus qib tau nyuab dua me ntsis raws li xav kom tuaj yeem hloov kho qhov nrawm dua ua ntej kuv yuav tsum xa tus nqi sib piv los ua haujlwm

var nyeem ntawv = analogRead (D31);

train_direction (nyeem * 1024);

Tom qab ntawd hauv txoj haujlwm tsheb ciav hlau _ kuv tau tsoo cov lus txib rau 6 qhov sib txawv nce ntxiv raws li lub lauj kaub tus nqi

Txhua txoj hauv kev, qhia lub tsheb ciav hlau kom nrawm nrawm ua ntej

Ib nrab ntawm txoj kev, qhia lub tsheb ciav hlau kom mus tom ntej ntawm 50% nrawm

Nruab nrab, qhia lub tsheb ciav hlau kom nres

Ib nrab txoj kev, qhia lub tsheb ciav hlau kom rov qab los ntawm 50% nrawm

Txhua txoj hauv kev, qhia lub tsheb ciav hlau kom nrawm nrawm rov qab

yog ie

muaj nuj nqi train_direction (dir_val) {

//console.log("message = ", Characteristic_store); const prepval = tshiab Uint8Array ([0x0a, 0x00, 0x41, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x01]); const xa tus nqi = tshiab Uint8Array ([0x08, 0x00, 0x81, 0x00, 0x01, 0x51, 0x00, 0x00]); yog (dir_val> 300 && dir_val 400 && dir_val 500) {const sendvalue = tshiab Uint8Array ([0x08, 0x00, 0x81, 0x00, 0x01, 0x51, 0x00, 0x64]); } yog (dir_val 200) {const sendvalue = tshiab Uint8Array ([0x08, 0x00, 0x81, 0x00, 0x01, 0x01, 0x51, 0x00, 0xe2]); } yog (dir_val 100) {const sendvalue = tshiab Uint8Array ([0x08, 0x00, 0x81, 0x00, 0x01, 0x01, 0x51, 0x00, 0xce]); } yog (dir_val {Characteristic_store.writeValue (xa tus nqi);}); }

Cov lej tag nrho tuaj yeem nqes rau qhov txuas hauv qab no

Kauj Ruam 2: Kev Txuas Hluav Taws Xob

Qhov thaiv
Qhov thaiv
Qhov thaiv
Qhov thaiv

Cov xov hlau yog qhov yooj yim tshaj plaws

Nws tsuas yog suav nrog 4 lub laub khawm txuas nrog D15, D16, D17 thiab D18 nrog tawm ib qho rub tawm resistor raws li qhov no tau ua tiav hauv txoj cai thiab 1 10k resistor txuas nrog D31

Kuv tseem tab tom ua haujlwm ntawm cov khoom siv hluav taws xob tab sis tam sim no txhua lub zog los ua lub micro usb breakout thiab qhov no tuaj yeem txuas lawv ncaj qha rau lub txhab nyiaj lossis USB chaw nres nkoj

Kauj ruam 3: Tsim

Tsim
Tsim
Tsim
Tsim
Tsim
Tsim
Tsim
Tsim

Cov chaw taws teeb feem ntau tawm ntawm 3mm, 6mm lossis 9mm A4 nplooj ntawv ntawm plywood, Lawv qhov twg txiav ntawm kuv lub tshuab CNC txawm li cas los xij siv tus qauv muab kuv xav ntawm qhov nws tsis tuaj yeem ua los ntawm txhais tes

Kuv vam tias tus qauv thiab cov duab yuav muab rau koj txhua yam koj xav tau rov ua dua txawm li cas los xij muaj qee qhov kev sau tseg uas yuav pab tau

Lub 3mm Push Button mount yog txhawm rau khawm lub laub rau, qhov sib txawv yuav tso lub pob rau hauv qhov chaw raug tab sis peb tso cai rau koj nkag mus rau ceg ntawm nraub qaum kom koj tuaj yeem txuas rau lub microchip, ntawm qhov rov qab koj tuaj yeem tsim MDBT42Q siv qee cov kua nplaum. Ntawm sab xub ntiag koj yuav xav tau ntxiv ua npuas dej kom nws muab cov nyees khawm me ntsis thawb thaum koj nias lawv, koj kuj tuaj yeem siv cov springs

9mm cov nyees khawm yuav xav tau lub logo txawm yog pleev xim, kos duab lossis lwm yam uas qhia tias lub khawm ua dab tsi

Qib/Kov yuav tsum tau ua txheej txheej, Kuv siv 6mm lub duav los pab kho lawv txhua txoj haujlwm raug.

Pom zoo: