Skip to content

Commit

Permalink
fix(fmgc): multiple FMGC fixes and small additions
Browse files Browse the repository at this point in the history
FBW PR 9652
  • Loading branch information
Revyn112 committed Jan 17, 2025
1 parent 26ce6ee commit eeccb24
Show file tree
Hide file tree
Showing 6 changed files with 1,493 additions and 1,393 deletions.
5 changes: 3 additions & 2 deletions hdw-a339x/src/wasm/fbw_a330/src/FlyByWireInterface.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1780,14 +1780,15 @@ bool FlyByWireInterface::updateFmgc(double sampleTime, int fmgcIndex) {

fmgcs[fmgcIndex].modelInputs.in.fms_inputs.fm_valid = true;
fmgcs[fmgcIndex].modelInputs.in.fms_inputs.fms_flight_phase = static_cast<fmgc_flight_phase>(idFmgcFlightPhase->get());
fmgcs[fmgcIndex].modelInputs.in.fms_inputs.selected_approach_type = fmgc_approach_type::None;
fmgcs[fmgcIndex].modelInputs.in.fms_inputs.selected_approach_type =
idFmRnavAppSelected->get() ? fmgc_approach_type::RNAV : fmgc_approach_type::ILS;
fmgcs[fmgcIndex].modelInputs.in.fms_inputs.backbeam_selected = idFm1BackbeamSelected->get();
fmgcs[fmgcIndex].modelInputs.in.fms_inputs.fms_loc_distance = (simData.nav_dme_valid != 0) ? simData.nav_dme_nmi : 0;
fmgcs[fmgcIndex].modelInputs.in.fms_inputs.fms_unrealistic_gs_angle_deg = (simData.nav_gs_valid != 0) ? -simData.nav_gs_deg : 0;
fmgcs[fmgcIndex].modelInputs.in.fms_inputs.fms_weight_lbs = simData.total_weight_kg * 2.205;
fmgcs[fmgcIndex].modelInputs.in.fms_inputs.fms_cg_percent = simData.CG_percent_MAC;
fmgcs[fmgcIndex].modelInputs.in.fms_inputs.lateral_flight_plan_valid = idFlightGuidanceAvailable->get();
fmgcs[fmgcIndex].modelInputs.in.fms_inputs.nav_capture_condition = idFlightGuidanceCrossTrackError->get() < 1;
fmgcs[fmgcIndex].modelInputs.in.fms_inputs.nav_capture_condition = std::abs(idFlightGuidanceCrossTrackError->get()) < 1;
fmgcs[fmgcIndex].modelInputs.in.fms_inputs.phi_c_deg = idFlightGuidancePhiCommand->get();
fmgcs[fmgcIndex].modelInputs.in.fms_inputs.xtk_nmi = idFlightGuidanceCrossTrackError->get();
fmgcs[fmgcIndex].modelInputs.in.fms_inputs.tke_deg = idFlightGuidanceTrackAngleError->get();
Expand Down
Loading

0 comments on commit eeccb24

Please sign in to comment.