TIA Portal SCADA Cuivre
Loading...
Project
Edit
View
Insert
Online
Options
Tools
Liaison en ligne
RUN STOP
CPU: OFFLINE
Topologie Réseau
Main [OB1] - SCL
Sequence [FB1] - Graph
HMI_1 - Écran
PN/IE_1 (PROFINET)
PLC_1 [CPU 1516-3 PN/DP]
CPU 1516
X1 (PN)
SCALANCE X204
P1
P2
P3
HMI_1 [TP1200 Comfort]
Touch Panel
X1 (PN)
IO_Remote (ET200SP)
X1 (PN)
Block title: Main Program Sweep (Cycle) Language: SCL
// =========================================================================
// Block: Main [OB1]
// Description: Main execution cycle for Copper Production Line
// =========================================================================

IF "HMI_Start_Btn" AND NOT "HMI_EStop" THEN
    "System_State" := 1; // RUNNING
ELSIF "HMI_Stop_Btn" OR "HMI_EStop" THEN
    "System_State" := 0; // STOPPED
END_IF;

// --- Call Sequencer (Grafcet FB) ---
CALL "Sequence_Cuivre_FB", "Seq_DB" (
    Execute := "System_State",
    Reset   := "HMI_EStop",
    Step    => "Current_Step_HMI"
);

// --- PID Control (Furnace Heating & Pressure) ---
IF "Current_Step_HMI" = 4 THEN
    "PID_Temp_DB"(
        Setpoint := 1200.0,
        Feedback := "Sensor_Temp_AI",
        Output   => "Furnace_Power_AO"
    );
    // Valve control based on Pressure
    IF "Sensor_Press_AI" > 3.0 THEN
        "Valve_Pressure_Relief" := TRUE;
    ELSE
        "Valve_Pressure_Relief" := FALSE;
    END_IF;
ELSE
    "Furnace_Power_AO" := 0.0;
    "Valve_Pressure_Relief" := FALSE;
END_IF;

// --- Scale Analog Inputs for HMI Display ---
"HMI_Display_Temp" := SCALE(IN:="Sensor_Temp_AI", HI_LIM:=1500.0, LO_LIM:=0.0);
"HMI_Display_Press" := SCALE(IN:="Sensor_Press_AI", HI_LIM:=5.0, LO_LIM:=0.0);
"HMI_Display_Current" := SCALE(IN:="Sensor_Current_AI", HI_LIM:=30000.0, LO_LIM:=0.0);
"HMI_Display_Voltage" := SCALE(IN:="Sensor_Voltage_AI", HI_LIM:=500.0, LO_LIM:=0.0);
"HMI_Display_pH" := SCALE(IN:="Sensor_pH_AI", HI_LIM:=14.0, LO_LIM:=0.0);

// --- Alarms Generation ---
IF "Sensor_Temp_AI" > 1250.0 THEN "Alarm_High_Temp" := TRUE; END_IF;
IF "Sensor_Press_AI" > 4.0 THEN "Alarm_High_Press" := TRUE; END_IF;

Sequence_Cuivre [FB1] - S7-GRAPH

S0
Init
"System_State" = 1
S1
1. Broyage
Moteur_Broyeur := 1
Alim_Trémie := 1
Niveau > 95% ET T > 5s
S2
2. Flottation
Pompe_Acide := 1
Agitateur := 1
Niveau > 50% ET pH > 7.5
S3
3. Électrolyse
Tension_Ref := 400V
Alim_Courant := 1
Timer_Elec.Q > 8s
S4
4. Fusion
Four_Induction := 1
Soupape_Reg := Auto
Temp > 1150.0 °C
S5
5. Condit.
Robot_Enable := 1
Convoyeur_Sortie := 1
Timer_Cond.Q > 6s
SCADA - Supervision Production Cuivre
_ □ X
SIEMENS
12:00:00
Jumeau Numérique 3D 🖱️ Clic & glisse pour pivoter • Molette pour zoomer
Pupitre de Commande X
EN ATTENTE
DÉMARRER CYCLE ARRÊT NORMAL
ARRÊT D'URGENCE
Process Values (PV)
Temp. Four
0020.0 °C
Pression Four
01.00 bar
Courant Électr.
00000 A
Tension Électr.
000.0 V
pH Flottation
07.0 pH
Niveau Minerai
000 %
Journal des Alarmes

ARRÊT D'URGENCE

System Locked. Reset required.