2024-07-25 20:35:47 +00:00
|
|
|
from dataclasses import dataclass
|
|
|
|
|
|
|
|
from experiment import Experiment, Measurement, Variable
|
|
|
|
|
|
|
|
|
|
|
|
@dataclass
|
|
|
|
class ShellingExperiment(Experiment):
|
2024-07-29 21:25:40 +00:00
|
|
|
def __init__(
|
|
|
|
self,
|
|
|
|
date: str,
|
|
|
|
drum_rpm: int,
|
|
|
|
paddle_shaft_rpm: int,
|
|
|
|
ring_gap: float,
|
|
|
|
tilt_angle: float,
|
|
|
|
moisture_content: float,
|
|
|
|
feed_rate: int = 500,
|
|
|
|
pecan_variety: str = "desirable",
|
|
|
|
):
|
|
|
|
|
|
|
|
super().__init__(experiment="Shelling Analysis", date=date)
|
|
|
|
|
|
|
|
variables = [
|
|
|
|
Variable("drum-rpm", "rpm", (30, 40), drum_rpm),
|
|
|
|
Variable("paddle-shaft-rpm", "rpm", (400, 800), paddle_shaft_rpm),
|
|
|
|
Variable("ring-gap", "in", value=ring_gap),
|
|
|
|
Variable("tilt-angle", "deg", (2, 5), tilt_angle),
|
|
|
|
Variable("feed-rate", "lb/hr", (300, 500), feed_rate),
|
|
|
|
Variable("moisture-content", "%", (5, 9), moisture_content),
|
|
|
|
Variable("pecan-variety", "", value=pecan_variety),
|
|
|
|
]
|
|
|
|
self.add_variables(variables)
|
|
|
|
|
|
|
|
measurements = [
|
|
|
|
Measurement("bin1-weight", "lb"),
|
|
|
|
Measurement("bin2-weight", "lb"),
|
|
|
|
Measurement("bin3-weight", "lb"),
|
|
|
|
Measurement("recirculated-weight", "lb"),
|
|
|
|
Measurement("final-discharge-weight", "lb"),
|
|
|
|
Measurement("bin1-half-yield", "%"),
|
|
|
|
Measurement("bin2-half-yield", "%"),
|
|
|
|
Measurement("bin3-half-yield", "%"),
|
|
|
|
]
|
|
|
|
self.add_measurements(measurements)
|