Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dalageo/twincat-virtualtram
Designing and Simulating an Automated Tram Control System Using TwinCAT PLC Programming 🚝
https://github.com/dalageo/twincat-virtualtram
automation iec61131-3 plc-programming simulation transportation twincat twincat3 virtual-tram
Last synced: about 1 month ago
JSON representation
Designing and Simulating an Automated Tram Control System Using TwinCAT PLC Programming 🚝
- Host: GitHub
- URL: https://github.com/dalageo/twincat-virtualtram
- Owner: Dalageo
- License: other
- Created: 2024-06-30T15:59:02.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-12-10T15:37:57.000Z (2 months ago)
- Last Synced: 2024-12-10T17:21:19.323Z (2 months ago)
- Topics: automation, iec61131-3, plc-programming, simulation, transportation, twincat, twincat3, virtual-tram
- Homepage:
- Size: 27 MB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Citation: CITATION.cff
Awesome Lists containing this project
README
![]()
# Designing and Simulating an Automated Tram Control System Using TwinCAT PLC Programming 🚝
This repository contains a simulation project for an Automated Tram System, developed within the TwinCAT environment as part of a master's course assignment University West. The assignment involves developing a Human-Machine Interface (HMI) and a virtual process with visualization to control a tram navigating between two stations along a predefined track.
The designed system allows for both manual and automatic operation of the tram, ensuring it can handle passenger boarding and alighting with safety and efficiency. It includes the following functionalities:- **Manual Mode Activation**: The tram can be driven manually in any direction without restrictions by the driver using the HMI.
- **Automatic Mode Activation**: Automatic driving is enabled when the tram is stationary at the home station, allowing it to shuttle continuously between the two stations.
- **Immediate Stop**: The tram can be immediately stopped by the driver regardless of the current mode. Once stopped, it will remain stationary until manually operated back to the home station.
- **Mode Transition Control**: To switch from automatic to manual mode, the tram must first be stopped at the home station before changing modes.
- **Tram Position and Status Monitoring**: Sensors confirm the tram's presence at stations by turning green, while the HMI provides real-time updates on tram status, including location, movement, and emergency stop.| Tram | HMI |
|------|-----|
||
|
## Setup Instructions
1. **Download and Install:**
[TwinCAT 3 download | eXtended Automation Engineering (XAE)](https://www.beckhoff.com/en-en/support/download-finder/search-result/?download_group=97028248&download_item=650023470)
2. **Clone the repository:**
```sh
git clone https://github.com/Dalageo/TwinCAT-VirtualTram.git
3. **Navigate to the cloned directory and execute the `TwinCAT Virtual Tram.sln` solution file.**4. **Navigate to TwinCAT directory and execute Start.bat**:
```sh
C:/TwinCAT/3.1/Runtimes/UmRT_Default/Start.bat5. **Change the Target System in TwinCAT to UmRT_Default.**
6. **Visualization Image Pool Setup**:
- In the Solution Explorer of `TwinCAT Virtual Tram.sln`, navigate to PLCSim's VISUs and click on the `ImagePool.TcIPO`.
- Set the correct file path for each image by navigating to the cloned directory TwinCAT-VirtualTram/Image Pool, where you'll find `Background.png`, `Sensor.png`, `Station.png`, and `Tram.png`.
7. **Activate Configuration.**
8. **Login and Start both 'PLCSim' and 'PLCStudent'.**
## ContributionsThis project was part of a master course assignment at [University West](https://www.hv.se/en/), with special thanks to the professors for assigning it.
## License
This 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.
[![CC BY-NC-SA 4.0][cc-by-nc-sa-image]][cc-by-nc-sa]
[cc-by-nc-sa]: http://creativecommons.org/licenses/by-nc-sa/4.0/
[cc-by-nc-sa-image]: https://licensebuttons.net/l/by-nc-sa/4.0/88x31.png
[cc-by-nc-sa-shield]: https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg## Citation
```bibtex
@software{Dalageorgos_TwinCAT-VirtualTram_2024,
author = {Dalageorgos, Konstantinos},
license = {CC-BY-NC-SA-4.0},
month = jul,
title = {{TwinCAT-VirtualTram}},
url = {https://github.com/Dalageo/TwinCAT-VirtualTram},
version = {1.0.0},
year = {2024}
}