Home
Atualização do FEUPAutom e criação de software simulador
Contents
1. zero Q1_ 03 le 7 JT Loo Tmers v gear Export ka Dr 011 Obj 1 Move 100 Create Step Transitien Figure 1 Development environment of FEUPAutom 3 2 Debugging FEUPAutom being a software that is constantly in development either by new additions made by the develop team or new requirements and suggestions made by the students it has several debugging tools to improve it usage e In Grafcet mode it can convert the Grafcet made to a State Machine give a translation of the objects drawn to a text format as seen in Figure 2 so the user can watch if all the objects are correctly created and by the order they made them the code area has an auto complete systems that allows for fast development of algorithms and there is the possibility to leave comments in each object so the user can write what the object is doing e In the main window it s possible to watch the conversion of Grafcet in ST the ST conversion in Pascal and C language there is also one window for compilation errors that show the user what the errors are in ST language because it uses the same names that the Grafcet it is easily to see what is the error in the Grafcet draw The last debugging tool is the Time Logger green one in figure 1 that is crucial once it is the perfect way to see what is happening with the system variables as time goes by It can draw sev
2. Nome Tradu o Tipo de objeto Tipo de acesso Discrete Input Entrada Discreta 1 bit leitura Discrete Output Coils Sa da Discreta 1 bit leitura escrita Input Register Registo de Entradas 16 bit word leitura Output Register Registo de Sa das 16 bit word leitura escrita De uma forma geral o protocolo Modbus simples de implementar uma vez que apenas composto por duas grandes camadas sendo elas o Modbus Application Header MBAP respons vel por enderegar a camada de transporte e o Protocol Data Unit PDU respons vel pela camada da aplica o isto contendo os dados tal como ilustrado na Figura 4 1 De notar que os valores entre par ntesis representam o n mero de bytes que cada campo necessita numa mensagem Mod bus Desta forma torna se muito intuitivo o envio receg o e interpretag o de mensagens Modbus dado que depois de estabelecida a comunica o o servidor apenas tem de responder aos pedidos de leitura ou escrita enviados pelo o cliente s O PDU do Modbus ainda dividido em tr s tipos e PDU de pedido fung o e dados e PDU de resposta normal fun o e dados e PDU de resposta de erro fung o 128 e c digo identificador do erro Modbus TCP IP ADU Function Code 1 ransition Protocol Lenght 1D 2 2 1D 2 Figura 4 1 Trama uma mensagem Modbus TCP adaptado de 27 Data N PDU 32 Implementag o do Simulador 4 1 2 3 XML A ltima
3. 4 4 1 Objetosesuasfungdes 4 4 2 Menu de Contexto 00 4 5 Algoritmos desenvolvidos o o 4 5 1 Atualiza o da simula o 4 5 2 Comunica o Modbus 4 5 3 Grava o e Leitura de ficheiros XML 4 5 4 Hist rico Log Temporal 5 Utiliza o e Resultados 5 1 Interface Gr fica o ee e 5 1 1 Janela Principal o 5 1 2 Janela de Entradas Sa das 5 1 3 Janela de Propriedades 5 2 Casos de estudo o e 5 2 1 Luzes de Sem foros 00 5 2 2 LimpaPara Brisas o 5 3 Resultados Obtidos o o e 5 3 1 Satisfa o dos Requisitos o 5 3 2 Testes com estudantes o o 6 Atualiza o do FEUPAutom 6 1 Problema e Objetivos o o e 6 2 Metodologia gt e ecc oe o o e e 6 2 1 Motor de Scripting o o e 6 2 2 Leitura e Grava o de projeto FEUPAutom XML 6 2 3 Comunica o Modbus 6 2 4 Novas funcionalidades 6 3 Resultados Obtidos 7 Conclus es e Trabalho Futuro 7 1 Satisfa o dos Objetivos o o a 7 2 Trabalho Futuro s s soss e o e e e A Manual pr tico de utiliza o do FEUPSim B Gui
4. lt Material gt lt Material gt lt SpecificProperties ModulateColor 0 0 0 Text desligar gt lt MyProperties gt lt TGLAbsoluteHUDText gt lt Childs gt lt myButton gt 1 lt myButton Name Ligar_bot ClassName myButton NumberOfOwnChilds 1 NumberOfChildsBelow 1 gt 2 lt Position gt 0 3616001308 1 220159888 0 lt Position gt lt Pick_Visible Pickable 1 Visible 1 gt lt Scale gt 1 1 1 lt Scale gt lt RollAngle gt 0 lt RollAngle gt Figura 4 11 Exemplo de um ficheiro XML gerado pelo FEUPSim 4 5 Algoritmos desenvolvidos 45 4 5 4 Hist rico Log Temporal Por forma tornar o simulador num programa mais abrangente que contivesse os diversos sub sistemas que comp em um SCADA tal como visto em 2 2 existiu a necessidade de criar um hist rico Para isso projetou se quais as funcionalidades que deveriam ser guardadas os campos a frequ ncia e o formato de gravacao O formato de grava o utilizado foi o Comma Separated Values CSV que pode ser tra duzido por Valores Separados por V rgulas e tal como o nome indica uma representa o de valores n meros ou texto que s o guardados como texto simples de forma ordenada e separados por uma v rgula Cada conjunto de dados representado por uma nova linha no ficheiro e cont m sempre o mesmo n mero de campos 29 Este formato muito usado para gravag o de dados em tabelas uma vez que usando cada conjunto de d
5. Gostaria de ter mais simula es de sistemas reais 63 16 28 07 263 5 26 para E om a O TE m Discordo Totalmente wm Discordo m Neutro mConcordo m Concordo Totalmente ni 37 11 21 65 32 99 8 76 6 19 am m Discordo Totamente w Discordo m Neutro m Concordo m Concordo Totalmente Gostaria de poder fazer eu pr prio a minha simula o mas 37 72 18 42 A a Discordo Totalmente w Discordo m Neutro m Concordo m Concordo Totalmente Figura 3 1 Inqu ritos sobre a import ncia da simula o realizados na UC de Sistemas e Automa o 25 26 Projeto do Simulador Tal como pode ser observado em ambas as edi es e Cerca de 86 dos alunos concorda que as simula es s o fundamentais e Quando perguntado se gostariam de ter mais simula es reais a percentagem de alunos que concorda sobe para os 91 sendo que 2 3 destes concordam totalmente e Por ltimo realizada a pergunta se os alunos gostariam de poder realizar eles mesmos a sua simula o qual cerca de 75 responde afirmativamente e De referir que as respostas negativas Discordo ou Discordo Totalmente a qualquer uma das perguntas t m valor m dio de 1 47 As respostas a estas perguntas est o no g nesis desta disserta o uma vez que com valores t o elevados de estudantes a concordar que as simula es s o uma parte fulcral da UC e que gostariam de poder desenvolver eles mesmos a sua simula o foi ent o proposto
6. o Din mica Operativo Sim Two Pascal ODE Pomas nge Windows Gr tis UDP Matlab us Factory I O Lab View N A TCP IP Windows Subscrig o Bullet ODE A Gazebo C C Java DART TPC IP Linux Gratis V Re C C Lua Bullet ODE Porta s rie e Multi Pro paga p Java Matlab Vortex TCP IP Portatil Edu gratis Epi Atuo ODE TCP IP Windows PE simulink open source 2 2 SCADA 7 2 2 SCADA De forma a supervisionar controlar e gerir sistemas complexos f bricas infraestruturas el tricas aeroportos eficientemente normalmente usado um software centralizador que agrega toda a informa o dispersa que comp e o sistema Este software denominado por Supervisory Control And Data Acquisition SCADA Tal como o seu nome indica o foco principal a super vis o e controlo do sistema de forma a melhor gerir todo o processo envolvente Exemplos onde os SCADAs s o usados controlo de tr fego ind stria qu mica gera o de energia entre outros Um dos aspetos fulcrais de um SCADA a sua capacidade de adquirir dados do sistema f sico a que se encontra associado Estes dados s o disponibilizados atrav s de uma interface ao utilizador e normalmente guardados em hist rico para posterior an lise tanto a n vel de problemas ocorridos como de poss veis melhoramentos no processo A interface representa a componente de supervis o atrav s da qual poss vel verificar todos os dados adquiridos e o correto funcio
7. A hierarquia uma aspeto muito importante na constru o de sistemas de controlo complexos uma vez que permite criar situagdes de emerg ncia controlo por n veis entre outras funcionalida des que s o ess ncias neste tipo de sistemas Existem duas formas de realizar controlo hier rquico em Grafcet por encapsulamento de etapas ou por forgagem de estados normalmente chamadas de macro a es Encapsulamento Enclosure Com o encapsulamento poss vel realizar hierarquia atrav s de etapas que cont m Grafcets parciais implicando que as etapas encapsulantes s o superiores hierarquicamente e as etapas en capsuladas dependem destas 2 4 Estudo das normas aplic veis 19 23 E E O G1 88 G24 Figura 2 11 Representa o do conceito de encapsulamento adaptado de 19 Na Figura 2 11 poss vel observar um exemplo de uma etapa encapsulante 88 que quando ativada implica a consecutiva ativac o do Grafcet parcial G24 Se a etapa 88 de G1 for desativada todas as etapas encapsuladas e Grafcets parciais a ela associados ser o desativados Macro A es As macro a es ou for agens implementam o controlo hier rquico atrav s de certas fun es especiais que d o a possibilidade de um Grafcet de n vel superior controlar um conjunto de Graf cets de n vel inferior Um exemplo comum o controlo de uma f brica onde um Grafcet de n vel superior controla o funcionamento de uma c lula e um conjunto de Graf
8. es que o Menu de contexto pode realizar para cada objeto Tabela 4 2 Resumo menu de contexto Objeto Quadrado C rculo Imagem Luz Texto Bot o Sensor Propriedades sim sim sim sim sim sim sim Filho De sim sim sim sim sim sim sim Colidir sim sim n o n o n o n o sim Mudar a z e sim n o sim n o n o sim n o Imagem Remover is E 7 gt E sim n o sim n o n o sim n o Imagem Visivel sim sim sim sim sim sim sim Mov vel sim sim sim sim sim sim sim Duplicar sim sim sim sim sim sim sim Remover sim sim sim sim sim sim sim 40 Implementag o do Simulador 4 5 Algoritmos desenvolvidos 4 5 1 Atualiza o da simula o Para realizar a renderiza o 2D 3D foi utilizado o GLScene como explicado em 4 1 2 1 e todo o controlo da simula o foi pendurado num objeto que esta biblioteca fornece para realizar a auto progress o das anima es o Cadencer cad ncia em Portugu s Este componente permite que as simula es do FEUPSim ocorram de forma suave e sem encravamentos Nas Figuras 4 9 e 4 10 s o apresentados fluxogramas representativos do algoritmo de controlo da simula o e do algoritmo de verifica o das fun es dos objetos respetivamente De seguida passar o a ser descritos em detalhe ambos os algoritmos 4 5 1 1 Algoritmo de controlo da simula o Uma vez iniciada a aplica o o algoritmo de controlo automaticamente des
9. o para a Ci ncia e a Tecnologia Portuguese Foundation for Science and Technology within project FCOMP 01 0124 FEDER 037281 8 REFERENCES 1 Armando Jorge Miranda de Sousa FEUPAutom URL http paginas fe up pt asousa wiki doku php id proj feupautom 2 International Electrotechnical Commission IEC 61131 3 Programmable controllers Part 3 Programming languages 2nd edition 2003 3 International Electrotechnical Commission IEC 60848 Ed 2 Specification language GRAFCET for sequential function charts 2002 90 Artigo EDULEARNIS Bibliografia 1 2 6 7 8 9 10 11 12 D Hebert Software Simulation Saves Time and Money 2014 Online Dispon vel http www controldesign com articles 2015 simulation saves time and money Acedido a 2015 02 10 P Costa paco Wiki Main SimTwo 2015 Online Dispon vel http paginas fe up pt paco wiki index php n Main SimTwo Acedido a 2015 02 01 P Costa J Gon alves J Lima e P Malheiros Simtwo realistic simulator A tool for the development and validation of robot software Theory and Applications of Mathematics amp Computer Science vol 1 pp 17 33 2011 M Lischke E Grange e C Ulrich GLSceneSite NEWS 2011 Online Dispon vel http glscene sourceforge net wikka HomePage Acedido a 2015 01 06 Realgames Simulation Software for Automation Training Real Games Onlin
10. 2 S o definidas as caracter sticas comuns a todos os objetos posi o visibilidade escalabili dade o ngulo de rota o e a sua cor caixa verde 3 De seguidas s o definidas as caracter sticas espec ficas de cada objeto na etiqueta Specific Properties tais como altura largura raio texto caixa laranja 4 Existe uma etiqueta denominada MyProperties que trata das propriedades que est o relaci onadas com as fun es de cada objeto caixa vermelho 5 Por ltimo s o especificados os objetos filhos seguindo a mesma estrutura caixa cinzenta O lt MyWorld name MyWorld Number0f0wnChilds 7 NumberOfChildsBelow 14 NameNumber 14 DuplicateCount 14 gt lt myButton Name Desligar bot ClassName myButton NumberOfOwnChilds 1 NumberOfChildsBelow 1 gt 2 lt Position gt 0 6643199325 1 220906496 0 lt Position gt lt Pick Visible Pickable 1 Visible 1 gt lt Scale gt 1 1 1 lt Scale gt lt RollAnale gt 0 lt RollAnale gt lt Material gt lt Material gt 3 lt SpecificProperties Width 0 5 Height 0 5 gt 4 lt MyProperties image path AssociatedBit typeof 0 gt 5 lt Childs gt lt TGLAbsoluteHUDText Name Text14 ClassName TGLAbsoluteHUDText NumberOfOwnChilds 0 NumberOfChildsBelow 0 gt lt Position gt 0 3336904049 0 3914794922 0 00003051757812 lt Position gt lt Pick Visible Pickable 0 Visible 1 gt lt Scale gt 1 1 1 lt Scale gt lt RollAngle gt 0 lt RollAngle gt
11. Desta forma ser poss vel continuar a desenvolver o FEUPAutom sem ter que se pagar qualquer tipo de direitos de autor ou de licenciamento e Ser multi plataforma Uma das principais cr ticas dos estudantes relativamente ao FEU PAutom o facto de ser apenas poss vel execut lo no sistema operativo Windows e Facilidade de Depura o Possuindo diversas ferramentas de depura o poss vel em Lazarus encontrar e resolver erros mais facilmente melhorar o c digo desenvolvido e ainda realizar um controlo da execu o da aplica o passo a passo 59 60 Atualiza o do FEUPAutom Tendo o Lazarus todas estas vantagens o leitor pode ser levado a questionar o facto de n o se ter optado desde in cio pela implementa o do FEUPAutom neste IDE Isto n o aconteceu uma vez que na altura de cria o da ferramenta o Lazarus n o possu a todas estas funcionalidades e o Delphi 7 era o melhor ambiente de desenvolvimento para aplica o que se tornaria o FEUPAutom Para que a migra o fosse bem sucedida foram definidos diversos objetivos 1 Obter uma vers o que compilasse em Lazarus 2 Converter o motor de scripting de Delphi Web Script DWS para Pascal Script PS 3 Obter um ficheiro nico de XML para grava o e carregamento de projetos FEUPAutom 4 Tornar o Modbus independente da biblioteca Indy 6 2 Metodologia Tendo em vista os objetivos propostos a metodologia apresentada nesta sec o pretende dar a conhecer
12. Dispon vel http paginas fe up pt asousa wiki doku php id proj feupautom Acedido a 2015 01 30 16 Beremiz Home page of Beremiz Online Dispon vel http www beremiz org Acedido a 2015 01 15 17 ICS Triplex ISaGRAF ICS Triplex ISaGRAF Inc leading IEC 61131 and IEC 61499 software Online Dispon vel http www isagraf com index htm Acedido a 2015 02 16 18 Omron Machine Automation Controllers Software Sysmac Studio Online Dispon vel http industrial omron eu en products catalogue motion_and_drives machine_ automation_controllers software sysmac_studio default html Acedido a 2015 01 15 19 International Electrotechnical Commission IEC 60848 Ed 2 Specification language GRAF CET for sequential function charts 2002 20 International Electrotechnical Commission Programmable controllers Part 3 Program ming languages 2nd ed 2003 21 K H John e M Tiegelkamp IEC 61131 3 Programming Industrial Automation Systems Concepts And Programming Languages Requirements for Programming Systems AIDS to Decision making Tools 2001 22 J Provost J Roussel e J Faure A formal semantics for Grafcet specifications IEEE International Conference on Automation Science and Engineering pp 488 494 2011 23 Lazarus and Free Pascal Team Lazarus Homepage 2015 Online Disponivel http www lazarus freepascal org Acedido a 2015 02 16 24 Free
13. Enquanto a pri meira linguagem foi criada por forma a seguir de perto as defini es da norma International Elec trotechnical Commission TEC 61131 3 a segunda uma adapta o da norma IEC 60848 Existe ainda suporte para comunica o ModBus TCP o que se traduz numa enorme facilidade de envio e rece o de dados por parte do FEUPAutom permitindo assim lig lo com simula es externas Na Figura 2 4 apresentado o ambiente de desenvolvimento do FEUPAutom de acordo com a seguinte enumerag o 1 FEUPAutom Nesta janela poss vel editar algumas definig es de projeto escrever pro gramas em ST e ver a sua convers o para linguagem C e Pascal tamb m aqui que s o mostradas mensagens de erros do programa e ou mensagens transmitidas por este 2 IO Leds Representa o do estado das entradas e sa das do sistema ainda poss vel for ar determinado bit a True ou False 3 Grafcet Draw Grid Janela que permite a cria o de programas em ST Todo o desenho do Grafcet realizado na grelha e existe uma area de programa o onde o utilizador pode escrever as transi es ou a es que devem ser executadas 4 Log Representa o de tra ados temporais de vari veis escolhidas pelo o utilizador 5 ST Editor Nesta janela que est contida dentro da 1 apresentada onde o utilizador es creve o seu c digo ST ou onde verifica o c digo ST gerado pelo o Grafcet FEUPAutom _C _ v4 02 Semaforo faproj2 0 IO Leds Gr
14. Fold alt shift 1 BookMark ctri shift 1 2 3 Ctri z Mais camaras Diferenciar light sensor circle Figura 3 3 Metodologia de trabalho adotada Cap tulo 4 Implementac o do Simulador Depois de conclu do o projeto do simulador foi realizada a escolha do ambiente de desenvol vimento e linguagem em que o simulador seria implementado Uma vez finalizada esta escolha e realizada alguma ambienta o s ferramentas a utilizar foi iniciada a implementa o do simulador Neste cap tulo ser apresentada a arquitetura do sistema todas as funcionalidades implementadas os objetos criados e as suas fun es e por ltimo os algoritmos mais importantes desenvolvidos Nota A partir deste momento na escrita da disserta o ser assumido o nome dado ao simu lador FEUPSim para o referenciar sempre que necess rio 4 1 Ambiente de Desenvolvimento 4 1 1 Lazarus Sendo o simulador a desenvolver um programa que ter de reagir a diversos eventos despole tados pelo utilizador na interface e ou pela troca de informa o com o programa que o controla foi optado por usar uma arquitetura de programa o orientada a eventos Dentro dos diversos IDEs e linguagens que existiam para o desenvolvimento do simulador e uma vez que havia todo o interesse em migrar o FEUPAutom para Lazarus 23 este foi o software escolhido Nesta decis o pesaram tamb m as seguintes caracter sticas deste IDE e O facto de ser gratuito e de c digo ab
15. adi es novas exig ncias ou por sugest es feitas pelos alunos este possui v rias ferramentas de depura o para melhorar o seu uso e No modo Grafcet o FEUPAutom pode converter o Grafcet realizado para uma m quina de estados transformar o desenhado em c digo ST e dar uma tradu o dos objetos desenhados para um formato de texto tal como indicado na Figura 2 5 Desta forma o utilizador pode verificar se todos os objetos s o corretamente criados e pela ordem em que este os fez A rea de escrita de c digo tem um sistema auto complemento o que permite uma maior rapidez no desenvolvimento de algoritmos existindo ainda a possibilidade de deixar coment rios em cada objeto e Na janela principal poss vel assistir convers o de Grafcet em ST de ST em Pascal e linguagem C Existe tamb m uma janela para erros de compila o onde apresentada a linha do erro em ST e uma vez que s o usados os mesmos nomes que o Grafcet para as vari veis o utilizador pode rapidamente identificar onde se encontra o erro no Grafcet e A ltima ferramenta de depura o o Log Temporal o n mero 4 da Figura 2 4 Esta crucial uma vez que perfeita para visualizar o estado das vari veis do sistema medida que o tempo avan a Obj NO gt X0 gt Step A Cell 3 4 BarInldx 1 BarOutIdx 2 Obj N 1 gt t0 gt Transition Cell 3 6 BarInldx 2 BarOutIdx 3 Obj N 2 gt X1 gt Step Cell 3 8 BarInldx 3
16. aprendizagem de qualquer engenheiro de automa o Uma vez que com a constru o do Grafcet atrav s da especifica o do sistema poss vel construir um modelo que ser facilmente transformado num programa destinado a realizar o controlo autom tico de um processo De forma a homogeneizar os diferentes m todos de modela o de sistemas de eventos discretos existentes atrav s de Grafcets propriet rios foi definida em 1988 a norma IEC 60848 19 que define todos os s mbolos e regras de representa o da linguagem bem como estes devem ser interpretados De seguida realizada uma pequena introdu o ao Grafcet que especificado na norma de forma a ser poss vel no subcap tulo seguinte realizar uma compara o com o FEUPAutom Tal como o seu nome indica o Grafcet composto por dois elementos fulcrais as etapas e as transi es A altern ncia entre estes dois elementos tem sempre de existir por forma a garantir a correta evolu o do sistema Al m da breve apresenta o destes dois elementos ser tamb m explicada a no o de a o num Grafcet Por ltimo ser feita uma reflex o sobre a estrutura o da modela o e das formas de controlo hier rquico dispon veis importante referir que o Graf cet uma linguagem estruturante precisando de ser complementado por linguagem ST ou outra aquando da atribui o de valores a vari veis o que diferente das linguagens de programa o procedimentais como o C ond
17. dulos n o funcionais do FEUPAutom 6 2 1 Motor de Scripting Sendo o FEUPAutom um programa de controlo de eventos discretos necessita de um c digo que permita executar esse mesmo controlo Para isso fornece aos utilizadores um editor textual de linguagem ST e um editor visual de Grafcet onde criado o seu controlador para um dado sistema Para que seja poss vel correr em tempo de execu o c digo gerado pelos os utilizadores sem ter que recompilar todo o programa necess rio que a aplica o possu a um motor de scripting isto um motor que compile e execute todo o c digo escrito pelos os utilizadores 6 2 Metodologia 61 No Delphi era utilizada a biblioteca DWS que era capaz de interpretar c digo Pascal o que levou a criag o de um conversor de linguagem ST e Grafcet para Pascal No entanto tal bibli oteca n o existe para Lazarus Dada a exist ncia de uma alternativa bastante vi vel ao uso do DWS chamada Pascal Script da empresa RemObjects no IDE Lazarus foi optado por usar esta nova biblioteca que possu a vantagens em relag o usada anteriormente Dentro das vantagens destacam se o facto de ser livre e de c digo fonte aberto ser mais r pido que o DWS permi tir o uso de apontadores de vari veis e ainda ao facto de ser poss vel pr compilar e guardar os programas executados Como desvantagens apresentava a not ria falta de documenta o que foi colmatada fazendo uso dos exemplos fornecidos e recorrendo ao
18. esquerda e luzes de emerg ncia aj Dau E Park 3D v1 0 by Paulo Costa 20 0 Graphics 1 0 F Force 1 0 Gate Position 0 Y Gate Closed Sensor I Gate Open Sensor TT Light Sensor I Barier Sensor T Gate Motor Open Graphics Animation 1 0 TT Gate Motor Close T Light ON Sim Levet Natural Light Instant Barrier Moving Barier In and Out Barriers Light On C Outside Going in Move Inside CIE Camera Siren Off G Fred x 20 30 AS Near the barrier y 200 fos C Top Custom z iso 07 Car Arrive Car Exit rv AAN se Y Antili Cars In Park 0 3 eee Grd I Asis TF Ground Texture TF SkyDome Reset World T Fire Effect Figura 2 6 Simula es associadas ao FEUPAutom 14 Revis o Bibliogr fica 2 3 2 Beremiz O Beremiz 16 um ambiente de desenvolvimento integrado IDE gr tis e multi plataforma que permite a cria o de programas de automa o e que respeita totalmente a norma IEC 61131 3 O grande foco foi desenvolver uma aplica o que fosse independente do vendedor e ou da m quina podendo tornar assim qualquer processador num PLC Este ambiente composto por 4 subprojec tos CanFestival Provid ncia uma biblioteca de E S e uma interface com a framework de CA NOpen SVGUI Ferramenta de cria o de interfaces gr ficas e interfaces homem m quina HMI The MatPLC s IEC compiler subprojecto comegado em 2002 pelo Professor Doutor Ma
19. liga o ao FEUPAutom e INCR VEL Gostaria de ver numa vers o mais avan ada a op o de rodar os objetos em torno de um eixo que n o apenas o seu centro com o utilizador a escolher as coordenadas ou at clicar no ponto do eixo pretendido Isto permitiria por exemplo fazer um p ndulo e Na minha opini o a funcionalidade principal est bem desenvolvida O FEUPSim funciona sem problemas e permite testar um grande leque de sistemas simples e Se o FEUPAutom j era uma forte ferramenta de aprendizagem o FEUPSim um dos melhores upgrades que se poderia obter Tem simplicidade de adapta o e utiliza o sendo ao mesmo tempo s poss vel explorar a complexidade de ambientes simulados ao sabor da imagina o e criatividade do utilizador Poder observar uma simula o din mica ao inv s de apenas ver luzes associadas ao valor booleano das vari veis sem d vida um ponto forte Todo feedback recolhido foi no geral positivo com v rios louvores ao facto da simplicidade inerente ao FEUPSim n o prejudicar a sua utilidade e possibilidade de criag o de diferentes simu la es tanto por parte dos estudantes como dos professores no ensino de Sistemas e Automa o 58 Utilizag o e Resultados Cap tulo 6 Atualizac o do FEUPAutom Esta Dissertag o contemplava dois grandes objetivos tal como o seu t tulo indica Ap s a implementa o do simulador toda a aten o foi focada na atualiza o do FEUPAutom N
20. o de exemplos FEUPSim C Artigo EDULEARNI5 Bibliografia CONTE DO 65 Sf ena a 65 es ea oA 66 69 75 81 91 Lista de Figuras 1 1 2 1 2 2 2 3 2 4 2 5 2 6 2 7 2 8 2 9 2 10 2 11 2 12 2 13 2 14 3 1 3 2 3 3 4 1 4 2 4 3 4 4 4 5 4 6 4 7 4 8 4 9 4 10 4 11 5 1 5 2 5 3 5 4 5 5 Conceito geral do sistema ooa e e Ambiente de desenvolvimento do SimTwo 200 Representa o de uma aplica o realizada em Winlog Lite Log tipo do FEUPAutom e Ambiente de desenvolvimento do FEUPAutom Ferramentas de depura o do FEUPAutom o o Simula es associadas ao FEUPAUtOM o oo Representa o das etapas o e Representa o das transi es ee Representa o das a es ww ee Representa o de uma Macro Etapa o o Representa o do conceito deencapsulamento Integra o de a es continuas e memorizadas no FEUPAutom Diverg ncia do tipo ou aa M ltiplas a es segundo a norma IEC 60848 o o oo Inqu ritos sobre a import ncia da simulag o realizados na UC de Sistemas e Au LOMA O 2 5 nas o soe a o dd ge ands dle ln Conceito inicial do sistema a implementar Metodologia de trabalho adotada o oo 0000 Trama de uma mensagem Modbus T
21. vel no flanco ascendente 0 gt 1 e des cendente 1 gt 0 respetivamente 4 Transi o temporalmente dependente isto a condi o s verdadeira passado um tempo tl depois da vari vel mudar de estado de O para 1 e passa a falsa se passar um tempo t2 ap s a vari vel ter mudado do estado 1 para 0 x Tak t1 t2 Figura 2 8 Representa o das transi es adaptado de 19 2 4 Estudo das normas aplic veis 17 2 4 1 3 A es Associada a uma etapa poder existir uma a o que pode estar ou n o ligada a uma ou mais sa das do sistema Existem dois tipos de a es as cont nuas e as memorizadas tal como ilustrado na Figura 2 9 cont nuas memorizadas Figura 2 9 Representa o das a es adaptado de 19 Descri o dos elementos presentes na Figura 2 9 A es cont nuas apenas s o executadas enquanto a etapa associada est ativa 1 A o executada enquanto a etapa est ativa 2 A o condicionada executada enquanto a etapa est ativa e a condi o a tem o valor verdadeiro isto a igual a true 3 A o temporalmente dependente executada enquanto a etapa est ativa e a condi o tl lt lt t2 isto a vari vel temporal tem de ser maior que o tempo tl e menor que o tempo t2 4 A o atrasada no tempo executada passado o tempo t1 depois da etapa ser ativada Esta a o tem uma dual designada por a
22. Bar0utIdx 4 Obj N 3 gt t1 gt Transition Cell 3 10 BarInldx 4 BarOutIdx 0 Figura 2 5 Ferramentas de depura o do FEUPAutom 2 3 SoftPLC 13 2 3 1 3 Simula es Para se tornar numa ferramenta verdadeiramente inovador na rea de ensino de controlo de sistemas de eventos discretos houve uma necessidade de desenvolver alguns exemplos de trabalho para que os alunos pudessem testar os seus c digos Para isso o Professor Doutor Paulo Costa criou tr s simula es de sistemas reais que permitem aos alunos treinar com exemplos pr ticos as mat rias lecionadas ajudando os assim a alcan ar melhores resultados Os tr s simuladores s o mostrados na Figura 2 6 pela seguinte ordem 1 Parque 3D Com este simulador os alunos s o incentivados a desenvolver o programa de controlo de um parque de estacionamento Primeiramente s existem carros a entrar at um limite de 6 De seguida introduzida uma segunda barreira na sa da e o controlo tem que gerir tamb m o n meros de carros a sair tornando o exerc cio um pouco mais complexo 2 Port o 3D Neste simulador o objetivo controlar a abertura e fecho de um port o de garagem e garantir que se intensidade da luz natural for inferior a um determinado n vel a l mpada acende 3 Thunderbird 3D O ltimo simulador apresentado o sistema de luzes traseiras de um carro no qual os alunos t m que implementar o controlo de tr s fun es virar direita virar
23. PL7 the other half is working with FEUPAutom in the same problem after 2 weeks they change and the process repeats So this question is an important one because it allows to take the conclusion that there is no need for PL7 in the future if FEUPAutom starts compiling for PLCs FEUPAutom interface is better then PL7 50 0 20 0 3379 30 0 er 17 1 a E vi n 0 0 el a 1 2 3 5 Figure 5 Survey question FEUP Autom interface is better than PL7 At last it was asked if they enjoyed seeing their program interact with a simulator and as seen in Figure 6 more than half the students 62 4 representing 121 of 194 students fully agree that the simulators are a great way to learn because it allows them to interact and see what are the real consequences of their programming enjoyed seeing my code to interact with the simulation 70 0 62 4 60 0 50 0 40 0 wie 30 0 20 0 10 0 E 10 ej Sl 1 2 3 4 5 Figure 6 Survey question I enjoyed seeing my code to interact with the simulation In the end of the survey it was asked for the opinions of the students about the strengths and weaknesses of the course and FEUPAutom some of the answers were Strengths e Simplicity of programming FEUPAutom and very useful simulations for exercises e think it is on the Grafcet that FEUPAutom stands out It really is much easier to work with FEUPAutom Grafcet than with the PL7 one e The FEUPAutom
24. PLC Estes ambientes de desenvolvimento al m de permi tirem programar os PLC emulam o seu funcionamento e s o capazes de controlar entradas sa das de um processo real ou simulado a partir de um computador 14 2 3 1 FEUPAutom O FEUPAutom 15 um softPLC gratuito concebido na FEUP pelo Professor Doutor Ar mando Sousa Este teve a sua origem na necessidade da criag o de um software que substitu sse os dispendiosos PLC s necess rios para o ensino da problem tica do controlo de sistemas de even tos discretos na UC de Sistemas e Automa o da FEUP pP MbTCP AUTOM 4 arc Code Armando Jorge Sousa and Paulo Costa Contact email asousa fe up pt Concept Armando Jorge Sousa Paulo Costa and Jos Faria FEUPAutom _ C _ v4 02 27 02 2015 Figura 2 3 Log tipo do FEUPAutom 2 3 1 1 Caracter sticas e aplicac es As caracter sticas principais deste SoftPLC s o a portabilidade a forma intuitiva de progra mar e as suas capacidades de depura o Desta forma pode ser usado no ensino e desenvolvimento de programas de controlo autom tico tanto no laborat rio como em casa permitindo assim aos es tudantes terminar as aulas em casa e aprofundar os seus conhecimentos na rea de automa o uma vez que existe uma grande abund ncia de exerc cios que poderem ser resolvidos usando o 2 3 SoftPLC 11 FEUPAutom como controlador principal Este software pode ser programado em Structured Text ST ou em Grafcet
25. Por fim poderiam ainda ser estudadas formas de automatiza o e valida o de programas de controlo criados no FEUPAutom pelos estudantes atrav s da an lise do hist rico do FEUPSim Isto possibilitaria a corre o autom tica de testes dos estudantes 68 Conclus es e Trabalho Futuro Anexo A Manual pr tico de utilizac o do FEUPSim Neste anexo apresentado o gui o pr tico criado para iniciag o do FEUPSim Este est escrito numa linguagem simples e contem informa es essenciais ao uso do FEUPSim 69 1 Janelas que comp e o simulador 1 1 Janela principal E x File Window Insert Tools Help do aa El x Square Circle Image Light Text Button Sensor 4 World Barra de menus ADE Novo Guardar Janela_lOs Inserir_Objecto fermeiha iia Screenshot Fonte SemaforoCai SemaforoCai Inserir Objetos Quadrados C rculos Luzes Texto Bot es Sensores Parar Correr programa Repor mundo ao estado inicial rvore de objetos na cena Liga o Modbus rea de simula o rea de depura o Ver eixos mudar camera mudar FPS fazer zoom IN e zoom OUT Barra de estados FPS Objeto Selecionado Posi o XYZ Host Disconn objetos selecionados mensagens m Fre Fone A so Dor En 45 5FPS No Object Select 0 Total 7 Msg Sucess loading Semaforo_FEUPSim Figura 1 Janela principal de simula o 1 2 Janela de I O e Janela de Propriedades Na janela de I O esq na Fig p
26. a ser desenvolvida em 2006 no Integrated Development Environment IDE Delphi 7 de 2002 foi durante muitos anos mantida nesta ambiente de desen volvimento o que torna o seu atual desenvolvimento lento desatualizado e impeditivo de grandes melhoramentos devido s limita es e antiguidade do IDE usado 2 Introdug o 1 2 Objetivos e Motivac o A disserta o realizada tem como principal objetivo a cria o de um simulador que seja ao mesmo tempo um SCADA permitindo assim aos alunos adquirir conhecimentos n o s sobre os sistemas SCADA mas tamb m sobre a import ncia da simula o antes de implementar os controladores projetados nos equipamentos reais Nesta dissertag o tamb m apresentado o trabalho realizado na melhoria do SoftPLC FEU PAutom de forma a torna lo mais intuitivo garantindo que segue de perto a norma do GRAFCET a IEC 60484 s o ainda apresentadas as melhorias da migra o efetuada de Delphi para Lazarus Todo este projeto muito desafiante uma vez que existem enormes dificuldades inerentes a criag o de um software gen rico que tenha como foco o ensino Todo o trabalho desenvolvido ira permitir ajudar professores e estudantes a criar projetos mais complexos e atrativos uma vez que existir desde logo uma componente visual 4 qual poder o associar os controladores que forem criando Por outro lado a atualiza o do FEUPAutom permitir um desenvolvimento mais acelerado deste software com in meras van
27. at um m ximo de 47 uma por cada bit associado poss vel Quando um destes bits est a TRUE o quadrado adquire a velocidade linear e ou angular definida para o bit que ficou a TRUE N o poss vel ter mais que um bit associado a TRUE uma vez que o quadrado teria teoricamente de rodar a mais que uma velocidade ao mesmo tempo e caso isso aconte a a simula o d um erro Function Add Bits a BIT vel X vel Y vel Ang bitl 200 El 40 51 9000 Ell per bit2 jar viso El s0 45 00 E DEL bit3 laz vii 3 00 3 00 ll 10 00 DEL v Figura 4 5 Fun o associada aos Quadrados e C rculos 4 4 1 4 C rculos Com os c rculos tamb m poss vel criar objetos el pticos usando a propriedade de escala Da mesma forma que se manipulou os quadrados tamb m poss vel realizar o mesmo para os c rculos de forma a criar novos objetos Em termos de fun es estes objetos t m exatamente as mesmas que os quadrados ou seja v rias velocidades lineares e angulares A funcionalidade de movimento est no cerne do simulador uma vez que o que distingue o FEUPSim de um qualquer SCADA isto o facto de os objetos poderem possuir movimento real um fator decisivo da diferencia o do FEUPSim 4 4 Funcionalidades Implementadas 37 4 4 1 5 Luzes O objeto luzes serve como representa o de indica es luminosas ou sinaliza o de estados A fun o associada s luzes ent o a troca de uma cor por outra quando exi
28. choose from 3 majors Automation Energy and Telecommunications Electronics and Computers where the students deepen their studies This implies that although the students specialize in a certain field of Electrical and Computer Engineering the bases and background of all students is the same and very cemented on the scientific knowledge The course is accredited under the EUR ACE system in accordance to the Bologna treaty Although an integrated master planned as a 5 year MsC engineering degree Bologna second cycle students are given a mobility certificate of basic engineering sciences that covers the skills recommend by the EUR ACE consortium including basic technological awareness 1 3 Course One of the main courses in the second year of the program is Systems and Automation SA because it is one of the courses that will influence in the choice of the major In this course the students are presented with the concept of designing and implementing an Automation System of limited complexity At the end of the course students are to be able to apply discrete events systems control technology to problems of limited complexity including Design and interpret State Machines Grafcet and Petri Nets to model discrete event systems Implement State Machines in Microcontrollers and Programmable Logic Controllers PLC Use Grafcet ST to control Automatic Systems of low to medium complexity Design and implement an Event Driven
29. cliques funciona como um sensor e existe em duas formas presence Sensor de presen a em que enquanto colide com outro objeto que tenha o modo de colis o ligado mant m o valor do bit associado a TRUE e quando deixa de colidir coloca o a FALSE stop Modo de seguran a quando algum objeto colide com um sensor do tipo stop a simula o para e dado um alerta de erro e o sensor fica a arder sendo necess rio fazer o fix world Function BIT Type of Sensor 10 y presence _ stop Figura 8 Func o associada ao Sensor 2 2 4 PopUp Menu Clicando com o bot o direito em cima de um objeto possivel chamar um PopUp Menu que realiza determinadas a es consoante o objeto clicado dentro delas e tal como pode ser visualizado na figura seguinte Properties Ctrl P Add as Child Of Collision Add Change Image Remove Image Visible Pickable Ctrl D Ctrl R Duplicate Remove Object Figura 9 PopUp Menu Properties Propriedades Chamar a janela propriedades do objecto ver mais sobre propriedades me 2 1 3 Add as Child Of Adicionar objeto como filho de Adicionar o presente objeto como filho de outro Collision Add Adicionar a colis es Apenas funcionando para objetos do tipo Square e Circle esta funcionalidade permite a tais objetos colidirem ou nao com os sensores Change Image Mudar Imagem Apenas funcionando para objetos do tipo Square Butto
30. colis es com Sensores s o aqui enviados para o FEUPAutom e 3 Read Holding Registers gt Complementar da fun o 1 mas em vez de enviar as mensa gens como bits estas s o passadas como registos isto words 16 bits e 15 Write Multiple Coils gt Esta fun o lida com todas as altera es nas sa das do FEU PAutom o que se traduz na altera o dos objetos do tipo Quadrado C rculo Imagem Luz atrav s da execu o das fun es destes e 16 Write Multiple Holding Registers gt Complementar da fun o 15 mas em vez de enviar as mensagens como bits estas s o passadas como registos isto words 16 bits A escolha pela implementa o destas fun es surgiu primeiramente devido ao facto do FEU PAutom as utilizar e tamb m por serem auto suficientes no sistema de comunica o criado Com as fun es 1 e 15 era poss vel comunicar as Entradas Sa das e as fun es 3 e 16 serviriam para a troca de dados de inteiros uma vez que uma word permitiria enviar valores sem sinal entre O e 65 535 ou valores entre 32 768 e 32 767 De seguida s o apresentadas todas as fun es implementadas atrav s dos pedidos e respostas que estas realizam Read Coils 1 e Pedido FEUPAutom C digo da fun o 1 Endere o da primeira coil a ler N mero de coils a ler 1 at 2000 e Resposta Normal FEUPSim C digo da fun o 1 N mero de bytes enviados Estado das coils no formato de 8 por c
31. d Square Circle Image Light Text Button Sensor T sto gt amp T 4 World ta zeroJano not tg orim AND I3 A to prim AND I1 A rh seg AND B_andar2 R m Dy im B_andarl X5 Qli true Qo true XI Ql true x2 Q0 8 B andaro Sens I3 func Sens 12 Mei Andar2 Oo 4 8 Elevador Ese a 1 am BETA Elevaade A 2 true cannes a T_andart T_andar2 Sens_11_Mei ap X9 T gt 20 Sens 10 topc X10_T gt 20 Y lt gt 87 664 Objldx 1 Move 0 0 0 Create Step Transition y No Obj N Objs Sel 0 Total Objs 12 26 05 2015 11 57 ES Grafcet Draw Grid tel E File Edit View Project Window Help File Window Insert Tools Help XO fah EI Q4 true Square Circle Image Light Text Button Sensor a World Zero AND not eg prim AND I3 4 tg prim AND I1 A tor seg AND B_andar2 y m D 10 E andart Qli true X8 Q0 true Xi Ql true x2 Q0 t B_andar0 Sens_13_func n h Andar2 y Ei Es BEE BEI LElevaade A Q2 true Tua T_andart T_andar2 Sens_11_Mei 41903 X9_T gt 20 74 Sens JO topc X10 Q3 true saca X10_T gt 20 Andar0 lt gt 0 105 Objldx 1 Move 0 0 0 Create Step Transition 4 MA5 1FPS No Object N Objs Sel 0 Total Objs amp Grafcet Draw Grid E File Edit View Project Window
32. da etapa e utiliza o da linguagem ST para proceder ao controlo temporal Mudan a Sugerida A sugest o para a realiza o de uma aproxima o norma seria neste caso seria criar uma exce o na compila o de c digo e realizar uma convers o da nota o da norma para c digo ST Embora esta sugest o v de encontro ao m todo j implementado sendo ingl rio para o pro gramador ter que realizar trabalho extra necess rio referir que este estudo tem como objetivo deixar o Grafcet do FEUPAutom o mais pr ximo poss vel da norma IEC 60848 para o lado de quem realiza o projeto 2 5 1 3 Garantia de transi es mutuamente exclusivas Contexto Segundo o ponto 6 1 3 da norma quando existe uma diverg ncia de transi es do tipo ou tal como representado na Figura 2 13 da responsabilidade do designer garantir que as transi es s o quer temporalmente logicamente ou mecanicamente mutuamente exclusivas Com alguns testes efetuados ao FEUPAutom foi poss vel verificar que esta funcionalidade n o foi implemen tada e que o Grafcet avan a para ambas as etapas Figura 2 13 Diverg ncia do tipo ou adaptado de 19 Mudan a Sugerida A primeira sugest o e mais simples alertar o utilizador deste facto sempre que s o cria das diverg ncias do tipo ou A segunda sugest o que s funciona se estivermos perante uma situa o de bifurca o isto quando apenas est o presentes duas
33. decis o de grande impacto no desenvolvimento do simulador foi a escolha do formato em que seriam gravados os ficheiros gerados Para isso foram estudadas algumas linguagens nativas do Lazarus e o formato de grava o do GLScene mas rapidamente foram se descobrindo falhas em ambos dificuldades de implementag o e ou incompatibilidades entre diferentes sistemas operativos Foi decidido ent o que se deveria realizar um estudo sobre a viabilidade do uso da EXtensible Markup Language XML para a grava o e carregamento de ficheiros gerados O XML tal como o seu nome indica uma linguagem de marca o isto define um con junto de regras que originam um formato de f cil leitura tanto para um humano como para uma qualquer aplicag o computacional que entenda as regras definidas pela linguagem Dentro das suas vantagens destacam se e Facilidade de descrever dados e As etiquetas tags serem definidos pelo o utilizador o que se traduz numa total liberdade na organiza o hier rquica do documento e Independ ncia da plataforma onde aplicado O facto do XML servir apenas como forma de descrever dados tamb m em si uma enorme vantagem uma vez que torna todo o processo de verifica o dos ficheiros apenas dependente da aplica o Se por ventura houver novos campos dentro de uma etiqueta XML estendendo assim o objeto em quest o a aplica o n o sofrer qualquer altera o pois apenas verifica os campos conhecidos Transcre
34. do FEUPAutom num nico Foi tamb m refeita toda a comunica o Modbus tornando a muito mais estandardizada a n vel de bibliotecas que a aplica o usa para a realizar Ao longo de todo o trabalho de atualiza o do FEUPAutom foram realizadas diversas melhorias na interface e c digo dotando o assim de uma maior fluidez e usabilidade para os utilizadores finais Em suma o FEUPAutom encontra se atualmente muito mais pr ximo de se tornar um pro grama verdadeiramente multi plataforma A migra o para Lazarus e todas as adapta es reali zadas aos m dulos essenciais permitiram que o FEUPAutom seja agora um programa que pode continuar o seu desenvolvimento livre de limita es impostas pelo o IDE uma vez que o Lazarus est em constante atualiza o e encontra se muito mais evolu do que o velhinho Delphi 7 que era usado at agora Cap tulo 7 Conclusoes e Trabalho Futuro 7 1 Satisfa o dos Objetivos A busca por alternativas gratuitas de software para uso educacional cada vez mais dificultada tanto pela sua inexist ncia como pela crescente ado o de sistemas de subscri o para uso das aplica es Sendo cada vez mais importante avaliar e gerir da melhor forma o dinheiro dispon vel nos cursos de ensino superior a op o pelo desenvolvimento de ferramentas espec ficas para os estudantes torna se mais atrativa O principal objetivo desta disserta o prendeu se com a desenvolvimento de uma ferramenta que
35. is an integral part of the approach student friendly It is easy to use and you can learn a lot without resorting to laboratories e The part of C and ST language of the FEUPAutom with temporal traces I O s customizable simulations and temporal strokes helped a lot Good program that takes up little space allowing the student to continue is study at home with a certain ease Weaknesses e FEUPAutom only run in Windows OS e Wish it had more real systems simulations and above it that was possible to simulate a system designed by me One teacher to so many stands during practices classes is insufficient 5 CONCLUSIONS The creation of this tool as an alternative to the costly acquisition of new hardware and commercial software proves the strengths of creating specific software for classes The work involved is justified by the inadequacy of the debugging features that further enhance the learning of the students This additional learning is even greater because the sense of proximity allows students to try to understand how the software works and maybe even be close or a part of the development of new improved features thus involving the students in their own learning processes Course grades are regularly not low average of last 3 editions is around 14 out of 20 thus demonstrating the interest the hand on approach of the lab classes and the usage of the mentioned FEUPAutom software Student
36. janela foi criada com o intuito de ser poss vel examinar o estado das entradas sa das do sistema e tamb m ser poss vel for las para verificar o correto funcionamento antes de ligar o simulador ao FEUPAutom transformando o independente para pequenos testes Quando uma caixa de sele o do lado dos Outputs sa das est desselecionada o bit associado FALSE e quando se seleciona clicando na caixa correspondente e esta ficar com um certo ent o o bit associado fica a TRUE A caixa de verifica o do lado dos Inputs entradas n o poss vel de alterar uma vez estes dependem do estado dos sensores ou bot es que lhes est o associados 5 1 Interface Gr fica 51 5 1 3 Janela de Propriedades Na imagem seguinte poss vel verificar as propriedades que s o comuns a todos os objetos Sendo que as fun es espec ficas de cada objeto foram j apresentadas na sec o 4 4 Name Name of Object Color Transparency E Maroon Position Figura 5 8 Janela de propriedades de um objeto E importante referir que as propriedades v o sendo modificadas em tempo real mas caso o utilizador se arrependa pode cancelar e o objeto retornar ao seu estado inicial Esta funcionalidade foi conseguida custa da grava o pr via de todas as propriedades pass veis de modificar Name Nome do objeto Mudar o nome do objeto a editar Color Transparency Cor Transpar ncia Com esta propri
37. mico de bits e imagens associados e quando existe um RE Rising Edge isto o valor do bit passa de FALSE para TRUE a imagem muda para a que o utilizador definiu na associa o bit imagem A op o por associar a mudan a de imagem ao RE do bit foi tomada por forma a garantir que o simulador n o estava constantemente a modificar a imagem a cada itera o uma vez que se verificou que esta situa o consumia muitos recursos computacionais e levava a uma maior lentid o da simula o A representa o visual criada para as fun es das imagens fol Function Add Imgs BIT Image Ficheiro Q sv Img2 e_aberto jpg DEL Q sv Img3 e fechado jpg DEL v Figura 4 3 Fun o associada a uma Imagem 4 4 1 2 Texto O texto serve apenas como refer ncia e como sinaliza o de outros objetos N o possui qual quer fun o associada 36 Implementag o do Simulador 4 4 1 3 Quadrados Objetos c bicos que permitem criar formas diversas quando conjugados isto quando se juntam varios quadrados com diferentes rotagdes e tamanhos E tamb m poss vel associar uma imagem a face do quadrado Ambas as caracter sticas encontram se representadas na Figura 4 4 YES Figura 4 4 Exemplo do uso dos Quadrados As fun es de um quadrado incluem ter uma velocidade linear x y e angular graus seg tal como mostrado na Figura 4 5 Para isso foi criado um vetor din mico de bits e velocidades associadas que um quadrado pode ter
38. nee Position Look at 2 vs x 0 3 vs y 0 3 vs 2 0 3 5 C LookatRobot X 0 95 0 00 C Move with Robot y C Above Robot A RangeToMatrix 4 2 3 3 C Top View z 5 o B RangeToMatrix 4 3 3 C Mzeros 3 3 Camera I Hot CPU I Fog Color Trail Size 2 35 0 00 Chart Sheets XML Scene Edit belt A 5 3 Omnis Kd Ea State iv vw Edit Scene Window scene xml Bett xmi Omni3 xmi things xml obstaces xm Omni3 State x Omni3 Axes Wheel Pl lt xml version 1 0 2 gt A lt scene gt E a N w a My Dz D theta lt robot gt lt ID name belt gt lt pos x 1 5 y 0 2 0 5 gt lt rot deg z 0 gt D vx Dw D vz error toeco ES Axes E lt Wheelt M Pos M speed wjo uja ala ufo o B S 10000 TE ower v Refresh clear save Chart Chartdata Figura 2 1 Ambiente de desenvolvimento do SimTwo 2 1 Simuladores de automag o 5 ainda de salientar que este simulador foi constru do para representar de forma realista todos os seus componentes dotando os de caracter sticas lineares e n o lineares Estas tornam o seu comportamento muito mais pr ximo do real o que se traduz para o utilizador final como uma mais valia uma vez que a passagem do c digo de simula o para a realidade muit
39. no mbito da presente disserta o Cap tulo 2 Revis o Bibliogr fica Neste cap tulo apresentado o estado da arte de cada vertente de interesse no mbito da dis serta o a realizar Para isso s o estudados os simuladores de automa o mais influentes na rea de ensino os sistemas SCADA de refer ncia para o trabalho a ser desenvolvido alguns SoftPLCs que poder o ser integrados com a aplica o final e por ltimo realizada uma descri o das nor mas mais influentes na rea da modela o programa o de controladores de sistemas de eventos discretos 2 1 Simuladores de automa o Em automa o industrial a necessidade de simula o de todo o ambiente fabril tem vindo a crescer medida que cada vez mais m quinas e rob s partilham o mesmo espa o que os seres humanos Este crescimento aliado ao facto da seguran a imposta e das normas aplic veis para o uso de rob s nestes locais serem muito restritas leva a que a simula o se apresente como um ambiente sem riscos que permite recriar de forma segura e sem danificar qualquer componente do rob ou m quina todos os testes necess rios Com estes testes poss vel verificar todo o tipo de falhas que existam expor erros e problemas que n o foram considerados servindo tamb m para treinar utilizadores para as condi es de ambiente real simula o aeron utica bra os rob ticos trajetos de rob s dentro de uma f brica entre outros Mas nem tudo
40. o limitada no tempo que s executada enquanto ainda n o passou o tempo tl desde da ativa o da etapa Esta representada de igual forma mas a condi o negada um risco por cima de t1 X A es memorizadas s o despoletadas por eventos internos e o valor atribu do s sa das memorizado 5a e 5b Em cada um dos casos a vari vel B assume o valor 1 na ativa o da etapa e na desativa o da etapa respetivamente 6 A a o executada quando o evento a despoletado Existem tr s tipos de eventos ativa o de uma etapa act etapa desativa o de uma etapa dac etapa e disparo de uma transi o clr transi o 7 A a o executada aquando do disparo da transi o 18 Revis o Bibliogr fica 2 4 1 4 Macro Etapas De forma a melhorar e a simplificar a compreens o de um Grafcet poss vel representar partes destes atrav s de macro etapas diminuindo assim a quantidade de etapas transi es presentes o que facilita a interpreta o do mesmo Desta forma o utilizador pode ter uma representa o mais superficial do sistema permitindo que se faga uma descrig o do geral para o particular Figura 2 10 Representa o de uma Macro Etapa adaptado de 19 Na Figura 2 9 est representado um exemplo de uma macro etapa poss vel verificar que a macro etapa M3 possui uma etapa de entrada E3 que ativada ap s a transig o 11 e uma etapa de sa da S3 2 4 1 5 Hierarquia
41. sua utiliza o Sendo focado na ind stria de automa o este software usa programa o baseada em eventos sendo completamente compat vel com a norma IEC 61131 3 Fazendo uso de tecnologias muito recentes possui formas de dete o de erros autom ticos usando lista de vari veis e seguran as internas pr definidas ainda de referir a possibilidade de simula o de v rios componentes e visualiza o de dados atrav s de gr ficos em tempo real A empresa Omron vende ainda equipamentos que s o completamente integrados com o soft ware em quest o que t m a vantagem de possuir liga es EtherCat tornando todo o sistema extraordinariamente r pido 2 4 Estudo das normas aplic veis 15 2 4 Estudo das normas aplic veis Neste cap tulo ser o s o realizadas algumas considera es sobre as normas de interesse no mbito desta Disserta o Primeiramente realizado um estudo sobre a norma IEC 60848 e de seguida uma apresenta o sobre as linguagens de programa o definidas pela norma IEC 61131 3 e realizada uma compara o entre o Graphe Fonctionnel de Commande tapes Transitions GRAFCET e o Seguential Function Chart SFC 2 4 1 TEC 60848 Grafcet O GRAFCET uma poderosa linguagem gr fica de modela o para o controlo de sistemas de eventos discretos e por isso essencial no ensino de uma UC introdut ria de automa o Todos os conceitos base adquiridos com a introdu o desta linguagem s o essenciais
42. transi es verificar se as con di es das transi es s o equivalentes Embora esta solu o n o abranja todos os casos j seria uma melhoria face ao implementado 2 5 An lise cr tica do FEUPAutom 23 2 5 1 4 Representa o de a es Contexto Segundo a norma quando existe mais de uma a o a ser executada por etapa cada a o de ver possuir a sua caixa separadamente tal como ilustrado na Figura 2 14 No FEUPAutom de momento n o existe qualquer aproxima o a nenhuma destas representa es uma vez que esta funcionalidade est implementada atrav s do editor de c digo podendo o utilizador nesta caixa de texto executar m ltiplas a es relativas etapa a que est associada 1 Figura 2 14 M ltiplas a es segundo a norma IEC 60848 adaptado de 19 Mudan a Sugerida A op o mais l gica seria utilizar a representa o 2 da Figura 2 14 uma vez que a repre senta o 1 ocupa muito mais espa o e dado que o FEUPAutom utiliza um sistema de grelhas etapa transi o o uso das representa es 3 e 4 seria mais moroso e complexo de programar sem que existisse essa necessidade 2 5 1 5 Representa o de Macro Etapas Contexto As macro etapas tal como explicado em 2 4 1 4 s o uma forma de estrutura o do Grafcet permitindo um maior n vel de abstra o Esta funcionalidade n o se encontra implementada no FEUPAutom Mudan a Sugerida Uma possibilidade consiste na
43. CP 0 o o o o o ooo o Arquitetura do sistema e Fun o associadaaumalImagem 2 02 000 e Exemplo do uso dos Quadrados o e e e Fun o associada aos Quadrados e C rculos oo o Fun o associada Luzes o ee Exemplo do uso de um sensor do tipo St0P o oo o Menu de Contexto para um objeto Quadrado exemplo Ciclo de atualiza o da simula o o oo o e Verifica o das fun es Alg2 objeto 2 ooo oo o Exemplo de um ficheiro XML gerado pelo FEUPSim Interface FEUPsim o sa cocta cocan ah a arate a eaa e a A Vista individual de cada menu oaoa a Barra de inser o de objetos ooa o ee Barra de estados is ie a sed eae a ee ee ed ee E Ga Janela de conex o Modbus xiv 5 6 5 7 5 8 5 9 5 10 5 11 5 12 5 13 6 1 6 2 LISTA DE FIGURAS Barra de depura o aoaaa a 50 rvore de Objetos 50 Janela de propriedades de um objeto o o ee ee 51 Compara o entre a simula o de um sem foro e a realidade 52 Simula o de Limpa Para Brisas 2 o o e ee e 53 Inqu ritos Rela o entre o FEUPSim e o FEUPAutom 55 Inqu ritos Aptid es do FEUPSim o o o e 56 Inqu ritos Quest es estruturais do FEUPSim ei Motores de scriptin
44. Como esta vers o gr tis s permite o uso de 24 tags para comunicag o e n o inclui a biblioteca gr fica de s mbolos usada na vers o paga limitando assim experi ncia do utilizador 2 2 SCADA 9 Estatisticas Alarmes Estat sticas Pe as 3 12 2014 19 54 52 SUSPENDER re SO OO Figura 2 2 Representa o de uma aplica o realizada em Winlog Lite Na Figura 2 2 poss vel visualizar uma representa o de uma aplica o criada em ambiente educacional com o Winlog Neste exemplo sobre a opera o de pe as atrav s de duas m quinas poss vel visualizar as tr s componentes que comp e este software Supervis o O utilizador pode visualizar todo o processo e tem LEDs para verificar se existe uma situa o de emerg ncia ou alarme Controlo poss vel operar suspender ou parar o processo Aquisi o de dados Atrav s dos LEDs vermelhos que indicam a presen a das pe as 2 2 3 Integraxor A empresa Ecava desenvolveu o SCADA Integraxor 13 de raiz usando tecnologias web para permitir aos seus utilizadores criarem aplica es sofisticadas de sistemas Tempo Real Algumas das vantagens deste software prendem se com o facto de permitir ao utilizador saber a qualquer momento o estado do sistema que est a controlar uma vez poss vel visualizar a aplica o implementada atrav s de qualquer navegador de computador ou telem vel Ao usar tecnologia web como o HTML e o Javasc
45. Control System for problems of medium complexity Strategies include theoretical lectures and hands on approach lab work in a Learn by doing set of exercises that lead through the issues at stake in a progressive manner Additionally Moodle is used as a Learning Management System LMS including formative evaluation after some lab classes and as the main tool to communicate remove doubts and present contents to the students Additional strategies include several summative small tests instead of a final exam Class size is typically around 250 but may vary much among years As there is a great interest in lab sessions fails grade below 10 out of 20 are not very common 2 PROBLEM As said this is a course where the students learn how to implement Grafcet in PLC and in FEUP there are only 12 PLCs available to SA Once the course is given in two separate labs the teaching staff had to decide what was best for the students given that the cost of buying 12 equal PLCs to the old ones or buying 24 new PLCs was too expensive The alternatives were to not experience real hardware from industrial reality or too work with siblings labs that would desynchronize in the matters being taught in the classes To better solve both problems letting the students experience real hardware and at the same time allowing both labs be synchronized it was necessary to create an alternative for the lab that hadn t PLCs It was opted to create a softPLC tha
46. Engine ODE que se encontra encarregue da simula o de corpos r gidos e a Pascal Script Na Figura 2 1 apresentado o ambiente de desenvolvimento do SimTwo de acordo com a seguinte enumera o 1 Sim Two Janela de visualiza o da simula o 2 Code Editor Janela onde o utilizador escreve o seu c digo de controlo da simula o 3 Config Local onde se encontram todas as configura es do programa tanto a n vel de controlo quest es de simula o da f sica dos objetos entradas e sa das entre outras 4 Chart Janela de evolu o de vari veis ao longo do tempo 5 Sheets Uma folha de c lculo onde se pode criar elementos como bot es constantes ou vari veis a serem usados na simula o 6 XML Scene Edit Uma p gina de configura o dos objetos presentes na simula o SimTwo v0 9 8 8 default 58 9 FPS Script Running 2 Code Editor control pas 3 Config S gt ae Edit Program Hi elp ol Graphics Debug Physics 1 0 Target FPS 500 set T y Show Sensors this procedure is called periodicaly default 40 ms F Antialiasing all procedure Control Y Shadows ME var vs TPoint3d FF Grid None Project Control 7 Global Variables Here A B C R Matrix F Avis de I Ground y StartSolidFire 0 1 5 v aa if KeyPressed vk_down then begin vs GetThingSize 1 Set Thin 1 0 9 vs x 0 3 5 y 0 9 vs 2 KeyPressed vk_up then begin aissis
47. FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO PORTO FEU FACULDADE DE ENGENHARIA UNIVERSIDADE DO PORTO Atualizacao do FEUPAutom e criacao de software simulador SCADA 2 O gen rico Bruno Miguel Fernandes Augusto PARA APRECIACAO POR J RI Mestrado Integrado em Engenharia Eletrot cnica e de Computadores Orientador Professor Doutor Armando Jorge Miranda de Sousa 29 de Junho de 2015 Bruno Augusto 2015 PORTO FEUP FACULDADE DE ENGENHARIA UNIVERSIDADE DO PORTO MIEEC MESTRADO INTEGRADO EM ENGENHARIA 2014 2015 ELETROT CNICA E DE COMPUTADORES A Disserta o intitulada Atualiza o do FEUPAutom e Cria o de Software Simulador SCADA Gen rico foi aprovada em provas realizadas em 17 07 2015 E Presidente Professor Doutor M rio Jorge Rodrigues de Sousa Professor Auxiliar do Departamento de Engenharia Eletrot cnica e de Computadores da Faculdade de Engenharia da Universidade do Porto AS Professor Doutor Jos Luis Magalh es Lima Professor Adjunto do Departamento de Eletrot cnia da Escola Superior de Tecnologia e Gest o do Instituto Polit cnico de Bragan a E laa rado Professor Doutor Armando Jorge Miranda de Sousa Professor Auxiliar do Departamento de Engenharia Eletrot cnica e de Computadores da Faculdade de Engenharia da Universidade do Porto O autor declara que a presente dissertac o ou relat rio de projeto da sua exclusiva autoria e foi escrita sem qualquer apo
48. FEUPSim e Redimensionamento visual dos objetos e Implementar a funcionalidade de Ctrl z por forma a desfazer a ltima altera o efetuado no desenho do simulador e Mais tipos de objetos Controlo de n vel sliders entre outros e Maior flexibilidade no tipo de fun es executadas pelos objetos isto em vez de apenas serem vari veis booleanas existirem valores inteiros que tivessem outras funcionalidades e Integra o com o FEUPAutom para estudo do comportamento temporal 7 2 Trabalho Futuro 67 Todo o trabalho de atualiza o do FEUPAutom foi executado por forma a possibilitar que esta se tornasse multi plataforma Embora alguns testes j tenham sido efetuados seria necess rio um estudo mais aprofundado nesta rea uma vez que a ferramenta utiliza bibliotecas espec ficas da plataforma Windows Sugere se ainda que seja realizado algum trabalho a n vel de otimizag o do ciclo de controlo por forma a tornar a aplicac o mais eficiente e por ltimo seria necess rio implementar as sugest es sugeridas em 2 5 1 por forma a tornar o Grafcet do FEUPAutom totalmente compat vel com a norma IEC 60848 Seria ainda necess rio realizar testes com hardware real por forma a validar quer o FEUPAu tom quer o FEUPSim a n vel industrial como ferramenta de SCADA Para isso seria necess rio desenvolver um subsistema que permitisse comunica o entre v rios servidores na rede Modbus o que implicaria a criag o de um router
49. Help File Window Insert Tools Help A ab a Q4 true Square Circle Image Light Button Sensor end_if a World tac eroJAND not ig prim AND 13 to prim AND 11 4 par seg AND B_andar2 R m A m B_andart X5 Qli true xg QWistrue xq Ql true x2 Q0 t B andaro Sens I3 func Sens I2 Meir a S Elevador soo B ES uco 2 Bco Elevaade T_Andar0 A true PA x9 Q2 true T_andar1 T_andar2 Sens 11 Meir a2 X9_T gt 20 Sens_10_topc HS 41303 X10_T gt 20 Create Step Transition 7 Mas sFPS No Object Anexo C Artigo EDULEARNIS5 No mbito da presente Disserta o foi realizado um artigo para a s tima confer ncia inter nacional em educa o e novas tecnologias de aprendizagem EDULEARNI5 A confer ncia ter lugar em Barcelona de 6 a 8 de Julho de 2015 e tem como foco o ensino tanto a n vel de m todos desenvolvidos e projetos educacionais como novas tecnologias aplicadas educa o e investiga o O artigo foi escrito com a orienta o e colabora o do Professor Doutor Armando Sousa e do Professor Doutor Paulo Costa Com o t tulo Development of a student centred tool that promo tes deep learning in the technical area of control of discrete event systems este artigo explica o interesse da cria o de ferramentas espec ficas para o ensino Atrav s da demonstra o das funci onalidades do FEUPAutom e da sua influ ncia no ensino da UC Sistemas e Automa o da FEUP demonstrado q
50. Im_v1 60 Semaforo_FEUPSim xml 5 Em 3275 Mode IO Sete Tota CT 2695005 1125 2 Elevador de servico 3 pisos 2 1 Comece por criar quatro objetos sensores que ser o os sensores dos andares quer de topo quer de fundo e associe os aos bits 10 11 12 13 2 2 De seguida crie um texto indicativo do andar e um bot o por andar andar0 andar1 e associe aos bits 14 15 16 16 Andar2 Oo Andar0 2 3 De seguida crie um Quadrado com as especifica es a preto da figura Acrescente uma Imagem ao simulador que seja filha do quadrado anterior com Z 0 6 e com as especifica es a azul primeira imagem a pessoas a sair segunda imagem elevador vazio terceira imagem elevador fechado SQUARE FUNCTION Function Add Bits BIT vel X vel Y vel Ang biti 00 v 000 E 2 00 El 000 bit2 a IMAGE FUNCTION Add Imgs Image a E gt PEOPLE Img2 gt OPEN Img3 gt CLOSED v 2 4 Escreva o controlo do elevador em FEUPAutom if x0_t gt 1 then Q4 true end_if zero AND not 13 ia a in seg AND not 10 13 12 Q1 true Q0 true Q0 true Q2 true x9_T gt 20 Q3 true X10_T gt 20 2 5 Por ltimo ligue o FEUPSim ao FEUPAutom e corra o programa ES Grafcet Draw Grid E File Edit View Project Window Help File Window Insert Tools Help A asc al BEER ae
51. O objeto luzes serve tanto para indica es luminosas como sinaliza o de estados A func o associada as luzes ent o a troca de uma cor por outra quando existe um RE ou um FE da vari vel associada tal como passivel de ver na figura 13 Function BIT Color 00 bit 0 Red y bit 1 Lime y Figura 6 Fun o associada s Luzes Texto O texto serve apenas como refer ncia e n o possui qualquer func o associada E necess rio ter cuidado uma vez que o texto sempre pickable mesmo clicando num lugar onde n o existe qualquer objeto isto num lugar onde est vazio Se existir um objeto do tipo texto o simulador assume o texto como objeto corrente para anular este efeito por a propriedade pickable a FALSE Bot es Tal como um bot o em qualquer interface poss vel neste simulador usar objetos do tipo bot o que t m como func o enviar sinais de entrada para o FEUPAutom Existem dois tipos de bot es Click O valor TRUE mantido enquanto o utilizador clica com o bot o esquerdo durante a simula o e quando deixa de clicar o bit associado fica a FALSE Switch O valor do bit associado trocado a cada clique com o bot o esquerdo por parte do utilizador Function BIT Type of Button 10 E O click _ switch Figura 7 Fun o associada aos Bot es Sensores Este tipo de objeto permite tal como os bot es enviar sinais de entrada para o FEUPAutom mas em vez de funcionar atrav s de
52. Pascal Team Free Pascal Advanced open source Pascal compiler for Pascal and Object Pascal 2010 Online Dispon vel http www freepascal org Acedido a 2015 06 12 25 M Lischke E Grange e C Ulrich GLScene Gallery Users 2011 Online Disponivel http glscene sourceforge net oldsite gallery_users htm Acedido a 2015 06 12 26 Modbus Organization Modbus p 2015 Online Dispon vel http www modbus org Acedido a 2015 04 06 BIBLIOGRAFIA 93 27 Modbus IDA Modbus Messaging on Tcp Ip Implementation Guide Modbus Organization 2006 28 W3Schools XML 2015 Online Dispon vel http www w3schools com xml Acedido a 2015 06 12 29 D Repici e D Burton CSV Comma Separated Value File Format 2010 Online Dispon vel http creativyst com Doc Articles CSV CSVO01 htm Acedido a 2015 06 26 30 J Rubio Simulador de escenarios rob ticos con capacidad multirobot Memoria Projeto Fim de Carreira Universidad de Zaragoza 2012 31 M Cantu Mastering Delphi 7 Sybex 2003 32 M A Azeem Start programming using Object Pascal P Anderson e J Hackney Eds 2012
53. Satisfa o dos Requisitos Na sec o 3 2 da presente Disserta o foram descritos os principais requisitos idealizados para a aplica o e nesta sub sec o efetuada a verifica o do cumprimento dos mesmos Todos os requisitos funcionais foram implementados na aplica o de entre os enunciados destacam se o facto de possuir v rios tipos de objetos pass veis de simular a possibilidade de grava o e leitura de simuladores e a integra o com o FEUPAutom Foram ainda desenvolvidas bastantes funcionalidades extra n o pensadas inicialmente tal como a personaliza o dos objetos a exist ncia de sensores que pegavam fogo e a possibilidade do simulador ser independente do FEUPAutom para certo tipo de testes Quanto aos requisitos n o funcionais existe uma maior dificuldade na avalia o os resultados obtidos e por isso foi realizado um inqu rito a um grupo de estudantes que ser apresentado de seguida Os nicos requisitos n o funcionais que podem ser avaliados sem a necessidade a exist ncia do manual de instru es e do caderno de exemplos que se encontram em anexo presente disserta o Anexo A e Anexo B respetivamente 5 3 2 Testes com estudantes De forma a obter uma resposta mais fidedigna em rela o s vantagens do uso do FEUPSim em ambiente educacional e de forma a validar o programa criado foram realizados testes com os estudantes que frequentaram a UC de Sistemas e Automa o no ano curricu
54. Y tipo entre outras 1 lt FAProject gt 3 lt Propsl ActiveTab 1 MessagesHeight 100 gt lt Props2 ModBusIP localhost ModBusPort 5502 ModBusNRead 48 ModBusNWrite 48 ModBusOffs_I 5392 lt Props3 ProjectAuthor ProjectComments ProjectGrafcet 1 ProjectGen C Code 1 gt 3 lt Geometry top 0 left 0 height 728 width 538 gt 2 lt FVariables gt 3 lt Props Visible 0 NextVar 1 Filter 0 gt 3 lt Geometry top 48 left 746 height 456 width 269 gt 3 lt Vars Names count 641 gt 2 lt FIOLEDs gt lt FIOLEDs gt lt FAProject gt 1 lt 67Project gt 2 lt 0bjects gt 3 lt 0b3 Name X0 Page 0 CellX 1 CellY 4 BarInIdx 6 BarOutIdx 0 Type 1 Flags 1 gt lt Objects gt lt Graph gt lt G7Project gt Figura 6 2 Novo XML 6 2 Metodologia 63 Com este novo formato de grava o torna se mais f cil guardar vari veis extra do sistema e esperado que os estudantes percebam melhor todo o funcionamento do FEUPAutom Uma vez que as vers es anteriores do FEUPAutom n o poderiam ser deixadas de parte foi garantida a compatibilidade com o formato antigo de leitura de ficheiros 6 2 3 Comunica o Modbus Aquando da implementa o do Modbus na vers o original do FEUPAutom foi utilizada uma biblioteca DelphiModbus que j disponibilizava todas as fun es de Modbus necess rias A desvantagem desta que usava uma outra biblioteca asso
55. a colis o da escova com estes 3 Foram ainda acrescentadas duas luzes para permitir visualizar qual dos motores estava ativo se o motor 1 se o motor 2 4 Por ltimo foram introduzidos dois bot es que permitem ligar e desligar o sistema atrav s da simula o 5 File Window Insert Tools Help O ER E Button Sensor Qu eco a World gt Desligar bot Ligar bot b LuzMot2 gt LuzMot1 b Motor 4 Sensor2 Sensor1 o Image15 desligar ligar 48 1 FPS No Object Select 0 Total 15 Msg Sucess loading Parabrisas_FEUPSim Figura 5 10 Simula o de Limpa Para Brisas 54 Utilizag o e Resultados 5 3 Resultados Obtidos Qualquer ferramenta atualmente desenvolvida tem no final que provar o seu valor passar em testes de qualidade e ser melhor do que as concorrentes mais diretas A fim de validar o FEUPSim foram verificados os requisitos efetuados testes com estudantes e realizado um inqu rito de sa tisfa o da aplica o Tal como mostrado na sec o anterior ver 5 2 foram realizados algumas simula es exemplo que facilitaram o uso e ambienta o de estudantes e professores ao simulador Uma das caracter sticas fulcrais do simulador o facto de este poder ser usado tanto por estudan tes como professores de forma indiferenciada possibilitando a partilha tanto de exerc cios pelo professor para os estudantes resolverem como tamb m entre os pr prios estudantes de forma a otimizar o seu estudo 5 3 1
56. a rela o entre os dois softwares e est o representa das na Figura 5 11 Quando perguntados se o FEUPSim seria uma boa adi o ao FEUPAutom cerca de 73 dos estudantes concorda totalmente e apenas um valor residual de 7 7 discorda ou neutro nesta quest o J na pergunta sobre a liga o entre FEUPAutom e o FEUPSim as opini es n o s o t o con sensuais e em alguns coment rios foi denotado que a liga o n o se encontra bem documentada podendo os resultados obtidos ter sido influenciados por este fator No entanto cerca de 70 concorda que a liga o f cil e funcional O FEUPSim uma boa adi o ao FEUPAutom A liga o com o FA f cil e funcional saio 42 3 10 0 16 75 26 9 19 2 8 5 0 19 2 11 5 0 0 0 0 EM q _ 1 2 3 4 5 1 2 3 4 5 Figura 5 11 Inqu ritos Rela o entre o FEUPSim e o FEUPAutom 56 Utilizag o e Resultados As perguntas apresentadas na Figura 5 12 serviram para validar os requisitos n o funcionais propostos uma vez que se relacionavam com quest es subjetivas do simulador implementado Desta forma foi poss vel aferir se o simulador era considerado pelos os estudantes simples e funcional onde os resultados s o bastante satisfat rios uma vez que mais de 90 dos inquiridos respondem afirmativamente simplicidade de interag o com o simulador Quando perguntados se a ambienta o ao simulador foi r pida os valores da concord ncia rondam os 86 3 co
57. ada byte cada coil representa 1 bit e Resposta de Erro FEUPSim N mero 129 128 1 C digo identificador do erro 1 2 3 4 Read Holding Registers 3 e Pedido FEUPAutom C digo da fun o 3 Endereco do primeiro registo a ler N mero de registos a ler 1 at 125 4 5 Algoritmos desenvolvidos 43 e Resposta Normal FEUPSim C digo da fun o 3 N mero de Bytes 2 N Registos Registos enviados no formato de um registo a cada 2 bytes e Resposta de Erro FEUPSim N mero 131 128 3 C digo identificador do erro 1 2 3 4 Write Multiple Coils 15 e Pedido FEUPAutom C digo da fun o 15 Enderego da primeira coil forgado escreito N mero de coils a for ar escrever N mero de bytes que se seguem Valor das coils no formato de 8 coils por cada byte cada coil representa 1 bit e Resposta Normal FEUPSim C digo da fun o 15 Endere o da primeira coil N mero de coils e Resposta de Erro FEUPSim N mero 143 128 15 C digo identificador do erro 1 2 3 4 Write Multiple Holding Registers 16 e Pedido FEUPAutom C digo da fun o 16 Endere o do primeiro registo a for ar escrever N mero de registos a for ar escrever 1 a 127 N mero de Bytes 2 N Registos Registos enviados no formato de um registo a cada 2 bytes e Resposta Normal FEUPSim C di
58. ados como uma linha e a separag o por v rgulas como colunas a tabela construida sem esfor o adicional Depois de decido o formato de grava o foi necess rio realizar um estudo aprofundado da aplica o desenvolvida sobre quais os campos que iriam ser guardados Estes teriam de ser abran gentes por forma a que pudessem ser usados por diversos objetos fun es e por isso mesmo os campos escolhidos foram 1 Hora e Data 2 Tipo de funcionalidade por forma ao utilizador saber o que gerou os dados os poss veis eventos que d o origem a novas entradas de dados s o e Clicar num bot o e Haver uma colis o entre objetos e Troca de Imagem ou Luz e Mudan a de velocidade dos Quadrados e C rculos e Acessos s propriedades de um objeto 3 Nome do Objeto 1 4 Nome do Objeto 2 utilizado quando existe uma colis o 5 Bit associado e tipo I O 6 Informa es adicionais a dar sobre os dados O hist rico n o automaticamente iniciado sem ordem do utilizador e ainda poss vel definir a periodicidade com que as amostras s o tiradas 100ms 10s Para garantir que n o gerada informa o desnecess ria o algoritmo implementado apenas guarda informa o quando existe uma conex o Modbus e o programa est a correr O ficheiro de hist rico criado na mesma pasta em que o FEUPSim se encontra com nome FEUPSimLogFile 46 Implementag o do Simulador De seguida apresentado um exemplo real do sistema imple
59. adotada Por forma a otimizar o trabalho e garantir que todos os prazos eram cumpridos foi importante definir desde o in cio do projeto do simulador qual seria a metodologia adotada Esta decis o revelou se de uma import ncia extraordin ria uma vez que foi atrav s dela que se decidiu qual o m todo de trabalho que seria seguido na implementa o do simulador A decis o tomada foi de encontro cria o de uma tabela semanal que tal como mostrado na Figura 3 3 refletisse e Trabalho por fazer Lista de tarefas e objetivos a completar na presente semana e Problemas Dificuldades encontradas na presente semana ou anteriores que ainda n o te nham sido ultrapassadas e Trabalho Futuro Lista de ideias para trabalho futuro ou implementa o de funcionalida des que ainda n o eram poss veis de criar naquela semana e Dicas de Trabalho Atalhos de teclas para Lazarus e notas sobre o trabalho desenvolvido A cor preta era usada para escrever as tarefas a realizar e quando esta ficasse conclu da ou um problema fosse resolvido eram passadas com um marcador verde por forma a marcar o ritmo de trabalho desenvolvido Por Fazer Problemas Resize Visual Textosersempre Sensor batente Pickable Ter mais bitsnos quadrados Sefizer fire temde Objetos filhos n o se aparecero Fix moverem World Mover maisqueum Lista de objetos bem objeto feita Distinguir save asde Nos adds save Nos child Mudar Nome Duplicar Futuro Dicas
60. afcet Draw Grid Edit Program Targets Window Help ros NOT Connected View Project Window Help orce to 0 Project ST Editor Pascal C MakeMsgs _G7 gt ST gt C C Make Dude O an Faceto 1 2Names A Redraw G7 gt ST E o iL E o K Show Code Authors rron Y Start Qs 0 cce On Q2 true Newline as xo Up t omments asi 7 Debug Stuff Y Enable Grafcet in Project Please use Window menu to show hide grafcet window CIO Compatibilty F A 1 Win Messages das TT Moda aa TE L jodBus E bama pm MB Func SCSI IP localhost Offset 5392 Bits Read 48 G Cols err eo xi Ql true Port 5502 omo fa Biswrite 48 C InpBi g e C HoldRegs es ModBusStatus Set Run Once test eno ni unch LT gt 10 en Enio Period ms 100 ons api Code Area Q1 true Editor Font Rist Win Pos s Set Params Em X0_T gt 10 Edit Program Targets Window Help MakeMsgs G72ST gt C CMakel Dude O ru A 00 Q1 a2 Ro lt sw0 0 T 100 110 Sif LogTmers v P Clear Export TT Names Draw Sigo IEE MPE MET MPN E e Step Transition Figura 2 4 Ambiente de desenvolvimento do FEUPAutom 12 Revis o Bibliogr fica 2 3 1 2 Depura o Uma vez que o FEUPAutom se encontra em constante desenvolvimento quer seja por novas
61. atual o Android e A linguagem Pascal ser mais recente que a C o que levou a uma menor adapta o por parte dos desenvolvedores 4 1 2 Bibliotecas e tecnologias utilizadas Para al m da escolha do ambiente de desenvolvimento e linguagem a usar foi necess rio optar entre algumas tecnologias dispon veis para a cria o do simulador Dentro das escolhas realizadas destacam se o motor de renderiza o 3D o protocolo usado para comunica o e o formato de grava o dos ficheiros 4 1 2 1 GLScene O GLScene 4 uma biblioteca baseada no OpenGL que por sua vez uma API para realizar renderiza o de objetos 2D duas dimens es e 3D tr s dimens es Desta forma o GLScene facilita a tarefa do programador uma vez que este n o tem de conhecer todas as especificidades do OpenGL e tem ao seu dispor um conjunto de classes e fun es que permitem o r pido desenvol vimento da aplica o Sendo orientado programa o de aplica es ao inv s da programa o de Jogos o GLScene permite a cria o de uma grande variedade de programas desde de renderiza o da atmosfera terrestre a aplica es m dicas desenhos digitais design de interiores de casas simula es de bra os rob ticos e voos entre muitos outros exemplos 25 Esta biblioteca quando associada ao Lazarus permite desenhar e criar cenas 3D tanto em modo de design atrav s de componentes visuais como em modo de execu o criando objetos medida das nec
62. az permitindo construir uma f brica em pouco tempo e simular todo o seu funcionamento Nessa simula o poss vel selecionar op es tais como o seguimento de um objeto espec fico visualiza o em primeira pessoa c mara lenta entre outras 8 Sendo o Factory I O um programa de alt ssima complexidade e permitindo aos utilizadores trabalharem com um n mero muito grande de cen rios industriais este utiliza um sistema de licen as pagas para ser usado Recentemente os seus programadores lan aram um SDK Software Development Kit que permite aos utilizadores criarem interfaces entre as simula es e tecnologias externas 6 Revis o Bibliogr fica 2 1 3 Comparac o Al m destes dois simuladores foi ainda efetuado um estudo sobre alguns dos mais sofisticados softwares no mbito do ensino na rea de automa o tendo sido para isso realizada uma tabela comparativa Tabela 2 1 Abaixo s o explicadas as escolhas dos softwares para compara o assim como os par metros usados para realiza o da mesma Softwares usadas para compara o Sim Two Criado com foco na investiga o e ensino sendo por isso simples de criar e simular ambientes de forma r pida e eficiente Factory VO Permite a simula o de f bricas e componentes presentes nestas de forma r pida e funcional servindo assim para o treino e ensino do funcionamento destes sistemas Gazebo Gratuito permitindo simular m ltiplos rob s em ambientes comple
63. bjetos Esta barra Figura 5 3 tem tr s fun es e Inser o de objetos na Cena atrav s de cliques no respetivo bot o e Executar e Parar o programa e Clicando no bot o Reset World poss vel reverter todos os objetos s posi es iniciais de um ficheiro que estivesse carregado cl x Square Circle Image Light Text Button Sensor Figura 5 3 Barra de inser o de objetos 5 1 1 3 Barra de estados Nesta barra de estados poss vel observar as seguintes vari veis e mensagens e N mero de Fotogramas Por Segundo O objeto selecionado e sua posi o X Y Z e O n mero de objetos selecionados e O n mero total de objetos na Cena e Mensagens de erros ou sucesso da aplica o Figura 5 4 Barra de estados 5 1 1 4 Comunica o Modbus Existem quatro estados poss veis para a conex o Modbus como vis vel na Figura 5 5 Para iniciar a comunica o basta clicar no bot o host e esperar que um cliente estabele a uma conex o e Vermelho N o existe conex o e Laranja O simulador est espera de uma conex o e Verde Representa uma conex o bem estabelecida e Amarelo Ocorreu um erro de comunica o Modbus Figura 5 5 Janela de conex o Modbus 50 Utilizag o e Resultados 5 1 1 5 Barra de depura o debugging Janela Figura 5 6 com algumas funcionalidades de depura o da aplica o e Debug Serve para indicar se as op es de depura o est o vis
64. ceito do sistema 27 3 3 Conceito do sistema Depois de realizado todo o projeto do simulador e decididas as tecnologias a usar foi criado um conceito do sistema a ser implementado Tal conceito teve o prop sito de apresentar ao cliente o Professor Armando Sousa o sistema projetado por forma a verificar se este ia de encontro ao sistema idealizado e pensado pelo o mesmo Tal conceito encontra se representado na Figura 3 2 sendo de notar que o que se quis aprovar aquando da sua realizac o foi e Exist ncia de dois modos de execu o Simula o e Edi o e V rios objetos poss veis de simular e Fun es serem muito simplificadas e Interface simples e limpa Tr Simular m gt Parar y Object tree Simulator Ciculo1 rectangulo1 Rectangulo1 Circulo1 Functions Rotate Figura 3 2 Conceito inicial do sistema a implementar 3 4 Outras decis es de projeto 3 4 1 Linguagem Num esfor o para tornar o simulador verdadeiramente universal a linguagem usada para toda a interface foi o Ingl s Nesta decis o pesou tamb m o facto do FEUPAutom estar desenvolvido nesta linguagem o que tornaria ambos os softwares compat veis at neste ponto 3 4 2 Nome O nome dado ao simulador foi FEUPSim FEUP uma vez que nesta faculdade que foi criado e ser futuramente utilizado e Sim de simula o que ser a sua principal fun o 28 Projeto do Simulador 3 4 3 Metodologia
65. cets hierarquicamente mais baixos comandam subsistemas dessa c lula m quinas tapetes Existem ent o 4 macro a es 1 Imposi o de uma situa o Representado por G3 8 9 11 esta macro a o implica que quando a etapa a que ela se encontra associada for ativada o Grafcet parcial 3 for ado situa o de ter as etapas 8 9 11 ativas e todas as outras desativadas 2 Congelar Bloquear a situa o Representada por G3 esta macro a o for a a que a situa o atual do Grafcet parcial 3 se mantenha isto bloqueia todas as transi es 3 Inicializar um Grafcet Representada por G3 INIT esta macro a o for a que o Graf cet parcial 3 seja inicializado mesmo que j se encontrasse a meio da sua execu o 4 Imposi o de situa o vazia Representado por G3 com esta macro a o poss vel impor uma situa o em que todas as etapas s o desligadas 20 Revis o Bibliogr fica 2 4 2 IEC 61131 3 Nesta sub secg o realizada uma breve introdug o norma IEC 61131 3 20 fulcral no de senvolvimento de controladores em ambiente industrial uniformizando as diferentes linguagens utilizadas para programar os diversos PLCs de cada fabricante Como referido a norma IEC 61131 3 surgiu para unificar quais as linguagens de programag o que os diferentes fabricantes deveriam permitir em que os seus PLCs fossem programados Desta forma foi poss vel um maior investimento de temp
66. ciada que era bastante pesada compu tacionalmente o Indy Uma vez que ambas as bibliotecas tinham j sido migradas para Lazarus n o foi colocada qualquer quest o quanto ao seu uso mas quando se tentou instalar estas bibli otecas numa m quina Linux o interesse que o FEUPAutom se torne multi plataforma estas continham incompatibilidades Por forma a dar mais um passo no sentido de tornar o FEUPAutom verdadeiramente multi plataforma foi decidido que se adaptaria o c digo das fun es Modbus necess rias para um novo formato e utilizando para isso a biblioteca de Lazarus INet que j tinha sido usada na imple menta o do simulador Esta escolha foi efetuada uma vez que a biblioteca INet acr nimo de Lightweight Networking Library que se pode traduzir em portugu s por Biblioteca leve de redes Internet e que tal como o seu nome indica leve e pode se assim diminuir a pegada computaci onal do Indy tal como tinha sido proposto nos objetivos A n vel de implementa o as altera es foram impercet veis para o c digo principal uma vez que as fun es usadas por este foram refeitas mantendo os mesmo dados de entrada e sa da Para isso foi criado uma nova unidade no projeto de Lazarus intitulada de Modbus Utils onde todas as fun es Modbus utilizadas pelo o FEUPAutom foram implementadas tornando assim a aplica o dependente apenas de uma nica biblioteca que multi plataforma em vez das duas usadas
67. cria o de um novo tipo de bloco chamado de macro etapa Este ao ser duplamente clicado abre uma nova janela onde poss vel definir um conjunto de etapas transi es que ligar o com o Grafcet original a partir de duas etapas especiais que j esta riam implementadas uma de entrada e uma de sa da 24 Revis o Bibliogr fica 2 5 1 6 Controlo hier rquico Contexto No Grafcet existem duas formas para realizar o controlo hier rquico por for agens macro a es ou por encapsulamento tal como explicado em 2 4 1 5 No entanto no FEUPAutom n o utilizado nenhum destes dois m todos Em contrapartida existem duas op es distintas para realizar o controlo hier rquico Um deles consiste na execu o de c digo presente numa a o de etapas especiais que s o denominadas Zones e que est o distribu das no momento da compila o pelas v rias fases de execu o do ciclo do SoftPLC No c lculo das transi es na desativa o das etapas na execu o das a es das etapas ativas etc O outro m todo recorre ao facto de existirem m ltiplas folhas onde se podem modelar diferentes Grafcets para garantir que a ltima folha a ser compilada a de n mero 0 implicando que as decis es que ser o efetuadas nesta possam bloquear inicializar ou at desligar sa das que teriam sido modificadas por folhas de n mero superior Mudan a Sugerida A implementa o sugerida e que vai de encontro com o lecionado na Unidad
68. de iniciar a aprendizagem do FEUPAutom mais cedo na UC 5 3 Resultados Obtidos 57 O Manual e o Gui o de Exemplos ajudaram me Penso que ser uma ferramenta til para testar e at introduzir o FEUPAutom mais cedo na cadeira 46 2 46 2 38 5 10 0 e 10 0 34 6 75 7 5 5 0 15 4 5 0 E 11 5 25 2 5 1 1 a 0 0 0 2 5 3 Figura 5 13 Inqu ritos Quest es estruturais do FEUPSim A ltima pergunta do question rio era de resposta aberta onde se pedia aos estudantes a sua opini o geral e quais eram a seu ver os pontos fortes e os pontos fracos do FEUPSim Parte dos testemunhos dados pelos estudantes s o aqui apresentados e A ideia de criar facilmente um simulador foi muita boa gostei do manual por ser simples e incidir no essencial Em geral bastante positivo e funcional Por m tem muito por onde crescer e espero que assim aconte a e O FEUPSim est um programa simples no entanto cumpre bem a sua fun o e o seu objetivo Penso que qualquer aluno poder facilmente entender o seu funcionamento e em algumas horas aprender a trabalhar com ele a 100 Bom Trabalho e Boa ferramenta adicional que permite mais interatividade o que nos d mais incentivo para realizar as nossas simula es e A fun o ctrl z faz falta mas penso que n o seja indispens vel Uma poss vel integra o com o FEUPAutom seria uma mais valia para os dois softwares e Pontos fortes ambiente gr fico Pontos fracos
69. dk bah bao ewe he SE Ae de eA 10 2 31 FEUPANOM pus sha ek oa ER ee Oe eee PER LO 10 23 2 Bere q dae a he AR we e a e ooie 14 233 ISAGRAP ca ei e dk a dd Be ee ae ei ak eS 14 2 3 4 Sysmac Studio ca 2b ea ea ee eee 14 2 4 Estudo das normas aplic veis o ee 15 2 4 1 TEC 60848 Grafcet o o e ee ee 15 242 JECOUIBI 3 cinc e Ba a a a ee E 20 24 3 Gtatcet vs SEC sx papa dass a aa A a aa 20 2 5 An lise cr tica do FEUPAutom 2 2 2 0 2 200 e 21 2 5 1 An lise do Grafcet do FEUPAutom face norma IEC 60848 21 2 5 2 Sugest es de melhorias para o FEUPAutom 24 3 Projeto do Simulador 25 3 1 Dados de partida oos oo scoe e orien e 25 3 2 An lise de Requisitos o o s ew mamaka e 26 3 3 Conceito dosistema e af 3 4 Outras decis es de projeto 2 2 ee 2q 34 1 Ling agem eo crega dardo a A A a ag 342 NOME us so fn owe RED Re ee Oe eS e we eS 27 3 4 3 Metodologiaadotada 0 2 0 0 00000004 28 xi Xil 4 Implementa o do Simulador 4 1 Ambiente de Desenvolvimento AMA Lazaris mas ie e ii ie os ee s 4 1 2 Bibliotecas e tecnologias utilizadas 4 2 Conceitos importantes e 42 1 CENA sagas cus da a e oO 4 2 2 Filhos Childs o o o ooo 4 2 3 ColisOes 2 er es eraa a ee 4 3 Arquitetura Estruturade Dados 4 4 Funcionalidades Implementadas
70. e Dispon vel http www realgames pt factory io Acedido a 2015 02 01 A del Pozo J Escano e C Bordons Simulator for control and automation using an in teractive and configurable 3D virtual environment SICE Annual Conference SICE 2012 Proceedings of pp 2268 2273 2012 Realgames Factory I O Parts Essentials 2014 Online Dispon vel http www realgames pt downloads factoryio software_files factoryio_parts_essentials pdf Realgames Fatory I O User Guide 2014 Online Dispon vel http www realgames pt downloads factoryio software_files factoryio_user_guide_en pdf A Daneels e W Salter What Is Scada Access pp 339 343 1999 S Boyer SCADA Supervisory Control and Data Acquisition em Scada Supervisory Control And Data Acquisition ISA 1999 pp 1 24 Citect Corporation CitectSCADA Sielco Sistemi SCADA Software HMI Software Supervisory Software for Data Acquisition Remote Control Online Dispon vel http www sielcosistemi com en products winlog_scada_hmi index html Acedido a 2015 02 15 91 92 BIBLIOGRAFIA 13 Ecava IntegraXor HMI SCADA System e Web SCADA with fully functional amp free SCADA development tools Online Dispon vel http www integraxor com Acedido a 2015 02 14 14 Bosch Rexroth Group PC vs PLC key factors in comparing control options 2011 15 A Sousa FEUPAutom 2014 Online
71. e Curricular para o outro software utilizado PL7Junior seria ent o a implementa o das for agens macro a es Estas poderiam ser implementadas recorrendo a uma defini o de Grafcets parcias que seriam definidos pelas diferentes folhas onde fossem desenhados Isto levaria a que se pudesse desenhar somente um Grafcet controlado por folha de forma a que quando se usasse uma das 4 macro a es enunciadas em 2 4 1 5 o compilador soubesse imediatamente qual o Grafcet em que deveria atuar 2 5 2 Sugest es de melhorias para o FEUPAutom Ao longo do estudo e dos testes efetuados para realizar a compara o entre o Grafcet usado pelo FEUPAutom e o recomendado pela norma foram encontradas algumas poss veis melhorias que tornariam o sistema bastante mais user friendly e Quando se clicar num objeto no modo de edi o de Grafcet poder se apagar com a tecla DEL a etapa ou transi o selecionada e Os erros de Grafcet aparecem na janela de edi o de Grafcet e Existir a possibilidade de mover v rios objetos de uma s vez na edi o de Grafcet e Ser poss vel visualizar todas as janelas no ambiente de edi o de Grafcet uma vez que neste momento s poss vel visualizar a janela de ST e Unificar a grava o de projeto num s ficheiro em vez dos dois ficheiros com extens es diferentes que poder o confundir o utilizador e Atualizar a interface e Cria o de um manual completo com todas as funcionalidades do FEUPA
72. e fazer testes sob a plataforma Mac OS X As ferramentas desen volvidas ser o disponibilizadas sem custos comunidade O trabalho futuro inclui integrar as duas aplica es para estudo aprofundado da intera o tempo real estudar o alargamento para outros protocolos de comunica o testes em ambientes reais e eventualmente automatizar a valida o de programas de controlo Palavras chave Simula o SCADA PLC SoftPLC Automa o Ensino Eventos Discretos 111 1v Abstract The simulation is nowadays used in many applications with great benefits both for teaching and industrial applications In education there are few tools that enable the fast and agile simulation of simple systems and respective control of the systems oriented to discrete event in the spectrum of PLCs This is the area of intervention of the course Systems and Automation from the program MIEEC at FEUP In this Dissertation it was developed the FEUPSim tool a simulator and SCADA which com municates with the SoftPLC FEUPAutom who also was updated in this work It was used the FreePascal Lazarus as free and open programming tool in order to obtain cross platform appli cations It was also used ModbusTCP communications protocol to take advantage of enabling communications standard developed tools to communicate with other devices and applications FEUPSim is a tool that allows the user to create entities such as geometric shapes images sensors etc where
73. e o utilizador realiza um programa que executa todo o controlo 2 4 1 1 Etapas Uma etapa define o estado da parte sequencial do sistema existindo 6 etapas pass veis de representar tal como indicado na Figura 2 7 000008 etapa etapa etapa etapa etapa macro inicial activa encapsulante encapsulante etapa inicial Figura 2 7 Representa o das etapas adaptado de 19 16 Revis o Bibliogr fica Descri o dos elementos presentes na Figura 2 7 1 e 3 Uma etapa designada por um identificador alfanum rico e tem sempre uma vari vel booleana associada que representa o seu estado Quando se encontra ativa representado em 3 da Figura 2 7 a vari vel associada X ter o valor 1 se a mesma etapa estiver desativa a vari vel conter o valor 0 2 Num Grafcet existe sempre pelo menos uma etapa inicial que se encontra ativa aquando do arranque do sistema 4 e 5 Uma etapa encapsulante consiste numa etapa que tem em si outras etapas inclu das Tal como numa etapa normal poder o existir etapas encapsulantes iniciais 6 Por ltimo existem ainda macro etapas que s o representa es de partes detalhadas de um determinado Grafcet 2 4 1 2 Transi o Uma transi o um elemento que indica uma poss vel evolu o entre uma ou mais etapas existindo 4 formas de a representar tal como indicado na Figura 2 8 1 Transi o dependente de uma condi o 2 e 3 Transi o dependente da mudan a da vari
74. e_X vel x single void Move X vel x single void Move Y vel y single void Move Y vel y single void RotateAng velAng single void RotateAng velAng single void Image Sensor AssociatedBit Integer AssociatedBit Integer TagObject Integer typeOf boolean image_path string r 2 Collision obj1 obj2 TGLObject Changelmage newlmage bitmap boolean void ChangeState bit boolean void Figura 4 2 Arquitetura do sistema 4 4 Funcionalidades Implementadas 35 4 4 Funcionalidades Implementadas Nesta sec o ser o apresentadas todas as decis es tomadas na implementa o das funcionali dades do simulador os objetos pass veis de criar e as suas fun es assim como o menu de contexto que auxilia na constru o de simula es 4 4 1 Objetos e suas fun es Quer atrav s da barra de inser o de objetos Figura 5 3 quer pelas op es do menu inserir Figura 5 2 poss vel introduzir novos objetos na Cena Tal como pode ser visto nas figuras referidas os objetos s o Imagens Texto Quadrados C rculos Luzes Bot es e Sensores Todos estes objetos s o agora apresentadas acompanhadas das fun es implementadas 4 4 1 1 Imagens As imagens existem por forma a facilitar a cria o de anima es Alguns exemplos disso s o um tapete com movimento um elevador a abrir a porta m quinas com diferentes estados entre outros A sua fun o consiste em ter um vetor din
75. ean Help void z Run void loWindow Stop void o 1 ForceBit bit boolean void DesForceBit bit boolean void Scene TotalObjects integer SelectedObjects StringList Screenshot Bitmap BKGnd Color Color ChangeFont Font InsertObject typeOfObject class TGLObject la TGLObject Name string Position XYZ E Size single Properties Angle single Obj_Color Color ChangeName newName string void Visible boolean 0 1 ChangeColor newColor Color void Pickable boolean ChangePosition newPosition XYZ void ChangeSize newSize single void move void Rotate angle integer void DeleteObject object TGLObject void DuplicateObject object TGLObject TGLObject MakeChildOf object TGLObject void Addimage image Bitmap void A Square Circle Light Button Text AssociatedBit Integer AssociatedBit Integer AssociatedBit Integer AssociatedBit integer Text string Velx single Velx single ColorO Color typeof boolean Vely single Vely single Color1 Color image path string VelAng single VelAng single z 7 E TagObject Integer TagObject Integer ChangeColor newColor Color void ChangesState bit boolean void CollisionOn boolean CollisionOn boolean image_path string Mov
76. edade poss vel modificar a cor bem como o n vel de transpar ncia do objeto em quest o Position Posi o Posi o global na Cena A componente Z limitada de 1 a 1 para permitir objetos frente uns dos outros Scale Escala Com esta propriedade poss vel escalar um objeto em X e em Y Size Tamanho Permite modificar o tamanho do objeto Se for uma C rculo Sensor Luz tem raio se for um Quadrado Imagem Bot o tem altura e largura Angle ngulo de Rota o Com esta propriedade poss vel rodar o objeto em rela o Cena num ngulo de 180 a 180 graus 52 Utilizag o e Resultados 5 2 Casos de estudo Ap s a apresentag o de todas as funcionalidades do FEUPSim importante no mbito da escrita da presente Disserta o mostrar alguns casos de estudo que serviram para a realiza o de testes do simulador Para isso de seguida s o apresentados dois exemplos e explicadas todas as caracter sticas de interesse dos mesmos 5 2 1 Luzes de Sem foros O primeiro exemplo consiste na simula o de um sem foro de tr nsito uma vez que na UC de Sistemas e Automa o o primeiro exerc cio que os alunos resolvem precisamente o controlo de das entradas de um parque onde tamb m existe um sem foro A simula o esquerda na Figura 5 9 constitu da por 3 objetos Luz que consoante o bit associado mudam para a cor correspondente do sinal de tr nsito Al m das 3 luzes existe ai
77. eito de SCADA numa fase inicial do curso Devido a este facto existe uma necessidade de neste cap tulo explicar todas as escolhas efetuadas a n vel de interface do simulador e fun es extra que este possui al m dos objetos apresentados no cap tulo anterior S o tamb m apresentados dois casos de estudo de forma a mostrar parte do potencial do simulador desenvolvido Por ltimo s o apresentados resultados do desenvolvimento do FEUPSim tanto em termos de satisfa o de objetivos e requisitos como na forma de um inqu rito realizado aos estudantes 5 a File Window Insert Tools Help BOO 8 8 ooo CAMERA 2D Square Circle Image Light Text Button Sensor 49 2FPS No Object Select 0 Total 0 Msg Sucess Loading Parabrisas_FEUPSirr Figura 5 1 Interface FEUPsim 47 48 Utilizag o e Resultados 5 1 Interface Gr fica Em qualquer aplicag o social m vel ou educacional hoje em dia muito importante despen der bastante tempo na cria o da interface com o utilizador Sendo um dos objetivos principais que o FEUPSim possua uma interface simples apelativa e acima de tudo funcional foram feitos todos os esforgos para cumprir estes requisitos A interface desenvolvida apresentada na Figura 5 1 e de seguida s o descritos os seus constituintes 5 1 1 Janela Principal Primeiramente efetuada uma an lise janela de execu o da simula o com nfase nas funcionalidades que n o foram explicadas no cap
78. environment of FEUPAutom divided by its components FEUPAutom black In this window it s possible to edit some project settings write ST programs see their conversion to C and Pascal lt is also here that are shown program error messages and or messages conveyed by this Grafcet Draw Grid red Window that allows to create programs in Grafcet all design is done on the grid and there is an area of programming where the user can write transitions or actions that must be performed using ST language e IO LED blue State representation of the Inputs and Outputs of the system It is also possible to force determined bit to True or False Log green Representation of time plotted variables chosen by the user 2 FEUPAutom _ C _ v4 02 Untitled 10 Leds File Edit Prog Unforce NOT Connected BM Fie Edit View Project Window Hap am Targets Window Help Forceto0 Project ST Editor Pascal C MakeMsgs _G72ST2C CMake Dude Forceto Names Author s CID ee Ji aa 17 Comments V Enable Grafcet in Project Please use Window menu to show hide grafcet window aa TE TT Compatibility F A 1 Win Messages COCA err es IT ModBus Tipe CITO IP 192168 112 65 Offset 5392 Bits Read 48 G Coils COCIDO Port 5502 ttset 0 0 Bits wite 48 C InpBits errie C HoldRegs CCOO ModBusStatus Set Run Once test CCOO err jen aa TE IQ Outputs
79. eral plots at the same time Obj N 0 gt X0 gt Step A Cell 3 4 BarInldx 1 Out var l true perene Tae Obj N 1 gt t0 gt Transition n_var_1 Cell 3 6 BarInldx 2 Out var 2 true Bar0utldx 3 if In var 2 Out var 3 true Obj N 2 gt X1 gt Step end if Cell 3 8 In var 2 BarInldx 3 FER BarOutIdx 4 Obj N 3 gt t1 gt Transition Cell 3 10 BarInIdx 4 BarOutIdx 0 Figure 2 Debugging tools 3 3 Simulations To become a truly innovative tool of discrete events and control teaching there was a need to develop some working examples so the students could test their control code For that Professor Paulo Costa created three working simulations that would allow the students to train the skills learned and help them keep trying to achieve better results The three simulators are shown in Figure 3 Park 3D green With this simulator the students are encouraged to develop the control program for a parking lot at first there is only cars moving in with a limit space of 6 cars then it becomes more difficult with the introduction of a second barrier for the cars that are moving out e Gate 3D red In this simulator the objective is to control a garage gate with the benefit of a light that needs to be on if the natural light intensity is lower than a certain level Thunderbird 3D blue In the last simulator it is presented the control system of the back lights of a car where the st
80. erto e Ser uma ferramenta multi plataforma permitindo o seu uso em diversos sistemas operativos sem ter de alterar c digo O moto do Lazarus Write Once Compile Anywhere e O facto de o Lazarus usar um Free Pascal Compiler FPC 24 que se encontra em cons tante desenvolvimento e A linguagem usada o Pascal ter uma curva de aprendizagem relativamente pequena e existir imensa informa o dispon vel sobre esta e Exist ncia de v rias bibliotecas que facilitam a sua programa o e Ter v rias ferramentas de depura o facilitando a procura de erros no c digo fugas de mem ria ou mesmo correr o programa passo a passo e O desempenho dos programas criados ser equivalente aos desenvolvidos em linguagem C 29 30 Implementag o do Simulador Face s alternativas o Lazarus possui algumas desvantagens que s o aqui destacadas Ao longo de todo o projeto a influ ncia destas n o se provaram relevantes mas importante a sua refer ncia de modo a realizar uma compara o justa entre todos os IDEs dispon veis e O Lazarus possui um footprint tamanho do ficheiro maior do que o Delphi uma vez que no execut vel tamb m guardada a informa o de depura o e O facto de que em rela o ao Java o Lazarus n o ser verdadeiramente port vel isto embora o seu moto indique que possa compilar em qualquer lado isto implica que o Lazarus existia no respetivo SO o que n o acontece com a maior plataforma m vel
81. essidades Para al m isso est ainda otimizada para desperdi ar o m nimo de recursos do computador onde utilizada Por fim necess rio referir que o GLScene um projeto distribu do sob a Mozilla Public License MPL sendo por isso gr tis e de c digo aberto Dada toda esta versatilidade o GLScene foi a ferramenta escolhida para a renderiza o de objetos 2D e 3D do simulador desenvolvido 4 1 Ambiente de Desenvolvimento 31 4 1 2 2 Modbus TCP Como protocolo de comunica o foi utilizado o Modbus TCP 26 devido sua facilidade de implementa o e ao facto de o FEUPAutom j comunicar atrav s deste protocolo Criado pela Modicon em 1979 usado para estabelecer comunica o mestre escravo cliente servidor entre diversos dispositivos Devido facilidade de implementa o e uma vez que gratuito o Modbus tornou se no protocolo mais usado em ambientes industriais e educacionais tendo j sofrido diversas altera es com vista no seu melhoramento Como biblioteca de interface TCP foi utilizado o INet pois este realizava de forma simples e transparente todo o envio rece o de pacotes necess ria De referir tamb m que assim garan tido que o programa de controlo FEUPAutom e a simula o possam correr em computadores distintos uma vez que usada a Internet como meio de comunica o Existem 4 tipos de dados definidos pelo Modbus tal como vis vel na Tabela 4 1 Tabela 4 1 Tipo de dados Modbus
82. este cap tulo s o descritos os objetivos espec ficos a atingir a metodologia adotada e o resultado final da atualiza o efetuada com alguns testes comparativos 6 1 Problema e Objetivos O FEUPAutom como visto em 2 3 1 uma ferramenta fulcral no ensino de controlo de siste mas de eventos discretos na UC de Sistemas e Automa o Com ele os alunos aprendem a modeli zar problemas e resolver alguns exerc cios pr ticos atrav s da linguagem ST e Grafcet Sendo uma ferramenta que se encontra em constante evolu o uma vez que todos os anos recolhido algum feedback dos estudantes foi necess rio repensar se o software no qual o FEUPAutom estava a ser desenvolvido seria de facto o ideal para continuar a melhorar cada vez mais este softPLC O IDE onde o FEUPAutom se encontrava a ser desenvolvido era o Delphi 7 que era j muito antigo Agosto de 2002 e o setup de programa o envolvia o acesso a uma M quina Virtual de Windows XP estando por isso completamente obsoleto Por forma a garantir o cont nuo desenvolvimento do FEUPAutom foi proposto que se atuali zasse e migrasse todo o c digo de Delphi para Lazarus uma vez que a linguagem de programa o era a mesma Pascal da do Lazarus ter surgido por forma a ser uma alternativa livre do Delphi que licenciado pela Embarcadero Technologies Tal como explicado em 4 1 1 o Lazarus tem in meras vantagens das quais para a atualiza o do FEUPAutom se destacam e Ser gratuito
83. f rum oficial do Lazarus A maior altera o a n vel de implementa o realizada ao FEUPAutom foi ent o a troca do motor de scripting Uma vez que o PS permitia o uso de apontadores de vari veis a comunica o entre o c digo de execu o e o c digo gerado pelos os utilizadores foi muito simplificada isto ao inv s de haver uma constante reinterpreta o das vari veis de c digo do utilizador todo o processo ficou transparente e as vari veis de sistema utilizadas por ambos s o as mesmas A Figura 6 1 pretende representar a altera o efetuada onde em cima apresentado o motor de scripting DWS e em baixo a nova vers o usando o PS Figura 6 1 Motores de scripting FEUPAutom em cima o DWS e em baixo o Pascal Script PS Para verificar os resultados foram efetuados 5 testes e medidos os tempos de compila o da aplica o antiga com DWS e da nova vers o do FEUPAutom com PS utilizando para isso o mesmo computador Tal como vis vel na Tabela 6 1 o motor de PS foi em m dia cerca de 133 mais veloz em todos os testes efetuados que o DWS Tabela 6 1 Compara o entre o tempo de compila o do DWS com o do PS DWS Pascal Script PS DWS DWS PS ms ms ms Exel 412 267 145 154 Exe2 361 332 29 109 Exe 3 746 477 269 156 Exe 4 478 361 117 132 Exe 5 1450 1277 173 114 M dia 147 133 1SO Windows 8 1 CPU Intel 15 4200M 2 50GH
84. g FEUPAutom em cima o DWS e em baixo o Pascal Script PS 61 Novo XML se Bee Gee ee aE a ca ee ee ae we 62 Lista de Tabelas 2 1 4 1 4 2 4 3 6 1 Compara o entre simuladores o o e o 6 Tipo de dados Modbus e 31 Resumo menu de contexto o e 39 Dados de de hist rico tratados e dispostos numa tabela 46 Compara o entre o tempo de compila o do DWS como do PS 61 XV xvi LISTA DE TABELAS Abreviaturas e S mbolos API DWS FE FEUP GRAFCET HMI IDE IEC MIEEC ODE PLC PS RE RTU SCADA SFC SO ST UC XML Application Program Interface Interface de Programa o de Aplica es Delphi Web Script Falling Edge Faculdade de Engenharia da Universidade do Porto Graphe Fonctionnel de Commande tapes Transitions Human Machine Interface Interface Homem Maquina Integrated Development Environment Ambiente de Desenvolvimento Inte grado International Electrotechnical Commission Mestrado Integrado em Engenharia Eletrot cnica e de Computadores Open Dynamics Engine Programmable Logic Controller Pascal Script Rising Edge Remote Terminal Unit Unidade Terminal Remota Supervisory Control And Data Acquisition Supervis o Controlo e Aquisi o de Dados Sequential Function Chart Sistema Operativo Structured Text Unidade Curricular Extensible Markup Language xvii Cap tulo 1 Introducao 1 1 Enquadrament
85. go da fun o 16 Endere o do primeiro registo forgado escrito N mero de registos 1 a 127 e Resposta de Erro FEUPSim N mero 144 128 16 C digo identificador do erro 1 2 3 4 44 Implementag o do Simulador 4 5 3 Grava o e Leitura de ficheiros XML Para grava o e leitura de ficheiros foi utilizada a linguagem XML pela facilidade de edi o e transversalidade entre plataformas tal como explicado em 4 1 2 3 Por forma a otimizar o tempo de escrita dos ficheiros foi utilizado um algoritmo recursivo que percorre todos os objetos da Cena escrevendo os corretamente No processo contr rio o de leitura dos ficheiros guardados existe um algoritmo recursivo id ntico que trata de toda a verifica o e valida o do documento Se for detetada alguma altera o prejudicial feita pelo utilizador o carregamento dos objetos na Cena anulado e apresentada uma mensagem de erro ao utilizador Na Figura 4 11 apresentada a estrutura criada e como vis vel existem 2 etiquetas principais marcadas com o n mero 0 a vermelho escuro lt Proj gt Onde s o definidas vari veis globais de projeto tal como o zoom aplicado a fonte de texto a porta Modbus e a cor de fundo da Cena lt My World gt Nesta etiqueta s o definidos todos os objetos as suas rela es e fun es 1 Em primeiro lugar definido o objeto com os seus atributos o nome a classe do objeto e o n mero de objetos filhos caixa azul
86. he grades had to be good and it was necessary to know what the students thought about the tool both as a development tool and as compared to the industrial software used PL7 4 1 Surveys For better understand the usefulness of the tool created in the year of 2013 2014 surveys were conducted All the students answered in lab time to the survey that was composed by 18 questions of interest to the teaching group Of the 18 questions 3 relating to FEUPAutom were chosen to present in this article The answers ranged from 1 to 5 meaning 1 Fully Disagree 2 Disagree 3 Neutral 4 Agree 5 Fully Agree There were made graphics of the sum of each number and they will be presented next As it can be seen in Figure 4 the first question was FEUPAutom was useful to my learning As the results show there is a good approval of FEUPAutom by the students and they believe it help them learn the matters being discussed ST and Grafcet leading to better results in the course FEUPAutom was useful to my learning 50 0 20 0 30 0 20 0 10 0 1 0 0 EA hu N ua 4 5 Figure 4 Survey question Was FEUPAutom useful to my learning When asked what interface FEUPAutom or PL7 was better for learning and programming the majority of the students agreed that FEUPAutom interface was better than its industrial counterpart PL7 Figure 5 As said in chapter 2 the course is given in too sibling labs and while half the class work with
87. ignificado desta noc o deve ser bem compreendido pelo utilizador pois uma ferramenta poderosa que pode auxiliar na criac o de simulac es Este conceito bastante importante uma vez que A posic o do objeto filho relativa em relac o a do objeto pai Movendo o objeto pai o objeto filho tamb m movido Um objeto filho roda se o objeto pai rodar 2 1 3 Comunicac o Modbus com FEUPAutom A comunicac o entre o FEUPAutom e o FEUPSim realizada atrav s de Modbus TCP que um protocolo muito robusto e que para o utilizador de muito f cil ativac o 1 No FEUPAutom deve a Clicar na caixa de selec o de modbus b Colocar a porta e o nome do anfitriao 2 No FEUPSim deve a Clicar em Host e quando o FEUPAutom comegar a correr a caixa ficar verde Y ModBus IP localhost Port 5502 Host Disconn Figura 3 Modbus do FEUPAutom esq e FEUPSim dir 2 1 5 Grava o e Carregamento de ficheiros Para grava o e carregamento de ficheiros foi utilizada a linguagem XML pela facilidade de edi o e pela sua transversalidade entre plataformas necess rio ter cuido com as mudan as efetuadas diretamente no XML do FEUPSim uma vez que este possui mecanismos de dete o de correp o de ficheiros por parte do utilizador 2 2 Fun es 2 2 1 Cria o de objetos Quer atrav s da barra de inser o de objetos quer pelas op es do menu inserir poss vel introduzir novos objetos na cena Os ob
88. io externo n o explicitamente autorizado Os resultados ideias par grafos ou outros extratos tomados de ou inspirados em trabalhos de outros autores e demais refer ncias bibliogr ficas usadas s o corretamente citados bueno Augue Autor Bruno Miguel Fernandes Augusto Faculdade de Engenharia da Universidade do Porto 11 Resumo A simula o hoje em dia usada em muitas aplica es com grandes benef cios quer para en sino quer em aplica es industriais No ensino existem ainda poucas ferramentas que possibilitem a r pida e gil simula o de sistemas simples e respetivo controlo na l gica dos sistemas orienta dos a eventos discretos no espetro dos Aut matos Program veis Esta a rea de interven o da Unidade Curricular UC Sistemas e Automa o do MIEEC da FEUP Nesta Disserta o desenvolveu se a ferramenta FEUPSim um simulador e SCADA que co munica com o softPLC FEUPAutom tamb m ele atualizado no mbito deste trabalho Foi utili zado o FreePascal Lazarus como ferramenta de programa o livre e aberta com o prop sito de obter aplica es cross platform Foi utilizado ainda o protocolo de comunica es ModBusTCP para tirar proveito de comunica es normalizadas permitindo que as ferramentas desenvolvidas comuniquem com outros equipamentos e aplica es O FEUPSim uma ferramenta que permite ao seu utilizador criar entidades tal como figuras geom tricas imagens sensores etc onde o as
89. iste a possibilidade de definir prioridades entre as transi es divergentes No SFC uma a o pode ser escrita em qualquer uma das 5 linguagens da norma IEC 61131 3 e cada a o executada num determinado momento pr definido pelo o utilizador isto pode ser executada de forma impulsional quando a etapa ativada P1 ou quando desativada P0 de modo cont nuo N ou memorizado S temporalmente limitado L ou atrasado D entre outros Por ltimo importante mencionar o facto de o Grafcet evoluir devido s mudan as de vari veis de entrada enquanto a evolu o do SFC realizada pelo o ciclo de leituras de entradas onde este modelo executado 22 2 5 An lise cr tica do FEUPAutom 21 2 5 An lise cr tica do FEUPAutom 2 5 1 An lise do Grafcet do FEUPAutom face a norma IEC 60848 A ferramenta FEUPAutom usa uma vers o pr pria do Grafcet que embora pr xima da norma IEC 60848 n o a cumpre na totalidade criando uma vers o diferente que os alunos s o forgados a conhecer aquando da sua utilizag o De forma a simplificar a aprendizagem e aproximar o Grafcet usado no FEUPAutom do Grafcet da norma foi realizado um estudo de compara o entre ambas as vers es e um levantamento das melhorias que poderiam ser realizadas no FEUPAutom 2 5 1 1 Exclusividade entre a es cont nuas e memorizadas Contexto Como explicado em 2 4 1 3 uma a o pode ser do tipo cont nuo ou seja s est ativa enquanto a e
90. jetos s o Quadrados Objetos retangulares que permitem criar formas diversas se por exemplo se juntar v rios quadrados filhos com diferentes rota es e tamanhos tamb m poss vel associar uma imagem a face do cubo As suas fun es incluem ter uma velocidade linear e angular Tem para isso uma forma de criar novas linhas de bits que permitem que o objeto tenha diferentes velocidades consoante o bit associado que esteja a TRUE N o se pode ter mais que um bit associado a TRUE pois para a simula o e d um erro Function Add Bits BIT vel_X vel Y vel Ang bit joo v 200 3 00 90 00 DEL bit2 lor v 2 00 5 00 ho 00 El peL bit3 None vw 0 00 0 00 El 0 00 DEL v Figura 4 Fun o associada a um objeto Quadrado C rculos Objetos circulares ou el pticos usando a propriedade scale Em termos de fun es estes objetos t m exatamente as mesmas que os quadrados varias velocidades lineares e angulares Imagens As imagens existem por forma a facilmente existirem anima es com troca de imagens um tapete com movimento um elevador a abrir a porta etc A sua func o consiste ent o em ter v rios bits associados que consoante existe um RE Rising Edge mudam para a imagem que o utilizador definiu Existe v rias imagens para testes na pasta ZFEUPSim Plmages Function Add Imgs BIT Image None v Imgl DEL None v Img2 DEL Figura 5 Func o associada a uma Imagem Luzes
91. lar de 2014 2015 5 3 2 1 1 fase testes iniciais Numa fase preliminar destes testes foi adotada a filosofia de iniciar com um grupo muito restrito de tr s alunos de forma a verificar se o programa era intuitivo e funcional e o que precisaria de ser implementado antes de uma vers o p blica para todos os alunos Estes testes correram excecionalmente bem e a aplica o recebeu elogios por partes dos alu nos assim como algumas sugest es tal como apresentado de seguida 5 3 Resultados Obtidos 55 e Pontos positivos 1 Excelente adig o ao FEUPAutom 2 Permite testar os programas em casa confirmando o seu funcionamento e Sugest es 1 Possibilidade de mover mais que um objeto de cada vez 2 Poder realizar um Reset ao mundo 3 Ter mais que duas velocidades nos quadrados e c rculos 5 3 2 2 2 fase Inqu ritos Depois de analisadas e implementadas as sugest es efetuadas pelos os estudantes da 1 fase de testes e ap s as novas adi es que foram sendo desenvolvidas houve um teste mais alargado e o feedback recebido foi formalizado num inqu rito an nimo a que todos os estudantes respon deram sobre a sua opini o em rela o ao FEUPSim Os resultados desses inqu ritos ser o agora analisados A escala adotada est compreendida entre 1 e 5 onde cada um dos n meros corresponde a 1 Discordo Totalmente 2 Discordo 3 Neutro 4 Concordo 5 Concordo Totalmente As duas primeiras perguntas consistiram n
92. lizado um artigo j submetido e aceite no mbito da confer ncia EDULEARNI5 a decorrer de 6 a 8 de Julho de 2015 em Barcelona Tal artigo intitulado de Development of a student centred tool that promotes deep learning in the technical area of control of discrete event systems pode ser consultado no Anexo C e centra se na quest o mais explorada ao longo desta Disserta o isto na import ncia de criar ferramentas espec ficas que v o de encontro s necessidades dos estudantes O principal foco o FEUPAutom uma vez que aquando da escrita o FEUPSim ainda n o estava completo Al m do artigo foi ainda realizada uma apresenta o virtual para a confer ncia em quest o Em suma pode ser conclu do que todos os objetivos propostos foram cumpridos e que a aplica o criada e a atualiza o efetuada s o de facto uma mais valia para o ensino da UC de Sistemas e Automa o 7 2 Trabalho Futuro Uma ferramenta de ensino nunca est totalmente conclu da e sempre poss vel melhor la Nesta sec o ser o explicitadas algumas das funcionalidades que poderiam ser acrescentadas a ambos os programas desenvolvidos Embora se tenha implementado diversas funcionalidades extra para al m das inicialmente pen sadas o FEUPSim tem ainda muito por onde crescer e se tornar cada vez mais numa ferramenta essencial no ensino A listagem efetuada representa algumas das funcionalidades de valor acres cido poss veis de ser adicionadas ao
93. m 42 dos alunos a responder com a componente m xima de notar que n o existe nenhum aluno que discorde da pergunta Com esta quest o pode concluir se que a curva de aprendizagem do uso do simulador n o acentuada e que com algum tempo investido poss vel um estudante inteirar se de todas as suas funcionalidades Sendo ambos os resultados bastante positivos conclui se que os requisitos n o funcionais 1 e 2 apresentados em 3 2 foram cumpridos com sucesso Ambientei me rapidamente ao simulador O simulador simples e funcional 73 1 10 0 Figura 5 12 Inqu ritos Aptid es do FEUPSim As duas ltimas perguntas de resposta m ltipla prenderam se com quest es mais estruturais do FEUPSim Na primeira foi questionado se o Manual e o Gui o de Exemplos ambos em anexo a esta disserta o tinham sido teis para a compreens o do funcionamento do FEUPSim As ila es a tirar das respostas dos estudantes que a escrita destes documentos foi uma mais valia visto que mais de 80 concorda que ambos os documentos os ajudaram J a ltima quest o um pouco distinta das restantes uma vez que perguntava aos alunos se o FEUPSim com as simula es simples que consegue criar serviria de facto para uma introdu o mais precoce do FEUPAutom UC permitindo assim aos alunos desenvolver um conhecimento mais aprofundado desta ferramenta As opini es s o positivas com 80 dos alunos a concordar que seria sim uma forma
94. mentado Na Tabela 4 3 est representada uma poss vel disposig o dos dados ap s tratamento onde o per odo usado foi de 1 segundo Exemplo de dados retirados do ficheiro criado pelo FEUPSim 26 06 2015 14 58 04 Collision Sensor7 Square6 I0 Presence 26 06 2015 14 58 04 Light LuzVerde NA 02 FE 26 06 2015 14 58 04 Light LuzAmarela NA O1 RE 26 06 2015 14 58 05 Collision Sensor7 Square6 I0 Presence 26 06 2015 14 58 05 Light LuzVermelha NA O0 RE 26 06 2015 14 58 05 Light LuzAmarela NA O1 FE 26 06 2015 14 58 05 Square Square6 NA OO RE_Vel 26 06 2015 14 58 06 Collision Sensor7 Square6 I0 Presence 26 06 2015 14 58 07 Light LuzVerde NA 02 RE 26 06 2015 14 58 07 Light LuzVermelha NA O0 FE 26 06 2015 14 58 07 Collision Sensor7 Square6 I0 Presence De seguida criou se uma representa o na forma de tabela dos dados gerados Tabela 4 3 Dados de de hist rico tratados e dispostos numa tabela Data Hora Tipo Nome Objf Nome ObjZ I O Info 26 06 2015 04 Collision ae Squares JO Presence 26 06 2015 14 58 07 LuzVermelha NA 26 06 2015 14 58 07 Collision Sensor7 Square6 10 Presence Cap tulo 5 Utilizacao e Resultados O FEUPSim uma ferramenta de ensino criada com o intuito de facilitar o desenvolvimento de simula es que ajudem os estudantes da UC de Sistemas e Automa o a aprender os conceitos b sicos de um simulador a n vel industrial e introduzindo o conc
95. mento que o pai Se o objeto pai se tornar invis vel o objeto filho tamb m se tornar 4 2 3 Colis0es Para diferenciar FEUPSim de um SCADA dotando o de capacidades que estes n o possu am foi desenvolvido um sistema de colis es que permite ao utilizador utilizar objetos do tipo Sensor a ser explicado em 4 4 1 7 para realizar colis es com outros objetos e enviar a sinaliza o dessa colis o atrav s de uma entrada Modbus pr definida 34 Implementag o do Simulador 4 3 Arquitetura Estrutura de Dados Foi realizada um diagrama de classes da arquitetura do sistema sendo que a sua vers o final se encontra apresentada na Figura 4 2 Tal como pode ser observado o FEUPSim est ligado a tr s classes distintas e sem estas o seu funcionamento era imposs vel Existe uma liga o Modbus para conectar o simulador a entidades externas uma janela de Entradas Sa das para controlo aut nomo da aplicag o e ainda a Cena onde s o criados os objetos Existem 7 tipos de objetos com atributos e fun es distintas mas que descendem de uma nica classe TGLObject esta possui atributos e fun es que s o comuns a todos os objetos e que podem ser alteradas atrav s das suas propriedades FEUPSim Modbus Running boolean 4 HostName String ModbusConn boolean Port integer Current_Object TGLObject E Host void Save filename string boolean Disconnect void Load filename string bool
96. n e Image esta funcionalidade permite a tais objetos ficarem com uma nova imagem na sua face Visible Visivel Permite tornar um objeto visivel ou invisivel funcionalidade boa se queremos ter objetos que rodem em torno de eixo invisivel Pickable Objeto pode se mover Permite que se selecionado um objeto possa ser movido ou nao Duplicate Duplicar Duplica o objeto com todas as suas propriedades Remove Object Remover Objeto Remove o objeto da cena Anexo B Gui o de exemplos FEUPSim O presente anexo existe por forma aos utilizadores do FEUPSim terem exemplos pr ticos da aplicac o desta ferramenta Escrito na forma de gui o este documento descreve todos os passo necess rios para a cria o de dois exemplos de simula es pass veis de criar com o FEUPSim 15 1 Sem foros de tr nsito 1 1 Comece por criar tr s objetos Luzes 1 2 Mude as cores associadas ao bit de cada uma das luzes de acordo com a ordem de um sem foro neste exemplo iremos ainda mudar a cor frontal do objeto para ficar mais percetivel Y Validate 1 3 Escreva o controlo do sem foro em FEUPAutom 1 4 Por ltimo ligue o F X1_T gt 10 Q2 true x2 T gt 10 EUPSim ao FEUPAutom e corra o programa tae ANS Mo Object WObje Salz0 Total Obja 2805AN HAS FEUPS
97. namento do sistema nesta que s o despoletados avisos de avarias e alarmes de erros ou situa es de emerg ncia Por fim existe ainda a possibilidade de executar remotamente opera es sobre o sistema implementado acionando ou parando determinado componente 9 10 Os SCADAs s o uma camada de software que se posiciona no topo de todo o hardware e inclui normalmente os seguintes subsistemas e Remote Terminal Unit RTU ou Programmable Logic Controller PLC que efetuam as trocas de dados atrav s de I O entradas saidas Uma Interface Homem M quina HMI atrav s da qual o operador controla o processo Redes de comunicag o que interligam os v rios componentes ao sistema e Um hist rico de todo o sistema e Um m dulo de gest o de alarmes Os SCADAs t m uma forte relag o com a interface a que est o associados pois nesta que explicitam todas as mudan as de vari veis do sistema Para al m disso nesta que est o repre sentados os processos que comp em o sistema atrav s de sin pticos ilustrativos das suas fun es Nesta interface s o tamb m inclu dos alguns campos que os operadores podem alterar de forma a melhorar o processo aumentando assim a produtividade de todo o sistema Nas vers es mais recentes destes softwares tem vindo a ser adotada cada vez mais uma pol tica orientada Internet onde os servi os na nuvem conseguem reduzir drasticamente o custo de manuten o e proporcionar aos utilizadore
98. nas vers es antigas que n o cumpriam este requisito 6 2 4 Novas funcionalidades Por ltimo necess rio referir que foram realizadas diversas altera es gr ficas no FEUPAutom tanto a n vel est tico como de funcionalidades Dentro delas destacam se 1 Atualiza o do logo FEUPAutom e da vers o para 5 0 2 Novos bot es de correr e parar o programa que uniformizam o design e posterior inclus o na janela de Grafcet facilitando assim a execu o dos controladores desenhados 3 A tecla Del j funciona para eliminar objetos em Grafcet 4 Novas op es adicionadas ao menu 64 Atualiza o do FEUPAutom 6 3 Resultados Obtidos Por forma a avaliar a qualidade do trabalho efetuado na atualiza o do FEUPAutom foram executados alguns testes comparativos entre a nova vers o em Lazarus e antiga em Delphi Parte dos resultados foram j apresentados em 6 2 1 onde se compara o tempo de compilag o do algoritmo de ambas as vers es com o Pascal Script sendo sempre mais r pido que o DWS usado na vers o antiga Quanto ao novo formato de grava o o XML dada toda a sua versati lidade as melhorias s o not rias tanto a nivel de desempenho e velocidade de grava o leitura como de interpreta o dos dados que se tornam agora muito mais percet veis em termos de or ganiza o e hierarquiza o para um utilizador humano Al m destes fatores o XML unificou ambos os ficheiros que eram criados na vers o antiga do
99. nda o poste do sem foro por forma a tornar a simula o mais atrativa visualmente Isto demonstra que se forem utilizados v rios objetos em conjunto com as funcionalidades at aqui descritas poss vel criar uma simula o muito pr xima da realidade E FEUPSim v1 7 Semaforo_FEUPSim xml a File Window Insert Tools Help STE a World LuzAmarela LuzVermelha LuzVerde SemaforoCai 49 7FPS No Object Select 0 Total 7 Msg Sucess loading Semaforo_FEUPSim Figura 5 9 Compara o entre a simula o de um sem foro e a realidade adaptado de Inttps upload wikimedia org wikipedia commons 9 91 Modern British LED Traffic Light jpg 5 2 Casos de estudo 53 5 2 2 Limpa Para Brisas Como segundo exemplo foi escolhido um limpa para brisas de um carro como poss vel ver na Figura 5 10 Este exemplo mais complexo que o anterior necessitando por isso de uma decomposi o mais detalhada uma vez que cont m quase todos os objetos pass veis de criar De forma a facilitar a explica o de cada elemento que comp e a simula o foram sinalizados na Figura 5 10 os n meros correspondentes seguinte enumera o 1 Para simular a escova foi usado um objeto Quadrado com uma imagem de escova que filho de um objeto C rculo que possui uma velocidade angular permitindo a rota o no eixo central da simula o 2 De seguida foram colocados dois Sensores para que a rota o parasse aquando d
100. ndes Sr mete se em tudo por ser um stressado maior do que eu com o seu pr prio trabalho fazendo com que os meus problemas parecessem menores ao tentar ajud lo Ao Magtista por chegar todos os dias 1105 com boa disposi o e sempre com uma m sica nova para p r na cabe a de todos os presentes E claro a todos os meus amigos que me ajudaram a chegar at aqui Por fim gostaria de agradecer ao meu incans vel orientador o Doutor Armando Sousa por ter acreditado e confiado em mim para a realiza o desta disserta o e mesmo quando o seu tempo livre tendia para o negativo arranjar sempre um bocadinho para me ajudar e ter as reuni es semanais que me mantiveram no ritmo certo Bruno Augusto vii viii What we do for ourselves dies with us What we do for others and the world remains and is immortal Albert Pine 1x Conte do 1 Introdu o 1 1 1 Enquadramento e avs es eie 0 0 0 0 000 ee ee 1 1 2 Objetivos e Motiva o ee 2 1 3 Estrutura do Documento a 2 2 Revis o Bibliogr fica 3 2 1 Simuladores de automa o ee 3 ZLI SIMTWO scans eased ee OG wok ade Seared ga be aa we 4 212 Factory VO aa as eee ds ed Boh R ee A aa a a S 2 1 3 Compara o see ra enanas as ee ee cado 6 22 SCADA es mi do pd balas a o a E 221 CiteciSCADA de deca di A ee id amp 8 22 2 VILO E e e He OS Cl ee ee oe ee eS 8 22 3 A ses sects sopra ye dee Ba E do el leche Bk CE 9 23 SOMPLE oi sas
101. nestes sistemas de simula o perfeito Uma das maiores dificuldades consiste em simular de forma precisa o sistema em causa e para al m disso por vezes o custo de aprendizagem da programa o destes softwares demasiado grande face aos benef cios referidos 1 De seguida ser o descritos 2 simuladores de automa o importantes no contexto da prepara o para a disserta o a ser realizada uma vez que ambos s o utilizados em ambiente educacional 4 Revis o Bibliogr fica 2 1 1 SimTwo O SimTwo 2 um ambiente de simula o gratuito desenvolvido na FEUP pelo Professor Doutor Paulo Costa e tem como grande foco o r pido desenvolvimento de simula es funcionais tanto a n vel educacional como de investiga o poss vel simular rob s m veis omnidirecionais ou n o manipuladores industriais entre outros Estes rob s possuem um elevado grau de realismo de movimentos uma vez que a sua din mica obtida atrav s da decomposi o dos rob s em corpos r gidos e motores el tricos tal como referenciado em 3 Toda a simula o controlada atrav s de um c digo desenvolvido pelo utilizador em linguagem Pascal Para conseguir manter uma interface simples ser robusto e ao mesmo tempo ser muito vers til este programa utiliza v rias bibliotecas livres para facilitar o seu desenvolvimento Dentro delas destacam se a GLScene 4 que permite a virtualiza o de objetos em tr s dimens es a biblioteca Open Dynamics
102. ng the two applications for in depth study of real time interac tion consider extending to other communication protocols tests in real environments and eventu ally automate the validation of monitoring evaluations Keywords Simulation SCADA PLC SoftPLC Automation Education Discrete Events vi Agradecimentos Em primeiro lugar quero agradego aos meus pais por todo o apoio ao longo destes 23 anos onde foram o pilar de toda a minha vida pessoal e acad mica Foram muitas as horas que perderam comigo sem nunca exigir menos que m ximo e gracas a eles encontro me aqui nesta ltima etapa antes de partir para o mundo laboral minha namorada Ana Miranda aka Licas quero agradecer por todo o apoio que me deu ao longo destes n o t o curtos 5 meses de disserta o pela paci ncia de me ensinar a diferen a entre o tem e o t m por todas as horas ao meu lado na sala 1105 onde pass vamos por vezes tardes inteiras sem nunca falar pois cada um estava a concentrado no seu trabalho e finalmente pelos passeios de 10 mins que faz amos quando eu come ava a stressar demasiado porque algo n o funcionava como eu tinha projetado Quero ainda agradecer ao grande X vitor por vir sempre sexta feira com hist rias novas para contar por toda a amizade demonstrada ao longo do curso onde fizemos um site de venda de tabletes um mini segway b bado ou at mesmo um trabalho de 20 valores sobre o comboio mais r pido do mundo Ao Miguel Ferna
103. o Na Unidade Curricular UC Sistemas e Automa o do segundo ano do Mestrado Integrado em Engenharia Eletrot cnica e de Computadores MIEEC da Faculdade de Engenharia da Uni versidade do Porto FEUP s o apresentados aos estudantes os principais conceitos dos sistemas de automag o modernos O programa vasto e inclui uma grande variedade de exemplos pr ticos tais como a implementa o de M quinas de Estado Grafcets Redes de Petri entre outros em que os alunos podem aplicar os conhecimentos adquiridos No entanto a visualizac o dos resultados do controlo do sistema autom tico criado fica por vezes aqu m das expectativas n o existindo ainda uma interface onde estudantes ou professores consigam projetar de forma simples um simulador dos elementos que foram abstratamente con trolados Na ind stria existem softwares espec ficos que permitem a simula o de diferentes m quinas rob s e at f bricas inteiras para verificar e validar o correto funcionamento Desta forma as empresas garantem que n o ter o problemas quando colocarem o sistema real a funcionar No ensino os simuladores mais desenvolvidos est o muito focados na cria o de simula es de rob s ou bra os robotizados deixando espa o cria o de simula es que auxiliem os estudantes no controlo de sistemas mais simples Todo o controlo realizado numa ferramenta FEUPAutom criada de raiz pelos os professores da UC para aplica o nesta Come ando
104. o mais eficiente do que em simuladores que apenas usam caracter sticas lineares Por ltimo importante referir que este programa usado em diversas Unidades Curriculares do curso de Eletrot cnica da FEUP tendo obtido sempre cr ticas positivas por parte dos alunos devido sua facilidade de utiliza o e programa o 2 1 2 Factory I O O Factory I O um simulador em tempo real de automa o desenvolvido pela empresa por tuguesa Realgames 5 Este software capaz de simular uma f brica industrial e ligar se com as tecnologias mais comuns de automa o tanto para treino como para uso educacional A simu la o inclui gr ficos e f sica de objetos de alta qualidade inspirada na ind stria de automa o e transformando assim toda a experi ncia muito mais realista 6 O m todo de funcionamento faz uso de bibliotecas compostas por componentes que podem ser facilmente arrastados para a cena a ser simulada e usar esses componentes em testes de tempo real Alguns dos componentes pass veis de criar com este simulador s o 7 e Tapete de transporte de objetos e Alinhadores e pushers e Sensores capacitivo indutivo e tico e Bot es emerg ncia in cio e paragem e Indicadores luminosos e Elevadores e bra os de pick amp place e Plataformas escadas e prote es O fornecedor deste software garante que poss vel criar e simular todos os componentes men cionados de forma r pida e efic
105. o na aprendizagem das 5 linguagens definidas pela norma que seria recuperado uma vez que todos os PLCs poderiam ser programados da mesma forma Al m de serem definidas as linguagens s o tamb m apresentados conceitos sobre tipos de dados estrutura o organiza o dos programas e configura es No mbito desta prepara o para a Disserta o apenas ser o focadas as linguagens de progra ma o definidas pela norma com especial aten o linguagem gr fica SFC 21 Esta norma possui ent o cinco linguagens de programa o divididas em duas categorias gr ficas e textuais e Gr ficas Function Block Diagram FBD Ladder Diagram LD Sequential Function Chart SFC e Textuais Instruction List IL Structured Text ST 2 4 3 Grafcet vs SFC Foi realizado um estudo comparativo com o Grafcet sobre linguagem SFC uma vez que esta uma adapta o da norma IEC 60848 estudada em 2 4 1 Primeiramente necess rio referir que o objetivo de ambas as linguagens diferente En quanto o SFC projetado para ser instalado num controlador o Grafcet definido na norma apenas uma representa o que exprime o comportamento que um controlador deve executar Enquanto no Grafcet da norma quando existe uma situa o de transi o divergente do tipo ou da responsabilidade do designer garantir que as transi es s o exclusivas no SFC todas as transi es s o exclusivas uma vez que ex
106. omes in full alignment with the ideas promoted by the EUR ACE referential for the accreditation of engineering programs and also in strong consonance with the ideas defended by the Bologna process The course includes lab work and a part of those uses Problem Based Learning PBL methodology In the last decade the professors of the mentioned course have tried to limit the usage of real world industrial equipments because of budget concerns always without hindering the learning process Adequate simulation tools were sought on the market but not found mainly because the needs of a full blown engineer are frequently not the same as those of an early engineering student At that point the decision was made to develop an in house tool adequate for students Industrial grade equipment was not totally set aside only reserved for latter stages and the actual usage strategy allowed the number of equipments to be halved The article will go on briefly describing the FEUPAutom tool and new strategies available for lab classes and PBL As control groups would be unethical students quiz data from the two last editions of the course are used to evaluate learning self assessed Grading strategy and coordination with the university s LMS is also addressed Final grades of the course and satisfaction are also discussed The students assessment is that the FEUPAutom tool is very useful for the learning process and easier to use than the available indust
107. on vel para os objetos do tipo Quadrado Bot o e Imagem esta funcionali dade permite a tais objetos ficarem com uma nova imagem Remove Image Remover Imagem Tal como o seu nome indica esta funcionalidade remove a imagem da face de um certo objeto Visible Vis vel Permite tornar um objeto vis vel ou invis vel Esta funcionalidade bastante vers til e possi bilita por exemplo possuir colis es com objetos invis veis Pickable Objeto pode se mover Quando selecionada permite que um objeto selecionado possa ser movido com o rato 4 4 Funcionalidades Implementadas 39 Duplicate Duplicar Duplica o objeto com todas as suas propriedades A implementa o realizada apresentado no algoritmo 1 que mesmo n o se encontrando completo uma vez que s complementa a duplica o de objetos Quadrados serve para explicar atrav s de pseudo c digo esta fun o Algoritmo 1 Duplicar objeto Entrada Objetol a duplicar Sa da Objeto2 duplicado 1 2 10 11 3 4 5 6 7 8 9 if Objetol NULL then exit else if Objetol NomeDaClasse Quadrado then Objeto2 NOVO Quadrado Copiar Objetol Objeto2 Objeto2 Pai Objeto1 Pai else Processo id ntico para outras classes de objetos end if end if Remove Object Remover Objeto Remove o objeto da cena mas mant m todos os seus filhos Na Tabela 4 2 apresentado um resumo de quais as a
108. ores redundantes para uma maior seguranca ao n vel de falhas e Cria o de gr ficos anima es e interfaces com o utilizador de alta qualidade e Gest o de alarmes avan ada com v rios tipos de alarmes filtrados atrasados m ltiplos e Gr ficos de tend ncia e Hist rico em tempo real e Duas linguagens criadas de raiz para facilitar o uso do software e garantir que as aplica es criadas s o flex veis e usam sempre o m ximo potencial Cicode e CitectSCADA VBA e Al m de incluir uma vasta gama de drivers 100 permitindo ligar a v rios controladores possui um cliente OPC Open Platform Communications standard na ind stria de conex o a equipamentos e existe ainda uma Application Program Interface API para conex o com aplica es criadas pelos clientes e Uma extensa biblioteca de conhecimentos online que acumula experi ncia d vidas e deta lhes t cnicos de varios utilizadores ao longo dos anos 2 2 2 Winlog O Winlog 12 um pacote de software que permite a cria o de aplica es SCADA da em presa italiana Sielco Sitemi Este pacote usado em contexto educacional uma vez que possui uma vertente gr tis denominada Winlog lite que embora n o contenha todas as funcionalidades da vers o paga permite aos alunos desenvolver pequenas aplica es funcionais e simples Toda a ambienta o e desenvolvimento de aplica es permite aos alunos adquirir conhecimentos ful crais da import ncia dos SCADAs
109. oss vel examinar o estado das entradas e sa das do sistema e for las para verificar o correto funcionamento antes de ligar o simulador ao FEUPAutom Na janela de Propriedades dir na Fig poss vel verificar e modificar em tempo real as propriedades que s o comuns a todos os objetos Name Name of Object O C io se Color Transparency E E e Teal O O a3 O O a4 O O as O O 06 O O q O O 08 O O as O O aio O m O ai O n2 O ai2 O 13 O 013 KM cancel of Validate PT na PTY MA Figura 2 Janela de IO esq e de Propriedades dir 2 Execuc o e Simulac o Existem dois modos de execuc o a edic o na qual possivel criar e desenhar o simulador e a simulac o em si onde o utilizador pode verificar o funcionamento do simulador criado No entanto antes de esclarecer os modos de edic o e simulac o importante explicar algumas no es e conceitos inerentes ao simulador criado 2 1 Noc es importantes 2 1 1 Cena A Cena o local onde os objetos s o criados e aqui que ocorre toda a simulac o Todos os objetos s o criados na posic o 0 0 0 podendo ser facilmente deslocados e colocados numa posic o pretendida clicando com o bot o esquerdo do rato e arrastando os 2 1 2 Filhos A noc o de filhos aqui apresentada est relacionada com o que em programac o se chama child tendo como significado a inferioridade hier rquica de um objeto em relac o a outro Na aplicac o criada o s
110. permitisse a cria o de Simuladores SCADAs por parte de estudantes e professores Tal fer ramenta devia estar intrinsecamente ligada ao FEUPAutom e possibilitar a simula o da maior quantidade de cen rios poss veis Para cumprir todos os requisitos propostos o projeto foi desen volvido por forma a tornar a ferramenta o mais gen rica poss vel deixando a cargo do utilizador o processo de desenho das simula es Dentro de todas as funcionalidades implementadas no FEUPSim destacam se a diversidade de objetos pass veis de simular a simplicidade da interface o sistema de colis es implementado o hist rico de eventos e ainda a facilidade de grava o leitura das simula es criadas Com estas funcionalidades foi poss vel criar diversas simula es para testes da ferramenta tendo estas se revelado um sucesso a n vel de exemplo para os estudantes Para al m disso estes testes podem ser considerados uma prova da viabilidade do uso do FEUPSim na ind stria como um SCADA dada a sua possibilidade de funcionar remotamente do centro de controlo ainda de referir que todos os requisitos e objetivos inicialmente propostos foram cumpridos e validados tanto pela a an lise cr tica efetuada como pelos estudantes da UC Na atualiza o do FEUPAutom para Lazarus foram encontradas dificuldades devido princi palmente inexist ncia de diversas bibliotecas que eram utilizadas na vers o antiga programada em Delphi Todos os problemas foram
111. peto e o movimento ao longo do tempo dessas en tidades depende de entradas e sa das do FEUPAutom Como estrat gia para manter facilidade de utiliza o o sistema foi mantido em 2D apesar de poder futuramente ser alargado a 3D Como SCADA o FEUPSim pode ser ligado a equipamentos reais ou outras aplica es e permite a visu aliza o interessante incluindo anima es de um sistema remoto Existe ainda a possibilidade do registo temporal dos detalhes relevantes hist rico do sistema As facilidades de manipula o de projetos do FEUPSim e do FEUPAutom foram criadas atualizadas por forma a tirar proveito da grava o de ficheiros XML sem que se perdesse compatibilidade com projetos antigos O FEUPSim foi testado com sucesso atrav s de diversos casos de estudo um sem foro um elevador e um limpa para brisas A aplica o foi tamb m testada pelos estudantes da UC menci onada e validada na forma de inqu ritos que revelaram um elevado interesse e aceita o relativa mente ao trabalho desenvolvido Espera se assim que os professores e os pr prios estudantes de futuras ocorr ncias da UC possam criar as suas pr prias simula es No fim desta disserta o s o tiradas conclus es dos benef cios que tanto a atualiza o do FEUPAutom como a cria o do simulador FEUPSim trazem UC As duas novas aplica es fo ram extensivamente testadas em Windows tendo sido ainda realizados alguns testes com sucesso em Linux e espera se brevement
112. poletado e cha mado a cada 20 milissegundos o que se traduz num valor de cad ncia de 50 Fotogramas Por Segundo FPS Este algoritmo presente na Figura 4 9 est estruturado da seguinte forma 1 Verificar a exist ncia de RE FE das vari veis de sistema do FEUPSim Colocar todas as entradas a FALSE 2 Se o programa estiver em modo de execu o e houver uma conex o Modbus iniciado o processo de simula o a verificado se existem colis es e ou bot es a ser clicados na interface as entradas s o escritas consoante o valor associado b realizado um ciclo que itera todos os objetos da Cena e para cada objeto aplicado o algoritmo alg2 apresentado abaixo na Figura 4 10 executando a fun o que lhes est associada 3 Quando o ciclo termina a Cena atualizada para contemplar as a es dos objetos Figura 4 9 Ciclo de atualiza o da simula o 4 5 Algoritmos desenvolvidos 41 4 5 1 2 Verifica o das fun es Para garantir a execu o das fun es associadas a todos os objetos foi desenvolvido um al goritmo recursivo que utiliza como entrada um objeto e tem por miss o executar as fun es asso ciadas a este Tal algoritmo encontra se representado no fluxograma da Figura 4 10 As fun es presentes na Figura foram explicadas em 4 4 1 1 Em primeiro lugar verificado o tipo de objeto passado a esta fun o a Se for do tipo Quadrado o
113. que se criasse o simulador que ser de seguida apresentado 3 2 An lise de Requisitos A fase inicial mais importante de qualquer projeto de alguma complexidade consiste no levan tamento de requisitos que o sistema dever cumprir Este normalmente realizado com o cliente e tem como objetivo enumerar todas as funcionalidades que o sistema deve cumprir quer por im posi es restri es do cliente quer por sugest es do projetista O levantamento realizado por forma a que no final exista um produto de alta qualidade e que vai de encontro ao que o cliente deseja Por estas raz es a primeira fase de proje o foi o levantamento de requisitos em conjunto com o Professor Doutor Armando Sousa sobre como deveria ser o Simulador SCADA e Requisitos Funcionais 1 O projeto dever ser realizado por forma a ser pass vel de integrar com o FEUPAutom no futuro Possibilidade de guardar o desenho da simula o bem como as fun es num ficheiro Poder carregar ficheiros guardados O ficheiro tem de ser execut vel a Pos Deve ser poss vel criar v rios tipos de objetos Bot es Indicadores Luminosos Formas Geom tricas Imagens Sensores e Requisitos n o Funcionais 1 Ter uma interface simples e apelativa 2 O uso da aplica o dever ser intuitivo 3 A aplica o dever ser vers til de forma a permitir construir v rias simula es dife rentes 4 Dever existir um manual de instru es 3 3 Con
114. resolvidos quer por cria o de novos m todos e algorit mos quer por uso de novas bibliotecas Desta forma garantiu se que o FEUPAutom se encontra apto a posteriores desenvolvimentos e mais pr ximo de se tornar um programa multi plataforma ainda de ressalvar todo o trabalho realizado na transforma o dos ficheiros de grava o leitura 65 66 Conclus es e Trabalho Futuro para o formato XML que sendo standard abre hip teses adi o de mais vari veis de projeto de forma simples e sem quebrar a compatibilidade com vers es antigas Uma das mais importantes decis es tomadas nesta Disserta o prendeu se com ambiente de desenvolvimento escolhido No final a escolha pelo Lazarus revelou se em tudo acertada uma vez que embora as duas aplica es tenham sido desenvolvidas sob o SO Windows o FEUPSim j compila e executa tanto em Windows como Linux e por sua vez o FEUPAutom compila e executa em Windows est em testes na plataforma Linux Por todos os resultados obtidos poss vel constatar que os estudantes de facto t m muito a ganhar com o desenvolvimento de ferramentas criadas de acordo com as suas necessidades e que esta solu o vi vel no mundo educacional Ambas as ferramentas abordadas nesta Disserta o surgiram de diferentes necessidades dos estudantes da UC de Sistemas de Automa o e foram recebidas por estes como um fator decisivo na sua aprendizagem Al m de todo o trabalho j mencionado foi ainda rea
115. rial counterpart Continuous improvement efforts have tried to push students to adequate PBL work only possible with the tool with some results hinting deep learning in the technical area at stake Some final thoughts lessons learned and future work are also present in the article Keywords Innovation engineering automation learning technology in education 1 INTRODUCTION In this chapter it will be made a brief synopsis of the faculty program and course where the tool is used 1 1 Faculty Faculty of Engineering of the University of Porto FEUP is a renowned faculty of Portugal being among the best by the international standards and European rankings Its activities include education research and innovation in the fields of engineering FEUP tries the best to give the tools to both students teachers researchers and all the staff so that it can train develop and form the best engineers In numbers FEUP community is one of the biggest in Portugal with an total area of 93 918 m2 counting with 8 199 students 547 Teaching staff and 301 non academic staff in the 2013 2014 year 1 2 Program The Integrated Master in Electrical and Computer Engineering is then one of the 9 possible Integrated Masters to take in FEUP It distinguish himself by giving the students solid and fundamental scientific training in the fields of Electrical and Computer Engineering in the first two years and then in the 3rd year it gives the possibility to
116. rio Sousa da FEUP e que pretende compilar c digo das linguagens IL SFC ST para c digo ANSI C The PLCOpen Editor Edig o de programas nas 5 linguagens presentes na norma IEC 61131 3 FBD IL LD SFC ST 2 3 3 ISaGRAF O ISaGRaf 17 um software industrial desenvolvido pela ICS Triplex ISaGRAF que usado para controlo de variados produtos incluindo micro controladores PLC s PAC s entre outros Al m de possuir as cinco linguagens de programa o da norma IEC 61131 3 respeita na totali dade essa mesma norma e a norma IEC 61499 Al m de ser poss vel programar os controladores o software possui um sistema online de depura o uma ferramenta de simula o de gest o de projetos e ainda poss vel criar uma HMI para visualiza o de vari veis e componentes Dado possuir tantas funcionalidades a curva de aprendizagem deste software muito extensa Devido a isto e ao facto de possuir um sistema de licenciamento bastante caro normalmente n o usado por pequenas empresas No entanto ineg vel que atualmente uma das ferramentas de programa o industrial mais completas e fi veis do mercado 2 3 4 Sysmac Studio O Sysmac Studio um software criado pela empresa Omron 18 que concentra em si todas as funcionalidades de controlo de m quinas num ambiente nico e integrado Neste poss vel realizar a programa o a configura o a monitoriza o e a simula o de todas as m quinas j preparadas para a
117. ript que se encontram estandardizadas muito f cil encontrar informa o sobre como programar tanto o lado do servidor como o cliente Para al m disso suporta ainda comunica o Modbus e OPC fun es de alarme m ltiplas base de dados e realiza o de relat rios 10 Revis o Bibliogr fica 2 3 SoftPLC Hoje em dia uma das decis es cruciais na industrializa o dos processos de uma empresa con siste na escolha do sistema que controla a sua f brica Com a evolug o cada vez mais acentuada dos computadores em termos de desempenho diminui o de custo aumento de fiabilidade e prin cipalmente facilidade de integra o e programa o o uso destes sistemas tem vindo a aumentar em relag o ao uso nico de PLCs Embora os PLC tenham sido desenvolvidos especificamente para substituir as caixas de inter ruptores e pain is de rel s melhorando a flexibilidade e fiabilidade destes mas mantendo a sua robustez e desempenho o seu desenvolvimento tem vindo a diminuir face constante evolug o verificada no mundo dos computadores Com esta evolug o cada vez mais os computadores t m vindo a ser criados com funcionalidades acrescidas que at ao momento eram somente carater s ticas dos PLC A adi o de sistemas operativos capazes de trabalhar em tempo real tamb m tem vindo a contribuir para esta mudanga Complementarmente ao referido foram sendo criados softwares que transformam os computa dores no que conhecido como um soft
118. rta de erro Para uma melhor perce o de qual o sensor de seguran a que colidiu este come a a arder tal como ilustrado na Figura 4 7 Figura 4 7 Exemplo do uso de um sensor do tipo Stop 38 Implementag o do Simulador 4 4 2 Menu de Contexto Clicando com o bot o direito do rato em cima de um objeto poss vel chamar um Menu de Contexto ou menu popup que realiza determinadas a es consoante o objeto clicado Properties Ctrl P Add as Child Of Collision Add Change Image Remove Image Visible Pickable Duplicate Ctrl D Remove Object Ctrl R Figura 4 8 Menu de Contexto para um objeto Quadrado exemplo Tal como a Figura 4 8 ilustra existem diversas a es pass veis de serem realizadas tal como apresentado abaixo Properties Propriedades Chamar a janela propriedades do objeto ver mais sobre as Propriedades em 5 1 3 Add as Child Of Adicionar objeto como filho de Tal como explicado em 4 2 2 uma das funcionalidades cruciais consiste na hierarquiza o de objetos e clicando nesta op o poss vel tornar o objeto selecionado como filho de outro Collision Add Adicionar a colis es Apenas dispon vel para os objetos do tipo Quadrado e C rculo esta funcionalidade per mite a tais objetos colidirem ou n o com os sensores Dando assim total liberdade ao utilizador de escolher quais os objetos que colidem Change Image Mudar Imagem Apenas disp
119. s perception of the interest of using the software tailored for their needs is clear by quiz answers where 91 out of 194 students fully agree that the tool is useful for their learning even more so when compared with the other commercial tool used that is admittedly out of date The FEUPAutom software tool is freely available for download and student can use it at home in other courses and is even available to other schools and can control simulated or real environments Such advantages are still to be even further explored 6 FUTURE WORK The FEUPAutom software was tested under Linux and OS X via the Wine tool but some effort is being made to make it truly cross platform and only using open source software in it development As for features the main objectives are to implement Step by Step control so that the students have one more powerful tool to debug their code and algorithms Work is being done in order to complement FEUPAutom by allowing the students to create their own simulations such as semaphore elevator wind shield wipers This new software should be designed to be truly portable easy to use and generic so that the students could create a great variety of simulation from their own imagination 7 ACKNOWLEDGEMENTS This work is partially financed by the ERDF European Regional Development Fund through the COMPETE Programme operational programme for competitiveness and by National Funds through the FCT Funda
120. s em tempo real um maior n mero de informa es Dada a import ncia dos SCADAs na supervis o e controlo autom tico foi realizado um estudo sobre tr s softwares que permitem o desenvolvimento de SCADAs A escolha foi realizada de acordo com tr s fatores A recomenda o de uma das maiores empresas a n vel internacional no ramo de automa o a Schneider que recomenda o CitectSCADA Um software utilizado a n vel educacional e gratuito o Winlog E por ltimo como cada vez a Internet um fator decisivo no crescimento de qualquer empresa foi estudado o Integraxor que completamente baseado em tecnologias web 8 Revis o Bibliogr fica 2 2 1 CitectSCADA A Citect foi uma companhia comprada pela Schneider Electric em 2008 que era especializada na cria o de software para a ind stria de automa o e controlo O seu produto principal o CitectSCADA que consiste num pacote de software l der de mercado na rea dos SCADAs Este teve a sua vers o inicial em 1987 e desde ent o tem sofrido v rias melhorias por forma a manter se sempre na vanguarda de toda a tecnologia neste setor 11 A import ncia deste software para a disserta o a ser realizada prende se no facto de este ser um dos mais avan ados sistemas de cria o de SCADAs do mundo e por isso um exemplo de boas pr ticas a seguir Algumas das funcionalidades mais importantes do CitectSCADA sao e Arquitetura escal vel e fi vel permitindo ainda m ltiplos servid
121. s es ou cliques de bot es ainda importante esclarecer alguns conceitos inerentes ao simulador criado e que ser o uti lizados ao longo da Disserta o 4 2 1 Cena A Cena o local da interface onde os objetos s o criados e onde ocorre toda a simula o Todos os objetos s o criados na posi o 0 0 0 podendo ser facilmente deslocados e colocados noutra posi o clicando com o bot o esquerdo do rato e arrastando os para a posi o desejada Este elemento fulcral ao simulador e tal como os objetos renderizado pelo GLScene 4 2 2 Filhos Childs A no o de filhos aqui apresentada est relacionada com o que em programa o se chama child que tem como significado a inferioridade hier rquica de um objeto em rela o a outro Na aplica o criada este significado deve ser bem compreendido pelo utilizador pois uma ferramenta poderosa que pode auxiliar na cria o de simula es mais complexas e completas Dentro das funcionalidades implementadas destacam se e A posi o do objeto filho relativa em rela o do objeto pai ou seja se a posi o absoluta em rela o Cena de um objeto filho 3 3 0 e se o objeto pai estiver na posi o 1 1 0 enta a posi o do objeto filho indicada ser de 2 2 0 e Movendo o objeto pai o objeto filho movido na mesma raz o de deslocamento e Se o objeto pai rodar o objeto filho tamb m roda Um objeto filho sofre do mesmo escalona
122. ste um RE Rising Edge bit passa de FALSE para TRUE ou um FE Faling Edge bit passa de TRUE para FALSE da vari vel associada tal como pass vel de ver na Figura 4 6 Function BIT Color oo v FE bit White v RE bit E Blue y Figura 4 6 Fun o associada Luzes 4 4 1 6 Bot es Assim como em qualquer interface se recorre a bot es para efetuar altera o de estado neste simulador poss vel utilizar objetos do tipo Bot o t m como fun o enviar sinais de entrada para o FEUPAutom Existem dois tipos de bot es e Click O valor da entrada TRUE enquanto o utilizador mant m o bot o do rato esquerdo para baixo e quando este deixa de clicar o bit associado fica a FALSE e Switch Com este segundo bot o o valor do bit associado trocado a cada clique por parte do utilizador representado por exemplo um interruptor de luz 4 4 1 7 Sensores Por ltimo s o apresentados os sensores do FEUPSim Este tipo de objeto permite tal como os bot es enviar sinais de entrada para o FEUPAutom mas em vez de funcionar atrav s de cliques do rato foi implementado um sistema de colis es que permitiu a cria o de dois tipos de sensores e Presence Sensor de presen a em que enquanto colide com outro objeto mant m o valor do bit associado a TRUE e quando deixa de colidir coloca o a FALSE e Stop Modo de seguran a que quando algum objeto colide com um sensor do tipo stop a simula o para e dado um ale
123. t had to be free easy to use and portable This softPLC FEUPAutom is now fully operational and with many years of development it is a fully mature tool to aiding in the class of SA and others 3 TOOL FEUPAUTOM FEUPAutom 1 is a free softPLC designed in FEUP by Professor Armando Sousa As said in chapter 2 it had its origin in the need to create a software that would serve as the viable substitute to the expensive PLC s needed to the course 3 1 Features and Application It main characteristics are portability easy to use and program and very intuitive This way it can be used in the teaching and in the development of automatic control programs both in the classes an at home Letting not only the students complete their lab work at home if they have no time in the classes but also allowing the students to further deepen their knowledge in the automation field once there are plenty of exercises they can solve using this software has the main control program This software can be programmed in ST or Grafcet While the first language was created following the definitions of IEC 61131 3 2 the second is an adaptation of IEC 60848 3 in order to better suit the needs of the matters being taught There is also support for Modbus TCP communication which translates into huge facility of sending and receiving data thereby making it possible to connect FEUPAutom with external simulations In Figure 1 is shown an example of the development
124. tagens para os estudantes Na Figura 1 1 apresentado o conceito do sistema implementado Tal como observ vel o simulador criado FEUPSim um programa que comunica com FEUPAutom atrav s de entradas e sa das que permitem executar fun es nos objetos do simulador tornando o interativo Toda a comunica o entre os softwares transparente para os utilizadores atrav s do protocolo Modbus FEUPAutom FEUPSim controlo simulador Figura 1 1 Conceito geral do sistema 1 3 Estrutura do Documento Para al m deste cap tulo introdut rio este documento composto por mais cinco cap tulos No cap tulo 2 realizada uma descrig o do estado da arte de v rios componentes de interesse para a realiza o da disserta o tal como os simuladores de automa o SCADAs defini o de SoftPLCs e uma descrig o das normas aplic veis No cap tulo 3 s o apresentados todos os procedimentos seguidos na projeg o do simulador No cap tulo 4 efetuada uma descrig o da metodologia seguida e demonstradas todas as funci onalidades implementadas do simulador No cap tulo 5 apresentado o simulador no seu estado final alguns casos de estudo efetuados e discutidos os resultados obtidos No cap tulo 6 s o demonstradas todas as atualiza es executadas ao FEUPAutom Por fim no cap tulo 7 s o apresentadas as conclus es de todo o trabalho efetuado e ainda referenciado algum trabalho futuro pass vel de ser executado
125. tapa est ativa ou do tipo memorizado quando o valor atribu do fica guardado em mem ria No FEUPAutom embora exista a possibilidade de realizar a es de ambas as formas essa op o mutuamente exclusiva isto ora se pode ter a es cont nuas e n o memorizadas ou o inverso Mudan a Sugerida Uma poss vel resolu o para aproximar o FEUPAutom da norma seria para cada a o exis tirem duas reas de c digo uma em que se realizariam a es do tipo cont nuo e outra onde se realizariam a es do tipo memorizado Desta forma seria tamb m poss vel implementar eficien temente as a es memorizadas usando uma ferramenta visual onde os alunos apenas escolheriam quando a a o seria memorizada na ativa o de uma etapa RE na desativa o de uma etapa FE ou na eventualidade de um evento C tal como ilustrado na Figura 2 12 i E 7 Code Area 2 Continuos Actions Po RB l lt gt Stored Actions Figura 2 12 Integra o de a es continuas e memorizadas no FEUPAutom 22 Revis o Bibliogr fica 2 5 1 2 Vari veis temporais associadas s etapas Contexto Segundo a norma IEC 60848 uma a o ou uma transi o temporalmente dependente deve ser realizada no formato tl t2 tal como foi descrito em 2 4 1 3 e 2 4 1 2 No entanto no FEUPAutom n o utilizada esta nota o em nenhum dos casos recorrendo se em alternativa a uma vari vel extra que realiza a contagem do tempo
126. the look and movement over time of these entities depends on inputs and outputs of FEUPAutom As a strategy to maintain ease of use the system was kept 2D although 1t may be extended in the future to 3D As SCADA the FEUPSim can be linked to real equipment or other applications and allows interesting viewing including animation of a remote system There is also the possibility of temporal record of relevant details history system The handling features of FEUPSim and FEUPAutom projects were created updated in order to take advantage of the XML file recording without losing retro compatibility with older projects FEUPSim was tested with success through several case studies a traffic light a lift a clean wind shield The application was also tested by the students of course mentioned and validated in the form of surveys which have shown the high interest and acceptance in relation to the work developed It is expected that teachers and the students themselves for future occurrences of the course can create their own simulations At the end of this Dissertation conclusions are drawn to both the update of FEUPAutom and the creation of FEUPSim simulator bring to course The two new applications were extensively tested on Windows and there were also some successfully tests on Linux and is expected to make tests under Mac OS X in the near future The platform tools will be made available free of charge to the community Future work includes integrati
127. todos os passos dados assim como dificuldades e solu es encontradas O primeiro passo na migra o do FEUPAutom consistiu em converter todo o seu c digo por forma a que a ferramenta compilasse em Lazarus Tendo este novo IDE sido criado como alterna tiva gratuita ao Delphi a sua equipa de desenvolvimento fornece uma ferramenta que possibilita a convers o de projetos criados em Delphi para Lazarus Uma vez efetuada esta convers o autom tica surgiram diversos problemas A inexist ncia de bibliotecas e componentes que eram utilizados no Delphi impediram que existisse desde logo uma vers o preliminar funcional do FEUPAutom Para partir o problema em diversos peda os que pudessem ser tratados individualmente todo o c digo e componentes n o existentes foram comentados e foi realizada uma lista de tarefas Para se chegar primeira vers o compilada do FEUPAutom em Lazarus n o foi necess rio realizar altera es dr sticas ao c digo fonte uma vez que o processo autom tico de convers o j tinha efetuado parte da atualiza o necess ria No entanto foi realizado bastante trabalho a n vel de convers o de par metros das interfaces e altera o de c digo relativamente execu o de ficheiros FEUPAutom Uma vez compilado o FEUPAutom em Lazarus foi poss vel aferir quais os m dulos funcionais e quais os n o funcionais Ser o agora descritas todas as adapta es modifica es realizadas e melhorias implementadas a todos os m
128. tulo 4 uma vez que se tratam de funcionalidades que n o fazem parte base do simulador mas sim da sua componente de utiliza o 5 1 1 1 Barra de menus A barra de menus permite ao utilizador realizar diversas tarefas Figura 5 2 3 New Ctrl N Inputs Outpus Ctrl I Add Square shift F EM Screenshot Shift A 7 About Fl ZF Open Ctrl O Add Circe e AL Br na Color si EM Online Help F2 Save Ctrl S ae ae oe Al Biri Ru EY Local Help F3 Hf Add Light Shift P eS ex Add Text Shift S Add Button Shift l a Add Sensor Shift M Figura 5 2 Vista individual de cada menu File Menu Ficheiro New Cria o de uma nova simula o Open Abertura de um projeto gravado anteriormente Save Grava o do estado atual do projeto Exit Fecho da aplica o Window Menu Janelas Visualizar ou n o janela de entradas sa das Insert Menu Inserir Adicionar objetos Cena existindo para cada um atalho de r pida cria o Tools Menu de ferramentas Screenshot Permite facilmente tirar uma fotografia da Cena BkGnd Color Permite modificar a cor de fundo da Cena Change Font Permite mudar a fonte do texto da Cena Help Menu Ajuda About Abre uma caixa de texto com informa es sobre a aplica o Online Help Abre um site com uma wiki do simulador Local Help Abre o manual do utilizador 5 1 Interface Gr fica 49 5 1 1 2 Barra de inser o de o
129. u C rculo verificado se tem algum bit associado a TRUE e se assim for executada a rota o e a transla o consoante a velocidade angular e linear a que o objeto esteja sujeito respetivamente b Se o objeto for uma Luz verificado se o bit associado sofreu um RE ou um FE e a cor do objeto mudar de acordo com a condi o c No caso de ser uma Imagem verificado se o bit associado sofreu um RE e em caso afirmativo executada a mudan a de imagem d Por ltimo se o objeto n o for de nenhum dos 4 tipos acima mencionados o algoritmo avan a para o passo seguinte 2 No final realizado um ciclo que itera todos os objetos filhos do atual e sobre cada um des tes aplicado o presente algoritmo por forma a que todos os objetos independentemente da sua posi o hier rquica possam executar a fun o que lhes est associada Outra al Quadrado Circulo Input Objeto Figura 4 10 Verifica o das fun es Alg2 objeto 42 Implementag o do Simulador 4 5 2 Comunica o Modbus Como apresentado em 4 1 2 2 o protocolo de comunica o escolhido foi o Modbus Das 20 fun es pass veis de implementar com o Modbus as utilizadas neste projeto foram as fun es com os c digos e 1 Read Coils gt Do lado do FEUPSim esta fun o tem como principal objetivo enviar todas as entradas para o FEUPAutom isto implica que todos os cliques de Bot es e
130. udents need to implement the control of three functions turn right turn left and emergency Gi Park 3D Co O E A Park 3D v1 5 by Paulo Costa 25 1 Park 3D v1 0 by Paulo Costa 20 0 Graphics Animation 1 0 gt Graphics 1 0 Force 1 0 Set Sim Levei DIES i Gate Position O c Moving Barrier Gate Closed Sensor In and Out Barriers I Gate Open Sensor TT Light Sensor I Barier Sensor Gate Motor Open J Gate Motor Close I Light ON Natural Light Siren Off Car Position C Outside C Going In Inside Light On Car Arive Tae Car Exit Cars In Park 0 Stop Thunderbird 3D v1 4 by Paulo Costa 20 2 Reset World arene Fix World gt Semaphore Red gt Semaphore Green F LEC F LEB F LEA FT LDA I LDB F Loc Inputs Figure 3 FEUPAutom simulators 3 4 Added value to the course As seen this software is both programmable in ST or Grafcet what is very good in terms of teaching because it enhances the ability to create Problem Based Learning PBL exercises leading to better results and letting the students learn much faster than by the usual teaching This methodology combined with the siblings labs work allows every class in each lab to have 24 students divided 12 groups of two persons maximizing the time that the students are with a teacher in the lab and improving their skills by learning while solving problems 4 RESULTS AND SURVEYS For this tool to be approved and validated t
131. ue poss vel envolver ativamente os alunos na sua pr pria aprendizagem O artigo foi parcialmente apoiado pelo FEDER Fundo Europeu de Desenvolvimento Regi onal atrav s do Programa COMPETE por fundos nacionais da FCT Funda o para a Ci ncia e Tecnologia dentro do projeto FCOMP 01 0124 FEDER 037281 e ainda pelo INESC TEC A todas estas entidades deixo aqui uma palavra de apre o 81 DEVELOPMENT OF A STUDENT CENTRED TOOL THAT PROMOTES DEEP LEARNING IN THE TECHNICAL AREA OF CONTROL OF DISCRETE EVENT SYSTEMS A Sousa B Augusto P Costa INESC TEC INESC Technology and Science formerly INESC Porto and FEUP Faculty of Engineering University of Porto PORTUGAL 2FEUP Faculty of Engineering University of Porto PORTUGAL asousa fe up pt ee10156 fe up pt paco fe up pt Abstract The article will present the development of the tool FEUPAutom used at the Faculty of Engineering of the University of Porto FEUP in the automation engineering Technological amp Scientific area In FEUP the pressure to deliver well trained engineers is steadily high in the last two decades thus producing a well known situation of massification in Higher Education Institutions namely in engineering degrees In the school year of 2013 14 the course where the tool was used had about 270 students despite quite low retention rates The article also includes a brief characterization of the engineering program course and expected outc
132. utom Cap tulo 3 Projeto do Simulador Como em qualquer projeto de engenharia antes de se implementar uma solug o necess rio projetar e formular o sistema que se idealizou Serve o presente cap tulo para apresentar os principais fatores que levaram a idealizag o desta dissertag o o levantamento de requisitos do simulador o primeiro conceito do sistema a implementado criado e outras decis es relevantes de projeto 3 1 Dados de partida Como explicado na sec o 1 1 na UC de Sistemas e Automa o existe ainda um grande fosso entre os controladores que os estudantes criam e os simuladores existentes para estes poderem visualizar o resultado desse mesmo controlo Isto mais expl cito quando s o realizados inqu ritos semestrais aos estudantes numa fase final da UC Parte dos resultados das ltimas duas edi es destes inqu ritos encontra se ilustrada na Figura 3 1 2013 2014 Gostaria de ter mais simula es de sistemas reais Gostaria de poder fazer eu pr prio a minha simula o As simula es na UC foram fundamentais para eu aprender 24 85 39 69 11 86 0 525 2 58 a 0 525 0 52 0 00 0 52 mDiscordo Totalmente mDiscordo mNeutro E Concordo m Concordo Totalmente As simula es na UC foram fundamentais para eu aprender m Discordo Totalmente w Discordo mNeutro m Concordo E Concordo Totalmente m Discordo Totalmente m Discordo m Neutro mConcordo m Concordo Totalmente 2014 2015
133. veis ou n o e Properties Quando selecionada implica que aquando da cria o de um objeto a janela das propriedades seja imediatamente aberta e Axes Permite que os eixos da Cena estejam vis veis quando selecionada e Log Esta caixa serve para o utilizador decidir se deseja guardar os dados da simula o em hist rico poss vel ativar ou desativar a qualquer momento esta op o e por defeito esta funcionalidade encontra se desativada e DelChild Indica se os objetos filhos s o apagados aquando dos pais ou se s o mantidos e 3D cam O primeiro bot o permite uma mudan a de perspetiva da Cena 2D para 3D e vice versa No modo 3D o utilizador apenas pode estudar a cena construida e Fire Serve para testar a componente de fogo do objeto selecionado e FPS N mero de Fotogramas Por Segundo a que o utilizador quer que a cena seja atualizada e Log ms Tempo de atualiza o do ficheiro de hist rico isto tempo em milissegundos a que as vari veis e eventos s o gravados para disco Por defeito ocorre de 1 em 1s e Lupas Fazer zoom da Cena x OS ER ER Figura 5 6 Barra de depura o 5 1 1 6 rvore de Objetos Nesta rvore de objetos poss vel verificar todos os objetos da Cena liga es entre eles quem filho de quem e realizar opera es em cada um individualmente 4 World SensorCima SensorBaixo Bola Figura 5 7 rvore de Objetos 5 1 2 Janela de Entradas Sa das Esta
134. vendo as palavras de 28 One of the beauties of XML is that it can be extended without breaking applications De forma a facilitar a compreens o da composi o de um documento XML apresentado abaixo um exemplo simples de como seria realizado um cat logo de CDs lt CATALOGO gt lt CD gt lt TITULO gt The Wall lt TITULO gt lt ARTISTA gt Pink Floyd lt ARTISTA gt lt CD gt lt CD gt lt TITULO gt Muse lt TITULO gt lt ARTISTA gt The Resistance lt ARTISTA gt lt CD gt lt CATALOGO gt Tal como pode ser visualizado existe um objeto raiz o Cat logo a castanho que composto por diversos objetos hierarquicamente inferiores os CDs a vermelho que por sua vez contem o t tulo e o artista a azul Por toda a sua simplicidade e pelo o facto do Lazarus suportar nativamente a escrita leitura de ficheiros XML este formato foi escolhido para a grava o e carregamento das simula es criadas O formato gerado e as etiquetas espec ficas criadas ser o apresentadas em 4 5 3 4 2 Conceitos importantes 33 4 2 Conceitos importantes O FEUPSim possui dois modos de execug o 1 Edi o Na qual poss vel criar e desenhar o simulador al m de e Mover objetos e Aceder s propriedades dos objetos e Selecionar m ltiplos objetos e Modificar op es de projeto 2 Simula o Onde o utilizador verifica o funcionamento do simulador criado atrav s da execu o das fun es dos objetos rota o coli
135. xos V REP Software baseado numa arquitetura de controlo distribu da que permite que cada objeto seja controlado individualmente o que facilita o controlo atrav s de m dulos Ezphysics Facilidade de simula o e anima o parecido com v deo jogos com a possibili dade de integra o com o Matlab o que o torna muito til em termos acad micos Os crit rios usados para compara o foram Linguagem de programa o Quanto maior o n mero de linguagens permitidas pelo soft ware maior ser em princ pio a facilidade de aprendizagem do utilizador uma vez que poder j estar familiarizado com alguma das linguagens apresentadas Motor de din mica Este crit rio refere se ao facto de o simulador poder ser portador ou n o de uma maior din mica na simula o dos objetos e por isso mesmo trazer um maior realismo a todo o ambiente de simula o Comunica o Possibilidade de comunica o com outros softwares ou hardwares Sistema Operativo SO um aspeto crucial uma vez que o sistema operativo em que o simulador funciona ter que ser compat vel com o equipamento do utilizador Licen a Sendo o custo essencial na escolha de um simulador para uso educacional este fator foi utilizado para demonstrar o tipo de licenciamento usado por cada simulador Tabela 2 1 Compara o entre simuladores Linguagem de Motor de gr is Sistema ye UA Comunicac o Licen a Programa
136. z RAM 6GB DDR3 Gr fica GeForce GT 740M 2GB 62 Atualiza o do FEUPAutom 6 2 2 Leitura e Grava o de projeto FEUPAutom XML Uma das cr ticas frequentes ao FEUPAutom consistia na forma como este grava um projeto Tais cr ticas referiam se ao facto do FEUPAutom gerar dois ficheiros separados o que levava por vezes a confus o de qual o ficheiro de entrega dos trabalhos executados Os dois ficheiros utilizavam diferentes tecnologias de grava o o projeto e c digo ST eram gravados recorrendo a um sistema de ficheiros INI e a modela o Grafcet era gravado no formato XML usando a biblioteca ECXML Parser Dada a inexist ncia desta biblioteca em Lazarus o facto do XML ser uma linguagem estandardizada com todas as vantagens enumeradas em 4 1 2 3 e aliado ao facto do Lazarus suportar nativamente o XML esta linguagem foi a escolhida para criar um ficheiro nico de grava o e leitura de projetos FEUPAutom Para juntar ambos os ficheiros foi criada a estrutura XML apresentada na Figura 6 2 sendo esta composta por duas etiquetas principais e FAProject Cont m todas as vari veis de projeto 1 FAProject 2 Janelas do FEUPAutom Main Variables e TOLeds 3 Propriedades das janelas Vari veis pr prias geometria da janela o c digo ST gerado e o nome de todas as vari veis e G7Projeto Cont m toda a modela o Grafcet 1 G7Projeto 2 Etiqueta de Objetos 3 Objetos individuais e propriedades nicas nome localiza o X
Download Pdf Manuals
Related Search
Related Contents
Amitiés Dominicaines », n°259, Janvier/Février Micro Innovations AcoustiX ESP - 1000 PLASMARC-ANLAGE - ESAB Welding & Cutting Products 末端水質監視設備設置工事 特記仕様書 USER MANUAL Operator Manual USER GUIDE - CAMBOARD Electronics Marshall VALVESTTE AVT100 User's Manual P6 VAP A+ - proErgonomic GmbH Scarica l`allegato Copyright © All rights reserved.
Failed to retrieve file