Öppen Låda

Öppen Låda är en låda programmerad med öppen källkod, och som innehåller öppen hårdvara. Och just det, den öppnas när du knackar på den.

Material


  • 1 Arduino Uno
  • 1 Education-sköld
  • 1 kopplingsdäck
  • 1 piezohögtalare
  • 1 standardservo
  • 1 1M ohms resistor
  • 3 labbkablar
  • 1 9V-batteri
  • Öppen Låda- kit
  • Maskeringstejp
  • Tråd

Instruktioner

  1. Fäst skölden på Arduinons ovansida.
  2. Koppla en 1M ohms resistor till analog ping A0 och GND via ett separat kopplingsdäck.
  3. Koppla en piezohögtalare över kopplingsdäckets mittengap, koppla ett ben till A0 och det andra till GND.
  4. Montera lådan, men lämna lådans baksida omonterad.
  5. Vrid på servo-armen för hand åt ett håll, så långt det går. Vrid den sedan därifrån till 90 grader. Ta loss armen och sätt tillbaka den så att den går längs med servon.
  6. Knyt en tråd till servon. Trä den igenom hålet på mittplattan och knyt den andra änden till locket.
  7. Koppla servon till D9.
  8. Placera Arduinon på insidan på lådan. Tejpa piezon på lådans innervägg.
  9. Koppla Arduinon till datorn och ladda upp exemplet ’OpenBox’. Knacka på piezon för att vara säker på att servon rör på sig.
  10. Koppla 9V-batteriet med en strömkontakt till Arduinons strömkontat innan du monterar resterande väggar.

Kod

Hitta koden File>Examples>EducationShield>Block4-Robots>Projects>OpenBox

Så här fungerar det

  • EducationShield- och Servo-biblioteken inkluderas.
  • PiezoKnockSensor- och Servo-objekten deklareras, sensor och lidOpener.
  • I setup() konfigureras och initialsieras sensorn och servon.
  • Servons position sätts till 60 grader så att locket stängs.
  • I loop() kollas om sensor.knocked() är true. Det betyder att en knackning upptäckts, och servons position sätts då till 0 grader för att öppna locket.
  • Programmet pausas i 3000 millisekunder så att locket hålls öppet.
  • Servons position sätts till 60 grader så att locket stängs.
  • Programmet pausas i 200 millisekunder.
  • Om en knackning inte upptäcks händer ingenting.
  • loop() fortsätter upprepas.

Lär genom att göra

  • Gör så att lådan endast öppnas om man knackar i ett visst mönster.
  • Om locket inte stängs eller öppnas fullt kan du testa med att justera värdena i write(). Men justera först tråden och den fysiska vinkeln på servons arm.
  • Om lådan inte gör någonting när du knackar, se referenssidan för knacksensor.
  • Om det fortfarande inte fungerar, se referenssidan för standardservo.
  • Var säker på att batteriet har kopplats ordentligt så att LED:n markerad “ON LED” på Arduinon är tänd. Testa med Arduinon kopplad till datorn utan 9V-batteriet. Om det fungerar med USB-kabeln men inte med batteriet, kan det vara något som är fel med batteriet. Byt batteri.

Learn by doing

  • Make a password knock by setting it to recognize only a certain knock pattern.
  • Modifiera så att det krävs en knackning både för att öppna och stänga lådan, istället för att den stängs automatiskt.