Në ditët e sotme, entuziastët janë shumë të interesuar të kontrollojnë DC pa furçë (BLDC)
Krahasuar me motorin tradicional DC, performanca e motorit është përmirësuar, efikasiteti i energjisë është përmirësuar gjithashtu, por është më i vështirë për t'u përdorur. Ekzistojnë shumë produkte jashtë
raftit për këtë qëllim.
Për shembull, ka shumë kontrollues të vegjël BLDC që funksionojnë shumë mirë për avionët RC.
Për ata që duan të shikojnë më në thellësi kontrollin e BLDC, ka gjithashtu shumë mikrokontrollues të ndryshëm dhe pajisje të tjera elektronike për përdoruesit industrialë, të cilët zakonisht kanë dokumentacion shumë të mirë.
Deri më tani nuk kam gjetur ndonjë përshkrim gjithëpërfshirës se si të përdoret mikrokontrolluesi Arduino për kontrollin BLDC.
Gjithashtu, nëse jeni të interesuar të bëni frenim rigjenerues, ose të përdorni një BLDC për prodhimin e energjisë, nuk kam gjetur shumë produkte të përshtatshme për t'u përdorur me motorë të vegjël, as nuk kam mësuar se si të kontrolloj gjeneratorin 3-fazor.
Kjo strukturë ishte fillimisht në një histori për
llogaritjen në kohë reale, unë vazhdoj ta bëj këtë pasi të përfundojë kursi.
Ideja e projektit është të tregojë një model proporcional të një makine hibride me ruajtje të energjisë në volant dhe frenim rigjenerues.
Motori i përdorur në projekt është një BLDC i vogël i pastruar nga hard disku i kompjuterit të dëmtuar.
Ky manual përshkruan se si të përdorni mikrokontrolluesin Arduino dhe
sensorët e pozicionit Hall-Affects në mënyrat e drejtimit dhe të frenimit rigjenerues.
Ju lutemi vini re se vizita në oscillisoft është shumë e dobishme, nëse jo thelbësore, për të përfunduar këtë projekt.
Nëse nuk jeni në gjendje të hyni në fushëveprimin, unë kam shtuar disa sugjerime se si ta bëni atë pa fushëveprimin (hapi 5).
Një gjë që ky projekt nuk duhet të përfshijë në asnjë kontrollues aktual të motorit është çdo funksion sigurie, si p.sh. mbrojtja mbi rrymën.
Në fakt, gjëja më e keqe është se ju djeg motorin HD.
Sidoqoftë, zbatimi i mbrojtjes nga mbirryma me harduerin aktual nuk është i vështirë dhe mbase do ta bëj këtë në një moment.
Nëse po përpiqeni të kontrolloni një motor më të madh, ju lutemi shtoni mbrojtje aktuale për të mbrojtur motorin tuaj dhe sigurinë tuaj.
Dua të provoj ta përdor këtë kontrollues me një motor më të madh që mund të bëjë disa punë \'të vërtetë\', por nuk e kam ende të duhurin.
Vura re që eBay shiti një makinë 86 W për rreth 40 dollarë.
Duket një kandidat i mirë.
Ekziston gjithashtu një faqe interneti RC e quajtur \'GoBrushless\' që shet komplete që mbledhin BLDC-në e tyre.
Këto nuk janë shumë të shtrenjta dhe ia vlen përvoja për të ndërtuar një të tillë.
Ju lutemi vini re se në këtë faqe interneti nuk ka sensor sallë për motorin. Ua!
Shkrimi i kësaj strukture është një punë e madhe.
Shpresoj t'ju duket e dobishme, ju lutemi bëni komentet dhe sugjerimet tuaja.
Multimeter dixhital (DMM)-
Nëse DMM juaj ka një oshiloskop matës të frekuencës (
është më mirë të keni të paktën 2 kanale)
drejtuesi T8 Torx (
Ju duhet një prej tyre për të hapur ndonjë hard disk).
Ka një dyqan të mirë harduerësh.
Workshop Machine dhe prototipi i shpejtë (
Këto janë shumë të dobishme, por mendoj se ky projekt mund të bëhet pa to).
Unaza magnetike e motorit bldc material nga disku i ngurtë i kompjuterit (
Gjysma e motorit)
Nga një hard disk tjetër Disa (3-6)
Ka një motor të dytë të vogël në diskun e argjendtë në hard diskun (DC i krehur në rregull)
Shirit gome ose (mundësisht)
Motori DC pa furçë me një dorezë me një motor tjetër elektronik pjatë buke me tela të ngurtë. Rezistenca ohm lineare ose rrotulluese Poteniometer100 k ohmST mikro qark L6234 drejtues motori trefazor IC dy kondensatorë 100 uF një kondensator 10 nF një kondensator 220 nF një kondensator 1 uF një kondensator 100 uF tre dioda marrëse
1Amp1Amp4Huder1Amp4 1. 1 mbajtëse siguresash 3
Shënim: Mike Anton projektoi dhe shiti një produkt që do të zëvendësojë elektronikën e energjisë dhe qarqet e sensorit Hall që kam treguar në këtë manual (
Kontrollohet duke përdorur induksionin e mundshëm të pasëm).
Specifikimet dhe informacioni i prokurimit mund të gjenden në këto dy lidhje: Nëse do të bëni këtë projekt, ju sugjeroj të merrni kohë për të kuptuar plotësisht se si funksionon dhe kontrollon BLDC.
Ka një numër të madh referencash në internet (
Shih më poshtë për disa sugjerime).
Megjithatë, unë përfshij disa tabela dhe tabela në projektin tim që duhet t'ju ndihmojnë të kuptoni.
Këtu është një listë e koncepteve që mendoj se janë më të rëndësishmet për të kuptuar këtë projekt: transistorë MOSFET gjysmë urë 3-fazore 6-
Reduktim me 3 hapa të fjalisë
Gjerësia e pulsit Modulimi i motorit fazor (PWM) Hall-
Mikroçipi AVR443: sensorë-referenca e përgjithshme motori DC
bazuar në parimet bazë të motorit DC pa kontroll në sensorë DC pa kontroll në pozicionin dixhital. Kontrolli i motorit DC
Faza e kontrollit të motorit BLDC i sensorit Flying Star Hall, një video e mirë e pastrimit të motorit të diskut të ngurtë, por autori duket se po e përdor motorin si një motor hapës dhe si një motor hapës. Një faqe interneti referimi më specifike për BLDC në IC-në e diskut të motorit l6234, duke përfshirë fletët e të dhënave, shënimet e aplikacionit dhe informacionin e blerjes.
Mostra falas për motorin pa furçë PM për aplikimet e automjeteve elektrike hibride.
Ky është i vetmi dokument që gjeta që përshkruan rendin e ndryshimit të fazës së frenimit rigjenerues.
Ky dokument, frenimi rigjenerues në automjetet elektrike është i dobishëm, kam huazuar disa numra prej tij, por mendoj se përshkruan gabimisht se si funksionon rigjenerimi.
E bëra këtë projekt me motorin e diskut të ricikluar sepse ishte i lehtë për t'u kaluar dhe më pëlqen të përdor një motor të vogël me tension të ulët për të mësuar kordonin e kontrolluar nga BLDC dhe për të mos shkaktuar asnjë problem sigurie.
Përveç kësaj, konfigurimi i magnetit të sensorit të sallës bëhet shumë i thjeshtë duke përdorur unazën magnetike (rotorin)
nga i dyti i këtyre motorëve (Shih hapin 4).
Nëse nuk dëshironi t'i kaloni gjithë telashet e instalimit dhe kalibrimit të sensorit të sallës (hapat 5-7)
unë e di që ka të paktën disa motorë me ngasje CD/DVD të ndërtuara me sensor në Hall.
Për t'i siguruar motorit një inerci rrotullimi dhe për t'u dhënë atyre një ngarkesë të vogël, vendosa 5 disqe të ngurtë në motor, të ngjitura butësisht së bashku me një ngjitës pak të fortë dhe të ngjitur në motor (
Kjo e bëri volantin në projektin tim origjinal).
Nëse do të hiqni motorin nga hard disku, ju nevojitet një makinë torx T8 për të zhbllokuar kapakun (
Zakonisht ka dy vida të fshehura pas shkopit në etiketën qendrore)
dhe vida të brendshme që e mbajnë motorin në vend.
Ju gjithashtu duhet të hiqni lexuesin e kokës (
Ekzekutiv i rrethit të zërit)
Në këtë mënyrë mund të hiqni diskun e kujtesës për të arritur motorin.
Për më tepër, do t'ju duhet një motor i dytë i njëjtë i diskut për të hequr rotorin nga ai motor (
Ka një magnet brenda).
Në mënyrë që të shkëputem motorin, kam kapur rotorin (sipër)
Një vizë të motorit dhe e kapa atë në stator (poshtë)
Dy kaçavidat janë 180 gradë larg njëri-tjetrit.
Nuk është e lehtë të mbash motorin në një palë mjaft të ngushtë pa deformim.
Ju mund të dëshironi të ndërtoni një
bllok v- prej druri të përdorur për këtë qëllim.
Kam shpuar një vrimë në unazën magnetike në torno në mënyrë që të përshtatet rehat në pjesën e sipërme të motorit.
Nëse nuk jeni në gjendje të përdorni torno, mund ta rregulloni rotorin e përmbysur në motor me një ngjitës të fortë.
Fotografitë 2 dhe 3 më poshtë tregojnë brendësinë e njërit prej motorëve që kam çmontuar.
Në gjysmën e parë (rotori) janë 8 pole (
Magnet i mbështjellë në plastikë).
Në gjysmën e dytë (statori)
Ka 12 lojëra elektronike (mbështjellje).
Secila nga tre fazat e motorit ka 4 lojëra elektronike në seri.
Disa motorë HD kanë tre kontakte në fund, një kontakt për fazë dhe tjetri është rubineti qendror i motorit (
Ku takohen tre faza).
Në këtë projekt, nuk kërkohet asnjë trokitje e lehtë në qendër, por mund të jetë e dobishme në kontrollin pa sensor (
shpresoj të publikoj një shënim për kontrollin pa sensorë një ditë).
Nëse motori juaj ka katër kontakte, mund ta identifikoni fazën me ohmetër.
Rezistenca midis rubinetit qendror dhe fazës është gjysma e rezistencës midis çdo dy fazash.
Pjesa më e madhe e literaturës mbi motorët BLDC trajton ata me një formë vale të mundshme të pasme në formë shkalle, por motori i hard drive duket se ka një potencial prapa që duket si një sinus (Shih më poshtë).
Me sa di unë, drejtimi i një motori me valë sinusi me një valë sinus PWM funksionon mirë, megjithëse efikasiteti mund të bjerë disi.
Ashtu si të gjithë motorët BLDC, ky është i përbërë nga
ura trefazore gjysmë-Tranzistor (
Shih fotot e 2-ta më poshtë).
Unë përdor IC-në e bërë nga ST Micro (L6234)
për urën, e njohur gjithashtu si drejtuesi i motorit.
Lidhja elektrike e L6234 është paraqitur në hapin 8.
Fotografia e tretë më poshtë tregon një diagram skematik të drejtuesit të motorit dhe të tre fazave të motorit.
Në mënyrë që motori të funksionojë në drejtim të akrepave të orës, ndërprerësi do të bëhet në rendin e mëposhtëm (
Shkronja e parë është tranzistori i sipërm dhe shkronja e dytë është tranzistori i poshtëm)
: Hapi 1 2 3 4 5 6 në drejtim të akrepave të orës: CB, AB, AC, BC, BA, CA në drejtim të kundërt të akrepave të orës: BC, BA, CA,
hapat e kërkuara AB6, CB, \'shkalla elektrike\' prej 360, por vetëm një shkallë fizike 90 për këta motorë.
Prandaj, shpejtësia e rrotullimit të secilit motor ndodh katër herë.
Dy sekuencat duken të jenë të njëjta, por nuk janë të njëjta sepse për
sekuencën 6-hapësh, për CW, drejtimi i rrymës nëpër fazë është një drejtim, dhe për CCW, drejtimi i rrymës është i kundërt.
Ju mund ta shihni këtë vetë duke aplikuar tensionin e baterisë ose furnizimin me energji elektrike në secilën fazë të motorit.
Nëse aplikoni tensionin, motori do të lëvizë pak në një drejtim dhe do të ndalojë.
Nëse mund ta ndryshoni shpejt tensionin në fazë në një nga sekuencat e mësipërme, mund ta rrotulloni motorin me dorë.
Transistorët dhe mikrokontrolluesit përfundojnë të gjithë këta ndërprerës shumë shpejt, duke ndërruar qindra herë në sekondë kur motori punon me shpejtësi të lartë.
Gjithashtu, ju lutemi vini re se nëse voltazhi aplikohet në të dy fazat, motori lëviz pak dhe më pas ndalon.
Kjo për shkak se çift rrotullimi është zero.
Ju mund ta shihni këtë në foton e katërt më poshtë, e cila tregon potencialin e pasmë të një çifti fazash motorike.
Kjo është një valë sinus.
Kur vala kalon nëpër
boshtin x, çift rrotullimi i siguruar nga kjo fazë është zero. Në
sekuencën e ndryshimit të fazës BLDC me gjashtë hapa që nuk ka ndodhur kurrë.
Përpara se çift rrotullimi në një fazë të caktuar të ulet, fuqia kalon në një kombinim tjetër fazor.
Motorët më të mëdhenj BLDC zakonisht prodhohen nga sensorë Hall brenda motorit.
Nëse keni një motor të tillë, atëherë mund ta kaloni këtë hap.
Gjithashtu, unë e di se ka të paktën disa motorë të diskut CD/DVD të ndërtuar në sensorin Hall tashmë.
Kur motori rrotullohet, tre sensorë të sallës përdoren për zbulimin e pozicionit, kështu që ndryshimi i fazës kryhet në momentin e duhur.
Motori im HD funksionon deri në 9000 RPM (150 Hz).
Meqenëse ka 24 ndryshime për rrotë, në 9000 RPM, makina ndërrohet çdo 280 mikrosekonda.
Mikro-kontrollues Arduino punon në 16 MHz, kështu që çdo cikël orësh është 0, 06 mikrosekonda.
Nuk e di sa cikle ore duhen per te kryer reduktimin e fjalise, por edhe nese kerkohen 100 cikle ore, dmth duhen 5 mikrosekonda per cdo reduktim te fjalise.
Motorët HD nuk kanë sensorë Hall, prandaj është e nevojshme t'i instaloni në pjesën e jashtme të motorit.
Sensori duhet të fiksohet në lidhje me rrotullimin e motorit dhe të ekspozohet ndaj një sërë polesh që janë në përputhje me rrotullimin e motorit.
Zgjidhja ime është të heq unazën magnetike nga i njëjti motor dhe ta instaloj me kokë poshtë në motorin që do të kontrollohet.
Më pas instalova tre sensorë të sallës mbi këtë unazë magnetike, 30 gradë larg njëri-tjetrit në boshtin e motorit (
rrotullimi i motorit elektrik 120 gradë).
Mbajtja e sensorit tim Hall përbëhet nga një mbajtëse e thjeshtë e përbërë nga tre pjesë alumini të përpunuara nga unë dhe tre pjesë plastike të bëra në një prototip të shpejtë.
Nëse nuk i keni këto mjete, nuk duhet të jetë e vështirë të gjesh një mënyrë tjetër për të treguar pozicionin.
Krijimi i kllapave për sensorët Hall do të jetë më sfidues.
Kjo është një mënyrë e mundshme për të punuar: 1.
Gjeni një tabaka plastike të përmasave të duhura dhe mund ta epoksidoni me kujdes sensorin e sallës. 2.
Në letër shtypet një shabllon, i cili ka të njëjtin rreth me rrezen e unazës magnetike dhe tre shenjat janë 15 gradë 3 larg njëra-tjetrës.
Ngjiteni shabllonin në disk dhe më pas përdorni shabllonin si një udhëzues për të vendosur me kujdes epoksidin e sensorit të sallës në vend.
Tani që sensorët Hall janë instaluar në motor, lidhini ato me qarkun e treguar më poshtë dhe testojini duke përdorur një DMM ose oshiloskop për t'u siguruar që dalja bëhet gjithnjë e më e ulët ndërsa motori rrotullohet.
Unë i ekzekutoj këta sensorë nën 5 v duke përdorur daljen 5 v të Arduino.
Sensori Hall ka dalje të lartë ose të ulët (1 ose 0)
Varet nga fakti nëse ata ndjejnë Antarktikun apo Arktikun.
Meqenëse janë 15 gradë larg njëri-tjetrit, magnetët rrotullohen nën to dhe ndryshojnë polaritetin çdo 45 gradë, këta tre sensorë nuk do të jenë kurrë të lartë ose të ulët në të njëjtën kohë.
Kur motori rrotullohet, dalja e sensorit është 6-
Modeli i hapave i treguar në tabelën e mëposhtme.
Sensori duhet të jetë në linjë me lëvizjen e motorit në mënyrë që njëri nga tre sensorët të ndryshojë pikërisht në pozicionin e ndryshimit të fazës së motorit.
Në këtë rast, skaji në rritje i sensorit të parë të sallës (H1)
duhet të jetë në përputhje me hapjen e kombinimit C (i lartë) dhe B (i ulët).
Kjo është e barabartë me ndezjen e transistorëve 3 dhe 5 në qarkun e urës.
Unë e rreshtoj sensorin me magnetin me një oshiloskop.
Për ta bërë këtë, më duhet të përdor tre kanale të shtrirjes.
E rrotulloj motorin duke u lidhur me rripin e motorit të dytë dhe matim potencialin e pasmë midis dy kombinimeve fazore (
A dhe B, A dhe C)
Ky është dy sinus.
Ashtu si valët në foton më poshtë
Pastaj shikoni sinjalin e sensorit Hall 2 në kanalin 3 të oshiloskopit.
Mbajtësja e sensorit Hall rrotullohet derisa skaji në rritje i sensorit të sallës të jetë plotësisht në linjë me pikën ku duhet të kryhet ndryshimi i fazës (Shih më poshtë).
Tani e kuptoj se ka vetëm dy kanale për të bërë të njëjtin kalibrim.
Nëse BEMF e kombinimit fazor B-
Duke përdorur C, skaji në rritje i H2 do të lidhet me kurbën BC.
Arsyeja pse ndryshimi i fazës duhet të kryhet këtu është që gjithmonë të mbahet rrotullimi i motorit sa më i lartë.
Potenciali i pasmë është proporcional me çift rrotullues dhe do të vini re se çdo ndryshim fazor ndodh kur potenciali i pasmë kalon nën kurbën e fazës tjetër.
Prandaj, çift rrotullimi aktual përbëhet nga pjesa më e lartë e çdo kombinimi fazor.
Nëse nuk mund të hyni në fushëveprimin, këtu është ideja ime e shtrirjes.
Ky është në fakt një ushtrim interesant për këdo që dëshiron të dijë se si funksionon motori BLDC.
Nëse motori Faza A është i lidhur (pozitiv) dhe B (negativ)
me furnizimin me energji dhe ndizet furnizimi me energji elektrike, motori do të rrotullohet pak dhe do të ndalojë.
Pastaj, nëse priza e fuqisë negative zhvendoset në fazën C dhe energjia ndizet, motori do të kthehet më tej dhe do të ndalojë.
Pjesa tjetër e sekuencës do të jetë zhvendosja e plumbit pozitiv në fazën B, etj.
Kur e bëni këtë, motori ndalon gjithmonë aty ku çift rrotullimi është zero, që korrespondon me një vend ku grafiku kalon përmes boshtit x në tabelë.
Vini re se pika zero e kombinimit të fazës së tretë korrespondon me pozicionin e ndryshimit të fazës së dy kombinimeve të para.
Prandaj, pozicioni i çift rrotullues zero i B-
Kombinimi C është vendi ku dëshironi të poziciononi skajin në rritje të h2.
Shënoni këtë pozicion me shenja të imta ose tehe të mprehta dhe më pas rregulloni mbajtësin e sensorit të sallës duke përdorur DMM derisa dalja e H2 të jetë saktësisht më e lartë në këtë shenjë.
Edhe nëse devijoni pak nga orari i shkollës, motori duhet të funksionojë mirë.
Faza me tre motorë do të marrë energji nga drejtuesi i motorit trefazor L6234.
Zbulova se ky është një produkt i mirë që mund t'i rezistojë kohës.
Ka shumë mënyra për të skuqur aksidentalisht komponentët tuaj kur përdorni elektronikë të energjisë, unë nuk jam inxhinier elektrik dhe nuk e di gjithmonë se çfarë po ndodh.
Në programin tim të shkollës, ne bëmë daljen tonë
gjysmë urë 3-fazore me 6 transistorë MOSFET dhe 6 dioda.
Ne e përdorëm këtë në HIP4086 të shoferit tjetër Intersil, por kemi shumë probleme me këtë konfigurim
Ne djegëm një mori transistorë dhe çipa.
Unë punoj L6234 (
Pra, motori) në 12V.
L6234 ka një grup të pazakontë hyrjesh për të kontrolluar një gjysmë urë prej 6 transistorësh.
Jo çdo transistor ka një hyrje, por një
hyrje aktivizuese (EN) për secilën nga tre fazat, dhe më pas një hyrje tjetër (IN)
Zgjidhni cilin transistor në fazën e hapur (sipërme ose të poshtme).
Për shembull, ndizni transistorin 1 (sipër) dhe 6 (poshtë)
Të dy EN1 dhe EN3 janë të larta (
EN2 i ulët për të mbajtur skenën të mbyllur)
IN1 Lartë, IN3 i ulët.
Kjo e bën kombinimin e fazës-C.
Ndërsa shënimi i aplikimit L6234 sugjeronte aplikimin e PWM-së së përdorur për të kontrolluar shpejtësinë e motorit në kutinë IN, vendosa ta bëj atë në kutinë EN sepse, në atë kohë, mendoj se do të ishte \'e çuditshme\' të ndizni transistorët e sipërm dhe të poshtëm të fazës në mënyrë alternative \'.
Në fakt, duket se nuk ka asgjë të keqe me ndezjen e të njëjtit transistor të fazës së
ulët, kështu që të dy. Asnjë prej tyre nuk kalon përmes rrymës, faza e lartë aktivizohet dhe çaktivizohet në mënyrë alternative në frekuencën PWM, ndërsa faza e ulët mbetet e ndezur gjatë gjithë ndryshimit të fazës
Më poshtë është një skemë e ngasjes
së motorit. Ripple në rrymën rigjeneruese Kjo shifër është paksa e
, kështu që për versionet më të mëdha, ju lutemi, referojuni dokumentacionit për L6234
, i cili (besoj) do
ta zëvendësojë këtë pjesë dhe do t'ju kursejë punën e montimit të tij
vogël
Unë
nuk jam një inxhinier elektrik dhe ne do të vlerësojmë çdo korrigjim në shpjegimin tim
, sistemi i kontrollit dërgon rrymën në tre faza të motorit në një mënyrë që maksimizon çift rrotullues
, sistemi i kontrollit gjithashtu maksimizon çift rrotullues, por këtë herë është një çift rrotullues negativ që bën që motori të ngadalësojë rrymën e përdorur nga bateria
të
ndizen
ulët
Laboratori në Shtetet e Bashkuara të Amerikës Një laborator që bën shumë kërkime për motorët automobilistikë B dhe në shkallë të ulët, është e mundur që rryma të rrjedhë nga frenimi kritik në atë
rigjenerues, tranzistorët e nivelit
dhe
fiken
shpejt (
Mijëra ndërprerës PWM në sekondë
kur ndizet transistori i ulët
,
rryma e rrymës quhet si në një figurë energjia ruhet në fazën e motorit (
Wikipedia ka një artikull të mirë që shpjegon se si funksionon konverteri i fuqisë) ,
kur transistori i nivelit të ulët fiket, por në një tension më të lartë, rryma rrjedh në çast nëpër diodën \'anti-ngacmues' pranë secilit tranzitor dhe më pas kthehet në rrymën
nga dioda
Ky drejtim (
Ndryshe nga drejtimi)
Ndërveproni me unazën e magnetit për të prodhuar një çift rrotullues negativ që ngadalëson motorin motori për të prodhuar sa më shumë çift rrotullues negativ
se
, nëse e shikoni videon
frena rigjeneruese funksionon mirë, por mendoj se arsyeja kryesore është se motori i diskut që përdor është një motor me çift rrotullues shumë të ulët
në hapin e parë, mund të shihni
, kështu që nuk prodhon shumë BEMF, përveçse me shpejtësinë më të ulët Tensioni
(12 V) Për më tepër, meqënëse çdo
gjithashtu zvogëlon shumë efikasitetin Rezistenca 1 120 K e Gnd 3 Salla e hyrjes dixhitale 2 120
shteg përmes diodës anti-eksituese zvogëlon tensionin me disa volt, kjo
K Rezistenca e Gnd 4 Hall 3 hyrja dixhitale - 120 K Rezistenca e Gnd 5 1 Dalje dixhitale në seri me rezistencë 400 ohm 6 2
Dalje dixhitale në seri me
me
dalje dixhitale në seri 09 ohm me seri EN 09 ohm
rezistencë 400 om 7 3
Dalje dixhitale
rezistencë 400 ohm 10-
2 në
e EN
1 me
seri me rezistencë 400 ohm 11-
Dalja dixhitale
EN 3 është në
seri me
një rezistencë 400 ohm, potenciometër 100 k Ohm, me 5 v dhe gnd të lidhur në të dy skajet dhe pine analoge 0 përdoret në
kontrollin e mesit
Furnizimi me energji elektrike përdoret gjithashtu për të ekzekutuar sensorët Hall (shih hapin 5
këtu është i gjithë programi që kam shkruar për Ardjuino, i cili përfshin komente:/* bldc_congroller 3.
1*3 nga David Glazer
Seria X është ST L6234 .
pozicioni i motorit me tre sensorë Hall-
Efekt * Arduino merr dalje nga 3 sensorë të sallës (kunjat 2,3,4)
* Dhe konverton kombinimin e tyre në 6 hapa të ndryshëm
Korrespondon me EN 1,2, 3*3 DO, respektivisht, 2, 3, 3, 3, 3, 3, 3
të ndryshimit të fazës në kunjat 9, 10, 11 në 32 kHz * Dalja PWM (
, 3, 3, 3, 3, 3, 3, 2, 3, 2, 3, 2, 2, 2, 2
DO
për të ndryshuar ciklin e
, përkatësisht
, 2, 200
2003 ) simulimi
në 0 në potenciometër
punës PWM dhe Ndryshimi * midis frenimit
të drejtimit dhe rigjenerimit * 0- 499
komenton shumë rreshta për korrigjimin e një numri të madh të lidhjeve sensorë
: frenimi * 524- 1023: motorikimi *
Vlera
binare e
(3,2,1) int HallState3 = 1.
potenciometër (2,INPUT)
3 sensorëve të sallës int
Mode 1 pin (3,Hall 2) 1 pinMode (10, OUTPUT
2 pinMode) (11, OUTPUT
3/serial)
Nëse do të përdorni një lidhje serike, ju lutemi hiqni komentet
në fund të programit.
të tre bitët para-pjesëtues: int prescalerVal = 0x07 /Krijoni një variabël
të quajtur prescalerVal dhe vendoseni atë të barabartë me numrin binar \'00000111\' TCCR1B & = ~ Parashkallëzues
/Dhe vlera në TCCR0B me një numër binar të
\'0011'; int pre-encoding bit 2 = 1 /Set prescalerVal të barabartë me
numrin binar \'00000001\' TCCR1B = prescalerVal2 /Ose vlera në TCCR0B me një numër binar të \'00000001'/vendos PWM 1, vetëm për
-
3; /Pastrojini të tre bit-at parakalues: TCCR2B &
= ~ Parakalimtari /Dhe vlera në TCCR0B me një numër binar \'1111000\'/tani vendosni bitin e duhur para
:
kodues
= bit-i para
TCCR2B
-enkodues me një numër binar 2; \'0000001'/
së pari fshij të tre bitat e para -kodifikuara :} cikli i zbrazëtisë/PRGROM () Koha pas fillimit të programit println
, 0,255 /
Drejtimi është hartuar në gjysmën e sipërme të potenciometrit
512,1023
Gjysma e frenimit rigjenerues
(//Serial print (Serial)
bShpejtësia = hartë (Gryka, 0,511,255, 0 /
Hall 1 2 = Leximi dixhital (3 /
Lexo vlerën e hyrjes nga Hall 2
Llogaritni
në fund të tenxhere/MSPs ed nga
). (HallState1)+ (HallState3) /
vlerat e 3 sensorëve të sallës (\'Seriale println(S.2)); print(\'H 3: \'
); Serial. println(HallState3); Serial. println(\' \');
*/ //Serial. println(mSpeed); //Serial. println(HallVal); //Serial. print(\'\');
Monitor transistor output/delay (1000);
/
/* T1 = digitalRead (2); //T1 = ~T1; T2 =
digitalRead (4); //T2 = ~T2; T3 = digitalRead (5); //T3 = ~T3; Serial. print(T1); Serial. print(\'\t\'); Serial. print(T2); Serial. print(\'\t\'); Serial. print(T3); Serial. print(\'\'); Serial. print(\'\'); Serial. print(digitalRead(3)); Serial. print(\'\t\'); Serial
. print(digitalRead(9)); Serial. print(\'\t\'); Serial. println
(digitalRead(10)); Serial. print(\'\'); Serial. print(\'\');
/
Ndryshimi
që korrespondon me
*
//delay(500);
i fazës së drejtimit/ çdo numër binar ka
tranzistorët e ndryshëm të ndezur/bit matematikë të përdorur
përmban
për të ndryshuar vlerën e arduino-së dalëse : /PORTD
një rast
daljen e pinit
IN në drejtuesin L6234
daljen e përdorur për të përcaktuar nëse transistori i
/
sipërm ose ai
për secilën fazë kontrollohet nga komanda e ciklit analog të
i poshtëm i tranzitorit/Pinja e poshtme/EN
Rasti
vlera e mbytjes e kontrolluar
Ardu, 0, P. OFF, 255 = ON ose
nga potenciometri (nga mbytja > 511){
3:/PORTD = 1111xxx00 /
7
PORTD
&
=
B00011111
Dalja e pritshme e pinit 0- 7 xxx duhet të ndryshohet =100 | B01100000 /Analowrite (9,mSpeed) në fazën A (Transistori i lartë) mbyllje (10,0) analoge (11,255) në detyrë = 100%; B001xxx00 /Dalja e pritshme e pinit 0-
B
//
transistor
)Write(11,0)
Faza
off
(detyrim = 0
/PORTD = B101xxx00; analogWrite(11,mSpeed break 4:/PORTD
)break
:
= B100xx00) ; analogWrite(11,mSpeed); break; Case 6:/
PORTD = B110xxx00; /
Expected output of pin 0-
7 PORTD &
= B00011111;
PORTD b11. 000 =; /Analowrite (9,255);
analogWrite(10,mSpeed); analogWrite(11,0); break;
Case 2:/PORTD = B010xxx00; /Expected output of pin 0- 7 PORTD & = B00011111; B0201700
}
PORTD | =; /Analowrite (9,0); analogWrite(10,mSpeed); analogWrite(11,255); break;
} /Regenerative brake phase change/PORTD (Dalja e gjilpërës IN në L6234) Kunjat
'
gjatë frenimit tjetër{ /PORTD =
që përdoren vetëm tranzistorë
janë gjithmonë të ulëta, kështu
B000xxx00 (9,bSpeedWrite(9,0); AnalogWrite(11,bSpeed break) ; analogWrite(10,bSpeed); analogWrite(11,0); break; }} /Time = millis (); Time after the printing program starts. println(time); //Serial. print(\'\
If you
want to debug using a serial port, please
uncomment} I
); //Serial. flush(); /
think
(GAL16V8)
the operation that Arduino does in this project is so simple that it seems like a Në fakt, shënimet e aplikacionit të L6234 rekomandojnë një grup të thjeshtë të programueshëm
për të bërë këtë punë. Dola me disa sekuenca logjike relativisht të thjeshta që mund të nxisin IC L6234 nga dalja e tre sensorëve të sallës Grafiku për fazën A është paraqitur më poshtë, dhe tabela e së vërtetës për të tre fazat (Në mënyrë që qarku logjik i fazave B dhe C, dera \'jo\' duhet të kalojë në anën tjetër të secilës fazë, kështu që problemi është afër 0. pak punë për ta bashkuar
është mirë ta programosh si një portë logjike të programueshme.