Special Coverage

Home

X-Windows Socket Widget Class

The X-Windows Socket Widget Class (“Class” is used here in the object-oriented -programming sense of the word) was devised to simplify the task of implementing network connections for graphical-userinterface (GUI) computer programs. UNIX Transmission Control Protocol/Internet Protocol (TCP/IP) socket programming libraries require many method calls to configure, operate, and destroy sockets. Most XWindows GUI programs use widget sets or toolkits to facilitate management of complex objects. The widget standards facilitate construction of toolkits and application programs. The X-Windows Socket Widget Class encapsulates UNIX TCP/IP socket-management tasks within the framework of an X Windows widget. Using the widget framework, X Windows GUI programs can treat one or more network socket instances in the same manner as that of other graphical widgets, making it easier to program sockets. Wrapping ISP socket programming libraries inside a widget framework enables a programmer to treat a network interface as though it were a GUI.

Posted in: Briefs

Read More >>

X-Windows Information Sharing Protocol Widget Class

The X-Windows Information Sharing Protocol (ISP) Widget Class (“Class” is used here in the object-oriented -programming sense of the word) was devised to simplify the task of implementing ISP graphical-user-interface (GUI) computer programs. ISP programming tasks require many method calls to identify, query, and interpret the connections and messages exchanged between a client and an ISP server. Most X-Windows GUI programs use widget sets or toolkits to facilitate management of complex objects. The widget standards facilitate construction of toolkits and application programs. The X-Windows Information Sharing Protocol (ISP) Widget Class encapsulates the client side of the ISP programming libraries within the framework of an X-Windows widget. Using the widget framework, X-Windows GUI programs can interact with ISP services in an abstract way and in the same manner as that of other graphical widgets, making it easier to write ISP GUI client programs. Wrapping ISP client services inside a widget framework enables a programmer to treat an ISP server interface as though it were a GUI. Moreover, an alternate subclass could implement another communication protocol in the same sort of widget.

Posted in: Briefs

Read More >>

Analyzing Power Supply and Demand on the ISS

Station Power and Energy Evaluation Determiner (SPEED) is a Java application program for analyzing the supply and demand aspects of the electrical power system of the International Space Station (ISS). SPEED can be executed on any computer that supports version 1.4 or a subsequent version of the Java Runtime Environment. SPEED includes an analysis module, denoted the Simplified Battery Solar Array Model, which is a simplified engineering model of the ISS primary power system. This simplified model makes it possible to perform analyses quickly. SPEED also includes a userfriendly graphical- interface module, an input file system, a parameter-configuration module, an analysis-configurationmanagement subsystem, and an output subsystem. SPEED responds to input information on trajectory, shadowing, attitude, and pointing in either a state-ofcharge mode or a power-availability mode. In the state-of-charge mode, SPEED calculates battery state-of-charge profiles, given a time-varying power-load profile. In the power-availability mode, SPEED determines the time-varying total available solar array and/or battery power output, given a minimum allowable battery state of charge.

Posted in: Briefs

Read More >>

Automated Activation and Deactivation of a System Under Test

The MPLM Automated Activation/Deactivation application (MPLM means Multi-Purpose Logistic Module) was created with a three-fold purpose in mind: To reduce the possibility of human error in issuing commands to, or interpreting telemetry from, the MPLM power, computer, and environmental control systems; To reduce the amount of test time required for the repetitive activation/deactivation processes; and To reduce the number of on-console personnel required for activation/ deactivation.

Posted in: Briefs

Read More >>

HFGMC Enhancement of MAC/GMC

Additional information about a mathematical model denoted the high-fidelity generalized method of cells (HFGMC) and implementation of the HFGMC within version 4.0 of the MAC/GMC software has become available. MAC/GMC (Micromechanics Analysis Code With Generalized Method of Cells) was a topic of several prior NASA Tech Briefs articles, version 4.0 having been described in “Comprehensive Micromechanics-Analysis Code — Version 4.0” (LEW-17495-1), NASA Tech Briefs, Vol. 29, No. 9 (September 2005), page 54. MAC/GMC predicts elastic and inelastic thermomechanical responses of composite materials. MAC/GMC utilizes the generalized method of cells (GMC) — a model of micromechanics that predicts macroscopic responses of a composite material as functions of the properties, sizes, shapes, and responses of its constituents (e.g., matrix and fibers). The accuracy of the GMC is limited by neglect of coupling between normal and shear stresses. The HFGMC was developed by combining elements of the GMC and a related model, denoted the higher-order theory for functionally graded materials (HOTFGM), that can account for this coupling. Hence, the HFGMC enables simulation of stress and strain with greater accuracy. Some alterations of the MAC/GMC data structure were necessitated by the greater computational complexity of the HFGMC.

Posted in: Briefs, TSP

Read More >>

Architecture for Control of the K9 Rover

Software featuring a multilevel architecture is used to control the hardware on the K9 Rover, which is a mobile robot used in research on robots for scientific exploration and autonomous operation in general. The software consists of five types of modules: Device Drivers — These modules, at the lowest level of the architecture, directly control motors, cameras, data buses, and other hardware devices. Resource Managers — Each of these modules controls several device drivers. Resource managers can be commanded by either a remote operator or the pilot or conditional-executive modules described below. Behaviors and Data Processors — These modules perform computations for such functions as planning paths, avoiding obstacles, visual tracking, and stereoscopy. These modules can be commanded only by the pilot. Pilot — The pilot receives a possibly complex command from the remote operator or the conditional executive, then decomposes the command into (1) more-specific commands to the resource managers and (2) requests for information from the behaviors and data processors. Conditional Executive — This highest-level module interprets a command plan sent by the remote operator, determines whether resources required for execution of the plan are available, monitors execution, and, if necessary, selects an alternate branch of the plan.

Posted in: Briefs, TSP

Read More >>

Satellite Image Mosaic Engine

A computer program automatically builds large, full-resolution mosaics of multispectral images of Earth landmasses from images acquired by Landsat 7, complete with matching of colors and blending between adjacent scenes. While the code has been used extensively for Landsat, it could also be used for other data sources. A single mosaic of as many as 8,000 scenes, represented by more than 5 terabytes of data and the largest set produced in this work, demonstrated what the code could do to provide global coverage. The program first statistically analyzes input images to determine areas of coverage and data-value distributions. It then transforms the input images from their original universal transverse Mercator coordinates to other geographical coordinates, with scaling. It applies a first-order polynomial brightness correction to each band in each scene. It uses a data-mask image for selecting data and blending of input scenes. Under control by a user, the program can be made to operate on small parts of the output image space, with check-point and restart capabilities. The program runs on SGI IRIX computers. It is capable of parallel processing using shared-memory code, large memories, and tens of central processing units. It can retrieve input data and store output data at locations remote from the processors on which it is executed.

Posted in: Briefs, TSP

Read More >>