On 8/17/11 1:36 PM, Mark L. Hammond wrote:
In any event, Phil...THANK YOU for making this code real. I have seen it print data when the signal was visibly "in the dirt" which is impressive and fun to see.
You're most welcome. It was a lot of work mainly because there were so many options in the design that were hard to nail down. Nobody really knew how fast the fading would be, or how long the data frames should or would be, or how fast the telemetry values would change, or the frequency and phase response of all the SSB receivers people would use to receive the telemetry, or the accuracy of the A/D clocks in their computers, or the type and speed of their CPUs, or the experience level of the operators and whether they'd used automatic or manual tuning.
I did know that there would be fading, probably very deep. I knew the orbit would be that of the ISS so I knew the passes would be short with fierce Doppler. I knew that the beacon would operate in a broadcast mode so latency wasn't a major concern.
So I went for a conservative, robust design. I didn't try to maximize the data rate or minimize latency as I might have on a Pacsat being used for interactive and store-and-forward user communications. Those things might have made the signal much less robust especially by impairing its fade resistance.
I think my emphasis on fade resistance has definitely paid off, but I'm less happy with its tolerance (or lack thereof) of various frequency errors, from Doppler correction to off-frequency A/D clocks in computer sound interfaces. But that's one of the reason we fly these things, to get that kind of experience for the next time.
Another thing this mission (and many previous amateur satellites) shows is that the one thing we really, really need on our small satellites is a good attitude determination and control system. One would make *so* many problems just go away:
We could mount microwave antennas on a nadir-facing surface and provide consistent, predictable, strong, wideband signals to ground stations during a pass.
We could mount our solar panels on rotating booms to track the sun and generate far more power from a given number of (very expensive) cells than we now get by hedging our bets and covering every outside surface.
We could predict and control spacecraft heat flows and temperatures far more easily.
We'd know where our cameras are pointing and we could take pictures of predetermined targets.
The problem consists of two parts: attitude determination and attitude control. For determination I keep thinking that we should be able to do a lot with small, light and inexpensive CCD cameras. With proper light baffling it should be possible to see stars even in the daytime, and onboard software with a star chart could figure out which they are.
For attitude control, I think control moment gyros are the way to go. (They're somewhat different from momentum wheels in that they operate at constant speed.) This is largely a mechanical problem: designing flywheels and motors that are small, lightweight, can store a lot of angular momentum, draw minimal power, and be precisely moved around to control the direction and magnitude of the overall spacecraft angular momentum vector. We'd still need magnetorquing coils to dump excess momentum, but the cm gyros would provide quick and accurate control of spacecraft attitude.
-Phil