Thursday, March 10, 2016

An interesting EMC tale..

I spent much of the last week doing EMC testing on a new NetBurner module, for FCC and CE qualification.  The basic process is you take a unit to the test lab and they do various emissions and immunity tests.  This happens with basically every electronic product you ever purchase.

This week we had an odd result that is worth of a write up...
Most EMC tests start with emissions testing as that is the most often failed part so get that done first.

One of the tests in the middle is Radiated Immunity...
For normal consumer products they put the unit in an RF field of about 3V per meter and sweep the frequency.  This test is done in a 3M RF chamber and in the place we test this is split into 16 parts....

Front, back,right, left  in each of vertical and horizontal polarity with two sweeps one up to 1Ghz and one from 1 Ghz to 2.7Ghz.   Your unit is supposed to remain operational during the test...
So for this new unit a Wifi /Ethernet to serial unit we put a loop back cable between the serial connections and do an ethernet ping and tcp over wifi loop back through the serial connection.
We monitor that data goes out and back and is reliable.  Running 2.4Ghz wifi we expect some packet loss when they sweep through 2.4Ghz, but the unit should recover.


The first 8 tests under 1Ghz were uneventful....
For over 1Ghz they swap out the drive antenna for a wide band horn and different amplifier.
The first 4 tests, left, right x horizontal,vertical all went well.

Then we started doing the front and back of the unit and the Wifi in the unit started acting flakey. It would loose the wifi connection and nothing I could do would make it come back. This was with the  chamber open and the signal turned off.  It seemed like physically moving the unit caused it to die.
I got through one more set, the back, leaving just the front of the unit to test and I just could not get it to work ,,,, So I aborted the testing on Tuesday and drove back to the office from the test lab in orange county.
Since moving the unit caused it to die I assumed a bad solder joint.
When I got back to the office I re-flowed the wifi module and and retested wifh while violently shaking the unit.  It worked flawlessly...

So I went back to the lab on Wednesday, EFT, surge, ESD, conducted immunity etc...
Everything worked flawlessly for the next two days. The WIFI was really solid....

This afternoon we had one test left >1Ghz radiated immunity to the front, horizontal and vertical...

The unit fired right up and worked flawlessly....
We finished the horizontal test, the drive was off no signal...
The test technician went into the chamber and rotated the drive horn from Horizontal to Vertical...
WIFI died. I rebooted the unit and nothing I did could make wifi work...
So I asked them to turn off their amplifier.... and the wifi  came back to life...
(This is with the drive to the AMP turned off)  Amp on wifi dead, amp off wifi works....

We then rotated the drive antenna back to horizontal and turned the amp on...
Wifi worked.... we rotated the  feed horn wifi died...

The strange part is when the tests were actually running IE they were driving RF energy in to the AMP and out the antenna at our unit WIFI worked flawlessly. It only died when the test set was idle.

The WIFI antenna on our unit could be rotated to vertical or horizontal, so as long as that antenna was  of opposite polarity to the test antenna everything worked....

What is even stranger is we could be dead and idle and turn on the test IE drive energy and things worked....

So we did the last test with the WIFI antenna horizontal..

The whole time our unit could scan for the WIFI router and recieve fine, when it tried to transmit things died...
So what is going on?  The only theory I have is that our WIFI signal was coupling into the amplifier and causing some king of feedback, ie like Microphone squeal...

The guys running the EMC lab have been doing this for 30 years and they have never seen anything like it... It was a strange Day...

Monday, December 21, 2015

Flight of 12 19 15

Some background on GPS.... this post is chronologically challenged as it flips back and forth)

I have three approaches to getting the GPS to work.
They are somewhat related.....

1)Use a Swift navigation PIKSI with custom firmware.
I've flown this unit with stock firmware twice, and with custom firmware once.
Flight 1 Stock firmware, lost lock at ~5 gee, marginal GPS in all cases.
Flight 2 Custom firmware with wide open GPS tracking loops... over did it as the units were tracking sats that were not there.....
Flight 3a) (12/19/15)
Newer version of Stock firmware GPS performance much improved, still lost lock at 6 gee, but recovered at burnout...
flight 3b)Same flight different piksi hooked up to intel compute stick to log RAW signals from the front end.

2)Use a RTL SDR dongle with GNSS-SDR and write custom firmware..
Thanks to some help from a follower/friend I have this runnign on the ground with my survey grade 35DB trimble antenna, but not with the flight weight antennas, I'm waingin for some low nosie amps to make this work wiht the flight weight antennas.


3)Build my own GPS with full IMU tight integration.
This will use the same Maxim GPS front end as Piksi, but with the Zynq CPU.
I have all the prototype pieces in work....

After action...

Thursday, Friday and Saturday I had a bad sore throat and cold.
On Thursday I determined that the RTL-SDR was not going to work without the LNA I did not have.
So I switched to trying to record the raw signals from the piksi...
After napping much of the day Friday to get better I finished the Piksi raw record  about midnight Friday.

Saturday I got up at 4:45 rechecked that everything was working, packed all the stuff into the car and drove to the airport.  I took off about 7am in the 182 Headed to FAR , I landed on the private dirt road next to FAR at about 8:15.

Started prepping the HPR for the flight using one of John Newmans ~M experimental motors.
one of the Altimeters failed the deployment charge conductivity test, took me about 2 hours to find the broken wire down inside the avionics module.  Launched the rocket at 11:07:26  It went to ~12K ft. The GPS experiments and batteries added a lot of weight to the nose cone and I did not upgrade the main chute retention nylon bolts. So when the drouge deployed at appogee the main also deployed.   After driving around in  the desert on the quad for an hour gave up looking for the rocket and switched to the airplane.... it took us about 5 min in the 182 to find the rocket. It was 4 miles from launch and withing 25 ft of a paved road.  So we landed back at FAR and Ted took me to get the rocket in his jeep.  Kind of fun to ride in a really capable off road vehicle...  The rocket barely fit in the jeep and on the way back to far we jumped over a rock pile the rocket came loose and broke Ted's window ;-(  When people try to budget projects like this and understand costs no one puts things like Jeep windows in the budget.....

Once back at FAR I took the GPS modules out of the nose cone, I  packed up and flew to Oceanside...(OKB) The flying club I'm part of had its Christmas party Saturday afternoon and I had promised I'd give breezy rides, so I left the 182 at OKB and took the Breezy to CRQ... it was too cold and I had no breezy ride takers.... so I took the breezy back to
OKB put it away and flew the 182 back to CRQ unpacked and drove home.  I got home about 6 pm and went to bed early. It was a long day...

Saturday I downloaded the data from the GPS modules.  The SBP format file  from the first Piksi is here: SBP format Datafile The SBP format is defined here https://github.com/swift-nav/libsbp/blob/master/docs/sbp.pdf

Decoding that the Piksi with the current stock firmware lost lock at about 6 gee and regained lock at burn out.

The second piksi was recording raw RF from the front end via the intel compute stick... from time to time it had a FPGA fifo error and the sampler would restart.... inside this zip file are a bunch of raw data files.  The file ending in 110731 has the first 4 seconds of flight. The File 110822 has the balance of the boost phase.  

These dat files are supposed to run in the swift nav peregrine software GPS receiver, alas my linux fu is not working and I'm unable to get peregrine working as it looks like swift has moved its library python bindings from a separate module into the libswiftnav, alas that integrated version python will not build on my VM....
If anyone wants to play with this you can find info on peregrine here: Peregrine

That's all for now. I'll update when I manage to get some info from the raw data.

Sunday, December 06, 2015

After Action report...

So this was  a FAR weekend.
I had intended to do three tests, only got one done.

I fired the 3D printed motor with larger diameter plumbing on the main valve and a turbine flow meter so I can measure C* and ISP.

Results are mixed....
The test stand I'm using is an amalgamation of an old test stand and a bunch of valves from the silver ball.  In short it is a mess. I worked on making it better this week. (largely why I only got one of my tests done)  We hydroed the basic structure and tested the relief valve a few weeks ago, and all of that is solid.  The new valves and arrangements form the main outlet to the motor are solid.

The valves for the fuel side and the pressurization system are 100% Silver ball leftovers.
They largely worked two weeks ago when we ran it, this weekend two of the fuel side valves were frozen and the actuators died.  I had one spare actuator with me so I replaced the fuel valve actuator and changed the fuel side vent to manual operations.

The 2nd deficiency of the system is that all the wiring is an unreliable mess. I hope to clean that up repackage the electronics and make it all a solid solution before I use the stand again.
I  left the test stand at FAR but brought all the valves and sensors home.
The actuators are all dynamixel RX-64, 18V actuators  run off a 5 cell lipo and an ac power supply to keep things topped up.  I have a nice 40V  13.8V AC powered supply, thinking about trading the RX-64 for MX-64 that would be happy running at 13.8V. This is a $1K decision, I need to sleep on that.


My old sureflow pump for loading oxidizer died this year. I bought an air powered diaphram pump from McMaster car to replace it as the model of sureflow pump is not longer made.
The problem with this pump is that is really pulses, the flow is not smooth so hoses jump around and do unpredictable things.  I mounted the pump to a 3 hp roll around aircompressor and added a remote dead man switch activated valve to turn the pump on/off.  I also changed the loading procedure form opening the top of the tank to having a separate valve and a hard connection on the bottom for fueling, no ladders involved. These changes mostly worked as designed and I'm happy with them. much less risk drama in oxidizer loading.  I need to do something similar for the fuel side and will do so.  I still have hope that I can find a good steady electric self priming oxidizer pump..... I've ordered a couple of candidates, we will see how they turn out.


The firing ran well about 78 seconds. The CAT pack worked well and I got good data. The feed pressure was up about 20 psi from last time, the chamber pressure was up about 10, not sure where the other 10psi went.... motor ran at about 180 PSI target is 200. On shutdown the fuel feed pressure stayed up witht he fuel valve closed.  So I suspect that rebuilding the fuel side of the system in the mojave dust introduced enough material to clog the fuel orfices.  I've ordered a small sintered 10 micron fuel filter to add to the system.  Well see when I examine the engine this week....

I forgot to do a final last minute tightness check on all the plumbing. Got distracted by a rocket launch that required everyone under cover and for got to tighten one pressure transducer... sprayed peroxide all over everything...this part was after the main valve so was not part of the pre-fill leak check.

Then wheil disassembling things I dumped fuel all over the open ox inlet port on the motor.
So before I run it again it needs to come apart and be properly lcleaned for oxidizer service.


Things to do before next test:
Rebuild and test all the valves and actuators.
Package the electronics in a more robust manner.
Add flow meter to the fuel side.

I'll probably run another motor test the first FAR event of January that should be Jan 2nd
For the Far event on the 19th of December I'm going to try and fly my GPS experiment and test the little TJ-20A turbine as a potential first stage motor.  

I'll try and post some of the test data when I have looked at it later this week.

Paul












Friday, November 27, 2015

Working on full layout

Looking at various possible layouts for the bottom of the Third Stage.
(IE the one where weight really matters....)






Friday, November 20, 2015

motor design...

Here is a quick note about the Motor we are going to fire on Saturday...


The Grey is the 3D printed motor.
The Light Blue is the part I turned and machined (4 times)
The Gold is the peroxide going down the cooling passages...
The Red is the peroxide coming back up the cooling passages... (The gold and red connect at the right end of this drawing.
The Green is the Catalyst pack that turns the oxidizer from liquid to Steam and hot Oxygen.
The Yellow in the band around the middle and in (two shown) the four fuel injectors that inject fuel just below the cat pack.





Thursday, November 12, 2015

Jet Packs... aerodynamics questions and thoughts....

If you follow such things the Jet pack from http://jetpackaviation.com/  was subject to all geek discussion last week. Today I say an article here:http://www.gizmag.com/jetpack-aviation-new-york-flight/40286/

This describes the controls of the jet pack.....

Notice that the only video we have seen is of it flying somewhat low over water. This means in the mind of the designer its not safe over anything hard.

There is pitch and yaw control, but no roll control other than weight shift.
To me this means that the output from the two jet engines must be really closely matched.
Loose either  engine to something as simple as an air bubble in a fuel line and your spinning wildly out of control.

So how would you build a safe useful jet pack?

Safe:
Minor expected faults won't kill you.
Single engine, sensor or actuator failures wont kill you.

Useful:
Able to fly at whatever altitude fuel will allow over any surface.


In my mind a safe useful jetpack would have the following:

Flyby wire artificial stability.
Engine out failure recovery from any altitude.
Safe escape from and single engine,sensor  battery or actuator failure.

This implies to me multiple engines with some kind of thrust vector control.
You need enough  control authority to maintain stability with one engine out.
You need enough control authority to maintain stability with one actuator or motor in hard over failure.

You don't have to always land, you can have failure induce a rapid climb to an altitude that ballistic parachute can deploy. (300 ft or so)


Rather than two motors I would think at least two per side. This means that if you loose an engine on one side all of the the other engines must have enough control authority to keep thrusting through the center of mass.  If the control authority point is above the CG (like their jetpack) then the gimbal on the good side will have to point toward the passengers legs, probably frying them.  To me this imples that the jet point of thrust vector control must be below the CG. IE the jets must move down on the human.  Then the thrust vector to compensate for rolling (or pitching) moment from a failure on the other side would point away from the pilot.  It also implies that each side have enough thrust so that if 1 motor fails it can hold up its side......

So I see something like 3, 4, or 5  smaller motors per side.

With 5 motors a side I believe you might be able to control the vehicle with just thrust throttling...

If you need thrust vectoring then a flap that you can deploy into the exhaust stream that deflects it in the  direction of the semi circle away from the pilot.

In thinking about things one of the scariest failures would be bearing failure where the motor dumps all its built up momentum in the free flying vehicle as its thrust goes away.....

I just don't see how the Jetpackaviation jet pack we have all recently seen could be made "safe" for flight over hard surfaces.

Some random observations:

From their images JB-8 was more of a flying sled. Its real clear that the JB-8 used two TT-100 247lb thrust jets, the same as the sonix jet uses.  These are about 50K each.
(See http://www.pbsvb.com/customer-industries/aerospace/aircraft-engines/tj-100-turbojet-engine)

Its also clear that the JB-9 uses two smaller engines... AMT Nike motors.(24K Euro each)  I wonder if the motors  counter-rotate, or if they don't how much rolling moment pitch changes make given the gyro coupling.... since the  designer and test pilot are both helicopter pilots they will be very familiar with the 90 gyro force motion phase shift....

In looking at the middle of their three videos the "Gopro" one that they are using standard box stock RC turbine ECU displays for the engines mounted on the stick grips, these displays are on the tether flight video, but not the NY harbor one... or the promotional jet pack pictures.

On the tether flight video one can clearly see a large LIPO battery pack connected to the engine ECU under the cover.

Also in the NY harbor video there looks like an added frame to keep the tether training cable from getting wound around the pilots head....

Needless to say I want one...


P.S. I want to see their blooper reel...
Edited to add info on what motors they are using.


Monday, July 20, 2015

GPS on several fronts...

This week end I flew an open source Piksi GPS on an HPR to see if it could be made to keep
lock at high acceleration without any imu aiding. I modified the tracking constants of the piksi software .(actually used # defined for wide bandwidth tracking already in the latest software)

It lost lock at boost, got lock again at apogee (strong winds at FAR apogee horizontal V was 204knots!)  This pulled the electronics bay out of the vehicle when the drogue deployed at that speed.  Fortunately its a sturdy rocket and it survived a no main chute deploy with minor damage.

There were some issues I think I set the lock detection too too optimistic and it tracked some noise...
I will fly a Piksi again recording the Raw RF some time in early Aug.
(I'm also going to change out the TCXO for one with lower G sensitivity see discussion below)


On a 2nd GPS front PSAS flew a software GPS receiver on their rocket on Sunday.
They gathered raw data, but they don't have the full GPS solution working yet.
They posted the following graph

It shows doppler shift in the tracked sats.
I actually question that a little bit...

Doppler is what makes a trains whistle change tone as if goes past.
If you change the velocity with respect to a radio transmitter the frequency will shift.

There is another effect that can also effect this data... the RF system on a GPS uses a very precise clock (usually a TXCO)  in the receiver.  That clock may have acceleration sensitivity.
IE the frequency of this oscillator may vary with applied acceleration...

I'm somewhat suspicious that the graph above shows this more than Doppler shift.
I have not looked up the orbits of the gps sats at the time of flight or the position of PSAS flight, but I'll make some assumptions...

The GPS sats are scattered randomly about, ie some are almost straight up and some are at the horizon.  If the rocket flies straight up one would expect a bigger doppler shift for the sat straight over head and much less shift for the sats at the horizon as their relative velocity changes less.
Also if the rocket turns into the wind and has some horizontal velocity one might even expect a doppler shift in the other direction for the sat you are flying toward/away from.

However if the frequency shift is due to g effects on the reference clock one would expect all the doppler shifts to move the same direction....

So it looks like they got a shift of about 1400 hz  at 1.5Ghz that would be a velocity of  140 m/sec or so... at 1.5 Ghz. So the magnitude is withing the realm of possibility...

(The graph also shows an overshoot at the end of the rocket burn this is the acceleration changing direction from the perspective of the GPS receiver.)

There are vendors that specifically sell clock oscillators with low G sensitivity...
(http://www.vectron.com/products/g_sensitivity/gsensitivity_index.htm)

Given their data the PSAS should be able to determine this.
With a full GPS solution derived from the data (they have not done this yet)
They will get position velocity and time....
They also have sample of data precisely clocked out via their reference oscillator...
The difference between the time in the solution and the time via their local clock can
be measured and will give an idea of clock drift.

They can also calculate the expected doppler between them and the individual sats and see how that compares with the   measured doppler any difference is clock error...

All of these data extractions require they get a full solution running....

There is a quick and dirty test they can do with just what they have...

Run their gps sampler system on the ground with a fixed  stationary antenna...

Now take the GPS board and orient it it differently in the 1g gravity field.
6 combinations IE board component side up, component side down, tipped on its end, pointing up, down right left....

 and generate the doppler graph above...  if the doppler shifts with orientation of the sampler board then they probably need a more stable clock.

  At  bare minimum this test will show them what axis has the lowest clock sensitivity....

In any case I really applaud what the PSAS guys are doing!