Skip to content

Simulation of an automated warehouse, controlled by S7 1500 PLC and mobile app.

Notifications You must be signed in to change notification settings

KlaudiuszSoltysik/Automated-warehouse

Repository files navigation

Automated Warehouse

This project is a comprehensive simulation of an automated warehouse designed to showcase the integration of industrial automation with modern web and mobile technologies. Inspired by Supervisory Control and Data Acquisition (SCADA) systems, I aimed to create a solution that monitors and controls warehouse operations in real-time, similar to how SCADA software supervises and manages industrial processes. The warehouse utilizes two cranes, multiple conveyors, RFID scanners, and sensors to simulate real-life logistics operations. This project demonstrates the interaction between a Programmable Logic Controller (virtual SIMATIC S7-1500) and external systems using a backend API (Django Rest Framework) and a mobile interface (Flutter), facilitating real-time monitoring and control.

Features

  • Intelligent sorting of boxes based on their size and warehouse status - TIA.
  • When an order is placed, the sorting process is interrupted, and the ordered box is moved to the pickup area - TIA.
  • Visualization of warehouse status through a dedicated application - Flutter.
  • Ability to place orders for specific boxes (using IDs read by RFID scanners and stored in a database) or for any box with specified size - Flutter.
  • The entire system has been thoroughly secured and tested to prevent undesirable behavior, ensuring it is error-free.

Simulation - FactoryIO

The warehouse is built in FactoryIO with components such as conveyors, turnable conveyors, sensors, RFID scanners, and cranes. image

PLC - TIA Portal

The PLC program is written in LAD, SCL, and GRAPH languages. Good programming practices were taken care of. All boxes are sorted by size to maintain an equal number of each size in both storage areas. An RFID scanner reads the RFID tag data of each box. The crane then places the box in the first available slot. Users can order a specific box by its ID or by size, and the program will select the appropriate box for unloading. Program is protected against errors and unexpected behaviour. In service mode all boxes are directed to working magazine.

Backend - Django Rest Framework

Works as a bridge. The backend forwards the TIA data block information to API and order data from another endpoint to the TIA project.

Mobile application - Flutter

The application displays the status of each storage area and can be used to place orders.

Screenshot 1 Screenshot 2 Screenshot 3

About

Simulation of an automated warehouse, controlled by S7 1500 PLC and mobile app.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published