You are on page 1of 9

I 'SBAI - UNESP - Rio Claro/SP - Brasil

APLICANDO STATECHARTS MODELAGEM DO


SISTEMA DE CONTROLE DE PRODUAO DE UMA
. -
CLULA FLEXVEL DE MANUFATURA

Jnia Coutinho Anacleto Silva 1


Paulo Rogrio Politano 1
Renata Pontin de Mattos Fortes 2
Arthur Jos Vieira Porto 3

ABSTRACT

This papel' describes the modelling of a production control subsystem of a Flexible


Manufacturing Cell using Statechart - a technique ior the specification of beha-
vior aspects presented by reactive systems. Additionally it shows how the use of a
software tool for Statechart Simulation can help design, simulation and validation of
the created model based on the informal specification previously available for FMS.
Finally a discussion of a "C" implementation of the model is presented.

1 Introduo

Os subsistemas de controle dos Sistemas Flexveis de Manufatura - FMS (Flexible Manufacturing


Systems) tm, de um modo geral, as funes de automatizar, integrar e assistir as operaes
realizadas durante o processo de manufatura atravs de um ambiente computacional. O objetivo
final o de fazer parte de um ambiente integrado por computador, conhecido por CIM (Com-
puter Integrated Manufacturing). Os FMS devem funcionar de maneira que seus componentes
trabalhem de forma sincronizada e otimizada, produzindo de pequenos a mdios lotes de peas.
Para que isso seja possvel, necessrio que os subsistemas de controle e comunicao tenham
sido modelados de forma adequada, de forma a facilitar a validao do sistema especificado com
respeito aos requisitos desejados pelo usurio [2J e [3J.

Uma das caractersticas importantes dos sistemas FMS a intensa comunicao de


seus componentes com o ambiente e a reao a eventos externos e internos. Esse comporta-
mento reativo e a necessidade de sincronizao dos diversos componentes, tm sido modelados,
usualmente, por Redes de Petri e por Mquinas de Estados Finitos. Recentemente, uma nova
tcnica, denominada Statechart, foi proposta por Harel[5]. Ela combina o rigor matemtico
das Mquinas de Estados Finitos com extenses que a dotam de capacidade para representar
situaes de concorrncia, junto com uma notao visual bastante rica. Alm disso, sua ca-
pacidade de representar diferentes nveis de abstrao elimina o problema de grandes diagramas
lDC-UFSCar Caixa Postal 676 - S.Carlos-SP
2ICMSC-USP Caixa Postal 668 - S.Carlos-SP
3LAMAFE-EESC-USP .

- 491-
I SBAI - UNESP " Rio Claro/SP - B{asil

planos, o que ocorria frequentemente quando se usava Mquinas de Estados Finitos para modelar
problemas grandes e complexos.

Um conjunto de ferramentas de software para apoio utilizao de Statecharts vem


sendo desenvolvido pelo Grupo de Engenharia de Software do Departamento de Computao
e Estatstica do Instituto de Cincias e Matemticas de So Carlos (ICMS C- USP) [1] e [4].
Um dos objetivos deste trabalho foi o de se avaliar a aplicabilidade das ferramentas na prtica
profissional. Foram ento utilizadas as ferramentas para a especificao de um subsistema de
controle de uma Clula Flexvel de Fabricao, em colaborao com o Laboratrio de Mquinas
- Ferramentas (LAMAFE) do Departamento de Engenharia Mecnica da Escola de Engenharia
de So Carlos (EESC-USP) .

o presente trabalho est organizado da seguinte forma:


introduo do conceito de FMS
e descrio informal do subsistema de controle desenvolvido, introduo tcnica Statechart e
ao ambiente desenvolvido para o apoio sua utilizao, especificao do subsistema de controle
de produo e a descrio do prottipo gerado a partir dessa especificao.

2 Descrio informal de um Sistema Flexvel de Manufatura

A automao na manufatura requer a utilizao de hardware especfico dentro de um ambiente


de fbrica. Elementos como robs, mquinas-ferramenta controladas numericamente e sistemas
automatizados de manipulao e transporte de material, devem ser integrados para formar as
chamadas Clulas Flexveis de Fabricao ou os Sistemas Flexveis de Manufatura (FMS), que
diferenciam na quantidade de seus componentes e nveis hierrquicos de integrao.

Esse tipo de sistema possui um alto grau de interao e comunicao. Eles so consti-
tudos por vrios equipamentos automatizados conectados em uma "configurao celular", para
executar vrias tarefas simples, relacionadas a uma determinada famlia de peas. Essas clulas
podem realizar uma grande variedade de funes, orientadas por um sistema de informao
integrado.

Nesse trabalho utilizou-se uma Clula Flexvel de Fabricao composta de: um veculo
auto-guiado (AGV), um magazine automtico de peas (MAP), um rob e um centro de usinagem
((eU).

Cada um dos componentes bsicos da Clula Flexvel possui suas funes especficas,
cuja descrio abaixo, se referem disposio da Clula Flexvel considerada. So elas:

MAP : consiste de um depsito automtico de peas. Nele podem estar as peas


usinadas ou as peas brutas de um programa de produo. Ele responsvel por:
1. Retirar a pea do casulo para a plataforma de carga e descarga e coloc-la sobre
o AGV.
2. Retirar a pea do AGV e transport-la da plataforma de carga e descarga para
o casulo.
AGV : trata-se de um veculo automaticamente guiado. Ele responsvel pelos trans-
porte das peas (usinadas ou no) entre o MAP e o Rob. Seu funcionamento retrata
uma disposio fsica real entre os componentes da Clula Flexvel, onde existem
distncias fsicas a serem respeitadas.

- 492-
I SBAI - UNESP - Rio Claro/SP - Brasil

Rob: um dispositivo reprogramvel, projetado para manipular e transportar peas


atravs de movimentos programados para uma tarefa de manufatura especfica. Ele
responsvel por:
1. Retirar a pea-bruta do AGV, lev-la prxima ao CeU e coloc-la sobre a parte
externa da mesa do CeU.
2. Buscar a pea-usinada na parte externa da:. mesa do Ce U, lev-la prxima ao
AGV e coloc-la sobre o mesmo.
(eU: consiste de uma mquina-ferramenta CNC com um processador dedicado com
a capacidade de carregamento automtico de peas e troca automatizada de ferra-
mentas. Sua funo usinar peas. A pea a ser usinada deve estar na mesa-interna
(parte interna da mesa) do CeU, enquanto a mesa-externa pode estar com uma nova
pea-bruta, ou ento com uma pea-usinada anteriormente, aguardando que o rob
a retire.

3 Viso geral do Statecharts e do ambiente de apOlO sua


utilizao

A especificao de um sistema complexo atravs de Diagrama de Transio de Estados (que


corresponde tcnica grfica das Mquinas de Estados Finitos-MEF) convencionais, geralmente
esbarra na necessidade de se criar um diagrama muito volumoso, com grande quantidade de
estados e transies, o que torna difcil sua visualizao e manipulao. Alm disso, existe a
necessidade de um cuidadoso trabalho de verificao da especificao, que pode ser feito atravs
de provas formais. O usurio tambm necessita ter confianq. de que a especificao representa os
requisitos do sistema e no leva a situaes indesejveis como deadlock e/ou perigo segurana
do operador.

A tcnica Statecharts, segundo Harel[5], um aUXIlio especificao e projeto de


Sistemas Reativos complexos e de grande porte. Os Statecharts fornecem um formalismo visual
para representao dos relacionamentos entre todos os estados em que um Sistema de Tempo-
Real pode se encontrar.

Nos diagramas Statecharts os retngulos com cantos arredondados so utilizados para


denotar os estados em qualquer nvel, utilizando o encapsulamento para expressar a relao de
hierarquia. As setas, representando as transies, podem se originar e terminar em estados de
diferentes nveis. Uma seta pode ser rotulada com uma expresso .lgica envolvendo eventos e
condies que, se forem verdadeiros num certo instante no sistema, causaro a transio. Junto
com a mudana de estado, a transio pode provocar instantaneamente aes que podem, por
sua vez, dar origem a novos eventos (efeito broadcasting). Esses eventos podero causar o disparo
de novas aes em outros componentes ortogonais (isto , estados paralelos).

Para a representao de paralelismo de estados (concorrncia ou ortogonalidade) utili-


zam-se linhas tracejadas delimitando os estados que esto em paralelo. Cada conjunto de estados
delimitado pelas linhas tracejadas corresponde a Mquinas de Estados Finitos independentes.

Mesmo o Statechart tendo um maior poder de representao do comportamento di-


nmico de sistemas reativos em relao s MEF's, ainda existem dificuldades para se validar
manualmente uma especificao completa. Principalmente quando o sistema especificado exige

- 493-
I SBAI - UNESP -. Rio Claro/SP - Brasil

H
INTERfACES
......... MULTI-5iERIAL ....- - _

. : L-:--r-E......,....PARAU_LA---I

L&%
.. leRe
GEAENCIADOR
DA cw..v.

ROBO

Figura 1: Esquema da Clula Flexvel

flexibilidade, suportando, por exemplo, questionamentos do tipo what-iJ("o que acontece se ... ").
Nesse contexto, verifica-se a importncia das ferramentas computacionais que foram utilizadas
neste trabalho. Esforos no mesmo sentido so encontrados em [7] e [8].

o conjunto de ferramentas de software para apoio . utilizao de Statecharts fornece


meios de simulao de Statecharts e denominado Statsim. Inicialmente, criada uma Base
de Dados que armazena a especificao do diagrama Statecharts, que pode ser inserida em sua
forma grfica atravs do EGS (Editor Grfico de Statecharts).

o Statsim, que roda em estaes Sun sob o Openwindows, permite a simulao de


qualquer diagrama Statechart criado dentro do seu ambiente. Atravs de botes na tela e de um
menu dos eventos possveis, o usurio indica, passo a passo, os eventos ocorridos e o simulador,
seguindo a semntica definida por Harel(6), realiza a simulao [9].

4 Especificao e Simulao de Controle de Produo de uma


Clula Flexvel de Fabricao

Com base na descrio informal dos componentes de uma Clula Flexvel e de seu funcionamento,
foi especificado um sistema composto de cinco sub estados em paralelo correspondentes aos cinco
elementos componentes da Clula considerada, a saber: um MAP, um AGV, um rob e um
Centro de Usinagem (CeU), subdividido em um estado de controle da mesa externa e um estado
de controle da usinagem.

Tomou-se como ponto de partida a anlise orientada a objetos uma vez que os com-
ponentes fsicos mais independentes da Clula foram representados nos respectivos subestados
paralelos.

A seguinte configurao inicial de estados foi adotada:

o MAP encontra-se "embarcando"


O AGV vazio . espera de uma pea bruta,
O rob tambm vazio posicionado na direo do AGV,

- 494-
I SBAI - UNESP - Rio Claro/SP - Brasil

Inicio

tr......J'\J tronspJ'\J

V6Z10..... 10

flll..8lob <ln~)

_10

IIW'
.
~

IIow...."U:'U
.c.u
............... _...... ................. r ..................... .
,:



....._ _f_IA__
JOt..cAo( In ro~lcnondo)
_IA

e<aJ'B

fia..tronspJ'j( in trONl'J'B)

Figura 2: Statechart para Controle de Produo da Clula Flexvel

A mesa externa do CeU vazia aguardando a chegada de uma pea,


e o CeU usinado uma pea, conforme mostra o esquema da figura 1.

A configurao inicial ficou assim estabelecida para representar a simulao mais ge-
nrica em que os elementos do FMS estivessem j em produo. importante notar que os
casos extremos, de levar a primeira vez uma pea para ser usinada e o de buscar a ltima
pea, no tm necessidade de serem especificados pelo Statechart, consistindo de um conjunto
inicial de eventos gerados pelo programa controlador, posiclonando todos os componentes para
poder iniciar a operao. O objetivo principal foi o de caracterizar os estados operacionais dos
elementos da Clula Flexvel funcionando "em regime".

A figura 2 mostra o Statechart resultante que modelou o controle dos componentes da


Clula Flexvel de Manufatura considerada. Pode-se ver que os cinco componentes bsicos esto
representados pelos estados MAP, AGV, ROBO, Mesa_exLCeU e CeU. Os estados iniciais indicam
a configurao genrica dos componentes da Clula em regime, que se estabelece para que se
cumpra um possvel programa de produo.

~ ,; ' ,

c~tro Universitrio d!
,..... .~. ~l a Geral dos Proy:ssc

- 495-
I SBAI - UNESP - Rio Claro/SP - Brasil

5 Projeto do Prottipo do Sistema de Controle de Produo


de Clula Flexvel de Fabricao

o projeto constituiu-se das seguintes etapas: definio da arquitetura bsica do sistema, das
estruturas de dados a serem utilizadas e definio da lgica de execuo.

A figura 3 mostra a arquitetura bsica definida, com seus mdulos principais, suas
interfaces, monitorando e comunicando-se com os elementos da Clula.

As estruturas de dados principais definidas foram quatro tabelas, a saber:

(a) estados de Statecharts,


(b) eventos,
(c) comandos a serem enviados a cada componente da Clula,
(d) e estados atuais ativos do Statecharts representando a configurao corrente do sis-
tema.

Essas estruturas de dados foram preenchidas a partir do modelo especificado no dia-


grama S tatechart.

A tabela de estados registra, para cada estado especificado no Statecharts, o ndice


dele, uma breve descrio do mesmo, bem como todos os eventos que podem ocorrer estando a
Clula neste estado.

A tabela de eventos relaciona todos os eventos do sistema, sendo que, para cada evento,
registrado seu ndice, sua descrio, a condio para que ocorra este evento, o ndice do prximo
estado a ser ativado na ocorrncia deste evento, e o ndice do comando a ser enviado aos demais
componentes da Clula, associado ao prximo estado.

N a tabela de comandos, relaciona-se para cada comando o ndice dos comandos, sua
descrio e o ndice do componente da Clula a que se destina o comando (MAP, AGV, Rob
ou CeU).

Atravs da tabela de estados atuais, feito o controle do comportamento do sistema,


onde os estados ativos so relacionados, juntamente com os comandos que devem ser executados
durante sua ativao. Essa tabela tem o nmero varivel de elementos, pois a cada evento
ocorrido, um novo estado ativado e colocado na tabela, sendo que o estado desativado
retirado da tabela. Os eventos ocorrem quando, a partir do nvio dos comandos aos componentes
da Clula, eles so executados, retornando um status de fim de execuo. Esse status que
determina a efetiva ocorrncia do evento e conseqente mudana de estado.

6 Implementao de um Prottipo de Sistema de Controle de


Produo de Clula Flexvel de Manufatura

O desenvolvimento do programa de controle da Clula Flexvel modelado foi feito em linguagem


de programao "C".

- 496-
I SBAI - UNESP - Rio Claro/SP - Brasil

I F I M

IuperYI r comandol CONTROLE


d. -
a'lul. 4--- COMUNICAO
lIalul

com~ndO'
".'pu. ~ndo'l
-_. .-".'u. j=dO'""u. 1j
CN
Pft9'W'III CN

com.naoa
li a' u

G6"------' r 1
u
GAZIN

Figura 3: Arquitetura Bsica do Sistema

o algortimo implementado foi baseado em bus~as nas tabelas referidas no item ante-
rior, ficando a cargo das estruturas de dados o ponto forte de representao da especificao. A
sequncia das buscas a essas tabelas feita a partir de uma situao inicial definida na tabela de
estados atuais. No caso do Statechart modelado, essa tabela de estados atuais possui, no incio,
os estados defauLt, ou seja, os estados do diagrama que po~suem uma pequena seta sem rtulo
apontando-lhes.

Conhecendo-se os estados atuais, os comandos a eles associados so executados. Faz-se,


ento, a busca na tabela de estados, coletando todos os eventos que podem ocorrer com essas
configurao. A seguir, so recuperados todos esses eventos, verificando-se as suas condies de
ocorrncia e uma nova configurao da tabela de estados atuais estabelecida.

As tabelas referem-se aos elementos bsicos do diagrama Statechart modelado: de


estados, eventos e dos comandos, e foram preenchidos a partir da especificao da figura 2.

Cada estado modelado corresponde, na maioria das vzes, a um comando, ou a um


conjunto de comandos, enviado a cada um dos componentes da Clula. Existe tambm uma
relao entre a execuo desses comandos e o disparo de outros eventos especificados.

o programa final para o controle de produo constituiu-se de aproximadamente 2000


linhas de cdigo fonte e foi executado em microcomputador tipo IBM-PC. Inicialmente, durante a
fase de levantamento e validao de requisitos do sistema de controle de produo da Clula, cada
um dos componentes foi simulado por microcomputador e conectados em uma rede proprietria
tipo estrela com meio fsico RS-232C serial. Posteriormente, o sistema de controle foi instalado
na Clula Flexvel existente no LAMAFE e encontra-se em uso.

7 Concluses

o trabalho de especificao e projeto de sistemas de grande porte e/ou complexos requer cada
vez mais uso de ferramentas de software de apoio ao seu desenvolvimento. Para obter maior
produtividade e melhor qualidade do produto, ferramentas bsicas de apoio ao desenvolvimento

- 497-
I SBAI - UNESP - Rio Claro/SP - Brasil .

so imprescindveis.

Nesse trabalho pde-se constatar a aplicabilidade das ferramentas de software desen-


volvidas na definio do subsistema de controle de Clulas Flexveis de Manufatura. A utilizao
das ferramentas durante a especificao do subsistema controlador da Clula Flexvel no apre-
sentou dificuldades para usurios que ainda no as dominayam.

Dois aspectos a ressaltar nesse experimento: o alto poder de representao e conciso


de Statecharts e a facilidade de visualizao dos componentes fsicos do sistema, havendo uma
correspondncia imediata entre eles e os componentes ortogonais de mais alto nvel dos State-
charts. Entretanto para se conseguir esse efeito procurou-se ,evitar o uso de variveis, como
permitido no Statecharts, para representar componentes, tomadas de deciso, etc.

Foi notvel tambm a facilidade de implementao que o Statecharts permite a partir


de estruturas de dados simples. Alm disso, o processo de validao da especificao foi reali-
zada em um tempo relativamente curto tendo-se em vista que o sistema inicial controlador da
Clula, cujos componentes foram simulados por microcomputadores, foi totalmente desenvolvido
(especificado e implementado) em aproximadamente trs meses.

Verificou-se que possvel utilizar a descrio dos estados como comandos de mais alto
nvel, isto , a prpria especificao montando a tabela de comandos.

Novas ferramentas de software de apoio ao desenvolvimento de sistemas esto sendo ela-


boradas e a evoluo sugere a conduo de um suporte cada vez mais amplo tcnica Statecharts
por ser bastante promissora.

Dentre as novas ferramentas sendo desenvolvidas est a de uma linguagem de simulao


baseada em Statecharts com possibilidade de atribuio de' distribuio estatstica ocorrncia.
de eventos e tempo de execuo s atividades associadas aos estados. O resultado da simulao
poder ser, opcionalmente, registrado num arquivo de log ou visto de forma animada na tela.
Este um passo no sentido de se gerar futuramente, .prottipos do sistema espeificado.

Referncias

[1] I Batista Neto, J.E.S. (1991). Editor Grfico para Statecharts, Dissertao de Mestrado,
'ICMS C- USP.

[2] Deisenroth, M.P.j Zhang, Y. (1992). An Integrated Intelligent Shop Control System, Flexible
Information Management, Proceedings of the Second International FAIM Conference, Falls
Church, Virginia, U .S.A.

[3] Fine, C.H. (1989). Stmtegic Manufacturing - Dinamic New Directions for the 1990s, Dow-
Jones Irwinj Homewood, lilinois, U.S.A., p257-274.

[4] Fortes, R.P. de M. (1991). Uma Ferramenta de Apoio Utilizao de Statecharts para
Especificao do Comportamento de Sistemas de Tempo-Real Complexos, Dissertao de
Mestrado, ICMS C- USP.

[5] Harel D. (1987). STATECHARTS: A Visual Formalism for Complex Systems, Science of
Comp. Programming, 8:231-274.

- 498-
I SBAI - UNESP - Rio Claro/SP - Brasil

[6] Harel D. (1987). On the Formal Semantics of Statecharts, In: Proceeding of the 2nd IEEE
Symposium on Logic in Computer Science, Ithaca, N.Y.

[7] Harel D. et aI (1988). Statemate: A Working Environment for the Development of Com-
plex Reactive Systems, In: Proceedings of the Tenth International Conference on Software
Engineering. (Singapore, April), Washington D.C., IEEE.

[8] Maraninchi, F. (1989). Argonaute: Graphical Description, Semantics and Verification o}


Reactive Systems by Using a Process Algebra, Berlin, LNCS, Springer- Verlag, 407:38-53 .

[9] Masiero, P.C; Fortes, R.P. de M; Batista Neto, J.E.S .. (1991). Edio e Simulao do As-
pecto Comportamental de Sistemas de Tempo-Real, Anais do XVIII Semin.rio Integrado de
Hardware e Software, SBC, Santos-SP.

- 499-

You might also like