Orodha ya maudhui:

[WIP] Kuunda Drawbot Inayodhibitiwa na Myo Armband: Hatua 11
[WIP] Kuunda Drawbot Inayodhibitiwa na Myo Armband: Hatua 11

Video: [WIP] Kuunda Drawbot Inayodhibitiwa na Myo Armband: Hatua 11

Video: [WIP] Kuunda Drawbot Inayodhibitiwa na Myo Armband: Hatua 11
Video: Telefonizga kimdur #ulanganligini aniqlash va ulanganlarni qanday uchurish /КАК ОТКЛЮЧИТЬ СЛЕЖКА 2024, Julai
Anonim
[WIP] Kuunda Drawbot Inayodhibitiwa na Myo Armband
[WIP] Kuunda Drawbot Inayodhibitiwa na Myo Armband

Halo wote!

Miezi michache iliyopita, tuliamua kujaribu kushughulikia wazo la kujenga drawbot ya fremu wazi ambayo ilitumia tu bendi ya Myo kuidhibiti. Tulipoanza mradi huo, tulijua kwamba itahitaji kugawanywa katika awamu kadhaa tofauti. Awamu yetu kuu ya kwanza ilikuwa kujaribu na kufunika vichwa vyetu kuzunguka muundo wa sura wazi kwa bot yetu ya kuteka. Hii ni usanidi usiokuwa wa kiwango, na tulitaka kuona ni faida gani za muundo huu.

Pili, tulijua kuwa kujenga mfano huu kutathibitisha kuwa muhimu kwetu tu. Ubunifu na mpango wetu ulikuwa kuhamisha sura yetu ya mwisho kuwa chuma, na kutumia arduino, kupokea msimamo wetu kutoka kwa kasi na gyroscope iliyojengwa kwenye bendi ya Myo. Habari hiyo ingetumwa kwa motors, na ingeiga mwendo wa mtumiaji. Tulijua kuwa hii itafanya awamu yetu ya pili kuibuka katika sehemu kuu tatu:

  1. programu kutoka Myo hadi motors, kupitia Arduino
  2. muundo wa umeme kutafsiri data yetu kuwa mwendo
  3. muundo wa mitambo ili kuunda sura inayofaa ambayo itasaidia mwendo wetu

Kila mshiriki kwenye timu yetu alihisi raha zaidi na sehemu ya kipekee ya mchakato wetu wa kubuni, kwa hivyo tuliamua kuvunja kazi yetu kati ya kila mtu. Tuliweka pia blogi wakati wa mchakato wetu wote wa kubuni kufuatilia siku zetu kwa kufikiria kwa siku, tofauti na sura ya ulimwengu zaidi.

Hatua ya 1: Tulichopanga Kufanya

Image
Image

Lengo letu lilikuwa kuchanganya bidhaa hizi mbili kwa njia ambayo hatujaona ama kutumika hapo awali. Tuliamua kufanya upeanaji wa moja kwa moja kati ya kitambaa chetu cha Myo na toleo letu la muundo ulioongozwa na AxiDraw wa Mbaya wa Wanasayansi Wazimu.

Hatua ya 2: Mfano Orodha ya Viunga

2 2 x 4 bodi za kuni 1 Ukanda au upimaji wa mnyororo> = 65”4 Misumari ya kuni 3 Gia zenye meno ambayo yanafaa ukanda au mnyororo 4 3 x 8 sahani zilizobomolewa 30 ⅜" Spacers za mpira 8 "kipenyo cha washer 1 1" kipenyo cha mbao dozi 1 'ndefu 8 visu za Vex 1 "8" V Vex screws 8 2 "Vex screws 8"

Hatua ya 3: [Mfano] Kutengeneza mbao kwa Silaha zetu na Mambo ya Ndani ya Kuendesha

[Mfano] Kutengeneza Woods Silaha zetu na Mambo ya Ndani ya Kuendesha
[Mfano] Kutengeneza Woods Silaha zetu na Mambo ya Ndani ya Kuendesha

Tulichukua 2x4 mbili na kuzikata kwa urefu sawa (33 ¼ )

Kutumia meza tuliona tulifanya notch kando kando ya sehemu nyembamba ya bodi - "kina na" pana katikati

Kata kitambaa ndani ya vipande 4 2”na chimba shimo katikati ya doa karibu ¼” kwa kipenyo ukitumia mashine ya kuchimba visima

Hatua ya 4: [Mfano] Kufanya Usafirishaji Wetu

[Mfano] Kufanya Usafirishaji Wetu
[Mfano] Kufanya Usafirishaji Wetu
[Mfano] Kufanya Usafirishaji Wetu
[Mfano] Kufanya Usafirishaji Wetu
[Mfano] Kufanya Usafirishaji Wetu
[Mfano] Kufanya Usafirishaji Wetu

Kwa kweli tungetumia vipande viwili vya 7x7 vya chuma kilichotiwa mafuta ya mseto lakini yote tuliyokuwa nayo ni vipande vya 2x7 kwa hivyo tuliunganisha pamoja katika usanidi wa "X"

Bunda 5 la spacers za mpira na secure salama pembe za sahani za kusumbua kwa kila mmoja

Hakikisha polepole dowels za mbao kama inavyoonyeshwa kwenye kielelezo 1 ili wazunguke kwa uhuru na karibu 2 ya nafasi kati yao tumia picha kuona ni wapi gia zinapaswa kuwekwa mahali hapa tulitumia washers lakini baadaye tukagundua kuwa gia ndogo ndogo za plastiki hufanya kazi vizuri.

Kutumia screw “bisibisi za msukosuko, ¼” spacers za mpira na vipenyo vya kipenyo 1 huweka washer kwenye nafasi iliyoinuliwa kama inavyoonyeshwa kwenye kielelezo cha 1 (tulitumia gia za plastiki za kijani kwa sababu hatukuweza kupata washers sahihi) hakikisha waosha wana uwezo kuzunguka kwa urahisi na kuingia kwenye noti za bodi.

Hatua ya 5: [Mfano] Kuiweka Pamoja

[Mfano] Kuiweka Yote Pamoja
[Mfano] Kuiweka Yote Pamoja
[Mfano] Kuiweka Yote Pamoja
[Mfano] Kuiweka Yote Pamoja
[Mfano] Kuiweka Yote Pamoja
[Mfano] Kuiweka Yote Pamoja
[Mfano] Kuiweka Yote Pamoja
[Mfano] Kuiweka Yote Pamoja

Weka ubao juu ya uso na uteleze ndani katikati ili waosha kushikilia behewa juu ya ubao na kila upande wa bodi gundika gia chini ili izunguke kwa uhuru. Piga gia hadi mwisho mmoja wa bodi ya pili uhakikishe kuwa imejikita na kuitelezesha kwenye gari kwa kila bodi ya kwanza.

Sasa ukanda lazima ufunguliwe kupitia mfumo kama inavyoonyeshwa, angalia kwa umakini jinsi densi ziko nje ya ukanda na jinsi hakuna kitu katikati ya chasisi ambacho kinaweza kuzuia ukanda wakati unasonga.

Sasa ukanda unahitaji kufungwa kwenye ubao ambao hauna gia. Tulitumia msumari wa ziada na tie ya zip kufunga yetu. Lakini njia iliyotumiwa haijalishi mradi ukanda umetiwa nanga kwenye eneo hilo

Hatua ya 6: [Mfano] Imemalizika na Kusonga

Image
Image

Hiyo inapaswa kuwa hivyo, vuta ukanda kwa mchanganyiko tofauti na uone athari tofauti ambazo zina mkono!

Hatua ya 7: Kutafsiri mfano wetu katika muundo wetu uliokamilika

Kutafsiri mfano wetu katika muundo wetu uliokamilika
Kutafsiri mfano wetu katika muundo wetu uliokamilika
Kutafsiri mfano wetu katika muundo wetu uliokamilika
Kutafsiri mfano wetu katika muundo wetu uliokamilika

Mara tu tulipokamilisha mfano wetu, tulifurahi. Hakuna hata mmoja wetu alikuwa na hakika jinsi mfumo ulifanya kazi kabla ya kusanyiko. Lakini, mara tu sehemu zetu zilipoungana, tuligundua haraka kile tunachopenda na jinsi tutakavyoboresha wakati wa kuunda muundo wa mwisho. Malalamiko yetu makuu na mfumo wa kutatua ni:

  1. Kiwango

    1. Mfano wetu ulikuwa mkubwa na usiokuwa na nguvu, ambayo ilifanya iwe rahisi kukimbilia pembeni mwa mikono yetu
    2. Inasimamia ilikuwa kubwa zaidi kuliko lazima, na ilikuwa na nafasi nyingi za kupoteza
    3. Ukanda wetu (kukanyaga tangi ya msukosuko) ulikuwa mkubwa zaidi kuliko lazima, ambayo ilianzisha nafasi ya ziada kati ya mikono
  2. Msuguano

    1. Kukanyaga kwetu hakukupita juu ya rollers za mbao kwa urahisi katika sehemu zote
    2. Plastiki juu ya kuni ilifanya gari lisitake kusonga katika visa vingi
  3. Kuendesha magari

    Tulihitaji kuufanya mfumo uwe na nguvu

Kwa kuzingatia haya mambo, tulichora mipango yetu ya muundo wa mwisho. Tulitaka drawbot kudhibitiwa na Myo kupitia arduino, na tulitaka kutengeneza fremu ya alumini na ndogo.

Ili kufanya hivyo, tulichukua asilimia ya mfano wetu wa asili, na kuanza kufanya kazi kutoka kwa saizi hiyo. Kwa kutumia karatasi ya chuma ambayo ingetengenezwa kuwa na njia pana za kutosha kwa fani yenye ngao kupita, tutakuwa na muundo mwepesi lakini thabiti ambao ungekuwa na uvumilivu wa matumizi ya juu.

Mfano wetu pia ulituruhusu, kwa dakika chache tu, kuamua jinsi mzunguko wa magari uliathiri kichwa cha kichwa chetu. Hii inatuongoza kuelewa kwamba muundo wetu wa udhibiti utakuwa rahisi zaidi kuliko vile tulivyotarajia. Baada ya kukaguliwa kwa karibu, tuligundua kuwa mwendo wa gari ni nyongeza! Hii inamaanisha kuwa kila gari ina athari ya kujitegemea inayotarajiwa juu ya mwendo wetu, lakini tunapochanganya pamoja, huanza kughairi.

Kwa mfano, ikiwa inazingatiwa kama ndege ya kuratibu, motor iliyowekwa kwenye upeo hasi wa x daima itavutia kuvuta droo yetu kwenye safu ya pili na ya nne. Kinyume chake, gari iliyowekwa kwenye ncha nzuri ya x daima itatoa droo kwenye roboduara ya kwanza na ya tatu. Ikiwa tutachanganya mwendo wa motors zetu, itafuta sehemu za kuongoza mzozo huo, na itazidisha sehemu zinazokubali.

Hatua ya 8: Usimbuaji

Wakati nilifanya kazi kwa usawa katika C miaka michache iliyopita, sikuwa na uzoefu na lua au C ++, na hii ilimaanisha nilihitaji kutumia muda unaostahili kutazama nyaraka. Nilijua kuwa kazi ya jumla ambayo ningekuwa nikijaribu kuimaliza ni kupata nafasi ya mtumiaji kwa vipindi vya wakati na kisha kuipeleka kwa motors. Niliamua kujivunjia kazi hiyo ili kuchimba vizuri sehemu ambazo ningehitaji.

1. Pata Takwimu kutoka kwa Myo (lua)

Nilijua kwamba nilihitaji kutafuta njia ya kukusanya habari kutoka kwa Myo. Hii ilikuwa sehemu ya kwanza ya changamoto ambayo nilitaka kuikaribia. Ili kufanya hivyo, nilitaka mtumiaji apime ukubwa wa turubai kabla ya kuanza kuteka. Hii itaniruhusu kuwa na mpaka wa kufanya kazi kutoka. Ningeweza basi kurekebisha programu kati ya watumiaji tofauti kwa kuchukua tu asilimia ya turubai ya juu kama data zangu zinaonyesha kupita. Niliamua kuwa na hafla iliyoandikwa ambayo itafanya ukaguzi wa kupataOrientation kila nusu ya sekunde, kwani ingeruhusu ukaguzi usifanye kuruka kwa mwitu ambayo utahitaji kudhani kutoka (kwa mfano, ikiwa mtumiaji alikuwa akirudi nyuma na nje).

Hii ilifanya kizuizi cha kwanza cha barabara nilipiga. Niligundua kiwango cha juu sana cha lua, na kwamba hainiruhusu kusubiri kabla ya kuendelea na hati. Njia pekee ya kufanya kitendo hiki ilikuwa ni kusitisha CPU (ambayo inaweza kuisimamisha ulimwenguni, hata kushikilia saa ya mfumo), au kutumia amri maalum za OS. Katika nambari yangu ya mfano, niliacha ukaguzi wa asili wa OS ambao nilifanya (nikatoa maoni). Hii ilikuwa baada ya kufanya utafiti mwingi katika nyaraka za lua, na ilifanywa kwa kuangalia muundo wa njia ya mfumo. Hii ndio wakati niliamua kuhitaji kuangalia nyaraka za miradi iliyokuwa imechapishwa hapo awali. Niligundua mara moja ni muda gani nilipoteza, na mara moja nikasababisha mabadiliko ya jukwaa. Nayo, niliweza kutekeleza maagizo maalum ya OS ya kusubiri karibu mara moja, tofauti na siku ambazo ilinichukua kunasa suluhisho langu la hapo awali.

Ilikuwa karibu wakati huu wa kubuni ambayo kazi kwenye kipengele cha umeme ilianza, na nikasimamisha kazi kwenye kipengele hiki cha nambari. Kusudi likiwa kujifunza jinsi motors zetu zilivyoingiliana na arduino.

2. Kufanya Kazi Karibu na Arduino (C ++)

Kwa kuwa kazi na ubao wetu wa mkate ilizidi kuwa ngumu zaidi, nilijifunza kuwa arduino ilikuwa haina uwezo wa kusoma mengi. Hii ilikuwa funguo kubwa katika muundo wa nambari yangu ya asili, na baada ya kusoma zaidi juu ya mapungufu yaliyowasilishwa na mtawala wetu, niligundua kuwa ningehitaji kupanga jinsi arduino itabadilika kati ya hizi mbili. Huu ukawa lengo la juhudi zangu kadri tarehe ya mwisho ilivyokaribia. Ilinibidi nifute sehemu kubwa za hati yangu ya asili kwani zilibuniwa kuandika data kwa faili sanjari na mtawala wa motor kusoma faili. Hii ilikuwa kuruhusu kazi ya foleni kuhakikisha kuwa hata ikiwa mtumiaji alikuwa mbele ya droo yetu, haitaharibu mradi huo.

Niliamua kuwa kazi ya foleni iokolewe, ikiwa haitekelezwi kwa njia sawa na hapo awali. Ili kufanya hivyo, niliunda vector ya safu. Hii iliniruhusu sio kuweka tu roho ya muundo wangu wa zamani kuwa sawa, pia ilimaanisha sikuwa na lazima ya kufuatilia mahali pangu kwenye faili kwa kusoma au kuandika. Badala yake, sasa nilichohitaji kufanya ni kuongeza tu thamani mpya kwenye vector yangu ikiwa mtumiaji alikuwa akisogea (upimaji wa awali ulikuwa chini ya 1% ya tofauti ya saizi ya turubai katika x na y kutoka nafasi ya mwisho iliyosababishwa haikusababisha kurekodi data). Ningeweza kuchukua thamani ya zamani kabisa kwenye vector yangu na kwa moja nikaanguka, kuipeleka kwa udhibiti wa magari, kuiandikia faili letu, na kisha kuiondoa kwenye vector yangu. Hii ilisafisha wasiwasi wangu mwingi juu ya kuwa na mtiririko wa mara kwa mara wa IO.

Hatua ya 9: Umeme

Image
Image
Umeme
Umeme

Wakati nilikuwa nimechukua darasa la elektroniki hapo zamani, na nilifanya kazi kwa kiwango kizuri na arduinos. Sijawahi hua ndani ya kufanya arduino ipokee habari kutoka kwa chanzo cha nje (myo), nina uzoefu tu wa kutoa habari kupitia arduino. Walakini, nilichukua waya za waya kwenye kiunzi chetu, na kufanya kazi kwa nambari ili waweze kufanya kazi na nambari ya myo.

Vifaa ambavyo nilitumia:

2 x motors za stepper

1 x Bodi ya mkate

1 x Arduino (Uno)

2 x Dereva IC L293DE

Waya 40 za Jumper

2 x Mashabiki

1. Kuunganisha Stepper Motors na Shabiki kwenye Breadboard

Kufuatia mchoro wa mzunguko, tunaweza kupiga waya moja ya stepper kwa dereva kwenye ubao wa mkate. Halafu, kufuatia mchoro ule ule, tumia hiyo kwa dereva na motor ya pili, hata hivyo, waya za kuruka italazimika kuingizwa kwenye seti tofauti za pini kwenye arduino (kwani motor ya kwanza inachukua nafasi ya wengine 4).

Onyo / Kidokezo:

Madereva ni ndogo sana na pini ziko karibu sana. Itakuwa busara kuweka nafasi kwa madereva mawili ili waya zisichanganyike.

Ifuatayo ni kuweka waya kwenye waya. Hii ni rahisi sana, mashabiki ambao nilikuwa nao walikuwa mashabiki wa msingi wa wasindikaji wa kompyuta, ambao wana chanya na msingi. Chomeka hizo mbili kwenye pini zao +/- kwenye ubao wa mkate, na piga kila moja kuelekea kila dereva. (Tuligundua kuwa kwa sababu motors za stepper wanapokea habari nyingi na maagizo kwa muda mrefu, madereva huwa na joto kali na kunusa. Kuongeza shabiki ili kuituliza ilisuluhisha suala hili).

2. Msimbo wa Arduino

Hii ndio sehemu rahisi!

Fungua Arduino IDE nenda kwenye kichupo cha "Faili" kisha uangalie kichupo cha "mfano" ambacho kitashuka chini zaidi na kukuonyesha kichupo cha "stepper" Kisha unataka kufungua "Stepper_OneStepAtATime"

Hii itapakia nambari ya mfano ambayo iko karibu kuziba na kucheza kwa wiring ya arduino / motor. Tutalazimika kufanya marekebisho madogo kwa sababu tutatumia motors mbili, ambazo nitaonyesha hapa chini. Unaweza pia kufanya marekebisho madogo kulingana na pini ambazo umeamua kutumia, kwani IDE ya Arduino inashuka hadi pini 8-11.

Nambari ambayo nimetumia kufanya motors mbili ziende katika "usawazishaji" iko hapa chini:

// # ni pamoja na

hatua za intPerRevolution = 200;

Stepper myStepper1 (hatuaPerRevolution, 9, 10, 11, 12);

Stepper myStepper2 (hatuaPerRevolution, 4, 5, 6, 7);

hatua ya hesabu = 0;

kuanzisha batili () {// kuanzisha bandari ya serial: Serial.begin (9600); }

kitanzi batili () {

hatua yangu (1);

Serial.print ("hatua:");

Serial.println (stepCount);

stepCount ++;

kuchelewesha (0.5);

hatua yangu (1); kuchelewesha (0.5); }

3. Matatizo yanayowezekana

Maswala ambayo nilikimbia wakati wa mchakato huu haikuwa kutumia mfano sahihi wa nambari, nikitumia waya mbaya wa kuruka, nikitumia dereva mbaya IC.

Hakikisha kwamba dereva wako ambaye unatumia ana uwezo wa kudhibiti motor

Angalia nambari ya serial na angalia maelezo yake

Nilipata shida ya kuwa na waya iliyokufa ya kuruka, ambayo ilisababisha motors zangu kuzunguka kwa kushangaza

Nilibidi kutumia multimeter kuangalia kila waya

Na kila mara angalia nambari yako kwa makosa madogo kama kukosa mwisho ";" amri

Hatua ya 10: Mitambo

Mitambo
Mitambo
Mitambo
Mitambo
Mitambo
Mitambo
Mitambo
Mitambo

1. Nyenzo

Kwa mfano kamili wa uzalishaji wa mikono inashauriwa kuwa imetengenezwa kwa nyenzo zenye nguvu lakini nyepesi, tulihisi kuwa aluminium ilikuwa sawa kabisa.

Tulitumia karatasi za aluminium za kupima 032 zilizokatwa hadi 9.125 "x 17.5" na tukafuata muundo kutoka kwa mchoro ulioonyeshwa katika hatua ya awali.

2. Uzushi

Kutumia hemmer (mashine ya samawati) tuliongeza hems ambazo zinakabiliwa na mwelekeo tofauti ili kwamba wakati kipande kimevunjwa na kukunjwa, hems mbili zingeingiliana na kutengeneza kipande kimoja kamili.

Kwa bends kubwa tulitumia tennismith, kwa sababu ya usahihi wa hali ya juu.

Sasa kwa bend ndogo, utataka kutumia mashine yenye mguu mdogo, hapa ndipo mashine kama roto-die inakuja. Kwa sababu ya mguu wake mdogo, inaruhusu mapumziko madogo kufanywa, kwa bahati mbaya, roto-die tuliyokuwa nayo bado ilikuwa kubwa sana kwa reli yetu na ilikuwa imeharibika.

** Vinginevyo, ikiwa huna ufikiaji wa vifaa sahihi au zana, basi mbadala inaweza kufanywa.

Kwa upande wetu, tulikata mikono yetu kutoka kwa reli za jua za aluminium kwa kutumia kipunguzi cha plasma na kusaga ncha laini kisha tukazirudisha nyuma kutengeneza mfumo wa reli wa pande mbili. Kwa kweli, tunataka kuunganishia reli pamoja, hata hivyo, bila kupata kituo cha kulehemu badala yake tulifunga reli na kuchimba kisha tukaunganisha pamoja. Lakini ikiwa njia hii imechukuliwa, basi utunzaji maalum unapaswa kufanywa ili kutumia nati na washer ili kuhakikisha kuwa kipande hicho kinabadilika kidogo iwezekanavyo.

3. Ukanda

Kwa mikanda tulitumia mikanda ya zamani ya kuchapisha ya 3D ambayo tuliweza kuokoa.

Mikanda haikuwa ndefu vya kutosha mwanzoni kwa hivyo kutumia neli ya kupungua kwa joto tuliunganisha vipande viwili kutengeneza moja ambayo itakuwa ndefu vya kutosha.

Gia za kijani na dowels za mbao zilibadilishwa na fani za diski na vistari vipana vya ziada vilivyotumika kuzuia ukanda usiondoke mahali pake.

4. Usafirishaji

Na mwishowe shehena ilifanywa kwa karatasi 5 "x 5" ya 032 aluminium, na mashimo ya kuchimba mashimo yalibonyeza ambapo screws na washers zinazofanana zinastahili kwenda. Umbali utatofautiana kulingana na upana wa reli yako na ni kiasi gani cha kibali kwenye washers zako.

Hatua ya 11: Tafakari

Kwa bahati mbaya, kila upande wa mradi wetu uliingia kwenye kizuizi kikubwa cha wakati, na hatukuweza kukamilisha muundo wetu kwa tarehe tuliyoweka. Kila mshiriki wa timu yetu aliishia kushirikiana katika kila hali nyingine ya muundo wetu kwa kiwango fulani, na kusababisha kuzama kwa wakati wa ujira. Hii, pamoja na kutaka kubuni bidhaa na rasilimali chache za nje iwezekanavyo (kama sisi sote tulitaka kuunda sehemu zetu kutoka mwanzoni), husababisha idadi kubwa ya magurudumu yaliyotengenezwa tena.

Kila mtu aliyefanya kazi kwenye mradi alijifunza zaidi juu ya mambo mengine ya mradi. Kufanya programu kufanya hatua maalum ni jambo moja, kisha kufanya programu kufanya kazi pamoja na vifaa ni jambo jingine. Napenda kusema kuwa ni muhimu kwamba mtu yeyote anayefanya kazi kwenye kipengele cha usimbuaji wa mradi huu, ajue kama msimbo wa mradi wetu.

Kwa ujumla, hatukuweza kufikia kile tulichotaka. Walakini, ninahisi kuwa tulikuwa kwenye njia sahihi na sote tuligundua na kujifunza dhana mpya ambazo tutaweza kutumia kwenye miradi ya baadaye.

Ilipendekeza: