Përmbajtje:

Moduli i zgjidhjes Arduino: 4 hapa
Moduli i zgjidhjes Arduino: 4 hapa

Video: Moduli i zgjidhjes Arduino: 4 hapa

Video: Moduli i zgjidhjes Arduino: 4 hapa
Video: Pro Micro ATMEGA32U4 Arduino Pins and 5V, 3.3V Explained 2024, Nëntor
Anonim
Moduli i zgjidhjes Arduino
Moduli i zgjidhjes Arduino

Tinee9 është kthyer me një modul të ri. Ky modul quhet një modul zgjidhës.

Në botën e kontrollit motorik ka lloje ose metoda të ndryshme të zbulimit të pozicionit. Ato metoda përfshijnë sensorë salle, sensorë XY, zgjidhës, RVDT, LVDT, drejtorë në terren, potenciometër, etj. Në varësi të mënyrës se si janë vendosur secili nga këta sensorë, madje mund të përcaktoni pozicionin tuaj absolut pa pasur nevojë të ruani pozicionin e fundit në kujtesë Me

Moduli që po përdor mund të përdoret për të demoduluar një RVDT, LVDT dhe Resolver, por për qëllimin e sotëm do të jetë demodulimi i një zgjidhësi.

Kuptimi Teknik: Niveli i Ekspertëve

Tutorial Plug and Play: Niveli i ndërmjetëm

Furnizimet

1: Arduino Nano

2: Moduli i zgjidhjes

3: Bordi i Bukës

4: 9.0 Bateri Volt ose NScope

5: Zgjidhës

6: 10x Bordi i bukës Jumper Wires

Hapi 1: Moduli i zgjidhjes

Moduli i zgjidhjes
Moduli i zgjidhjes

Ka disa gjëra që mund të bëni me një zgjidhës që mund të demoduloni një motor për ndërrim motorik, mund të merrni pozicion absolut nëse nuk kaloni pikat zero dhe mund të merrni shpejtësinë nga një motor.

Aty ku i kam parë të përdoren më shumë është në aplikimet hapësinore të aileronit, timonit, finit të raketave ose kontrollit të kamerës.

Ata priren të jenë pak më të shtrenjtë se një tenxhere ose sensor salle, por ato ju japin një rezolucion të jashtëzakonshëm.

Hapi 2: Konfigurimi

Konfigurimi
Konfigurimi
Konfigurimi
Konfigurimi
Konfigurimi
Konfigurimi
Konfigurimi
Konfigurimi

1: Së pari do t'ju duhet të vendosni arduino nano tuaj në një dërrasë bukë

2: Ju duhet të lidhni pinin 5V në Arduino me pinin +3V3 dhe pinin 5V në modulin e zgjidhjes (moduli mund të ketë një furnizim prej 3.3V ndërsa jep një ngacmim 5V në zgjidhësin)

3: Lidhni RTN në Arduino me modulin RTN në zgjidhësin

4: Lidhni D9 në Arduino me PWM në Modulin Resolver

5: Lidhni A0 në Arduino me MCU_COS+ në modulin Resolver

6: Lidhni A1 në Arduino me MCU_SIN+ në modulin e zgjidhjes

7: Lidhni tela Resolver EX+ me EX+ në Modulin Resolver

8: Lidhni tela Resolver EX me EX- në Modulin Resolver

9: Lidhni tela Resolver COS+ me COS+ në Modulin Resolver

10: Lidhni telat 2 Resolver RCOM me RCOM në Modulin Resolver

11: Lidhni tela Resolver SIN+ me SIN+ në Modulin Resolver

12: Lidhni baterinë 9V në RTN (-) dhe VIN (+)

13: Ose lidhni Nscope +5V në 5V Pin në Arduino dhe RTN në Nscope në RTN në Arduino

14: Lidhni fushëveprimin me USB në PC

15: Lidheni Arduino me USB në PC

Hapi 3: Ngarko kodin

Ngarko Kodin
Ngarko Kodin
Ngarko Kodin
Ngarko Kodin

Kopjoni Ngjisni Kodin Arduino më poshtë në Skicën tuaj në Arduino IDE

Ajo që do të bëjë ky kod është të shkojë te PWM Moduli i Zgjidhjes. Ky Modul do të eksitojë zgjidhësin dhe do të prodhojë një valë katrore në mbështjelljet dytësore të zgjidhësit. Sinjalet që dalin nga Sin+ dhe Cos+ pastaj ushqehen me një OPAMP që do të përqëndrojë Valën dhe do të zvogëlojë daljen në mënyrë që të shkojë midis 0-5Volt.

Sin+ dhe Cos+ janë ashtu siç nënkuptojnë. Sin është 90 gradë jashtë fazës me valën Cos.

Meqenëse ato janë 90 gradë jashtë fazës, ne duhet të përdorim funksionin Atan2 (Cos, Sin) për të marrë koordinatën e saktë të pozicionit zgjidhës.

Pastaj Arduino do të pështyjë, pasi të ketë marrë 4 mostra, një vlerë midis -3.14 dhe 3.14 të cilat përfaqësojnë përkatësisht -180 gradë dhe +180 gradë. Kjo është arsyeja pse nëse doni të përdorni zgjidhësin për pozicionin absolut, duhet të përdorni vetëm midis -180 dhe 180 pa rrotullim të kundërt, përndryshe do të rrokulliseni dhe mendoni se jeni kthyer në fillim ose në fund të goditjes tuaj të aktivizuesit. Ky do të ishte një problem nëse vendosni të përdorni një zgjidhës për boshtin x ose y të një printeri 3D dhe rrotulloheni duke shkaktuar prishjen e printerit 3D.

Unë mund ta kisha bërë kodin pak më të mirë me ndërprerjet për të pasur PWMing më të vazhdueshëm, por kjo do të jetë e mjaftueshme për këtë aplikacion.int A = A0;

int B = A1; int pwm = 9; int c1 = 0; int c2 = 0; int c3 = 0; int c4 = 0; int c5 = 0; int c6 = 0; int s1 = 0; int s2 = 0; int s3 = 0; int s4 = 0; int s5 = 0; int s6 = 0; prodhimi notues = 0.00; int sin1 = 0; int cos1 = 0; int position_state = 1; int get_position = 0; void setup () {// vendosni kodin tuaj të konfigurimit këtu, për të ekzekutuar një herë: pinMode (pwm, OUTPUT); Serial.filloj (115200); }

lak void () {

nëse (merrni_pozitë = 5) {cos1 = (c1+c2)-(c3+c4); sin1 = (s1+s2)-(s3+s4); dalja = atan2 (cos1, sin1); c1 = 0; c2 = 0; c3 = 0; c4 = 0; s1 = 0; s2 = 0; s3 = 0; s4 = 0; Serial.print ("Pozicioni:"); Serial.println (dalje); merrni_pozitë = 1; }

// vendosni kodin tuaj kryesor këtu, për të ekzekutuar në mënyrë të përsëritur:

}

Hapi 4: Hapi 3: Argëtohuni

Hapi 3: Argëtohuni
Hapi 3: Argëtohuni
Hapi 3: Argëtohuni
Hapi 3: Argëtohuni

Kënaquni duke e rrotulluar zgjidhësin dhe mësoni se si funksionon zgjidhësi dhe cilat aplikacione mund të përdorni këtë modul zgjidhës.

Recommended: