I released a video on how to make a rocket motor test stand that is resistant to motor explosions! Check it out!
Video Here: https://www.youtube.com/watch?v=C5j-w0-Lx2g
I released a video on how to make a rocket motor test stand that is resistant to motor explosions! Check it out!
Video Here: https://www.youtube.com/watch?v=C5j-w0-Lx2g
Wow what a headache! I’m going to type this up here so that anyone with the same problem can hopefully find this post and fix it like I did. A quick recap first: I purchased a 9-axis breakout board for my rocket flight computer. The board comes with an MPU6050 IMU (accelerometer and gyroscope), a HMC5883L compass, and a BMP180 barometer. When it arrived, I noticed the compass was misbehaving. It was reachable on the I2C bus but was not outputting any heading data. I figured it’s internal MEMS device was busted and placed an order for a replacement.
The replacement GY-87 came and it too had a broken HMC5883L. This seemed sketchy to me and I did some digging. It turns out that the MPU6050 has a second I2C bus that is specifically for connecting to a compass, and in the case of the GY-87 breakout board, the HMC5883L is connected through the MPU6050 on it’s auxiliary I2C bus rather than simply being connected on the main I2C bus.
When the HMC5883L is connected on the AUX bus of the MPU6050, it will behave in one of two modes.
The confusing part of all of this is that even when in master mode, it seems to behave as a partial pass-through, allowing you to configure the HMC5883L but not read the magnetometer. This is also the default mode, so if you don’t realize this is the case you’ll get stuck believing that the magnetometer is busted, since it’ll be responsive to commands but have no useful heading data.
The magic fix for all this if you are using the standard MPU6050 Arduino library is to enable the pass-through mode using the following line of code during initialization:accelgyro.setI2CBypassEnabled(true);
Note that you still need to initialize both the MPU6050 AND the HMC5883L as if they were both on the master I2C bus even though the HMC is on the auxiliary bus.
Once you do this, everything is sunshine and rainbows and behaves exactly as expected.
I’ve added my initialization code for this breakout board in case you want to use it too:
#include "I2Cdev.h"
#include "MPU6050.h"
#include <Adafruit_Sensor.h>
#include <Adafruit_HMC5883_U.h>
Adafruit_HMC5883_Unified mag = Adafruit_HMC5883_Unified(12345);
BMP180I2C bmp180(0x77);
MPU6050 accelgyro;
void setup() {
Wire.begin();
mag.begin();
bmp180.begin();
accelgyro.initialize();
accelgyro.setFullScaleGyroRange(MPU6050_GYRO_FS_2000);
accelgyro.setFullScaleAccelRange(MPU6050_ACCEL_FS_16);
accelgyro.setI2CBypassEnabled(true);
}
Link to GY-87 on Amazon if you want to buy one: https://www.amazon.com/gp/product/B098JN14XV/ref=ox_sc_saved_title_2?smid=A39S0U3UP1U7UG&psc=1
I was trying to devise a method to pressure test the clay plugs, since they were failing during motor firing. I discovered something odd. The clay plug from a used motor (I’ll have to test on a freshly rammed one soon) was clearly permeable to air. I connected the other end to a bike pump and dripped a little water on the clay plug to show just how bad the problem is. I have no clue if this is normal yet, but I assume not. I plan to take an existing Estes motor and check the clay plug for the same permeability.
In addition to the problems with the permeability, when I removed the plug from the tube there was clearly no sign of the outward convex bulge that should be locking the clay plug into place in the tube. Normally the pressure of the ramming will bulge the clay outward against the tube, creating an interference fit that will prevent the plug from coming out under pressure. I don’t see any visible bulge, so either it’s a lot less than I thought, or the plug wasn’t rammed properly. Also, the clay doesn’t look particularly compact to my eyes. I think these are all problems that need to be solved before I make any more motors.
I suspect that I’m deficient on two fronts: first, clearly the composition of the clay is off. It looks far too grainy which might mean I should be using less grog in my mix. Second, it’s clear that I’m not fully compacting the clay during the ramming process, so I’ll probably try and test ramming force at home using my 1-Ton press to see if that improves things at all.
Something that is notable about sugar-based propellants is that they are hygroscopic, which means they absorb water from the air. This causes the propellant to degrade notably over time. This motor was launched a couple days after it was made, and as a result it barely went 50ft into the air.
I used all the tools I created to make a set of dummy motors- motors without any oxidizer but otherwise exactly to spec. This serves two purposes. First: it allowed me to make sure that I haven’t forgotten anything and that my tooling is complete and I’ll be able to make motors out in the desert when the time comes. Second: it allows me to have a motor that I can stick into rockets in order to get them correctly balanced so that they are stable, without having to deal with any flammability concerns. It’s really starting to hit me just how much larger these are then the motors I used in my youth. On the far left is an Estes A size motor (same as the size B and C) for scale. My motors are (from left to right) size C, D, D, E, E, and F respectively.
I made a simple launch platform by welding together a couple scraps of steel tubing and a small shaft coupler with set screws, into which a 1/4″ steel rod can be held. Ideally I would also add a means to pivot the rod so that it can be aimed into the wind, as well as a plate so the rocket exhaust doesn’t burn the ground (and potentially set stuff on fire). For now I’ll leave it as is and use something else as the blast plate or more likely I’ll just make sure there is nothing flammable nearby. It’s going to be in a desert after all.
I need a simple anvil to hammer against when I load rocket motors, so I grabbed the largest piece of steel scrap I had on hand and started facing it down so that it’s flat and the faces are parallel. Not exactly a complicated operation for most lathes, but my little 1HP lathe is definitely not cut out for this. For starters, it’s barely able to hold the 8″ disc in the 4-jaw chuck. I’m pretty certain that if this were half an inch larger, it would not be machinable in my shop. At any rate, perseverance paid off and I got it done. Probably would have been cheaper and easier to use a rectangular steel block and mill it flat, but I thought this would be more fun.
For my rocket motors, I’ll be using convolute paper tubes as the casing. Paper casings are weaker than aluminum or fiberglass, but have several major benefits. First and most importantly, they are much safer. They can’t withstand quite as much pressure as an aluminum tube but when they fail they don’t generate metal shrapnel. Also, they are much cheaper. All it takes to make one is a bit of kraft paper and some white glue. Lastly, paper tubes have a little bit of flexibility, which actually aids in the retention of clay nozzles. When the clay nozzle is rammed into place, it bulges the tube outward ever so slightly, creating an interference fit that keeps the nozzle from sliding out (at least in theory). In total I made about 100 tubes, split evenly between 1/2″ ID, 3/4″ ID, and 1″ ID (inner diameter). I marked them based on which batch they were just in case there are variations between the strength of each batch. I can already tell that some of them didn’t come out as well, since you can sort of tell how strong they are when you squeeze the walls with your fingers. I may later try to make an apparatus for measuring this strength in order to do some rudimentary quality control. By the way, convolute tubes are the opposite of spiral-wound tubes, which would not be suitable for the task of being a rocket motor casing, as the spiral creates a small channel on the inside that would allow the flame to shoot down, prematurely igniting fuel and causing the engine to explode. Convolute tubes are rarely used for anything else other than rockets/fireworks, and are therefore really hard to purchase, especially if you have specific size and thickness requirements.
I made a simple ignition system using two 18650 batteries and a few other switches. It’s dead simple, which is good for safety. You just have to insert and turn a key, turn on the toggle switch, and then press and hold the button to launch. I’ll be honest here: I did NOT need to spend as much time on this as I did. I spent a good couple of days looking for and sourcing the nicest-feeling most authoritative switches possible. That being said, this box is an absolute joy to use. every click and press has an excellent tactile feel and makes the process of launching a rocket that much more enjoyable. Miles better than jamming a paperclip into Estes’s little 3V ignitor system 😛
In order to create the clay nozzles and fuel grains, you need to hammer them into place. To do that, I’ll need to create tamps with proper shapes and clearances for the nozzle, spindles, etc. Each motor uses 4 different tamps, and they are made from nylon plastic in order to be lightweight and durable. This also makes them a hell of a lot safer than making them from steel, since in the worst possible situation (where the motor spontaneously ignites during the ramming process) the tamps will simply shoot out the top of the motor rather than exploding into metal shrapnel. These are relatively easy to make, provided you happen to have aircraft-length drill bits (18″). Also, the nylon does not make a nice chip on the lathe and turns into a mass of spaghetti, but to combat that, just stop every once in a while and don’t let it build up like I did 😛