Shadow Theatre: 3 Hakbang (na may Mga Larawan)
Shadow Theatre: 3 Hakbang (na may Mga Larawan)
Anonim
Shadow Theatre
Shadow Theatre

Ang itinuturo na ito ay magpapakita kung paano lumikha ng isang pangunahing shadow teatro gamit ang mga sumusunod na supply. Para sa aking aplikasyon gumawa ako ng isang bangka na tumba sa mga alon ngunit may ilang mga bahagyang pagsasaayos, maaari kang gumamit ng anumang mga hugis / bagay na nais mong likhain ang anumang eksenang nais mong magkaroon.

- Arduino Uno Kit

- 3D printer at software ng disenyo

-9 Boltahe Baterya

-ARANG tatanggap

- Mga LED

- (https://www.amazon.com/6000K-6500K-600mA-700mA-Int…)

- Mga Servo Motors

- Breadboard

- Kopyahin ang Papel

Hakbang 1: Disenyo

Disenyo
Disenyo

Gumamit ng isang programa tulad ng solidworks o imbentor upang idisenyo ang mga bahagi na nais mo, sa aking kaso ang bangka at alon, kasama ang mga extruded na notch upang mai-mount ang mga ito sa mga braket upang mai-attach sa iyong mga motor na servo.

Upang makuha ang linear na pahalang at patayong paggalaw na gusto ko, gumamit ako ng isang dalawang bar system na nakakabit sa servo kasama ang isang gabay na rail na hugis tulad ng isang T na umaangkop sa isa pang hugis na T na ipasok sa mga piraso ng bangka at alon.

Ang naka-print na mga braket na 3D ay maaari ding mabago sa laki at akma ngunit ang isang bagay na dapat tandaan ay ang diameter ng mga butas ay dapat magkasya ang bawat isa sa isa't isa at papunta sa servo motor. Para sa aking mga servos at application, lahat ng mga butas ay may diameter na 5mm. at ang mga riles ng T ay 1mm na mas maliit ang lapad kaysa sa insert na inilaan nila.

Pagkatapos ng pag-print, ang ilang mga light sanding at pag-file ay maaaring kailanganin upang magkaroon ng maayos na pag-angkop at mga gumagalaw na bahagi.

Hakbang 2: Assembly

Assembly
Assembly

Ang paglalagay ng lahat ng iyong mga bahagi ay susi para sa proyektong ito dahil kung wala ang mga ito sa tamang posisyon, hindi magiging wasto ang iyong projection ng anino.

Magsimula sa pag-mount ng iyong screen, gumamit ako ng isang maliit na sheet ng kopya ng papel sa pagitan ng isang naka-print na frame na 3D na idinisenyo upang magmukhang 2 haligi at isang pediment.

Susunod na mai-mount ang iyong humantong malaya (para sa mga pagsasaayos sa hinaharap). Para sa LED na nai-mount ko ito sa labas sa pamamagitan ng pagkonekta nito sa ilang mga wire ng lumulukso at pagkatapos ay sa 9 Volt na baterya, ngunit maaari mo itong gawin nang isang hakbang sa karagdagang at isama ito sa arduino upang hindi mo manu-manong alisin ang mga kable upang lumiko ang ilaw ay nakabukas at patay.

Kapag ang parehong LED at screen ay nakalagay, iposisyon ang iyong mga gumagalaw na bahagi sa pagitan ng dalawa upang makuha mo ang perpektong projection na iyong hinahanap, at pagkatapos ay ma-secure mo ang iyong mga servo sa lugar upang mapanatili silang lumipat (Gumamit lang ako ng superglue).

Mula sa puntong ito ilagay lamang ang iyong mga wire, arduino, breadboard, at IR receiver saanman hindi sila makagambala sa ilaw at tapos ka na.

Hakbang 3: Pag-coding

# isama

# isama

#define play 0xFFC23D

int oscillate = 0; int RECV_PIN = 11; // IR receiver pin

Servo servo;

Servo servo2;

int val; // rotation anggulo pos;

bool cwRotation, ccwRotation; // ang mga estado ng pag-ikot

IRrecv irrecv (RECV_PIN);

mga resulta sa pag-decode_resulta;

walang bisa ang pag-setup ()

{Serial.begin (9600);

irrecv.enableIRIn (); // Simulan ang tatanggap

servo2.attach (7); // pangalawang servo pin

servo.attach (9); // servo pin

}

void loop () {if (irrecv.decode (& mga resulta)) {

Serial.println (mga resulta.value, HEX);

irrecv.resume (); // Tanggapin ang susunod na halaga

kung (results.value == play || oscillate)

{

oscillate = 1;

servo.write (5); // sabihin kay servo na pumunta sa posisyon sa variable 'pos'

servo2.write (5);

pagkaantala (400); // naghihintay para sa servo na maabot ang posisyon

servo.write (50); // sabihin kay servo na pumunta sa posisyon sa variable 'pos'

servo2.write (50);

pagkaantala (400); // naghihintay para sa servo na maabot ang posisyon

}

}

}