Meadville Space Center
Welcome, Guest. Please login or register.
September 20, 2020, 10:35:42 PM

Login with username, password and session length
Search:     Advanced search
Gemini 060615 released!
25068 Posts in 2094 Topics by 2266 Members
Latest Member: twa517
* Home Help Search Login Register
+  Meadville Space Center
|-+  Project Apollo - NASSP
| |-+  Project Apollo - NASSP News & Discussion (Moderators: movieman, Tschachim, Swatch, lassombra)
| | |-+  LVDC++ Software
« previous next »
Pages: [1] 2 3 ... 23 Print
Author Topic: LVDC++ Software  (Read 76155 times)
barry
Full Member
***
Posts: 49


View Profile
« on: July 03, 2009, 08:53:38 AM »

Is the LVDC++ Guidance logic for the Saturn V currently working?

What was the reference for all the complex formulas in the code?
Logged
dseagrav
Project Admin
Hero Member
*****
Posts: 1118


View Profile
« Reply #1 on: July 03, 2009, 11:01:58 AM »

No, and it's out of date.
As far as I know nobody is interested in it except for me right now so I haven't committed it in a long time. Do you need me to?
Logged
barry
Full Member
***
Posts: 49


View Profile
« Reply #2 on: July 03, 2009, 11:24:05 AM »

It would be nice to be committed if it didn't break anything else.

In looking further into the LVDC, I am becoming extremely fascinated. The LVDC was the first digital computer that was the direct descendant of the work of the Peenemunde engineers (as can be told by the names on all the UI documents). It really is the "missing link" between a missile and a spacecraft.

There is nowhere near the public documentation on this computer that there was for the AGC, and the project members were scattered to the wind by budget cuts at NASA.
Logged
dseagrav
Project Admin
Hero Member
*****
Posts: 1118


View Profile
« Reply #3 on: July 03, 2009, 11:31:36 AM »

OK. When I get home I'll clean it up and push what I have. The LVDC parts of it still don't work right but it has much improved LVDA and whatnot.
Logged
movieman
Moderator
Hero Member
****
Posts: 1710



View Profile
« Reply #4 on: July 04, 2009, 01:00:01 AM »

I think we'd all like to see the LVDC simulation working, but most of us don't know enough to work on it Happy.
Logged
barry
Full Member
***
Posts: 49


View Profile
« Reply #5 on: July 04, 2009, 07:45:48 AM »

I am attempting to augment the public information about the LVDC by finding and speaking to as many original LVDC project members as I can find. I have already spoken to a couple of them - but they didn't keep any code or listings. After all it has been more than 40 years.

They were however, excellent sources for the details of how the project ran, and which people did which tasks.

As far as I have been able to piece together, the UI and the LVDC were designed by the "Germans" at Marshall. Its primary principles were those required by a multi-stage ballistic rocket. Contrasted with the AGC which was much more concerned about orbital positions and  velocities of the spacecraft within the solar system, and related bodies like the Earth, Sun and Moon. The DAP functions of the AGC were the functions most closely similar to the LVDC.

The guidance equations, and main formulae driving the LVDC were first written in Fortran (which was also used in testing and verification). There was extensive testing done of the algorithms as well as the finished code on both analog and digital simulators. Someone actually wrote an LVDC computer emulator back then - (probably in Fortran - I am trying to find more details...)

The LVDC coders were largely hired out of university by IBM, and their job was to translate the Fortran algorithms into machine code on the LVDC computer, and using 14 bit fixed point rather than floating point arithmetic. The code was written and assembled on IBM mainframes at Marshall- (which means there MAY be a listing, a deck of punch cards, or magnetic tape lying around somewhere).

Each person I spoke to gave me some names of other people. They have all been very enthusiastic to talk about the LVDC, and the nuances of the project when they worked on it. Many still keep in touch with old colleagues.

I am hoping to find a "packrat" who managed to keep an old listing of either the assembler source, or the Fortran algorithms. I have pointed each person I spoke to to the NASSP home page. Hopefully it will kindle some interest within that community, and we will hear some more from them.

Even if I can't find the code - it has been fascinating talking first hand to the original team....

If anyone has a question on which an original team member may be able to provide some insight - I will be happy to pass it on.
Logged
Swatch
Moderator
Hero Member
****
Posts: 1003


jasonims
View Profile
« Reply #6 on: July 04, 2009, 01:17:45 PM »

WOW!  That is really cool barry, I'd love to hear more about your travels and conversations.  Are you taking good notes?  Hope so, because what you are gathering is irreplaceable data.
Logged

My Project Apollo Work:
CM Visual
 -VC (~75% complete: texture work beginning again; mesh-78%; texture-70%)
Propulsion Particle Improvements (Focused on S1B right now, BETA 1.0 has been commited)
New Docking Method (~50% complete: research complete; coding partially completed, testing not underway)

Future Work:  (if it's here, it's deemed unnecessary to upcoming release)

Older Work:  (if it's here, it's fair game to whoever wants to improve)
EMS Implementation (committed: minor flaws, but groundwork is there, needs extensive testing)
EMS scrolls (committed: not refined, but usable)
SM Visual (committed: mesh-finished, texture-60%; possibly revisited in future)
J2 Texture (commited: room for improvement)
LRV (committed: mesh-finished, texture-90%; in future a ground up rebuild may be in order, but not on my plans)
dseagrav
Project Admin
Hero Member
*****
Posts: 1118


View Profile
« Reply #7 on: July 04, 2009, 04:37:21 PM »

Committed now. Sorry for the delay. The files to read are saturnv.h and Saturn5.cpp.
As I have it, the ship will launch and the pre-IGM is nearly flawless. You can even fail engines on it. The IGM however eludes me. I don't understand the arithmetic.

I use a modified Apollo 11 scenario for the testing, because I found an Apollo 11 pad load (or so I thought) and to stay well out of the way of the rest of the group, who are completing Apollo 7 and starting on Apollo 8. The scenario is attached to this post.

When you launch the scenario everything will be set up 60 seconds from launch. The state of the CM is not correct but I am not interested in the CM. The CMC will be in P2 awaiting launch but systems are not guaranteed to be correct. The SCS is known to have incorrect attitude for some reason.

The LVDC will be waiting for GRR. The debug line at the bottom has status. The ship will launch and fly as programmed. There will be a file left in your orbiter directory named "LVLOG.TXT" that is a per-frame dump of the LVDC logic.

Presently the IGM does not work. It will garbage Tt_3 after the first pass. A hack is in place to keep the software from crashing Orbiter, but the commands generated afterwards are absurd. Any input is appreciated.

Edit: The arithmetic is defined here: http://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/19940004379_1994004379.pdf
The Apollo 11 partial pad load came from here: http://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/19740072570_1974072570.pdf

* Apollo 11 - LVDC - T-60.scn (57.81 KB - downloaded 953 times.)
« Last Edit: July 04, 2009, 04:46:21 PM by dseagrav » Logged
barry
Full Member
***
Posts: 49


View Profile
« Reply #8 on: July 04, 2009, 10:35:09 PM »

Hi Swatch,
All my contacts with the LVDC people has been over the phone or by email, and the level of detail (so far) hasn't been extensive. I haven't visited anyone yet.

I have been involved 3 or 4 of these software "archeology" efforts before, where the official documents have been lost in the sands of time. The process involves starting with any publicly available names, contacting them by phone/email (cold-calling), and getting more names back of people that worked closer in.  You keep at it until you find someone that can't bear to throw stuff away and kept the bits. I wish I could say it was exciting work - but its more like a police detective procedural - lots of grunt work.

I am reasonably optimistic in this case because:
1) the LVDC team was reasonably large - there were many people in design, coding and testing departments that may have had access to the code - which was on mainframes, and should have a readable format.
2) the people I have spoken with tended to stay in touch with many of their old (40+ years ago) colleagues.
3) many of them were quite young when they did the work.  It was a job to remember - and to save momentoes.
4) EVERYONE has been very happy to talk about it, - I don't think anyone has shown any interest in the Saturn V for many years - even though it may have been some of the most technically challenging things they did in their careers.
5) The NASSP project is sufficiently real and exciting that I have had little trouble convincing the people I had cold-called to give me names and phone numbers of other team members. In other projects, I had a hard time convincing people that I wasn't a salesman.

I have spoken to about 7 people so far, 2 of whom actually coded the LVDC. (The others worked on hardware, or on other software projects, or in management).

I have the names of another 10 or so people to find, email or phone. I have given each person a weblink to the NASSP home page, and asked them to email if they can think of anyone else who may have a tape or a listing.

In the end - the whole process will only yield results if someone saved the bits - so cross your fingers, and knock on wood.


Logged
dseagrav
Project Admin
Hero Member
*****
Posts: 1118


View Profile
« Reply #9 on: July 09, 2009, 01:44:37 PM »

A bug was patched in the software (Use of uninitialized space) which prevents crashing in early pre-IGM. Anyone who downloaded the scenario should update from CVS and try it again (if you crashed in pre-IGM, that is)
Logged
meik84
Project Team Member
Sr. Member
****
Posts: 454



View Profile
« Reply #10 on: July 12, 2009, 08:23:30 AM »

Well, I experimented a little bit with it and almost got the IGM to work. You should try to get the "ground launch targeting calculations" to work, as your azimuth, inclination and (especially) descnodeangle seem to be wrong. I manually calculated those with the numbers on table 5-I (ignoring the [...]^n part of the formulas -the influence seems pretty small), fed it in the source code and got the IGM to run to where i felt MRS should occur (that's not implemented yet, right?). Then it starts to do garbage, but when you feed the IGM with the right data, it will work IMHO. I'm going to change the rest of the numbers to those for apollo 9 and see what happens. So don't worry -it's all a question of numbers! Wink
Edit: Where did you get Azo and Azs? I don't believe that those in the code are right, they should be scaled in deg and not in PIRADS.
« Last Edit: July 12, 2009, 01:48:39 PM by meik84 » Logged
movieman
Moderator
Hero Member
****
Posts: 1710



View Profile
« Reply #11 on: July 22, 2009, 02:48:04 PM »

Would be good if you could get this to work!

BTW, I was just reading about the Skylab computer and came across this section:

http://history.nasa.gov/computers/Ch3-5.html:

Quote
When IBM began to make preparations to modify the software, it discovered that there was almost nothing with which to work. The carefully constructed tools used in the original software effort were dispersed beyond recall, and, worse yet, the last of the source code for the flight programs had been deleted just weeks beforehand. This meant that changes to the software would have to be hand coded in hexadecimal, as the assembler could not be used-a risky venture in terms of ensuring accuracy. Eventually it became necessary to repunch the 2,516 cards of a listing of the most recent flight program, and IBM hired a subcontractor for the purpose

So if IBM deleted all the Skylab source code, I guess that doesn't bode well for them finding the LVDC... though hopefully they may have a listing somewhere!
Logged
meik84
Project Team Member
Sr. Member
****
Posts: 454



View Profile
« Reply #12 on: July 22, 2009, 04:41:45 PM »

Well, I played around a little bit and I'm now able to calculate Inc, Az and DesNodeAng from the data in the doc. I also found out wath PIRADS are: it's radiants*pi, so to convert them in degrees you have to multiply them with (180/pi^2). Results are quite reasonable, but with those the IGM won't work.
I can't help myself, are you sure you calculate the current position correctly? This earth-centered plumbline system is a hard one for me, I still don't get how Xs is made, and the doc isn't very helpful on this topic. Confused
Logged
Swatch
Moderator
Hero Member
****
Posts: 1003


jasonims
View Profile
« Reply #13 on: July 22, 2009, 05:29:34 PM »

So if IBM deleted all the Skylab source code, I guess that doesn't bode well for them finding the LVDC... though hopefully they may have a listing somewhere!

Sad realization... but probably to be expected.


Even so, I don't see why we won't be able to replicate the behaviour, which IS well documented.  I'll pick up my notes on this subject and see if I can add anything to this conversation.
Logged

My Project Apollo Work:
CM Visual
 -VC (~75% complete: texture work beginning again; mesh-78%; texture-70%)
Propulsion Particle Improvements (Focused on S1B right now, BETA 1.0 has been commited)
New Docking Method (~50% complete: research complete; coding partially completed, testing not underway)

Future Work:  (if it's here, it's deemed unnecessary to upcoming release)

Older Work:  (if it's here, it's fair game to whoever wants to improve)
EMS Implementation (committed: minor flaws, but groundwork is there, needs extensive testing)
EMS scrolls (committed: not refined, but usable)
SM Visual (committed: mesh-finished, texture-60%; possibly revisited in future)
J2 Texture (commited: room for improvement)
LRV (committed: mesh-finished, texture-90%; in future a ground up rebuild may be in order, but not on my plans)
meik84
Project Team Member
Sr. Member
****
Posts: 454



View Profile
« Reply #14 on: September 24, 2011, 08:20:39 PM »

I've smoked and searched around for the LVDC and I guess I got a minimum understanding on the guidance equations now. Don't ask me from what they derive, but I think I now what formula does what. To shorten it: the guidance equations are doing their job very well. What seems to be wrong is our navigation. We don't use the original formulas for calculating the state vector, but some sort of other thing, and I believe that this is faulty somehow.
See this-> http://swatch.homeip.net/Orbiter/Apollo%20Documents/Saturn%20Guidance%20Navigation%20and%20Targetting.pdf, this->http://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/19700023342_1970023342.pdf and this -> http://www.ibiblio.org/apollo/Documents/MSFC-IV-4-401-1-AstrionicsSystemHandbookSaturnLaunchVehicles.pdf on that topic.
Too stupid that we don't have the Boeing doc D5-15707-4 "Saturn V Launch Vehicle Navigation Equations, SA-504"...
Logged
Pages: [1] 2 3 ... 23 Print 
« previous next »
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.10 | SMF © 2006-2009, Simple Machines LLC Valid XHTML 1.0! Valid CSS!