During my exchange semester in Norway at the University of Agder (UiA), I took the Industrial IT course. The course focused on the programming and concepts of PLCs, specifically Beckhoff PLCs. Together with three other students, we programmed the PLC of a three-phase oil separator as our final project. The goal of the project was to program a separator, to separate an emulsion of water and oil based on their difference in density. We developed the sequence of the whole system and implemented it using TwinCAT. We also designed a PID controller, which was simulated in MATLAB before implementation in the system. A HIM was added to control the system and finally the implemented controller was extensively tested and documented. The project was graded with an A, which corresponds to a 6.0 on the Swiss grading scale.
Schematics of oil separator:

User Human Machine Interface:

Physical Separator:

Read the full report here