Plataforma Geradora de Controladores Fuzzy em FPGA

Tamanho: px
Começar a partir da página:

Download "Plataforma Geradora de Controladores Fuzzy em FPGA"

Transcrição

1 UNIVERSIDADE POSITIVO NÚCLEO DE CIÊNCIAS EXATAS E TECNOLÓGICAS CURSO DE ENGENHARIA DA COMPUTAÇÃO GIOVANNI GERALDO SZYCHTA PEDRO ANDRIOW Plataforma Geradora de Controladores Fuzzy em FPGA Curitiba, Dezembro de 2011

2 GIOVANNI GERALDO SZYCHTA PEDRO ANDRIOW Plataforma Geradora de Controladores Fuzzy em FPGA Monografia apresentada junto ao Curso de Engenharia da Computação da Universidade Positivo, Núcleo de Ciências Exatas e Tecnológicas, como requisito parcial à obtenção do título de Bacharel. Orientador: Prof. Msc. Valfredo Pilla Júnior. Curitiba, Dezembro de 2011

3 GIOVANNI GERALDO SZYCHTA PEDRO ANDRIOW Plataforma Geradora de Controladores Fuzzy em FPGA Trabalho de Conclusão de Curso apresentado ao Curso de Engenharia da Computação, da Universidade Positvo, como requisito à obtenção do título de Bacharel. COMISSÃO EXAMINADORA Prof. Msc. Ederson Chichaczewski Universidade Positivo Prof. Msc. Gilmar Amilton Macohin Universidade Positivo Prof. Msc. Maristela Regina Weinfurter Universidade Positivo Prof. Msc. Valfredo Pilla Júnior Universidade Positivo iii

4 iv

5 UNIVERSIDADE POSITIVO Reitor: Prof. José Pio Martins Pró-Reitor de Administração: Prof. Arno Antonio Gnoatto Pró-Reitor Acadêmico: Prof.ª Márcia Sabastiani Coordenador do Curso de Engenharia da Computação: Prof. Leandro Henrique de Souza v

6 vi

7 A Deus por tudo que me proporciona na vida. À minha mãe e meu pai, os quais amo muito, pelo exemplo de vida e família. Aos encontros inesperados, por tornarem a vida mais divertida. Giovanni Geraldo Szychta Dedico esse trabalho a todos que estiveram ao meu lado, me ajudando, me apoiando, e me dando toda estrutura que precisei durante todo o curso. Pedro Andriow vii

8 viii

9 AGRADECIMENTOS Durante esse longo período de graduação, muitas pessoas passaram por minha vida. Deixaram muitas lições, muitas alegrias, proporcionaram novos conhecimentos e contribuíram para o meu crescimento. Entre estas pessoas, agradeço aos professores do curso de Engenharia da Computação, que contribuíram partilhando seus conhecimentos. Agradeço ao professor Valfredo Pilla Júnior, que além de professor e amigo, participou deste trabalho como orientador. Agradeço aos meus amigos, em especial os dos corredores e das salas de aula, por estarem presentes nos mais diversos momentos. Agradeço a minha namorada Amanda de Carvalho Nunes, por fazer novamente parte da minha vida, me apoiando e me enchendo de alegria a cada nova etapa deste trabalho. Agradeço finalmente e principalmente à minha família, em especial ao meu pai e minha mãe, por todo seu apoio, dedicação e esforço durante esta caminhada. Giovanni Geraldo Szychta ix

10 x

11 Ao longo de todo o curso de Engenharia da Computação muitas pessoas estiveram presentes, e todas elas contribuíram para o meu conhecimento e crescimento individual, não apenas em relação aos conteúdos vistos durante o curso, mas cada uma influenciando de uma maneira ou outra na minha vida. Antes de todos, gostaria de agradecer à minha família, por ter me dado todos os valores que eu tenho, por ter me apoiado durante a graduação, e por estar sempre ao meu lado, independente da situação. Agradeço à minha namorada, Elisiê Pepino, que acompanhou o processo desse trabalho sempre me apoiando, sendo compreensiva com as minhas ausências devidas a dedicação ao projeto, e sempre com aquele sorriso maravilhoso me dando novas forças a cada nova etapa. Agradeço também aos meus amigos que sempre estiveram presentes e muitas vezes ajudando e disponibilizando tempo sempre que precisei de alguma ajuda, ou mesmo quando precisei desabafar. Agradeço ao meu chefe e à empresa em que trabalho por sempre entender e sempre priorizar meus estudos, me liberando sempre que precisei de tempo para o desenvolvimento desse trabalho. Gostaria também de agradecer a todos os professores, e em especial ao nosso orientador, professor Valfredo Pilla Júnior, que com maestria compartilharam o conhecimento e sempre estiveram disponíveis para sanar minhas dúvidas ou mesmo para conversas, gerando ideias de novos projetos. Pedro Andriow xi

12 xii

13 E quando você pensa que tudo mais pode falhar. Lembre-se, coisas piores acontecem no mar. Confraria da Costa Coisas Piores Acontecem no Mar. xiii

14 xiv

15 RESUMO Resumo: A Lógica Fuzzy tem como principal finalidade o estudo dos princípios formais do raciocínio aproximado e pode ser empregado em inúmeras aplicações práticas tais como controle de temperatura, volume, iluminação, entre outros. Porém o processo de manual de geração das tabelas Fuzzy é um tedioso e sujeito a erros. Buscando facilitar esse processo propomos o desenvolvimento de uma estrutura em hardware que encapsule toda a complexidade da Lógica Fuzzy, deixando ao usuário apenas a tarefa de definir as tabelas de regras Fuzzy utilizando as variáveis linguísticas em formato IF-THEN de cada variável e definições básicas do tipo: valor mínimo de inferência, valor máximo e ponto em que a pertinência é a máxima. O hardware definido para o encapsulamento são as FPGAS, pois possui um maior poder de escalonamento do número de variáveis e paralelismo para a realização dos cálculos Fuzzy. Outra vantagem na utilização das FPGAS é a facilidade na integração com sistemas embarcados. O sistema desenvolvido é constituído por um módulo de processamento no qual o usuário define a tabela de regras, e define os arquivos de memória contendo os valores de pertinências. O sistema se adapta a essas novas diretivas e com esses dados gera a solução Fuzzy já tratada, assim a preocupação do usuário se limita à modelagem do sistema inicial. O sistema Fuzzy projetado é representado em um código VHDL (Very High Speed Integrated Circuits Hardware Description Language). Para validação da ferramenta projetou-se um controlador de temperatura no qual o usuário determina o valor de temperatura ideal e a tabela de regras. Nesta tabela define-se através de variáveis linguísticas qual a saída ideal do projeto teórico de refrigeração em que o sistema estaria funcionando. A busca das pertinências é realizada pelo circuito digital inferido pelo código VHDL de forma transparente ao usuário. O método de inferência Fuzzy utilizado consiste na leitura dos sensores, a partir desses dados realiza a busca da pertinência relativa à leitura na memória da FPGA, aplica a tabela de regras definida em VHDL no padrão IF-THEN e então aplica o método de centro de gravidade para defuzzificação. O usuário deve gerar os arquivos de memória contendo os valores das pertinências, utilizando o software de definição de pertinências, estes arquivos serão utilizados pela FPGA. A saída é feita na forma de uma máquina de estados implementada em VHDL que transmite as variáveis para um micro controlador externo, cuja função é a leitura dos sensores e o acionamento dos atuadores. Palavras-chave: Lógica Fuzzy, FPGA, VHDL xv

16 xvi

17 ABSTRACT Abstract: Fuzzy Logic has as main purpose to study the formal principles of approximate reasoning and can be used in numerous practical applications such as temperature control, volume, lighting, among others. But the manual process of generating fuzzy tables is a tedious and error prone. Seeking to facilitate this process we propose the development of a hardware structure that encapsulates the complexity of Fuzzy Logic, leaving the user only the task of defining the rules tables Fuzzy linguistic variables using IF-THEN format of each variable and the basic definitions type: minimum of inference, maximum and the point where the relevance is the maximum. The hardware package is set to the FPGAs, which has a greater power scaling of the number of variables and parallel to the calculations Fuzzy. Another advantage of using FPGAs is the ease of integration with embedded systems. The developed system consists of a processing module in which the user defines the rules table, and sets the memory files containing the values of relevance. The system adapts to these new policies and these data generates the solution treated as fuzzy, so the user's concern is limited to modeling the initial system. The fuzzy system designed is represented in a code VHDL (Very High Speed Integrated Circuits Hardware Description Language). For validation tool designed to a temperature controller in which the user determines the value of optimal temperature and the rules table.this table is defined by linguistic variables which the output of the ideal theoretical project in which the cooling system was working. The pertinence of the search is performed by the digital circuit inferred by VHDL code transparent to the user. The fuzzy inference method used consists of reading the sensors, from these data makes the search for relevance on the reading in memory of the FPGA, applies the rules table defined in the VHDL standard IF- THEN and then apply the method of center gravity for defuzzification. The user must generate the memory containing the values of relevance, using the software definition of relevance, these files will be used by the FPGA. The output is in the form of a state machine implemented in VHDL variables to which transmits an external microcontroller, whose function is to read the sensors and driving actuators. Key-words: Fuzzy Logic, FPGA, VHDL xvii

18 xviii

19 LISTA DE ILUSTRAÇÕES FIGURA 1 - CONTROLADOR FUZZY LÓGICO (LIU ET AL, 2011) FIGURA 2 - GRÁFICOS DE PERTINÊNCIA UTILIZADOS(LIU ET AL, 2011) FIGURA 3 - PERTINÊNCIA FUZZY TRAPEZOIDAL (KHUDHAIR ET AL, 2010) FIGURA 4 - PERTINÊNCIA FUZZY PONTUAL (KHUDHAIR ET AL, 2010) FIGURA 5 - ARQUITETURA GERAL DO SISTEMA FIGURA 6 - LÓGICA DO CÁLCULO FUZZY FIGURA 7- LÓGICA IMPLEMENTADA NO MICRO CONTROLADOR FIGURA 8 - INTERFACE DO SOFTWARE PARA GERAR OS ARQUIVOS DE MEMÓRIA FIGURA 9 - ALGORITMO DE CÁLCULO DE PERTINÊNCIA FIGURA 10 - GRÁFICO DE PERTINÊNCIAS GERADAS PARA O PROJETO FIGURA 11 - CONVERSÃO DA BASE DECIMAL PARA PONTO FIXO FIGURA 12 - RECEBIMENTO DOS DADOS DE FORMA PARALELA NO MICRO CONTROLADOR FIGURA 13 - CONVERSÃO DA BASE DE PONTO FIXO PARA BASE DECIMAL FIGURA 14 - FÓRMULA DE MÉDIA PONDERADA FIGURA 15 - TABELA DE REGRAS IMPLEMENTADA EM VHDL FIGURA 16 - CONTADOR DE MEMÓRIA IMPLEMENTADO EM VHDL FIGURA 17 - TELA DE RESUMO DA COMPILAÇÃO FIGURA 18 - CÁLCULO DO ERRO FIGURA 19 - CÁLCULO DO ERRO MÉDIO xix

20 xx

21 LISTA DE TABELAS TABELA 1 - TABELA DE REGRAS (LIU ET AL, 2011) TABELA 2 - TABELA DE REGRAS FUZZY TABELA 3 - IDS E DADOS A SEREM TRANSMITIDOS TABELA 4 - TABELA DE REGRAS FUZZY - CONTROLE DE TEMPERATURA TEÓRICO TABELA 5 - PORCENTAGEM DE ATIVAÇÃO REAL DO SISTEMA TABELA 6 - PORCENTAGEM DE ATIVAÇÃO SIMULADA DO SISTEMA TABELA 7 - TABELA COMPARATIVA REAL X SIMULADO TABELA 8 - COMPARAÇÃO DAS ATIVIDADES A SEREM DESENVOLVIDAS COM E SEM A PLATAFORMA xxi

22 xxii

23 LISTA DE ABREVIATURAS E SIGLAS FPGA Field programmable gate array VHDL VHSIC Hardware Description Language VHSIC Very High Speed Integrated Circuits Waveform Forma de onda resultada da simulação do software Quartus II FLC Fuzzy Logic Controllers ASIC Application Specific Integrated Circuit AGs Algoritmos Genéticos QEE Qualidade de Energia Elétrica PMLSM Permanent-Magnet Linear Synchronous Motor DSP Digital Signal Processor CPU Central Processing Unit PWM Pulse Width Modulation USB Universal Serial Bus LED Light Emitting Diode xxiii

24 xxiv

25 SUMÁRIO 1 INTRODUÇÃO FUNDAMENTAÇÃO TEÓRICA CONTROLE ATRAVÉS DA LÓGICA FUZZY ESPECIFICAÇÃO DO PROJETO OBJETIVOS CARACTERÍSTICAS DO PROJETO Requisitos ARQUITETURA Módulo de Processamento Módulo de Comunicação e Avaliação Módulo de Desenvolvimento, Configuração e Debug Uso da Plataforma TESTES DE VALIDAÇÃO DO SISTEMA Testes de validação de conversões do micro controlador Testes de validação da aplicação da lógica Fuzzy PROJETO HARDWARE FUZZY Recebimento dos Dados Busca de Pertinências Aplicação da Tabela de Regras Envio dos Dados Para Defuzzificação Digrama em blocos da FPGA MICRO CONTROLADOR Recebimento do Dado a Ser Tratado Conversão Para Base de Ponto Fixo Envio do Dado Para a FPGA Recebimento do Resultado Conversão do Resultado Para Base Decimal Defuzzificação Retorno do Resultado Em Decimal Para o Usuário RESULTADOS CASO DE TESTE CONFIGURAÇÕES DO PROJETO RESULTADOS DA MODELAGEM VHDL RESULTADOS MÓDULO DE PROCESSAMENTO RESULTADOS SISTEMA COMPLETO xxv

26 5.6 VALIDAÇÕES DOS VALORES CONCLUSÕES CONCLUSÕES GERAIS FUTURAS IMPLEMENTAÇÕES REFERÊNCIAS ANEXOS xxvi

27 27 1 INTRODUÇÃO Pode-se dizer que fatores como incerteza e ambigüidade na definição de parâmetros de um sistema são fatores que aumentam muito a complexidade da modelagem, tornando-a, em muitos casos inviável. Para o tratamento desses fatores foi desenvolvida, baseada na teoria clássica de conjuntos, a lógica Fuzzy. Este tipo de lógica permite que sejam quantificadas variáveis lingüísticas, ou seja, que não possuem valores precisos. Esta quantificação se dá através da teoria de conjuntos Fuzzy, a qual possibilita ter graus de pertinência entre um elemento e os conjuntos ao qual pode pertencer. Constrói-se uma base de regras onde os valores são lingüísticos (imprecisos), dando flexibilidade ao sistema (quanto a estados que este pode assumir) e facilitando a compreensão do problema (DA COSTA et al, 2003). Os sistemas Fuzzy são sistemas baseados em regras que utilizam variáveis lingüísticas difusas (conjuntos difusos) para executar um processo de tomada de decisão (ADILEA, 2003). Pois embora todo o potencial da lógica Fuzzy seja divulgado, na prática, sistemas complexos não são fáceis de implementar (SANTANA et al, 2005). Controladores de lógica Fuzzy (FLC Fuzzy Logic Controllers) oferecem um método simples para controle de sistemas altamente complexos e imprecisos, sem a necessidade de um modelo com precisão matemática detalhada da planta que será controlada. A lógica Fuzzy fornece um processo para lidar com as incertezas desses sistemas complexos usando um método de raciocínio humano, com o uso de variáveis lingüísticas que são avaliadas por um conjunto de regras do tipo IF-THEN. A semelhança entre o funcionamento da lógica Fuzzy, e os fundamentos do processo de pensamento humano, permite ao controlador capturar o conhecimento de especialistas humanos e transformá-lo em regras usadas para controlar o sistema (KHUDHAIR et al, 2010). Já a algum tempo, os controladores Fuzzy têm sido implementados através de métodos de software puros em um microprocessador de propósito geral, com uma arquitetura de hardware reconfigurável acoplado a fim de utilizar a flexibilidade do microprocessador com o desempenho do hardware reconfigurável (TEIXEIRA et al, 1995, ARANGUREN et al, 2002).

28 28 Este tipo de design proporciona uma grande flexibilidade com a definição dos parâmetros Fuzzy (funções de pertinência e regras de inferência), mas a demanda de alta potência, e da área necessária para a arquitetura completa, faz este tipo de projeto inadequado para aplicações nas quais o tamanho do controlador é um fator importante. Isso por si já inviabiliza a utilização em sistemas embarcados que demandam de processadores com uma área pequena, que tenham um consumo reduzido, e que também tenham um custo atraente. Projetos de hardware puro, por outro lado, têm a vantagem de satisfazer a área, potência e desempenho em uma escala de produção suficiente para obter um alto custo benefício (KHUDHAIR et al, 2010). A dificuldade na implementação de um sistema de controle em um ASIC (Application Specific Integrated Circuit), o tempo longo para o mercado, e o fato de que a modificação dos parâmetros de controle não é possível com projetos baseados em ASIC, têm incentivado os pesquisadores a olhar para as FPGAs (Field Programmable Gate Arrays) (KHUDHAIR et al, 2010). A progressão nas tecnologias de silício e microeletrônica permitiu também a redução do tamanho das FPGAs e, portanto, seu custo (SANCHES et al, 2007, WANG et al, 2006, ARANGUREN et al, 2002), permitiu também a disponibilidade de linguagens de nível de design do sistema, que têm simplificado o processo de desenvolvimento significativamente, possibilitando que as FPGAs sejam usadas não apenas como uma tecnologia de prototipagem, mas também como a solução final para os produtos, e, portanto, tem diminuído drasticamente o tempo de mercado para soluções de hardware (WANG et al, 2006). Buscando facilitar a implantação de sistemas baseados em lógica Fuzzy, este projeto trata do desenvolvimento de uma plataforma que possibilita a aplicação de lógica Fuzzy em hardware. A plataforma implementada em FPGA, realiza os cálculos matemáticos responsáveis pela interação da base de regras e a tabela de valores. Como resultado, a plataforma retorna as informações de pertinência, caracterizado por ser um valor entre 0 e 1, representando o resultado final do circuito. A operação realizada em hardware permite que o projetista do sistema Fuzzy foque no desenvolvimento e na modelagem do sistema e não no trabalho de desenvolvimento dos cálculos relativos à lógica Fuzzy.

29 29 2 FUNDAMENTAÇÃO TEÓRICA Lidar com fatores como ambigüidade, incerteza e informações vagas na resolução de problemas é uma característica do pensamento humano, que usa o conhecimento adquirido e experiências para lidar com esses fatores (KLIR,1997) (MUKAIDONO, 2001). Nos problemas de difícil solução, em que se faz necessário o auxílio matemático/computacional, modelar tais fatores é extremamente difícil. A modelagem computacional convencional não trabalha com ambigüidades, pois utiliza o conceito de verdadeiro ou falso (MUKAIDONO, 2001). A precisão computacional também é limitada, deixando sempre uma margem, por mínima que seja para a incerteza (KLIR, 1997). A vagueza de informações advinda da linguagem natural agrava ainda mais os fatores citados. Para lidar com isso de forma matemática, foi desenvolvida por Zadeh a Teoria dos Conjuntos Fuzzy (Conjuntos Nebulosos ou Difusos), teoria a qual permitia serem tratados níveis de incerteza e ambigüidade (DA COSTA et al, 2003). Na década de 60, um professor de Engenharia Elétrica e Ciência da Computação, chamado Lotfi Zadeh (1965) desenvolveu uma variação da tradicional teoria dos conjuntos e lógica booleana para tornar a análise e controle de sistemas complexos de controle mais tratáveis. Zadeh observou que muitas regras que as pessoas usavam para fazer inferências não eram conscientes, ou seja, não podiam ser explicadas pelas pessoas que as usavam. Por exemplo, podemos olhar para uma pessoa e dizer ele parece ter por volta de 35 anos, mas não se está preparado para explicar como sabemos disso (DA COSTA et al, 2003). A idéia de Zadeh levou-o a desenvolver o que é conhecido como lógica Fuzzy (RUSS, 1996). Apesar de ter sido criticada inicialmente, a lógica Fuzzy acabou sendo bem aceita por engenheiros e cientistas da computação, tornando-se comuns as suas aplicações. Do começo da ciência moderna até o fim do século XX a incerteza era geralmente indesejável, uma idéia a ser evitada. Esta atitude foi gradativamente mudada com o surgimento dos mecanismos estatísticos (DA COSTA et al, 2003). Para lidar com grandes complexidades de processos mecânicos no nível

30 30 molecular, mecanismos estatísticos permitiam o uso de médias e a teoria de probabilidade era aplicada com sucesso em várias áreas da ciência. Mesmo assim, a teoria de probabilidade não era capaz de tratar a incerteza em todas as suas manifestações (KLIR, 1997). Em particular é incapaz de tratar a incerteza resultante dos termos da linguagem natural vagos. Um exemplo disso é a palavra meia-idade (MUKAIDONO, 2001). É comum classificar uma pessoa de meia idade ou não, apesar de não se saber exatamente quando começa e termina esse período. Vamos assumir um exemplo de que o período de meia idade vai de 35 a 55 anos. Pela lógica tradicional, um homem de 34 anos só poderia pertencer ao grupo de meia idade depois do dia de seu aniversário de 35 anos. Da mesma forma, um homem de 56 anos não pertenceria mais a esse grupo. Mas não é desejado tamanha precisão em relação a este conceito, dado que o limite de meia idade não pode ser definido precisamente. Na verdade, se tem uma idéia vaga a respeito dos limites de meia idade (DA COSTA et al, 2003). Na teoria clássica de conjuntos são definidos os limites são requeridos para determinar a pertinência de um elemento a um conjunto com toda a certeza (KLIR, 1997). Porém a maioria dos conjuntos e proposições não pode ser caracterizada de maneira tão exata. Um exemplo é o conjunto de pessoas altas é um conjunto onde o limite exato não pode ser precisamente definido. Na lógica Fuzzy, a pertinência de um elemento a um conjunto ocorre gradativamente, expressa através de uma função de pertinência. Cada conjunto Fuzzy, A, é definido em termos de relevância a um conjunto universal, X, por uma função denominada de função de pertinência, associando a cada elemento x um número, A(x), no intervalo fechado [0,1] que caracteriza o grau de pertinência de x em A (KLIR, 1997). Pode-se dizer que os sistemas difusos são sistemas baseados em regras que utilizam variáveis lingüísticas difusas (conjuntos difusos) para executar um processo de tomada de decisão (ADILEA, 2003). Um FLC (Fuzzy Logic Controller) pode ser dividido em três seções: fuzzificação, o motor de inferência Fuzzy, e defuzzificação, como podem ser vistas na Figura 1. Durante a seção de fuzzificação os dados de entrada são convertidos em valores lingüísticos adequados, como grande ou pequeno, com funções de pertinência (LIU et al, 2011). O motor de inferência Fuzzy trabalha com a aplicação

31 31 da tabela de regras, e a defuzzificação trabalha com o resultado de forma a retornar um valor em porcentagem, ou em alguma outra forma que facilite a visualização do resultado (LIU et al, 2011). Figura 1 - Controlador Fuzzy Lógico (LIU et al, 2011) Como exemplo de um controle lógico Fuzzy, é possível citar um controlador Fuzzy para fontes chaveadas baseado em FPGA, que será utilizado abaixo como exemplo de utilização de Fuzzy. Três conjuntos linguísticos, ou seja, positivo (P), zero (Z) e negativo(n), foram escolhidos para as variáveis de entrada e (nt) e v(nt) são Funções de pertinência triangular como mostrado na Figura 2. Da Figura 2, as funções de pertence são igualmente espaçadas ao longo da faixa de operação de cada variável Fuzzy. Para a variável de saída, três valores (L, 0 e L-) são utilizados. De acordo com o conhecimento do sistema, regras de controle Fuzzy podem ser derivadas no motor de inferência Fuzzy da seguinte forma: Tabela 1 - Tabela de regras (LIU et al, 2011) Regra e(nt) v(nt) Saída R(1) en vn On R(2) en vp Oz R(3) ep vn Oz R(4) ep vp Op

32 32 Figura 2 - Gráficos de pertinência utilizados(liu et al, 2011) Neste exemplo, "Saída" é o controle Fuzzy da ação u(nt), "en" significa "erro negativo", "op" significa "saída positiva", etc. Na seção de defuzzificação, o Fuzzy Logic Controller (FLC) processa a saída Fuzzy das regras e gera um valor numérico. Usa o conhecido método de centro de gravidade (realizado através de uma media ponderada) para defuzzificação (LIU et al, 2011). 2.1 CONTROLE ATRAVÉS DA LÓGICA FUZZY O conceito básico fundamental de controle de lógica Fuzzy é descrever uma relação entre as entradas e saídas do sistema em termos de graus de adesão e um conjunto de regras Fuzzy do tipo IF-THEN. Com estes parâmetros de controle o controlador Fuzzy é capaz de estabilizar o sistema controlado. Para executar a operação de controle exigido, o controlador de lógica Fuzzy utiliza um conjunto de operações Fuzzy seguindo os estágios (KHUDHAIR et al, 2010): Interface de fuzzificação: Na lógica Fuzzy, existe uma série de funções de pertinência diferentes, como na (Figura 3) triangular, trapezoidal, sino, e formas pontuais (Figura 4). Estas funções de pertinência definem a pertinência do valor de entrada do sensor (KHUDHAIR et al, 2010).

33 33 Figura 3 - Pertinência Fuzzy Trapezoidal (KHUDHAIR et al, 2010) Figura 4 - Pertinência Fuzzy Pontual (KHUDHAIR et al, 2010) Inferência de regras Fuzzy: No controle de lógica Fuzzy, as regras são consideradas como o conhecimento do especialista. As regras de controle Fuzzy assumem a forma de uma declaração IF-THEN da seguinte forma: IF x is A and y is B THEN z is C (1) A regra vista em (1) descreve uma condição que a planta pode apresentar em um determinado ponto, utilizando variáveis (x e y), e conjuntos Fuzzy (A e B). O operador "E" na regra Fuzzy acima é a operação mínima entre os dois conjuntos Fuzzy. Esta regra é utilizada na fase de inferência de regra do FLC para calcular o grau em que os dados de entrada correspondem à condição de uma determinada regra. Estas regras são na sua maioria extraídas da experiência do projetista, ou o conhecimento da dinâmica das plantas. Vários tipos de técnicas de otimização são geralmente utilizadas para obter essas regras (como algoritmos genéticos (ZHANG et al, 2006, TABOADA et al, 2009), ou redes neurais (BIGARBEGIAN et al, 2008). Estes sistemas são geralmente referidos como sistemas de controle adaptativos Fuzzy (KHUDHAIR et al, 2010).

34 34 Interface de defuzzificação: A saída do estágio de inferência da regra é representada como conclusões com graus de adesão. Antes de a saída ser passada para a planta deve ser convertida para um valor de saída real, sendo necessário o estágio de defuzzificação. Dependendo do tipo de controle, precisão requerida e do tipo da função de pertinência de saída, existem três tipos principais de métodos de defuzzificação: o Metodo de Centro Maximo (COM) o Metodo do Centro de Gravidade (COG) o Metodo da Media Maxima(MOM) (KHUDHAIR et al, 2010) O método COG é um dos métodos de defuzzificação mais populares devido à sua precisão. Uma vez que funciona calculando a área sob as funções relacionadas, entretanto a alta precisão do método está no custo do aumento computacional, no tempo e na complexidade (KHUDHAIR et al, 2010). Recentemente muitos projetos vêm sendo trabalhados com a adição de lógica Fuzzy. Entre os projetos, podemos citar: controle de sistemas, aprendizado, detecção de objetos e padrões, inversores etc. Alguns projetos utilizando lógica Fuzzy também estão presentes na área médica, em que se pode trabalhar com o monitoramento de sinais vitais e também realizar a organização de dados resultantes de pesquisas médicas. Paralelamente temos ainda uma série de projetos que aliam lógica Fuzzy a outros paradigmas de inteligência artificial, como a rede neural e o algoritmo genético. Grande parte desses projetos vem sendo trabalhadas em FPGA. Utilizando FPGA é possível fazer um controle adaptativo Fuzzy para motores lineares síncronos permanentemente magnetizados. O PMLSM (Permanent-Magnet Linear Synchronous Motor) não utiliza engrenagens convencionais ou fusos de esferas, de modo que a carga sobre o motor afeta grandemente o desempenho de posicionamento (LIU et al, 2004). Para lidar com este problema, muitas técnicas de controle avançado (QINGDING et al, 2002, LIN et al, 2007, WAI et al, 2007), tais como o controle Fuzzy, redes neurais, e controle robusto, têm sido desenvolvidos e aplicados para o controle da posição da unidade PMLSM para obter um alto desempenho operacional. No entanto, a execução de uma rede neural ou controlador Fuzzy (FC) requer um alto esforço computacional para a implementação desses algoritmos de controle altamente complexos e dependem de em um PC

35 35 (Personal Computer) na maioria dos estudos (LIU et al, 2004, QINGDING et al, 2002). Nos últimos anos, os processadores de sinais digitais (DSP Digital Signal Processor) e as FPGA s fornecem uma solução possível neste assunto (KUNG, 2008, LIN et al, 2005). Comparando com as FPGA s, as técnicas inteligentes de controle usando DSP, fornecem uma habilidade flexível, em contrapartida sofrem de um longo período de desenvolvimento e esgotam muitos recursos da CPU (Central Processing Unit) (KUNG et al, 2009). Outro trabalho interessante envolvendo Fuzzy e FPGA é o desenvolvimento de um inversor multinível. Normalmente, o controlador e o modulador de inversores são separados. O inversor multinível proposto consiste em um controlador integrado com modulação por largura de pulso (PWM Pulse Width Modulation), ambos implementados em um FPGA. O controlador considera a diferença entre a tensão da linha de referência de energia (V ref ) e a tensão de saída do inversor (V output inverter ). Então, dependendo do estado do inversor, calcula o padrão a ser aplicado. Os parâmetros do controlador de entrada são AV dif f i.e (V output inverter - V ref ), que representa o erro entre a referência e o sinal de saída, e AV ntfilt que está relacionado com a saída do inversor antes do filtro passa-baixa. O projeto de um controlador de lógica fuzzy exige a definição de "funções de pertence" e "regras de inferência". As funções de pertinência escolhidas para os dois parâmetros de entrada, em que os rótulos"nb", "NS", "ZE", "PS" e "PB" significam: "NB" = negativa grande,"ns" = negativo pequeno, "ZE" = zero, e assim por diante (CECATI et al, 2009). Na área médica existem trabalhos que também aplicam Fuzzy em FPGAS para auxilio em Diagnósticos. Sistemas médicos de diagnóstico capazes de tomar decisões sobre o estado fisiopatológico dos pacientes com base em dados passados requerem processadores Fuzzy para fuzzificar adequadamente os dados coletados. Em tempo real, processos que usam uma grande quantidade de informação exigem alta velocidade de processamento Fuzzy. O trabalho tem por objetivo definir uma arquitetura de processador que explora plenamente o paralelismo inerente de inferências Fuzzy. Assim, reduzindo o número de regras processadas e permitindo que o processador também explore o fato de que apenas partes das regras têm um grau positivo de validação. O método reduz consideravelmente a quantidade de memória necessária para armazenar as regras ativas. O processador em questão é implementado em uma matriz de (FPGA). A implementação do processador em uma

Ao longo do presente capítulo será apresentada uma descrição introdutória da tecnologia FPGA e dos módulos básicos que a constitui.

Ao longo do presente capítulo será apresentada uma descrição introdutória da tecnologia FPGA e dos módulos básicos que a constitui. 3 Tecnologia FPGA Ao longo do presente capítulo será apresentada uma descrição introdutória da tecnologia FPGA e dos módulos básicos que a constitui. 3.1. FPGA: Histórico, linguagens e blocos Muitos dos

Leia mais

Complemento III Noções Introdutórias em Lógica Nebulosa

Complemento III Noções Introdutórias em Lógica Nebulosa Complemento III Noções Introdutórias em Lógica Nebulosa Esse documento é parte integrante do material fornecido pela WEB para a 2ª edição do livro Data Mining: Conceitos, técnicas, algoritmos, orientações

Leia mais

2. Representação Numérica

2. Representação Numérica 2. Representação Numérica 2.1 Introdução A fim se realizarmos de maneira prática qualquer operação com números, nós precisamos representa-los em uma determinada base numérica. O que isso significa? Vamos

Leia mais

IW10. Rev.: 02. Especificações Técnicas

IW10. Rev.: 02. Especificações Técnicas IW10 Rev.: 02 Especificações Técnicas Sumário 1. INTRODUÇÃO... 1 2. COMPOSIÇÃO DO IW10... 2 2.1 Placa Principal... 2 2.2 Módulos de Sensores... 5 3. APLICAÇÕES... 6 3.1 Monitoramento Local... 7 3.2 Monitoramento

Leia mais

PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ

PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ PONTIFÍCIA UNIVERSIDADE CATÓLICA DO PARANÁ CENTRO DE CIÊNCIAS EXATAS E DE TECNOLOGIA CCET CURSO DE ENGENHARIA DE COMPUTAÇÃO Henrique Soares Hinke José Eduardo da Silva Rodrigues Matheus Augusto de Queiroz

Leia mais

Dadas a base e a altura de um triangulo, determinar sua área.

Dadas a base e a altura de um triangulo, determinar sua área. Disciplina Lógica de Programação Visual Ana Rita Dutra dos Santos Especialista em Novas Tecnologias aplicadas a Educação Mestranda em Informática aplicada a Educação ana.santos@qi.edu.br Conceitos Preliminares

Leia mais

4 Arquitetura básica de um analisador de elementos de redes

4 Arquitetura básica de um analisador de elementos de redes 4 Arquitetura básica de um analisador de elementos de redes Neste capítulo é apresentado o desenvolvimento de um dispositivo analisador de redes e de elementos de redes, utilizando tecnologia FPGA. Conforme

Leia mais

BARRAMENTO DO SISTEMA

BARRAMENTO DO SISTEMA BARRAMENTO DO SISTEMA Memória Principal Processador Barramento local Memória cachê/ ponte Barramento de sistema SCSI FireWire Dispositivo gráfico Controlador de vídeo Rede Local Barramento de alta velocidade

Leia mais

O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware

O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware 1 2 Revisão de Hardware 2.1 Hardware O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware 2.1.1 Processador O Processador

Leia mais

1. CAPÍTULO COMPUTADORES

1. CAPÍTULO COMPUTADORES 1. CAPÍTULO COMPUTADORES 1.1. Computadores Denomina-se computador uma máquina capaz de executar variados tipos de tratamento automático de informações ou processamento de dados. Os primeiros eram capazes

Leia mais

Arquitetura de Rede de Computadores

Arquitetura de Rede de Computadores TCP/IP Roteamento Arquitetura de Rede de Prof. Pedro Neto Aracaju Sergipe - 2011 Ementa da Disciplina 4. Roteamento i. Máscara de Rede ii. Sub-Redes iii. Números Binários e Máscara de Sub-Rede iv. O Roteador

Leia mais

Capacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB

Capacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB Calculando a capacidade de disco: Capacidade = (# bytes/setor) x (méd. # setores/trilha) x (# trilhas/superfície) x (# superfícies/prato) x (# pratos/disco) Exemplo 01: 512 bytes/setor 300 setores/trilha

Leia mais

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO Conceitos básicos e serviços do Sistema Operacional Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO Tipos de serviço do S.O. O S.O.

Leia mais

CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA

CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA 8 CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA A porta paralela, também conhecida por printer port ou Centronics e a porta serial (RS-232) são interfaces bastante comuns que, apesar de estarem praticamente

Leia mais

Disciplina: Introdução à Informática Profª Érica Barcelos

Disciplina: Introdução à Informática Profª Érica Barcelos Disciplina: Introdução à Informática Profª Érica Barcelos CAPÍTULO 4 1. ARQUITETURA DO COMPUTADOR- HARDWARE Todos os componentes físicos constituídos de circuitos eletrônicos interligados são chamados

Leia mais

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP) Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,

Leia mais

UNIVERSIDADE CATÓLICA DE PETRÓPOLIS CENTRO DE ENGENHARIA E COMPUTAÇÃO

UNIVERSIDADE CATÓLICA DE PETRÓPOLIS CENTRO DE ENGENHARIA E COMPUTAÇÃO UNIVERSIDADE CATÓLICA DE PETRÓPOLIS CENTRO DE ENGENHARIA E COMPUTAÇÃO Amanda 5ª Atividade: Codificador e codificação de linha e seu uso em transmissão digital Petrópolis, RJ 2012 Codificador: Um codoficador

Leia mais

1. NÍVEL CONVENCIONAL DE MÁQUINA

1. NÍVEL CONVENCIONAL DE MÁQUINA 1. NÍVEL CONVENCIONAL DE MÁQUINA Relembrando a nossa matéria de Arquitetura de Computadores, a arquitetura de Computadores se divide em vários níveis como já estudamos anteriormente. Ou seja: o Nível 0

Leia mais

Curso Superior de Sistemas de Telecomunicações Unidade São José. Disciplina: Síntese de Sistemas de Telecomunicações 7º Fase

Curso Superior de Sistemas de Telecomunicações Unidade São José. Disciplina: Síntese de Sistemas de Telecomunicações 7º Fase Curso Superior de Sistemas de Telecomunicações Unidade São José Disciplina: Síntese de Sistemas de Telecomunicações 7º Fase Bases tecnológicas Dispositivos Lógicos Programáveis. Introdução à Tecnologia

Leia mais

Engenharia de Software

Engenharia de Software Engenharia de Software O que é a engenharia de software É um conjunto integrado de métodos e ferramentas utilizadas para especificar, projetar, implementar e manter um sistema. Método É uma prescrição

Leia mais

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br Introdução O computador como ferramenta indispensável: Faz parte das nossas vidas; Por si só não faz nada de útil; Grande capacidade de resolução

Leia mais

Permite a coleta de dados em tempo real dos processos de produção, possuindo, também, interfaces para a transferência dos dados para os sistemas

Permite a coleta de dados em tempo real dos processos de produção, possuindo, também, interfaces para a transferência dos dados para os sistemas Permite a coleta de dados em tempo real dos processos de produção, possuindo, também, interfaces para a transferência dos dados para os sistemas administrativos da empresa. Nessa configuração, o PC é a

Leia mais

Funções de Posicionamento para Controle de Eixos

Funções de Posicionamento para Controle de Eixos Funções de Posicionamento para Controle de Eixos Resumo Atualmente muitos Controladores Programáveis (CPs) classificados como de pequeno porte possuem, integrados em um único invólucro, uma densidade significativa

Leia mais

Engenharia de Sistemas Computacionais

Engenharia de Sistemas Computacionais Engenharia de Sistemas Detalhes no planejamento UNIVERSIDADE FEDERAL DE ALAGOAS Curso de Ciência da Computação Engenharia de Software I Prof. Rômulo Nunes de Oliveira Introdução Na aplicação de um sistema

Leia mais

Programação de Robótica: Modo Circuitos Programados - Avançado -

Programação de Robótica: Modo Circuitos Programados - Avançado - Programação de Robótica: Modo Circuitos Programados - Avançado - 1 Programação de Robótica: Modo Circuitos Programados - Avançado ATENÇÃO Lembramos que você poderá consultar o Manual de Referência do Software

Leia mais

5 Mecanismo de seleção de componentes

5 Mecanismo de seleção de componentes Mecanismo de seleção de componentes 50 5 Mecanismo de seleção de componentes O Kaluana Original, apresentado em detalhes no capítulo 3 deste trabalho, é um middleware que facilita a construção de aplicações

Leia mais

Introdução aos Computadores

Introdução aos Computadores Os Computadores revolucionaram as formas de processamento de Informação pela sua capacidade de tratar grandes quantidades de dados em curto espaço de tempo. Nos anos 60-80 os computadores eram máquinas

Leia mais

CHECK - LIST - ISO 9001:2000

CHECK - LIST - ISO 9001:2000 REQUISITOS ISO 9001: 2000 SIM NÃO 1.2 APLICAÇÃO A organização identificou as exclusões de itens da norma no seu manual da qualidade? As exclusões são relacionadas somente aos requisitos da sessão 7 da

Leia mais

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Introdução Modelos de Processo de Desenvolvimento de Software Os modelos de processos de desenvolvimento de software surgiram pela necessidade de dar resposta às

Leia mais

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA RESUMO Ricardo Della Libera Marzochi A introdução ao Service Component Architecture (SCA) diz respeito ao estudo dos principais fundamentos

Leia mais

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio 32 3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio Este capítulo apresenta o framework orientado a aspectos para monitoramento e análise de processos de negócio

Leia mais

Curso: Técnico de Informática Disciplina: Redes de Computadores. 1- Apresentação Binária

Curso: Técnico de Informática Disciplina: Redes de Computadores. 1- Apresentação Binária 1- Apresentação Binária Os computadores funcionam e armazenam dados mediante a utilização de chaves eletrônicas que são LIGADAS ou DESLIGADAS. Os computadores só entendem e utilizam dados existentes neste

Leia mais

TÍTULO: PROGRAMAÇÃO DE CLP PARA UMA MÁQUINA DE SECÇÃO SEGMENTOS ORGÂNICOS

TÍTULO: PROGRAMAÇÃO DE CLP PARA UMA MÁQUINA DE SECÇÃO SEGMENTOS ORGÂNICOS Anais do Conic-Semesp. Volume 1, 2013 - Faculdade Anhanguera de Campinas - Unidade 3. ISSN 2357-8904 TÍTULO: PROGRAMAÇÃO DE CLP PARA UMA MÁQUINA DE SECÇÃO SEGMENTOS ORGÂNICOS CATEGORIA: CONCLUÍDO ÁREA:

Leia mais

ICORLI. INSTALAÇÃO, CONFIGURAÇÃO e OPERAÇÃO EM REDES LOCAIS e INTERNET

ICORLI. INSTALAÇÃO, CONFIGURAÇÃO e OPERAÇÃO EM REDES LOCAIS e INTERNET INSTALAÇÃO, CONFIGURAÇÃO e OPERAÇÃO EM REDES LOCAIS e INTERNET 2010/2011 1 Protocolo TCP/IP É um padrão de comunicação entre diferentes computadores e diferentes sistemas operativos. Cada computador deve

Leia mais

10 DICAS DE TECNOLOGIA PARA AUMENTAR SUA PRODUTIVIDADE NO TRABALHO

10 DICAS DE TECNOLOGIA PARA AUMENTAR SUA PRODUTIVIDADE NO TRABALHO 10 DICAS DE TECNOLOGIA PARA AUMENTAR SUA PRODUTIVIDADE NO TRABALHO UMA DAS GRANDES FUNÇÕES DA TECNOLOGIA É A DE FACILITAR A VIDA DO HOMEM, SEJA NA VIDA PESSOAL OU CORPORATIVA. ATRAVÉS DELA, ELE CONSEGUE

Leia mais

ARQUITETURA DE COMPUTADORES - 1866

ARQUITETURA DE COMPUTADORES - 1866 7 Unidade Central de Processamento (UCP): O processador é o componente vital do sistema de computação, responsável pela realização das operações de processamento e de controle, durante a execução de um

Leia mais

INTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO

INTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO Capítulo 1 INTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO 1.1 Histórico de Linguagens de Programação Para um computador executar uma dada tarefa é necessário que se informe a ele, de uma maneira clara, como ele

Leia mais

Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores.

Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores. Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores. 7.3.1.2 Registradores: São pequenas unidades de memória, implementadas na CPU, com as seguintes características:

Leia mais

Estacionamento de Caminhão com Lógica Fuzzy. Daniel Ricardo dos Santos Diogo de Campos Maurício Oliveira Haensch

Estacionamento de Caminhão com Lógica Fuzzy. Daniel Ricardo dos Santos Diogo de Campos Maurício Oliveira Haensch Relatório de Implementação: Estacionamento de Caminhão com Lógica Fuzzy Daniel Ricardo dos Santos Diogo de Campos Maurício Oliveira Haensch 2 de junho de 2010 Descrição O trabalho consiste em implementar

Leia mais

1.1. Organização de um Sistema Computacional

1.1. Organização de um Sistema Computacional 1. INTRODUÇÃO 1.1. Organização de um Sistema Computacional Desde a antiguidade, o homem vem desenvolvendo dispositivos elétricoeletrônicos (hardware) que funciona com base em instruções e que são capazes

Leia mais

15 Computador, projeto e manufatura

15 Computador, projeto e manufatura A U A UL LA Computador, projeto e manufatura Um problema Depois de pronto o desenho de uma peça ou objeto, de que maneira ele é utilizado na fabricação? Parte da resposta está na Aula 2, que aborda as

Leia mais

Automação de Bancada Pneumática

Automação de Bancada Pneumática Instituto Federal Sul-rio-grandense Campus Pelotas - Curso de Engenharia Elétrica Automação de Bancada Pneumática Disciplina: Projeto Integrador III Professor: Renato Allemand Equipe: Vinicius Obadowski,

Leia mais

Sistema de Controle de Solicitação de Desenvolvimento

Sistema de Controle de Solicitação de Desenvolvimento Sistema de Controle de Solicitação de Desenvolvimento Introdução O presente documento descreverá de forma objetiva as principais operações para abertura e consulta de uma solicitação ao Setor de Desenvolvimento

Leia mais

7.Conclusão e Trabalhos Futuros

7.Conclusão e Trabalhos Futuros 7.Conclusão e Trabalhos Futuros 158 7.Conclusão e Trabalhos Futuros 7.1 Conclusões Finais Neste trabalho, foram apresentados novos métodos para aceleração, otimização e gerenciamento do processo de renderização

Leia mais

UNIVERSIDADE FEDERAL DE SANTA CATARINA EEL5105 Circuitos e Técnicas Digitais Prof. Eduardo L. O. Batista

UNIVERSIDADE FEDERAL DE SANTA CATARINA EEL5105 Circuitos e Técnicas Digitais Prof. Eduardo L. O. Batista UNIVERSIDADE FEDERAL DE SANTA CATARINA EEL5105 Circuitos e Técnicas Digitais Prof. Eduardo L. O. Batista EXPERIMENTO 1 INTRODUÇÃO AO LABORATÓRIO A. Introdução O Quartus II é um software utilizado para

Leia mais

Engenharia de Software III

Engenharia de Software III Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,

Leia mais

Na primeira aula, conhecemos um pouco sobre o projeto Arduino, sua família de placas, os Shields e diversos exemplos de aplicações.

Na primeira aula, conhecemos um pouco sobre o projeto Arduino, sua família de placas, os Shields e diversos exemplos de aplicações. Na primeira aula, conhecemos um pouco sobre o projeto Arduino, sua família de placas, os Shields e diversos exemplos de aplicações. A partir de agora, iremos conhecer o hardware do Arduino e suas caracteristicas

Leia mais

Processos de Desenvolvimento de Software

Processos de Desenvolvimento de Software Processos de Desenvolvimento de Software Gerenciamento de Projetos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e

Leia mais

Aperfeiçoamento Técnico com respeito ao Profissional.

Aperfeiçoamento Técnico com respeito ao Profissional. Política de Treinamento DME Aperfeiçoamento Técnico com respeito ao Profissional. A DME é uma empresa voltada para o atendimento das necessidades em conclusão e consumo de Energia Elétrica, consagrou-se

Leia mais

Tutorial de Eletrônica Aplicações com 555 v2010.05

Tutorial de Eletrônica Aplicações com 555 v2010.05 Tutorial de Eletrônica Aplicações com 555 v2010.05 Linha de Equipamentos MEC Desenvolvidos por: Maxwell Bohr Instrumentação Eletrônica Ltda. Rua Porto Alegre, 212 Londrina PR Brasil http://www.maxwellbohr.com.br

Leia mais

3. Cite o nome e características do ponto mais alto e do ponto mais baixo de uma onda?

3. Cite o nome e características do ponto mais alto e do ponto mais baixo de uma onda? Exercícios: 1. Sobre:Ondas Responda: a. O que é a Natureza de Ondas? b. O que origina as Ondas Mecânicas? c. As Ondas Mecânicas se propagam no vácuo? Explique a sua resposta. d. Quais são os elementos

Leia mais

GARANTIA DA QUALIDADE DE SOFTWARE

GARANTIA DA QUALIDADE DE SOFTWARE GARANTIA DA QUALIDADE DE SOFTWARE Fonte: http://www.testexpert.com.br/?q=node/669 1 GARANTIA DA QUALIDADE DE SOFTWARE Segundo a NBR ISO 9000:2005, qualidade é o grau no qual um conjunto de características

Leia mais

Easy Lab. Manual do usuário Revisão 1.2 01/11/14. www.dma.ind.br. DMA Electronics 1

Easy Lab. Manual do usuário Revisão 1.2 01/11/14. www.dma.ind.br. DMA Electronics 1 Easy Lab Manual do usuário Revisão 1.2 01/11/14 www.dma.ind.br DMA Electronics 1 A DMA ELECTRONICS projeta e fabrica sistemas para aquisição e registro de dados com conexão a um computador do tipo PC.

Leia mais

3. Arquitetura Básica do Computador

3. Arquitetura Básica do Computador 3. Arquitetura Básica do Computador 3.1. Modelo de Von Neumann Dar-me-eis um grão de trigo pela primeira casa do tabuleiro; dois pela segunda, quatro pela terceira, oito pela quarta, e assim dobrando sucessivamente,

Leia mais

QUALIDADE DE SOFTWARE. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 27 Slide 1

QUALIDADE DE SOFTWARE. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 27 Slide 1 QUALIDADE DE SOFTWARE Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 27 Slide 1 Objetivos Apresentar o processo de gerenciamento de qualidade e as atividades centrais da garantia de

Leia mais

Placa Acessório Modem Impacta

Placa Acessório Modem Impacta manual do usuário Placa Acessório Modem Impacta Parabéns, você acaba de adquirir um produto com a qualidade e segurança Intelbras. A Placa Modem é um acessório que poderá ser utilizado em todas as centrais

Leia mais

Entendendo como funciona o NAT

Entendendo como funciona o NAT Entendendo como funciona o NAT Vamos inicialmente entender exatamente qual a função do NAT e em que situações ele é indicado. O NAT surgiu como uma alternativa real para o problema de falta de endereços

Leia mais

Sistemas de Numeração. Professor: Rogério R. de Vargas INFORMÁTICA 2014/2

Sistemas de Numeração. Professor: Rogério R. de Vargas INFORMÁTICA 2014/2 INFORMÁTICA Sistemas de Numeração Professor: Rogério R. de Vargas 2014/2 Sistemas de Numeração São sistemas de notação usados para representar quantidades abstratas denominadas números. Um sistema numérico

Leia mais

Fundamentos de Hardware

Fundamentos de Hardware Fundamentos de Hardware Curso Técnico em Informática SUMÁRIO PLACAS DE EXPANSÃO... 3 PLACAS DE VÍDEO... 3 Conectores de Vídeo... 4 PLACAS DE SOM... 6 Canais de Áudio... 7 Resolução das Placas de Som...

Leia mais

CAPÍTULO 5. INTERFACES PARA PERIFÉRICOS DE ARMAZENAMENTO INTERFACES DIVERSAS: FIREWIRE, SPI e I 2 C INTERFACES COM O MUNDO ANALÓGICO

CAPÍTULO 5. INTERFACES PARA PERIFÉRICOS DE ARMAZENAMENTO INTERFACES DIVERSAS: FIREWIRE, SPI e I 2 C INTERFACES COM O MUNDO ANALÓGICO 28 CAPÍTULO 5 INTERFACES PARA PERIFÉRICOS DE ARMAZENAMENTO INTERFACES DIVERSAS: FIREWIRE, SPI e I 2 C INTERFACES COM O MUNDO ANALÓGICO Interfaces para periféricos de armazenamento: Periféricos de armazenamento,

Leia mais

CSF FasTest SOLUÇÕES DE OUTPUT DE PAGAMENTO

CSF FasTest SOLUÇÕES DE OUTPUT DE PAGAMENTO CSF FasTest SOLUÇÕES DE OUTPUT DE PAGAMENTO CSF FasTest Reduzindo o esforço empregado nos testes Os testes são a faca de dois gumes da composição de documentos: durante o ciclo de vida de seu documento,

Leia mais

CONTROLE DE UM SERVO MOTOR

CONTROLE DE UM SERVO MOTOR CONTROLE DE UM SERVO MOTOR Versão 2014 RESUMO Esta experiência tem como objetivo a familiarização e o projeto de um circuito de controle simples de um servo motor. A parte experimental inclui atividades

Leia mais

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

Leia mais

DECODIFICADOR DE DISPLAY DE 7 SEGMENTOS COM LATCH

DECODIFICADOR DE DISPLAY DE 7 SEGMENTOS COM LATCH UNIVERSIDADE FEDERAL DO PARANÁ DEPARTAMENTO DE ENGENHARIA ELÉTRICA DECODIFICADOR DE DISPLAY DE 7 SEGMENTOS COM LATCH Projeto para a matéria TE130 Projeto de Circuitos Integrados Digitais, ministrada pelo

Leia mais

APLICAÇÃO PARA ANÁLISE GRÁFICA DE EXERCÍCIO FÍSICO A PARTIR DA PLATAFORMA ARDUINO

APLICAÇÃO PARA ANÁLISE GRÁFICA DE EXERCÍCIO FÍSICO A PARTIR DA PLATAFORMA ARDUINO APLICAÇÃO PARA ANÁLISE GRÁFICA DE EXERCÍCIO FÍSICO A PARTIR DA PLATAFORMA ARDUINO Alessandro A. M de Oliveira 1 ; Alexandre de Oliveira Zamberlan 1 ; Péricles Pinheiro Feltrin 2 ; Rafael Ogayar Gomes 3

Leia mais

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador>

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador> FACULDADE DE ENGENHARIA DE COMPUTAÇÃO PROJETO FINAL I e II PLANO DE TRABALHO O Trabalho de Conclusão de Curso (TCC) a ser desenvolvido

Leia mais

Itinerários de Ônibus Relatório Final

Itinerários de Ônibus Relatório Final CENTRO UNIVERSITÁRIO SENAC Itinerários de Ônibus Relatório Final Grupo 5 Caio Roque Daniel Nunes Elise Roese José Caneiro Marcos Grignani São Paulo Junho de 2007 1 ÍNDICE 1. Introdução... 3 2. Desenvolvimento...

Leia mais

Memórias Prof. Galvez Gonçalves

Memórias Prof. Galvez Gonçalves Arquitetura e Organização de Computadores 1 s Prof. Galvez Gonçalves Objetivo: Compreender os tipos de memória e como elas são acionadas nos sistemas computacionais modernos. INTRODUÇÃO Nas aulas anteriores

Leia mais

ESTUDO COMPARATIVO ENTRE AS PLATAFORMAS ARDUINO E PIC

ESTUDO COMPARATIVO ENTRE AS PLATAFORMAS ARDUINO E PIC ESTUDO COMPARATIVO ENTRE AS PLATAFORMAS ARDUINO E PIC Tiago Menezes Xavier de Souza¹, Igor dos Passos Granado¹, Wyllian Fressatti¹ ¹Universidade Paranaense (UNIPAR) Paranavaí- PR- Brasil tiago_x666@hotmail.com,

Leia mais

Cálculo Numérico Aula 1: Computação numérica. Tipos de Erros. Aritmética de ponto flutuante

Cálculo Numérico Aula 1: Computação numérica. Tipos de Erros. Aritmética de ponto flutuante Cálculo Numérico Aula : Computação numérica. Tipos de Erros. Aritmética de ponto flutuante Computação Numérica - O que é Cálculo Numérico? Cálculo numérico é uma metodologia para resolver problemas matemáticos

Leia mais

ULA Sinais de Controle enviados pela UC

ULA Sinais de Controle enviados pela UC Solução - Exercícios Processadores 1- Qual as funções da Unidade Aritmética e Lógica (ULA)? A ULA é o dispositivo da CPU que executa operações tais como: Adição Subtração Multiplicação Divisão Incremento

Leia mais

Arquitetura de Computadores Paralelismo, CISC X RISC, Interpretação X Tradução, Caminho de dados

Arquitetura de Computadores Paralelismo, CISC X RISC, Interpretação X Tradução, Caminho de dados Arquitetura de Computadores Paralelismo, CISC X RISC, Interpretação X Tradução, Caminho de dados Organização de um Computador Típico Memória: Armazena dados e programas. Processador (CPU - Central Processing

Leia mais

Prof. Esp. Lucas Cruz

Prof. Esp. Lucas Cruz Prof. Esp. Lucas Cruz O hardware é qualquer tipo de equipamento eletrônico utilizado para processar dados e informações e tem como função principal receber dados de entrada, processar dados de um usuário

Leia mais

A idéia hardware sugerida é colocar a placa entre o PC e o microcontrolador, conforme mostrado no esquema abaixo.

A idéia hardware sugerida é colocar a placa entre o PC e o microcontrolador, conforme mostrado no esquema abaixo. Circuito de gravação (AVR programmer) Introdução Nossa proposta, nesta parte do trabalho, é apresentar um circuito para gravação ISP (In-System- Programming) para microcontroladores AVR. Este circuito,

Leia mais

Processos e Threads (partes I e II)

Processos e Threads (partes I e II) Processos e Threads (partes I e II) 1) O que é um processo? É qualquer aplicação executada no processador. Exe: Bloco de notas, ler um dado de um disco, mostrar um texto na tela. Um processo é um programa

Leia mais

O modelo do computador

O modelo do computador O modelo do computador Objetivos: Mostrar como é o funcionamento dos computadores modernos Mostrar as limitações a que estamos sujeitos quando programamos Histórico Os primeiros computadores são da década

Leia mais

A seguir serão detalhados os atuadores da estação com a finalidade de facilitar a visualização e ilustrar os circuitos contidos em anexo.

A seguir serão detalhados os atuadores da estação com a finalidade de facilitar a visualização e ilustrar os circuitos contidos em anexo. MANUAL DE OPERAÇÃO Estação de Distribuição MPS Documentação Técnica Estação de distribuição Vista superior da estação Detalhe do terminal de válvulas CPV 2 Descrição da Estação Essa estação tem como principal

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Aritmética Computacional Slide 1 Sumário Unidade Lógica e Aritmética Representação de Números Inteiros Aritmética de Números Inteiros Representação de Números

Leia mais

Um Driver NDIS Para Interceptação de Datagramas IP

Um Driver NDIS Para Interceptação de Datagramas IP Um Driver NDIS Para Interceptação de Datagramas IP Paulo Fernando da Silva psilva@senior.com.br Sérgio Stringari stringari@furb.br Resumo. Este artigo apresenta o desenvolvimento de um driver NDIS 1 para

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Sistemas Operacionais Prof. Marcelo Sabaris Carballo Pinto Gerenciamento de Dispositivos Gerenciamento de Dispositivos de E/S Introdução Gerenciador de Dispositivos Todos os dispositivos

Leia mais

Multiplexador. Permitem que vários equipamentos compartilhem um único canal de comunicação

Multiplexador. Permitem que vários equipamentos compartilhem um único canal de comunicação Multiplexadores Permitem que vários equipamentos compartilhem um único canal de comunicação Transmissor 1 Receptor 1 Transmissor 2 Multiplexador Multiplexador Receptor 2 Transmissor 3 Receptor 3 Economia

Leia mais

PROJETO DE REDES www.projetoderedes.com.br

PROJETO DE REDES www.projetoderedes.com.br PROJETO DE REDES www.projetoderedes.com.br Curso de Tecnologia em Redes de Computadores Disciplina: Redes I Fundamentos - 1º Período Professor: José Maurício S. Pinheiro AULA 2: Transmissão de Dados 1.

Leia mais

Engenharia de Requisitos Estudo de Caso

Engenharia de Requisitos Estudo de Caso Engenharia de Requisitos Estudo de Caso Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / Ian Sommerville 2007 Slide 1 Engenharia de Requisitos Exemplo 1 Reserva de Hotel 1. INTRODUÇÃO Este

Leia mais

Intranets. FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO

Intranets. FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO Intranets FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO As intranets são redes internas às organizações que usam as tecnologias utilizadas na rede mundial

Leia mais

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS)

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS) Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS) Definição Geral: Disciplina de Compiladores Prof. Jorge Bidarra (UNIOESTE) A especificação de requisitos tem como objetivo

Leia mais

Características técnicas Baseado no ATMega da empresa AVR, fabricante de micro-controladores em plena ascensão e concorrente do PIC Pode usar ATMega

Características técnicas Baseado no ATMega da empresa AVR, fabricante de micro-controladores em plena ascensão e concorrente do PIC Pode usar ATMega ARDUINO O que é Arduino Arduino foi criado na Itália por Máximo Banzi com o objetivo de fomentar a computação física, cujo conceito é aumentar as formas de interação física entre nós e os computadores.

Leia mais

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES Prof. Ms. Carlos José Giudice dos Santos cpgcarlos@yahoo.com.br www.oficinadapesquisa.com.br Conceito de Computador Um computador digital é

Leia mais

Resolução de problemas e desenvolvimento de algoritmos

Resolução de problemas e desenvolvimento de algoritmos SSC0101 - ICC1 Teórica Introdução à Ciência da Computação I Resolução de problemas e desenvolvimento de algoritmos Prof. Vanderlei Bonato Prof. Cláudio Fabiano Motta Toledo Sumário Análise e solução de

Leia mais

PROGRAMAÇÃO EM VHDL DE CIRCUITOS LÓGICOS PARA IMPLEMENTAÇÃO EM FPGA RELATÓRIO FINAL DE PROJETO DE INICIAÇÃO CIENTÍFICA

PROGRAMAÇÃO EM VHDL DE CIRCUITOS LÓGICOS PARA IMPLEMENTAÇÃO EM FPGA RELATÓRIO FINAL DE PROJETO DE INICIAÇÃO CIENTÍFICA PROGRAMAÇÃO EM VHDL DE CIRCUITOS LÓGICOS PARA IMPLEMENTAÇÃO EM FPGA RELATÓRIO FINAL DE PROJETO DE INICIAÇÃO CIENTÍFICA (PIBIC/CNPq/INPE) Yegor Gomes de Mello (UFRN, Bolsista PIBIC/CNPq) E-mail: yegor_melo@crn.inpe.br

Leia mais

Monitor de Rede Elétrica Som Maior Pro. Manual do Usuário Versão 3.9f

Monitor de Rede Elétrica Som Maior Pro. Manual do Usuário Versão 3.9f Monitor de Rede Elétrica Som Maior Pro Manual do Usuário Versão 3.9f 2 ÍNDICE PÁG. 1 APRESENTAÇÃO...03 2 DESCRIÇÃO DO EQUIPAMENTO...04 2.1 ROTINA INICIAL DE AVALIAÇÃO DA REDE ELÉTRICA...04 2.2 TROCA DE

Leia mais

Algoritmos: Lógica para desenvolvimento de programação de computadores. Autor: José Augusto Manzano. Capítulo 1 Abordagem Contextual

Algoritmos: Lógica para desenvolvimento de programação de computadores. Autor: José Augusto Manzano. Capítulo 1 Abordagem Contextual Algoritmos: Lógica para desenvolvimento de programação de computadores Autor: José Augusto Manzano Capítulo 1 Abordagem Contextual 1.1. Definições Básicas Raciocínio lógico depende de vários fatores para

Leia mais

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia. 1 Introdução aos Sistemas de Informação 2002 Aula 4 - Desenvolvimento de software e seus paradigmas Paradigmas de Desenvolvimento de Software Pode-se considerar 3 tipos de paradigmas que norteiam a atividade

Leia mais

Sistemas de Informações Gerenciais

Sistemas de Informações Gerenciais Sistemas de Informações Gerenciais Aula 3 Sistema de Informação Conceito, Componentes e Evolução Professora: Cintia Caetano INTRODUÇÃO Conceito: Um Sistema de Informação (SI) é um sistema cujo elemento

Leia mais

Sistemas Digitais. Módulo 15 Prof. Celso PLD - DISPOSITIVOS LÓGICOS PROGRAMÁVEIS

Sistemas Digitais. Módulo 15 Prof. Celso PLD - DISPOSITIVOS LÓGICOS PROGRAMÁVEIS 1 PLD - DISPOSITIVOS LÓGICOS PROGRAMÁVEIS Os projetos com circuitos digitais mais complexos podem se tornar inviáveis devido a vários problemas, tais como: - Elevado número de C.I. (circuitos integrados)

Leia mais

Protocolo TCP/IP. Neste caso cada computador da rede precisa de, pelo menos, dois parâmetros configurados:

Protocolo TCP/IP. Neste caso cada computador da rede precisa de, pelo menos, dois parâmetros configurados: Protocolo TCP/IP Neste caso cada computador da rede precisa de, pelo menos, dois parâmetros configurados: Número IP Máscara de sub-rede O Número IP é um número no seguinte formato: x.y.z.w Não podem existir

Leia mais

Usando o Arena em Simulação

Usando o Arena em Simulação Usando o Arena em Simulação o ARENA foi lançado pela empresa americana Systems Modeling em 1993 e é o sucessor de dois outros produtos de sucesso da mesma empresa: SIMAN (primeiro software de simulação

Leia mais

PROGRAMAÇÃO EM LINGUAGEM LADDER LINGUAGEM DE RELÉS

PROGRAMAÇÃO EM LINGUAGEM LADDER LINGUAGEM DE RELÉS 1 PROGRAMAÇÃO EM LINGUAGEM LADDER LINGUAGEM DE RELÉS INTRODUÇÃO O processamento interno do CLP é digital e pode-se, assim, aplicar os conceitos de lógica digital para compreen8 der as técnicas e as linguagens

Leia mais

Planejamento - 7. Planejamento do Gerenciamento do Risco Identificação dos riscos. Mauricio Lyra, PMP

Planejamento - 7. Planejamento do Gerenciamento do Risco Identificação dos riscos. Mauricio Lyra, PMP Planejamento - 7 Planejamento do Gerenciamento do Risco Identificação dos riscos 1 O que é risco? Evento que representa uma ameaça ou uma oportunidade em potencial Plano de gerenciamento do risco Especifica

Leia mais

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação SOFT DISCIPLINA: Engenharia de Software AULA NÚMERO: 10 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir os conceitos de coesão e acoplamento. DESENVOLVIMENTO Projetar

Leia mais