[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Mark IV Software
I have been thinking about software for the Mark IV. It is not too
soon to start thinking about specifications and to start writing code.
I would like to write it in modules, and pass out the modules for work
to a number of people. If a lot of you want to work, we might even
have several versions of each module. This all depends on setting up
a group of well defined tasks, and spelling out in detail the calling
procedure between tasks. I would like to start the process by putting
up a first pass at a task list. Since I don't know much about
software it will surely be wrong. The rest of you can revise the list
and when we get it in final form, I would like to make it a technical
note.
Module 1
A command structure for speaking to a camera installation over the
internet or some other communications media.
Module 2
PC code that interprets the command structure.
Module 3
Code that accepts the command structure and sets up the appropriate
schedule of operations.
Module 4
Code that sends serial commands to the Stamp, and has appropriate
checks and tests.
Module 5
Stamp code that performs camera operations. This code interacts with
Module 6 as the memory module is filled and emptied.
Module 6
Unloads the memory module and passes the result to the first level of
event storage.
Module 7
FITS format for events
Module 8
On line display
Module 9
Moves data to the processing storage level.
Module 10
Star list processing
Module 11
Data Base Processing
Module 12
Data Base
Module 13
Data Base Communication Language
Module 14
Data Base Display
Module 15
Camera test code
Module 16
System test code
OK, this looks like a big list. It is certainly not complete. It is
indeed a big job. I will volunteer to do Module 5 and 15 as one has
to understand the intimate details of the hardware to do these. Part
of the list has been done at least once. I will have to write 15 as
the very first task so I can debug the hardware. But I will try to
write it as a documented QBasic .exe program so any of you can run it
later.
My idea is to define the boundaries between the modules (once we have
settled on an "official" list) well enough that we can exchange a new
module for an old, run standard tests, and be reasonably confident
that the bugs left are of well defined types. Of course, the
structure should allow adding code modules that we do not think up
immediately.
As part of my testing I expect to do the first 10 or so in Basic and
using existing code - Star, Deep Sky, etc.. This will give the rest
of you code samples of what works to do various operations. You won't
want to do it the same way, but it will allow starting work before you
actually have a camera.
Tom Droege