Projektas #1: ?junkite ir išjunkite šviesos diodus pagal švies?

Sukurkite program?, kuri ?jungs ir išjungs šviesos diodus pagal analogini? šviesos jutikli? aptinkam? švies?.

SUD?TINGUMO LYGIS: Pradedantiesiems.

PRATIMO TRUKM?:  20 min.

MEDŽIAGOS::

  • 1 žalios spalvos šviesos diodas
  • 1 Raudonos spalvos šviesos diodas
  • 2 Analoginiai šviesos jutikliai
  • 1 Kompiuteris

„Code & Drive“ robotas mašina tur?s b?ti sukonstruotas pagal instrukcij? vadov?.

Kas yra šviesos diodas?

LED yra švies? spinduliuojantis diodas, kuris j? spinduliuoja, kai per j? teka elektros energija. Jame yra anodas ir katodas. „LED“ yra tarptautin? švies? spinduliuojan?io diodo santrumpa.

Kas yra analoginis šviesos jutiklis?

Analoginis šviesos jutiklis yra rezistorius, kuris kei?ia savo elektrin? varž?, priklausomai nuo jam tenkan?io šviesos kiekio. Jis taip pat gali b?ti vadinamas fotorezistoriumi.

JUNGTYS:

  1. Prijunkite šviesos jutiklius prie analogini? kontakt? A0 ir A1.
  2. Prijunkite šviesos diodus prie skaitmenini? kontakt? 9 ir 10.

PROGRAMOS KODAS

Galite atlikti š? projekt? naudodami „Arduino“, „Bitbloq“ arba kit? suderinam? vaizdin? programavimo programin? ?rang?, naudojan?i? blokus. Toliau pateikiamas reikiamas kodas.

„Arduino“ kodas

  1. Parsisi?skite ir ?diekite „Arduino IDE“ program?. Ji si?loma „Windows“, „Mac OS“ ir „Linux“.
  2. Paleiskite „Arduino“ program? ir nukopijuokite ? j? toliau pateikt? program?:
    int PinSpeedMotorA = 5, PinSpeedMotorB = 6; // DIGITAL PIN FOR THE MOTORS SPEED
    int PinLED1 = 9, PinLED2 = 10; // DIGITALPIN LED1 AND LED2
    int PinLight1 = A0, PinLight2 = A1, ValueLight1 = 0, ValueLight2 = 0;
    void setup() {
      // put your setup code here, to run once:
      // CONFIGURATION OF THE DIGITAL PINS
      pinMode(PinSpeedMotorA, OUTPUT);
      pinMode(PinSpeedMotorB, OUTPUT);
      pinMode(PinLED1, OUTPUT);
      pinMode(PinLED2, OUTPUT);
      // MOTORS SPEED A 0
      analogWrite(PinSpeedMotorA, 0);
      analogWrite(PinSpeedMotorB, 0);
    }
    void loop() {
      // put your main code here, to run repeatedly:
      ValueLight1 = analogRead(PinLight1); // SAVE THE VALUES OF THE LIGH SENSOR 1
      ValueLight2 = analogRead(PinLight2); // SAVE THE VALUES OF THE LIGH SENSOR 2
      if ((ValueLight1<400)&&(ValueLight2<400)) /IF THE LIGHT SENSORS DETECT VALUES LOWER THAN 400
      {
        digitalWrite(PinLED1, HIGH);// LED1 = ON
        digitalWrite(PinLED2, HIGH);// LED2 = ON
      }
      else // IF THE LIGHT SENSORS DETECT VALUES HIGHER THAN 400
      {
        digitalWrite(PinLED1, LOW); // LED1 = OFF
        digitalWrite(PinLED2, LOW); // LED2 = OFF
      }
    }
    
  3. Sukonfig?ruokite ir ?kelkite kod? vadovaudamiesi instrukcijomis pateiktomis Code & Drive“ roboto mašinos pirm?j? veiksm? vadove
  4. Kad kod? ?keltum?te teisingai, ?sitikinkite, kad „Build & Code 4in1“ plokšt?s BTL/USB jungiklis yra teisingai nustatytas ? USB pad?t?.

Kodas vaizdinio programavimo programinei ?rangai naudojan?iai blokus

  1. Parsisi?skite ir ?diekite program?.
  2. Paleiskite programin? ?rang? ir nukopijuokite toliau pateikt? kod?. Naudokite š? paveiksl?l? kaip vadov?:
  3. Sukonfig?ruokite ir ?kelkite kod? vadovaudamiesi instrukcijomis pateiktomis Code & Drive“ roboto mašinos pirm?j? veiksm? vadove.
  4. Kad kod? ?keltum?te teisingai, ?sitikinkite, kad „Build & Code 4in1“ plokšt?s BTL/USB jungiklis yra teisingai nustatytas ? USB pad?t?.

„Bitbloq“ kodas 

  1. DParsisi?skite „Bitbloq“ ir ?diekite „Web2board“ program?l?.
  2. Paleiskite programin? ?rang? ir nukopijuokite toliau pateikt? kod?.
    • Aparatin? ?ranga

    • Programin? ?ranga

  3. Sukonfig?ruokite ir ?kelkite kod? vadovaudamiesi instrukcijomis pateiktomis Code & Drive“ roboto mašinos pirm?j? veiksm? vadove
  4. Kad kod? ?keltum?te teisingai, ?sitikinkite, kad „Build & Code 4in1“ plokšt?s BTL/USB jungiklis yra teisingai nustatytas ? USB pad?t?.

PRATIMO REZULTATAS:

Ant jutikli? patekus šviesai, jie gaus vertes mažesnes nei 400 ir šviesos diodai ?sijungs. Kai šviesos jutikliai aptinka vertes didesnes nei 400, šviesos diodai išsijungia.