{"id":23726490,"url":"https://github.com/Dalageo/twincat-virtual-elevator","last_synced_at":"2026-02-16T06:30:17.406Z","repository":{"id":244447102,"uuid":"813683798","full_name":"Dalageo/TwinCAT-VirtualElevator","owner":"Dalageo","description":"Simulating a Three-Floor Elevator System Using TwinCAT PLC Programming 🛗","archived":false,"fork":false,"pushed_at":"2024-12-10T15:40:29.000Z","size":36830,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-31T00:33:11.776Z","etag":null,"topics":["automation","elevator-simulation","iec61131-3","plc-programming","simulation","twincat","twincat3","virtual-elevator"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Dalageo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-06-11T14:42:43.000Z","updated_at":"2024-12-19T15:42:07.000Z","dependencies_parsed_at":"2024-12-31T00:31:54.385Z","dependency_job_id":"9d978d09-4336-4249-8926-5228647aabe4","html_url":"https://github.com/Dalageo/TwinCAT-VirtualElevator","commit_stats":null,"previous_names":["dalageo/twincat-virtualelevator"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dalageo%2FTwinCAT-VirtualElevator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dalageo%2FTwinCAT-VirtualElevator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dalageo%2FTwinCAT-VirtualElevator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dalageo%2FTwinCAT-VirtualElevator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Dalageo","download_url":"https://codeload.github.com/Dalageo/TwinCAT-VirtualElevator/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239824980,"owners_count":19703199,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","elevator-simulation","iec61131-3","plc-programming","simulation","twincat","twincat3","virtual-elevator"],"created_at":"2024-12-31T00:31:38.610Z","updated_at":"2026-02-16T06:30:17.343Z","avatar_url":"https://github.com/Dalageo.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"left\"\u003e\n  \u003cimg src=\"https://github.com/Dalageo/TwinCat3---Elevator/assets/153513781/339d52dc-891d-46d0-b382-10ab86160760\" alt=\"Bechoff TwinCat\" width=\"700\"/\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"left\"\u003e\n  \u003ca href=\"https://www.beckhoff.com/en-en/products/automation/twincat/\" target=\"_blank\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/TwinCAT-3.1.4024.55-blue\" alt=\"TwinCAT 3.1.4024.55\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/Dalageo/TwinCat-VirtualElevator/blob/main/LICENSE\" target=\"_blank\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey\" alt=\"License: CC BY-NC-SA 4.0\"\u003e\u003c/a\u003e\n  \u003cimg src=\"https://img.shields.io/github/stars/Dalageo/TwinCat-VirtualElevator?style=social\" alt=\"GitHub stars\"\u003e\n\u003c/div\u003e\n\n# Simulating a Three-Floor Elevator System Using TwinCAT PLC Programming 🛗\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\n      This repository contains a three-floor elevator control system simulated in the \u003ca href=\"https://www.beckhoff.com/en-en/products/automation/twincat/\"\u003eTwinCAT\u003c/a\u003e environment as part of a master's course assignment at \u003ca href=\"https://www.hv.se/en/\"\u003eUniversity West\u003c/a\u003e. The assignment involved the development of the \u003ccode\u003ePLCStudent\u003c/code\u003e, using PLC programming languages, specifically SFC (Sequential Function Chart) and LD (Ladder Logic) for the elevator functionality, and a ST (Structured Text) function block for the button priority. In this project, \u003ccode\u003ePLCSim\u003c/code\u003e program, including \u003ccode\u003eElevatorSimulator.TcVIS\u003c/code\u003e, was provided by the university. The designed elevator system includes the following functionalities:\u003cbr\u003e\u003cbr\u003e\n      - \u003cstrong\u003eSystem Activation\u003c/strong\u003e: The control logic and elevator system are activated by pressing the Green Button.\u003cbr\u003e\n      - \u003cstrong\u003eStop and Resume Operation\u003c/strong\u003e: The Red Button stops the elevator movement. Pressing the Green Button again resumes the operation from where it was stopped.\u003cbr\u003e\n      - \u003cstrong\u003eLamp Usage\u003c/strong\u003e: Indicator lamps display the current status of the elevator, such as moving up, moving down, door open, or door closed.\u003cbr\u003e\n      - \u003cstrong\u003eFloor Display\u003c/strong\u003e: A digital display inside the elevator shows the current floor number.\u003cbr\u003e\n      - \u003cstrong\u003eDoor Control\u003c/strong\u003e: Elevator doors automatically close when the elevator is in motion to ensure passenger safety. Upon reaching the destination floor, the doors automatically open, allowing passengers to enter and exit. In addition, a delay is implemented at each floor stop to provide sufficient time for safe exit and entry.\u003cbr\u003e\n      - \u003cstrong\u003eButton Functionality\u003c/strong\u003e: Buttons inside the elevator and on each floor call and direct the elevator. The system processes the pressed buttons in the correct order to ensure efficient operation.\n    \u003c/td\u003e\n    \u003ctd style=\"padding-left: 20px;\"\u003e \n      \u003cimg src=\"https://github.com/Dalageo/TwinCat3---Elevator/assets/153513781/83b20cbf-1169-4bff-8f58-c547639eb90b\" width=\"200\" style=\"border-left: 20px solid transparent;\"\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n## Setup Instructions\n\n1. **Download and Install:**\n   [TwinCAT 3 download | eXtended Automation Engineering (XAE)](https://www.beckhoff.com/en-en/support/download-finder/search-result/?download_group=97028248\u0026download_item=650023470)\n   \n2. **Clone the repository:**\n   ```sh\n   git clone https://github.com/Dalageo/TwinCAT-VirtualElevator.git\n   \n3. **Navigate to the cloned directory and execute the 'TwinCAT Virtual Elevator.sln' solution file.**\n\n4. **Navigate to TwinCAT directory and execute Start.bat**:\n   ```sh\n   C:/TwinCAT/3.1/Runtimes/UmRT_Default/Start.bat\n\n5. **Change the Target System in TwinCAT to UmRT_Default.**\n   \n6. **Activate Configuration.**\n   \n7. **Login and Start both 'PLCSim' and 'PLCStudent'.**\n  \n## Contributions\n\nThis project was part of a master course assignment at [University West](https://www.hv.se/en/), which provided the initial codebase for \u003ccode\u003ePLCSim\u003c/code\u003e. Special thanks to the professors at University West who contributed to its development.\n\n## License\n\nThis work is licensed under a [Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License](https://creativecommons.org/licenses/by-nc-sa/4.0/). It was chosen to prevent commercial use and to promote free access and open collaboration, ensuring any adaptations remain freely available to everyone.\n\n[![CC BY-NC-SA 4.0][cc-by-nc-sa-image]][cc-by-nc-sa]\n\n[cc-by-nc-sa]: http://creativecommons.org/licenses/by-nc-sa/4.0/\n[cc-by-nc-sa-image]: https://licensebuttons.net/l/by-nc-sa/4.0/88x31.png\n[cc-by-nc-sa-shield]: https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg\n\n## Citation\n\n```bibtex\n@software{Dalageorgos_TwinCAT-VirtualElevator_2024,\nauthor = {Dalageorgos, Konstantinos},\nlicense = {CC-BY-NC-SA-4.0},\nmonth = jun,\ntitle = {{TwinCAT-VirtualElevator}},\nurl = {https://github.com/Dalageo/TwinCAT-VirtualElevator},\nversion = {1.0.0},\nyear = {2024}\n}\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FDalageo%2Ftwincat-virtual-elevator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FDalageo%2Ftwincat-virtual-elevator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FDalageo%2Ftwincat-virtual-elevator/lists"}