Orodha ya maudhui:
Video: Nyimbo za Localino Roomba IRobot, Ramani za Mazingira na Inaruhusu Udhibiti: 4 Hatua
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:54
Ili kujenga daraja la WiFi-UART, unaweza kuangalia repo hii ya github:
Inayo msingi mzuri wa kuanza nayo. Hakikisha umesoma mwongozo vizuri, kwa sababu Roomba VCC wakati wa kuchaji huongezeka hadi Volts 20! Ikiwa utaongeza ESP8266 bila kibadilishaji kibadilifu ambacho hufanya kazi hata hadi 20V na inabadilisha chini hadi 3.3V, utaharibu ESP yako.
Hakikisha pia kutumia shifter ya kiwango (k.m. kutumia mgawanyiko wa voltage) kuhamisha viwango vya mantiki vya UV 5V kutoka Roomba hadi 3.3V, ambayo hutumiwa na ESP.
Maelezo mengine muhimu ni kwamba, kibadilishaji cha bibi kinapaswa kuwa na 300mA, lakini noch kidogo sana au zaidi (kulingana na kibadilishaji cha dume yenyewe). Kuna wengine nje ambao wanaweza kufanya mengi zaidi ya sasa, lakini wasababisha Roomba kuanguka kwa sababu wanachora sasa nyingi wakati wa kuanza. Tuligundua kuwa Mdhibiti wa Voltage 3.3V, 300mA Step-Down Voltage (D24V3F3) inafanya kazi kamili. Matoleo mbadala ambayo yana 500mA / 600mA yalisababisha kiolesura cha Roomba UART kuanguka. Kimsingi Roomba alikuwa akijibu kwa bonyeza kitufe, lakini sio kwa amri kupitia kiolesura cha UART. Mara baada ya kufurahi hii tulilazimika kuondoa betri ya Roomba na kuanza tena baridi Roomba na daraja la WiFi-UART. Walakini, ni D24V3F3 tu iliyofanya kazi vizuri.
Kando na maelezo hayo ya kiufundi, lazima uongeze maagizo ya ziada kwa nambari, ambayo unaweza kupata katika vipimo vya interface wazi vya Roomba. Utahitaji kuongeza amri zote ambazo unataka roomba yako kuitikia (kwa mfano, kurudi nyuma, mbele, kasi, nk).
mifano ndani ya IDE ya arduino:
batili kwenda mbele () {char c = {137, 0x00, 0xc8, 0x80, 0x00}; // 0x00c8 == 200 Serial.print (c); }
batili kurudi nyuma () {char c = {137, 0xff, 0x38, 0x80, 0x00}; // 0xff38 == -200 Serial.print (c); }
batili spinLeft () {char c = {137, 0x00, 0xc8, 0x00, 0x01}; Printa ya serial (c); }
batili spinRight () {char c = {137, 0x00, 0xc8, 0xff, 0xff}; Printa ya serial (c); }
ikiwa unaandika kwenye lua inaonekana tofauti kidogo, mfano wa zamu ya LEFT itaonekana kama hii:
ikiwa (_GET.pin == "LEFT") kisha chapisha ('\ 137'); --VOR
kuchemsha (100);
chapisha ('\ 00'); - Mwendo = 200 = 0x00C8 -> 0 na 200
kuchemsha (100);
chapisha ('\ 200'); - Kasi
kuchemsha (100);
chapisha ('254'); - Radius = 500 = 0x01F4 = 0x01 0xF4 = 1 244
kuchemsha (100);
chapisha ('\ 12'); - Pinduka
mwisho
Hakikisha unapaswa kusahihisha maelezo ya kiolesura wazi ya Roomba yako. Kuna angalau maelezo mawili ya kiolesura wazi yanayopatikana.
kwa safu ya Roomba 5xx:
kwa safu ya Roomba 6xx:
Mara tu utakapojenga daraja lako la WiFi-UART na kujaribu amri ulizochukua hatua kubwa zaidi. Video hii inaonyesha kuwa matumizi na njia inafanya kazi. Tulikuwa wavivu kidogo, kiunga cha wavuti kinakosa amri zingine zote za kudhibiti, kama mbele, nyuma, kasi, kulia, kushoto na kadhalika, lakini unaweza kutoa amri kupitia http. Kwa hivyo, ni onyesho tu kwamba udhibiti wa kijijini wa Roomba hufanya kazi na kipande rahisi cha vifaa na programu kwa kutumia ESP8266.
Sasa kama unaweza kudhibiti Roomba yako kwa mbali kutoka kwa programu ya PC, kitu pekee kinachokosekana ni ujanibishaji wa ndani. Tunahitaji hii ili kufunga kitanzi cha maoni, kwa sababu lengo letu lilikuwa kuelekeza robot kwa mwelekeo fulani. Wacha tufanye hivi.
Hatua ya 3: Sanidi Mfumo wako wa Ujanibishaji wa Ndani
Ili kufunga kitanzi cha maoni tunatumia mfumo wa ujanibishaji wa ndani. Tunatumia Localino kwa hili. Mfumo wa Localino una "nanga" na "vitambulisho". Nanga zimewekwa katika maeneo yaliyowekwa ndani ya chumba na kupata nafasi ya lebo ya kusonga (ambayo imewekwa kwenye Roomba). Usindikaji wa eneo unafanywa katika programu ya PC. Hiyo ni ya faida kubwa, kwa sababu yako pia inaweza kudhibiti Roomba kutoka kwa PC ile ile! Kuna nambari ya chanzo ya bure inayopatikana kutoka kwa wavuti ya Localino, imeandikwa katika chatu na pia kuna mkondo wa wakati halisi ambao unatoa kuratibu za XYZ za lebo. Mtiririko wa data unapatikana kupitia mtandao wa UDP, lakini unaweza pia kuongeza MQTT au vitu vingine vya kupendeza unavyopenda. Ikiwa unajua Chatu, kuna chungu za maktaba ambazo zinakusaidia.
Katika video hii, ujanibishaji wa Roomba umeonyeshwa. Kwa hivyo tuna nanga 4 kwenye chumba katika maeneo yaliyowekwa, ambayo inaruhusu nafasi ya 3D ya Roomba. Kwa ujumla, tungehitaji tu nanga 3, kwa sababu Roomba labda haitahamia kwenye mhimili wa Z, kwa hivyo 2D ingekuwa ya kutosha. Lakini kwa sababu nanga ziko kwenye urefu kuu wa kuziba AC (ambayo ni takriban 30cm juu ya ardhi) usanidi wa 2D utasababisha makosa madogo ya kukadiria msimamo. Kwa hivyo tuliamua kuwa na nanga 4 na ujanibishe katika 3D.
Sasa kwa kuwa tuna msimamo wa Roomba hatua yetu inayofuata ni kudhibiti Roomba kutoka kwa programu hiyo hiyo. Wazo ni kutumia ukweli wa ardhi na kukadiria njia kamili ya kusafisha kwa roboti. Kwa matumizi ya Localino tunaweza kufunga kitanzi cha maoni na kudhibiti roboti kutoka kwa programu ya PC.
Maneno ya kuanzisha
Weka nanga za Localino ndani ya chumba kwa nafasi tofauti za x, y na tatu kati yao kwa nafasi sawa ya z. Weka nanga moja kati ya nne kwa urefu tofauti z kwa kila chumba. Hakikisha kuwa kuna chanjo nzuri kutoka kwa lebo ya Localino, ambayo itakuwa ikihamia na Roomba.
Nanga zote zina kitambulisho cha nanga cha uniqe, ambacho kinaonyeshwa kwenye msimbo wa mwambaa wa Localino na inaweza kusomwa na zana ya "usanidi wa localino".
Kumbuka nafasi katika X, Y, Z na vitambulisho vya nanga. Hii inahitajika kwa Programu ya Msindikaji wa Localino na inapaswa kubadilishwa katika faili ya "localino.ini" kwenye folda "LocalinoProcessor"
Nanga zinapaswa kuelekeza juu au chini katika Z (wakati eneo la XY limefunikwa), lakini sio kwa mwelekeo wa eneo lililofunikwa. Nanga hizo pia hazipaswi kufunikwa na chuma au vifaa vingine vyovyote vinavyosumbua ishara ya waya. Ikiwa hii haiwezekani, inapaswa pia kuwa na pengo fulani la hewa kati ya nyenzo yoyote na nanga.
… Zaidi ijayo.
Hatua ya 4: Badilisha programu ya Python
endelea kufuatilia. zaidi ijayo.
Ilipendekeza:
Piano ya Arduino iliyo na Mwongozo na Nyimbo 7 zilizowekwa mapema: Hatua 7
Piano ya Arduino iliyo na Mwongozo na Nyimbo 7 za Presets: Kibodi ya Arduino Piano inayoingiliana na LCD ina hali 2. Njia ya Mwongozo & Njia iliyowekwa mapema. Nilitumia Pushbutton 7 kwa piano funguo 7 rahisi na kitufe 1 cha Njia ya Kuweka ili kubadili nyimbo 7 zilizowekwa mapema .. Nyimbo za hali ya Preset: Bonyeza kitufe cha hali ya usanidi fi
Tengeneza Kitabu cha Ramani Kutumia Ramani za Google: Hatua 17 (na Picha)
Tengeneza Kitabu cha Ramani Kutumia Ramani za Google: Siku nyingine nilikuwa nikitafuta duka la vitabu kwa Mwongozo wa Mtaa wa Kaunti ya DuPage, IL kwani rafiki yangu wa kike anaishi hapo na anahitaji ramani ya barabara ya kina. Kwa bahati mbaya, moja tu ambayo walikuwa nayo ambayo ilikuwa karibu ilikuwa moja ya Kaunti ya Cook (kama hii o
Bango la Kukata-Nyimbo za Vibration: Hatua 6
Bango la Kukata-Nyimbo za Vibration: Je! Tunaweza kufanya nini na bango? Je! Unaweza kufikiria kwamba picha au bango linaimba au kuzungumza? Kama mfanyikazi wa kiufundi, leo, nitakufundisha jinsi ya kutengeneza bango lenye kupendeza na la kupendeza. Unaweza hata kuingiliana na picha zako. Wacha tuje tuone. Mkutano
Kutengeneza Nyimbo na Arduino na DC Motor: 6 Hatua
Kutengeneza Nyimbo na Arduino na DC Motor: Siku nyingine, wakati nikipitia nakala kadhaa kuhusu Arduino, niliona mradi wa kupendeza ambao ulitumia motors za stepper zinazodhibitiwa na Arduino kuunda nyimbo fupi. Arduino ilitumia pini ya PWM (Pulse Width Modulation) kuendesha motor stepper
Ondoa Maneno ya Nyimbo kutoka kwa Nyimbo ZAIDI: Hatua 6 (na Picha)
Ondoa Maneno kutoka Nyimbo ZAIDI: Hii itakufundisha jinsi ya kuondoa sauti kutoka karibu wimbo wowote. Hii ni nzuri kwa kutengeneza wimbo wako wa Karaoke Sasa kabla sijaanza nataka ujue hii haitaondoa kabisa mwimbaji, lakini itafanya kazi nzuri sana kwa hivyo inafaa