Satura rādītājs:
- 1. darbība. Nepieciešamie priekšmeti
- 2. darbība. Android G1 ar iespējotu seriālo izvadi
- 3. darbība: instalējiet Android skriptu vidi (ASE), izmantojot Python
- 4. darbība. Kopējiet un palaidiet skriptu Cellbot.py, lai palaistu Python programmu
- 5. solis: Telnet iekļūšana G1 un testa nosūtīšanas komandas
- 6. solis: pievienojiet 3.3v līdz 5v līmeņa pārslēdzēju Arduino
- 7. solis: ielādējiet Cellbots programmu Arduino
- 8. solis: palaidiet visu procesu
Video: Android G1 sērija līdz Arduino robotam: 8 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 11:00
Uzziniet, kā jūsu Android mobilais tālrunis var vadīt robotu, izmantojot Arduino dēli. Tālrunis saņem komandas, izmantojot telnet, no cita tālruņa vai datora, lai jūs varētu vadīt robotu attālināti. Šis projekts citādi nemainīs G1, lai jūs varētu turpināt to izmantot kā parasto tālruni pēc tā atvienošanas. Kāpēc? Izmantojot lētus elektroniskos komponentus, piemēram, Arduino dēļus, varat tos savienot pārī ar savu USD 400 tālruni, lai izveidotu lielisku robotu. GPS, LCD, kustību sensoru, Wi-Fi, mobilo sakaru, skaļruņu un citu iespēju pievienošana hobija robotam izmaksātu simtiem dolāru, taču jūsu tālrunī jau ir šie! Kopā Android G1 un Arduino dēlis ļauj izmantot lētu elektroniku, piemēram, vienkāršus servos un sensorus, lai izveidotu jaudīgas ierīces, piemēram, robotus, tālvadību vai jautras rotaļlietas bērniem. Plašāka informācija vietnē Cellbots.com. Piezīme. Šim projektam pašlaik ir nepieciešama Android G1 ar saknes piekļuvi, lai izmantotu sērijveida izvadi no tālruņa uz Arduino robotu. Ja vēlaties izmantot komerciālo Android programmatūru, savai Arduino plāksnei varat pievienot 20 ASV dolāru BlueTooth moduli, lai tālrunis ar to sarunātos, izmantojot sērijas BlueTooth. Īpašs paldies: mums ir Hacker Dojo Mountain View, CA, lai pateiktos, ka sazinājāties ar mums, palīdzēja atrisināt sarežģītas problēmas, izmantojot viņu satriecošo dalībnieku adresātu sarakstu, un par to, ka krājumā ir 74LS04 mikroshēmas. Lielākā daļa montāžas tika veikta Tech veikalā Menlo parkā.
1. darbība. Nepieciešamie priekšmeti
Lai pabeigtu šo apmācību, jums būs nepieciešams: Aparatūra: - Android G1 Dev tālrunis (vai cita Android ierīce ar saknes piekļuvi un sērijas izvadi) - Arduino (es izmantoju Freeduino SB, bet jebkuram vajadzētu to darīt) - 3.3v līdz 5v pārveidotājs, ja neizmantojat 3.3v Arduino (es izmantoju 74LS04 mikroshēmu par cenu zem 1 USD, bet ir pieejamas citas iespējas) - HTC USB sadalīšanas panelis G1 - lodēšanas iekārta diviem ātriem savienojumiem - robota korpuss ar mikro servos (kartons, akrils, protektori, riteņi, jebkas darīs) Programmatūra: - Android skriptu vide (ASE) - Telnet klients jūsu datoram (es izmantoju PuTTY operētājsistēmā Windows) - Arduino izstrādes vide - (pēc izvēles) Sērijas klients jūsu dators (es šim nolūkam arī izmantoju PuTTY operētājsistēmā Windows) - (pēc izvēles) Android SDK Ja varat izpildīt norādījumus, varat pabeigt šo apmācību, maz zinot par Python, Arduino, Android vai elektroniku. Jūs vēlaties zināt šīs lietas, ja vēlaties pārsniegt mirgojošu gaismas diode, bet tas ļaus jums sākt.
2. darbība. Android G1 ar iespējotu seriālo izvadi
G1 netiek piegādāts ar iespēju nosūtīt sērijveida komandas no USB porta, un nav vietējās iespējas to iespējot. Ja esat pieredzējis Android SDK lietotājs, varat izveidot savu būvējumu, bet es izvēlējos izmantot Cyanogenmod 4.2.13. Ja zināt citas Android ierīces ar sērijveida izejas darbību, pievienojiet tās komentāriem.
Pēc izvēles varat sekot tur esošajām saitēm uz šo pamācību, sarunājoties ar G1, izmantojot USB no datora. Šai apmācībai nav nepieciešams seriālais savienojums ar USB, bet es to izmantoju kā jauku saprāta pārbaudi, lai pārbaudītu, vai tālrunis sūta sēriju. Ja neizmantojat citu nepārvaramu, lai pārbaudītu, vai sērijas izvade darbojas, varat izmēģināt šo vienkāršo pārbaudi: 1. Atveriet lietotni Terminālis G1 (nāk ar ciāngēnu, bet lejupielādējiet to no tirgus, ja jums ir cits attēls) 2 Pārejiet uz/dev/direktoriju, ierakstot cd/dev/3. Ierakstiet ls (tas ir L) un meklējiet ttyMSM2 sarakstā. Python skripts, kuru mēs izmantosim vēlāk, nosūta komandas uz '/dev/ttyMSM2' lai viņi pārtrauktu sērijas savienojumu. Tā kā tam nepieciešama root piekļuve, jums būs jāmaina atļaujas katru reizi, kad restartējat tālruni. Lai to izdarītu: 1. Tālrunī atveriet termināļa lietotni. 2. Ievadiet 'chmod 777 /dev /ttyMSM2'. Pēc tam nākamajā solī varat palaist Python skriptu no Android skriptu rediģēšanas, un tam būs piekļuve sērijveida izvades nosūtīšanai.
3. darbība: instalējiet Android skriptu vidi (ASE), izmantojot Python
Skripti, kurus mēs izmantosim, lai izveidotu atvērtu kontaktligzdas savienojumu tālrunī un nosūtītu komandas, ir rakstīti Python. Lai to palaistu G1, mums būs nepieciešama Android skriptu vide. Ja neredzat to tirgū, varat to lejupielādēt, skenējot šīs lapas svītrkodu, kurā ir saite uz šajā lapā esošo APK failu.
Kad esat instalējis un palaidis ASE, izvēlnē vēlaties pievienot Python moduli: 1. Atveriet ASE un pārliecinieties, vai ir pieejams interneta savienojums (wi-fi vai 3G). 2. Nospiediet tālruņa izvēlnes pogu un izvēlieties Tulki 3. Vēlreiz nospiediet izvēlni un atlasiet Pievienot 4. Izvēlieties Python (pašlaik, kad to rakstāt, v2.6.2), un tas lejupielādēs dažus zip failus. Iespējams, vēlēsities izpētīt skriptu izveidi, atvēršanu, rediģēšanu un darbību, lai iepazītos ar Python, izmantojot ASE, bet tas nav obligāti.
4. darbība. Kopējiet un palaidiet skriptu Cellbot.py, lai palaistu Python programmu
Šī apmācība izmanto Python skriptu, lai būtu robota "smadzenes". Iegūstiet jaunāko kodu no mūsu atvērtā pirmkoda projekta Google Code. Jums ir nepieciešams tikai fails cellbot.py, bet citi var palīdzēt ar dažādām lietām, kuras vēlaties izpētīt. Es vienkārši pievienoju tālruni datora USB savienojumam un pievienoju disku pirms faila kopēšanas uz/sdcard/ase/scripts.
Programma izveido atvērtu kontaktligzdas savienojumu, lai pieņemtu ienākošo telnet sesiju. Tas arī izdrukā ekrānā saņemtās komandas, vienlaikus izsūtot tās no seriālā porta. Ievietojiet šo failu tālruņa SD kartē direktorijā/ase/scripts/. Detalizēti skriptu ielādes un palaišanas soļi: 1. Kopējiet skriptu cellbot.py SD kartes/ase/scripts/direktorijā 2. Noteikti noņemiet disku SD karti no datora, ja esat tos tā kopējis, jo tālrunis nevar piekļūt failiem vienlaikus ar datoru. 3. Atveriet Android skriptu vides lietotni. 4. Noklikšķiniet uz cellbot.py, lai to palaistu. Jums vajadzētu redzēt apstiprinājumu, ka ierīce ir gatava pieņemt ienākošās telnet sesijas portā 9002. Padoms. Noteikti palaidiet "chmod 777 /dev/ttyMSM2 "komanda vispirms no 3. darbības. Skatiet 5. darbību, lai atrastu tālruņa IP adresi.
5. solis: Telnet iekļūšana G1 un testa nosūtīšanas komandas
Tālrunim jābūt gatavam, lai jūs varētu tajā iekļūt telnetā un nosūtīt komandas no sava datora. Tas izdrukās tos tālruņa ekrānā, lai apstiprinātu saņemto. Es izmantoju PuTTY operētājsistēmā Windows, taču esam apstiprinājuši, ka minicom lieliski darbojas Mac datoros, kā aprakstīts šajā pamācībā.
Vispirms jums jāatrod sava tālruņa IP adrese. To var izdarīt, dodoties uz Izvēlne> Iestatījumi> Bezvadu vadība> Wi-Fi iestatījumi un pēc tam nospiežot pašlaik aktīvo savienojumu. Uznirstošais grauzdiņa ziņojums parādīs pašreizējo IP adresi vietējā tīklā. Pierakstiet to, jo to izmantosit katru reizi, kad no datora vēlaties atvērt telnet sesiju. IP uzdevumi parasti beidzas pēc noteikta dienu skaita, tāpēc jums tas, iespējams, būs jāpārbauda vēlreiz. Piezīme. Šajā apmācībā tiek pieņemts, ka jūsu dators un tālrunis atrodas tajā pašā vietējā tīklā. Maršrutēšanai uz tālruni no vietējā tīkla jābūt iespējamai, taču tas šeit nav aprakstīts. Atveriet izvēlēto telnet klientu un izveidojiet savienojumu ar tālruņa IP portā 9002. No komandrindas jūs to darāt kā "telnet 192.168.1.1 9002", izmantojot faktisko tālruņa IP. Ievadiet dažas rakstzīmes un nospiediet taustiņu Enter, lai tās parādītos tālruņa ekrānā. Varat ievadīt q, lai pārtrauktu Python skripta darbību, un tam vajadzētu slēgt termināļa sesiju. Ja kāda iemesla dēļ nevarat izveidot savienojumu, izmantojot telnet, un jums ir jānogalina programma, vienkārša tālruņa restartēšana ir jādara. Pieredzējuši lietotāji var vēlēties atrast procesa ID, izmantojot ps, un pēc tam izmantot kill, lai to apturētu. Papildu: šī versija nākotnē varētu palaist vietējo tīmekļa serveri no tālruņa, nevis pieņemt komandas, izmantojot telnet. Mēs arī pētām XMPP, lai tērzētu ar jūsu robotu.
6. solis: pievienojiet 3.3v līdz 5v līmeņa pārslēdzēju Arduino
Šajā apmācībā izmantotais Arduino ir 5v modelis, tāpēc mums ir jāpārveido 3.3v signāls, kas nāk no G1, izmantojot līmeņa pārslēdzēju. Vajadzētu būt iespējai izveidot tiešu savienojumu ar 3.3v Arduino, bet es to nepārbaudīju.
Tam ir vairāki veidi, bet šajā piemērā mēs izmantosim 74LS04 mikroshēmu. Jūs varat meklēt vienu šeit, un tie, visticamāk, ir mazāki par 1 ASV dolāru. Mēs ar Timu paņēmām savējos no Hacker Dojo Mountain View, CA, taču tie ir ĻOTI izplatīti, un to vajadzētu būt daudz visur, kur mikroshēmas tiek pārdotas vai ziedotas. Augstā līmenī mēs vienkārši nosūtīsim TX signālu no HTS USB sadalīšanas plates uz 74LS04 mikroshēmas 1. tapu. Lai tas darbotos, mēs divas reizes izbraucam cauri mikroshēmai un izvedam 4. tapu uz RX tapu Freeduino SB (jūsu seriālā tapa var atšķirties, ja jums ir cita Arduino plāksne, bet visiem tas jāatbalsta). Izpildiet šīs darbības, lai pieslēgtu līmeņa pārslēdzēju un pievienotu HTC USB plati (vēl nepievienojiet to tālrunim un neatvienojiet Arduino barošanas avotu): 1. Ievietojiet 74LS04 mikroshēmu uz maizes dēļa. Pārliecinieties, ka mikroshēma šķērso centra pārrāvumu, lai tapas nebūtu īsas (sākumā es izdarīju mēmu gājienu) 2. Karavīrs divus vadus pie HTC USB plates, kā aprakstīts šajā pamācībā, bet mēs izmantosim tikai 7. tapas (Ground) un 8 (TX0), jo šai apmācībai mēs veicam tikai vienvirziena pārraidi. 3. Pievienojiet zemējuma (7. tapa) stieples otru galu pie maizes dēļa zemējuma (tam jābūt savienotam ar Arduino zemi). 4. Pievienojiet otru TX0 stieples galu (8. tapa) pie maizes dēļa. tas nonāk 74LS04 mikroshēmas 1. tapā. (meklējiet attēlu, lai iegūtu pilnu mikroshēmas diagrammu) 5. Izmantojiet vadu, lai savienotu mikroshēmas 2. un 3. tapu 6. Savienojiet mikroshēmas 4. tapu ar Arduino RX punktu (Freeduino SB un Arduino Duemilanove 0.) 7. Pievienojiet mikroshēmas tapu 7 (GND) pie maizes dēļa zemes (kas savienojas arī ar Arduino zemi). 8. Pievienojiet tapu 14 (VCC) maizes dēļa 5 V strāvai (kas saņem strāvu no Arduino) 5v izeja) Tagad jums vajadzētu būt gatavam pieslēgt HTC USB sadalīšanas paneli tālruņa apakšā un ieslēgt Arduino. Pārbaudiet, vai nav dzirksteļu un smaržu, un pieskarieties lietām, lai pārliecinātos, ka tās ir vēsas. Piezīme. Pašreizējais cellbot kods ieslēdz gaismas diode #13, kad robota servomotoriem vajadzētu darboties. Ja jums vēl nav robota, varat pārbaudīt, vai gaismas diode ieslēdzas un izslēdzas, lai pārliecinātos, ka tas darbojas.
7. solis: ielādējiet Cellbots programmu Arduino
Iegūstiet Arduino avota kodu no mūsu Google Code projekta vietnes. Arduino redaktorā atveriet programmu Cellbots.pde Arduino. Pēc tam piespiediet to pie Arduino plates.
Jūs varat pārbaudīt sarunu ar Arduino kodu, atverot sērijas monitoru Arduino redaktorā. Tas ir lielisks veids, kā pārbaudīt savu robotu vai ierīci, runājot tieši ar Arduino, pirms visu savienojat ar tālruni. Kods nosūta sērijas komandas atpakaļ seriālajam monitoram, lai apstiprinātu, ko tas dara, pat ja jums vēl nav izveidots robots. Piezīme. Jūs nevarat ielādēt programmas Arduino, kamēr vads ir pievienots RX sērijas ievades tapai. Tāpēc jūs, iespējams, vēlēsities to pārslēgt, bet es to vienkārši atvienoju, kad vajadzēja ielādēt jaunu programmu.
8. solis: palaidiet visu procesu
Jums vajadzētu būt iespējai savienot HTC USB plati ar tālruni, aktivizēt failu cellbot.py ASE un atvērt termināļa sesijas tālrunī. Ievadiet “H”, lai tālrunis sasveicinātos vai citas komandas no faila README.txt.
"Q" izies no Python skripta tālrunī un aizvērs termināļa kontaktligzdu. Šeit ir apkopojums par to, kā tas viss darbojas: 1. Python skripts atver ligzdu ienākošo telnet savienojumu pieņemšanai un atkārto komandas no seriālā porta 2 Mēs izveidojam savienojumu no sava datora ar tālruni, izmantojot telnet portā 9002, un nosūtām tam komandas, kuras mēs redzam 3. ekrānā. HTS USB plate ir savienota ar G1 USB portu un nosūta 3.3 V signālu 74LS04 1. kontaktā. signāls nāk no mikroshēmas 2. tapā, atgriežas 3. tapā un atkal iznāk 4. tapā pie 5 V 5. Mūsu Arduino pieņem seriālo signālu RX tapā 0 un apstrādā to, izmantojot programmu Cellbot.pde 6. Mēs var ierakstīt “q”, lai nogalinātu Python skriptu un slēgtu telnet savienojumu. Tagad, kad esat pabeidzis šo ļoti sarežģīto procesu, lai nosūtītu pamata komandas Arduino robotam, ir pienācis laiks uzlauzt to, lai tas būtu vēl satriecošāks! Mums vēl nav divvirzienu sērijveida darba, tāpēc Arduino nevar nosūtīt komandas atpakaļ tālrunī, bet mēs pie tā strādājam. Sekojiet jaunumiem, abonējot mūsu emuāru vietnē Cellbots.com. Par autoriem: Tims Hīts Vadošais pētnieks, kurš pirmo reizi apkopoja šo procesu Tech veikalā Menlo parkā, kur viņš ir dalībnieks. Raiens Hikmens Programmētājs, kurš strādāja pie Python un Arduino koda un izstrādāja šo pamācību.
Ieteicams:
Šķēršļu novēršana LEGO robotam: 8 soļi (ar attēliem)
Šķēršļu novēršana no LEGO robota: Mēs mīlam LEGO, un mēs arī mīlam Crazy Circuits, tāpēc mēs vēlējāmies apvienot abus vienkāršā un jautrā robotā, kas var izvairīties no ieskriešanās sienās un citos objektos. Mēs parādīsim, kā mēs izveidojām savu, un izklāstīsim nepieciešamos pamatus, lai jūs varētu izveidot savu
Cilvēks seko robotam, izmantojot Arduino Uno zem 20 $: 9 soļi
Cilvēka sekošanas robots, izmantojot Arduino Uno zem 20 $: tāpēc es izveidoju šo robotu apmēram pirms gada, un man patika, ka tas var sekot jums visur un visur. šī ir labākā suņa alternatīva. tas joprojām ir pie manis līdz šim. Man ir arī youtube kanāls, kurā varat redzēt tā tapšanas procesu
Jauniniet motora vairogu SMARS robotam Arduino - augšupielādējiet kodu, izmantojot Bluetooth: 20 soļi
Jauniniet motora vairogu SMARS robotam Arduino - augšupielādējiet kodu, izmantojot Bluetooth: ir vairākas motora vairoga iespējas, kuras varat izmantot kopā ar Arduino Uno šajā SMARS robotu projektā, ļoti bieži izmantojot Adafruit izgatavotu vai saderīgu (klons no Ķīnas) Motor Shield V1, bet šī vairoga trūkumam nav Blueto
Siemens SIMATIC IOT2000 sērija līdz Ubidots + Arduino IDE: 8 soļi
Siemens SIMATIC IOT2000 sērija līdz Ubidots + Arduino IDE: Arduino vienkāršība apvienojumā ar Siemens uzticamību un vēsturi padara SIMATIC IOT2000 sēriju par perfektu izvēli rūpnieciskiem vārtiem rūpnīcās un iestādēs, kas pēta savienojamības un modernizācijas iespējas. Jauni sensori
1A līdz 40A pašreizējais BOOST pārveidotājs līdz 1000 W līdzstrāvas motoram: 3 soļi
1A līdz 40A pašreizējais BOOST pārveidotājs līdz 1000 W līdzstrāvas motoram: Sveiki! Šajā videoklipā jūs uzzināsit, kā izveidot strāvas pastiprinātāja ķēdi jums ar lielu jaudu līdzstrāvas motoriem līdz 1000 W un 40 ampēriem ar tranzistoriem un centrālo krāna transformatoru. Lai gan, strāva pie izejas ir ļoti augsta, bet spriegums būs r