Project: Vulcan - a Model Rocket Motor Test Stand
by Austin_Aerospace_Education in Outside > Rockets
701 Views, 8 Favorites, 0 Comments
Project: Vulcan - a Model Rocket Motor Test Stand
Project Vulcan is a model rocket motor test stand. Which means at its core it is a measuring device. It measures how much thrust a motor produces. We measure this thrust through the use of a load cell – the same type of electronic device that is in your weight scale. With this test stand the motor is placed in a downward position (with the motor exhaust coming out of the top). When the motor is ignited it presses down on the load-cell. That creates a small change in the electrical current and that change is measured and recorded. The load-cell does the same thing when you step on a scale to weigh yourself. There is a change in the current and a calculation is performed to display your weight.
There are a number of ways you can use this stand to help have a more accurate estimate of exactly how the motor will perform, resulting in more accurate simulations. You can see how various temperature and humidity changes affect the motors. This additional data can help you obtain better performance from your rocket.
Note: We have attached our Project Manual that includes more in-depth information about test stands, construction and the electronics. The manual is 186 pages in length, significantly larger than what we could include on Instructables.
Tinkercad Drawings: There are a total of six Tinkercad drawings available for this project. They are:
- Overall Design - https://www.tinkercad.com/things/5PkXrbvQFgC-aaen-rocket-motor-test-stand
- Electronics Housing - https://www.tinkercad.com/things/jjsRjP7aWB7-test-stand-individual-and-assembled-electronic-component-mounts
- Remote Head - https://www.tinkercad.com/things/gyea9P4lKON-test-stand-remote-head
- Motor Mounts - https://www.tinkercad.com/things/iWNT7Z2hdte-test-stand-motor-mount-components
- Small Parts - https://www.tinkercad.com/things/4o926bDtEKG-test-stand-small-parts
- Design Elements - https://www.tinkercad.com/things/2oOwyYvD2nV-test-stand-design-elements
SourceForge: To download the Arduino code as a single zip file, visit our SourceForge project page at https://sourceforge.net/p/project-vulcan/
Thingiverse: You can download all of the STL files for this project from our Thingiverse page at https://www.thingiverse.com/thing:6792050
Downloads
Supplies
Electronic Supplies
- Arduino MEGA2560 (I used the Elegoo clone)
- 5kg Load Cell
- HZ711 Amplifier (I used the Sparkfun version)
- MicroSD Card Adapter Reader Module
- 10mm RGB LEDs (4)
- 5mm White LEDs (4)
- 5mm Red LED (1)
- Piezo buzzer
- BME280 environmental sensor
- Real Time Clock
- 5V Relay
- 220 ohm resistors (12)
- 1k ohm resistor (1)
- TM1637 7-segment 4 digit LED display
- 16 x 2 LCD screen
- Microswitch (3)
- Pushbutton switch
- 4-slot AA battery holder
- Right angle 40-Pin male pin header connectors
- DB15 connectors and 10-foot cable
Non-electrical Supplies
- 1/2 to 3/4-inch 12" x 12" wood platform
- Black and Orange PLA+ filament
- 1.25-inch diameter PVC pipe and threaded adapter
- 18mm and 24mm motor mount tubes
- Engine blocks
- Electrical box cover
- Plastic tubing
- Brass tubing
- Alligator clips
- Heat shrink tubing
- Heat set inserts (M3)
- Stainless steel screws (M3)
- Nylon screws and nuts (M2 and M2.5)
- 2.5M nuts and bolts (for load cell attachment)
- Nylon stand offs
- Stainless standoffs and nuts (M2.5)
- Protective Wire Wrap (3/8-inch)
- Rubber feet (4)
- Felt Feet (4)
- RV camper levels (2)
Tools/Materials
- Soldering iron and solder
- Heat insert tool
- Screwdriver
- 3D printer
- 5-minute epoxy
- Blue painters tape
- Helping hands clamps
- Label maker
- Stickon Vinyl
- Orange and black paint
- Ruler, pencil
- drill and drill bits
- PVC adhesive
- Wood glue
- Clamps
Background
Rocket motor test stands have been around almost as long as rocket motors. As stated in the very name, a test stand is used to test the performance of the rocket motor. Test stands used by NASA are typically very large as they are testing very powerful rocket engines. In the attached picture you can see the very large A-1 Test Stand at the Stennis Space Center testing one of the Space Launch System RS-25 rocket engines.
There are basically two types of test stands; horizontal and vertical. The test stand at Stennis is a vertical test stand. Vertical test stands are very good at testing the rocket in the same orientation that it will be flying in. This allows for testing of the fuel tanks, pumps and other hardware in the same attitude that the rocket will be in during flight. Vertical test stands tend to be more expensive to build and maintain as they're very tall. You will probably need a flame trench as these rockets fire in a downward direction, the same as during flight.
The other test stand pictures is the J-1 horizontal test stand at the Glenn Research Center. Horizontal test stands are typically used just to test engines themselves and not the associated hardware. These stands are usually cheaper to build and maintain, and depending on the size of the stand, can even be made portable. Because the engine exhaust does not point towards the ground, there is no need for a flame diverter or trench. Horizontal test stands can often be seen in university settings as they tend to use less powerful motors and are cheaper to build and maintain.
Thrust Curves
A thrust curve is a visual representation of the motor burn. The X axis displays the time, while the Y axis displays the thrust in newtons. Attached is the thrust curve of the Estes D12 motor.
When using the test stand, the sensor results will allow you to produce a graph similar to the one attached.
The total impulse is total amount of thrust produced by the motor during the total duration of the burn. This total impulse is used to determine the class of the motor. For this reason, the letter designation is a range for the total impulse of the motor and not a specific number of newtons. For a D motor, the total impulse will be between 10.001–20.000 newtons.
Our Test Stand Objectives
The test stand we are going to build has many of the same characteristics as the larger test stands. It places the solid rocket motors in the vertical position. However, instead of the motor exhaust facing down it will face up. This stand is designed to test commercial solid rocket motors where the specific impulse and thrust curve is published by the manufacturer and have been tested and certified by the NAR. The thrust curves created by this test stand can be compared to the NAR developed thrust curves. This can be valuable when testing under various environmental conditions (such as cold winter or hot summer temperatures) and using the updated data to more accurately simulate rocket performance.
For this project our load-cell can measure up to 5 kilograms of force. This will be more than adequate for our Estes black powder A-E motors. For more powerful motors you will need a larger capacity load-cell.
I have seen other projects where the electronics are out in the open, often using a breadboard to create the project. There is no doubt that these projects work and I have found several of these that provided inspiration for this project. However, I wanted a test stand that had the look and feel of a working piece of test equipment. I also wanted the test stand to look ‘finished’ so it could be placed on a display of model rocketry objects and look like it was an actual research tool – because it is! That is why I designed the 3D printed enclosure and remote head.
This project presented a number of challenges for me, and like our previous projects I worked through each one until I had a functioning test stand. I hope that you will try this project and enjoy building it as much as I did.
Test Stand Design
I wanted to have an idea of how the test stand might look. But before I could design the test stand, I needed to design some components that were missing.
Load Cell
The first item I tackled was the load cell. A set of dimensioned drawings was available so it was a fairly simple matter to recreate it in Tinkercad. With the load cell created as a part, it was ready to be inserted into the drawing. However, there were no drawings of M4 screws or nuts available. This became the next step. Once these items were completed, I was able to attach the load cell to the base of the test stand.
PVC Fittings
Next on the list was the motor mounts and attachment plate. I needed to create the PVC connection that attaches to the plate on the load cell. I planned on using a 1.5-inch female fitting on the plate. This would allow the use of both 1.5-inch and 1.25-inch fittings. Taking careful measurements of the actual fitting, a reasonable replica was created in Tinkercad.
Looking at the attached exploded view shows that the bulk of the design is just round tubes. A helix is used to simulate the threads inside the fitting. A series of “round roof” components were used to simulate the raised edges. When combined together, the result was a satisfying facsimile of a 1.5-inch PVC fitting.
Initial Design
Tinkercad has a number of small electronic boards, including the Arduino Nano. However they do not have a Mega2560 board. Hoping I would not need to create an Arduino board in Tinkercad I did a search and found a nice ready made drawing. This was copied and imported into the test stand drawing. My initial plan was to create a simple box that would cover all of the electronics located at the test stand. I even added some warning lamps to each corner of the stand. Finally, a series of small round legs were created to raise the test stand up off the ground. Thus the initial design of the test stand is complete and I can develop a plan going forward.
Breadboard
If you look at the parts list you can see what we included in the test stand. We needed the amplifier for the load cell, a MicroSD card component for storing data. We needed a real time clock to keep the date and time of the test and times the various events that happen during the test. I wanted a warning buzzer and warning lamps, an LCD screen for messaging and an LED clock. I wanted to record environmental factors at the time of the test, and I would need a relay to fire the rocket motor as well as a power source.
I also knew I would need to have some type of remote head, as I needed to be a safe distance from the test stand. However, at this stage, I just wanted to see if I could get all the components to work together. Later I would figure out how to separate the components.
Code Development
If you download our code for the test stand, you will notice it is a collection of 45 separate "ino" files. Place all 45 files into a folder called "Test_Stand_V1.0". When you open up any single file in the folder, the Arduino IDE will open all 45 files as separate tabs. Why some many files and tabs? Because I like to break my programs down into a series of functions.
Functions
As a general rule, each tab is a separate function (there are exceptions). There are several reasons to do this. The first is it makes the main code easier to read and understand.
If you have written small Arduino programs (like the tutorials that come with the various boards) everything is contained on the main tab. If you try to do the same thing with a larger program (like this one) it becomes much more difficult to find things and keep things straight. You will be doing a lot of hunting and scrolling. One misplaced brace "}" can result in half your code being unusable. Using multiple functions helps alleviate these problems.
If you look at setup() code for the Test Stand you will see function calls like "setupLedDisplay()" or "setupFireControl()". When I review the code, I know that "setupLedDisplay()" is a function that is going to contain all the code to initiate the LED component. Similarly, "setupFireControl()" will have all the procedures needed to fire the rocket motor. If I need to know specifics about either function, I can go straight the the tab that contains that function.
The next reason I look to set my code up in this fashion is that it is easier to debug. If I am not sure where the bug is being introduced, I can simply comment out each function call and see the response. Once I see the bug appear, I now know where the issue is located, and it becomes easier to track down and correct.
The third reason I like to write my code in this fashion is that it is easier to change or modify. If I want to add some new feature, all I need to do is write the new function and call it. This is often significantly easier than writing the new feature within an existing code listing - especially if that listing is of any great length. I can also easily change the code when the new function is called. I don't have to rewrite or copy paste all the code. I simply move the function call.
The fourth and final reason I write code like this is reuse. In this project I was able to use code previously written from three different projects:
- The firing sequence, countdown timer and LED clock routines would come from the Arduino Launch Control System (LCS) project.
- To store the data that would be collected using a MicroSD card I would use the code that I developed for both Project: Icarus and The Olympus Project (this one will be posted later to Instructables).
- These two projects would also provide the base code for controlling the LED lamps located on the test stand.
I still needed to modify the code slightly in some cases, but the bulk of the work was already completed. Further, it had been tested on earlier projects so I knew it would work. This cuts down on development time tremendously.
Use of the Serial Monitor
One of the new elements (for me) was the use of the Serial Monitor for both the display of data and the input of data. Normally I use the Serial Monitor for simple debugging. Running tests, checking values of variables, etc. This time I was going to use it as a primary display and input interface. The software requires that the user enter information about the motor and other test data. The quickest and easiest way for me to code this was to use the Serial Monitor built in to the Arduino IDE.
Those of you who are good at programming, you may want to create a stand-alone program using something like Python. As for me, I'm not there yet. If you do write something up, I would to see it!
Three Data Files
In Project: Icarus and the Olympus Project, each avionics and sensor package stored their data as a single CSV (coma separated values) file on a MicroSD card. This project ended up with three data files. The first data file stores the information entered by the user about the motor and saves it as a plain text file. The second data file is a CSV file that contains the sensor data from the load cell during the firing of the motor. The third data files is also a CSV file that contains a time stamp log of events that occur in the program, starting during initialization, through test firing and finishing with the wrap up period. All three files used together give you a pretty good picture of what happened during the test.
Documentation
The final thing about the code is documentation. It is important that you include enough notes in the code that it describes what the code is doing and why. If you come back a year from now and look at the code, the notes in the code should be adequate to tell you what you were doing at the time. If you are asking yourself “Should I add a note here?” go ahead and add it. I have never heard another programmer complain that the code they were reviewing had too many comments. The common complaint is that the previous programmer didn’t add enough comments. This results in spending a lot of time trying to figure out what the previous programmer was trying to accomplish.
Another aspect of documentation is to keep a journal of notes that tracks what you wrote. This can be used to make comments on issues you ran into and how you solved them. These notes will likely be more in-depth than the notes in the code itself.
Code Complete
At this point the electronics have been tested along with debugging the code. I know that the Test Stand components will work together, and the data is saved on the MicroSD card. It is now time to start building the physical test stand.
Downloads
Test Stand Platform
For your platform, you can use any type of material you wish. When selecting a material make sure it is sturdy enough to handle the demands you will be placing on it. Also, use a materials that you find easy to work with. The most common material is probably going to be plywood or MDF. When using wood or a wood type product, consider applying some type of protectant to the top and sides of the wood. The base of our test stand was construction from scrap countertop and the sides were filled with wood putty and painted.
Warning Lamps
There are four Warning Lamp Housings, with one located on each corner of the base. The housings contain a 10mm RGB LED bulb and a 5mm white LED bulb.
The lamp housings were designed using Tinkercad. The finished design was exported as an STL file from Tinkercad. This was imported into Cura for slicing. For this print I use a layer height of 0.12mm. I chose to print it in a normal orientation. I used tree supports and this worked really well.
Adjustable Legs
The legs I used are 3-printed. The basic design for the legs came from the post "Adjustable leg Furniture" by makarov_dimas on Thingiverse (https://www.thingiverse.com/thing:6450953). He has two separate designs, as well as multiple lengths.
I initially chose the 50mm Cap and Support design. The 50mm height was selected to allow plenty of clearance for the electronics housing that would be positioned underneath the platform. I printed one leg to test the size and fit. Given my rough estimate of the electronic housing size, I decided to reduce the size of the leg and cap to 80%. This made the attachment base of the leg small enough to fit on each corner of the stand and not interfere with the electronics housing. The resulting height was reduced to about 46mm which was still tall enough to allow plenty of clearance for the electronics box.
During slicing quality was set to a layer height of 0.16mm with no need for supports. Four legs and caps were printed with the legs in black, with the caps in orange. Felt footers were attached once they were attached to the platform.
Load Cell
The final piece to be attached to the base is the Load Cell. This should be centered on the platform. To locate the center of the platform I drew and 'X' from the opposite corners. Where they meet will be the center of the board. Next I drew a line from center to the edge using an 'L' square. This is the line the load cell will be aligned with.
There are two threaded screw holes on each end of the load cell. This end with the wires is secured to the platform.
I needed a way to mount the female threaded PVC pipe to the load cell. I decided to use a standard metal electrical box cover. This would be attached to the load cell using screws. I found the center of the cover and then marked where the mounting holes would be drilled.
Motor Mount
Before mounting the PVC pipe connector to the metal plate, drill a hole on opposite sides near the bottom. This will be used to allow any ejection gases to escape.
Place the PVC connector centered on the plate. Use a pencil to mark where the outside diameter of the PVC. To permanently attach the connector to the plate, I used 30 minute epoxy. This gives me plenty of working time and provide a strong bond. Begin by using sandpaper to rough up the metal plate. This will give the epoxy something to grip in to.
Next, using the pencil mark as a guide, apply small strips of painters tape about 1/8-inch away from the line. Do this around the entire circumference of the connector. Now apply a strip of tape to the bottom of the connector, leaving about a 1/8-inch gap at the bottom. Apply the epoxy, attach the PVC mount, and then remove the tape before the epoxy begins to harden. Once the epoxy has cured the motor mount platform can be attached to the load cell.
The last item was the routing of the wires. These wires are very thin and can easily be damaged. I drilled a hole near the end of the load cell, along the same side as the load cell wires. To provide some protection for the wires, I cut a small piece of rectangular plastic tubing. It was cut at a 45 angle on each end. The wires are threaded through the tube and into the hole in the base.
To secure the plastic tube, I use 30 minute epoxy. Modeling tape is used to clean up the edges of the epoxy. Remember to remove the remove the tape before the epoxy sets.
Base Complete
This completes the primary base assembly. At this point you have what looks a bit like a test stand, with a bunch of wires hanging out. Set this assembly aside as next we begin construction of the motor mounts.
Motor Mounts
The motor mounts use PVC pipe to allow the various size motors to be used interchangeably on the test stand. If you have built a model rocket in the past and glued together a motor mount, much of this will be familiar. The motor mounts are created using a combination of PVC pipe, standard Estes motor mount tubes and engine blocks, 3D printed centering rings and motor retainers.
I made the decision early on to not use motor hooks to secure the motors in the tube. Instead I use the screw-on retainers. This also makes it easier to adapt the 3D printed rings to the PVC tubing. I found a number of screw-on motor retainers. The three files I used were
- 18mm motor retainer by Owen1975 https://www.thingiverse.com/thing:4346576
- 24mm motor retainer - part of the RTS Rocket by jgutz20 https://www.thingiverse.com/thing:5324868
- 29mm motor retainer by JMillsCabrilloHS https://www.thingiverse.com/thing:882815
I was unable to find a 13mm motor retainer so instead I took the 24mm retainer and reduce it in size to 57% in my slicer to fit the 13mm motor mount tube. The motor retainers were sliced using a 0.20mm layer height and 100% infill. They were printed with PLA+ filament.
The centering rings were created in Tinkercad, sliced using a 0.16mm layer height and 20% infill. Like the retainers they were also printed using PLA+ filament.
Motor Mount Assembly
Each motor mount has an engine block to keep the motor in place. This is glued into the engine tube using wood glue, the same way I would do it in a flying rocket. Once the block has dried in place, a fillet of glue is applied around the top of the tube and then set aside to dry.
The 3D printed centering rings are epoxied to each motor mount tube, as is the threaded sleeve for the screw on retainer.
- First epoxy the threaded sleeve in place. This goes on the opposite end from the motor block.
- Before the epoxy cures, install the centering ring that is placed directly against the sleeve.
- The second centering ring is epoxied into place at the other end of the motor mount tube, flush with the end of the tube.
- Set aside and allow the epoxy to fully cure.
To determine the length of the PVC pipe for each motor mount, I began by laying the pipe next to the motor mount. The printed PVC Straight Edge tool was slid onto the pipe and lined up to the edge of the motor mount. A line was drawn around the PVC pipe. Using a saw the PVC pipe was cut to size. Rough edges were sanded smooth.
To secure the motor mounts in the PVC pipe use 30 minute epoxy. Rotate the motor mount as you feel it entering the epoxy. This will help to evenly spread out the epoxy. Continue pushing the motor mount into the PVC tube until the centering rings are even with the ends of the tube. Wipe up any excess epoxy that is squeezed from the tube. Let this cure completely.
The final step is to epoxy the PVC motor mount tube assembly into the male PVC fitting using 30-minute epoxy. After the entire assembly is cured I used a label maker to mark the size of the motor mount tube.
This completes the motor mount tube assembly. Our next task is to design and assemble the Test Stand Electronics Housing.
Electronics Housing
Designing the electronic housing was one of the most difficult parts of this project for me. Being able to put all the electronics together on a breadboard is one thing. Thinking about how to create a housing and layout the parts in a logical manner is something completely different.
I started with an STL file of an Arduino mount that I then imported into Tinkercad. This became the basis for all of the other mounts that were created for the housing.
I needed to add a 'wall' to the front that would allow access to the USB port. This also meant I had to allow access for the power port even though it is not used with the test stand.
Individual Component Mounts
With the Arduino mount design finalized, I was able to use it as a basis to create a series of mounts for each component. To keep straight which mounts went with which components, the names were incorporated into each mount. Once the designs were completed they were 3D printed and checked for accuracy.
The Jigsaw Puzzle Design
I now had a number of individual pieces, but still no coordinated overall design. I basically had a number of jigsaw puzzle pieces.
To start determining the layout I got out a square piece of poster board to use as a base. Then I began to lay out the different components on the poster board. After moving the pieces around to see where each would fit and work best, I finally had a basic design that I thought should work.
I cut the poster board to size to make sure it would fit under the platform and between the legs - especially at the front of the platform. The user needs access to the front to attach cables and use the MicroSD card. Once we knew the housing would fit, I marked the location of each component on the poster board.
Back to Tinkercad
With the poster board layout in hand, along with a ruler, I began to transfer the individual components into Tinkercad. First I created a 'floor' the size of the poster board and same thickness as the component mounts. I added in 5 holes that would allow wood screws to hold the housing to the platform. Next came the placement of the components on the floor, based on the measurements taken earlier.
I needed access openings for wires to run through at the rear of the housing. The housing would need a cover to finish protecting the components so I copied the 'floor' and trimmed it to fit inside the four walls. I also added an opening over top of the piezo buzzer to allow the sound to escape out of the housing.
Supports for the cover and attachment points using heat inserts to allow the cover to be screwed down on to the housing. Additional supports were added around the side walls to support the entire structure.
3D Printing
The housing was printed at 0.20mm layer height. I also used tree supports around the openings in the side walls. It was printed using PLA+. The cover was sliced at 0.20mm layer height and it too was printed with PLA+ filament.
Once the print was finished I added 5 heat set inserts into the four corners and center back support. When using these inserts don't 'push' the inserts into the plastic. Instead let the heat melt the plastic and the weight of the tool will glide the insert in place.
Installing Electronics
The electrical components are secured to the housing using 2.5M nylon screws. The toughest wiring (at least for me and my big old fingers) would be soldering the connections for the DB15 connector. I used 90-degree pins to attach the wire to the Mega2560.
Battery Pack and Continuity Lamp
A battery pack is used to provide power to the igniter. I chose to use a 4-slot AA battery pack. The continuity lamp is a 5mm red LED lamp with a 1KΩ resistor. This is adequate for the Estes igniters that I tend to use. Regardless of what type of igniter you use, you will need to make sure that the resistor is adequate to prevent the igniter from lighting when power is applied.
The continuity lamp needs to be visible to the user. A lamp housing was designed in Tinkercad that matched the look of the Warning Lamp housings. The wiring for the continuity lamp and main power for ignition was run into the housing. A set of banana clips was installed on the top of the housing for the igniter wires.
Warning Lamps
The warning lights are not difficult to connect. The biggest challenge is how to keep the wires organized and contained. I ended up using 3/8-inch diameter split plastic protective wire wrap. I also used 3D printed conduit T-fittings.
Any other exposed wiring (such as the load cell wires and the igniter wires) were covered with heat shrink tubing to help protect them as well.
Platform Levels
The last thing I added to the platform is a set of RV camper levels to the side and rear of the test stand. Using the levels and the adjustable legs I can make sure that the test stand is sitting level.
Downloads
Remote Head
The remote head went through several design changes before I settled on the one that was fairly simple and easy to construct. I added support columns in the area of the buttons for added rigidity without having to print out a thick top panel.
3D Printing
The settings I use included a setting of 0.2mm layer height and an infill of 15%. When I used tree supports the results were not what I had hoped for. For my second print I used the 'Normal' support structure setting for a much better print.
The letters and edging are raised slightly in the print. I used a black Sharpie to highlight the raised edges and make things stand out.
Wiring the Remote Head
The wires from the DB15 connector are soldered to a small section of prototype board. Opposite the connections I soldered the 90-degree pins, organized according to their purpose.
The Cover
The top cover of the remote head contains the 4-digit, 7-segment LED clock, the 16 x 2 LCD screen, and the four buttons that operate the test stand.
The LED clock and LCD screen are attached to the cover using nylon screws and spacers. The Fire Button is attached to the cover using the supplied nut and washer.
The three remaining buttons are attached to a prototype board. Additionally connectors for power are soldered to the board and run to their respective nodes for the LED clock and LCD screen, as well as the ground connection for all of the buttons. A set of cables is created using jumper wires with female DuPont connectors. These connect the LED clock, LCD screen and all four buttons. The opposite ends will connect to the pins on the DB15 connector.
Connecting the Cover and Base
With the connector cables created, it is a simple matter to plug in the cables to the proper pins on the DB15 board. No need to have short cables and make things harder.
I used 2.5M stainless screws to attach the cover to the base. Make sure you don't pinch any wires between the cover and the base walls.
Test Stand Setup
When you are setting the system up, put in a fresh set of batteries. This will allow you to conduct a number of test back-to-back if desired. Next, look for an area that is fairly level. Use the adjustable legs and the platform levels to get the platform in a stable and level position. You want to make sure there are no flammable materials around. With that being said, you should still have a fire extinguisher close by should something catch fire unexpectedly.
Connections
Insert a MicroSD card into the reader. Consider using a blank card, transferring the data off the card after each test onto the local computer.
Connect the DB15 cable to the test stand, along with the USB cable. Base cable distance on the launch distance for the size motor you are using. The opposite end of the DB15 cable is connected to the Remote Head. The USB cable will attach to your computer.
Accessories
It is not uncommon to video your motor tests. You may learn even more about the motor performance by watching video of the test in slow motion. This may reveal things like huffing or uneven burning.
Conducting a Motor Test
Start by booting the computer and opening the Arduino IDE. Once the IDE is up and running, open the Serial Monitor.
Mega2560 Boot
As the Mega2560 initializes, the Serial Monitor will display the current status of each sensor as it comes on line. When the Real Time Clock is initialized it will display the current date and time on the Serial Monitor. If needed you can adjust the date and time to match the clock on your computer. With the successful initialization of all systems, the LED lamps on the Test Stand will turn green. When you are ready, press the green button to start the test procedure.
Data Entry Process
Once the green 'Start' button is pressed, the Serial Monitor will begin to ask a series of questions. They include:
- The location where the test is being conducted
- The elevation of that location
- The name of the manufacturer of the motor
- The length of the motor casing in millimeters
- The diameter of the motor casing in millimeters
- The condition of the case
- The mass of the motor in grams
I would encourage that you be consistent in your answers. For instance, if you are testing in different locations that are at different elevations, I would try to be as specific about the location as possible. If all of your tests are in your backyard, then indicating that should be adequate.
The next three questions relate to the motor designation. this includes:
- Total Impulse
- Average Thrust
- Delay Time
These figures, along with the ignition time entry, will determine how long data is collected on your motor.
The next three questions are asking about the motor composition. This includes:
- The type of propellant
- The mass of the propellant
- The lot number or manufacturer date
All of this information comes from the motor's manufacturer. It can typically be found in the data sheet that comes with the motor. This information can be used when comparing different types of propellants for efficiency.
The last two questions deal with the igniter. They are:
- Type of igniter used
- Ignition time period
There are a number of different types of igniters available to the rocketeer from a wide variety of manufacturers.
Finally you are asked how long should power be sent to the igniter. You should enter a number between 3 and 10 seconds. If you enter a number outside this range, the program will default to 5 seconds. With the information entered, the program will display on the serial monitor the length of time that data will be collected in millisecond
All of this is used to help catalog the various motors that you are testing. While the thrust curve is the main information most people are looking for from the test stand, a more complete picture of motor performance is obtained by entering in all of the data requested.
Pre-fire Process
You are now entering the pre-fire process where you will be given a checklist and asked to verify that the checklist is complete. Additionally the lamps on the test stand will turn yellow and the strobes will begin to flash.
Motor Loading Checklist
This checklist is confirming that a motor has been installed in a motor mount, that it is secured in place with a retaining ring, and that the igniter is installed. Once this checklist is complete, you would enter a 'V' (for "verified") into the Serial Monitor and press ENTER.
Motor Mount Checklist
Next we check the test stand. Look at the threaded adapter ring and make sure that it is clean and free of debris as the two openings is where the exhaust gases will escape. If these are not clear, it is possible that you could have a pressure buildup in this area..
Screw the motor mount into the threaded adapter. making sure that the mount is secure and will not become disengaged from the mount. Attach the micro clips to the igniter. Neither the clips nor the igniter leads should touch each other. The continuity lamp should now glow red.
With the checklist is complete, enter a 'V' into the Serial Monitor and press ENTER.
Test Stand Calibration
It is recommended that the calibration be conducted for each test to ensure accurate test results.
Tare
The first part of the calibration process is to get the weight of the motor setup on the test stand. The weight of the motor will be removed from the calculations so that only the force of the motor will be recorded, and not the force of the weight and the thrust combined.
Calibration Weight
Next place a known weight on the load cell itself. You may be able to place it on top of the motor mount or perhaps along the metal platform that attaches the adapter ring to the load cell. Enter the weight of this object in grams and hit the ENTER key.
Calibration Value
The software will calculate the new calibration value and display it on the Serial Monitor. The software will ask if you want to save this value to EEPROM address 0. If you enter 'Y' (for Yes) the value will be written to memory. This makes it available for later tests if desired. Remove the calibration weight.
Clear Test Stand Area
The last checklist asks you to verify four things:
- Make sure everyone is a safe distance from the test stand
- Confirm that nothing is on the test stand (like your calibration weight you forgot to remove)
- There is nothing under the load cell.
- The vent ports on the adapter ring must be clear.
Once these items have been verified, enter 'V' into the Serial Monitor and hit the ENTER button.
Motor Test Fire Process
You are now ready to conduct a test fire. The lamps on the test stand will turn red. The Serial Monitor will display an explanation of the data that will be displayed in the three columns while the engine is firing.
When you first press the Fire button down, the buzzer will sound on each second of the countdown. The LED clock will show the countdown as t-5 through t-0.
Abort
If you release the Fire button before the countdown reaches t-0 an abort will occur. This stops the firing process and no power will be sent to the igniter. You have the option to recycle the system and continue the countdown. A recycle will return to the Clear Test Stand Area section of the program. No data is lost during this process.
Motor Firing
When the countdown reaches t-0 there will be a quick recording of the air temperature, barometric pressure and humidity. Next the relay is opened and power will begin flowing to ignite the motor. Thrust data will be displayed on the Serial Monitor and recorded to the Motor Log as a CSV (Coma Separated Values) file. Once the time expires for the data collection period the motor firing is complete.
Post Motor Test Firing
The program enters a 1-minute post test safety period. The LED lamps will turn back to yellow and the strobes will continue to flash. During which no one should approach the test stand. This safety period would also be used if there was a misfire.
CATO
Following the 1-minute safety period, the program will ask if the motor suffered a CATO (catastrophic failure). If you experience a CATO, it should be reported to motorcato.org. This is the official NAR site to file a MESS (Malfunctioning Engine Statistical Survey) Report. This helps the NAR track any issues that may be affecting a specific series of lot of motors.
Case Mass
This is the weigh the empty case and should be reported in grams as were the previous reports.
Comments
The last data entry point is for comments. Because you are entering this information through the Serial Monitor, you only have a single line to write your comments.
Test Complete
The test is now complete. If you wish to conduct another test, it is recommended that you push the 'Reset' button on the remote head. This will start the entire process over again.
This concludes our Model Rocket Motor Test Stand build. This build took significantly longer than I expected, most because 'life' got in the way. Other things came along that took priority and there were times when the project set on the shelf for several months, collecting dust. Now that we have finished the build, I am very happy with how it turned out.
Updates and Changes
While this project is "ready for release" I wouldn't say it is done. Like most projects I will tinker with it to update the software, maybe try some different things with hardware and more. Any updates will be posted here and on our web site, "The Rocketry Research Journal" (https://rocketryjournal.wordpress.com/). This is part of the learning process and it is a very important part.
Another thing I do is after each project I find myself looking back and seeing things I could change to make the project better. If you are looking at making this project, keep these updates in mind as it will help make your project better than the one I built - and that's a very good thing!
Hardware Updates
Hardware updates are almost always harder to incorporate into a finished project than software updates. There are the questions of where will the hardware be mounted, are there available pins on the Arduino that can be used, will any of the current hardware need to be moved, removed, or replaced?
With those thoughts in mind, here are a few things we thought of that could be added to the test stand:
- Add temperature sensor for outside the motor case
- Add temperature sensor for exhaust gases
- Add radio link instead of DB15 cable
- Add cameras triggered by countdown
Software Updates and Changes
Software changes are easy to implement and easy to revert back if things don’t go as planned (as long as you make the changes to a copy of your program). It is one of the big advantages of software based electronic systems.
You still have to be careful with software updates. Will your change create a conflict with another section of code or piece of hardware? Is there enough memory or storage space for the updates you are considering? Will the changes result in a slow down of sensor readings, resulting in a reduction in the amount of data you can collect?
Let's look at some of the changes you might consider incorporating into the test stand software.
- Replace the Serial Monitor with a stand alone program (Python created maybe??)
- Add option for time zone (such as UTC or EDT) with the Real Time Clock
- Confirm data inputs from user are correct, and allow the user to reenter/correct the information if need be
- Allow adjustment of brightness on LCD and LED screens
- Allow the load cell to be used for weighing motors
Make the Project Yours
This project will be much more valuable to you if you try to make updates and changes to what we have presented here. Perhaps you realize there is a better way to collect the data. Maybe you find a better algorithm to process the motor data. Try it, and see how it works. If you have something that works better, let me know about it so I can incorporate it into later versions of the project.
Updates and Additional Information: The Rocketry Research Journal
For the latest updates to this project, visit our blog and web site "The Rocketry Research Journal" at https://rocketryjournal.wordpress.com. There you can find more information on model rocketry, Arduinos, 3D printing, and several other rocketry projects. You can download Tech Reports, model plans, rocketry software and more. All of it is free and open source.
If You Enjoy Rocketry, Consider Joining the NAR
If you enjoy model rocketry and projects such as Project: Icarus, then consider joining the National Association of Rocketry (NAR). The NAR is all about having fun and learning more with and about model rockets. It is the oldest and largest sport rocketry organization in the world. Since 1957, over 80,000 serious sport rocket modelers have joined the NAR to take advantage of the fun and excitement of organized rocketry.
The NAR is your gateway to rocket launches, clubs, contests, and more. Members receive the bi-monthly magazine "Sport Rocketry" and the digital NAR Member Guidebook—a 290 page how-to book on all aspects of rocketry. Members are granted access to the “Member Resources” website which includes NAR technical reports, high-power certification, and more. Finally each member of the NAR is cover by $5 million rocket flight liability insurance.
For more information, visit their web site at https://www.nar.org/
References
Here are the documents we used in creating this project
- "3D Printed Rocket Test Stand" by -Zander. Instructables, https://www.instructables.com/3D-Printed-Rocket-Test-Stand
- "Arduino - LCD I2C" Arduino Getting Started, https://arduinogetstarted.com/tutorials/arduino-lcd-i2c
- "Arduino with Load Cell and HX711 Amplifier (Digital Scale)" Random Nerd Tutorials, https://randomnerdtutorials.com/arduino-load-cell-hx711/
- "Conducting a Test" Glenn Research Center, https://www1.grc.nasa.gov/historic-facilities/rocket-engine-test-facility/conducting-a-test/
- “Datalogger” (From within the Arduino IDE) Go to File > Examples > SD > Datalogger
- "Design and Characterization of a Lab-Scale Hybrid Rocket Test Stand" by James C. Thomas, Jacob M. Stahl, Gordon R. Morrow, Eric L. Petersen, Texas A&M University, College Station, Texas. July 2016. American Institute of Aeronautics and Astronautics.
- "Effect of Altitude on Rocket Engine Performance" by Ellis Langford. R&D Report for NARAM 42.
- "Effect of Extreme Cold on Model Rocket Motors" by Ric Gaff. August 16, 1984. R&D Report for NARAM-26
- "Effect of Humidity on Model Rocket Motors" by Caroline Steele. August 2004. R&D Report for NARAM-46
- "Getting Started with Load Cells" by Sarah Al-Mutlaq. Sparkfun, https://learn.sparkfun.com/tutorials/getting-started-with-load-cells
- “Hobby Rocket Motor Data”. ThrustCurve. https://www.thrustcurve.org/info/motorstats.html
- "How Do You Measure the Thrust of a Rocket Engine?" April 18, 2022. National Institute of Standards and Technology (NIST),https://www.nist.gov/how-do-you-measure-it/how-do-you-measure-thrust-rocket-engine
- “Model Rocket Engines” Estes Tech Note 1. 1972
- “Model Rocket Engines” by William Simon (Revised by Thomas Beach and Joyce Guzik). Estes Model Rocketry Tech Manual, pg 14. 1993
- “Model Rocket Engine Performance.” Estes Tech Note 2 by Edwin D. Brown.
- "Model Rocket Motor Dynamometer (Arduino Uno)" by nightmare.on.scam.street. Instructables, https://www.instructables.com/Model-Rocket-Motor-Dynamometer-Arduino-Uno/
- "Model Rocket Motor Test Stand" by NM Rocketry. September 6, 2020. Arduino Project Hub, https://projecthub.arduino.cc/nmrsthrust/model-rocket-motor-test-stand-f8a42f
- NAR Standards and Testing Committee Motor Testing Manual Version 1.5. July 1, 2011.
- "Rocket Motor Static Testing" by Richard Nakka. May 14, 2020.Richard Nakka's Experimental Rocketry Web Site, https://www.nakka-rocketry.net/static.html
- "Standards & Testing" by the National Association of Rocketry Standards and Testing Committee. Sport Rocketry Magazine, November/December 2010, Pg 42-47.
- "Static Rocket Fire Test rig" byzuegnull. September 25, 2021. Thingiverse, https://www.thingiverse.com/thing:4974745
- "Stennis Space Center: NASA's Largest Rocket Testing Site" by Nola Taylor Tillman. January 25, 2018. Space.com, https://www.space.com/39498-stennis-space-center.html
- "Test Your Engine" Lesson Plans. Estes Industries, https://edu.estesrockets.com/products/test-your-engines-lesson-plan
- "Using a Model Rocket-Engine Test Stand in a Calculus Course" - https://pubs.nctm.org/view/journals/mt/95/7/article-p516.xml
- “What’s in a Rocket Motor?” NAR Member Guidebook, 2022 Volume 14. pg 12.