SlideShare uma empresa Scribd logo
Padrão de desenvolvimento para
prototipagem rápida em projetos de
sistemas de controle utilizando a
plataforma de prototipagem eletrônica
Arduino.
Eng°Hamilton Sena
II SATEC
2ª Semana de
Atualização Técnica
CASCAVEL-PR
Jun. 10-14, 2013
Hamilton Sena Acadêmica
- Técnico em processamento de dados
- Engenheiro de Controle e Automação
 Profissional
- Técnico em informática
- Técnico de reparo de equipamentos eletrônicos
- Desenvolvedor e analista de sistemas
- Desenvolvedor de sistemas embarcados
- Sócio-proprietário da empresa Mobhis Automação Urbana Ltda.
- Professor do Senai
Prototipagem rápida
 Prototipação é uma abordagem baseada
numa visão evolutiva do desenvolvimento.
 Com intuito de avaliar algumas de suas
características antes que o sistema venha
realmente a ser construído, de forma
definitiva.
REPRAP - http://reprap.org
Prototipagem rápida - Vantagens
Time-to-market
Quem chega primeiro ganha o mercado
Ajuda a controlar o risco
É muito mais seguro decidir diante de um
protótipo
Rápido e barato
Método mais rápido e barato de resolver
problemas.
Projeto Toopedalando
O mercado não espera!
Outubro/2010
Interesse
Novembro/2010
1ªapresentação
Março/2011
Lançamento do
Edital
Julho/2011
Instalação 1ª
Estação
Padrão de desenvolvimento
Mão na
massa
Ansioso
Não incomode
Estou fazendo
programa!!!
Depois de
2000 linhas ...
... começa a
testar
O código
nem compila
Caos total!
Padrão de desenvolvimento
Mas era só para
piscar o led !!!
Tudo porque ele não tinha um plano.
Padrão de desenvolvimento
Padrão de desenvolvimento
 São soluções para problemas normalmente encontrados em
projetos de software.
 São independentes de linguagem.
 E oferecem uma descrição ou modelo de como resolver deter-
minado problema.
Maquina de estados
São estruturas lógicas compostas por um conjunto
de estados e um conjunto de regras de transição
entre os estados.
FSM – Controle de processos
FSM - Jogos
FSM – Robótica
Arduino
 Em 2005, um professor italiano, Mossimo Banzi,
decidiu que queria um simples controlador lógico
acessível aos seus alunos de forma a desenvolverem
os seus próprios projetos técnicos.
 Consiste num microcontrolador Atmel AVR de 8 bits,
com componentes complementares para facilitar a
programação e incorporação para outros circuitos.
 E/S digital e analógica, além de uma interface USB,
para interagir com computador, e programação.
Arduino
 Hardware Aberto
Arduino
Universo Arduino
O Hardware
O ambiente
de programação
Os Shields A comunidade
Alguns projetos
Quadricóptero
http://quadricoptero.wordpress.com/
ArduSat
Alguns projetos
Wifi Robot
http://www.jbprojects.net/projects/wifirobot/
Open Energy Monitor
http://openenergymonitor.org
Controlador Lógico Programável
21
São microcomputadores de propósito específico,
dedicado para o controle de processos e equipamentos.
Diferença entre Arduino e CLP
ARDUINO CLP
Equipamento de proposito geral Equipamento de proposito especifico
Não contem certificações de segurança, tanto
software, quanto hardware. Por ser uma
plataforma de desenvolvimento.
Vem com certificações industriais e
tem muitas características de
segurança.
Faça você mesmo Varias empresas desenvolvedoras
R$ 60,00 ~ R$ 100,00 A partir de R$300,00
Linguagem de programação - LADDER
Linguagem de programação – Estruturada “C”
Processo de desenvolvimento - Firmware
1°
• Mapeamento das entradas e saídas do processo
2°
• Montagem da maquina de estados
3°
• Tabela de transições
4°
• Conversão para linguagem de interesse (C ou Ladder)
Processo – Sistema Semaforico
1° Mapeamento das entradas e saídas do processo
ENTRADAS SAÍDAS
NOME TIPO NOME TIPO
TEMP_1 Temporizador LAMPR1 Digital
TEMP_2
Temporizador
LAMPY1 Digital
TEMP_3
Temporizador
LAMPG1 Digital
TEMP_4
Temporizador
LAMPR2 Digital
TEMP_5
Temporizador
LAMPY2 Digital
TEMP_6
Temporizador
LAMPG2 Digital
1° Mapeamento das entradas e saídas do processo
ENTRADAS SAÍDAS
NOME TIPO NOME TIPO
TEMP_1 Temporizador LAMPR1 Digital
TEMP_2
Temporizador
LAMPY1 Digital
TEMP_3
Temporizador
LAMPG1 Digital
TEMP_4
Temporizador
LAMPR2 Digital
TEMP_5
Temporizador
LAMPY2 Digital
TEMP_6
Temporizador
LAMPG2 Digital
2° Montagem da maquina de estados
• LAMPR1 = 1
• LAMPY1 = 0
• LAMPG1 = 0
• LAMPR2 = 0
• LAMPY2 = 0
• LAMPG2 = 1
ESTADO 0
• LAMPR1 = 1
• LAMPY1 = 0
• LAMPG1 = 0
• LAMPR2 = 0
• LAMPY2 = 1
• LAMPG2 = 0
ESTADO 1 • LAMPR1 = 1
• LAMPY1 = 0
• LAMPG1 = 0
• LAMPR2 = 1
• LAMPY2 = 0
• LAMPG2 = 0
ESTADO 2
• LAMPR1 = 0
• LAMPY1 = 0
• LAMPG1 = 1
• LAMPR2 = 1
• LAMPY2 = 0
• LAMPG2 = 0
ESTADO 3 • LAMPR1 = 0
• LAMPY1 = 1
• LAMPG1 = 0
• LAMPR2 = 1
• LAMPY2 = 0
• LAMPG2 = 0
ESTADO 4
• LAMPR1 = 1
• LAMPY1 = 0
• LAMPG1 = 0
• LAMPR2 = 1
• LAMPY2 = 0
• LAMPG2 = 0
ESTADO 5
TEMP_6 = 2s
TEMP_1 = 8s
TEMP_2 = 4s
TEMP_3 = 2s
TEMP_4 = 8s
TEMP_5 = 8s
AVENIDAA
RUAB
3° Tabela de transições
LAMPR1 LAMPY1 LAMPG1 LAMPR2 LAMPY2 LAMPG2
ESTADO 0 1 0 0 0 0 1
ESTADO 1 1 0 0 0 1 0
ESTADO 2 1 0 0 1 0 0
ESTADO 3 0 0 1 1 0 0
ESTADO 4 0 1 0 1 0 0
ESTADO 5 1 0 0 1 0 0
ESTADO 0
• LAMPR1 = 1
• LAMPY1 = 0
• LAMPG1 = 0
• LAMPR2 = 0
• LAMPY2 = 0
• LAMPG2 = 1
ESTADO 1
• LAMPR1 = 1
• LAMPY1 = 0
• LAMPG1 = 0
• LAMPR2 = 0
• LAMPY2 = 1
• LAMPG2 = 0
ESTADO 2
• LAMPR1 = 1
• LAMPY1 = 0
• LAMPG1 = 0
• LAMPR2 = 1
• LAMPY2 = 0
• LAMPG2 = 0
ESTADO 3
• LAMPR1 = 0
• LAMPY1 = 0
• LAMPG1 = 1
• LAMPR2 = 1
• LAMPY2 = 0
• LAMPG2 = 0
ESTADO 4
• LAMPR1 = 0
• LAMPY1 = 1
• LAMPG1 = 0
• LAMPR2 = 1
• LAMPY2 = 0
• LAMPG2 = 0
ESTADO 5
• LAMPR1 = 1
• LAMPY1 = 0
• LAMPG1 = 0
• LAMPR2 = 1
• LAMPY2 = 0
• LAMPG2 = 0
4. Conversão para a linguagem de interesse
• 1º Inicialização do Estado 0
• 2º Executa o processo de transição
• 3º Execução das ações
4.1 Conversão para a linguagem Ladder
1º Inicialização do Estado 0
4.1 Conversão para a linguagem Ladder
2º Executa o processo de transição
EXECUTA O ESTADO ATUAL
HABILITA O PROXIMO ESTADO E
DESABILITA O ESTADO ANTERIOR
LAMPR1 LAMPY1 LAMPG1 LAMPR2 LAMPY2 LAMPG2
ESTADO 0 1 0 0 0 0 1
ESTADO 1 1 0 0 0 1 0
ESTADO 2 1 0 0 1 0 0
ESTADO 3 0 0 1 1 0 0
ESTADO 4 0 1 0 1 0 0
ESTADO 5 1 0 0 1 0 0
4.1 Conversão para a linguagem Ladder
3º Execução das ações
Testando...
4.2 Conversão para a linguagem C
1º Inicialização do Estado 0
4.2 Conversão para a linguagem C
2º Executa o processo de transição
EXECUTA O ESTADO ATUAL
HABILITA O PROXIMO ESTADO E
DESABILITA O ESTADO ANTERIOR
LAMPR1 LAMPY1 LAMPG1 LAMPR2 LAMPY2 LAMPG2
ESTADO 0 1 0 0 0 0 1
ESTADO 1 1 0 0 0 1 0
ESTADO 2 1 0 0 1 0 0
ESTADO 3 0 0 1 1 0 0
ESTADO 4 0 1 0 1 0 0
ESTADO 5 1 0 0 1 0 0
4.2 Conversão para a linguagem C
3º Execução das ações
Testando...
Conclusão
Conhecimento
Ferramenta
Agilidade
Oportunidade
Bons
Negócios
hjssena@gmail.com
hamilton.sena
http://hamiltonsena.net

Mais conteúdo relacionado

Mais procurados

POO - 04 - Variávies em Java
POO - 04 - Variávies em JavaPOO - 04 - Variávies em Java
POO - 04 - Variávies em Java
Ludimila Monjardim Casagrande
 
Direito penal i concurso de pessoas
Direito penal i   concurso de pessoasDireito penal i   concurso de pessoas
Direito penal i concurso de pessoas
Urbano Felix Pugliese
 
Docker: uma visão geral e exemplos de uso
Docker: uma visão geral e exemplos de usoDocker: uma visão geral e exemplos de uso
Docker: uma visão geral e exemplos de uso
Tobias Sette
 
Node.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançadoNode.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançado
Eduardo Bohrer
 
Adventures with Podman and Varlink
Adventures with Podman and VarlinkAdventures with Podman and Varlink
Adventures with Podman and Varlink
Jeremy Brown
 
Direito Constitucional - Nacionalidade
Direito Constitucional - NacionalidadeDireito Constitucional - Nacionalidade
Direito Constitucional - Nacionalidade
Mentor Concursos
 
Metodologia de Desenvolvimento de Softwares
Metodologia de Desenvolvimento de SoftwaresMetodologia de Desenvolvimento de Softwares
Metodologia de Desenvolvimento de Softwares
Aragon Vieira
 
Paradigma lógico
Paradigma lógicoParadigma lógico
Paradigma lógico
Sérgio Souza Costa
 
Flutter - it's all about widgets - Flutter Rhein-Main Meetup
Flutter - it's all about widgets - Flutter Rhein-Main Meetup Flutter - it's all about widgets - Flutter Rhein-Main Meetup
Flutter - it's all about widgets - Flutter Rhein-Main Meetup
Markus Kühle
 
Direito penal ii reabilitação
Direito penal ii   reabilitaçãoDireito penal ii   reabilitação
Direito penal ii reabilitação
Urbano Felix Pugliese
 
D. civil direito das coisas - introdução e posse
D. civil   direito das coisas - introdução e posseD. civil   direito das coisas - introdução e posse
D. civil direito das coisas - introdução e posse
Diana Sampaio
 
Portas logicas
Portas logicasPortas logicas
Portas logicas
Reginaldo Steinhardt
 
Python - Introdução
Python - IntroduçãoPython - Introdução
Python - Introdução
fabiocerqueira
 
Aula 1 - Introdução ao Mobile
Aula 1 - Introdução ao MobileAula 1 - Introdução ao Mobile
Aula 1 - Introdução ao Mobile
Cloves da Rocha
 
Introdução a linguagem c karen lowhany
Introdução a linguagem c   karen lowhanyIntrodução a linguagem c   karen lowhany
Introdução a linguagem c karen lowhany
Karen Costa
 
Direito Administrativo - Atos Administrativos
Direito Administrativo - Atos AdministrativosDireito Administrativo - Atos Administrativos
Direito Administrativo - Atos Administrativos
Mentor Concursos
 
JUnit5 and TestContainers
JUnit5 and TestContainersJUnit5 and TestContainers
JUnit5 and TestContainers
Sunghyouk Bae
 
Node JS reverse shell
Node JS reverse shellNode JS reverse shell
Node JS reverse shell
Madhu Akula
 
Linux Container Technology 101
Linux Container Technology 101Linux Container Technology 101
Linux Container Technology 101
inside-BigData.com
 
Nodejs - A performance que eu sempre quis ter
Nodejs - A performance que eu sempre quis terNodejs - A performance que eu sempre quis ter
Nodejs - A performance que eu sempre quis ter
Emerson Macedo
 

Mais procurados (20)

POO - 04 - Variávies em Java
POO - 04 - Variávies em JavaPOO - 04 - Variávies em Java
POO - 04 - Variávies em Java
 
Direito penal i concurso de pessoas
Direito penal i   concurso de pessoasDireito penal i   concurso de pessoas
Direito penal i concurso de pessoas
 
Docker: uma visão geral e exemplos de uso
Docker: uma visão geral e exemplos de usoDocker: uma visão geral e exemplos de uso
Docker: uma visão geral e exemplos de uso
 
Node.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançadoNode.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançado
 
Adventures with Podman and Varlink
Adventures with Podman and VarlinkAdventures with Podman and Varlink
Adventures with Podman and Varlink
 
Direito Constitucional - Nacionalidade
Direito Constitucional - NacionalidadeDireito Constitucional - Nacionalidade
Direito Constitucional - Nacionalidade
 
Metodologia de Desenvolvimento de Softwares
Metodologia de Desenvolvimento de SoftwaresMetodologia de Desenvolvimento de Softwares
Metodologia de Desenvolvimento de Softwares
 
Paradigma lógico
Paradigma lógicoParadigma lógico
Paradigma lógico
 
Flutter - it's all about widgets - Flutter Rhein-Main Meetup
Flutter - it's all about widgets - Flutter Rhein-Main Meetup Flutter - it's all about widgets - Flutter Rhein-Main Meetup
Flutter - it's all about widgets - Flutter Rhein-Main Meetup
 
Direito penal ii reabilitação
Direito penal ii   reabilitaçãoDireito penal ii   reabilitação
Direito penal ii reabilitação
 
D. civil direito das coisas - introdução e posse
D. civil   direito das coisas - introdução e posseD. civil   direito das coisas - introdução e posse
D. civil direito das coisas - introdução e posse
 
Portas logicas
Portas logicasPortas logicas
Portas logicas
 
Python - Introdução
Python - IntroduçãoPython - Introdução
Python - Introdução
 
Aula 1 - Introdução ao Mobile
Aula 1 - Introdução ao MobileAula 1 - Introdução ao Mobile
Aula 1 - Introdução ao Mobile
 
Introdução a linguagem c karen lowhany
Introdução a linguagem c   karen lowhanyIntrodução a linguagem c   karen lowhany
Introdução a linguagem c karen lowhany
 
Direito Administrativo - Atos Administrativos
Direito Administrativo - Atos AdministrativosDireito Administrativo - Atos Administrativos
Direito Administrativo - Atos Administrativos
 
JUnit5 and TestContainers
JUnit5 and TestContainersJUnit5 and TestContainers
JUnit5 and TestContainers
 
Node JS reverse shell
Node JS reverse shellNode JS reverse shell
Node JS reverse shell
 
Linux Container Technology 101
Linux Container Technology 101Linux Container Technology 101
Linux Container Technology 101
 
Nodejs - A performance que eu sempre quis ter
Nodejs - A performance que eu sempre quis terNodejs - A performance que eu sempre quis ter
Nodejs - A performance que eu sempre quis ter
 

Destaque

Sistema tintométrico tcc senai Carlos Henrique Borges
Sistema tintométrico tcc senai   Carlos Henrique BorgesSistema tintométrico tcc senai   Carlos Henrique Borges
Sistema tintométrico tcc senai Carlos Henrique Borges
Carlos Henrique Borges
 
Aula 01 automação e controle
Aula 01   automação e controleAula 01   automação e controle
Aula 01 automação e controle
Fernanda Alves
 
Apostila de automação com clp em linguagem ladder
Apostila de automação com clp em linguagem ladderApostila de automação com clp em linguagem ladder
Apostila de automação com clp em linguagem ladder
marv2
 
Automação industrial
Automação industrialAutomação industrial
Automação industrial
Daniele da Hora
 
O que é arduino?
O que é arduino?O que é arduino?
O que é arduino?
Alberth Florêncio
 
Week plan
Week planWeek plan
Week plan
Demi-masa Darkas
 
Mini Curso Introdutório ao Arduino
Mini Curso Introdutório ao ArduinoMini Curso Introdutório ao Arduino
Mini Curso Introdutório ao Arduino
Crescencio Rodrigues Lima Neto
 
Arduino Básico
Arduino BásicoArduino Básico
Arduino Básico
MarcusHenriqueTeixeira
 
15507933 apostila-de-cl ps-ladder
15507933 apostila-de-cl ps-ladder15507933 apostila-de-cl ps-ladder
15507933 apostila-de-cl ps-ladder
elkbongg
 
Aula2 c 14-02-2013
Aula2 c 14-02-2013Aula2 c 14-02-2013
Aula2 c 14-02-2013
Hamilton Sena
 
Aula2 a 14-02-2013
Aula2 a 14-02-2013Aula2 a 14-02-2013
Aula2 a 14-02-2013
Hamilton Sena
 
Impresssoras laser
Impresssoras laserImpresssoras laser
Impresssoras laser
Hamilton Sena
 
Aula4 28-02-2013
Aula4 28-02-2013Aula4 28-02-2013
Aula4 28-02-2013
Hamilton Sena
 
Aula2 b 14-02-2013
Aula2 b 14-02-2013Aula2 b 14-02-2013
Aula2 b 14-02-2013
Hamilton Sena
 
10 exemplos de aplicações com logo!
10 exemplos de aplicações com logo!10 exemplos de aplicações com logo!
10 exemplos de aplicações com logo!
Marcio Miranda
 
Manual logo ago_13
Manual logo ago_13 Manual logo ago_13
Manual logo ago_13
Marcio Miranda
 
Tcc controle robótico referenciado por sistema de visão computacional utiliza...
Tcc controle robótico referenciado por sistema de visão computacional utiliza...Tcc controle robótico referenciado por sistema de visão computacional utiliza...
Tcc controle robótico referenciado por sistema de visão computacional utiliza...
Hamilton Sena
 
Apostila clp
Apostila clpApostila clp
Nova apresentação sensores na automação industrial
Nova apresentação sensores na automação industrialNova apresentação sensores na automação industrial
Nova apresentação sensores na automação industrial
Luis Varoli
 
Apresentação - CONTROLE ROBÓTICO REFERENCIADO POR SISTEMA DE VISÃO COMPUTACIO...
Apresentação - CONTROLE ROBÓTICO REFERENCIADO POR SISTEMA DE VISÃO COMPUTACIO...Apresentação - CONTROLE ROBÓTICO REFERENCIADO POR SISTEMA DE VISÃO COMPUTACIO...
Apresentação - CONTROLE ROBÓTICO REFERENCIADO POR SISTEMA DE VISÃO COMPUTACIO...
Hamilton Sena
 

Destaque (20)

Sistema tintométrico tcc senai Carlos Henrique Borges
Sistema tintométrico tcc senai   Carlos Henrique BorgesSistema tintométrico tcc senai   Carlos Henrique Borges
Sistema tintométrico tcc senai Carlos Henrique Borges
 
Aula 01 automação e controle
Aula 01   automação e controleAula 01   automação e controle
Aula 01 automação e controle
 
Apostila de automação com clp em linguagem ladder
Apostila de automação com clp em linguagem ladderApostila de automação com clp em linguagem ladder
Apostila de automação com clp em linguagem ladder
 
Automação industrial
Automação industrialAutomação industrial
Automação industrial
 
O que é arduino?
O que é arduino?O que é arduino?
O que é arduino?
 
Week plan
Week planWeek plan
Week plan
 
Mini Curso Introdutório ao Arduino
Mini Curso Introdutório ao ArduinoMini Curso Introdutório ao Arduino
Mini Curso Introdutório ao Arduino
 
Arduino Básico
Arduino BásicoArduino Básico
Arduino Básico
 
15507933 apostila-de-cl ps-ladder
15507933 apostila-de-cl ps-ladder15507933 apostila-de-cl ps-ladder
15507933 apostila-de-cl ps-ladder
 
Aula2 c 14-02-2013
Aula2 c 14-02-2013Aula2 c 14-02-2013
Aula2 c 14-02-2013
 
Aula2 a 14-02-2013
Aula2 a 14-02-2013Aula2 a 14-02-2013
Aula2 a 14-02-2013
 
Impresssoras laser
Impresssoras laserImpresssoras laser
Impresssoras laser
 
Aula4 28-02-2013
Aula4 28-02-2013Aula4 28-02-2013
Aula4 28-02-2013
 
Aula2 b 14-02-2013
Aula2 b 14-02-2013Aula2 b 14-02-2013
Aula2 b 14-02-2013
 
10 exemplos de aplicações com logo!
10 exemplos de aplicações com logo!10 exemplos de aplicações com logo!
10 exemplos de aplicações com logo!
 
Manual logo ago_13
Manual logo ago_13 Manual logo ago_13
Manual logo ago_13
 
Tcc controle robótico referenciado por sistema de visão computacional utiliza...
Tcc controle robótico referenciado por sistema de visão computacional utiliza...Tcc controle robótico referenciado por sistema de visão computacional utiliza...
Tcc controle robótico referenciado por sistema de visão computacional utiliza...
 
Apostila clp
Apostila clpApostila clp
Apostila clp
 
Nova apresentação sensores na automação industrial
Nova apresentação sensores na automação industrialNova apresentação sensores na automação industrial
Nova apresentação sensores na automação industrial
 
Apresentação - CONTROLE ROBÓTICO REFERENCIADO POR SISTEMA DE VISÃO COMPUTACIO...
Apresentação - CONTROLE ROBÓTICO REFERENCIADO POR SISTEMA DE VISÃO COMPUTACIO...Apresentação - CONTROLE ROBÓTICO REFERENCIADO POR SISTEMA DE VISÃO COMPUTACIO...
Apresentação - CONTROLE ROBÓTICO REFERENCIADO POR SISTEMA DE VISÃO COMPUTACIO...
 

Semelhante a 2ª SATEC - SENAI - Arduino + CLP + Maquina de estados

Pbl assembly avr como atmega328 p - rev.1
Pbl   assembly avr como atmega328 p - rev.1Pbl   assembly avr como atmega328 p - rev.1
Pbl assembly avr como atmega328 p - rev.1
andrademanoel
 
Projeto tacômetro com arduino
Projeto  tacômetro com arduinoProjeto  tacômetro com arduino
Projeto tacômetro com arduino
Jonaspm
 
Cartilha Micro-Controlador 80c51 - Assembly
Cartilha Micro-Controlador 80c51 - AssemblyCartilha Micro-Controlador 80c51 - Assembly
Cartilha Micro-Controlador 80c51 - Assembly
Pedro Raphael
 
TDC2016SP - Dark Launching: Minimizando os riscos de alterações críticas em p...
TDC2016SP - Dark Launching: Minimizando os riscos de alterações críticas em p...TDC2016SP - Dark Launching: Minimizando os riscos de alterações críticas em p...
TDC2016SP - Dark Launching: Minimizando os riscos de alterações críticas em p...
tdc-globalcode
 
Apresentação #TDC2013 - Aplicações Profissionais com Radiuino
Apresentação #TDC2013 - Aplicações Profissionais com RadiuinoApresentação #TDC2013 - Aplicações Profissionais com Radiuino
Apresentação #TDC2013 - Aplicações Profissionais com Radiuino
Omar Branquinho
 
V2 - Microcontroladores: a revolucao do arduino
V2 - Microcontroladores: a revolucao do arduinoV2 - Microcontroladores: a revolucao do arduino
V2 - Microcontroladores: a revolucao do arduino
Samir Siqueira
 
Tcc ritzmann,m.r. robotec
Tcc ritzmann,m.r. robotecTcc ritzmann,m.r. robotec
Tcc ritzmann,m.r. robotec
Magno Ritzmann
 
Tipos de programa para Registro de Software - INPI
Tipos de programa para Registro de Software - INPITipos de programa para Registro de Software - INPI
Tipos de programa para Registro de Software - INPI
Rodrigo Martins Naves
 
Mini Curso Sistemas Embarcados
Mini Curso Sistemas EmbarcadosMini Curso Sistemas Embarcados
Mini Curso Sistemas Embarcados
Suzana Viana Mota
 
AUTOMAÇÃO INDUSTRIAL COM ESP32 e outras placas
AUTOMAÇÃO INDUSTRIAL COM ESP32 e outras placasAUTOMAÇÃO INDUSTRIAL COM ESP32 e outras placas
AUTOMAÇÃO INDUSTRIAL COM ESP32 e outras placas
MarceloAraujo432589
 
Microcontroladores pic ling c unicamp
Microcontroladores pic ling c unicampMicrocontroladores pic ling c unicamp
Microcontroladores pic ling c unicamp
Francisco Fambrini
 
Microcontroladores pic lingc unicamp-150206140414-conversion-gate02
Microcontroladores pic lingc unicamp-150206140414-conversion-gate02Microcontroladores pic lingc unicamp-150206140414-conversion-gate02
Microcontroladores pic lingc unicamp-150206140414-conversion-gate02
Cláudio Alves
 
Curso microcontroladores pic no mp lab 8
Curso microcontroladores pic no mp lab 8Curso microcontroladores pic no mp lab 8
Curso microcontroladores pic no mp lab 8
RogerMasters
 
Projeto de Elasticidade e Evolução do Projeto FIBRE
Projeto de Elasticidade e Evolução do Projeto FIBREProjeto de Elasticidade e Evolução do Projeto FIBRE
Projeto de Elasticidade e Evolução do Projeto FIBRE
FIBRE Testbed
 
Tcc sistema de automação residencial baseado em plataforma open hardware e ...
Tcc   sistema de automação residencial baseado em plataforma open hardware e ...Tcc   sistema de automação residencial baseado em plataforma open hardware e ...
Tcc sistema de automação residencial baseado em plataforma open hardware e ...
Kassiano Pretto
 
38698469 slides-arduino
38698469 slides-arduino38698469 slides-arduino
38698469 slides-arduino
Rui Alves
 
Introdução ao Arduino
Introdução ao ArduinoIntrodução ao Arduino
Introdução ao Arduino
elliando dias
 
Apostila - Tutorial Arduino (Básico).PDF
Apostila - Tutorial Arduino (Básico).PDFApostila - Tutorial Arduino (Básico).PDF
Apostila - Tutorial Arduino (Básico).PDF
engelrfs
 
3D PRINTER REPRAP
3D PRINTER REPRAP3D PRINTER REPRAP
3D PRINTER REPRAP
jamesfrk
 
Introdução ao Arduino: Fundamentos e Aplicações de Microcontroladores
Introdução ao Arduino: Fundamentos e Aplicações de MicrocontroladoresIntrodução ao Arduino: Fundamentos e Aplicações de Microcontroladores
Introdução ao Arduino: Fundamentos e Aplicações de Microcontroladores
Carlos Eduardo Pantoja
 

Semelhante a 2ª SATEC - SENAI - Arduino + CLP + Maquina de estados (20)

Pbl assembly avr como atmega328 p - rev.1
Pbl   assembly avr como atmega328 p - rev.1Pbl   assembly avr como atmega328 p - rev.1
Pbl assembly avr como atmega328 p - rev.1
 
Projeto tacômetro com arduino
Projeto  tacômetro com arduinoProjeto  tacômetro com arduino
Projeto tacômetro com arduino
 
Cartilha Micro-Controlador 80c51 - Assembly
Cartilha Micro-Controlador 80c51 - AssemblyCartilha Micro-Controlador 80c51 - Assembly
Cartilha Micro-Controlador 80c51 - Assembly
 
TDC2016SP - Dark Launching: Minimizando os riscos de alterações críticas em p...
TDC2016SP - Dark Launching: Minimizando os riscos de alterações críticas em p...TDC2016SP - Dark Launching: Minimizando os riscos de alterações críticas em p...
TDC2016SP - Dark Launching: Minimizando os riscos de alterações críticas em p...
 
Apresentação #TDC2013 - Aplicações Profissionais com Radiuino
Apresentação #TDC2013 - Aplicações Profissionais com RadiuinoApresentação #TDC2013 - Aplicações Profissionais com Radiuino
Apresentação #TDC2013 - Aplicações Profissionais com Radiuino
 
V2 - Microcontroladores: a revolucao do arduino
V2 - Microcontroladores: a revolucao do arduinoV2 - Microcontroladores: a revolucao do arduino
V2 - Microcontroladores: a revolucao do arduino
 
Tcc ritzmann,m.r. robotec
Tcc ritzmann,m.r. robotecTcc ritzmann,m.r. robotec
Tcc ritzmann,m.r. robotec
 
Tipos de programa para Registro de Software - INPI
Tipos de programa para Registro de Software - INPITipos de programa para Registro de Software - INPI
Tipos de programa para Registro de Software - INPI
 
Mini Curso Sistemas Embarcados
Mini Curso Sistemas EmbarcadosMini Curso Sistemas Embarcados
Mini Curso Sistemas Embarcados
 
AUTOMAÇÃO INDUSTRIAL COM ESP32 e outras placas
AUTOMAÇÃO INDUSTRIAL COM ESP32 e outras placasAUTOMAÇÃO INDUSTRIAL COM ESP32 e outras placas
AUTOMAÇÃO INDUSTRIAL COM ESP32 e outras placas
 
Microcontroladores pic ling c unicamp
Microcontroladores pic ling c unicampMicrocontroladores pic ling c unicamp
Microcontroladores pic ling c unicamp
 
Microcontroladores pic lingc unicamp-150206140414-conversion-gate02
Microcontroladores pic lingc unicamp-150206140414-conversion-gate02Microcontroladores pic lingc unicamp-150206140414-conversion-gate02
Microcontroladores pic lingc unicamp-150206140414-conversion-gate02
 
Curso microcontroladores pic no mp lab 8
Curso microcontroladores pic no mp lab 8Curso microcontroladores pic no mp lab 8
Curso microcontroladores pic no mp lab 8
 
Projeto de Elasticidade e Evolução do Projeto FIBRE
Projeto de Elasticidade e Evolução do Projeto FIBREProjeto de Elasticidade e Evolução do Projeto FIBRE
Projeto de Elasticidade e Evolução do Projeto FIBRE
 
Tcc sistema de automação residencial baseado em plataforma open hardware e ...
Tcc   sistema de automação residencial baseado em plataforma open hardware e ...Tcc   sistema de automação residencial baseado em plataforma open hardware e ...
Tcc sistema de automação residencial baseado em plataforma open hardware e ...
 
38698469 slides-arduino
38698469 slides-arduino38698469 slides-arduino
38698469 slides-arduino
 
Introdução ao Arduino
Introdução ao ArduinoIntrodução ao Arduino
Introdução ao Arduino
 
Apostila - Tutorial Arduino (Básico).PDF
Apostila - Tutorial Arduino (Básico).PDFApostila - Tutorial Arduino (Básico).PDF
Apostila - Tutorial Arduino (Básico).PDF
 
3D PRINTER REPRAP
3D PRINTER REPRAP3D PRINTER REPRAP
3D PRINTER REPRAP
 
Introdução ao Arduino: Fundamentos e Aplicações de Microcontroladores
Introdução ao Arduino: Fundamentos e Aplicações de MicrocontroladoresIntrodução ao Arduino: Fundamentos e Aplicações de Microcontroladores
Introdução ao Arduino: Fundamentos e Aplicações de Microcontroladores
 

2ª SATEC - SENAI - Arduino + CLP + Maquina de estados

  • 1. Padrão de desenvolvimento para prototipagem rápida em projetos de sistemas de controle utilizando a plataforma de prototipagem eletrônica Arduino. Eng°Hamilton Sena II SATEC 2ª Semana de Atualização Técnica CASCAVEL-PR Jun. 10-14, 2013
  • 2. Hamilton Sena Acadêmica - Técnico em processamento de dados - Engenheiro de Controle e Automação  Profissional - Técnico em informática - Técnico de reparo de equipamentos eletrônicos - Desenvolvedor e analista de sistemas - Desenvolvedor de sistemas embarcados - Sócio-proprietário da empresa Mobhis Automação Urbana Ltda. - Professor do Senai
  • 3. Prototipagem rápida  Prototipação é uma abordagem baseada numa visão evolutiva do desenvolvimento.  Com intuito de avaliar algumas de suas características antes que o sistema venha realmente a ser construído, de forma definitiva. REPRAP - http://reprap.org
  • 4. Prototipagem rápida - Vantagens Time-to-market Quem chega primeiro ganha o mercado Ajuda a controlar o risco É muito mais seguro decidir diante de um protótipo Rápido e barato Método mais rápido e barato de resolver problemas.
  • 6. O mercado não espera! Outubro/2010 Interesse Novembro/2010 1ªapresentação Março/2011 Lançamento do Edital Julho/2011 Instalação 1ª Estação
  • 7. Padrão de desenvolvimento Mão na massa Ansioso Não incomode Estou fazendo programa!!! Depois de 2000 linhas ... ... começa a testar O código nem compila Caos total!
  • 8. Padrão de desenvolvimento Mas era só para piscar o led !!! Tudo porque ele não tinha um plano.
  • 10. Padrão de desenvolvimento  São soluções para problemas normalmente encontrados em projetos de software.  São independentes de linguagem.  E oferecem uma descrição ou modelo de como resolver deter- minado problema.
  • 11. Maquina de estados São estruturas lógicas compostas por um conjunto de estados e um conjunto de regras de transição entre os estados.
  • 12. FSM – Controle de processos
  • 15. Arduino  Em 2005, um professor italiano, Mossimo Banzi, decidiu que queria um simples controlador lógico acessível aos seus alunos de forma a desenvolverem os seus próprios projetos técnicos.  Consiste num microcontrolador Atmel AVR de 8 bits, com componentes complementares para facilitar a programação e incorporação para outros circuitos.  E/S digital e analógica, além de uma interface USB, para interagir com computador, e programação.
  • 18. Universo Arduino O Hardware O ambiente de programação Os Shields A comunidade
  • 21. Controlador Lógico Programável 21 São microcomputadores de propósito específico, dedicado para o controle de processos e equipamentos.
  • 22. Diferença entre Arduino e CLP ARDUINO CLP Equipamento de proposito geral Equipamento de proposito especifico Não contem certificações de segurança, tanto software, quanto hardware. Por ser uma plataforma de desenvolvimento. Vem com certificações industriais e tem muitas características de segurança. Faça você mesmo Varias empresas desenvolvedoras R$ 60,00 ~ R$ 100,00 A partir de R$300,00
  • 24. Linguagem de programação – Estruturada “C”
  • 25. Processo de desenvolvimento - Firmware 1° • Mapeamento das entradas e saídas do processo 2° • Montagem da maquina de estados 3° • Tabela de transições 4° • Conversão para linguagem de interesse (C ou Ladder)
  • 26. Processo – Sistema Semaforico
  • 27. 1° Mapeamento das entradas e saídas do processo ENTRADAS SAÍDAS NOME TIPO NOME TIPO TEMP_1 Temporizador LAMPR1 Digital TEMP_2 Temporizador LAMPY1 Digital TEMP_3 Temporizador LAMPG1 Digital TEMP_4 Temporizador LAMPR2 Digital TEMP_5 Temporizador LAMPY2 Digital TEMP_6 Temporizador LAMPG2 Digital
  • 28. 1° Mapeamento das entradas e saídas do processo ENTRADAS SAÍDAS NOME TIPO NOME TIPO TEMP_1 Temporizador LAMPR1 Digital TEMP_2 Temporizador LAMPY1 Digital TEMP_3 Temporizador LAMPG1 Digital TEMP_4 Temporizador LAMPR2 Digital TEMP_5 Temporizador LAMPY2 Digital TEMP_6 Temporizador LAMPG2 Digital
  • 29. 2° Montagem da maquina de estados • LAMPR1 = 1 • LAMPY1 = 0 • LAMPG1 = 0 • LAMPR2 = 0 • LAMPY2 = 0 • LAMPG2 = 1 ESTADO 0 • LAMPR1 = 1 • LAMPY1 = 0 • LAMPG1 = 0 • LAMPR2 = 0 • LAMPY2 = 1 • LAMPG2 = 0 ESTADO 1 • LAMPR1 = 1 • LAMPY1 = 0 • LAMPG1 = 0 • LAMPR2 = 1 • LAMPY2 = 0 • LAMPG2 = 0 ESTADO 2 • LAMPR1 = 0 • LAMPY1 = 0 • LAMPG1 = 1 • LAMPR2 = 1 • LAMPY2 = 0 • LAMPG2 = 0 ESTADO 3 • LAMPR1 = 0 • LAMPY1 = 1 • LAMPG1 = 0 • LAMPR2 = 1 • LAMPY2 = 0 • LAMPG2 = 0 ESTADO 4 • LAMPR1 = 1 • LAMPY1 = 0 • LAMPG1 = 0 • LAMPR2 = 1 • LAMPY2 = 0 • LAMPG2 = 0 ESTADO 5 TEMP_6 = 2s TEMP_1 = 8s TEMP_2 = 4s TEMP_3 = 2s TEMP_4 = 8s TEMP_5 = 8s AVENIDAA RUAB
  • 30. 3° Tabela de transições LAMPR1 LAMPY1 LAMPG1 LAMPR2 LAMPY2 LAMPG2 ESTADO 0 1 0 0 0 0 1 ESTADO 1 1 0 0 0 1 0 ESTADO 2 1 0 0 1 0 0 ESTADO 3 0 0 1 1 0 0 ESTADO 4 0 1 0 1 0 0 ESTADO 5 1 0 0 1 0 0 ESTADO 0 • LAMPR1 = 1 • LAMPY1 = 0 • LAMPG1 = 0 • LAMPR2 = 0 • LAMPY2 = 0 • LAMPG2 = 1 ESTADO 1 • LAMPR1 = 1 • LAMPY1 = 0 • LAMPG1 = 0 • LAMPR2 = 0 • LAMPY2 = 1 • LAMPG2 = 0 ESTADO 2 • LAMPR1 = 1 • LAMPY1 = 0 • LAMPG1 = 0 • LAMPR2 = 1 • LAMPY2 = 0 • LAMPG2 = 0 ESTADO 3 • LAMPR1 = 0 • LAMPY1 = 0 • LAMPG1 = 1 • LAMPR2 = 1 • LAMPY2 = 0 • LAMPG2 = 0 ESTADO 4 • LAMPR1 = 0 • LAMPY1 = 1 • LAMPG1 = 0 • LAMPR2 = 1 • LAMPY2 = 0 • LAMPG2 = 0 ESTADO 5 • LAMPR1 = 1 • LAMPY1 = 0 • LAMPG1 = 0 • LAMPR2 = 1 • LAMPY2 = 0 • LAMPG2 = 0
  • 31. 4. Conversão para a linguagem de interesse • 1º Inicialização do Estado 0 • 2º Executa o processo de transição • 3º Execução das ações
  • 32. 4.1 Conversão para a linguagem Ladder 1º Inicialização do Estado 0
  • 33. 4.1 Conversão para a linguagem Ladder 2º Executa o processo de transição EXECUTA O ESTADO ATUAL HABILITA O PROXIMO ESTADO E DESABILITA O ESTADO ANTERIOR
  • 34. LAMPR1 LAMPY1 LAMPG1 LAMPR2 LAMPY2 LAMPG2 ESTADO 0 1 0 0 0 0 1 ESTADO 1 1 0 0 0 1 0 ESTADO 2 1 0 0 1 0 0 ESTADO 3 0 0 1 1 0 0 ESTADO 4 0 1 0 1 0 0 ESTADO 5 1 0 0 1 0 0 4.1 Conversão para a linguagem Ladder 3º Execução das ações
  • 36. 4.2 Conversão para a linguagem C 1º Inicialização do Estado 0
  • 37. 4.2 Conversão para a linguagem C 2º Executa o processo de transição EXECUTA O ESTADO ATUAL HABILITA O PROXIMO ESTADO E DESABILITA O ESTADO ANTERIOR
  • 38. LAMPR1 LAMPY1 LAMPG1 LAMPR2 LAMPY2 LAMPG2 ESTADO 0 1 0 0 0 0 1 ESTADO 1 1 0 0 0 1 0 ESTADO 2 1 0 0 1 0 0 ESTADO 3 0 0 1 1 0 0 ESTADO 4 0 1 0 1 0 0 ESTADO 5 1 0 0 1 0 0 4.2 Conversão para a linguagem C 3º Execução das ações