101 lines
3.9 KiB
Plaintext
101 lines
3.9 KiB
Plaintext
#
|
|
# Donati Macchine SM05 , SM06 , SM09 , SM10 ( PLC Stefano )
|
|
# Macchine Ghidini
|
|
#
|
|
# v.1 31-X-2013 prima versione compilata : sostituisce versione scritta a mano
|
|
# v.2 9-XII-2013 rimessa regola : se segnale contapezzo, vale per tutti gli stati
|
|
#
|
|
# volendo fare i fighi , bit 4 sulla SM10 è fine nastro OR fine Spazzola
|
|
#
|
|
# nella macchina manuale era definito uno stato 8 "Scarico pieno" ma su queste macchine non c'è il segnale
|
|
#
|
|
# segnale contapezzo : non rimanda evento se già nello stato "Cycle end" <<<< no dalla versione 2
|
|
# si faceva fottere da 3 o + campioni a 7 in ingresso
|
|
# primo input a 7 --> stato end cycle
|
|
# secondo input a 7 --> stato run !!! ( mancava la regola )
|
|
# terzo input a 7 --> di nuovo stato end cycle ( e quindi un pezzo in più )
|
|
|
|
$DEFINITIONS
|
|
|
|
$NAME : stefano
|
|
$IDX : 11
|
|
$N_STATES : 8
|
|
$N_BITS : 8
|
|
|
|
#definizione bit : obbligatorio iniziare da 0
|
|
|
|
$BIT : 0 : power_on
|
|
$BIT : 1 : run
|
|
$BIT : 2 : end_cycle
|
|
$BIT : 3 : alarm
|
|
$BIT : 4 : fine nastro
|
|
$BIT : 5 : manual
|
|
$BIT : 6 : spare1
|
|
$BIT : 7 : spare2
|
|
|
|
#definizione stati : obbligatorio iniziare da 0
|
|
|
|
$STATE : 0 : ST_Init
|
|
$STATE : 1 : ST_Power off
|
|
$STATE : 2 : ST_Machine ready
|
|
$STATE : 3 : ST_Run
|
|
$STATE : 4 : ST_Cycle end
|
|
$STATE : 5 : ST_Alarm
|
|
$STATE : 6 : ST_Broken belt
|
|
$STATE : 7 : ST_Manual
|
|
|
|
#####$STATE : 8 : Output full
|
|
|
|
#definizione eventi : obbligatorio iniziare da 0
|
|
|
|
$EVENT : 00 : EV_00
|
|
$EVENT : 01 : EV_01
|
|
$EVENT : 02 : EV_02
|
|
$EVENT : 03 : EV_03
|
|
$EVENT : 04 : EV_04
|
|
$EVENT : 05 : EV_05
|
|
$EVENT : 06 : EV_06
|
|
$EVENT : 07 : EV_07
|
|
$EVENT : 08 : EV_08
|
|
$EVENT : 09 : EV_09
|
|
$EVENT : 10 : EV_10
|
|
$EVENT : 11 : EV_11
|
|
$EVENT : 12 : EV_12
|
|
$EVENT : 13 : HW - init
|
|
$EVENT : 14 : HW - power off
|
|
$EVENT : 15 : HW - power on
|
|
$EVENT : 16 : HW - machining
|
|
$EVENT : 17 : HW - end machining
|
|
$EVENT : 18 : HW - error
|
|
$EVENT : 19 : Barcode - cambio operatore
|
|
$EVENT : 20 : Contapezzi
|
|
$EVENT : 21 : HW - start pallet
|
|
$EVENT : 22 : HW - end pallet
|
|
$EVENT : 23 : HW rottura nastro abrasivo
|
|
$EVENT : 24 : HW manuale
|
|
$EVENT : 25 : HW nastro scarico pieno
|
|
$EVENT : 26 : Barcode - Manca Riforn. MPD
|
|
$EVENT : 27 : Timer - timeout tempo ciclo
|
|
$EVENT : 28 : Timer - timeout TURNO by tempo ciclo
|
|
$EVENT : 29 : HW - magazzino grezzi vuoto
|
|
$EVENT : 30 : HW - emergenza
|
|
|
|
|
|
$RULES
|
|
|
|
# state : input : next state : event -------------------------------------------------
|
|
|
|
ALL_STATES : NOT power_on : ST_Power off : HW - power off
|
|
ALL_STATES : manual : ST_Manual : HW manuale
|
|
ALL_STATES : fine nastro : ST_Broken belt : HW rottura nastro abrasivo
|
|
ALL_STATES : alarm : ST_Alarm : HW - error
|
|
|
|
# rimetta a posto la candela !
|
|
|
|
ALL_STATES : end_cycle : ST_Cycle end : HW - end pallet
|
|
|
|
ALL_STATES : run : ST_Run : HW - machining
|
|
ALL_STATES : power_on : ST_Machine ready : HW - power on
|
|
|
|
$DO
|