Sisällysluettelo:

Walking Strandbeest, Java/Python ja sovellusohjattu: 4 vaihetta (kuvilla)
Walking Strandbeest, Java/Python ja sovellusohjattu: 4 vaihetta (kuvilla)

Video: Walking Strandbeest, Java/Python ja sovellusohjattu: 4 vaihetta (kuvilla)

Video: Walking Strandbeest, Java/Python ja sovellusohjattu: 4 vaihetta (kuvilla)
Video: Вычислительное мышление – информатика для руководителей бизнеса 2016 2024, Marraskuu
Anonim

Seuraa lisää tekijältä:

Yksinkertaisen harmonisen liikkeen kokeellinen tutkimus
Yksinkertaisen harmonisen liikkeen kokeellinen tutkimus
Kokeellinen tutkimus yksinkertaisesta harmonisesta liikkeestä
Kokeellinen tutkimus yksinkertaisesta harmonisesta liikkeestä

Tämä Strandbeest -sarja on Theo Jansenin keksimään Strandbeest -pohjainen DIY -teos. Hämmästynyt nero mekaanisesta suunnittelusta, haluan varustaa sen täydellisellä ohjattavuudella ja seuraavaksi tietokoneen älykkyydellä. Tässä ohjeessa käsittelemme ensimmäistä osaa, ohjattavuutta. Käsittelemme myös luottokorttitietokoneen mekaanista rakennetta, jotta voimme pelata tietokoneen näkemisellä ja tekoälyllä. Rakennustöiden yksinkertaistamiseksi en käyttänyt arduinoa tai vastaavaa ohjelmoitavaa tietokonetta, vaan rakennan bluetooth -laitteisto -ohjaimen. Tätä ohjainta, joka toimii päätelaitteena vuorovaikutuksessa robottilaitteiston kanssa, ohjaa tehokkaampi järjestelmä, kuten Android -puhelinsovellus tai RaspberryPi, jne. Ohjaus voi olla joko matkapuhelimen käyttöliittymän ohjaus tai ohjelmoitava ohjaus python- tai Java -kielellä. Yksi SDK jokaiselle ohjelmointikielelle on avoimen lähdekoodin tarjoama osoite

Koska mini-Strandbeest -käyttöopas selittää melko selkeästi rakennusvaiheet, keskitymme tässä ohjeessa tietoihin, joita käyttöoppaassa ei yleensä käsitellä, sekä sähköisiin/elektronisiin osiin.

Jos tarvitsemme intuitiivisempaa ideaa tämän sarjan mekaanisesta kokoonpanosta, saatavilla on muutamia hyviä videoita kokoonpanoteemasta, kuten

Tarvikkeet

Tämän Strandbeestin mekaanisen osan rakentaminen ja sähköliitäntöjen tekeminen kestää alle tunnin, jos 3D -tulostuksen odotusaikaa ei lasketa. Se vaatii seuraavat osat:

(1) 1x standardi Strandbeest-sarja (https://webshop.strandbeest.com/ordis-parvus)

(2) 2x tasavirtamoottori vaihteistolla (https://www.amazon.com/Greartisan-50RPM-Torque-Re…)

(3) 1x Bluetooth -ohjain (https://ebay.us/Ex61kC?cmpnId=5338273189)

(4) 1x LiPo -akku (3,7 V, valitsemasi kapasiteetti mAh)

(5) 12x M2x5.6mm puuruuvit

(6) Halkaisijaltaan 2 mm hiili- tai bambutanko

3D -tulostus seuraavat osat:

(1) 1x robotiikan päärunko

(3D -tulostuksen suunnittelutiedoston lataaminen vain Bluetooth -ohjaimella)

(3D -tulostuksen suunnittelutiedosto, jossa on lisäksi OrangePi Nano -lataus)

(2) 2x vetoakselin laippa (3D -tulostussuunnittelutiedoston lataus)

(3) 2x virtalähdejärjestelmä (3D -tulostussuunnitelmatiedoston lataus)

Muut:

Android -matkapuhelin. Siirry Googlen Playstoreen, etsi M2ROBOTSista ja asenna ohjaussovellus.

Jos Google Playstoreen on vaikea päästä, käy vaihtoehtoisella sovelluksen latausmenetelmällä henkilökohtaisella kotisivullani

Vaihe 1: Osien organisointi

Osien organisaatio
Osien organisaatio
Osien organisaatio
Osien organisaatio
Osien organisaatio
Osien organisaatio
Osien organisaatio
Osien organisaatio

Tässä vaiheessa järjestämme kaikki koottavat osat. Kuva 1. näyttää kaikki valmiit muoviosat, joita käytämme Strandbeest-mallin rakentamiseen. Ne valmistetaan ruiskupuristuksella, joka on erittäin tehokas verrattuna muihin koneistusmenetelmiin, kuten 3D -tulostamiseen tai jyrsintään. Siksi haluamme hyödyntää parhaiten massatuotantotuotteita ja räätälöidä vain vähiten osia.

Kuten kuvassa 2 esitetään, jokaisessa muovilevykappaleessa on merkitty aakkoset, yksittäisessä osassa ei ole merkintää. Kun ne on purettu, merkintöjä ei enää ole. Tämän ongelman ratkaisemiseksi voimme laittaa samantyyppisiä osia eri laatikoihin tai yksinkertaisesti merkitä useita alueita paperille ja laittaa yhdenlaisia osia yhdelle alueelle, katso kuva 3.

Jos haluat leikata muoviosan pois isommalta muovilevyltä, sakset ja veitsi eivät ehkä ole yhtä tehokkaita ja turvallisia kuin kuvien 4 ja 5 pihdit.

Kaikki täällä on muovia, paitsi että varpaiden materiaali on kumia, katso kuva 6. Voimme leikata valmiiden leikkausten mukaan. Pehmeä kumimateriaali tarjoaa paremman tarttumiskyvyn. Tämä pätee erityisesti rinteeseen kiipeämiseen. Myöhemmissä aiheissa voimme testata sen kykyä kiivetä eri kaltevuuskulmissa kumivarpaiden kanssa ja ilman. Kun liukastumista ei tapahdu, sitä kutsutaan staattiseksi kitkaksi. Kun se menettää otteen, siitä tulee kineettinen kitka. Kitkakerroin riippuu käytetyistä materiaaleista, siksi meillä on kumivarpaat. Kuinka suunnitella kokeilu, nostaa käsi ja puhua.

Viimeinen kuva sisältää "ECU", "Voimansiirto" ja tämän mallin Strandbeest alustan.

Vaihe 2: Huomionarvoisia kohtia mekaanisen kokoonpanon aikana

Huomionarvoisia kohtia mekaanisen kokoonpanon aikana
Huomionarvoisia kohtia mekaanisen kokoonpanon aikana
Huomionarvoisia kohtia mekaanisen kokoonpanon aikana
Huomionarvoisia kohtia mekaanisen kokoonpanon aikana
Huomionarvoisia kohtia mekaanisen kokoonpanon aikana
Huomionarvoisia kohtia mekaanisen kokoonpanon aikana

Mini-Strandbeestillä on melko hyvä käyttöohje. Ohjeen noudattaminen ja kokoonpanon suorittaminen pitäisi olla helppoa. Ohitan tämän sisällön ja korostan muutamia mielenkiintoisia kohtia, jotka ansaitsevat huomiomme.

Kuviossa 1 kumin varpaita pitävän uran toinen puoli on 90 asteen kulma, kun taas toisella puolella on 45 asteen kaltevuus, jota kutsutaan virallisesti viisteeksi. Tällainen kaltevuus ohjaa kumivarren sopimaan muovijalkaan. Yritä asentaa varpaat sivulta viisteellä, katso kuva 2, ja kokeile sitten toista puolta. Ero on hyvin havaittavissa. Kuvan 3 oikea puoli on Stranbeestin kampi. Se on hyvin samanlainen kuin moottorin, auton moottorin, moottoripyörän moottorin kampi, kaikilla on sama rakenne. Strandbeestissä, kun kampi kääntyy, se ajaa jalat liikkumaan. Moottorille se on männän liike, joka ajaa kampia pyörimään. Tällainen 120 asteen erotus ympyrässä johtaa myös kolmivaiheiseen moottoriin tai generaattoriin, sähköteho on 120 asteen päässä toisistaan, kuten kuviossa 4 esitetään. Kun vasemman ja oikean puolen rungon mekaaniset osat on koottu, aloitamme nyt Strandbeestiin lisättävien osien käsittelyn, katso kuva 5. Kuva 6 on vaihe, jossa käytämme 3-D-painettua moottoripuristinta moottorin kiinnittämiseen 3-D-painettuun runkoon. Tässä vaiheessa temppu on, että mitään ruuveja ei saa kiristää ennen kuin moottorin asentoa säädetään niin, että rungon sivupinta on sama kuin moottorin pinta. Kun olemme tyytyväisiä kohdistukseen, voimme kiristää kaikki ruuvit. Siirry kuvaan 7, työskentelemme laippakytkimen asennuksen kanssa kytkemällä moottorin lähtö kampaan. Moottorin puoli on vaikeampi asentaa kuin kampiakselin liitäntä, katso kuva 8. Siksi liitämme ensin moottorin sivulaipan. Kun molempien moottoreiden laipankytkin on asennettu, kuten kuvassa 9 esitetään, käytämme kahta 2 mm: n halkaisijaltaan hiilitankoa rungon ja vasen/oikea kävelyrakenteen yhdistämiseen. Se tapahtuu FIg.10: ssä. Käytämme näiden elementtien yhdistämiseen yhteensä 3 kappaletta hiilitankoja. Mutta tässä vaiheessa yhdistämme vain kaksi näistä, koska meidän on käännettävä kampia ja sovitettava laipan ja kammen välinen liitäntä. Jos paikalla on 3 kappaletta hiilitankoja, suhteellisen asennon säätäminen ja yhdistäminen on vaikeampaa. Lopuksi meillä on viimeinen koottu mekaaninen järjestelmä kuvassa 11. Seuraava askel on elektroniikka.

Vaihe 3: Sähköliitäntä

Sähköliitäntä
Sähköliitäntä
Sähköliitäntä
Sähköliitäntä
Sähköliitäntä
Sähköliitäntä

Kaikki elektroniset järjestelmät tarvitsevat virtalähdettä. Voimme laittaa 1-kennoisen pariston jonnekin sopivaan paikkaan, esimerkiksi piirilevyn alle kuvassa 1. Virtalähteen napaisuus on niin kriittinen, että se ansaitsee omat luvut keskusteltavaksi. Kuva 2 korostaa akun liitännän. Ohjainkortissa napaisuus on merkitty "+" ja "GND", katso kuva 3. Kun akusta loppuu mehu, akku ladataan USB -kaapelilla, katso kuva 4. "Lataus käynnissä" -merkkivalo sammuu automaattisesti, kun akku täyttyy uudelleen. Viimeinen vaihe on liittää moottorin ulostulot ohjauskortin moottorin liittimiin. On kolme moottoriliitintä, jotka on merkitty numerolla 16 kuvassa 3. Kuvassa 5 vasen moottori on kytketty PWM12 -merkittyyn vasempaan liittimeen ja oikea moottori keskimmäiseen liittimeen. Tällä hetkellä säiliön (tasauspyörästöajoneuvon) kääntäminen vasemmalle on koodattu PWM12-moottoriporttiin liitetyn moottorin syöttötehon vähenemisenä. Siksi PWM12 -porttiin kytketyn moottorin pitäisi ajaa vasenta jalkaa. Muun myöhemmin kaikki sekoitustoiminnot käyttäjän määritettäviksi. Kuten vaihtamalla moottorin liittimen valintaa tai kääntämällä moottorin liittimen suuntaa, voimme korjata ongelman, kuten Strandbeest liikkuu taaksepäin, kun sitä kehotetaan siirtymään eteenpäin, kääntämällä väärää suuntaa, muista, että tasavirtamoottori muuttaa pyörimissuuntaansa, jos tulojohto on kytketty ohjausvirtaan päinvastaisessa järjestyksessä.

Vaihe 4: Sovellusasetukset ja käyttö

Sovellusasetukset ja käyttö
Sovellusasetukset ja käyttö
Sovellusasetukset ja käyttö
Sovellusasetukset ja käyttö
Sovellusasetukset ja käyttö
Sovellusasetukset ja käyttö
Sovellusasetukset ja käyttö
Sovellusasetukset ja käyttö

Lataamme ensin Android -sovelluksen Google Play Kaupasta, katso kuva 1. Tällä sovelluksella on paljon muita toimintoja, joita emme voi käsitellä tässä ohjeessa, keskitymme vain Strandbeestin suoraan liittyviin aiheisiin.

Kytke laitteiston bluetooth -ohjain päälle, se näkyy etsintälaitteiden luettelossa. Pitkä napsautus tuo meidät langattomaan lataustoimintoon, joka "ohjataan" myöhemmin. Ennen kuin napsautamme ja aloitamme ohjauksen, teemme ensin joitakin asetuksia napsauttamalla oikeassa yläkulmassa olevaa "Asetukset" -painiketta. Kuvassa 2 se on piilotettu… -kuvakkeen alle. Kuva 3 esittää useita asetusluokkia. Nämä sovelluksessa määritetyt asetukset otetaan käyttöön kolmella tavalla: 1) jotkin asetukset vaikuttavat vain sovelluksen toimintaan, kuten aritmeettiset tiedot, joiden avulla kunkin moottorin tehonsäätökomento saadaan ohjaus- ja kaasukomennostasi. He asuvat sovelluksessa. Joissakin myöhemmissä ohjeissa näytämme, kuinka korvaamme ne Python/Java -ohjelmillamme. 2) laitteistoon lähetetään joitakin asetuksia ilmassa olevan ohjausprotokollan osana, kuten siirtyminen suoran ohjauksen (servo kääntyy täsmälleen käskettyyn kulmaan) ja lankaohjauksen välillä (sisäänrakennettu itsenäinen ohjaustoimintomoduuli käyttää servoa) kanava käyttäjän komennon ja nykyisen asenteen mukaan) 3) jokin asetus lähetetään laitteiston ohjaimen haihtumattomaan muistiin. Siksi laitteisto noudattaa näitä asetuksia aina, kun se käynnistetään ilman määritystä. Esimerkki on laitteen Bluetooth -lähetysnimi. Tällaiset asetukset tarvitsevat voimajakson, jotta ne tulevat voimaan. Ensimmäinen luokka, johon sukellamme, on "Yleiset asetukset" kuvassa 4. Kuvan 5 "Sovellusten ohjaustoiminto" määrittelee tämän sovelluksen roolin, laitelaitteen ohjaimen suoran Bluetooth -yhteyden kautta; silta intranetin/internetin kautta läsnäolon hallintaa varten; ja jne. Seuraavaksi kuvassa 6 oleva sivu “HW type” kertoo sovellukselle, että työskentelet differentiaaliajoneuvolla, joten”tank” -tila on valittava. Meillä on yhteensä 6 PWM -lähtöä käytettävissä. Strandbeestia varten meidän on määritettävä kanava 1-4 kuvan 7 mukaisesti. Jokaista PWM -kanavaa käytetään yhdessä seuraavista tiloista: 1) servo -normaali: RC -servo, jota ohjataan 1-2 ms: n PWM -signaalilla 2) servon peruutus: ohjain kääntää käyttäjän ohjauksen lähdölleen 3) DC -moottorin käyttöjakso: a DC moottori tai jokin muu sähkölaite, voidaan käyttää käyttöjaksotilassa, 0% on pois päältä, 100% on aina päällä. 4) Tasavirtamoottorin käyttökierron kääntö: jälleen ohjain kääntää käyttäjän ohjauksen lähtöönsä Koska käytämme tasavirtamoottoria ja huolehdimme moottorin pyörimissuunnasta laitteiston johdotusjärjestyksen mukaan, valitsemme "DC -moottorin käyttöjakso" kanavalle 1 - 4, katso kuva 8. Meidän on myös yhdistettävä 2 PWM-kanavaa 1 H-siltaan kaksisuuntaisen ohjauksen mahdollistamiseksi. Tämä vaihe on esitetty kuvassa 9. "2 PWM-kanavaa 1 H-siltaan" -tilassa kanavia 1, 3 ja 5 käytetään ohjaamaan molempia kanavia. Se tuo mukanaan tarpeen muuttaa kaasuvipu, ohjaussauvan ylös- ja alasohjaus oletuskanavalta 2 kanavalle 3. Se saavutetaan kuvion 10 asetuksissa. Kuten kuviossa 11 esitetään, jokainen kanava on konfiguroitu ottamaan yksi mielivaltainen tulolähde.

Bingo, nyt olemme suorittaneet vaaditun vähimmäismäärityksen, ja voimme palata sivulle, jossa näkyy näkyvä Bluetooth -laite, ja saada se yhdistettyä. Kokeile kuvassa 12 ohjaussauvan pelaamista, niin voimme pitää hauskaa tämän Strandbeestin kanssa. Yritä kiivetä jollekin rinteelle, muista materiaalityyppien välisen kitkan analyysi ja lue lennonjohtajan arvioitu asenne, joka näkyy rivillä, jossa on merkintä "RPY (deg)". arvioitu gyroskoopilla ja kiihtyvyysmittarilla; viimeinen merkintä on kallistuskompensoitu kompassilähtö.

Tuleva työ: Seuraavissa ohjeissa käsitellään vähitellen sen ohjelmointirajapintaa, valitsemme suosikkikielesi Java tai Python vuorovaikutuksessa Strandbeestin kanssa, emmekä enää lue strandbeest -tilaa matkapuhelimen näytöltä. Aloitamme myös ohjelmoinnin RaspberryPi -tyyppisessä linux -tietokoneessa edistyneemmille ohjelmointiasioille, katso viimeinen kuva. Tarkista mekaaniset 3D -tulostusosat https://xiapeiqing.github.io/doc/kits/strandbeest/roboticKits_strandbeest/ ja SDK ja esimerkkikoodi https://github.com/xiapeiqing/m2robots.git, jos haluat aloittaa heti. Kerro haluamasi ohjelmointikieli, jos et ole Java tai Python, voin lisätä uuden SDK -version.

Pidä hauskaa hakkeroinnin kanssa ja pysy kuulolla seuraavista ohjeista.

Suositeltava: