-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Attempt at controller with .fmu file
- Loading branch information
Showing
9 changed files
with
489 additions
and
9 deletions.
There are no files selected for viewing
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,75 @@ | ||
{ | ||
"cells": [ | ||
{ | ||
"cell_type": "code", | ||
"execution_count": 1, | ||
"id": "4f4a8914-1f1e-43ab-8e9f-a57876a0bbf0", | ||
"metadata": {}, | ||
"outputs": [], | ||
"source": [ | ||
"from rocket_twin.systems import Station\n", | ||
"from rocket_twin.utils import run_sequences" | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": 2, | ||
"id": "307706e5-4ba7-4947-8b30-16b4f3a6cfcd", | ||
"metadata": {}, | ||
"outputs": [ | ||
{ | ||
"ename": "FileNotFoundError", | ||
"evalue": "[Errno 2] No such file or directory: 'rocket_twin/systems/station/sequence_1.fmu'", | ||
"output_type": "error", | ||
"traceback": [ | ||
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", | ||
"\u001b[1;31mFileNotFoundError\u001b[0m Traceback (most recent call last)", | ||
"Cell \u001b[1;32mIn[2], line 3\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[38;5;66;03m#System creation\u001b[39;00m\n\u001b[1;32m----> 3\u001b[0m sys \u001b[38;5;241m=\u001b[39m \u001b[43mStation\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43msys\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m)\u001b[49m\n", | ||
"File \u001b[1;32m~\\micromambaenv\\envs\\rocket_twin\\Lib\\site-packages\\cosapp\\systems\\system.py:256\u001b[0m, in \u001b[0;36mSystem.__init__\u001b[1;34m(self, name, **kwargs)\u001b[0m\n\u001b[0;32m 253\u001b[0m kwargs \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_initialize(\u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs)\n\u001b[0;32m 255\u001b[0m \u001b[38;5;66;03m# Customized the `System` according to user wishes\u001b[39;00m\n\u001b[1;32m--> 256\u001b[0m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43msetup\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 257\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mupdate()\n\u001b[0;32m 259\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m__enforce_scope()\n", | ||
"File \u001b[1;32m~\\Documents\\Polytechnique\\PSC\\rocket-twin\\rocket_twin\\systems\\station\\station.py:21\u001b[0m, in \u001b[0;36mStation.setup\u001b[1;34m(self)\u001b[0m\n\u001b[0;32m 19\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39madd_child(Pipe(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mpipe\u001b[39m\u001b[38;5;124m\"\u001b[39m))\n\u001b[0;32m 20\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39madd_child(Tank(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mg_tank\u001b[39m\u001b[38;5;124m\"\u001b[39m))\n\u001b[1;32m---> 21\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39madd_child(\u001b[43mFMUSystem\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mcontroller\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mfmu_path\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mrocket_twin/systems/station/sequence_1.fmu\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m)\u001b[49m)\n\u001b[0;32m 23\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mconnect(\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mg_tank\u001b[38;5;241m.\u001b[39moutwards, \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mpipe\u001b[38;5;241m.\u001b[39minwards, {\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mw_out\u001b[39m\u001b[38;5;124m\"\u001b[39m: \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mw_in\u001b[39m\u001b[38;5;124m\"\u001b[39m})\n\u001b[0;32m 24\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mconnect(\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mpipe\u001b[38;5;241m.\u001b[39moutwards, \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mrocket\u001b[38;5;241m.\u001b[39minwards, {\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mw_out\u001b[39m\u001b[38;5;124m\"\u001b[39m: \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mw_in\u001b[39m\u001b[38;5;124m\"\u001b[39m})\n", | ||
"File \u001b[1;32m~\\micromambaenv\\envs\\rocket_twin\\Lib\\site-packages\\cosapp\\systems\\system.py:253\u001b[0m, in \u001b[0;36mSystem.__init__\u001b[1;34m(self, name, **kwargs)\u001b[0m\n\u001b[0;32m 250\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_add_port(ModeVarPort(System\u001b[38;5;241m.\u001b[39mMODEVARS_OUT, PortType\u001b[38;5;241m.\u001b[39mOUT))\n\u001b[0;32m 252\u001b[0m \u001b[38;5;66;03m# Customized subclass `System` before applying user wishes\u001b[39;00m\n\u001b[1;32m--> 253\u001b[0m kwargs \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_initialize\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 255\u001b[0m \u001b[38;5;66;03m# Customized the `System` according to user wishes\u001b[39;00m\n\u001b[0;32m 256\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39msetup(\u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs)\n", | ||
"File \u001b[1;32m~\\micromambaenv\\envs\\rocket_twin\\Lib\\site-packages\\cosapp_fmu\\FMUsystem.py:42\u001b[0m, in \u001b[0;36mFMUSystem._initialize\u001b[1;34m(self, fmu_path, **kwargs)\u001b[0m\n\u001b[0;32m 39\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mfmu_path \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[0;32m 40\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mAttributeError\u001b[39;00m(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mfmu_path is missing\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n\u001b[1;32m---> 42\u001b[0m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mload_fmu\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mfmu_path\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 43\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mfmu\u001b[38;5;241m.\u001b[39menterInitializationMode()\n\u001b[0;32m 44\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mfmu\u001b[38;5;241m.\u001b[39mexitInitializationMode()\n", | ||
"File \u001b[1;32m~\\micromambaenv\\envs\\rocket_twin\\Lib\\site-packages\\cosapp_fmu\\FMUsystem.py:161\u001b[0m, in \u001b[0;36mFMUSystem.load_fmu\u001b[1;34m(self, filename)\u001b[0m\n\u001b[0;32m 158\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mfmpy\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m supported_platforms\n\u001b[0;32m 159\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mfmpy\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mutil\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m can_simulate\n\u001b[1;32m--> 161\u001b[0m platforms \u001b[38;5;241m=\u001b[39m \u001b[43msupported_platforms\u001b[49m\u001b[43m(\u001b[49m\u001b[43mfilename\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 162\u001b[0m can_sim, remote_platform \u001b[38;5;241m=\u001b[39m can_simulate(platforms, \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mauto\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n\u001b[0;32m 163\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m can_sim:\n", | ||
"File \u001b[1;32m~\\micromambaenv\\envs\\rocket_twin\\Lib\\site-packages\\fmpy\\__init__.py:84\u001b[0m, in \u001b[0;36msupported_platforms\u001b[1;34m(filename)\u001b[0m\n\u001b[0;32m 82\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m: \u001b[38;5;66;03m# FMU as path or file like object\u001b[39;00m\n\u001b[0;32m 83\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mzipfile\u001b[39;00m\n\u001b[1;32m---> 84\u001b[0m \u001b[38;5;28;01mwith\u001b[39;00m \u001b[43mzipfile\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mZipFile\u001b[49m\u001b[43m(\u001b[49m\u001b[43mfilename\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43mr\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m)\u001b[49m \u001b[38;5;28;01mas\u001b[39;00m zf:\n\u001b[0;32m 85\u001b[0m names \u001b[38;5;241m=\u001b[39m zf\u001b[38;5;241m.\u001b[39mnamelist()\n\u001b[0;32m 87\u001b[0m platforms \u001b[38;5;241m=\u001b[39m []\n", | ||
"File \u001b[1;32m~\\micromambaenv\\envs\\rocket_twin\\Lib\\zipfile.py:1283\u001b[0m, in \u001b[0;36mZipFile.__init__\u001b[1;34m(self, file, mode, compression, allowZip64, compresslevel, strict_timestamps, metadata_encoding)\u001b[0m\n\u001b[0;32m 1281\u001b[0m \u001b[38;5;28;01mwhile\u001b[39;00m \u001b[38;5;28;01mTrue\u001b[39;00m:\n\u001b[0;32m 1282\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[1;32m-> 1283\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mfp \u001b[38;5;241m=\u001b[39m \u001b[43mio\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mopen\u001b[49m\u001b[43m(\u001b[49m\u001b[43mfile\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mfilemode\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 1284\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m \u001b[38;5;167;01mOSError\u001b[39;00m:\n\u001b[0;32m 1285\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m filemode \u001b[38;5;129;01min\u001b[39;00m modeDict:\n", | ||
"\u001b[1;31mFileNotFoundError\u001b[0m: [Errno 2] No such file or directory: 'rocket_twin/systems/station/sequence_1.fmu'" | ||
] | ||
} | ||
], | ||
"source": [ | ||
"#System creation\n", | ||
"\n", | ||
"sys = Station('sys')" | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": null, | ||
"id": "fd2c6fc5-99ed-44ac-acd3-8858bc4e1d71", | ||
"metadata": {}, | ||
"outputs": [], | ||
"source": [] | ||
} | ||
], | ||
"metadata": { | ||
"kernelspec": { | ||
"display_name": "Python 3 (ipykernel)", | ||
"language": "python", | ||
"name": "python3" | ||
}, | ||
"language_info": { | ||
"codemirror_mode": { | ||
"name": "ipython", | ||
"version": 3 | ||
}, | ||
"file_extension": ".py", | ||
"mimetype": "text/x-python", | ||
"name": "python", | ||
"nbconvert_exporter": "python", | ||
"pygments_lexer": "ipython3", | ||
"version": "3.11.3" | ||
} | ||
}, | ||
"nbformat": 4, | ||
"nbformat_minor": 5 | ||
} |
Oops, something went wrong.