KPL/IK JMAG Instrument Kernel =============================================================================== This instrument kernel (I-kernel) contains the Magnetometer Instrument (JMAG) sensors' parameters. Version and Date ------------------------------------------------------------------------------- Version 0.2 -- December 9, 2022 -- Marc Costa Sitja, ESAC/ESA Added structures definitions, JMAG views, and a code example. Version 0.1 -- July 13, 2022 -- Marc Costa Sitja, ESAC/ESA Updated description values. Removed Platform ID section. Version 0.0 -- July 12, 2016 -- Marc Costa Sitja, ESAC/ESA Initial Release. Pending review by the J-MAG instrument and JUICE Science Operations Working Group teams. References ------------------------------------------------------------------------------- 1. ``Kernel Pool Required Reading'' 2. ``C-kernel Required Reading'' 3. JUICE Frames Definition Kernel (FK), latest version. 4. ``JUICE - Jupiter Icy Moons Explorer. Exploring the emergence of habitable worlds around gas giants. Definition Study report,'' ESA/SRE(2014)1, September 2014 (JUICE Red book v1.0) 5. ``JUICE - JUpiter Icy Moons Explorer MAG (Magnetometer) Experiment Interface Document - Part B,'' JUICE-ICL-MAG-EID-B, Issue 2.4, 07 April 2016 6. ``Experiment Interface Document - Part B for Radio & Plasma Wave Investigation (RPWI) JUICE,'' JUI-IRFU-RPWI-EID-014, Issue 3.2, 30 October 2015 Contact Information ------------------------------------------------------------------------------- If you have any questions regarding this file contact the ESA SPICE Service (ESS) at ESAC: Alfredo Escalante Lopez (+34) 91-8131-429 spice@sciops.esa.int or the JUICE Science Operations Center at ESAC: Marc Costa Sitja (+34) 646-746-711 Marc.Costa@ext.esa.int Implementation Notes ------------------------------------------------------------------------------- This SPICE I-kernel defines not values for the the ``kernel pool'', it was created with, and can be updated with a text editor or word processor. Naming Conventions and Conventions for Specifying Data ------------------------------------------------------------------------------- All names referencing values in this IK file start with the characters `INS' followed by the NAIF JUICE spacecraft ID number (-28) followed by a NAIF three digit ID code for the JMAG sensors. This is the full list of names and IDs for the RPWI instrument described by this IK file: Name NAIF ID --------------------- --------- JUICE_JMAG_MAGIBS -28300 JUICE_JMAG_MAGOBS -28310 JUICE_JMAG_MAGSCA -28320 The upper bound on the length of the name of any data item is 32 characters. If the same item is included in more than one file, or if the same item appears more than once within a single file, the latest value supersedes any earlier values. Instrument Description and Overview ------------------------------------------------------------------------------- The magnetometer will measure the three components of the local magnetic field vector in the vicinity of the spacecraft in the bandwidth DC up to a maximum of 64Hz. The instrument design is composed of two fluxgate sensors (identified as MAGOBS and MAGIBS) and a Coupled Dark State Magnetometer (CDSM) scalar sensor (identified as MAGSCA). Each sensor will be attached via an IEH, by the Prime, to a single platform mounted electronics box. Each fluxgate is a tri-axial design measuring the three field components Bx, By, Bz and the scalar sensor measures the absolute field |B|. All three sensors should be mounted externally to the spacecraft platform with the MAGSCA sensor positioned at the furthest extremity. The boom should be of appropriate length in order to meet the required magnetic cleanliness requirements of JMAG. (see [5]). The dual fluxgate solution ensures that the sometimes very small science signal (calibrated relative accuracy better than 0.2 nT will be needed to meet induction-related science requirements) can be separated from the disturbing spacecraft field signature through use of the gradiometer technique. The addition of the scalar sensor enables in-flight calibration of the fluxgates sensors during the operational mission phase without the need for frequent roll manoeuvres. The main characteristics of the JMAG instrument are provided in the following table: -------------------------------------------------------------------- PARAMETER VALUE ------------------------------ ----------------------------------- Instrument noise performance <10 pT/sqrt(Hz) (at 1 Hz) Fluxgate sensor orthogonality <0.01 deg (calibrated) Offset stability <0.5 nT/100 hours (fluxgate sensor) Absolute accuracy <0.2 nT (scalar sensor) Linearity <0.05 % Operating temperature range -150 to +60 deg (MAGOBS/IBS) for MAGOBS/IBS/SCA sensors -150 to +50 deg (MAGSCA) Performance temperature range -75 to +60 deg (MAGOBS/IBS) for MAGOBS/IBS/SCA sensors -150 to +50 deg (MAGSCA) (calibrated data) Survival temperature rage for -150 to +80 deg MABOBS/IBS/SCA (measured at the MAG Temperature sensor) Normal mode data rate 2292.0 bps (32 & 1 & 1 measurements/s) Gradiometer mode data rate 2232.0 bps (16 & 16 & 1 measurements/s) Burst mode data rate 8952.0 bps (128 & 16 & 1 measurements/s) Fluxgate Measurement range +/-8400 nT, +/-61000 nT MAGOBS Fluxgate Measurement range +/-1000 nT, +/-2000 nT, +/-4000 nT MAGIBS +/-8000 nT, +/-16000 nT Scalar Measurement range 100 - 149588 nT (n=2 mode) Bits per sampled field 20 MAGOBS/MAGIBS component 24 MAGSCA Fluxgate Resolution 16.1 pT (OBS), 15.3 pt (IBS) (in +/8000 nt range) Scalar Resolution 0.58 pT / 0.37 pT (1) -------------------------------------------------------------------- (1) MAGOBS sensor ADC data acquisition uses 24 bits, of which the most significant 20 bits are transmitted to ground. MAGIBS has physically only one range (+/-16,000nT) with 24 bit resolution, 20 bit of the 24 bits can be freely selected for transmission. For both fluxgate sensors, this then corresponds to approximately 16 pT digital resolution in the +/-8000 nT range The scalar sensor resolution depends on the resonance mode used. For the n=2 mode the range is 100 - 149,588 nT corresponding to a digital resolution of 0.557 pT, for the n=3 mode the range is 100 - 99,791 nT and digital resolution of 0.371 pT. The MAGOBS Fluxgate sensor bears heritage from those flown on the Cassini and Double Star spacecraft. It is very similar in design to the model currently under development for Solar Orbiter. The sensor features two orthogonally-mounted low noise Permalloy ring-cores each of which senses the magnetic field in two axes in the plane of the sensor. The cores are mounted to a Macor glass-ceramic structure which is in turn mounted to a GFRP insulating support which is fastened to a Titanium baseplate. Each ring-core has associated with it a small PCB which makes the electrical connections between the wiring harness and the ring-core, and also a tuning capacitor, thermistors and sensor heaters. The MAGIBS fluxgate sensor consists of two single ring-core elements measuring the magnetic field in X- and Y-direction. The magnetic field in Z-direction is measured by a coil surrounding both single sensors. The sensor core (ring-cores, pick-up and feedback coils) is identical to the ones used for Rosetta Lander, Venus Express, THEMIS and BepiColombo. The sensor electronics generates an excitation AC current (fundamental frequency of approx. 9.6 kHz), which drives the soft magnetic core material in the sensor deep into positive and negative saturation. According to the fluxgate principle, the external magnetic field distorts the symmetry of the magnetic flux and generates field proportional to even harmonics of the excitation frequency in the sense coils. Sensor accommodation and thermal control of the MAGIBS sensor is ensured via an insulting base plate and standoff made from PEEK which provides both sufficient mechanical robustness and thermal isolation. The baseplate is manufactured with a reference edge machined with high precision, this is required to reduce the aignment error introduced from sensor mounting to the boom to below the required value allowed in the instrument alignment budget. The MAGSCA sensor uses the energy from a light source (e.g. laser diode) for exciting electrons in an atom for measuring the magnitude of the surrounding magnetic field. In the MAGSCA the light source is a multi-modulated laser which optically excites rubidium atoms in a glass cell according to the atomic level. When the spectral components of the laser light exactly match the energy differences between the atomic levels special quantum-mechanical mechanism called Coherent Population Trapping (CPT) is taking place in the rubidium atoms. As a result, the atoms inside the sensor cell are transferred into a so called dark state where the atoms are decoupled from the light field. In this state the cell gets more transparent (less laser light absorption) which can be detected by a photo diode. The MAGSCA comprises five subunits a Low Frequency (LF) block, High Frequency (HF) block, Vertical Cavity Surface Emitting Laser (VCSEL) with housing and fibre coupler, sensor unit and sensor harness. The LF and HF blocks as well as the laser are mounted in the JMAG electronics box inside the spacecraft whereas the sensor unit is designed for boom mounting. Mounting Alignment ------------------------------------------------------------------------------- JMAG is accommodated in the spacecraft boom (JUICE_MAG_BOOM). When deployed the boom will be 10.6m long. The length of the boom has been chosen to enable the system to satisfy the stringent maximum allowed spacecraft magnetic field requirements imposed by JMAG on the spacecraft. MAGSCA is located at the tip of the boom to be farthest away from any influence of the spacecraft, MAGOBS is close to MAGSCA and MAGIBS further down the boom towards the spacecraft. The spacing between MAGOBS and MAGIBS is optimised to allow them to operate together in a Gradiometer mode to make estimations of the spacecraft magnetic field. MAGSCA does not require alignment but MAGOBS and MAGIBS have their own Unit Alignment Reference Frames. Refer to the latest version of the JUICE Frames Definition Kernel (FK) [3] for the JMAG reference frame definitions and mounting alignment information. JMAG structure location specification ------------------------------------------------------------------------------- The following table lists the name, center, and position for each of the structures/sensors available for JMAG and for JACS, providing the reference frame used for their specification and the center to which they are referenced. Structure/Sensor Center X,mm Y,mm Z,mm ------------------ --------------- ------- ------- ------- JUICE_MAG_BOOM JUICE_SPACECRAFT 1380.1 -857.4 168.2 JUICE_JMAG_MAGIBS JUICE_MAG_BOOM 7198.4 73.7 121.9 (1) JUICE_JMAG_MAGOBS JUICE_MAG_BOOM 10086.3 -116.7 1.9 (1) JUICE_JMAG_MAGSCA JUICE_MAG_BOOM 10422.4 3.6 150.3 (1) JUICE_JACS-X JUICE_SPACECRAFT -1233.8 26.5 1502.5 JUICE_JACS-X_1 JUICE_SPACECRAFT -1233.8 -1012.7 2734.2 JUICE_JACS-X_2 JUICE_SPACECRAFT -1233.8 -909.5 2837.5 JUICE_JACS-X_3 JUICE_SPACECRAFT -1233.8 909.5 2837.5 JUICE_JACS-X_4 JUICE_SPACECRAFT -1233.8 999.5 2747.5 JUICE_JACS-X_5 JUICE_SPACECRAFT -1233.8 999.5 292.7 JUICE_JACS-X_6 JUICE_SPACECRAFT -1233.8 759.2 52.5 JUICE_JACS-X_7 JUICE_SPACECRAFT -1233.8 -520.7 52.5 JUICE_JACS-X_8 JUICE_SPACECRAFT -1233.8 -1012.7 465.3 JUICE_JACS-Y JUICE_SPACECRAFT 0.0 -1077.3 1804.6 JUICE_JACS-Y_1 JUICE_SPACECRAFT 1042.5 -1077.3 2983.4 JUICE_JACS-Y_2 JUICE_SPACECRAFT 703.8 -1077.3 3322.0 JUICE_JACS-Y_3 JUICE_SPACECRAFT -703.8 -1077.3 3322.0 JUICE_JACS-Y_4 JUICE_SPACECRAFT -1042.5 -1077.3 2983.4 JUICE_JACS-Y_5 JUICE_SPACECRAFT -1042.5 -1077.3 623.4 JUICE_JACS-Y_6 JUICE_SPACECRAFT -762.1 -1077.3 289.3 JUICE_JACS-Y_7 JUICE_SPACECRAFT 762.1 -1077.3 289.3 JUICE_JACS-Y_8 JUICE_SPACECRAFT 1042.5 -1077.3 623.4 (1) The value provided in this table is the one that corresponds with the fully deployed boom (note that the boom is folded in three pieces when stowed). See [6] for further details. Magnetometer Boom (MAG Boom) Diagram ------------------------------------------------------------------------ The following diagrams show the location of each sensor on the Magnetometer boom and the approximate location of the boom in the spacecraft bus. -Y S/C side view: ----------------- ^ ~~ | || | Nadir direction || | oo | . .------||------. |`. | Science Deck | | \ | || | | \| || | | | || | /| | /||\ | o | | \||/ | \| | || | | | |'^ | | /| |'|+Zsc | | / | |'| | |.' | |'| | '------|'|---o-' +Xsc /__oox----'.----> || +Ysc '. || '. ~~ '. MAG boom (45 degrees '. deployment) '. +Ysc is into the page -Z Magnetometer Boom side view: ------------------------------- .---. | | ------- | | JMAG Scalar ^ | | Magnetometer | '---' (MAGSCA) | | | | | | | ~~~ ~0.352m ~~~ | | | | | | | | | | .---. v | | ------- | | JMAG Outboard Sensor ^ | | (MAGOBS) | '---' | | | | | | | ~~~ ~1.496m ~~~ | | | | | | | | | SCM sensor v .---.| | (RPWI_SCM) ------- ========| |||========== ^ ==========| |==|======= | | |.. | | | | | | | ~~~ | ~ ~~~ ~ ~0.413m \ | | / | \ | | / | \ | | / | \ | | / | \ | |/ v ` . \| | RWI sensor ------- ` .| | (RPWI_RWI) ^ / |`. | / | |\ ` . | / | | \ ` . | / ~~~ \ ` . | ~ ~~~ ~ | | | ~1.083m | | | | | | | | | | | | .---. v | | ------- | | JMAG Inboard Sensor ^ | | (MAGIBS) | '---' | | | | | | | ~~~ ~7.285m ~~~ | | | | | | | |^ +Xmagb | ||| | ||| v ||| +Ymagb ------- x--------> +Zmagb +Zmagb is into the page JUICE Alignment Calibration System (JACS) Diagram ------------------------------------------------------------------------ The following diagrams show the location of each of the JACS-X and JACS-Y corners. JACS-X -X S/C side (opposite to HGA side) view: ----------------------------------------------- ^ | Nadir | Science Deck .-------------. /-----. | 3.______.2 | .-----\ \ |\ | / \ | /| / / | \|4' +Zsc '1 |/ | \ \ | /| | ^ | |\ | / / |/ |5. | .8 | \| \ \-----' | \___|__.' | '-----/ '--6---|--7---' +Ysc / | \ <------o -Xsc (out of the page) JACS-Y -Y s/c side view: ------------------------ ^ ~~ | || | Nadir direction || | Science Deck . .-------||-------. |`. | 3._________.2 | HGA | \ | / || \ | | .|4' /||\ '1 | | x | \||/ | | | .| | +Zsc | | | / |5. |'^ .8 | |.' | \______|__/ | '--6----|'|--7---' +Xsc /__oox----------> || +Ysc || (into de page) ~~ IK Code Example --------------------------------------------------------------------------- This section contains an example code, in Python, illustrating how the position of the JMAG sensors can be retrieved using appropriate SPICE routine. The examples presented as stand-alone functions, ready to be cut-n-paste and called from an application by simply replacing . import spiceypy # Load the appropriate Meta-kernel. spiceypy.furnsh() def get_position(utc, origin, body): '''Get the position of a Body with respect to another at a given time. ''' # Convert the UTC time to epehmeris time. et = spiceypy.utc2et(utc) # Get the position of the target body with respect to the origin. pos, lt = spiceypy.spkpos(origin, et, origin, 'NONE', body) # Calculate the distance. dist = spiceypy.vnorm(pos) # Print the distance with an appropriate format. print(f"{body}{' '*(20-len(body))} {origin}\ {' '*(18-len(origin))} {dist*1000:.3f}") # Return the distance and position vector in meters. return dist*1000, pos*1000 # Obtain all the NAIF body names. body_names = spiceypy.gcpool('NAIF_BODY_NAME', 0, 10000, 80) # Print the header of the table that will provide the information. print(f"Body{' '*16} Origin {' '*11} Distance (m)") print(f"{'='*52}") # Obtain all the NAIF body names. body_names = spiceypy.gcpool('NAIF_BODY_NAME', 0, 10000, 80) # For the JMAG bodies, get the position WRT to the # JUICE Mechanical Center. for body_name in body_names: if 'JUICE_JMAG' in body_name: get_position('2034-01-01', 'JUICE_MAG_BOOM', body_name) # Print some extra position of bodies with respect to other bodies. print("") get_position('2034-01-01', 'JUICE_JMAG_MAGSCA', 'JUICE_JACS-Y') get_position('2034-01-01', 'JUICE_JMAG_MAGSCA', 'JUICE_JACS-X') print("") # Plot the position of the JACS-X corners in the S/C +X panel. jacs_x = [] for body_name in body_names: if 'JUICE_JACS-X_' in body_name: dist, pos = get_position('2034-01-01', 'JUICE_JACS-X', body_name) jacs_x.append(pos[0:2]) Executing this code yields a result similar to: Body Origin Distance (m) ==================================================== JUICE_JMAG_MAGIBS JUICE_MAG_BOOM 7.200 JUICE_JMAG_MAGOBS JUICE_MAG_BOOM 10.087 JUICE_JMAG_MAGSCA JUICE_MAG_BOOM 10.423 JUICE_JACS-Y JUICE_JMAG_MAGSCA 12.565 JUICE_JACS-X JUICE_JMAG_MAGSCA 13.175 JUICE_JACS-X_1 JUICE_JACS-X 1.612 JUICE_JACS-X_2 JUICE_JACS-X 1.630 JUICE_JACS-X_3 JUICE_JACS-X 1.601 JUICE_JACS-X_4 JUICE_JACS-X 1.580 JUICE_JACS-X_5 JUICE_JACS-X 1.553 JUICE_JACS-X_6 JUICE_JACS-X 1.625 JUICE_JACS-X_7 JUICE_JACS-X 1.550 JUICE_JACS-X_8 JUICE_JACS-X 1.468 End of IK file.