Hoe beheer u 'n lineêre aandrywer met 'n Arduino?
Gepos deur Firgelli Automations Team aan Mei 29, 2020
Wat is 'n Arduino?
Arduino is 'n open source elektroniese prototiperingsplatform wat gebaseer is op buigsame, maklik om te gebruik hardeware en sagteware. Dit is bedoel vir selfdoenprojekte, kunstenaars, ontwerpers, stokperdjies en almal wat belangstel om interaktiewe projekte te skep. Arduinos is mikrobeheerborde wat alles bevat wat u benodig om maklik met die mikrobeheerder te koppel. 'N Mikrobeheerder is soos 'n mini-rekenaar vir ingeboude stelsels en die tipe mikrobeheerder wat ingesluit word, hang af van die Arduino-styl. Arduino wissel van die groter Arduino Mega na die middelgrootte Arduino Uno na die kleiner Arduino Pro Mini. Die verskillende grootte borde bied 'n toenemende aantal I / O-penne en addisionele funksies, en die gewildste van hierdie borde is die Uno. Arduino bied ook 'n open source wat IDE kan gebruik om u mikrobeheerders te programmeer. Die Arduino IDE gebruik 'n maklik verstaanbare programmeertaal en as gevolg van die gewildheid van Arduino, kan u baie nuttige voorbeelde aanlyn vind om u te help kodeer vir u spesifieke toepassing. As dit u eerste Arduino-projek is, is die Arduino-stel bied u alles wat u nodig het, van springkabels tot sensors tot aflosse, en sluit Arduino Uno in om aan die gang te kom.
Waarom 'n Arduino gebruik om 'n lineêre aandrywer te beheer?
Een van die grootste voordele van die gebruik van 'n Arduino, of enige mikrobeheerder vir die saak, om 'n lineêre aandrywer is dat u groter beheer oor u lineêre aandrywer het. Met mikrobeheerders kan u meer ingewikkelde insette van sensors of ander toestelle gebruik om u lineêre aandrywer te beheer. Dit laat u toe om intydse berekeninge te vorm om u aandrywer in die ideale posisie te plaas of om timers te implementeer om die posisieveranderings van u aandrywers te outomatiseer. Mikrobeheerders kan ook terugvoering van u aandrywers ontvang om meer presiese posisie- en spoedbeheer te bied, asook om meer as een aandrywer tegelyk te beheer. Eenvoudig gestel, mikrobeheerders bied u groter beheer en buigsaamheid, en met die maklike ontwerp en groot gewildheid van Arduino is die vlak van addisionele kompleksiteit minimaal.
Beheer van 'n Lineêre Aktuator met 'n Arduino
U sal nie u lineêre aandrywer direk met 'n Arduino kan koppel soos u dit met 'n skakelaar kan doen nie, aangesien die werkspanning van die Arduino slegs 5V is en baie klein stroomgrense het. U moet 'n tussentydse komponent gebruik om die lineêre aandrywer te beheer wat met relais of 'n motorbestuurder gedoen kan word.
Soos bespreek hier, aflosse is elektromagnetiese skakelaars wat beheer word deur 'n spoel aan en uit te skakel om die skakelaar oop en toe te maak. Die Arduino kan gebruik word om die aflos te beheer deur die spoel aan te skakel en uit te skakel met een I / O-pen. Afhangend van die tipe relais wat u gebruik, sal dit verander hoeveel beheer u oor u lineêre aandrywer het, maar die koppeling met die Arduino is redelik reguit, laat die spoel net beweeg met 'n I / O-pen. U moet seker maak dat die nominale spanning van die spoel rondom die werkspanning van die Arduino (5V) is, of dat die Arduino die spoel nie genoeg sal kan bekragtig om die skakelaar te laat sluit nie.
Hierbo is 'n voorbeeld van 'n Arduino-koppeling met 'n twee SPDT-afloskonfigurasie. In hierdie konfigurasie, wat hier beskryf word, word die twee relais gebruik om die polariteit van die spanning na die lineêre aandrywer om te skakel, sowel as om die krag na die aandrywer te ontkoppel. In die kode wat hieronder getoon word, sal die Arduino die boonste aflos van krag laat werk om die aandrywer vir 2 sekondes uit te brei deur pen 7 op laag te stel, en dan die aandrywer vir 2 sekondes te stop deur die boonste aflos van die stroom af te sit deur beide penne op hoog te stel. Om die aandrywer in te trek, sal die Arduino die tweede aflos vir 2 sekondes bekragtig deur pen 8 op laag te stel en dan die aandrywer vir 2 sekondes te stop deur al die penne weer op hoog te stel. Aangesien hierdie kode in die lusgedeelte van die program is, sal die Arduino voortgaan om hierdie kode telkens te herhaal. Dit is duidelik dat u 'n meer elegante koderingsoplossing vir u toepassing kan implementeer, maar as u nog meer beheer wil hê, wil u 'n motorbestuurder gebruik.
A motorbestuurder is 'n geïntegreerde stroombaanontwerp spesifiek om GS-motors te bestuur, wat GS-lineêre aandrywers aandryf. Motorbestuurders gebruik gewoonlik 'n H-brug om beide rigting- en spoedbeheer moontlik te maak. Hoe u u Arduino presies aan u motorbestuurder moet koppel, hang af van die presiese motorbestuurder, maar benodig ten minste twee I / O-penne, en een daarvan is 'n PWM-sein. PWM- of pulsbreedte-modulasie is 'n metode om 'n sein tussen aan- en afwaardes te varieer om effektief 'n laer as bedryfspanning te lewer. Die motorbestuurder kan dan die sein gebruik om die spoed waarmee die motor loop aan te pas.
Hierbo is 'n voorbeeld van ons Hoëstroom GS-motoraandrywing gekoppel aan 'n Arduino. Vir hierdie motorbestuurder moet u twee PWM-seine stuur, een om die aandrywer uit te brei en die ander om terug te trek. Die PWM word as bygetekende byte gegee, wat beteken dat dit wissel van 0, geen spanning, tot 255, maksimum spanning (5V), wat eweredig sal wees aan die snelheid van die motor. Aangesien PWM nie 'n binêre waarde is nie, moet ons die PWM-penne van die Arduino gebruik en die analoog-skryffunksie gebruik, soos gesien in die onderstaande voorbeeld. PWM-penne word op die Arduino aangedui met 'n ~ of eenvoudig as PWM-penne aangedui.
In die kode-voorbeeld hierbo sal die Arduino die aandrywer op volle spoed vir twee sekondes verleng deur die motorbestuurder die volle 5V uit pen 10 na die LPWM-pen op die motorbestuurder te stuur. Dan stop die Arduino die aandrywer deur geen sein na enige ingangspen van die motorbestuurder te stuur nie. Die Arduino trek dan die aandrywer met halwe spoed terug deur die motorbestuurder se sein te stuur wat half aan en half af is van pen 11 na RPWM-pen op die motorbestuurder. Stop dan die aandrywer weer. Aangesien hierdie kode in die lusgedeelte van die program is, sal die Arduino voortgaan om hierdie kode herhaaldelik te herhaal. U kan weer 'n meer elegante koderingsoplossing implementeer wat by u toepassing pas, veral as u insette byvoeg om u aandrywer te beheer.
Toevoeging van insette
Sodra u u aandrywer met 'n Arduino kan beheer, kan u die insette van die Arduino implementeer vir groter outomatisering en beheer. Hierdie insette kan wees skakelaars, 'n wye verskeidenheid sensors, of selfs terugvoer van die aandrywer self. Aangesien daar 'n wye verskeidenheid opsies vir insette is, sal die implementering daarvan wissel, maar daar is 'n paar algemene punte wat u moet ken. As die invoer 'n binêre invoer lewer, soos 'n skakelaar, wil u gebruik maak van die digitale penne op die Arduino, wat op die bord of in die datablad gemerk sal word, en die DigitalRead () -funksie in die Arduino IDE. As u toevoerapparaat 'n analoog sein verskaf, moet u die analoogpennetjies gebruik wat op die bord of in die datablad gemerk is, en die AnalogRead () -funksie gebruik.