Descripció: Construïm un semàfor amb una barrera
Temps estimat: 120'
Dificultat: fàcil
Edat recomanada: Totes les edats (els més petits necessitaran ajuda amb l'estructura de paper)
Material: Cartolina, plantilla impresa, celofán verd i vermell, tisores, cinta adhesiva, pega, 2x LED, miniservo, placa Arduino Uno, piles i portapiles 9v. Opcional polsador i ultrasons.
Objectius: Iniciació a la robòtica amb un material modelable i personalitzable.

  

  

Desenvolupament


1. Retalla la plantilla o dissenya el teu propi semàfor. Doblega el paper per totes les línies que trobis. Els rectangles blancs de la barrera serveixen per reforçar l'estructura. S'han de doblegar cap a dintre.

http://diwo.bq.com/wp-content/uploads/2015/04/Sem%C3%A1foro-Plantilla11.jpg

2. Retalla un quadre de celofàn i enganxa'l amb pega a la part interior del semàfor

http://diwo.bq.com/wp-content/uploads/2015/04/Foto-pegado-celofan-re.jpg

3. Fixa els leds amb cinta adhesiva a les parets oposades al paer de celófan .

4. Uneix el pal amb la caixa principal i la base.

5. Doblega i enganxa la caixa de la barrera. 

http://diwo.bq.com/wp-content/uploads/2015/04/Foto-barrera-TRAT800.jpg


Connexions:

  1. Miniservo al pin 7
  2. Led al pin 5
  3. Led al pin 4


    Programació

    Ens dirigim a la ide de mblock https://ide.mblock.cc i fem el següent programa:

    1. Escollim la targeta Arduino Uno
    2. Fem el programa
    • Afegim: Esdeveniments > Quan s'engegui l'Arduino
    • Afegim: Control > per sempre
    • Afegim: Pin > estableix la sortida del pin digital 4 com alta
    • Afegim: Pin > estableix la sortida del pin digital 5 com baixa
    • Afegim: Pin > estableix el servo del pin 7 com a 45
    • Afegim: Control > espera 1 s
    • Afegim: Pin > estableix la sortida del pin digital 4 com baixa
    • Afegim: Pin > estableix la sortida del pin digital 5 com alta
    • Afegim: Pin > estableix el servo del pin 7 com a 135
    • Afegim: Control > espera 1 s

      El codi en ArdunioC

      // generated by mBlock5 for <your product>
      // codes make you happy

      #include <Arduino.h>
      #include <Wire.h>
      #include <SoftwareSerial.h>
      #include <Servo.h>

      Servo servo_7;

      void _delay(float seconds) {
        long endTime = millis() + seconds * 1000;
        while(millis() < endTime) _loop();
      }

      void setup() {
        pinMode(4,OUTPUT);
        pinMode(5,OUTPUT);
        servo_7.attach(7);
        while(1) {
            digitalWrite(4,1);
            digitalWrite(5,0);
            servo_7.write(45);
            _delay(1);
            digitalWrite(4,0);
            digitalWrite(5,1);
            servo_7.write(135);
            _delay(1);

            _loop();
        }

      }

      void _loop() {
      }

      void loop() {
        _loop();
      }

      Carreguem el programa a la placa

      1. Copiem el codi de "vista prèvia: Arduinoc".
      2. Obrim la IDE d'Arduino.
      3. Esborrem el que hi hagi i enganxem el nostre codi
      4. Connectem la placa per USB (parem l'alimentació de la pila)
      5. Assegurem que estigui escolli el port i la placa al menú d'Eines
      6. Verifiquem el codi
      7. Pugem el codi

      Enllaços d'interès

      Compliquem el projecte?

      1. Refactoritzem el codi?
      2. Fes que la barrera sempre estigui abaixada i el semàfor en vermell, en polsar un polsador s'aixequi la barrera i el semàfor es posi en verd.
      3. Fes que la barrera sempre estigui abaixada i el semàfor en vermell, quan s'acosti un cotxe detectat per un sensor d'ultrasons s'aixequi la barrera i el semàfor es posi

      1 Refactoritzem el codi:

      Fem el codi més llegible mitjançant les funcions "endavant" i "stop":


      2. En polsar un polsador s'aixequi la barrera i el semàfor es posi en verd.

      3. Quan s'acosti un cotxe detectat per un sensor d'ultrasons s'aixequi la barrera i el semàfor es posi en verd

      Cal connectar els ultrasons amb cables separats, té 4 connectors (2 pins de control "echo" i "tri", i els 2 "gnd" i "vcc" del circuit elèctric)


      Cal afegir una extensió compatible "HC-SR04 Ultrasonic Sensor PCM"


      Última modificación: miércoles, 12 de abril de 2023, 14:24