0
0
Fork 0
mirror of https://github.com/MarlinFirmware/Marlin.git synced 2025-07-23 02:01:58 +00:00

🧑‍💻 Adjust PID / MPC / ProUI

Changes to simplify  WIP
This commit is contained in:
Scott Lahteine 2023-01-15 06:48:17 -06:00
parent d94defc545
commit 6fe387b6f0
34 changed files with 181 additions and 165 deletions
Marlin/src/lcd/menu

View file

@ -41,7 +41,7 @@
#include "../../module/probe.h"
#endif
#if ANY(PIDTEMP, PIDTEMPBED, PIDTEMPCHAMBER)
#if HAS_PID_HEATING
#include "../../module/temperature.h"
#endif
@ -277,10 +277,10 @@ void menu_backlash();
//
#if SHOW_MENU_ADVANCED_TEMPERATURE
#if ENABLED(MPC_EDIT_MENU)
#define MPC_EDIT_DEFS(N) \
MPC_t &c = thermalManager.temp_hotend[N].constants; \
TERN_(MPC_INCLUDE_FAN, editable.decimal = c.ambient_xfer_coeff_fan0 + c.fan255_adjustment)
#if BOTH(MPC_EDIT_MENU, MPC_INCLUDE_FAN)
#define MPC_EDIT_DEFS(N) editable.decimal = thermalManager.temp_hotend[N].fanCoefficient()
#else
#define MPC_EDIT_DEFS(...)
#endif
void menu_advanced_temperature() {
@ -370,17 +370,17 @@ void menu_backlash();
#if ENABLED(MPC_EDIT_MENU)
#define _MPC_EDIT_ITEMS(N) \
EDIT_ITEM_FAST_N(float31sign, N, MSG_MPC_POWER_E, &c.heater_power, 1, 200); \
EDIT_ITEM_FAST_N(float31sign, N, MSG_MPC_BLOCK_HEAT_CAPACITY_E, &c.block_heat_capacity, 0, 40); \
EDIT_ITEM_FAST_N(float43, N, MSG_SENSOR_RESPONSIVENESS_E, &c.sensor_responsiveness, 0, 1); \
EDIT_ITEM_FAST_N(float43, N, MSG_MPC_AMBIENT_XFER_COEFF_E, &c.ambient_xfer_coeff_fan0, 0, 1)
EDIT_ITEM_FAST_N(float31sign, N, MSG_MPC_POWER_E, &mpc.heater_power, 1, 200); \
EDIT_ITEM_FAST_N(float31sign, N, MSG_MPC_BLOCK_HEAT_CAPACITY_E, &mpc.block_heat_capacity, 0, 40); \
EDIT_ITEM_FAST_N(float43, N, MSG_SENSOR_RESPONSIVENESS_E, &mpc.sensor_responsiveness, 0, 1); \
EDIT_ITEM_FAST_N(float43, N, MSG_MPC_AMBIENT_XFER_COEFF_E, &mpc.ambient_xfer_coeff_fan0, 0, 1)
#if ENABLED(MPC_INCLUDE_FAN)
#define MPC_EDIT_ITEMS(N) \
MPC_t &mpc = thermalManager.temp_hotend[MenuItemBase::itemIndex].constants; \
_MPC_EDIT_ITEMS(N); \
EDIT_ITEM_FAST_N(float43, N, MSG_MPC_AMBIENT_XFER_COEFF_FAN_E, &editable.decimal, 0, 1, []{ \
MPC_t &c = thermalManager.temp_hotend[MenuItemBase::itemIndex].constants; \
c.fan255_adjustment = editable.decimal - c.ambient_xfer_coeff_fan0; \
thermalManager.temp_hotend[MenuItemBase::itemIndex].applyFanAdjustment(editable.decimal); \
})
#else
#define MPC_EDIT_ITEMS _MPC_EDIT_ITEMS