Dancing Origami Girls

by SayaNIGHT in Circuits > Arduino

2190 Views, 28 Favorites, 0 Comments

Dancing Origami Girls

IMG_9271 1.jpg
Dancing Origami Girls
DSC07783.JPG

Three colorful girls have taken a big step forward as a new dance unit. Their unit name is 'Dancing Origami Girls'. This is the story of their incredible journey from simple papers found in the aisle at Target to their debut.

Supplies

supplies.jpg

Electronic Parts

  1. MCU: M5StampS3 (M5Stack) (×1)
  2. M5StampS3 BreakOut (M5Stack) (×1)
  3. Micro servo motor: SG90 (Miuzei) (×6)
  4. Continuous rotation micro servo: FS90R (FEETEC) (×1)
  5. WS2812B LED strip light
  6. 1.5" 4 Ω 3 W speaker (×1)
  7. DFPlayer mini MP3 player (×1)
  8. USB-C socket breakout (×1)
  9. Power switch: slide, SPDT (×1)
  10. Momentary push button switch (×1)
  11. 20kΩ potentiometer and its knob (×1)
  12. Discrete Semiconductor parts: resistors 4.7 kΩ (×2), 10 kΩ (×1); diode 1N4148 (×1); NPN transistor 2SC1815 (×1)
  13. Pin headers and sockets
  14. Universal PCB (×1) and wires (depending on wiring)

Mechanical Parts

  1. Φ1mm Steel Round Rods (×1)
  2. Screws: M2 × 6 mm with nuts (×2), M2 × 8 mm with nuts (×2), M2 × 10 mm with nuts (×12), M2.5 × 6 mm with nuts (×12), M2.5 × 8 mm with nuts (×10)
  3. Rubber band (×1)
  4. Astrobrights Colored Paper (for the cranes)
  5. Metallic Foil Paper (for the crane clothes)

Tools

  1. 3D printer: Flashforge Adventurer 4 (Filament: black, white and clear PLA)
  2. Screwdrivers
  3. Soldering tools
  4. Pliers
  5. Acrylic paint tools
  6. Tape
  7. Super glue
  8. Hot glue gun
  9. Hair Dryer

Software

  1. Visual Studio Code with PlatformIO IDE (Arduino)
  2. Autodesk Fusion
  3. AI music generator Udio

Birth of Three Girls (Folding Papers)

members.jpg
FoldingOrigami1-3.gif
FoldingOrigami1-4.gif
FoldingOrigami1-5.gif
FoldingOrigami1-6.gif
FoldingOrigami1-7.gif
FoldingOrigami1-8.gif

To produce for the Dancing Origami Girls, I aimed to blend various cultures: the new and the old, Japanese and American. Bright colors were chosen, which are different from traditional Japanese images. And the concept is a 1970s disco-style girls trio.

Here I will show you how to fold a crane with legs. I'm not sure who started folding it, but it is a fun variation of the classic crane origami. RNmaster shows a great instruction (How to Make a Paper Crane) for the classic version. Folding a crane with legs follows the exact same as Steps 1 to 10 in the classic instruction. However make legs instead of a tail. The attached GIF animations show the Steps 1-3 to 1-8 below.

  1. Cut three bright-colored papers to 15 × 15 cm (5.9 × 5.9 in).
  2. Follow steps1 to10 in the classic one's instruction.
  3. Fold the head side.
  4. Cut the tail side to make the legs.
  5. Fold the hip joints.
  6. Fold the knee and ankle. The length from hip to knee should be approximately 3 cm.
  7. Fold the knee and ankle of the other leg.
  8. Spread the wings.
  9. Name them! The pink girl is Paula, the yellow girl is Yoko, and the blue girl is Barbara!

Making Their Own Stage Parts (3D Printing and Painting)

printingTable.jpg
painting.jpg

The models were designed using Autodesk Fusion.

Print all parts according to the attached table, which provides the number of parts to print, the filament colors, and the painting information. All holes for screws and nuts are designed to require no supports. If your slicer generates supports for the holes, delete them before printing to reduce the effort required to remove supports.

The thickness of the stage truss parts is only 0.8 mm. So please note to set the layer height to a smaller value, such as 0.1 mm. The other parts were printed with my normal layer height 0.2 mm.

The attached picture shows the stage trusses and the button cover before and after painting.

Making the Stage Electrical Equipment (Soldering and Wiring)

schematic.jpg
wiring.jpg

The schematic diagram is attached. For this project, I used my current favorite MCU, the M5StampS3 featuring an Espressif ESP32-S3 chip. Its operating voltage is 3.3 V, while the DFPlayer mini operates at 5 V. Therefore, a level shift is needed to connect them. The resistor R1-R3, diode D1, and transistor Q1 in the schematic are necessary for the level shift between 3.3 V and 5 V. The potentiometer RV1 is used to control the speaker volume. The push switch SW2 is used to start and stop the dance. The six servo motor M1-M6 are for moving the legs. The rotation servo motor M7 is used to rotate the disco ball.

Wire all the electronic components according to the schematic diagram. Here’s how I approached it, though other methods would also work well. The numbers in the attached figures correspond to the steps below.

  1. USB-C Module and Power Switch Wiring
  2.  Solder and connect the USB-C module and the power switch via wires to a two-pin socket.
  3. Push Switch Wiring
  4. Solder and connect the push switch via wires to a two-pin socket.
  5. Potentiometer Wiring
  6. Solder and connect the push potentiometer via wires to a three-pin socket.
  7. Speaker Wiring
  8. Solder and connect the speaker via wires to a two-pin socket.
  9. Disco Ball LED Wiring
  10. Cut one LED from the LED strip.
  11. Solder and connect the RGB LED (D66) via wires, and connect the VDD line, GND line, and DIN to a three-pin socket. 
  12. LED Strip Wiring
  13. Cut out two strips of 32 LEDs.
  14. Solder and connect the two strips via wires.
  15. Solder and connect the VDD line, GND line, DIN of the D2 LED, and DOUT of the D65 to a four-pin socket.
  16. Main Board Soldering
  17. Solder the DFPlayer mini and M5StampS3 onto a universal PCB and wire all discrete semiconductor parts. When reusing the parts, use headers and sockets.
  18. Solder the pin headers for the sockets wired in the previous processes 1-6 and the seven servo motors.
  19. Cover the back side of the main board with tape to protect against shorts.

Composing Their Debut Track

udio1.jpg
udio2.jpg
udio3.jpg

Unfortunately, I had no knowledge of composing music, so I tried using the AI music generator Udio for their debut track. It was my first time to use an AI music generator. I was surprised at how natural the music generated by Udio sounded and how easy it was to create. Here are the basic steps I took. The numbers in the attached figure correspond to the steps below.

  1. Visit Udio's website, sign up if you don't have an account, and sign in.
  2. Click the 'Create' in the left menu.
  3. Enter some keywords or sentences to describe your music. I used some key words such as '1970s', 'disco', 'dance', 'trio', and 'girl group'.
  4. Choose the 'Instrumental' radio button in the 'Lyrics' section because I didn't want the music to include vocals.
  5. Click the 'Create' button, and two pieces of music will be created in a few minutes. I generated several pieces as changing the keywords until I found one I liked. The music generated here is about 30 seconds long and represents the middle part of the track. Next, you'll need to create an intro and outro part.
  6. To add the intro part, click 'Library' in the left menu.
  7. Hover over the music you want to add the intro part, and click the 'Extend' button.
  8. Enter some key words.
  9. Choose the 'Instrumental' radio button in the 'Lyrics' section.
  10. Choose the 'Add Intro' radio button in the 'Extension Placement' section.
  11. Click the 'Extend' button and two extended versions will be created in a few minutes.
  12. After creating a piece you like, repeat processes 7 to 11 to add the outro part. Be sure to choose the 'Add Outro' radio button when repeating process 10.
  13. Download the music you like.
  14. The all music I created ended with fade-out, which I didn't prefer. You might be able to edit more precisely after upgrading your account on Udio. But this time I trimmed the fade-out part and added an echo effect to finish naturally using video editing software.
  15. Create a folder named 'mp3' on the micro SD card, and store the music file named 001.mp3 within it. Then, insert the micro SD card into the DFPlayer mini.

Downloads

Arranging the Performance (Coding)

coding.jpg

My code was written using PlatformIO. Therefore a PlatformIO environment is required to use the code directly.

Download the code from the GitHub repository, and upload it to the M5StampS3.


You might need to adjust the SM_B_STOP variable in the main.cpp file. A rotation servo motor FS90R stops normally when the variable is set to around 90, but it depends on your FS90R motor. If your FS90R motor doesn't stop, try changing the SM_B_STOP variable. In my case, it is set to 85.

const int SM_B_STOP = 85; // The stop degree is normally 90 deg but adjust with your FS90R.


The choreography consists of a combination of five poses: stand, squat, lean to the right, lean to the left, and stretch. These poses are achieved by changing the angle of the servo motors connected to the legs. To sync with the music composed in step 4, the code change the poses each 924 milliseconds.

Stage Building 1 (Stage Plate Assembly)

Assembly1.jpg
  1. Cut the rod to about 12 mm with pliers and make six of these.
Caution: when cutting, pieces may fly off, so I recommend wearing eye protection. In addition, making a notch with pliers and then breaking it can prevent pieces from flying off.
  1. Insert the rods made in the previous process into the holes of the stage and the leg links using pliers, and connect them. Please make sure the orientation of the leg links is as shown in the picture.
Caution: The tip of the Φ1mm rod is sharp. Be careful not to cut yourself with the tip.
  1. Assemble a total of three stage plates jointed with the leg links.

Stage Building 2 (Stage Base Assembly)

Assembly2.jpg
  1. Attaching the SG90 servo motors
  2. Insert two M2 nuts into the two nut holders on one of the stage base.
  3. If the nuts fall off easily, temporarily tape them in place.
  4. Attach the two SG90 servo motors on each stage base and fasten them with two M2×10 mm screws.
  5. Repeat the process to attach the servo motors to the other two stage bases.
  6. Jointing the stage bases
  7. Join the tree stage bases with four M2.5×6 mm screws and nuts.
  8. Attaching the LED strips
  9. Attach the two strips of 32 LEDs wired in Step 3 on the stage bases. The LED strips have adhesive tape on their backs.
  10. Pass the wire through the hole at the edge of the stage base L.

Stage Building 3 (Stage Floor Assembly)

Assembly3.jpg
  1. Connect the six SG90 servo motors to the main board made in Step 3 and power on to set the motors to their initial position (90-degree angle).
  2. Cut the six motor horns included with the SG90 servo set motors as shown in the picture.
  3. Attach the cut motor horns into the motor bars, assembling a total of six pieces.
  4. Attach the combined motor horn to the SG90 servo motor with the motor horn screw included with the SG90 servo set. Please note the motor bar is the lowest position as shown in the picture.
  5. Similarly, attach the bars to the other five servo motors.
  6. Attach the stage plates assembled in step 6 on the stage bases. Please make sure that each motor bar is positioned between the separated area of each leg link. You can correct the position using tweezers after attaching the stage plate.

Stage Building 4 (Disco Ball Unit Assembly)

Assembly4.jpg
  1. Attach the retaining ring to the disco ball. Please make sure that the orientation of the retaining ring is as shown in the attached figure.
  2. Sandwich the ball holder between the ball pulley and the disco ball, then insert the disco ball into the ball pulley until you hear it click. Please note the orientation of the ball pulley: the flat side is the top, and the other side is the disco ball side.
  3. Make sure the disco ball rotates smoothly.
  4. Attach the FS90R servo motor to the ball holder with two M2×8 mm screws and nuts. Insert the screws from the bottom side.
  5. Enlarge two holes of a motor horn included with the FS90R servo set with a 2 mm drill bit.
  6. Attach the motor pulley to the motor horn with two M2×6 mm screws and nuts.
  7. Attach the motor horn combined with the pulley to the FS90R servo motor with the motor horn screw included with the FS90R servo set.
  8. Stretch a rubber band around the ball pulley and the motor pulley to link them.

Stage Building 5 (Stage Panel Assembly)

Assembly5.jpg
  1. Attach the ball unit assembled in step 9 to the panel-C with two M2.5×6 mm screws and nuts.
  2. Attach the wired push switch to the switch holder and fix it using hot glue.
  3. Attach the potentiometer to the switch holder with the washer and nuts included with the potentiometer set using pliers or a spanner.
  4. Attach the switch holder and the speaker holder with the wired speaker to the panel-L with two M2.5×8 mm screws and nuts.
  5. Join the three panels with four M2.5×8 mm screws and nuts.
  6. Insert the six M2.5 nuts into the back side of the stage bases assembled in step 8. If the nuts fall off easily, temporarily tape them in place.
  7. Attach the joined panels to the stage bases with six M2.5×6 mm screws.

Load-in the Stage Electrics (Electronics Component Installation)

Assembly6.jpg
  1. Attach the wired USB-C module to the base-L.
  2. Attach the wired power switch to the base-L and fix it using hot glue.
  3. Place the main board made in step 3.
  4. Connect all electronics components' connectors to the main board.
  5. Place the wired disco ball LED inside the disco ball.

Stage Building 6 (Attaching Cover)

Assembly7.jpg
  1. Insert four M2.5 nuts into the bases.
  2. Attach the back board-L with two M2.5×8 mm screws.
  3. Attach the back board-R with two M2.5×8 mm screws.
  4. Insert the top board-C.
  5. Insert the top board-R
  6. Insert the top board-L
  7. Attach the volume knob to the potentiometer.
  8. Attach the button cover to the push button.

Stage Building 7 (Attaching Stage Truss)

Assembly8.jpg
  1. Bend the stage truss-C using a hair dryer. Applying heat with a hair dryer will help maintain the curved shape.
  2. Attach the stage trusses to the stage panels using super glue.

Finally, the stage is complete!

Stand on the Stage (Attaching Cranes)

Assembly9.jpg
  1. Attach the legs of the cranes made in step 1 to the leg links with tapes.
  2. Stick the wings together using glue.
  3. To hide the leg links, make hems for the pants like bell bottoms using metallic foil papers.
  4. Attach the hems to the legs with glue.

Make a Live Concert!

Now you're ready for a live concert! Turn off the lights in your room and enjoy the show!