Bygg din modell: Styr monteringslinjerespons
Nu när du har definierat din SimPy-miljö och dina resurser, samt generatorn som skapar flygplansbeställningar, är det dags att skapa en generator som beskriver monteringslinjens respons utifrån kända bearbetningstider och begränsade tillgängliga resurser.
Den här övningen är en del av kursen
Diskret händelsesimulering i Python
Övningsinstruktioner
- Gör en platsbegäran för
step_2_wingssomslot_request_2och yielda begäran. - Gör en platsbegäran för
step_3_power_plantsomslot_request_3och yielda begäran. - Gör en platsbegäran för
step_4_landing_gearsomslot_request_4.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
def assembly_line(env, aircraft_id, step_1_fuselage, step_2_wings, step_3_power_plant, step_4_landing_gear):
processing_time_step_names = list(processing_time.keys())
with step_1_fuselage.request() as slot_request_1:
yield slot_request_1
yield env.timeout(processing_time[processing_time_step_names[0]])
# Make slot request for step_2_wings and yield the request
with step_2_wings.request() as ____:
request_2_time = env.now
____ slot_request_2
yield env.timeout(processing_time[processing_time_step_names[1]])
# Make slot request for step_3_power_plant and yield the request
with step_3_power_plant.request() as ____:
request_3_time = env.now
____ slot_request_3
yield env.timeout(processing_time[processing_time_step_names[2]])
# Make slot request for step_4_landing_gear
with step_4_landing_gear.request() as ____:
request_4_time = env.now
yield slot_request_4
yield env.timeout(processing_time[processing_time_step_names[3]])