If This Then That - Waving Paper Doll

by Linachuwu in Circuits > Arduino

311 Views, 1 Favorites, 0 Comments

If This Then That - Waving Paper Doll

20230510_191953.jpg

Dit is een project gemaakt voor HKU ITTT. Dit was mijn eerste Arduino project, en dus wilde ik het simpel houden. Ik heb uiteindelijk gekozen om een papieren poppetje te laten zwaaien als je met het poppetje interacteert. Specifiek, je moet zijn handje vasthouden, waardoor je met een lichtsensor interacteert. Hierdoor zwaait hij naar je. Hier is geen soldering voor nodig!

Supplies

Craft:

  • Mixed media papier, 1 vel
  • Potlood
  • Pennen
  • Verf
  • Plakband
  • Ijzerdraad
  • Lijm
  • Doosje
  • Uitschuifmes
  • Schaar

Elektronische componenten:

  • Arduino
  • Photoresistor
  • breadboard
  • Micro Servo 9G
  • usb charging cable
  • 1x weerstand 10kΩkΩ
  • 1x weerstand 330kΩkΩ
  • 8 male to male wires
  • 2 female to male wires

Ontwerp En Research

20230510_130551.jpg

Allereerst ben ik begonnen met een design maken, met het idee komen. Er zijn meerdere manieren om een poppetje te kunnen laten bewegen, en ook het sensor type was nog niet duidelijk.

Ik moest bedenken hoe ik een poppetje moest laten bewegen. Ik begon op te zoeken hoe dit kon. Hierdoor wist ik dat ik dit zou kunnen doen met een servo motor. Een servo heeft een signaal nodig om te beginnen met draaien. Eerst wilde ik een motion sensor gebruiken, maar dit bleek echter niet goed te werken. Met een motion sensor zou het poppetje te snel geneigd zijn om te zwaaien. Ik had iets specifieks nodig. Ik had toevallig een Arduino kit van mijn school gekocht, en hier zat een lichtsensor bij. Die heb ik gebruikt.

Een poppetje kan met meerdere manieren bewogen worden. Met touw; als de servo draait, word er aan de arm getrokken. Tenzij men naar de achterkant kijkt zou dit vrijwel een onzichtbare manier zijn om de arm te bewegen.

De manier die ik uiteindelijk heb gekozen om te gebruiken is een stokje, dit zou meer zichtbaar zijn, maar omdat ik mijn poppetje van karton of papier wilde maken, zou een stokje wat handiger zijn.

Testen

Screenshot_1.png
20230505_151332.jpg
image.png

Omdat ik niet veel wist van Arduino code, en eigenlijk programmeren in het algemeen, heb ik hulp ingeschakeld. Ik heb samen met een vriend mijn project uitgevogeld. Het was duidelijk dat wij eerst de photoresistor aan het werk moesten krijgen. In plaats van teveel in een keer te doen, hebben we eerst met een photoresistor en een LED lampje op Tinkercad gewerkt.

Toen dat werkte, hadden we het LED lampje vervangen met de servo.

Omdat ik mijn photoresistor een afstandje van mijn breadboard wilde houden, heb ik het vastgemaakt aan twee female-to-male wires.

Coderen

Screenshot_2.png

In Arduino IDE 2.0.3 is de code geschreven. Met veel externe hulp heb ik de code kunnen schrijven. Er zijn meerdere tutorials gebruikt en code hiervan overgenomen en die zijn dan aangepast om te doen wat ze moesten doen.


#include <Servo.h>


Servo servo;
int LDRInput=A0; //Set Analog Input A0 for LDR.
int LED=2;
void setup() {
Serial.begin(9600);
pinMode(LDRInput,INPUT);
pinMode(LED,OUTPUT);


}


void loop() {
int value=analogRead(LDRInput);//Reads the Value of LDR(light).
Serial.println("LDR value is :");//Prints the value of LDR to Serial Monitor.
Serial.println(value);
servo1.attach(8);

if(value<400)
  {
    digitalWrite(LED,HIGH);//The LED turns ON in Dark.
    servo.write(0); //The servo starts moving on this spot, and returns in this exact same spot too. This is adjustable.
    delay(1000); //The time before the movement turns around. This is adjustable.


    servo.write(14); // Slight movement. This is adjustable.
    delay(1000); //The time before the movement turns around. This is adjustable.
  }
  else
  {
    digitalWrite(LED,LOW);//The LED turns OFF in Light.
    servo.write(LOW);
  }
}

Het Poppetje

20230508_162547.jpg
20230508_170226.jpg
20230508_220021.jpg

Ik heb de keuze gemaakt om een karakter te maken van Genshin Impact. Dit karakter heb ik in deeltjes uitgewerkt op papier, zodat ik ze later vast kan plakken voor een 3D effect. Eerst ben ik begonnen met alle delen uitschetsen. Daarna heb ik alles ingekleurd met acrylverf. Ik had het geluk dat alles in een keer goed is gegaan, ik heb dus niet veel hoeven itereren behalve het hoofdje. Wel heb ik onnodig veel werk voor mijzelf gemaakt. Ik wilde eerst een poppetje maken waar alles bewoog, in plaats van alleen maar de arm. Dit is uiteindelijk niet gebeurd. Ik heb het hoofd terug aan het lichaam moeten plakken. De hoed is wel uitschuifbaar.

Toen ben ik begonnen met uitknippen. Ik heb delen van het poppetje aan elkaar geplakt met lijm. Andere delen hebben een verticaal of horizontale snee gekregen om de lichaamsdelen in elkaar te schuiven.

In Elkaar Zetten

20230509_084641.jpg
20230510_191958.jpg
20230510_192009.jpg

Omdat de benen plat te 2d voelden, heb ik ervoor gekozen om de benen staand in het lichaam te schuiven. Ik heb een oud brillendoosje gevonden waar mijn arduino en breadboard in pasten. De benen heb ik aan het doosje gelijmd, en aan de achterkant zijn de armen met plakband en ijzerdraad vastgemaakt zodat ze los gemaakt kunnen worden van het lichaam. Dit moet, zodat het doosje veilig open en dicht kan zonder dat draadjes in de knoop komen.

Daarna heb ik ijzerdraad vastgemaakt aan de servo, en dat ijzerdraadje vervolgens aan de bewegende arm vastgemaakt. Ik heb meerdere dingen geprobeerd, een tandenstoker, een satéprikker, touw, maar uiteindelijk was een ijzerdraadje genoeg. Het bestaat uit twee delen. Het ijzerdraadje dat vastzit aan de arm, en een die vastzit aan de servo. Hierdoor kan de arm een goede ronde beweging maken.

Verder heb ik gaten geboord zodat de draadjes door de doos heen kunnen.

Geniet!

20230510_191953.jpg

Ik heb de photoresistor vastgemaakt aan een hand, waardoor je het poppetje een hand moet geven, en dan zwaait hij.

Natuurlijk kun je het karakter vervangen met je eigen karakter! Hopelijk kun je na mijn uitleg je eigen zwaaiende vriend maken!