Академический Документы
Профессиональный Документы
Культура Документы
Sepretendeautomatizarelsiguientefuncionamiento:
Aloprimirelpulsador,labarrerasube.Cuandollegaarribapermanecersubida
durante20segundos,transcurridoesetiempoiniciaeldescensohaciasuposicin
inicial.Siduranteelprocesodebajadadelabarrerasedetectalapresenciadealgn
vehculopormediodelsensor,labarreravuelveasubir,esperaaqueelvehculose
retireydespusbaja.
Parada
Pulsador
Sabajo
Subir
Sarriba
Spresencia
Espera
t>5s
Bajar
SOLUCIN:
Entradas
Salidas
Estados
Psubida
%I1.1
Motorsubir
%Q2.0
Parada
%M0
Sarriba
%I1.13
Motorbajar
%Q2.1
Subir
%M1
Sabajo
%I1.8
Espera
%M2
Spresencia
%I1.2
Bajar
%M3
ConfiguracindelTemporizador:
%TM0.P:=200;
%TM0.B:=100ms;
Lasentencia%L0esunainicializacindelosestados,enestecasohemosutilizadoel
bitdesistema%S13,estebit(segnelmanualdelautmata)tomavalor1enel
primerciclodespusdelapuestaaRUN,esdecir,vale1cuandoseenciendeel
autmata.Poresonospuedeservirparadeterminarlacondicindeiniciodel
programa.
Lasinstruccionesindicanquesiestamosenelprimerciclo,seacabadepasaraRUN
elautmata(IF%S13THEN),ponemosa1elbitdememoriaqueindicaelprimer
estadoalquehemosdenominadoParada(SET%M0)ya0elrestodelosestados
(RESET%M1;RESET%M2).
Indicarquetodaslasinstruccionesdebenfinalizarsecon;.
AlfinalizarlaestructuradecontrolEND_IF.
_____________________________________________________________________________
Lasentencia%L1indicalatransicindelestadoParada(%M0)alestadoSubir
(%M1).
o CuandoestenelestadodeParadayseoprimeelpulsadorPsubida(IF
%I1.1AND%M1THEN),entoncesseponea1elbitdememoriaqueindicael
estadoSubir(SET%M1)yseponea0elbitdememoriaqueindicael
estadoParada(RESET%M0).
_____________________________________________________________________________
Lasentencia%L2indicalatransicindelestadoSubiralestadoEspera,alllegaral
finaldelrecorrido,lodetectaelsensorSarriba,labarreradebeparar.
o CuandoestenelestadodeSubiryelsensorSarribadetectaqueha
llegadoarriba(IF%I1.13AND%M1),entoncesseponea1elbitdememoria
queindicaelestadoEspera(SET%M2)yseponea0elbitdememoriaque
indicaelestadoSubir(RESET%M1).
_____________________________________________________________________________
Lasentencia%L5gestionaeltemporizador,queseiniciaconelflancodesubidadel
bitqueindicaelestadoEspera(RE%M2),ysedesactivaalsalirdelestado(FE
%M2).
_____________________________________________________________________________
Lasentencia%L21indicalatransicindelestadoEsperaalestadoBajar,paralo
cualdebenhabertranscurrido20segundos.Segnelenunciadolabarreradebe
permanecerarriba5segundosparada,paraestoutilizaremosuntemporizador.
Cuandoeltemporizadorhayaterminadodemedirlos20segundos,susalidase
pondra1(%TM0.Q).Ademssecompruebaquenohayningncochedebajodela
barrera,pormediodelsensordepresenciaSpresenciaantesdeiniciarsubajada.
o CuandoestenelestadoEspera(%M2)yhantranscurridolos5segundos
(%TM0.Q)ynohaycochedebajodelabarrera(NOT%I1.2),todaslas
condicionesalavez,esdecir,conoperacinAND
IF%M2AND%TM0.QAND(NOT%I1.2)
entoncesseponea1elbitdememoriaqueindicaelestadoBajar
(SET%M3)yseponea0elbitdememoriaqueindicaelestado
Espera(RESET%M2).
_____________________________________________________________________________
Lasentencia%L3indicalatransicindelestadoBajaralestadoParada,alllegar
alfinaldelrecorrido,lodetectaelsensorSabajo,labarreradebeparar.
o CuandoestenelestadodeBajaryelsensorSabajodetectaqueha
llegadoabajo(IF%I1.8AND%M3),entoncesseponea1elbitdememoria
queindicaelestadoParada(SET%M0)yseponea0elbitdememoria
queindicaelestadoBajar(RESET%M3).
_____________________________________________________________________________
Lasentencia%L4indicalatransicindelestadoBajaralestadoSubirquese
puedeproducirsielsensordepresenciadetectaunvehculoatravesandolabarrera
cuandoestaestbajando
o CuandoestenelestadodeBajaryelsensorSpresenciadetectaque
hayunvehculodebajo(IF%M3AND%I1.2),entoncesseponea1elbitde
memoriaqueindicaelestadoSubir(SET%M1)yseponea0elbitde
memoriaqueindicaelestadoBajar(RESET%M3).
_____________________________________________________________________________
Lasentencia%L6asignalassalidasalosestadoscorrespondientes:
o %Q2.0:=%M3;Lasalida%Q2.0(motordebajada)soloestactivadacuando
%M3tomavalor1,esdecir,cuandoestactivadoelestadoBajar
o %Q2.1:=%M1;Lasalida%Q2.1(motordesubida)soloestactivadacuando
%M1tomavalor1,esdecir,cuandoestactivadoelestadoSubir
Se quiere que la vagoneta efecte el siguiente proceso cada vez que pulsemos el botn de
arranque:
Debecargarmaterialenelreadecarga(nivel1)enunprocesoquedura5segundos.
Tras cargar, dirigirse al puesto de trabajo situado en el nivel 2 y efectuar la descarga del
materia, este proceso dura 4 segundos. Una vez concluido el proceso de descarga volver a
situarseenelreadecarga.Repetirelmismoprocesoparalospuestosdetrabajosituadosen
losniveles3,4y5.
Durantelaetapadecargadebemantenerseencendidoelindicadorluminosocorrespondiente
al rea de carga, de igual forma durante la descarga se mantendr encendida la luz
correspondientealpuestodetrabajodondeseefectaladescarga.
Notas:
Sepideprogramarenlenguajeliteralestructurado.
Utilizarunapalabrainternaparaindicarencadainstanteelpuestodetrabajosobreel
queseestactuando.
SOLUCIN
ProgramaMAIN
!(*Inicializacion*)
IF(NOT%M0ANDNOT%M1ANDNOT%M2ANDNOT%M3ANDNOT%M4)THEN
SET%M0;
END_IF;
!(*Puestaenmarcha*)
IF%M0AND%I1.0THEN
SET%M10;
%MW0:=2;
END_IF;
!(*Bucleparaabastecertodoslosniveles*)
IF%MW0<=5THEN
(*iniciodelprocesodecarga*)
IF%M0AND%M10THEN
SET%M1;
RESET%M0;
END_IF;
(*procesodecarga*)
IFRE%M1THEN
START%TM0;
ELSIFFE%M1THEN
DOWN%TM0;
END_IF;
(*Pasoalestadodemovimientohaciaderecha*)
IF%TM0.QTHEN
SET%M2;
RESET%M1;
END_IF;
(*Elijohastadondemoverme*)
IF(%MW0=2)THEN
IF%M2AND%I1.9THEN
SET%M3;
RESET%M2;
END_IF;
ELSIF(%MW0=3)THEN
IF%M2AND%I1.10THEN
SET%M3;
RESET%M2;
END_IF;
ELSIF(%MW0=4)THEN
IF%M2AND%I1.11THEN
SET%M3;
RESET%M2;
END_IF;
ELSE
IF%M2AND%I1.12THEN
SET%M3;
RESET%M2;
END_IF;
END_IF;
(*Etapadedescarga*)
IFRE%M3THEN
START%TM1;
ELSIFFE%M3THEN
DOWN%TM1;
END_IF;
(*Vueltaazonadecarga*)
IF%M3AND%TM1.QTHEN
SET%M4;
RESET%M3;
END_IF;
(*Accionesarealizaralllegaralazonadecarga*)
IF%M4AND%I1.8THEN
SET%M1;
RESET%M4;
%MW0:=%MW0+1;
END_IF;
END_IF;
!(*Activaciondelassalidas*)
%Q2.1:=%M2;
%Q2.0:=%M4;
!(*Vueltaalestadodereposo*)
IF%MW0>5THEN
SET%M0;
RESET%M1;
RESET%M10;
END_IF;
PROBLEMA
DesarrollarunprogramautilizandoGRAFCETylenguajeliteralestructuradoquerealicelas
siguientesoperaciones:
Unavezpulsadalaentrada%I1.0,leaelvalordelasentradasylasguardeenuna
palabra(%MW10)ycuentecuntasestnactivasen%MW4.
Sisepulsaelinterruptor%I1.1,debeactivarelnmerodesalidasindicadasen%MW4,
empezandoporlaprimera.
Sisepulsaelinterruptor%I1.2,debeactivarelnmerodesalidasindicadasen%MW4,
empezandoporlaltima.
Sisepulsa%I1.3,debeactivarlassalidasalmacenadasen%MW10hastaquesepulse
elinterruptor%I1.4.
Unavezactualizadaslassalidas,sevuelveaesperarlaentrada%I1.0.
EsquemadeGRAFCET
Programacindelastransiciones:
X0>X1:%I1.0
X1>X2:%I1.1
X1>X3:%I1.2
X1>X4:%I1.3
X2>X0:TRUE
X3>X0:TRUE
X4>X0:%I1.4
Programacindelasetapas
Etapa0
!%MW4:=0;(*Inicializamoselcontadordeentradasactivadas*)
Etapa1
!%Q2.0:16:=0;(*Ponemosacerolassalidas*)
%MW10:=%I1.0:16;(*CopiamoslatabladeentradasenlapalabraMW10*)
(*Contamosentradasactivas*)
!FOR%MW0:=0TO15DO
(*Buclepararecorrertodaslasentradas*)
IF%I1.0[%MW0]THEN(*Silaentradaestactiva
END_IF;
INC%MW4;
aumentamoselvalordeMW4*)
END_FOR;
Etapa2
Etapa3
Accin desactivacin:
!%Q2.0:16:=0;
(*Copiamosenlatabladesalidaselcontenidode
MW10,dondesehaguardadolatabladeentrada*)