This is my forth in a series of projects regarding Ribbon Microphones. This time round, we're going to make an a 3-D Printed, Arduino controlled, footswitch activated Ribbon Corrugator to make corrugating a ribbon element a snap.
I made the title in this one a little more generic, since I am using a set of gears from a craft ribbon crimper, and I suspect that in addition to Ribbon microphone DIY'er, others may be interested in using it for crafting purposes.
NOTE: While this works very well, of course the moment I finish something, I immediately begin to look for areas of improvement. So, version 2.0 will be in the works in a couple of months (I want to finish my Ribbon Tuner 1st). Improvements will be a larger stepper motor (which will still require a stepper with a custom length shaft). And 1" wide gears. However, as the wider gears come at a higher cost, I'm putting this instructable up now, as a less expensive alternative. The gears used in this project are considerably cheaper, as they are $20 for two (with a diametrical pitch of 48). Where to do custom gears with a diametrical pitch of 64, and 1" wide (and one with a hub for a set screw), will likely be on the order of $40 each, and requires me to buy multiple sets. (I'll likely offer the extra sets I end up with for sale at cost, for those interested).
I worked with the folks at www.omc-stepperonline.com to work up a custom length shaft stepper (40mm shaft, with a 30mm D cut) for me. I will go ahead and reach out to them now for a version with a larger stepper motor to use in this project (while the stepper I used now, works, I think it is a little under powered). If I can get them to offer this as a stock part, I will update this instructable with the part number. Otherwise, for those interested, please message me, and I will arrange an order as I need to buy a minimum of 3 steppers from them to get the custom shaft length.
Once I get the larger gears and stepper, I will update all of the STL files and update this post.
Goals: When manually using the crafting crimping gears by hand, I noticed that if you paused at any point in corrugating the ribbon, you could see that point when later examining the ribbon. Therefore, I worried about consistency. In addition, virtually all of the ribbon corrugators I had seen, were all hand cranked. So I thought I would come up with something with a motor drive. I did this for several reasons. 1) I wanted to be able to have the motor run at a consistent speed, to help corrugate the ribbons consistently. But also, so I could actually play with the speed, to set it to something easy to work with. 2) I could set the length of time that the motor runs and 3) Most importantly, I wanted have both hands free, so I could feed the ribbon in and grab it on it's way out. So there's a footswitch to trip it.
I also wanted to design a 3-D printable frame, while it would be light in weight, it wouldn't matter as much, as you would not be hand cranking it. Also, I wanted the ability to edit the CAD file later and make adjustments for different gear sizes. For example, it would be a snap to edit the design to accommodate a wider gear or one that was larger in diameter.
I spent some time talking to some experts in the field and they tell me they are using 48 or 64 diametrical pitch gears for corrugating their ribbons. The crafting gears I have been using for these projects are 48 diametrical pitch. I'll continue my search for a suitable 64 diametrical pitch gear. But these gears are quite good.
If anyone knows of a gear manufacturer that plays well with DIY'er and making small quantities of gears, I would welcome your input.
Step 1: Parts List
Here's what you will need
- Arduino Uno
- L298N Stepper Motor Driver
- 1/4" Jack
- From my basement parts bin, and mine had a plastic shaft with a metal liner for a 12mm hole
- Some connecting wire
- 1x 1K to 10K pull up resistor for the pushbutton, I used a 10K
- Housing for footswitch, N.O. SPST switch
- I used something I had laying around in my parts bin, but you might want to just get a cheap guitar stomp box and repurpose it. Mine had a 1/4" on the box too, so I'm using a guitar cable to connect the 2 up. Albeit, you will need to replace the push on-push off switch in a stomp box with a momentary switch.
- Stepper - Here my friend Bo at http://www.omc-stepperonline.com/ made me a custom stepper with the shaft length I needed. It is a 40mm shaft with the D cut 30mm from the end.
- If he gets a bunch of requests for these, I suspect they will offer them up as a standard part. Otherwise, please contact me, and I will try to get enough folks together to make an order.
- 2x - 3mm diameter x 50mm long rod for the spring tensioning rods. I had these laying around as I had ordered them for another project, and used them.
- 1x - 1/4" Rod x 55mm - For the upper gear
- Please note, I got an aluminum rod from Home Depot, and it is a very tight fit. You want the gear to spin freely on this shaft. Therefore, you might want to 1st buy the gears, and find a rod that fits more loosely. Otherwise, you will need to sand and then polish this down. I found another rod in my junk drawer that fit more loosely and used that.
- 2x - M3 x 22mm (a max of 23mm for the threaded shaft length) - Top stepper screws
- 2x - M3 x 45mm (a max of 45mm for the threaded shaft length) - Bottom Stepper Screws
- 8x - M3 x 30mm - Body screws
- 4x - M3 x 22mm or longer - Tension adjust screws
- 1x - M3 x 8mm - screw or grub screw - stepper shaft locking screw
- 13x - M3 Nuts
- All metric nuts and screws from McMaster-Carr
- Bearing for end of stepper shaft McMaster Carr part number 7804K108
- 8x - PCB Standoffs and screws (standard motherboard standoffs and screws) I picked up a kit of these from Amazon
- While the pictures show metal PCB stand-offs, I resized the STLs for these Nylon screws. You can press them in.
- Main Body Parts (in 3 pieces)
- Gear to stepper shaft mount (in 2 pieces)
- Four 3mm end caps for the tension rods (so the springs don't pop off)
- Two 1/4" end caps for the top gear (so the springs don't pop off)
Step 2: Overview
Here's an overview of the first several steps.
- I'm using the same Ribbon Crimping gears I used in my 3 other instructables. The problem is, they have cylindrical shaft holes, without any set screw. Fortunately, they also have 4 additional holes in them, so I devised two 3-D printed parts, which you will super glue to the gear, which will be installed on the stepper. The other gear is free wheeling.
- 3-D print the two gear parts, pins point up. Use support for the one with the set screw. This uses a standard 3.5mm screw and nut.
- I used 100% infill on this.
- You will need to install an M3 Nut in the slot, and you can use either a short M3 screw or grub screw. This is the set screw to hold it to the stepper shaft.
- Test fit, trim up as needed and then super glue to one gear. Make sure you align the D-Cut for the shaft on both parts. Don't use too much glue, as you don't want to end up gluing it to the stepper shaft. There are more details in a following step.
- I tend to go overboard when 3-D printing, and I used 4 top and bottom layers, 4 shells, and 30% infill with Simplify3D. I'm sure you could do less.
- Test fit, make sure the gear easily fits into the cylindrical hole.
- This uses standard metric screws to hold the 3 parts together and to align everything.
- I increased the size of the nut holes, so the nuts should press in pretty easily. Otherwise, you can heat the nuts with a heat gun and press them into the body. Just put the nut on the end of a longer screw, heat the nut, and use the screw as your guide.
- Screw it together
- Underneath, you will find small mount holes. These are for standard motherboard standoff screws/nuts. Install the 8 needed.
Step 3: Wiring Up and Installing the Underside
As the stepper driver board draws a fair amount of current, and I wanted to use a single power connector, I just soldered some heavier gauge wire to the power connector on the Arduino Uno, and hooked it directly to the L298N Stepper driver board. I also desoldered the headers from both the Arduiono and L298N Stepper driver, and soldered wires directly between them. However, you could certainly use jumpers, I just liked this as it kept the wires short and looked neater. I also soldered the ground and control wire for the footswitch to the arduino. I used a 1/4" phone jack I had laying around for the footswitch connection. So I soldered the other ends to the 1/4" jack for the footswitch once everything was installed.
I've included a diagram of the connections in one of the photos.
Arduino Pin -------------L298N Pin
2 -------------------------- 1
3 --------------------------- 2
4 ---------------------------- 3
5 ---------------------------- 4
6 To 10K resistor and Footswitch
Gnd To other end of 10K resistor
5V To footswitch
Don't forget to wire the underside of Arduino Power connector Plus to 12V on L298N, and Ground on Arduino power connector to GND on L298N. Otherwise, the L298N won't have any power.
Once you make the connections between the Arduino and L389, you can go ahead and install them in the body to the PCB stand offs as shown. I used standard Motherboard stand offs and screws, since I had a pile of them laying around. Then install the 1/4" phone jack and wire it up. We'll wire up the stepper later.
Step 4: Installing the Lower Gear and Stepper
1st test fit the two gear mounts. They are a tight fit, as I found in the earlier versions I made, that any in-precision caused the gear to wobble, and hit the body of the case, and caused trouble with the top gear wobbling in kind.
I also made the stepper shaft holes pretty tight as well for the same reason. These are dialed in for my 3-D printer, so hopefully they will fit well for you. You may need to take an Exacto and trim the shaft holes a bit. But be careful, you really want a tight fit. If you open up the shaft hole too much, just print another (they only take like 10 minutes to print).
Next super glue the two 3-D printed parts to the one gear (make sure that the D cuts for the shaft aligns correctly on both sides), install it onto the stepper shaft. You shouldn't need to even tighten the screw as the friction should hold it in place. Test fit the stepper into the body (you should have already screwed the 3 pieces of the main body together), and make sure that the gear is centered in the ribbon slot. When looking down from the top, you should NOT be able to see any of the 3-D printed parts on either side of the gear, but only the gear. Once you are satisfied tighten up the set screw.
Install the stepper, using two long screws on the bottom, and then two shorter screws on top. Note, you will need to reach through the far side of the body with your Allen key to tighten up the top screws.
Run the 4 wires from the stepper through the hole.
Trim up the stepper wires and connect to the L298N stepper driver, following the color coding as shown in the diagram.
Step 5: Installing the Top Gear
- Tensioning screws - First insert four nuts into cut outs for them (two on each side).
- I updated the STL with a larger slot for the nut to allow it to fit better. So they should go in pretty easily.
- Then screw the tensioning screws in from the top, through the holes. You will probably need to jiggle the nuts around a bit to get them to align. Then just thread the screws in a bit.
- Next glue one end cap on each of the two tensioning 3mm rods. Set them aside for the moment.
- Next, grab the top gear, and insert the 1/4" rod through it (I used a Q-Tip with some lube to lube up the center hole of the gear, be neat, you don't want lube on the gear face). The rod needs to be around 55mm long. DON'T PUT THE END CAPS ON YET.
- You will need 4 springs (I used some that I got as part of a kit from Harbor Freight. But also found some stronger springs from Home Depot) Hang two from each end of the top gear rod, then press on the end caps.
- OK, I screwed up in the photo and cut the rod too short, and didn't have room for the caps.
- First lower the top gear into the slot, working the 2 springs through the cavity next to the stepper.
- Use the end of one of the tensioning rods, to grab one end of the spring, and then run the tensioning rod through the side slot. Repeat with the other tensioning rod.
- Now the stepper side springs should be installed.
- now grab a spring on the other side, and loop it onto the free end of the tensioning rod, and put the cap on. Repeat for the other tensioning rod.
Step 6: Footswitch
Here, I went to my junk box, and found an ancient footswitch I made ages ago for a punch in/out switch for some old recorder I had (It literally is more than 20 years old, how about that for being a hoarder). All you need is a momentary switch (normally open)
Wire the switch up to a 1/4" plug, and you are done.
I found a really nice 3-D printable stomp box on Thingiverse, but I would also recommend hitting up the Guitar Center or Musicians Friend websites or store. You can find tons of both new and used guitar stomp boxes for $10 with a nice sturdy case, and heavy duty switch. It makes it hard to buy a box, drill it, and then buy a switch, when you can get one so cheap to salvage for this. They will also have built in 1/4" jacks, so you can use a cheap guitar patch cable (of which I also have a pile laying around) so you don't have to have a wire permanently hanging off of the box.
However, if you use a stomp box, you will need to replace the push on/off switch with a momentary N.O. switch.
Step 7: The Code for the Arduino
The code is attached and very simple. I stole virtually all of it from various Arduino examples, modified it for the pins I used, and threw in some comments.
This uses the standard Arduino stepper library. Please note, I have come across some other code and libraries, which offer other features, such as using a sine wave to drive the stepper driver, which is supposed to provide more torque. If I find one of these other methods better, I will update this instructable.
The foots switch trips it, and it runs for a preset duration (based on a number of steps. The stepper makes a full rotation in 200 steps, and the gear is 1" in diameter, that's 3.14" per revolution, I just kept it simple and made it run for 400 steps (6.28"). I initially accepted the default speed of 60 RPM from the sample code, and found it way too fast, and knocked it down to 10 RPM. You can adjust for taste.
Lastly, once it is finished its rotation, I turn off the stepper entirely. Otherwise, it would remain powered holding the gear in place, which would end up heating up both the Stepper and stepper driver a bunch.
You can play with any of these settings.
Just be sure to run the Arduino from a 12V DC power supply. I used a 2 amp wall wart from an old USB drive.
If you want to use this for crafting longer strips of paper, you will need to edit the code to where it runs longer for each footstep hit, or just keep the foot switch pressed, and it will loop.
Step 8: You're Done - Give It a Try - What's Coming Next
You probably will want to just try some kitchen foil in a paper carrier to test it out and get the spring tension right. The tension needs to be pretty firm. But too tight, and you will stall the stepper (hence why I'm getting the larger model). Just play with the tensioning screws and different springs to dial it in for yourself.
But always use a thin paper carrier like parchment paper to hold the ribbon, otherwise the foil will wrap around the gear.
If you are just using this for crafting, then paper by itself is fine.
This was a fun project for me, and I'm getting better at my CAD skills.
I hope you enjoy it.
Next project up will be an automated ribbon tuner. That's going to take some time, as I need to think about how to make it handle as many different ribbon motor trusses as I can, using interchangeable carriers.