Orodha ya maudhui:

Dispenser ya Robotic ya Arduino: Hatua 8 (na Picha)
Dispenser ya Robotic ya Arduino: Hatua 8 (na Picha)

Video: Dispenser ya Robotic ya Arduino: Hatua 8 (na Picha)

Video: Dispenser ya Robotic ya Arduino: Hatua 8 (na Picha)
Video: How to make a 8 Channel Transmitter | 8 Channel Simple RF Remote Control For RC | Part 01 #jlcpcb 2024, Julai
Anonim
Image
Image

Kwa nini chombo chenye injini

Vichapishaji vya 3D vya filament - kawaida karibu vimara - vunjwa na kigoda wakati roll imewekwa karibu na printa, huru kuzunguka. Nimeona tofauti za maana katika tabia ya nyenzo kulingana na kiwango cha utumiaji, inajulikana kwa safu za filament 1Kg. Kijiko kipya (kamili) cha filament hutiririka karibu lakini nguvu inayotumiwa na extruder inapaswa kuwa muhimu: uzito ni angalau 1.5 Kg.

Pikipiki ya extruder (mara nyingi stepper ya Nema17) ina nguvu ya kutosha kufanya kazi lakini gia mbili za extruder inasukuma filamenti kwa upande wa moto wakati wa kufanya kazi hukusanya chembe za filament kutokana na nguvu zinazotumiwa; hii inahitaji matengenezo ya mara kwa mara ya extruder ili kuzuia kuziba kwa bomba. Chembe hizi hujitenga na kuchanganyika na filament safi wakati inalisha, inaongeza shida za pua na kuvaa tena kwa nozzle; hii hufanyika mara kwa mara na nozzles za kipenyo cha 0.3 mm.

Wakati roll ya filament inatumiwa nusu au zaidi spirals zake huwa ndogo na katika hali zingine za mazingira filament huwa ikivunjika mara kwa mara. Kazi za kuchapisha kwa muda mrefu haziaminiki sana na zinasumbua; Siwezi kumwacha printa akifanya kazi peke yake kwa usiku mzima bila kuidhibiti. Kwa hivyo kudhibiti malisho ya filament na takwimu za motor zinazotatua msururu wa maswala.

Kit hicho kinapatikana kwenye Tindie.com

Hatua ya 1: Maudhui ya Kit

Maudhui ya Kit
Maudhui ya Kit
Maudhui ya Kit
Maudhui ya Kit

Zana hiyo ni pamoja na sehemu na mashine zote zilizochapishwa za 3D kukusanyika kiboreshaji cha filament. Kuna badala ya sehemu mbili za hiari: motor na bodi ya mtawala wa motor.

Katika usanidi wangu nimetumia motor 12 V McLennan iliyopangwa brashi lakini motor yoyote yenye kipenyo cha 37 mm inaweza kutoshea vizuri ndani ya msaada wa motor.

Maonyesho bora hufikiwa na ngao ya TLE94112LE Arduino na Infineon (mapitio kamili hapa); bodi hii ya mtawala wa DC inaweza kusaidia hadi vifaa 6 tofauti vya kusambaza roboti kwa wakati mmoja.

Nimejaribu mfumo mzima kwa Arduino UNO R3 na bodi inayoendana na bodi ya XMUMX1100 ya Arduino na Infineon na mfumo huo uliitikia vizuri bodi zote mbili za watawala.

Matumizi ya ngao ya TLE94112LE inapendekezwa lakini sio muhimu. Mdhibiti wowote wa DC wa Arduino - pamoja na mradi wako mwenyewe! - inaweza kufanya kazi vizuri na zana hii

Kit imegawanywa katika seti mbili za vifaa kwani sehemu mbili zimejengwa kufanya kazi pamoja. Jukwaa la msingi, litasaidia safu ya filament inayozunguka kwenye fani nne za magurudumu za bure. Msingi umewekwa kwa sensa ya uzito ili kudhibiti utaratibu unaozunguka unaosababisha uanzishaji wake na pia kufuatilia hali ya filament: uzito, mita na asilimia. Habari nyingi pamoja na seti kamili ya amri zinapatikana kutoka Arduino kupitia terminal ya serial.

Zana ambazo unahitaji

Ili kumaliza mkutano unahitaji gundi kali ya plastiki kwa sehemu zingine, bisibisi na seti ya screws za Allen.

Hatua ya 2: Mradi na Ubunifu

Mradi na Ubunifu
Mradi na Ubunifu
Mradi na Ubunifu
Mradi na Ubunifu
Mradi na Ubunifu
Mradi na Ubunifu

Mradi huu ni mageuzi ya tatu ya safu ya kiboreshaji cha filamenti ya 3D printa Wakati mwingine uliopita niliunda msingi unaozunguka ili kuongeza mtiririko wa filament wakati wa kuvutwa na extruder ya printa ya 3D.

Mfano wa pili ulijumuisha sensorer ya uzani kwa wakati halisi ufuatiliaji matumizi ya filament na bodi ya Arduino. Mradi huu wa mwisho ni pamoja na kutolewa kiotomatiki kwa filament kulingana na mahitaji ya kazi ya printa ya 3D. Inategemea tofauti ya uzito wa kawaida wakati extruder inapoanza kuvuta filament. Tukio hili huchochea mdhibiti mdogo kupitia sensa ya uzani na roll ya filament yenye motor huanza kutoa inchi kadhaa za nyenzo kisha hupungua na kusimama.

Vipengele vimesafirishwa kwa muundo wa STL na 3D iliyochapishwa, kisha iliyosafishwa na kukusanywa pamoja. Nimeunda msaada wa kawaida ili kupatanisha sehemu ya mwendo na msingi. Reli ndefu ya Aluminium pia ilitumika kusaidia Arduino na ngao ya gari kufanya zana nzima iwe sawa na rahisi kusonga.

Kuunda muundo nilifuata dhana kadhaa:

  • Kufanya injini ya otomatiki iwe rahisi na rahisi kuzaliana
  • Punguza iwezekanavyo idadi ya vitu visivyo vya 3D vinavyoweza kuchapishwa ili kuifanya
  • Punguza kadiri iwezekanavyo mkazo unaotumika kwa extruder wakati wa kuchapa
  • Tumia gharama nafuu na rahisi kupanga bodi ndogo ya mtawala
  • Tumia sensa ya kupakia uzito kudhibiti matumizi ya filament na kulisha filament Simamia kelele ya mazingira inayoingiliana na hatua za uzani wa filament

Hii ndio matokeo niliyofikia.

Hatua ya 3: Kukusanya Msingi

Kukusanya Msingi
Kukusanya Msingi
Kukusanya Msingi
Kukusanya Msingi
Kukusanya Msingi
Kukusanya Msingi

Hatua ya kwanza ni kukusanya msingi na sensor ya uzito.

  1. Ingiza bomba ndogo ya mhimili wa kuzaa kwenye shimo la kuzaa
  2. Weka diski mbili za kutenganisha pande za kuzaa
  3. Tambulisha vifaa ndani ya usaidizi wa kuzaa wa "U" uliolenga mashimo
  4. ingiza screw ya Allen kwa upande mmoja na washer na nati kwa upande mwingine kufunga nati bila juhudi nyingi

Unapaswa kurudia operesheni kwenye vifaa vyote vinne vya kubeba. Kisha jaribu mkutano: fani inapaswa kuzunguka kwa uhuru.

Sasa rekebisha na screws za Allen vifaa vinne vya kubeba kwenye msingi wa juu na mashimo manne ya kanuni. Pangilia vifaa vya kubeba ili viwe sawa. Dhibiti umbali kulingana na upana wa safu zako za filament.

Hatua inayofuata ni kukusanya bar ya sensa ya uzito inayoshikilia msingi wa chini na juu pamoja. Sensor ya uzani ina screw mbili tofauti za Allen pande zote mbili na unapaswa kuielekeza ili lebo ya uzito wa juu isome wakati msingi umewekwa vizuri. Msingi wa chini una mashimo mawili ya ziada ya kurekebisha sensor ya uzito A / D amplifier. Amplifier kulingana na HX711 IC itapewa nguvu na kushikamana na bodi ya Arduino kupitia waya nne kama inavyoonyeshwa kwenye karatasi ya data ya sensorer iliyounganishwa.

Hatua ya mwisho ni kukusanya msingi kamili juu ya sensor ya uzito tayari iliyowekwa kwenye sehemu ya chini.

Sehemu ya kwanza imewekwa!

Hatua ya 4: Kukusanya Sehemu za Injini za Mwendo wa Spool

Kukusanya Sehemu za Injini za Mwendo wa Spool
Kukusanya Sehemu za Injini za Mwendo wa Spool
Kukusanya Sehemu za Injini za Mwendo wa Spool
Kukusanya Sehemu za Injini za Mwendo wa Spool
Kukusanya Sehemu za Injini za Mwendo wa Spool
Kukusanya Sehemu za Injini za Mwendo wa Spool

Utaratibu rahisi wa kukusanya injini ya mwendo wa kijiko ni kukusanyika kando na vitu vinne muhimu zaidi kisha ukamilishe jengo la mwisho:

Malengo ya DC katika sanduku la usafirishaji wa magari

Magari ya DC yanapaswa kuwekwa kwenye sehemu ya kati ya msaada wa muundo; kabla ya kukanyaga motor unapaswa kuamua ni upande gani unaopendelea zaidi mahali pa kuweka gia upande ili upangilie kwa usahihi mikono miwili inayoshikilia motor na gia kubwa inayoendeshwa.

Gia kubwa inayoendeshwa

Gia kubwa inapaswa kuunganishwa na kizuizi kilichopunguzwa na visu nne za Allen. Gia hii itazuiwa kwenye mhimili unaozunguka na karanga; sehemu ya msongamano itashikilia kijiko cha filament ambacho kimefungwa kwa upande mwingine na karanga sawa za kufuli ndani ya kizuizi kingine kilichopunguzwa. Suluhisho hili sio tu kwamba linashikilia utaratibu wa kusonga lakini huelekeza uzito wote kwa msingi na ni uzito wa mfumo.

Mmiliki wa lock ya spool

Huu ndio kizuizi kilichopunguzwa ambacho pamoja na gia inayoendeshwa sawa ya kufuli itashikilia utaratibu wa mwendo kwa kijiko cha filament. Kama jambo la busara ni safu ya filament inayokamilisha jengo wakati msaada wa mikono miwili ni huru kuhamia upande mwingine.

Kama inavyoonyeshwa kwenye picha mmiliki wa lock ya spool imejengwa katika sehemu mbili. Kwanza ingiza karanga ya M4 katika sehemu kubwa ya kizuizi kisha gundi sehemu ya pili (kifuniko) kuweka vizuizi pamoja. Nati hiyo inabaki kufungwa gerezani ndani ya kishikilia kufuli ambacho kitasisitizwa kwa mhimili ulioendeshwa kwa nyuzi.

Sanduku la fani

Sanduku la kuzaa lina kazi mbili: toa msaada mzuri kwa gia za usafirishaji na mwendo laini na kimya. Kukusanya sanduku la kuzaa fuata hatua hizi rahisi:

  1. Punja nati ya kwanza ya M4 kwa moja ya ncha mbili za mhimili ulioshikiliwa wa mmiliki wa kijiko
  2. Ingiza kuzaa kwanza
  3. Ingiza kitenganishi
  4. Ingiza kuzaa kwa pili
  5. Punja karanga ya pili na uifunge kwa wastani. Separator ya ndani itapinga nguvu ya kutosha kuweka vitu mahali kwa matumizi ya muda mrefu.
  6. Ingiza fani zilizokusanyika kwenye sanduku la kuzaa. Inapaswa kufanywa kwa kulazimishwa kutoa matokeo bora kwa hivyo usipanue sana ndani ya sanduku wakati wa kusafisha sehemu za plastiki.

Tuko tayari kwa mkutano wa vifaa vya mwisho!

Hatua ya 5: Kukamilisha Mkutano wa Injini ya Mwendo

Kukamilisha Mkutano wa Injini ya Mwendo
Kukamilisha Mkutano wa Injini ya Mwendo
Kukamilisha Mkutano wa Injini ya Mwendo
Kukamilisha Mkutano wa Injini ya Mwendo
Kukamilisha Mkutano wa Injini ya Mwendo
Kukamilisha Mkutano wa Injini ya Mwendo

Tunakaribia kumaliza mkutano wa muundo kisha tunaweza kusonga ili kujaribu mwendo. Sasa unahitaji tena gundi kadhaa. Sanduku la kubeba - lililokusanywa katika hatua ya awali - linapaswa kuingizwa kwenye shimo la mmiliki wa sanduku la msaada wa injini mbili za mkono na ikiwezekana kushikamana kabla ya kufunika kifuniko cha sanduku.

Onyo: usifunike kifuniko cha sanduku, bonyeza tu. Jalada ni muhimu kwa ulinzi wa vumbi na inapaswa kutolewa kwa operesheni yoyote ya matengenezo ya baadaye.

Usanidi huu ukikamilika kabla ya kuongeza gia inayoendeshwa (kubwa zaidi) ongeza pete ndogo ya kutenganisha: inaweka gia kubwa iliyokaa na gia ya magari ikifanya kama washer kurekebisha mkutano unaosonga.

Kisha ingiza gia ya dereva (ndogo) kwenye shimoni la gari. Kumbuka kuwa kuna upande wa gorofa kwenye gari na kwenye shimo kuu la gia ili kuweka gia inayozunguka inayoendeshwa na motor DC.

Hatua ya mwisho, ingiza gia kubwa inayoendeshwa kama inavyoonyeshwa kwenye picha na kuifunga kwa mhimili uliofungwa na karanga mbili za M4.

Jengo la ufundi mitambo limekamilika!

Hatua ya 6: Bonasi: Jinsi nilivyochagua Msaada wa Kusimamia Kit

Bonus: Jinsi nilivyochagua Msaada wa Kusimamia Kit
Bonus: Jinsi nilivyochagua Msaada wa Kusimamia Kit
Bonus: Jinsi nilivyochagua Msaada wa Kusimamia Kit
Bonus: Jinsi nilivyochagua Msaada wa Kusimamia Kit
Bonus: Jinsi nilivyochagua Msaada wa Kusimamia Kit
Bonus: Jinsi nilivyochagua Msaada wa Kusimamia Kit

Kuweka kit mahali nilifanya muundo rahisi sana kulingana na zilizopo mbili za mraba za Aluminium kusaidia msingi na muundo wa mwendo. Msingi umewekwa na visu nne kwa reli mbili (kama urefu wa sentimita 25) na kwa vifaa kadhaa vidogo vilivyochapishwa vya 3D nina rekebisha injini ya mwendo iliyo huru kuhamishwa ili kurahisisha uingizaji na uondoaji wa safu ya filament.

Mtu yeyote anaweza kuchagua suluhisho lake mwenyewe kulingana na jinsi benchi lake la kazi limepangwa.

Hatua ya 7: Wiring na Kuunganisha kwa Arduino

Image
Image
Wiring na Kuunganisha kwa Arduino
Wiring na Kuunganisha kwa Arduino

Kama nilivyoelezea katika hatua ya yaliyomo kwenye Kit, nimetumia ngao ya gari ya Infineon TLE94112LE DC kwa Arduino na kujaribu injini kwenye Arduino UNO R3 na Infineon XMC110 Boot Kit.

Ikiwa utadhibiti motor (unahitaji huduma za PWM) na bodi ya mtawala ya DC ya chaguo lako, badilisha maagizo kwa maelezo ya kiufundi ya ngao yako.

Ujumbe kwenye TLE04112LE Arduino Shield

Moja ya mipaka ambayo nimepata na ngao zingine za kudhibiti motor kwa Arduino ni kwamba hutumia huduma za mtawala sawa wa micro (yaani PWM na pini za GPIO); hii inamaanisha kuwa bodi yako inajitolea kwa majukumu haya wakati rasilimali chache tu (MPU na GPIO) zinapatikana kwa matumizi mengine.

Kuwa na uwezekano wa kuweka mikono kwenye TLE94122LE Arduino ngao ya upimaji wa barabara, faida iliyo wazi zaidi ya IC ambayo bodi hiyo inategemea ni ukamilifu wake tu. Bodi ya Arduino inawasiliana na ngao kupitia itifaki ya SPI kwa kutumia pini mbili tu. Kila amri unayotuma kwenye ngao inasindika kwa uhuru na TLE94112LE IC bila kutumia rasilimali za MPU. Kipengele kingine cha kushangaza cha bodi ya Infineon ni uwezekano wa kudhibiti hadi motors sita zilizopigwa na njia tatu za programu za PWM. Hii inamaanisha kuwa Arduino anaweza kusanikisha injini moja au zaidi, kuzianzisha na kuendelea kufanya kazi zingine. Ngao hii ilifunua kamili kusaidia hadi safu sita tofauti za filament wakati huo huo mwendo ni moja tu ya majukumu yanayosimamiwa na MPU. Kuzingatia uwezekano wa kusimamia spools sita tofauti za filament na Arduino + moja ya ngao ndogo ya athari ya gharama ya mtawala. kwa kila mtawala wa filamenti chini ya 5 Euro.

Sensor ya uzito

Baada ya kufanya majaribio kadhaa nikaona inawezekana kudhibiti mfumo mzima - ufuatiliaji na kulisha kiatomati - na sensa moja; kiini cha mzigo (sensa ya uzito) ina uwezo wa kupima kwa nguvu tofauti za uzani wa filamenti kutoa habari zote tunazohitaji.

Nilitumia kiini cha mzigo wa bei rahisi katika anuwai ya 0-5 Kg pamoja na bodi ndogo kulingana na HX711 AD Amplifier, IC maalum kusimamia sensorer za seli za mzigo. Hakukuwa na shida za kuingiliana kwani inapatikana maktaba ya Arduino inayofanya kazi vizuri.

Hatua tatu za kuweka vifaa

  1. Ingiza ngao juu ya bodi ya Arduino au Infineon XMC110 Boot Kit
  2. Unganisha waya za magari kwenye viunganishi vya ngao ya Out1 na Out2
  3. Unganisha nguvu na ishara kutoka kwa kipaza sauti cha uzito wa HX711 AD kwenye pini za Arduino. Katika kesi hii nimetumia pini 2 na 3 lakini pini zote za bure ni sawa.

Onyo: ins ins 8 na 10 zimehifadhiwa na ngao ya TLE94113LE kwa unganisho la SPI

Ni hayo tu! Uko tayari kusanidi programu? Endelea.

Hatua ya 8: Seti ya Amri ya Programu na Udhibiti

Seti ya Programu na Udhibiti
Seti ya Programu na Udhibiti
Seti ya Programu na Udhibiti
Seti ya Programu na Udhibiti
Seti ya Programu na Udhibiti
Seti ya Programu na Udhibiti
Seti ya Programu na Udhibiti
Seti ya Programu na Udhibiti

Programu kamili iliyo na kumbukumbu inaweza kupakuliwa kutoka kwa ghala la GitHub 3DPrinterFilamentDispenserAndMonitor

hapa tunazingatia sehemu zenye maana zaidi na amri za kudhibiti.

Kuna sababu iliyowekwa na idadi ya pini zinazopatikana kwenye Arduino UNO niliamua kudhibiti mfumo kupitia terminal ya USB; Kwa kuwa kila kitengo cha motor kinategemea sensa ya uzani, kudhibiti wasambazaji sita wa filament inahitaji kusoma data kutoka kwa sensorer sita za uzito. Kila seli ya mzigo "hutumia" pini mbili, pini 0 na 1 zimehifadhiwa (Tx / Rx) kwa serial na pini 8 na 10 zimehifadhiwa kwa kituo cha SPI kinachounganisha ngao ya TLE94112LE.

Hali ya mfumo

Programu ya kudhibiti inafanya kazi kupitia majimbo manne tofauti, yaliyofafanuliwa katika filament.h:

#fafanua SYS_READY "Tayari" // Mfumo uko tayari

#fafanua SYS_RUN "Running" // Filament inayotumika #fafanua SYS_LOAD "Mzigo" // Pakia kubeba #fafanua SYS_STARTED "Imeanza" // Maombi yameanza // Nambari za hali #fafanua STAT_NONE 0 #fafanua STAT_READY 1 #fafanua STAT_LOAD 2 #fafanua STAT_RUN 3

Hali: Imeanza

Hali hii hutokea baada ya kuweka upya vifaa au wakati mfumo umewashwa. Nguvu ya kuwasha (na usanidi () simu wakati mchoro unapoanza) huanzisha maadili ya ndani ya msingi na inapaswa kuanza bila uzito wa ziada kwenye jukwaa kama sehemu ya mlolongo wa uanzishaji ni kupatikana kwa tare kamili kufikia uzito wa sifuri wa mwili.

Hali: Tayari

Hali tayari hufanyika baada ya kuweka laini (iliyotumwa kutoka kwa terminal ya serial). Ni sawa na resect ya mwili lakini hakuna tare iliyohesabiwa; amri ya kuweka upya inaweza kuzinduliwa pia wakati mfumo unaendesha.

Hali: Mzigo

Hali ya mzigo hutokea wakati amri ya mzigo imetumwa na wastaafu. Hii inamaanisha kuwa roll ya filament imepakiwa na tare yenye nguvu imehesabiwa. Uzito halisi wa filament hupatikana na aina ya usanidi wa roll ukiondoa uzito wa kitengo cha gari na roll tupu.

Hali: Mbio

Hali hii inawezesha hesabu ya uzito wa moja kwa moja na kiboreshaji cha filamenti kiatomati.

Ujumbe wa kituo

Toleo la sasa la programu hiyo linarudisha ujumbe unaoweza kusomwa kwa binadamu kwa wastaafu kulingana na amri. Ujumbe wa kamba umeelezewa katika faili mbili za kichwa: Command.h (amri zinazohusiana na amri na majibu) na filament.h (kamba zinazotumiwa na mshauri kuunda ujumbe wa kiwanja).

Amri

Faili mbili tofauti zinahusika katika usimamizi wa amri: amri.h pamoja na maagizo yote na vigezo vinavyohusiana na filament.h pamoja na kila wakati na ufafanuzi unaotumiwa na mfumo wa uzani na mtunzi.

Wakati hesabu za ndani zinafanywa kiatomati na programu nimetekeleza safu ya maagizo ya kuweka tabia ya mfumo na kudhibiti mikono kadhaa kwa mikono.

Maneno muhimu ya amri ni nyeti ya kesi na inapaswa kutumwa tu kutoka kwa terminal. Ikiwa amri haifai kwa hali ya sasa haijatambuliwa ujumbe wa amri mbaya unarudishwa mwingine amri hiyo imetekelezwa.

Amri za hali

Badilisha hali ya sasa ya mfumo na tabia imebadilishwa pia

Amri za filamenti

Kutumia amri tofauti inawezekana kusanidi sifa za filament na roll kulingana na uzani wa kawaida na ukubwa unaopatikana kwenye soko

Amri za vitengo

Hizi ni amri kadhaa za kuweka taswira ya vitengo vya kipimo kwa gramu au sentimita. Kwa kweli inawezekana kuondoa amri hizi na kila wakati kuwakilisha data katika vitengo vyote viwili.

Amri za habari

Onyesha vikundi vya habari kulingana na hali ya mfumo

Amri za magari

Dhibiti motor kwa kulisha filament au kuvuta.

Amri zote za gari hufuata njia ya kuongeza kasi / kupunguza kasi. Amri hizo mbili zinalisha na kuvuta hufanya mlolongo mfupi kama inavyofafanuliwa katika motor.h na FEED_EXTRUDER_DELAY ya mara kwa mara wakati amri za feedc na pullc zinaendesha kwa muda usiojulikana mpaka amri ya kusimama haikupokelewa.

Amri za hali ya kukimbia

Hali ya kukimbia inakubali njia mbili; mode mtu kusoma tu mara kwa mara uzito na motor huenda mpaka amri ya kudhibiti motor haijatumwa. Hali ya kiotomatiki badala yake hufanya amri mbili za kulisha wakati kiboreshaji kinahitaji filament zaidi.

Kanuni hiyo inategemea usomaji wa uzito, uliyomo katika mazingira haya. Tunatarajia kuwa matumizi ya filament ni polepole, printa za 3D ni karibu polepole na oscillations ya kawaida ya uzito inategemea kutetemeka kwa mazingira (bora ikiwa hautaweka vitu vyote kwenye printa ya 3D)

Wakati extruder inavuta filament badala yake tofauti ya uzito huongezeka sana (50 g au zaidi) kwa muda mfupi sana, kawaida kati ya masomo mawili au matatu. Habari hii huchujwa na programu ambayo "hukata" filament hiyo mpya inahitajika. Ili kuzuia usomaji mbaya makosa tofauti wakati motor inaendesha hupuuzwa kabisa.

Mantiki ya maombi

Mantiki ya maombi inasambazwa katika.ino kuu (mchoro wa Arduino) pamoja na kazi tatu: usanidi (), kitanzi () na parseCommand (commandString)

Mchoro hutumia madarasa mawili tofauti: FilamentWeight class kusimamia mahesabu yote ya filament na kusoma kwa sensorer kupitia HX711 IC na darasa la MotorControl ikiunganisha njia za kiwango cha chini cha ngao ya TLE94112LE Arduino.

kuanzisha ()

Ilizinduliwa mara moja wakati wa kuwasha au baada ya usanidi wa vifaa kuanzisha visa vya madarasa, weka vifaa na mawasiliano ya wastaafu.

kitanzi ()

Kazi kuu ya kitanzi inasimamia hali tatu tofauti.

Ingawa kuna madarasa mawili ya sensa ya uzani na motors ngumu sana, kuna faida kwamba mchoro unaosababishwa ni rahisi kuelewa na kusimamia.

  1. Angalia (katika hali ya kiotomatiki) ikiwa kiboreshaji kinahitaji filament zaidi
  2. Ikiwa motor inaendesha ukaguzi wa hitilafu za vifaa (imerejeshwa na TLE94112LE)
  3. Ikiwa kuna data ya serial inapatikana soma amri

parseCommand (commandString)

Ufuatiliaji wa kazi ya kuangalia kwa masharti yanayotokana na serial na wakati amri inatambuliwa inachakatwa mara moja.

Kila amri hufanya kama mashine ya serikali inayoathiri parameter kadhaa ya mfumo; kufuata mantiki hii amri zote zimepunguzwa kwa vitendo vitatu vya mfuatano:

  1. Tuma agizo kwa FilamentWeight class (amri za uzani) au kwa darasa la MotorControl (motor amri)
  2. Hufanya hesabu kusasisha maadili au kusasisha moja ya vigezo vya ndani
  3. Onyesha kwenye terminal na pato la habari wakati utekelezaji umekamilika

Sakinisha maktaba ya HX711 Arduino, pakua programu kutoka GitHub na uipakie kwenye bodi yako ya Arduino kisha ufurahie!

Ilipendekeza: