Iridium Next LEO Satellites as an Alternative PNT in GNSS Denied Environments – Part 1 - Inside GNSS

Iridium Next LEO Satellites as an Alternative PNT in GNSS Denied Environments – Part 1

The problem of Position Determination based on Low Earth Orbit (LEO) satellites signal of opportunity in uncovered and denied GNSS areas such as oceanic regions, north regions and deserts can be significant one. How to maintain tracking information of airlines especially during distress and emergency? To achieve that, a new design for Search and Rescue (SAR) positioning information is developed. Position and speed of the transceiver could be estimated based on distributed Doppler information fusion from LEO satellites. In emergency cases, especially when considering an aircraft, dynamic, trajectory, antenna axis rotation or any other obstruction or damage makes the positioning as well as the tracking of the aircraft are very difficult to achieve and are non-resilient. This article shows a proof of concept of the innovative solution under development, by selecting Iridium Next LEO constellation, considered as an emerging upgraded satellite technology, and privileged for search and rescue applications. Post processing based on experimental data collection demonstrated very good performances and a first experimental and theoretical results show very promising results for position determination using Doppler shift estimation and analysis.

Doppler shift based positioning has been experimented and developed during the last 50 years until GNSS constellations became fully operational including GPS, GLONASS, Galileo and more recently BeiDou. Different satellite systems such as ARGOS and COSPAS-SARSAT use Doppler shift position determination algorithms for Search and Rescue applications and offer acceptable positioning accuracy compared to more accurate GNSS solutions (see Ashton et alia in Additional Resources). The main advantages to use these constellations for positioning is that they can work in Denied GNSS environments and can provide Positioning and Timing information to the users. According to that, and with the development necessity of new technologies that are able to deliver navigation solutions whatever the environment and RF conditions, systems called PNT: Positioning Navigation and Timing were developed based on GPS and other GNSS signals as well as based on totally independent positioning systems such as communication satellites like: Orbcomm, Globalstar and recently with Iridium Next satellites constellation. To better ensure accuracy, adaptive and robust Kalman filtering approaches were developed and proposed such as in many related problems published in the literature (Benzerrouk et alia, also Winger, Additional Resources).

Recently, with the development and the upgrade of Iridium satellites network into Iridium Next constellation, and with various research and development conducted mainly by Boeing company, Satelles and Iridium Next, one can find various and tremendous results through different coupling, filtering and PNT resiliency and reliability demonstration with and without GPS or GNSS signals (Cobb et alia, Additional Resources). In addition, it has been proved that GNSS signals are of the most importance; not only for positioning and navigation, but also for timing application and synchronization in different sectors such as telecommunications, networks and sensor networks synchronizations, etc. In addition, all require a resilient PNT solution. In particular, and by assuming a denied GNSS environment, we propose an alternative PNT as a Position Determination (PDS) solution based on Iridium Next LEO constellation.

This solution can be directly applied to stationary then extended to dynamical positioning, for oceanic flight tracking, aircraft navigation safety in uncovered areas during emergency and distress situations. Thus, we consider a general design, however the application is demonstrated for stationary radio beacon using Iridium Next signal of opportunity (SoOp).

Iridium_Fig2

Iridium_Fig3

Position Determination Solution Using LEO Satellites

In many navigation applications, positioning systems can be non-available or non-resilient, in particular inside denied or uncovered regions or restricted areas. Thus, an interesting question arises on how we can maintain PDS information to deliver range, range-rate, position, azimuth and timing anytime, anywhere in the Globe? This article addresses this problem, which was motivated after the 2014 loss of the Malaysia MH370 airline over the Indian Ocean. Since that incident, ICAO has involved and oriented considerable efforts and expert’s involvement from aviation and aerospace industry to make flights safer by the integration of additional PDS, ensuring safety, tracking and communication in all conditions. Unlike GNSS, and other navigation aids, the solution the authors propose uses selected low latency LEO satellites, see (Figure 1 and Figure 2) with reliable positioning capabilities. Moreover, these augmented systems are resilient PNT/PDS solutions and can be integrated as an additional aid to redundant inertial navigation on-board vehicle, on-body, multiple vessels, aircraft, etc. To solve this challenging problem, the Iridium Next satellite constellation is considered. Downlink signals can significantly outperform GNSS signals relatively to the power of the signal, instead of other constellation candidates such as Globalstar, Orbcomm and Inmarsat, that are described, analyzed and compared in another work made by the authors and recently experimented by the authors in the paper by Ardito et alia in Additional Resources.

It is demonstrated that Iridium can deliver a position information with C.E.P radius of 1–2Km in the best cases (without advanced signal processing or data fusion) and then can be interpreted in state estimation as an important nonlinear inequality constraint, or a good initialization information. More than, that, and based on the distinguished work and efforts provided by the authors (Bahrami, also Benzerrouk et alia, 2018)Iridium-Next (Iridium previously) has demonstrated clear capability in computing instantaneous position using one LEO satellite, during what each connected terminal can be detected and located with acceptable accuracy (1–10 Km) by the satellite operator, see Figure 6. Test results are shown and discussed later in this paper. During our analysis, experimental Iridium modem called 9523N transceiver was used and given as an alternative PNT/PDS solution in denied GNSS signal (GPS, GLONASS, GALILEO and BEIDOU). Using the 9523N Development Board can significantly reduce the time of tests and first positioning results by using AT-Command provided by the operator, through what global flight tracking and air traffic management systems continuity would be possible based on Iridium Next PNT resilient solution. However, the accuracy is limited and additional signal processing is then more than necessary when considering Iridium Next as a SoOp!

Iridium_Fig4 Iridium_Fig5 Iridium_Fig6 Iridium_Fig7

Doppler Based Positioning Using Iridium Next

In the last several decades, previous analysis reported the feasibility of integrated satellites Doppler/INS based on Kalman filter for general vehicle navigation problems and applications (see Benzerrouk et alia and Lopez et alia, Additional Resources). This fusion has been considered as resilient integrated navigation systems, especially when using satellite Doppler measurement in denied GNSS environment. Different numerical methods for frequency shift estimation were developed and introduced to the positioning engineering community, see Figures 6 to Figure 8. As an examp le, we compared INS/GPS past and present architectures to the models developed for Doppler aided INS integrated systems. Previously, different methods of positioning applied to TRANSIT, COSPAS-SARSAT and ARGOS were developed. More recently, Globalstar, Iridium and Orbcomm were investigated (Ardito et alia, also Morales et alia). In this article, a very high attention is devoted to Iridium Next satellite constellation network, which has been upgraded during 2017 and was completed by early January 2019. Iridium Next with more than 77 new satellites brings their total number in the sky to more than 140 LEO satellites including the previous spacecraft (most of them were still active during the constellation upgrades, but have been deactivated since January 2019.

It is important to mention that the geometry of LEO satellites being different from GNSS constellations and their visibility offer serious advantages that may deserve an attention and deep analysis. Another attractive characteristic of Iridium Next is their performing and useful communication mode and protocol in positioning is called SBD (Short Burst Data), widely used in flight tracking applications to transmit burst messages, GPS or flight data to a ground server through Iridium Gateways. Iridium Next constellation is then considered as an attractive and significantly resilient PNT/PDS solution for many reasons; one of the most important is: Iridium Next LEO satellites are on a circular orbit at 780 Km altitude which makes their signal much higher than GNSS signals from 300 to 2400 times stronger. The User Terminal (UT); or modem; can receive signals from visible satellites over the horizon and select the closest one for communication and registration on the Network. The main downlink signals transmitted from the Iridium Next satellites are mentioned above:

STL signal, Ring Alert, and MSG primary message, transmitted respectively on the following frequencies: 1626.27 Mhz- 1626.104 Mhz and 1626.43 Mhz, which can be clearly seen on Figures 17 to Figure 21. In addition, the latency time has been reduced from 700 ms to 100 ms, which makes Iridium Next on top as a potential PNT solution for remote control, telemetry, unmanned systems monitoring, positioning, and the development of Doppler shift estimation and other methods based on range, range rate and angle of arrival estimation from the LEO satellites. To the best of the authors’ knowledge, the author in (see Levanon and Lopez et alia in Additional Resources) developed the first demonstration of instantaneous positioning algorithm using one or two LEO satellites without navigation messages transmitted to the transceiver, with extended work to two LEO satellites. In particular, including the range rate deterministic error analysis, see Figure 6.

To better understand the problem statement, readers can refer to the latest works using Globalstar signal, Orbcomm signal which is transmitted from a constellation of 48 LEO and 51 LEO satellites at respectively low orbit of 1400 Km altitude and 740-975km (Morales et alia, Additional Resources). In other works, different methods were developed such as the intensive work by Lopez et alia on Doppler signal using Kalman filter methods instead of Least Square positioning for both static and dynamic positioning using Argos LEO Doppler signals. In the paper by Morales et alia, the authors for inertial integrated navigation system also used the Orbcomm LEO satellites Doppler shift, and it was implemented on SDR-USRP E-312 and tested on-board multi-rotor UAV during real flight, at the end of what, very attractive and optimistic results were demonstrated. In this study and analysis, one can observe the Doppler Shift is exactly symmetric and opposite to the range rate value by comparing figures curves of Doppler shift and range rate values such as in Figure 5. It is also important to pay attention to the Iridium based instantaneous positioning using Range and Range error modelling such in both papers by Levanon, and presented on Figure 6. Thus, it is possible to observe on Figure 6 along track error accuracy variation of between 400-1200 meters (m) accuracy, which is considered as an interesting first preliminary result. We recommend readers seeking a better understating of theoretical models refer to and understand models developed by the authors in [Levanon 99 and Xi et al. 2016]. In this challenging environment without GNSS, the most critical point is to estimate accurately iridium Next Downlink frequency for Doppler Shift analysis and estimation. This challenge requires of course mathematical models and algorithms to achieve that purpose, by estimating Doppler frequency as well as Doppler rate, equivalent respectively to Range rate and Range rate rate. Before describing the theory and practice of this PNT solution, a brief discussion and reference to pioneers in this field is necessary and mandatory; such as the Boeing Company and Stanford GPS Laboratory. In addition to their intensive work on iridium augmented GPS receivers, between 2009-2011 calling that as a BTL (Boeing Timing and Location) signal by using encrypted downlink Iridium signal frequency used on the pager frequency-1626.104Mhz and presently owned and developed by Satelles Company. Very attractive and exciting results were shown by specialists during various Indoor and Outdoor tests providing iridium only positioning as well as Iridium augmenting GPS signal in Canyons Urban environment. The solution is presently called STL (Satelles Location and Timing) and is already operational on some evaluations board developed by the same company.

Iridium_Fig8 Iridium_Fig9 Iridium_Fig10A Iridium_Fig10B Iridium_Fig11

Background and Advances in STL Positioning and Timing

Using the specific downlink Iridium signal as a PNT resilient solution, one can find the tremendous results obtained and demonstrated by Satelles. In our case, we do not restrict Iridium signal to one Downlink frequency but we assume and we investigate all downlink bandwidth received by the iridium 9523N development board at first, then by using a software defined radio USRP-E310 from ettus to process iridium Next as a SoOP.

In our concept, Iridium transceiver location or USRP E-310 Geolocation and positioning problem can be assimilated to Multi-Range rate measurement based positioning by Least Square algorithm or by the implementation of a Kalman filter. Later in our tests, we will use USRP E-310 Software Defined Radio to capture iridium Downlink signal and record the I/Q samples for Doppler estimation by using algorithms described in the paper by Su et alia, Additional Resources.

Iridium_Fig12 Iridium_Fig13 Iridium_Fig14

Iridium Next Satellite Doppler and Visibility Analysis

In this subsection, analytical analysis is described to introduce briefly the LEO circular orbit parameters, Doppler equation with satellite visibility applied to Iridium Next satellite for different angles of elevations (See Figure 10). By considering the parameters such as described in Figure 8, one can easily define such as in Fossa et alia the slant range mathematical definition such as given below:

Let us define t0 as the time when the iridium Terminal (modem) observe the iridium satellite SVi at the maximum elevation angle θmax, and let us define the Zero-Doppler as the measured null Doppler at this point. From the work and the development of Chen et alia, one can derivative of the slant range such as given below:

Such as in Figure 8, we can demonstrate that:

Which can be used to differentiate the slant range and obtain the following equation. From this development and from the following satisfied condition (Pythagorean Theorem), it is possible to write:

Observation: In addition, by introducing the iridium satellites angular velocity expressed in the ECF (Earth Centred Frame), it is possible to write and determine the normalized Doppler formula such as given in the following equation:

In this work, two different iridium transceivers, 9523N and the USRP E310 Software Defined Radio with Iridium Patch antenna RST-720 were used to collect Data and for signal processing (Omni Directional antenna).

Iridium_Fig15 Iridium_Fig16 Iridium_Fig17 Iridium_Fig18

Instantaneous one Iridium Next satellite based positioning

Before developing the state space model solution and information fusion based on multiple Doppler range and range rate measurement, it is interesting to analyse the potential error of instantaneous positioning algorithm such as developed by Chen et alia and Levanon using one only LEO Globalstar satellite, then Two LEO Globalstar satellites respectively, with Chinese LEO satellites. From Figure 11, one can observe that for short period of measurement and observation between the iridium modem and the iridium satellite (1 min-7min), and according again to Chen et alia and Levanon, it is possible to assume the trajectory of the satellite as a line instead of the circular orbit. Based on this assumption and approximation. It is possible to rewrite the range and range rate measurement, they can be computed using the following equations:

Important note. It is possible to explore recent and modern approaches based on TDOA/FDOA measurement between a fixed reference station and a second mobile transceiver in order to estimate position, ensuring navigation and providing resilient timing information such as proposed by Gavin, Additional Resources. To better understand our approach and results, in Figure 9 and Figure 10, one can observe real data of Multi- iridium Next LEO satellites navigation, real orbit determination tracking during a pass (10 minutes), with real Doppler curves measured and estimated by USRP E-310 (Software Defined Radio) at Lassena laboratory on the roof of ETS in Montreal (See Figure 12).

Thus, the cross track error variance and the along track error variance are given by (Hsu et alia, and Levanon, Additional Resources):

These equations are obtained from the observation Matrix H and the Weight Matrix W.

Where the following parameters are described:

Std: Standard deviation

is the pseudorange rate std

is the pseudorange std

is the cross track std

is the along track std

is the pseudorange of ith satellite

is the pseudorange rate of ith satellites

In this problem, there was no consideration to the altitude of the User terminal (Modem) or its impact on geolocation estimation using Doppler shift frequency detection and computation. The effect of the altitude should be subject of another analysis and experimental work made by the authors.

Mathematical Problem Formulation: The mathematical problem is very correlated with previously and more recently Doppler based positioning analysis using GNSS signal by the authors in Knogl et alia, and Benzerrouk and Nebylov. The goal is to determine the position of the SDR USRP E310 receiving Iridium Dowlink signals on different frequencies, and converge to the real position defined by the vector: rusrp=[xusrpyusrpzusrp]T. It is extremely difficult to measure the Doppler shift with the precision required for the positioning especially without very accurate timing source. We demonstrate however, the possibility to measure Doppler shifts for the following three iridium Next signals: STL, Ring Alert and Primary Message such as described on Figure 16 and Figure 17. Another technique using double range could be adopted to eliminate clock offset (Soualle et alia).

The Doppler Shift can be modelled with the following product equation:

Doppler Positioning:

Let us define: Vir, i = 1..n are the satellite relative velocity vectors, assumed known (predicted with GPredict Software–See Figure 3), and also define: rir, i = 1..n, are the satellite position vectors, assumed known and the delta range for i = 1..n are fully defined by the following equation (see Ashton et alia and Levanon 1999):

Unlike GPS, one of the main problems is that the position of Iridium Next satellites is not known precisely, by the way to estimate the position of Iridium satellites, we integrate a TLE-SGP4 file update in order to predict the orbit and the position of iridium SVi at each time we measure the Doppler shift from the received signal. We also use Gpredict Software based on TLE files and SGP4 model to initialize EKF later (Morales et alia, Additional Resources).

GPredict then could play an important role in the initialization of the Extended Kalman filter or the Levenberg Marquardt using TLE prediction. However, during the estimation process of the transceiver location, we augment the state vector with the position of the iridium satellite in order to increase the accuracy of the positioning algorithm during navigation phases when applied to ground vehicle, UAV or an aircraft (Morales et alia).

Thus, it is possible to develop the following differential equations for Position determination using nonlinear least square algorithms as described in the paper by Bahrami in Additional Resources:

The techniques described previously have been applied to multiple LEO constellation such as Globalstar, ARGOS, COSPAS-SARSAT, Orbcomm, etc. In this paper, the original approach, which we developed, is based on nonlinear state estimation by considering a nonlinear least square problem as well as an Extended Kalman Filter (EKF), in addition to the consideration of Iridium Next LEO satellites as a mobile Network. From each visible Iridium Next Satellite, range-range rate information can be computed, predicted and estimated in real time or during post processing.

References

(1) Ardito, C. T., J. J. Morales, J. Khalife, A. A. Abdallah, Z. Kassas, and M Zaher, ”Performance Evaluation of Navigation Using LEO Satellite Signals with Periodically Transmitted Satellite Positions,” Proceedings of the 2019 International Technical Meeting of The Institute of Navigation, Reston, Virginia, January 2019, pp. 306-318. https://doi.org/10.33012/2019.16743.

(2) Ashton, C., B. Shuster, A., G. Colledge, and M. Dickinson, (2015). The Search for MH370. Journal of Navigation, 68(1), 1-22. doi:10.1017/S037346331400068.

(3) Bahrami, M, GNSS Doppler Positioning (an Overview), Univer- sity College London, Geomatics Lab, A Paper prepared for GNSS SIG Technical Reading Group, 12 p, 2008.

(4) Benzerrouk, H.; A. Nebylov, M. Li, M., Multi-UAV Doppler Informa- tion Fusion for Position Determination Based on Distributed High Degrees Information Filters. Aerospace2018, 5, 28

(5) Benzerrouk H., and A. Nebylov, ”Robust nonlinear filtering ap- plied to integrated navigation system INS/GNSS under non Gaussian measurement noise effect,” 2012 IEEE Aerospace Conference, Big Sky, MT, 2012, pp. 1-8.

(6) Chen, Xi et alia. “Analysis on the Performance Bound of Doppler Positioning Using One LEO Satellite.” 2016 IEEE 83rd Vehicular Technology Conference (VTC Spring) (2016): 1-5.

(7) Cobb, S., D. Lawrence, G. Gutt, M. O’Connor, “Differential and Rubidium Disciplined Test Results from an Iridium-Based Secure Timing Solution,” Proceedings of the 2017 International Technical Meeting of The Institute of Navigation, Monterey, California, January 2017, pp. 1111-1116.

(8) Gavin, H. P., The Levenberg-Marquardt method for nonlinear least squares curve-fitting problems c . (2013).

(9) Hsu, Wu-Hung and Shau-Shiun Jan. Assessment of using Doppler shift of LEO satellites to aid GPS positioning. 2014 IEEE/ION Position, Location and Navigation Symposium—PLANS 2014 (2014): 1155-1161.

(10) Knogl, J. S., P. Henkel, and C. Günther, Precise positioning of a geostationary data relay using LEO satellites. Proceedings ELMAR-2011 (2011): 325-328.

(11) Lawrence, D., H. Cobb, Stewart, G. Gutt, F. Tremblay, P. Laplante, M. O’Connor, “Test Results from a LEO-Satellite-Based Assured Time and Location Solution,” Pro- ceedings of the 2016 International Technical Meeting of The Institute of Navigation, Monterey, California, January 2016, pp. 125-129.

(12) Levanon, N., “Quick position determination using 1 or 2 LEO satellites,” in Aerospace and Electronic Systems, IEEE Transactions on , vol.34,no.3, pp.736-754, Jul 1998.

(13) Levanon, N. (1999), Instant Active Positioning with One LEO Satellite. Navigation, 46: 87C95. doi: 10.1002/j.2161-4296.1999.tb02397.x.

(14) Lopez, R., J. Malard´e, F. Royer and P. Gaspar, “Improving Argos Doppler Location Using Multiple-Model Kalman Filtering,” in IEEE Transactions on Geoscience and Remote Sensing, vol.52, no.8, pp.4744-4755,Aug.2014.doi: 10.1109/TGRS. 2013. 2284293.

(15) Morales, J., J. Khalife, A. Abdallah, C. Ardito, and Z. Kassas, Inertial navigation system aiding with Orbcomm LEO satellite Doppler measurements. ION Global Navigation Satellite Systems Conference, Sep. 24-28, 2018, Miami, FL.

(16) Reid, T., A. M. Neish, T. Walter, P. K. Enge, “Broadband LEO Constellations for Navigation”, NAVIGATION, Journal of The Institute of Navigation, Vol. 65, No. 2, Summer 2018, pp. 205-220

(17) Winger, D. J., ”Error analysis of an integrated inertial/Doppler-satellite navigation system with continuous and multiple satellite coverage ” (1971). Retrospective Theses and Dis- sertations. 4864.

(18) http://gpsworld.com/tag/malaysia-airlines/

(19) http://gpsworld.com/iridium-constellation-provides-low-earth-orbit- satnav-service

(20) Su, Y. T. and Ru-Chwen Wu, “Frequency acquistion and tracking in high dynamic environments,” in IEEE Transactions on Vehicular Technology, vol. 49, no. 6, pp. 2419-2429, Nov. 2000.

(21) Perspectives of PNT Services Supported by Mega-Constellastions”, Francis Soualle, Airbus DS (Germany) International Technical Symposium on Navigation and Timing (ITSNT) Toulouse, 14th November 2018, ENAC.

(22) Fossa, C. E., R. A. Raines, G. H. Gunsch and M. A Temple, “An overview of the IRIDIUM (R) low Earth Orbit (LEO) satellite system,” Proceedings of the IEEE 1998 National Aerospace and Electronics Conference. NAECON 1998. Celebrating 50 Years. (Cat. No.98CH36185), Dayton, OH, USA, 1998, pp. 152-159.

Authors

Hamza Benzerrouk is a Postdoctoral Fellow at ETS-Lassena since July 2018, PhD in Applied Mathematics from State University of Saint Petersburg SbPU, candidate of science in Aerospace Instrumentation at Saint Petersburg State University of Aerospace Instrumentation guap, Russia. He accumulated experience in satcom systems for COMNAV applications, and has more than eight years’ experience in aeronautics (DO160) and satellite transmission engineering and telecommunication systems. His Field of scientific expertise: Information Fusion, Target Tracking, Kalman filtering, Bayesian Filtering, inertial navigation, GNSS, non-Gaussian Signal Processing.

Xiaoxing Fang is a Postdoctoral Research Fellow in the Department of Electrical Engineering at the École de Technologie Supérieure (ETS). She received her Bachelor degree in automation (2002), her Master degree (2006) and Ph.D. degree (2016) in Navigation, Guidance and Control from Beihang University (P.R. China). At the same time, she worked as a GNC engineer in Research Institute of Unmanned Aerial Vehicle in Beihang University, which brings her over 10 years of design and development experiences in aerospace engineering, especially in flight control law , flight management system, and flight simulation.

René Jr Landry is professor at the department of electrical engineering at École de technologie supérieure (ÉTS) and the Director of LASSENA Laboratory. His expertise in embedded systems, navigation and avionic is appliqued notably in the field of transport, aeronautic and space technologies. Graduated in 1992 from École Polytechnique of Montréal in the Space Technologies program of the electrical engineering department, he got a Master of Science in Satellite Communication Engineering at the University of Surrey (Guildford, United Kingdom) in 1993, a Master in space electronics and a DEA in microwave at ISAE (Toulouse, France) in 1994 and his PhD on GPS anti-jamming technologies in collaboration with Thales, the French civil aviation (DGAC) and ESA (Noordwick). He has joined ÉTS in 1999, after a year as postdoctoral fellow at the National French Space Agency (CNES, Toulouse).

Abdessamad Amrhar received a Master of Applied Science degree in electrical engineering from École de Technologie Supérieure of Montréal (Canada). As a member LASSENA laboratory, he worked on the design and implementation multi-mode software defined radio system for avionics. His research interests are: software defined radios, embedded systems, avionics, and digital communication.

Anh-Quang Nguyen got his B.Eng from Back Khoa University (Viet Nam) in Aerospace Engineering in 2015. From 2016 to 2018, he was a Master student at Ecole de Technologie de Superieure (Montreal, Quebec, Canada) and worked in the AVIO-505 Project at LASSENA. From 2018, he works at SII Canada in an R&D project related to the application of UAV in Search and Rescue mission.

Hamza Rasaee received his Bachelor of Science degree in Electronic and Computer engineering from Babol Noshirvani University of Technology.Now he is pursuing his Master of Science in Electrical Engineering in École de Technologie Supérieure (ÉTS). In 2019, he joined the LASSENA group and he is working on the clock drift issue in the ibNav project. His expertise is in the embedded system programming, electronic board design and programming for different operating systems.