Tässä projektissa kehitetään hauska piiri käyttäen Force-anturia ja Arduino Unoa. Tämä piiri tuottaa äänen, joka liittyy lineaarisesti anturiin kohdistuvaan voimaan. Tätä varten aiomme liittää FORCE-anturin Arduino Unoon. UNO: ssa aiomme käyttää työn suorittamiseen 8-bittistä ADC (Analog to Digital Conversion) -ominaisuutta.
Voima-anturi tai voimaherkkä vastus
FORCE-anturi on anturi, joka muuttaa resistanssiaan, kun pintaan kohdistetaan painetta. FORCE-anturia on saatavana erikokoisina ja -muotoisina. Aiomme käyttää yhtä halvemmista versioista, koska emme tarvitse tässä paljon tarkkuutta. FSR400 on yksi markkinoiden halvimmista voima-antureista. Kuva FSR400: sta on esitetty alla olevassa kuvassa. Niitä kutsutaan myös voimaherkiksi vastuksiksi tai FSR: ksi, koska sen vastus muuttuu siihen kohdistetun voiman tai paineen mukaan. Kun paine kohdistetaan tähän voimaa tunnistavaan vastukseen, sen vastus pienenee eli vastus on kääntäen verrannollinen käytettyyn voimaan. Joten kun siihen ei kohdisteta painetta, FSR: n vastus on erittäin korkea.
Nyt on tärkeää huomata, että FSR 400 on herkkä pituudeltaan, voima tai paino tulisi keskittää sensorin silmän keskellä olevaan sokkeloon, kuten kuvassa on esitetty. Jos voima kohdistetaan väärin aikoina, laite voi vaurioitua pysyvästi.
Toinen tärkeä asia tietää, että anturi voi ajaa suuria kantoja. Joten pidä mielessä ajovirrat asennuksen aikana. Myös anturin voimaraja on 10 newtonia. Joten voimme käyttää vain 1 kg painoa. Jos painot ylittävät 1 kg, anturi saattaa näyttää joitain poikkeamia. Jos se kasvaa yli 3 kg. anturi saattaa vahingoittua pysyvästi.
Kuten aiemmin kerrottiin, tätä anturia käytetään paineen muutosten havaitsemiseen. Joten kun paino kohdistetaan FORCE-anturin päälle, vastus muuttuu huomattavasti. FS400: n kestävyys painon suhteen on esitetty alla olevassa kaaviossa,
Kuten yllä olevassa kuvassa on esitetty, anturin kahden koskettimen välinen vastus pienenee painon mukaan tai anturin kahden koskettimen välinen johtavuus kasvaa. Puhtaan johtimen vastus saadaan:
Missä, p- Johtimen resistanssi
l = johtimen pituus
A = johtimen alue.
Tarkastellaan nyt johtoa, jonka vastus on “R”, jos johtimen päälle kohdistetaan jonkin verran painetta, johtimen pinta pienenee ja johtimen pituus kasvaa paineen seurauksena. Joten kaavan mukaan johtimen vastuksen tulisi kasvaa, koska vastus R on kääntäen verrannollinen pinta-alaan ja myös suoraan verrannollinen pituuteen l.
Joten tällä johdolla paineen tai painon alla johtimen vastus kasvaa. Mutta tämä muutos on pieni verrattuna yleiseen vastukseen. Huomattavaa muutosta varten monet johtimet on pinottu yhteen. Näin tapahtuu yllä olevassa kuvassa esitettyjen voima-antureiden sisällä. Tarkasteltaessa voi nähdä monia viivoja anturin sisällä. Jokainen näistä linjoista edustaa johtajaa. Anturin herkkyys on johtimen numeroissa.
Mutta tässä tapauksessa vastus pienenee paineen vuoksi, koska tässä käytetty materiaali ei ole puhdas johdin. Tässä FSR ovat kestäviä polymeeripaksukalvolaitteita (PTF). Joten nämä eivät ole puhtaita johdinmateriaalilaitteita. Ne koostuvat materiaalista, jonka resistanssi pienenee anturin pintaan kohdistuvan voiman kasvaessa. Tällä materiaalilla on ominaisuudet, kuten FSR-kaaviossa on esitetty.
Tämä muutos vastustuksessa ei voi tehdä mitään hyvää, ellemme osaa lukea niitä. Käsillä oleva ohjain pystyy lukemaan vain jännitteen mahdollisuudet eikä vähempää, tähän aiomme käyttää jännitteenjakajapiiriä, jolloin voimme johtaa vastuksen muutoksen jännitteen muutoksena.
Jännitteenjakaja on resistiivinen piiri ja se näkyy kuvassa. Tässä resistiivisessä verkossa meillä on yksi vakio vastus ja muu vastus muuttuva. Kuten kuvassa on esitetty, R1 on tässä vakiovastus ja R2 on FORCE-anturi, joka toimii vastuksena. Haaran keskipiste mitataan. R2-muutoksen myötä meillä on muutosta Voutissa. Joten tällä on jännitteen muutos painon mukaan.
Nyt on tärkeää huomata, että ohjaimen ottama ADC-muunnos on vain 50µAmp. Tämä vastusperusteisen jännitteenjakajan kuormitusvaikutus on tärkeä, koska jännitteenjakajan Voutista otettu virta lisää virheprosentin kasvua, toistaiseksi meidän ei tarvitse huolehtia kuormitusvaikutuksesta.
Kuinka tarkistaa FSR-anturi
Voimaa tunnistava vastus voidaan testata yleismittarilla. Liitä FSR-anturin kaksi nastaa yleismittariin ilman voimaa ja tarkista vastuksen arvo, se on erittäin korkea. Käytä sitten jonkin verran voimaa sen pintaan ja katso vastuksen arvon pieneneminen.
FSR-anturin sovellukset
Voimaa tunnistavia vastuksia käytetään pääasiassa paineentunnistavien "painikkeiden" luomiseen. Niitä käytetään useilla aloilla, kuten auton käyttöanturit, resistiiviset kosketuslevyt, robottisormenpäät, keinotekoiset raajat, näppäimistöt, jalkaennustusjärjestelmät, soittimet, sulautetut elektroniikka-, testaus- ja mittauslaitteet, OEM-kehityspaketti ja kannettava elektroniikka, urheilu. Niitä käytetään myös lisätyn todellisuuden järjestelmissä sekä mobiilikäytön tehostamiseksi.
Tarvittavat komponentit
Laitteisto: Arduino Uno, virtalähde (5v), 1000 uF kondensaattori, 100nF kondensaattori (3 kpl), 100KΩ vastus, summeri, 220Ω vastus, FSR400 Force -anturi.
OHJELMISTO: Atmel studio 6.2 tai Aurdino iltaisin
Piirikaavio ja selitys työstä
Piiri liitäntä vuorovaikutuksessa Force tunnistava Vastus Arduino on esitetty alla kaaviossa.
Anturin jännite ei ole täysin lineaarinen; se on meluisa. Kohinan suodattamiseksi kondensaattorit sijoitetaan jakajapiirin kunkin vastuksen yli kuvan osoittamalla tavalla.
Tässä aiotaan ottaa jakajan antama jännite (jännite, joka edustaa painoa lineaarisesti) ja syöttää sen yhteen UNO: n ADC-kanavista. Muunnoksen jälkeen aiomme ottaa kyseisen digitaalisen arvon (joka edustaa painoa) ja liittää sen PWM-arvoon summerin ajamiseksi.
Joten painolla meillä on PWM-arvo, joka muuttaa sen suhdetta digitaalisesta arvosta riippuen. Korkeampi digitaaliarvo, korkeampi PWM: n suhde, joten korkeampi summerin tuottama melu. Joten me suhteutimme painon ääniin.
Ennen kuin jatkat, puhutaan Arduino Unon ADC: stä. ARDUINOlla on kuusi ADC-kanavaa, kuten kuvassa näkyy. Niissä yhtä tai kaikkia niistä voidaan käyttää analogisen jännitteen tuloina. UNO ADC: n resoluutio on 10 bittiä (joten kokonaislukuarvot ((0- (2 ^ 10) 1023)). Tämä tarkoittaa, että se kartoittaa 0 - 5 voltin syöttöjännitteet kokonaislukuiksi välillä 0 - 1023. Joten jokaiselle (5/1024 = 4,9 mV) yksikköä kohti.
Täällä aiomme käyttää UNO: n A0: ta.
Meidän on tiedettävä muutama asia.
|
Ensinnäkin UNO ADC -kanavien oletusarvo on 5 V. Tämä tarkoittaa, että voimme antaa enimmäisjännitteen 5 V ADC-muunnokselle missä tahansa tulokanavassa. Koska jotkut anturit tarjoavat jännitteitä 0-2,5 V, 5 V: n referenssillä saamme vähemmän tarkkuutta, joten meillä on ohje, jonka avulla voimme muuttaa tätä vertailuarvoa. Joten referenssiarvon muuttamiseksi meillä on ("analogReference ();") Tällä hetkellä jätämme sen arvoksi.
Oletuksena saamme levyn ADC-enimmäistarkkuuden, joka on 10 bittiä, tätä resoluutiota voidaan muuttaa käskyllä ("analogReadResolution (bits);"). Tämä resoluution muutos voi olla hyödyllinen joissakin tapauksissa. Toistaiseksi jätämme sen.
Jos edellä mainitut ehdot on asetettu oletusarvoiksi, voimme lukea arvon kanavan '0' ADC: stä kutsumalla suoraan toimintoon "analogRead (pin);", tässä "pin" edustaa nastaa, johon liitimme analogisen signaalin, tässä tapauksessa se olisi "A0". ADC: n arvo voidaan ottaa kokonaislukuksi muodossa "int SENSORVALUE = analogRead (A0); ”, Tällä ohjeella arvo ADC: n jälkeen tallennetaan kokonaislukuun“ SENSORVALUE ”.
Arduino Unon PWM voidaan saavuttaa millä tahansa nastalla, jota PCB-piirilevyssä symboloi "~". UNO: ssa on kuusi PWM-kanavaa. Aiomme käyttää PIN3: ta tarkoitukseen.
analogWrite (3, ARVO); |
Yllä olevasta ehdosta voimme saada PWM-signaalin suoraan vastaavaan tapiin. Suluissa ensimmäinen parametri on PWM-signaalin pin-numeron valitseminen. Toinen parametri on kirjoitussuhde.
UNO: n PWM-arvo voidaan muuttaa arvosta 0 arvoon 255. Kun ”0” on pienin ja ”255” on korkein. Kun käyttösuhde on 255, saamme 5 V PIN3: lla. Jos käyttösuhde on 125, saamme 2,5 V PIN3: lla.
Nyt meillä on 0-1024-arvo ADC-ulostulona ja 0-255 PWM-suhdelukuna. Joten ADC on noin neljä kertaa PWM-suhde. Joten jakamalla ADC-tulos 4: llä saadaan likimääräinen tulosuhde.
Sen avulla meillä on PWM-signaali, jonka suhde muuttuu lineaarisesti painon mukaan. Tämä annetaan summerille, meillä on äänigeneraattori painosta riippuen.