Apika

Potentziometroarekin RGB LEDaren argiak txandakatzeko abiadura kontrolatu

Hainbat diseinutako potentziometroak daude, baina orokorrean 360° biratu daitekeen gurpiltxo bat izaten dute. Gurpiltxo hori biratu ahala potentziometroak korronteari ezartzen dion erresistentzia aldatzen da eta ondorioz Arduinora bidaltzen duen seinalearen balioa ere bai. Horri esker zehaztasun handiz kontrola dezakegu potentziometroaren biraketa eta aldaketa horri erantzunez beste zerbait kontrolatu. Adibidez, ariketa honetan 11. unitatean erabili genuen RGB LEDaren argien txandakatze abiadura kontrolatzeko erabiliko dugu.

Potentziometroek 3 konexio izaten dituzte:

  • VCC: Elikadura. Arduinoaren 5Vko pinera konektatu behar da.
  • GND: Lura. Arduinoaren lurra pin batera konektatu behar da.
  • S: Seinalea. Biraketaren neurria emango digu: 0 eta 1023 arteko balio bat. Arduinoaren pin analogiko batera konektatuko dugu.

Urratsak

  • 1

    Potentziometroa Arduino plakara konektatuko dugu.

  • 2

    Snap4Arduinon Arduino ataleko "irakurketa analogikoa x pinean" blokean erabili dugun pin analogikoaren zenbakia jarriko dugu, adibidez 0, eta ezkerrean daukan kontrol laukia hautatuko dugu.

  • 3

    Snap4arduinoren goian eskuinean irakurritako balioa erakusten duen markagailu bat agertuko zaigu. Potentziometroa biratuz 0 eta 1023 artean aldatzen dela egiaztatuko dugu.

  • 4

    11. unitatean bezala RGB LED bat konektatuko dugu Arduinora prototipo plaka bat erabiliz. 4 ar-ar kable eta 220 Ohm-eko 3 erresistentzia beharko ditugu.

  • 5

    Snap4Arduinon 11. unitateko programa bera kargatu eta argiak txandaka piztu eta itzaltzen direla egiaztatuko dugu (beste pin digital batzuk erabili badituzu, horiek jarri programan).

  • 6

    "Aldagaiak" atalean 2 aldagai sortuko ditugu "Sortu aldagaia" botoia erabiliz: "potentziometroaren balioa" eta "itxaron denbora". Aldagaiei izen ulergarriak jartzea garrantzitsua da. Programatzean denbora gehiago pasatzen da programak irakurtzen idazten baino.

  • 7

    Potentziometroak itzulitako balioa aldagai batean gordeko dugu. Horretarako "Aldagaiak" kategoriako "ezarri aldagaia balioa" bloke bat hartuko dugu eta "potentziometroaren balioa" hautatuko dugu, hori baita ezarri nahi dugun aldagaiaren izena. Potentziometroaren pin analogiko seinalearen balioa ezartzeko "Arduino" kategoriako "irakurketa analogikoa x pinean" blokea erabiliko dugu, dagokion pin zenbakia jarriz, gure kasuan 0.

  • 8

    Aurreko pausoko blokea beti begiztaren barruan sartuko dugu. Bira bakoitzean potentziometroaren balioa irakurtzea nahi dugu. Irakurtzen duen balioa aldagaian gordetzen dela egiaztatuko dugu goian eskuinean dauden markagailuak erabiliz. Kontuan izan begiztaren bira bat osatzean gordetzen dela potentziometroak itzulitako balioa.

  • 9

    Itxaron denbora 0 eta 1 segundoren artekoa izatea nahi dugu. Potentziometroaren balioa 0 denean 0 segundo itxarongo du eta 1023 denean segundo bat. Tarteko balio bat denean dagokion denbora proportzionala itxarongo dugu. Hau orokortuta honela geratuko litzaiguke:

    itxaron denbora =  potentziometroaren balioa / 1023

    Snap4Arduinoren "Eragiketak" ataleko zatiketa blokea hartu eta lehen zulora "Aldagaiak" ataleko "potentziometroaren balioa" blokea arrastatuko dugu. Ondoren, bigarren zuloan 1023 idatziko dugu. Zatiketa horren emaitza "itxaron denbora" aldagaian gordeko dugu "Aldagaiak" ataleko "Ezarri aldagaian balioa" blokea erabiliz.

  • 10

    Amaitzeko, aurreko pausoko blokea beti begiztaren barruan sartuko dugu, "potentziometroaren balioa" ezartzeko blokearen azpian. Begizta barruko "itxaron x segundo" blokeetan "itxaron denbora" aldagaia jarriko dugu 1-en ordez. Horrela, begiztaren buelta bakoitzean kalkulatutako denbora itxarongo du. Denbora hori potentziometroa erabiliz aldatuko dugu.

    Itxaron denbora txikiagotu ahala argi zuria ikusi beharko genuke, RGB LEDaren 3 pinei korrontea ematen diogunean bezala, baina ez da hala. Zergatik? Snap4Arduinok bloke bakoitzean egin beharrekoa bidaltzen dio Arduino plakari. Prozesu horrek denbora bat behar du eta horren ondorioz itxaron denbora ez da inoiz zero. Programa Arduino IDEa eta C programazio lengoaia erabiliz egin izan bagenu, itzulpen prozesu hori ez zen emango eta argi zuria ikusiko genuke.

  • 11

    Programa berdina C Programazio lengoaian idatzi eta Arduino IDE erabiliz kargatuko dugu. Horrela blokekako programaren eta testu bidezko programaren diferentziak ikusi ahal izango ditugu. Deskargatu programa hau.

    Ondoren, abiarazi Arduino IDEa eta "Fitxategia > Ireki..." erabiliz ireki deskargatutako programa. Kodearen iruzkinetan azalpenak gehitu ditugu, lerro bakoitzak zer egiten duen ulertzeko. Sakatu Arduino IDEaren goian ezkerrean dagoen ✔ botoian klik egin programa egiaztatzeko eta azkenik eskuinerako gezia botoian programa Arduinoan kargatzeko.

    Emaitza bideo honetan ikus daiteke. Orain bai itxaron denbora txikiagotzean argi txuria ikusten da.

Materiala

  • Snap4Arduino
  • Arduino plaka bat
  • Prototipo plaka bat
  • Potentziometro bat
  • 4 hankako RGB LED bat
  • 4 ar-ar kable
  • 220 Ohm-eko 3 erresistentzia

Licencia Creative Commons

IAMETZAko edukiak kopiatu, moldatu, zabaldu eta argitaratzeko libre zara, beti ere, gure egiletza direla aitortzen baduzu eta baldintza beretan egiten baduzu.

IAMETZA INTERAKTIBOA

ZIRKUITU IBILBIDEA 2 - 1. PABILOIA
LASARTE-ORIA (GIPUZKOA)
T (+34) 943 376 716