Search NASA⌕ Search

SEARCH · Search NASA

Results for “Software errors”

Search indexed NASA NTRS and DOE OSTI research on propulsion, heat transfer, battery materials and energy systems. Follow report and document links to the original sources.

Quote a phrase for an exact phrase match. Source license links do not imply unrestricted reuse.

At least 577 records · Page 32

In Silico Methods for Space System Analysis: Optical Link Coding Performance and Lunar Terrain Masks

As deep space links migrate toward higher frequency bands like 𝐾𝑎 and optical, thor- ough trade-space exploration becomes increasingly valuable for designing reliable and efficient communications systems. In this contribution, we leveraged high-performance, concurrent simulations when the run-time complexity of simulation software overwhelms capabilities of ordinary desktop machines. The first part of this manuscript describes how to run error correcting code simulations concurrently on a high-performance supercomputer. The second part of this study describes a framework to produce azimuth and elevation terrain masks from imagery of the Lunar South Pole.

Michels, Dominik L↗

Easy, Scalable Subsetting of GEDI Point Clouds

The GEDI Subsetter, a Python tool developed for NASA’s Multi-mission Algorithm and Analysis Platform (MAAP), optimizes the accessibility and visualization of GEDI point clouds by enabling users to efficiently subset data in a convenient, scalable manner. Complex science data often requires users to learn new software skills and handle many large files. Handling and cleaning large data sets is tedious and error-prone. These challenges significantly impede analysis. One of the goals of NASA's MAAP is to provide a platform that lowers the barrier to conducting research and analysis at scale. When a group of MAAP users wanted to conduct above-ground biomass estimation using GEDI data, we found that their existing workflow for leveraging GEDI data suffered from the barriers mentioned above. Furthermore, their workflow did not scale easily beyond a small number of granules. We found that existing tools related to GEDI data retrieval and subsetting were too limiting, so the GEDI Subsetter was written to support MAAP users’ needs. Being able to run many subsetting jobs simultaneously in the MAAP, and parallelizing the code itself, has led to significant speed improvements in obtaining relevant data, reducing subsetting time from hours to minutes. MAAP users can now more quickly and easily obtain only the data relevant to their research, by choosing which GEDI collection they want to work with (L1A, L2A, L2B, or L4A), and how they want to subset it, by specifying an area of interest, a temporal range, and relevant attributes. This has significantly reduced the feedback loop for users, allowing them to much more quickly subset GEDI data and begin their analysis. Although the GEDI Subsetter originally targeted users of the MAAP, it is generalized such that it can also be used outside of the MAAP and includes a command-line interface for convenience. Furthermore, with minor modifications, it should be possible to use it with non-GEDI data as the general pattern should be applicable to other sparse/track-based sensors.

Charles Daniels↗

Fault-tolerant clock synchronization validation methodology

A validation method for the synchronization subsystem of a fault-tolerant computer system is presented. The high reliability requirement of flight-crucial systems precludes the use of most traditional validation methods. The method presented utilizes formal design proof to uncover design and coding errors and experimentation to validate the assumptions of the design proof. The experimental method is described and illustrated by validating the clock synchronization system of the Software Implemented Fault Tolerance computer. The design proof of the algorithm includes a theorem that defines the maximum skew between any two nonfaulty clocks in the system in terms of specific system parameters. Most of these parameters are deterministic. One crucial parameter is the upper bound on the clock read error, which is stochastic. The probability that this upper bound is exceeded is calculated from data obtained by the measurement of system parameters. This probability is then included in a detailed reliability analysis of the system.

Computer systems↗

Poster error probability in the Mu-11 Sequential Ranging System

An expression is derived for the posterior error probability in the Mu-2 Sequential Ranging System. An algorithm is developed which closely bounds the exact answer and can be implemented in the machine software. A computer simulation is provided to illustrate the improved level of confidence in a ranging acquisition using this figure of merit as compared to that using only the prior probabilities. In a simulation of 20,000 acquisitions with an experimentally determined threshold setting, the algorithm detected 90% of the actual errors and made false indication of errors on 0.2% of the acquisitions.

Coyle, C. W.↗

Spaceport Command and Control System Automated Verification Software Development

For as long as we have walked the Earth, humans have always been explorers. We have visited our nearest celestial body and sent Voyager 1 beyond our solar system1 out into interstellar space. Now it is finally time for us to step beyond our home and onto another planet. The Spaceport Command and Control System (SCCS) is being developed along with the Space Launch System (SLS) to take us on a journey further than ever attempted. Within SCCS are separate subsystems and system level software, each of which have to be tested and verified. Testing is a long and tedious process, so automating it will be much more efficient and also helps to remove the possibility of human error from mission operations. I was part of a team of interns and full-time engineers who automated tests for the requirements on SCCS, and with that was able to help verify that the software systems are performing as expected.

Automation↗

Metric analysis and data validation across FORTRAN projects

The desire to predict the effort in developing or explaining the quality of software has led to the proposal of several metrics. As a step toward validating these metrics, the Software Engineering Laboratory (SEL) has analyzed the software science metrics, cyclomatic complexity, and various standard program measures for their relation to effort (including design through acceptance testing), development errors (both discrete and weighted according to the amount of time to locate and fix), and one another. The data investigated are collected from a project FORTRAN environment and examined across several projects at once, within individual projects and by reporting accuracy checks demonstrating the need to validate a database. When the data comes from individual programmers or certain validated projects, the metrics' correlations with actual effort seem to be strongest. For modules developed entirely by individual programmers, the validity ratios induce a statistically significant ordering of several of the metrics' correlations. When comparing the strongest correlations, neither software science's E metric cyclomatic complexity not source lines of code appears to relate convincingly better with effort than the others.

Basili, Victor R.↗

Use of symbolic computation in robotics education

An application of symbolic computation in robotics education is described. A software package is presented which combines generality, user interaction, and user-friendliness with the systematic usage of symbolic computation and artificial intelligence techniques. The software utilizes MACSYMA, a LISP-based symbolic algebra language, to automatically generate closed-form expressions representing forward and inverse kinematics solutions, the Jacobian transformation matrices, robot pose error-compensation models equations, and Lagrange dynamics formulation for N degree-of-freedom, open chain robotic manipulators. The goal of such a package is to aid faculty and students in the robotics course by removing burdensome tasks of mathematical manipulations. The software package has been successfully tested for its accuracy using commercially available robots.

Vira, Naren↗

Pulse Shaped 8-PSK Bandwidth Efficiency and Spectral Spike Elimination

The most bandwidth-efficient communication methods are imperative to cope with the congested frequency bands. Pulse shaping methods have excellent effects on narrowing bandwidth and increasing band utilization. The position of the baseband filters for the pulse shaping is crucial. Post-modulation pulse shaping (a low pass filter is located after the modulator) can change signals from constant envelope to non-constant envelope, and non-constant envelope signals through non-linear device (a SSPA or TWT) can further spread the power spectra. Pre-modulation pulse shaping (a filter is located before the modulator) will have constant envelope. These two pulse shaping methods have different effects on narrowing the bandwidth and producing bit errors. This report studied the effect of various pre-modulation pulse shaping filters with respect to bandwidth, spectral spikes and bit error rate. A pre-modulation pulse shaped 8-ary Phase Shift Keying (8PSK) modulation was used throughout the simulations. In addition to traditional pulse shaping filters, such as Bessel, Butterworth and Square Root Raised Cosine (SRRC), other kinds of filters or pulse waveforms were also studied in the pre-modulation pulse shaping method. Simulations were conducted by using the Signal Processing Worksystem (SPW) software package on HP workstations which simulated the power spectral density of pulse shaped 8-PSK signals, end to end system performance and bit error rates (BERS) as a function of Eb/No using pulse shaping in an AWGN channel. These results are compared with the post-modulation pulse shaped 8-PSK results. The simulations indicate traditional pulse shaping filters used in pre-modulation pulse shaping may produce narrower bandwidth, but with worse BER than those in post-modulation pulse shaping. Theory and simulations show pre- modulation pulse shaping could also produce discrete line power spectra (spikes) at regular frequency intervals. These spikes may cause interference with adjacent channel and reduce power efficiency. Some particular pulses (filters), such as trapezoid and pulses with different transits (such as weighted raised cosine transit) were found to reduce bandwidth and not generate spectral spikes. Although a solid state power amplifier (SSPA) was simulated in the non-linear (saturation) region, output power spectra did not spread due to the constant envelope 8-PSK signals.

Tao, Jian-Ping↗

Tools for Administration of a UNIX-Based Network

Several computer programs have been developed to enable efficient administration of a large, heterogeneous, UNIX-based computing and communication network that includes a variety of computers connected to a variety of subnetworks. One program provides secure software tools for administrators to create, modify, lock, and delete accounts of specific users. This program also provides tools for users to change their UNIX passwords and log-in shells. These tools check for errors. Another program comprises a client and a server component that, together, provide a secure mechanism to create, modify, and query quota levels on a network file system (NFS) mounted by use of the VERITAS File SystemJ software. The client software resides on an internal secure computer with a secure Web interface; one can gain access to the client software from any authorized computer capable of running web-browser software. The server software resides on a UNIX computer configured with the VERITAS software system. Directories where VERITAS quotas are applied are NFS-mounted. Another program is a Web-based, client/server Internet Protocol (IP) address tool that facilitates maintenance lookup of information about IP addresses for a network of computers.

LeClaire, Stephen↗

Variable gain for a wind turbine pitch control

The gain variation is made in the software logic of the pitch angle controller. The gain level is changed depending upon the level of power error. The control uses low gain for low pitch activity the majority of the time. If the power exceeds ten percent offset above rated, the gain is increased to a higher gain to more effectively limit power. A variable gain control functioned well in tests on the Mod-0 wind turbine.

Seidel, R. C.↗

Algorithm development for the control design of flexible structures

The critical problems associated with the control of highly damped flexible structures are outlined. The practical problems include: high performance; assembly in space, configuration changes; on-line controller software design; and lack of test data. Underlying all of these problems is the central problem of modeling errors. To justify the expense of a space structure, the performance requirements will necessarily be very severe. On the other hand, the absence of economical tests precludes the availability of reliable data before flight. A design algorithm is offered which: (1) provides damping for a larger number of modes than the optimal attitude controller controls; (2) coordinates the rate of feedback design with the attitude control design by use of a similar cost function; and (3) provides model reduction and controller reduction decisions which are systematically connected to the mathematical statement of the control objectives and the disturbance models.

Skelton, R. E.↗

Point spread function for a segmented mirror system

A procedure was developed to generate point spread functions for a segmented mirror system for a deployable reflector for submillimeter astronomy. These point spread functions were generated using ACCOS V and special purpose software. This procedure allows tilt and piston sensitivities to be evaluated. Point spread functions with tilt and piston errors are discussed.

Smith, S. T.↗

A second generation experiment in fault-tolerant software

Information was collected on the efficacy of fault-tolerant software by conducting two large-scale controlled experiments. In the first, an empirical study of multi-version software (MVS) was conducted. The second experiment is an empirical evaluation of self testing as a method of error detection (STED). The purpose ot the MVS experiment was to obtain empirical measurement of the performance of multi-version systems. Twenty versions of a program were prepared at four different sites under reasonably realistic development conditions from the same specifications. The purpose of the STED experiment was to obtain empirical measurements of the performance of assertions in error detection. Eight versions of a program were modified to include assertions at two different sites under controlled conditions. The overall structure of the testing environment for the MVS experiment and its status are described. Work to date in the STED experiment is also presented.

Knight, J. C.↗

Development of load-dependent Ritz vector method for structural dynamic analysis of large space structures

The development and preliminary assessment of a method for dynamic structural analysis based on load-dependent Ritz vectors are presented. The vector basis is orthogonalized with respect to the mass and structural stiffness in order that the equations of motion can be uncoupled and efficient analysis of large space structure performed. A series of computer programs was developed based on the algorithm for generating the orthogonal load-dependent Ritz vectors. Transient dynamic analysis performed on the Space Station Freedom using the software was found to provide solutions that require a smaller number of vectors than the modal analysis method. Error norm based on the participation of the mass distribution of the structure and spatial distribution of structural loading, respectively, were developed in order to provide an indication of vector truncation. These norms are computed before the transient analysis is performed. An assessment of these norms through a convergence study of the structural response was performed. The results from this assessment indicate that the error norms can provide a means of judging the quality of the vector basis and accuracy of the transient dynamic solution.

Ricles, James M.↗

The development of lossless data compression technology for remote sensing applications

Lossless data compression has been studied for many NASA missions to achieve the benefit of increased science return, reduced onboard memory requirement, station contact time and communication bandwidth. This paper first addresses the requirement for onboard applications and provides rational for the selection of the Rice algorithm among other available techniques. A top-level description of the Rice algorithm will be given, along with some new capabilities already implemented in both software and hardware VLSI forms. The paper then addresses systems issues important for onboard implementation including sensor calibration, error propagation and data packetization. The latter part of the paper provides several case study examples drawn from a broad spectrum of science instruments including the thematic mapper, x-ray telescope, gamma-ray spectrometer, and acousto-optical spectrometer.

Yeh, Pen-Shu↗

Automatic Testcase Generation for Flight Software

The TacSat3 project is applying Integrated Systems Health Management (ISHM) technologies to an Air Force spacecraft for operational evaluation in space. The experiment will demonstrate the effectiveness and cost of ISHM and vehicle systems management (VSM) technologies through onboard operation for extended periods. We present two approaches to automatic testcase generation for ISHM: 1) A blackbox approach that views the system as a blackbox, and uses a grammar-based specification of the system's inputs to automatically generate *all* inputs that satisfy the specifications (up to prespecified limits); these inputs are then used to exercise the system. 2) A whitebox approach that performs analysis and testcase generation directly on a representation of the internal behaviour of the system under test. The enabling technologies for both these approaches are model checking and symbolic execution, as implemented in the Ames' Java PathFinder (JPF) tool suite. Model checking is an automated technique for software verification. Unlike simulation and testing which check only some of the system executions and therefore may miss errors, model checking exhaustively explores all possible executions. Symbolic execution evaluates programs with symbolic rather than concrete values and represents variable values as symbolic expressions. We are applying the blackbox approach to generating input scripts for the Spacecraft Command Language (SCL) from Interface and Control Systems. SCL is an embedded interpreter for controlling spacecraft systems. TacSat3 will be using SCL as the controller for its ISHM systems. We translated the SCL grammar into a program that outputs scripts conforming to the grammars. Running JPF on this program generates all legal input scripts up to a prespecified size. Script generation can also be targeted to specific parts of the grammar of interest to the developers. These scripts are then fed to the SCL Executive. ICS's in-house coverage tools will be run to measure code coverage. Because the scripts exercise all parts of the grammar, we expect them to provide high code coverage. This blackbox approach is suitable for systems for which we do not have access to the source code. We are applying whitebox test generation to the Spacecraft Health INference Engine (SHINE) that is part of the ISHM system. In TacSat3, SHINE will execute an on-board knowledge base for fault detection and diagnosis. SHINE converts its knowledge base into optimized C code which runs onboard TacSat3. SHINE can translate its rules into an intermediate representation (Java) suitable for analysis with JPF. JPF will analyze SHINE's Java output using symbolic execution, producing testcases that can provide either complete or directed coverage of the code. Automatically generated test suites can provide full code coverage and be quickly regenerated when code changes. Because our tools analyze executable code, they fully cover the delivered code, not just models of the code. This approach also provides a way to generate tests that exercise specific sections of code under specific preconditions. This capability gives us more focused testing of specific sections of code.

Bushnell, David Henry↗

Kepler Science Operations Center Architecture

We give an overview of the operational concepts and architecture of the Kepler Science Data Pipeline. Designed, developed, operated, and maintained by the Science Operations Center (SOC) at NASA Ames Research Center, the Kepler Science Data Pipeline is central element of the Kepler Ground Data System. The SOC charter is to analyze stellar photometric data from the Kepler spacecraft and report results to the Kepler Science Office for further analysis. We describe how this is accomplished via the Kepler Science Data Pipeline, including the hardware infrastructure, scientific algorithms, and operational procedures. The SOC consists of an office at Ames Research Center, software development and operations departments, and a data center that hosts the computers required to perform data analysis. We discuss the high-performance, parallel computing software modules of the Kepler Science Data Pipeline that perform transit photometry, pixel-level calibration, systematic error-correction, attitude determination, stellar target management, and instrument characterization. We explain how data processing environments are divided to support operational processing and test needs. We explain the operational timelines for data processing and the data constructs that flow into the Kepler Science Data Pipeline.

Middour, Christopher↗

Six Degrees-of-Freedom Ascent Control for Small-Body Touch and Go

A document discusses a method of controlling touch and go (TAG) of a spacecraft to correct attitude, while ensuring a safe ascent. TAG is a concept whereby a spacecraft is in contact with the surface of a small body, such as a comet or asteroid, for a few seconds or less before ascending to a safe location away from the small body. The report describes a controller that corrects attitude and ensures that the spacecraft ascends to a safe state as quickly as possible. The approach allocates a certain amount of control authority to attitude control, and uses the rest to accelerate the spacecraft as quickly as possible in the ascent direction. The relative allocation to attitude and position is a parameter whose optimal value is determined using a ground software tool. This new approach makes use of the full control authority of the spacecraft to correct the errors imparted by the contact, and ascend as quickly as possible. This is in contrast to prior approaches, which do not optimize the ascent acceleration.

Blackmore, Lars James C.↗