Você está na página 1de 228

ControlLogix Motion

Curso:
ControlLogix Motion
usando o RSLogix 5000

Período: 08/11/2018 a 09/11/2018


Instrutor: Waldir de Oliveira

1
Introdução

– Após completar este curso, você estará apto a realizar as seguintes tarefas:

 Configurar os componentes de hardware do sistema de controle de movimento


ControlLogix™ Motion. Isto incluirá a configurações dos módulos de E/S, módulo
Servo Controlador e controladores Logix 5550
 Configuração e sintonia dos eixos na plataforma ControlLogix™ Motion. Isto
incluirá eixos analógicos e eixos virtuais.
 Criar e testar instruções de movimento , assim como, exemplos de aplicação
envolvendo as instruções principais do Servo Controlador 1756-M02AE ou
1756-M08SE

2
Introdução

• Descrição do Curso

– Este curso habilitará o usuário a integrar o intertravamento e seqüênciamento de uma


máquina junto com o controle de posição da mesma em uma única plataforma
ControlLogix 5572. Você aprenderá como configurar um sistema multi-eixos na
plataforma ControlLogix 5572.

3
Drives

• Após completar esta lição, você entenderá o que é um servo drive e


compreenderá o seu papel em um sistema de controle de movimento

4
Drives

O “Músculo” no sistema Servo

Comando Movimento
de Controlador Drive Mecânico
movimento Saída
Entrada
Transdutor
Realimentação

5
Drives

Componentes

M o to r
S e rv o A m p lifier
PM DC BRUSHLESS AC S w itc h ed
DC In d u ctio n R e lu cta n ce
L in e ar PW M

6
Drives

Operação Básica
• A tensão e corrente de controle para o
motor é proporcional ao sinal de
entrada

Servo
Amplifier Motor

7
Drives

Vin I
A Corrente no motor é +
proporcional à tensão na
Basic
entrada PWM
AMP M


Torque Rs
_

Vs
Filter

8
Drives

Velocidade no motor é proporcional à entrada

Vin
+ Basic
PWM
M
 AMP
Velocity
_
Vtach
T

9
Drives

• Após completar esta lição, você entenderá as regras do Servo Controlador


digital em um sistema de movimento.

10
Servo Controlador

O que eles fazem ?


• Fecham uma malha de posição
– Aceitam realimentação
– Geram um sinal de comando (+/- 10V) para Drive
– Fornece compensação via software

• Executam comandos de movimento


– Programa interno
– computador, terminal ou CLP

11
Servo Controlador

Hardware Block Diagram


+/- 10 Volt
Digital to Saída
Comando
Analog para o
Microprocessor
Movimento
Entrada Converter Servo Drive

Realimentação
Encoder de um
Interface encoder
incremental
E/S discretas
específicas - cada Eixo

12
Servo Controlador
Up/Down
Interface Encoder Counter
• Decodificador lógico gera pulsos e
define direção de movimento
• Contador Crescente/Decrescente
• Saída do contador é
• um número digital que representa a
posição do encoder

Count A
Decode
Logic B
U/D

13
Servo Controlador

Decodificador Lógico
• 1X decode logic outputs 1
count per encoder cycle A
(line)

B
U/D
• 4X decode logic outputs 4
counts per line

1X

4X

14
Servo Controlador

Limitações Práticas
• Máxima taxa de contagem ou Bandwidth
– Máxima taxa que o contador pode contar
– Expressada em Hertz (pulsos por segundo)

15
Servo Controlador

Conversor D/A (DAC)


• Converte um número binário para uma
tensão analógica.
• Bit + significativo determina o sinal (+ ou -)
de tensão
• Resolução típica
+10V
– 16 bits (+/-15 bits)
• +/-32,768 passos
• 305 microvolts por passo
_
+
Binary
Number
-10V

16
Homing

Homing de um Eixo
• Localização de uma única posição após a energização para
calibração do eixo
– Encoder marker
– Limit Switch
– Limit Switch and marker

17
Homing

Homing para o Marker do Encoder


• Move em uma direção até o Marker
ser detectado e memoriza a posição + 1
(1)
• Movimenta de volta para esta posição
e recalibra a posição do eixo (2)

Velocity
• Útil
– Movimentos rotativos.

2
Position

18
Homing

Homing por Limit Switch


+ 1
• Move em uma direção até a limite
switch ser detectada (1)
• reverte a direção até a limite switch ser

Velocity
liberada (2)
• Move de volta para esta posição e
3
recalibra a posição do eixo (3)

2
Position

19
Homing

Homing por Limit Switch & Encoder Marker


• Move em uma direção até a switch
+ 1
ser detectada (1)
• Reverte a direção até a switch ser
liberada (2)

Velocity
• Continua até o marker ser detectado
e guarda a posição (3). 4
• Move de volta para esta posição e
recalibra a posição do eixo.
2
3
Position

20
Registration

• Registrando a posição de um eixo na


Encoder
ocorrência de um evento externo. Encoder
– Recalibração do Eixo enquanto em Counter
movimento
• Sincronização da posição do
eixo para registration
– Usado para correção de posição

Registration
Registration
Signal
Latch

Registration Position

21
Usando Drives com Loop de velociade

• Malha realimentação de posição


– P Gain
• Gera um comando de Position
velocidade proporcional ao
erro de posição. Input Cmd
• Posição do eixo é controlada +
diretamente.
P
– Posição atual segue a posição  Gain
+
M
comandada. _
_
T

22
Erro de Posição (Position Error)

• Diferença entre a posição comandada


(desejada ) e a posição atual do eixo.
Position
• Erro de posição gera comando de
velocidade
Command
– Na velocidade zero o erro de Input Position
posição é zero.  Error
– Se a velocidade do eixo não é
zero, o erro de posição não é
zero.

Actual
Position
feedback

23
Following Error

• Erro de posição para uma


velocidade.
• Proporcional à veloc.do eixo.
+
• Inclinação da função de
Loop
transferência é o ganho da malha. Gain
– Medida em unidades de erro de
velocidade Position
• Inches per minute/mil Error
• Radians per second per
radian

_
Axis
Velocity

24
Position Error Tolerance

• Maior valor para o erro de posição


– Drive pode estar com problema +
– Encoder não está funcionando
_
– Eixo está bloqueado
• Shut down do sistema
+
– Stop motion
– Disable drive Position
• Indicate fault Error

_
Axis Velocity

25
In-Position Tolerance

– Força à uma posição desejada com +


precisão.

_ +
– Valor da tolerância é programado.
PE

In-Position
Tolerance

_
Axis Velocity

26
Ganho Integral

• Fornece correção de offset


automática Position
Error + Velocity
• Erro de posição é acumulado P 
no tempo
Gain Cmd.
• Ganho pequeno leva o sistema +
a um tempo muito grande
• Ganho alto leva o sistema à
instabilidade. I
Accumulator
Gain

I Gain
Time

27
Loop Digital de Velocidade

• Tach mede a taxa de variação


de posição Velocity
– V Gain Command
– Proportional to velocity error +
V
• Erro de Velocidade gera
comando de torque
 Gain
M

Rate of
E
Actual Change
Velocity

28
Loop Completo

Rate of F
Change Gain

+
+ + + +
P V
 Gain   Gain _
M
_ + _
T
Accumu- I Rate of
lator Gain Change

29
Perfis de Movimento

• Nesta lição você aprenderá os diferentes tipos de Perfis de Movimento e


configurações de Servo Loop disponíveis em um Sistema ControlLogix

30
Perfis de Movimento

• A plataforma ControlLogix suporta os seguintes perfis de Movimento

Trapezoidal

Curva - S

31
Perfis de Movimento

• Perfil Trapezoidal
Velocidade

Aceleração Velocidade Constante Desaceleração

Tempo

32
Perfis de Movimento

• Perfil Trapezoidal
Velocidade

Aceleração Desaceleração

Tempo

33
Perfis de Movimento
Características do Perfil Trapezoidal
– Possui aceleração e desaceleração linear
– Rápida aceleração e desaceleração
– É o perfil que causa o maior stress dos componentes mecânicos

34
Perfis de Movimento

• Perfil Curva-S
Velocidade

Aceleração Velocidade Constante Desaceleração

Tempo

35
Perfis de Movimento
Características do Perfil Curva-S
– Possui “jerk controlado” durante aceleração e desaceleração
– Minimiza o Stress nos componentes Mecânicos
– Tempos de Aceleração e Desaceleração maiores (2X Trapezoidal)

36
Perfis de Movimento

O perfil em Curva-S será mais utilizado quando o stress no


sistema mecânico e carga necessitarem ser minimizados. No
entanto, os tempos de aceleração e desaceleração serão duas
vezes maiores que no perfil trapezoidal.

37
Servo Loop – Malha de Controle

A plataforma ControlLogix suporta os seguintes Servo Loops


com o Módulo Servo M02AE e M08SE:

Velocidade

Torque ou Corrente

38
Diagrama da Malha de Controle do M02AE

Torque Mode Only

39
Overview da Arquitetura
ControlLogix Motion
• Após completar esta lição, você estará apto a inicializar um projeto envolvendo
controle de movimento, adicionando o módulo M02AE, configurando eixos e
preparar o sistema de aplicação para realizar as seguintes tarefas:

– Familiarizar-se com a arquitetura ControlLogix e o software RSLogix5000


– Criar uma nova aplicação
– Revisão de Tags e introdução Coordinated System Time ( CST)
– Aprendendo as funções das instruções de movimento e tags do tipo Motion
instructions

40
Antes de Começar

• Entendendo o Sistema ControlLogix™ Motion

– O controlador Logix 5550, Módulos Motion, e o software de


configuração e programação RSLogix 5000 fornece integração no
controle de movimento
1756-M02AE

RSLOGIX 5000 LOGIX 5550/53/55 CONTROLLER


Command Execution
Axis Integrated Motion And Trajectory Planner
Configuration Programming POSITION VELOCITY

-Discrete-
Analog/Encoder

1756-M08SE

-Digital-
Fiber Optic

41
Antes de Começar

• Entendendo o Sistema ControlLogix™ Motion

• Controlador Logix 5550

– Executa as instruções de movimento em


linguagem ladder e gera informações de posição
e perfil de velocidade
– Envia estas informações para um ou mais
módulos servo controladores
– Você pode usar vários controladores no mesmo
chassis. Uma CPU pode controlar até 32 eixos
(dezesseis 1756-M02AE Servo módulos)

42
Entendendo o Sistema ControlLogix™
Motion
• Servo Módulo 1756-M02AE
– O módulo servo 1756-M02AE conecta-se com os servo
drives
– Fecha uma malha de posição e velocidade (se o servo drive
é configurado para o modo torque).
– Cada módulo 1756-M02AE pode controlar 2 eixos.

Observação 1: O Módulo 1756- Observação 2: A trajetória de


M02AE não pode ser conectado movimento é conhecida como “Course
em um chassis Remoto Planner”. O course planner reside no
Controlador Logix 5550 e o Motion
“Fine Planner” reside no módulo servo
1756-M02AE.

43
Sistema Servo 1756-M02AE Típico

1756-M02AE
AnalogEncoder

Analog/Encoder
Discretewiring

1394-SJTxx-Aor
otheranalogdrive

44
Sistema Servo 1756-M08SE
1756-M08SE
RSLogix 5000 SERCOS interfaceTM
Software

• Support for 30 motion


instructions
• Motion axis
configuration and
monitoring
• 1394 Servo Drive Plastic or Glass
1394-SJTxx-D Fiber
configuration and
monitoring

45
Antes de Começar
• Entendendo o Sistema ControlLogix™ Motion

• RSLogix 5000
– O software de programação RSLogix 5000 fornece uma completa
configuração dos eixos e suporte a programação de instruções
dedicadas à aplicação de movimento.

46
Overview do Sistema Motion Control
• Relação entre Course Planner (Processador Logix 5550) e Fine Planner
( Servo 1756-M02AE)

• O Course Planner fornece dados de comandos de posição a


uma taxa chamada course update rate.

• O módulo 1756-M02AE fecha uma malha de posição a cada


200 microsegundos.

Observação 3: Devido o fato do servo update rate ( módulo 1756-M02AE) ser maior
que o course update rate (aproximadamente 1 msec por eixo) no Processador Logix
5550, o módulo servo (1756-M02AE) usa uma interpolação linear para plotar os pontos
que estão entre os dados de comando de posição. Esta é a função do Fine Planner e
fornece características de precisão no posicionamento.

47
Course e Fine Planner
• O exemplo abaixo mostra para um eixo do módulo 1756-M02AE, a relação entre o
Coarse Planner e o Fine Planner, com um coarse rate de 1 ms.

48
Identificação do Sistema ControlLogix
Motion
• O Controlador Logix 5550 (1756-L1)

– O Controlador Logix 5550 é o componente principal no sistema ControlLogix™ .


– Suporta instruções sequenciais e de movimento,
– Executa todos os comandos de movimento e trajetória de movimento (course planner).
– Um ou mais controladores Logix 5550 podem ser instalados no mesmo chassis,
– Cada controlador pode controlar até 16 módulos servo (1756-M02AE).
– O controlador Logix 5550 fornece suporte a:
• 38 instruções de movimento
• Gerenciamento de comandos e gerador de perfis de velocidade
• Habilidade para controlar até 16 Servos módulos Analog/Encoder para um total de
até 32 eixos.

49
Identificação do Sistema ControlLogix
Motion
• Software de Programação RSLogix 5000
– Permite o comissionamento e programação do sistema de controle de
movimento

– RSLogix 5000 é o único software necessário para o sistema ControlLogix


motion

– RSLogix 5000 software fornece suporte a:

• Wizards para configuração dos eixos servos incluindo hookup teste e


sintonia automática dos eixos.
• Programação das instruções de movimento em linguagem ladder.

50
Identificação do Sistema ControlLogix
Motion
• Esta seção fornece uma introdução aos conceitos usados no
desenvolvimento de uma aplicação de movimento. Estes conceitos incluem:

– Entendendo o desenvolvimento de uma aplicação


– Entendendo uma tag do tipo MOTION_INSTRUCTION
– Entendendo parâmetros de status e de configuração.
– Modificando parâmetros

51
Identificação do Sistema ControlLogix
Motion
• Usando o Coordinated System Time (CST)
– Um coordinated system time (CST) adequado especifica um tempo de
sincronização para todos os módulos dentro de um chassis
ControlLogix. Quando existir um CST mestre no chassis, todos os
módulos de E/S, servo modulos e controladores deste chassis,
manterão seus clocks (CST ) sincronizados com o clock do mestre.

52
Desenvolvendo uma Aplicação Motion Control

• Entendendo o desenvolvimento de uma aplicação

Tarefa Descrição
Selecione o mestre Configurar um controlador como
coordinated system time mestre CST. Uma vez feito isto, você
(CST) poderá sincronizar todos os módulos
servos e controladores Logix 5550 que
estão no mesmo chassis.
Adicionar um módulo Servo Adicione um módulo servo na sua
aplicação
Nomear um Eixo Adicione um eixo na sua aplicação
Configurar o Eixo Configurar cada eixo dentro da
aplicação
Adicione módulos servos e Adicionar módulos servos e eixos que
eixos existirem em sua aplicação
Execute a rotina Hookup e Executa rotina Hookup e auto tuning
diagnósticos e auto tuning para cada eixo dentro da aplicação
Desenvolva um programa de Crie uma lógica ladder para a sua
movimento aplicação.

53
Criando Tags
• O Controlador Logix 5550 usa tags para armazenar e acessar dados.
• A tag é similar a uma variável dentro de um programa.
• A tag tem um nome (que descreve o tipo do dado que ela armazena) e o tipo do dado
(identifica o tamanho e o layout dos dados que a tag pode armazenar).
• O controlador armazena tags na memória a medida que o usuário vai criando as tags
para a sua aplicação.
• Não existem tabelas de dados pré-definidas, como no CLP-5 ou SLC-500. O
controlador logix 5550 usa a memória de forma inteligente.
• Tags de tipos de dados similares não estão necessariamente agrupadas dentro da
memória. Se você quiser agrupar estes dados, use uma array.

54
Criando Tags
• Existem 3 tipos de tags.

Tipo de Tag: Descrição:


base Um tag base é um tag que define a posição de
memória onde o dado será guardado.
alias Um tag alias é um tag que referencia uma posição
de memória definida para outro tag. Um tag alias
pode apontar um tag base ou outro tag alias.
Tags alias são usualmente utilizados para padronizar
programas que podem ser duplicados sem termos de
reendereçar as instruções. Usando tag alias, cada
cópia do programa pode apontar diferentes tag
bases.
consumidor Um tag consumidor é um tag em que os dados vêm
de outro controlador.

55
Criando Tags

• Você pode criar tags de várias formas durante o


desenvolvimento de uma aplicação:
 Criação de tags antes de editar o programa

 Editar a lógica e depois criar as tags

56
Criando Tags
• Para entrar com o Tag:
– Em controller organizer, duplo clique no ícone tags para abrir uma janela de
edição/monitoração de tags, Exemplo Tags do Controlador ou Tags do Programa. A
janela de tags será mostrada.

Duplo clique

57
Criando Tags
• Para entrar com o tag:
– Clicar em Edit Tags tab

Click

58
Criando Tags
• Para entrar com o tag:

• Clique na célula tag name da última linha (identificada por um asteristico


[*]) e pressione [Alt] + [Enter]. Uma caixa de diálogo será apresentada.

Clique
Então [Alt] +[Enter]
59
Criando Tags
• Para entrar um Tag:

• Especificar as seguintes informações:

In this field: Type or select:


Name Type the name of the tag.
Tag Type Select one of these:
For a: Select:
normal tag Base
tag that references another tag or part of Alias
another tag
tag whose value is produced by another Consumed
controller

Data Type Select the data type. The programming software displays a list of the available data
types. The list consists of the predefined data types and any user-defined data types.
If the tag is to be an array, specify the number of elements in each dimension. There
can be as many as 3 dimensions. If the tag is not an array, or you do not want all 3
dimensions, set the dimension fields to (0).
Scope Select the scope in which to create the tag. You can select controller scope or one
of the existing program scopes.
Display Style Select the display style of the tag. The programming software displays a list of the
available styles, which depends on the data type. The style you select becomes the
default display type when monitoring that tag with the programming software.
Produce this tag Select whether to make this tag available to other controllers. Specify how many
controllers can consume the tag.

60
TAG MOTION_INSTRUCTION
• A Tag do tipo MOTION_INSTRUCTION
– O controlador usa um tag do tipo MOTION_INSTRUCTION cuja estrutura é utilizada
para armazenar informações de status durante a execução das instruções de
movimento. Cada instrução de movimento tem um parâmetro chamado de Motion
Control que necessita de uma tag do tipo MOTION_INSTRUCTION para armazenar
informações de status.

Tags usados no parâmetro Motion Control só poderão ser utilizadas uma


vez dentro da aplicação. Se reutilizadas em outras instruções, poderão
provocar um movimento inesperado da máquina causando acidentes
graves e prejuizos.

– Os dados contidos na estrutura MOTION_INSTRUCTION é usado para monitorar


estados de comando e de execução.

61
TAG MOTION_INSTRUCTION
• Estrutura de um tag do tipo MOTION INSTRUCTION

62
TAG MOTION_INSTRUCTION
A Estrutura MOTION_INSTRUCTION

63
TAG MOTION_INSTRUCTION
• User Defined Data Types para Tags Motion Instruction

– Se sua aplicação contém múltiplos eixos e múltiplas instruções de movimento, é recomendado usar User Defined Data Type structure para todas as tags do tipo Motion Instruction. Este método de
programação tem as seguintes vantagens se comparado com a criação de tags individuais :
• Agrupar todas os tags do tipo Motion Instruction na mesma localização.

• Todas as tags do tipo Motion Instruction terão a mesma convenção de nome.

• A medida que novas instruções de motion são adicionadas, as tags do tipo motion instruction podem ser selecionadas a partir de uma lista.

• Ajuda a previnir o uso da mesma tag em outras instruções de movimento.

• Uma vez que o user defined data type é criado, eles podem ser facilmente copiados para um novo projeto.

64
TAG MOTION_INSTRUCTION
• Criando Tipos de Dados Definidos pelo Usuário para Tags do tipo Motion
Instruction

Clique com o botão direito do mouse em


User-Defined Data Types e seleione
“New Data Type”

65
TAG MOTION_INSTRUCTION

Estrutura User-Defined

Name: Entre o nome da Estrutura.

Descrição: Entre a descrição para a estrutura


(opcional)

66
TAG MOTION_INSTRUCTION

Cada Membro do Grupo

Name: Entre o nome de cada membro

Data Type: Selecione o tipo do dado.

Style: Selecione o estilo em que será visualizado


o tag.

Description: Entre uma descrição para o tag.

67
TAG MOTION_INSTRUCTION

Observação: O nome do membro deve ser a


instrução de movimento (MSO, MSF etc.) e o
tipo de dado deve ser Motion_Instruction

68
TAG MOTION_INSTRUCTION

69
TAG MOTION_INSTRUCTION
• Sequências de tempo MOTION_INSTRUCTION
– As instruções de movimento usam 3 tipos de sequências de tempo:

Timing type Description


Immediate A instrução completa em um
scan.
Message A instrução completa em vários
scans porque a instrução envia
mensagens para o servo
módulo.
Process A instrução pode levar um
tempo indeterminado para
completar.

70
Seqüência de Tempo dos Tags Motion
Instruction
• Instruções Imediatas
– Exemplos de instruções imediatas incluem:

• Motion Change Dynamics (MCD)


• Motion Group Strobe Position (MGSP)

Observação 8: Uma instrução imediata não


necessita de comunicação com o módulo servo
para completar a execução.

71
Seqüência de Tempo dos Tags Motion
Instruction
• Instruções Imediatas
– Como elas fun cion am:
• Qua ndo a linha que contém a instrução torn a-se ve rdad eira, o controla dor:
– Energiza o bit enable (EN)
– Desenergiza o bit done (DN)
– Desenergiza o bit de error (ER)
• O controlad or execu ta a instru ção completamente.

• O controlad or pod e exe cutar a instru ção novamente quan do a linha torna-se verda deira.

Se o controlador Então
Não detectar qualquer erro durante a O controlador energiza o bit .DN
execução da instrução
Detecta um erro quando a instrução O controlador energiza o bit .ER e
executa armazena o código de erro na estrutura de
controle.

72
Seqüência de Tempo dos Tags Motion
Instruction
• Instrução Imediata
– Diagrama de tempo das instruções imediatas

73
Seqüência de Tempo dos Tags Motion
Instruction
• Instruções de Mensagem
– Instruções de movimento tipo Mensagem enviam uma ou mais mensagens para o módulo servo.

– Exemplos de instruções deste tipo:


• Motion Direct Drive On (MDO) instruction
• Motion Redefine Position (MRP) instruction

74
Seqüência de Tempo dos Tags Motion
Instruction
• Instruções de Mensagem
– Como elas funcionam:
• Quando a linha que contém a instrução torna-se verdadeira, o controlador:
– Energiza o bit enable (EN)
– Desenergiza o bit done (DN)
– Desenergiza o bit de error (ER)
• O controlador começa a executar a instrução enviando uma mensagem requerida pelo módulo servo.
– Nota: O restante da instrução executa em paralelo com o scan do programa.
• O controlador checa se o módulo servo está pronto para receber uma nova mensagem.
• O controlador coloca o resultado do cheque na palavra de status da estrutura de controle.

75
Seqüência de Tempo dos Tags Motion
Instruction
• Instrução de Mensagem
– Como a instrução funciona:
• Quando o módulo está pronto, o controlador constrói e transmiti a mensagem para o módulo.
– Nota: Este processo pode repetir várias vezes se a instrução necessita de muitas mensagens.
• A instrução completa a execução

• A próxima vez que a linha torna-se falsa depois que um dos bits .DN ou .ER são setados, o controlador desenergiza o bit .EN .
• O controlador pode executar a instrução novamente quando a linha torna-se verdadeira.

Se o controlador Então
Não detecta erros quando a instrução O controlador seta o bit .DN
executa.
Detecta um erro quando a instrução O controlador seta o bit .ER e armazena o
executa. código de erro na estrutura de controle.

76
Seqüência de Tempo dos Tags Motion
Instruction
• Instrução de Mensagem
– Diagrama de Tempo das Instruções de Mensagem:

77
Seqüência de Tempo dos Tags Motion
Instruction
• Instrução de Processo
– Este tipo de instrução inicia o processo de movimento que pode levar um tempo indeterminado para ser completado.

– Exemplos de instruções deste tipo:

• Motion Arm Watch Position (MAW)


• Motion Axis Move (MAM)

78
Seqüência de Tempo dos Tags Motion
Instruction
• Instrução de Processo
– Como funcionam:
• Quando a linha que contém a instrução torna-se verdadeira, o controlador:
– Seta o bit enable (. EN )
– Limpa o bit done (.DN)
– Limpa o bit erro (.ER)
– Limpa o bit process complete (.PC)

79
Seqüência de Tempo dos Tags Motion
Instruction
• Instrução de Processo
• O controlador inicia o processo de movimento.

Se Então o controlador
O controlador não detecta algum erro Seta o bit .DN
quando a instrução executa Seta o bit in process (.IP)
O controlador detecta algum erro quando a Seta o bit .ER
instrução executa. Armazena o código de erro na estrutura de controle

O controlador detecta outras requisições de Limpa o bit .IP bit for that instance
instruções de movimento.
O processo de movimento atinge o ponto Seta o bit .DN
aonde a instrução pode ser executada Nota: Para algumas instruções como MAM, isto
novamente. ocorrerá no primeiro scan. Para outras,
como MAH, o bit .DN não será setado até o
processo inteiro de home ser completado.
Uma das seguintes ações ocorrem durante o Limpa o bit .IP
movimento
O movimento completa
Another instance of the instruction executes
Outra instrução pára o movimento
Uma falha do movimento para o processo de
movimento

80
Seqüência de Tempo dos Tags Motion
Instruction
• Instruções de Processo

• A próxima vez que a linha torna-se falsa depois que um dos bits .DN ou .ER são setados, o controlador desenergiza o bit .EN.

• O bit .PC é setado e o bit .IP é resetado quando a instrução executou o comando de posição.

81
Seqüência de Tempo dos Tags Motion
Instruction
• Instruções de Processos
– Diagrama de Tempo das Instruções de Processos:

82
Adicionando um Módulo Motion e Eixo
• Após completar esta lição, você estará apto a adicionar um módulo 1756-M02AE
em um Sistema ControlLogix, definir um eixo e preparar a inicialização do eixo
executando as seguintes tarefas.

– Criando um novo projeto


– Setar o coordinated system time (CST) para o controlador mestre
– Adicionar um módulo motion
– Criar um Motion Group para a aplicação de movimento
– Criar um eixo para a aplicação de movimento
– Resetar manualmente o módulo motion.

83
Adicionando um Módulo Motion e Eixo
• Inicializando
– Esta lição abordará os seguintes passos na criação de uma aplicação de movimento na plataforma
ControlLogix.

• Criando um novo projeto

• Setando o mestre para coordinated system time(CST)

• Adicionando módulos motion

• Criando um Motion Group

• Criando e nomeando eixo(s).

84
Master Coordinated System Time
(CST)
• Em um chassi ControlLogix (um ou múltiplos controladores), um dos
controladores necessita ser configurado como o mestre para referência de
clock.Este será responsável por sincronizar todos os módulos de motion,
outros controladores Logix 5550 e cartões de E/S no mesmo chassis com o
clock do mestre. O processo de configuração do controlador a ser o clock
de referência é chamado “Making this controller the master”. Nota:
Somente deverá existir um mestre para cada Chassis.

Observação 1: Se dois ou mais controladores Logix 5550 residirem


no mesmo chassis e não existir nenhum CST mestre para eles, então
o controlador que “bootar”primeiro na energização será o Mestre.
Em uma aplicação motion é OBRIGATÓRIO definir um Controlador
Logix 5550 como CST mestre.

85
Master Coordinated System Time
(CST)
• O procedimento seguinte é usado para Setar o CST master para
um Logix 5550.
– Na janela Controller Organizer, clique com o botão direito na pasta Controller e
selecione “Properties”

Clique com o botão


direito…

86
Master Coordinated System Time
(CST)
• O procedimento seguinte é usado para Setar o CST master para
um Logix 5550.
– Clique em ‘Date/Time’ na pasta Controller Properties

Click…

87
Master Coordinated System Time
(CST)
• O procedimento seguinte é usado para Setar o CST master
para um Logix 5550.
– Clique em‘Make this controller the master’

Click…

88
Master Coordinated System Time
(CST)
• Uma vez que o coordinated master system time é configurado para
um Processador, um módulo motion poderá ser adicionado ao
sistema.

Observação 2: Um módulo motion pode ser dono de um


Controlador Logix 5550 que não seja mestre CST. Desde que
outro Processador no chassis seja configurado como mestre CST
(deve existir um mestre para aplicações de motion) você receberá
uns avisos enquanto fizer um downloading e durante a
verificação do programa considerando o CST master.

89
Master Coordinated System Time
(CST)
• Como adicionar um Módulo Motion.
– Ir par OFFLINE
– Clique com o botão direito em ‘I/O Configuration’ na janela Controller Organizer e
selecione ‘New Module’

Selecione ‘New Module’

Right
Click…

90
Master Coordinated System Time
(CST)
• O procedimento abaixo é utilizado para adicionar um Módulo Motion .

1) Selecione Clear All


2) Selecione Motion

91
Adicionando o Servo Módulo
• O procedimento seguinte é utilizado para adicionar um Servo Módulo.
– O 1756-M02AE será listado na caixa selecionada. Selecione 1756-M02AE e clique
em OK para selecionar este módulo.

1) Selecione o módulo
motion
2) Click OK

92
Adicionando o Servo Módulo
• Com o módulo selecionado, algumas configurações são necessárias.
– Name
– Slot Number
– Electronic Keying Level

1) Entre um Nome

2) Selecione um Slot #

3) Selecione a
Electronic Keying
Level

93
Adicionando o Servo Módulo
• Descrição do Campo Electronic Keying

94
Adicionando o Servo Módulo
• Uma vez o Módulo configurado, clicar em finish para terminar a
configuração.

Clique Finish

95
Criando um Motion Group
• Um motion group é uma coleção de eixos os quais poderão ser controlados por uma simples instrução do
tipo group. Existem 5 instruções de movimento do tipo Group. Todos os eixos configurados devem fazer
parte deste grupo.

– Existem duas formas diferentes para criar um Motion Group no software RSLogix5000. O procedimento apresentado aqui usa
o Arquivo Controller Tags na janela de organização do Controlador.

– Este procedimento mostrará como qualquer tag poderá ser criada na janela Controller Tag. Outro método será apresentado no
procedimento de configuração de um eixo.

Observação 3: Somente uma tag do tipo Motion Group é permitida


por Processador Logix 5550. Todos os eixos usados na aplicação
deverão ser declarados dentro deste Motion Group.

96
Criando um Motion Group
• Para iniciar, clique com o botão direito em ‘Controller Tags’ no Controller Organizer
e selecione ‘Edit Tags’.

Right Click.

Select ‘Edit Tags’

97
Criando um Motion Group
• No ‘Controller Tags’ entre o nome do Tag para o Motion Group, então clique em
‘Type’ e selecione ‘Motion Group’

1) Type in a name
2) Click on the type column 3) Click on the
‘Properties’ symbol

98
Criando um Motion Group
• Clicando fora do tag Motion Group completará a criação do tag.

– O Motion Group será similar ao quadro abaixo.

99
Adicionando um Eixo Motion
• Uma vez que o módulo motion é adicionado e as informações
básicas de configuração são feitas, um eixo poderá ser
adicionado.

Observação 4: Módulo motion somente poderão ser


adicionados quando você estiver OFFLINE no software RS
logix 5000.

100
Tipos de Eixo

Eixo Servo - É um eixo físico que é conectado ao servo módulo


1756-M02AE. Este eixo pode consistir de um motor e um dispositivo
de realimentação (Servo) ou simplesmente um dispositivo de
realimentação (Feedback Only).

Eixo Virtual - É um eixo teórico (eixo imaginário) o qual é


produzido por um Processador Logix 5550. Não existe um hardware
associado com o eixo virtual.

Eixo consumidor - É um eixo físico ou virtual o qual é dono de


outro Controlador Logix 5550 dentro do mesmo rack. Um Controlador
produz informações de eixo para serem consumidas por outro
ControlLogix Processador. Eixos produtores e consumidores são usados
para conpartilhamento de informações de eixos entre múltiplos
Controladores Logix 5550.

101
Adicionando um Eixo Servo
• Para adicionar um eixo, clique com o botão direito no Servo Módulo no Controller
Organizer e selecione ‘Properties’

Clique botão direito.

Selecione ‘Properties’

102
Adicionando um Eixo Servo
• A partir das Propriedades do Módulo, selecione ‘New Axis’

Selecione ‘New Axis’

103
Adicionando um Eixo Servo
• Na caixa de diálogo New Tag, entre um nome para o novo eixo.
Automaticamente na caixa New Axis preenche os campos Data Type e
Scope. Clicar em OK para criar o novo Tag.

1) Entre o Nome
2) Clique OK

104
Adicionando um Eixo Servo
• Adicione o eixo para o canal apropriado. No menu do eixo associe o
mesmo a um canal e escolha OK.

Selecione New
Axis no Canal
Associado

Clique Next

105
Resetando Manualmente um Módulo
Motion
• Se o Led OK no módulo motion está piscando vermelho ou vermelho fixo, o
módulo motion deverá ser resetado.
– Um dos métodos é editar uma lógica ladder dentro de uma rotina de falha.
– Um segundo método é resetar manualmente o módulo motion através das
propriedades do módulo.

106
Resetando Manualmente um Módulo
Motion
• Para resetar manualmente o 1756-M02AE servo modulo. Clique com o
Botão Direito no Módulo em I/O Configuration no Controller Organizer.

Clique Botão Direito.

Selecione ‘Properties’

107
Resetando Manualmente um Módulo
Motion
• Para resetar manualmente o 1756-M02AE servo module.
– Clique em Module Info Tab

Clique em Module
Info

108
Resetando Manualmente um Módulo
Motion
• Para resetar manualmente o módulo 1756-M02AE.
– Select Reset Module

Click on
Reset Module
Module

109
Antes de Começar
• Nesta lição, você aprenderá sobre as especificações, conexão de fiações de
campo e led’s de status para o módulo 1756-M02AE.

110
Módulos Motion
• ControlLogix™ Motion Control

1756-M02AE

RSLOGIX 5000 LOGIX 5550/53/55 CONTROLLER

Command Execution
Axis Integrated Motion And Trajectory Planner
Configuration Programming POSITION VELOCITY

-Discrete-
Analog/Encoder

1756-M08SE

-Digital-
Fiber Optic

111
Módulos Motion
• O Módulo Servo Analog / Encoder (1756-M02AE)
– Fornece uma interface para o servo drive Analog/Encoder quadratura.
– Recebe informações de configuração e de comandos de movimento do Processador Logix
5550.
– Controla a posição do(s) motor(es).
– Suporta as seguintes características:
• Capacidade de conexão com até 02 servo drives
• ±10V saídas analógicas
• Entrada de encoder em quadratura
• Entrada para Home limit switch
• Entrada de Drive fault
• Saída para Drive enable
• 5V ou 24V registration inputs por eixo.
• Atualização das malhas de posição e velocidade a cada 200 µs.

112
Módulos Motion
• O Analog/Encoder Servo Module (1756-M02AE)
– A figura abaixo mostra uma típica fiação para o Canal 1 do Módulo 1756-M02AE servo.

Observação 5: O canal
declarado para o eixo deve
coincidir com o diagrama de
fiação do eixo.

113
Definição dos LED indicadores do 1756-
M02AE
• Led’s indicadores de status:

– O módulo fornece indicadores de led’s bi-coloridos para sinalizar status de feedbcak e


drive para ambos os eixos e um único Led OK também bi-colorido.

– Durante a energização, o led OK fica vermelho por 1 segundo e depois fica piscando na
cor verde se o módulo passar por todos os testes iniciais na energização.

Observação 6: O indicador Led OK fornece o


status de sincronização entre o Controllador
Logix 5550 e o módulo servo. Dentro da
estrutura para a tag do tipo Motion Group existe
um bit xxxx.GroupSynced que indica o status de
sincronização.

114
Definição dos LED indicadores do 1756-
M02AE
• O LED Indicador - OK

115
Definição dos LED indicadores do 1756-
M02AE
• O LED Indicador - FDBK

116
Definição dos LED indicadores do 1756-
M02AE
• O LED Indicador - DRIVE

117
Variáveis de Sistema e Instruções
GSV/SSV
• Em uma aplicação de movimento algumas variáveis de eixo ou de sistema
precisam ser monitoradas ou até mesmo modificadas. A instrução Get System
Variable (GSV) é usada para ler variáveis do sistema e a instrução Set System
Variable (SSV) é usada para modificar variáveis do sistema.

118
Variáveis de Sistema e Instruções
GSV/SSV
• Após completar esta lição, você entenderá dois tipos de comunicações que
existem entre o Logix 5550 e os módulos de eixos, AXIS e MOTIONGROUP object
classes e seus atributos associados e estará apto a programar as instruções GSV
e SSV para visualizar e modificar variáveis do sistema executando as seguintes
tarefas:

– Recapitulação de classes de objetos e seus atributos.

– Estudar estruturas de AXIS e MOTION_GROUP

– Recapitular a programação das instruções GSV /SSV

– Programação usando GSV/SSV para visualizar e modificar dados.

119
Variáveis de Sistema e Instruções
GSV/SSV
• Informação

– Em uma arquitetura ControlLogix, existem dois tipos de comunicação entre o


Processador Logix 5550 e os módulos de eixo; síncrono e assíncrono. A
comunicação é estabelecida através do Backplane. A conexão síncrona permite
que o servo update rate (localizado no 1756-M02AE) seja sincronizado com course
planner (localizado no Logix5550). A conexão assincrona permite que os módulos
de movimento forneçam informações de status e diagnósticos para o controlador
Logix 5550 independente do scan do programa e da taxa course update rate.

120
Variáveis de Sistema e Instruções
GSV/SSV

• Informações

– O sistema operacional do Logix 5550 classifica e armazena dados em


objetos.

• Cada classe de objeto tem seus atributos pré-definidos.

• Alguma das informações de movimento disponíveis são armazenadas


em classes de objetos (ex., AXIS e MOTIONGROUP) e são acessadas
e modificadas através das instruções GSV / SSV respectivamente.

• Outras informações, particularmente status, é armazenada na estrutura


das tags do tipo AXIS e MOTION_GROUP e são diretamente
acessadas sem a necessidade de se utilizar as instruções GSV/SSV .

121
Variáveis de Sistema e Instruções
GSV/SSV
• As instruções GSV / SSV obtêm e enviam dados que são armazenados em objetos.
Quando você entra com uma instrução GSV/SSV, o software de programação mostra
as classes de objetos, nome do objeto e atributos para cada instrução. Usando a
instrução GSV, você pode obter valores para todos os atributos. Para a instrução
SSV, o software mostra somente os atributos que você pode modificar.
• Com uma instrução GSV/SSV, você especifica o objeto e o atributo deste que você
quer acessar. Em alguns casos, existirão mais do que uma requisição do mesmo
tipo de objeto, então você deverá especificar o nome do objeto. Por exemplo,
existem vários eixos em sua aplicação. Cada eixo tem o seu próprio objeto AXIS que
você acessa pelo nome do eixo.

122
Variáveis de Sistema e Instruções
GSV/SSV
• As seguintes “classes de objetos” são acessadas através das instruções
GSV/SSV :

AXIS MODULE
CONTROLLER MOTIONGROUP
CONTROLLERDEVICE PROGRAM
CST ROUTINE
DF1 SERIALPORT
FAULTLOG TASK
MESSAGE WALLCLOCKTIME

123
Variáveis de Sistema e Instruções
GSV/SSV
• Os atributos do objeto AXIS
– O objeto AXIS fornece informações de status sobre um eixo do servo módulo.
– Especifique o nome da tag de eixo que você quer
– Para maiores informações sobre AXIS object, veja o ControlLogix Motion Module Setup and Configuration Manual,
Manual, publication 1756-6.5.16, appendix
D.

124
Variáveis de Sistema e Instruções
GSV/SSV
• Atributos dos Objetos AXIS
– Appendix ID lista todos os atributos disponíveis para o objeto AXIS no sistema ControlLogix. Esta tabela
fornece o nome da variável, o tipo de dado da variável, como a variável é acessada e a descrição da
variável. Estes atributos são lidos e modificados através das instruções GSV e SSV respectivamente.

125
Variáveis de Sistema e Instruções
GSV/SSV
• Os atributos dos Objetos AXIS
– Quando um atributo é marcado com um asteristico (*) na tabela de atributos, isto significa que o atributo está localizado no Controlador
Logix5550 e no módulo motion . Quando você usa a instrução SSV para escrever nestes valores, o controlador automaticamente atualiza e
escreve no módulo motion. Entretanto, este processo não é imediato. Para se assegurar que o novo valor foi atualizado no módulo motion,
use um intertravamento usando o bit ConfigUpdateInProcess da tag de Eixo. Por exemplo, se você utilizar uma instrução SSV para
PositionLockTolerance, o bit ConfigUpdateInProcess da tag de Eixo será setado até que a atualização no módulo seja feita com sucesso.
Portanto, a lógica seguinte à instrução SSV poderá aguardar este bit ser resetado, antes de continuar no programa.

126
Variáveis de Sistema e Instruções
GSV/SSV
Os atributos dos Objetos AXIS
Exemplo de Programação

127
Estruturas de dados de Eixos e Motion
Groups
• Estrutura AXIS
– A estrutura AXIS contém informações de configuração e status para um
eixo. Você pode acessar diretamente estas informações no ladder. Por
exemplo, se você quer usar o atributo AccelStatus para o eixo_X, você
poderá usar o eixo_X.AccelStatus para ter acesso a este atributo.
– Appendix C of the ControlLogix Motion Module Setup and Configuration
Manual, publication 1756-6.5.16, contém uma lista de variáveis incluidas
na estrutora de eixo.

128
Estruturas de dados de Eixos e Motion
Groups

• Estrutura MOTION_GROUP
• A estrutura MOTION_GROUP contém informações de configuração e status para o seu motion group. Você pode acessar estas
informações diretamente no programa. Por exemplo, se você quer usar o atributo DriveFault para o Motion_Group, você poderá
usar Motion_Group.DriveFault para ganhar acesso a este atributo.
• Appendix C of the ControlLogix Motion Module Setup and Configuration Manual,
Manual, publication 1756-6.5.16, contém uma lista de
variáveis incluidas na estrutura MOTION_GROUP.

129
Estruturas de dados de Eixos e Motion
Groups
• Estrutura MOTION_GROUP
• Exemplo de programação
• O exemplo no próximo slide ilustra uma aplicação
• O operando da instrução XIC, MOTION_GROUP.GroupSynced,
MOTION_GROUP.GroupSynced, é um exemplo de dado de status que é disponível na estrutura Motion Group. A instrução GSV com o CIP Object class operand ajustado
para AXIS e o CIP Object name ajustado para AXIS_X e o nome do atributo ajustado para ActualPosition, a posição atual do eixo_X será carregada na tag GSV_Example. A tag GSV_Example é do tipo
REAL.

130
Estruturas de dados de Eixos e Motion
Groups
• Estrutura do MOTION_GROUP
– Exemplo de Programação

Observação 4: É recomendado usar o bit de status xxxxx.GroupSynced em


cada linha que executa uma instrução que causa uma interação entre o
Controlador Logix 5550 e o módulo motion. Note que o
MOTION_GROUP é o nome da tag do tipo MOTION_GROUP e foi
definida pelo usuário.

131
Antes de Começar

Estrutura Motion Instruction, Rotina de Falha e


Instruções de Motion State

132
Estrutura Motion Instruction, Rotina de Falha
Motion State

• O que você aprenderá


– Até este ponto, você aprendeu como criar um novo projeto e configurar o
hardware e o software para uma aplicação de movimento. Você
aprendeu também a diferença dos dados localizados nos objetos e
estruturas de eixos e motion_group, aprendeu também como programar
as instruções GSV / SSV para monitorar e modificar variáveis.

133
Estrutura Motion Instruction, Rotina de Falha
Motion State

– Esta lição discutirá diferentes tipos de instruções de movimento, revisará o


tipo de estrutura MOTION_INSTRUCTION e instruções de estado. Depois
de completar esta lição você estará apto para programar instrução de estado
e a resetar falhas de movimento executando as seguintes tarefas:

 Revisão da estrutura de dados do tipo MOTION_INSTRUCTION


 Apresentação das instruções de estado usando o software RSLogix 5000

134
Estrutura Motion Instruction, Rotina de Falha
Motion State
• Instruções Motion
– O Sistema ControlLogix possui 38 instruções de motion. As instruções são agrupadas na
seguintes categorias:

• Motion state instructions

• Motion move instructions

• Motion group instructions

• Motion event instructions

• Motion configuration instructions

135
Intruções Motion

– Cada instrução tem um operando que requer um tag do tipo Motion Instruction. A
estrutura do tag Motion Instruction é mostrado abaixo:

136
Intruções Motion

TechnoFact 1: O tipo de instrução diz quais os bits de status


disponíveis. Exemplo, a instrução MSO tem os bits .EN, .DN e.ER
e a instrução MAH (Motion Axis Home) tem os bits .EN,
DN, .ER, .IP, e .PC .

137
Estrutura Motion Instruction, Rotina de Falha
Motion State
• Instruções Motion
– MOTION_INSTRUCTION Message Status (.STATUS)

• O valor do status da mensagem indica o status de qualquer mensagem


associado com a função Motion

138
Estrutura Motion Instruction, Rotina de Falha
Motion State

• Instruções Motion
– MOTION_INSTRUCTION State (.STATE)
• O bit .state e sempre setado para 0 quando o controlador set o bit .EN para
uma instrução Motion. Outra execução do state depende da Motion
Instruction.

139
Estrutura Motion Instruction, Rotina de Falha
Motion State
• Resetando Falhas
– Motion Axis Fault Reset (MAFR)
• Use a instrução MAFR para resetar todas as falhas associadas a um eixo. Este é o único método para resetar falhas de eixos.

• Importante: A instrução MAFR remove o status de falha, mas não habilita o eixo novamente. Em adição, quando o controlador
remove o status da falha, a condição que gerou a falha pode ainda existir. Se a condição não for eliminada antes de usar a
instrução MAFR, o eixo entrará em falha imediatamente após o resete.

• A instrução MAFR pode fazer parte de uma rotina de falha programada. A rotina de falha fornece ações específicas em resposta a
possíveis falhas. Uma vez que a condição de falha é removida, a instrução MAFR reseta todos os bits de status de falha.

140
Estrutura Motion Instruction, Rotina de Falha
Motion State
• Rotina de Falha
– Motion Axis Fault Reset (MAFR)

Operand: Type: Format: Description:


Axis Axis tag axis structure
Motion MOTION_INSTRUCTION tag motion structure
Control

141
Estrutura Motion Instruction, Rotina de Falha
Motion State
• Rotina de Falha
– Motion Axis Fault Reset (MAFR)
• MAFR Changes to Axis Status Bits
Bit Name State Meaning
ACAsyncConnFault False The asynchronous connection fault is clear.
ACSyncConnFault False The synchronous connection fault is clear.
PotrvlFault False The positive overtravel fault is clear.
NotrvlFault False The negative overtravel fault is clear.
PosErrorFault False The position error fault is clear.
EncCHALossFault False The encoder channel A loss fault is clear.
EncCHBLossFault False The encoder channel B loss fault is clear.
EncCHZLossFault False The encoder channel Z loss fault is clear.
EncNsFault False The encoder noise fault is clear.
DriveFault False The drive fault is clear.
SyncConnFault False The synchronous connection fault is clear.
HardFault False The servo hardware fault is clear.

142
Estrutura Motion Instruction, Rotina de Falha
Motion State
• Rotina de Falha
– Ações de Tratamento de Falhas
• As ações que o servo controlador executará quando uma falha ocorrer é
programada nas propriedades do eixo na tab Actions. As ações são
programadas para várias falhas que podem ocorrer em um eixo.

143
Estrutura Motion Instruction, Rotina de Falha
Motion State
• Rotina de Falha
– Reset de Falha
• Uma vez que uma falha foi detectada, o eixo é trazido para o estado programado, a
falha deve ser corrigida e resetada. A correção da falha pode requerer intervenção do
operador para corrigir o que causou a falha. Uma vez que a falha foi corrigida , a
mesma deverá ser resetada para permitir que o programa de aplicação continue. Para
resetar a falha, uma lógica deve ser programada para aceitar uma entrada do usuário e
implementar as instruções necessárias. A lógica mostrada a seguir colocará o servo
no estado shutdown e resetará qualquer falha presente no servo controlador.

144
Estrutura Motion Instruction, Rotina de Falha
Motion State
• Rotina de Falha
– Reset de Falha

– Uma vez que a entrada Fault Reset é acionada o servo estará pronto para habilitar o eixo, assumindo que a causa da falha foi corrigida.
A sequencia da lógica e primeiro tirar o eixo do estado de shutdown e então resetar qualquer falha que possa ter ocorrido no eixo.

145
Estrutura Motion Instruction, Rotina de Falha
Motion State
• Instruções State
– Instruções Motion controlam diretamente ou mudam o estado de operação de um eixo. As instruções state são:
– Motion Servo On (MSO)
– Motion Servo Off (MSF)
– Motion Axis Shutdown (MASD)
– Motion Axis Shutdown Reset (MASR)
– Motion Direct Drive On (MDO)
– Motion Direct Drive Off (MDF)
– Motion Axis Fault Reset (MAFR)
• As instruções motion group são:
– Motion Group Shutdown (MGSD)
– Motion Group Shutdown Reset (MGSR)
– Motion Group Strobe Position (MGSP)
– Motion Group Stop (MGS)
– Motion Group Program Stop (MGPS)

146
Estrutura Motion Instruction, Rotina de Falha
Motion State
• Instruções State
• Motion Servo On (MSO)
• Usar a instrução MSO para habilitar o servo drive para ativar o servo axis
loop. Um uso comum para esta instrução é ativar a malha de controle para
preparar o eixo para um comando de movimento. O servo loop deve estar
ativado para que se possa executar um comando motion.

Operand: Type: Format: Description:


Axis Axis tag axis structure
Motion Control MOTION_INSTRUCTION tag motion structure

147
Estrutura Motion Instruction, Rotina de Falha
Motion State
– Motion Servo On (MSO)
• MSO Muda o Bit de Status do Eixo

Bit Name State Meaning


.ServoActStatus True Axis is in the servo on state
Servo loop is active
.DriveEnableStatus True The drive enable output is active

148
Estrutura Motion Instruction, Rotina de Falha
Motion State
– Motion Servo On (MSO)

TechnoFact 2: Deve-se executar a instrução MSO antes de executar


qualquer comando motion, salvo a instrução de Homing (MAH) que
liga o feedback automaticamente. Em caso de falha, ocorrerá um erro
de runtime.

TechnoFact 3: A instrução MSO liga o bit xxxx.DriveEnableStatus.

149
Estrutura Motion Instruction, Rotina de Falha
Motion State
– Motion Servo Off (MSF)
• Usar a instrução MSF para desabilitar o servo drive e desativar o axis servo loop.

• Importante: Se você executar uma instrução MSF enquanto o eixo estiver se movimentando, o eixo
fará um stop aleatório.

• Quando for necessário ligar o eixo manualmente, use a instrução MSF para desabilitar o servo drive.
Apesar do servo estar desabilitado, o controlador continua a monitorar a posição do eixo. Quando a
ação do servo estiver habilitada usando o Motion Servo On (MSO), o servo mantém a nova posição.

TechnoFact 4: A instrução MSF manda o bit


xxxx.DriveEnableStatus para off.

150
Estrutura Motion Instruction, Rotina de Falha
Motion State
– Motion Servo Off (MSF)

Operand: Type: Format: Description:


Axis Axis tag axis structure
Motion Control MOTION_INSTRUCTION tag motion structure

151
Estrutura Motion Instruction, Rotina de Falha
Motion State
– Motion Servo Off (MSF)

MSF Changes to Axis Status Bits


Bit Name State Meaning
ServoActStatus False Axis is in the axis ready state
Servo loop is inactive.
DriveEnableStatus False The drive enable output is inactive.
AccelStatus False The axis is not accelerating.
DecelStatus False The axis is not decelerating.
ClutchStatus False The axis is not clutching.
JogStatus False The axis is not jogging.
MoveStatus False The axis is not moving.
GearingStatus False The axis is not gearing.
HomingStatus False The axis is not homing.

152
Estrutura Motion Instruction, Rotina de Falha
Motion State
• Instruções State
– Motion Axis Shutdown (MASD)
• Use a instrução MASD instruction para forçar um eixo a ir para o estado de
shutdown. Uma vez que o eixo estando em shutdown, o controlador bloqueará
qualquer instrução que tente iniciar um movimento no eixo.

• Se um eixo está em shutdown, isto significa que:


– A ação do servo está desabilitada
– A saída drive enable esta inativa
– O servo output level é o output offset value.
– Os contatos Servo module OK são abertos.

153
Estrutura Motion Instruction, Rotina de Falha
Motion State
• Instruções State
– Motion Axis Shutdown (MASD)

Operand: Type: Format: Description:


Axis Axis tag axis structure
Motion Control MOTION_INSTRUCTION tag motion structure

154
Estrutura Motion Instruction, Rotina de Falha
Motion State
– Motion Axis Shutdown (MASD)

MASD Changes to Axis Status Bits


Bit Name State Meaning
ServoActStatus False Axis is in the axis ready state
Servo loop is inactive.
DriveEnableStatus False The drive enable output is inactive.
ShutdownStatus True The axis is in the shutdown state.
AccelStatus False The axis is not accelerating.
DecelStatus False The axis is not decelerating.
ClutchStatus False The axis is not clutching.
JogStatus False The axis is not jogging.
MoveStatus False The axis is not moving.
GearingStatus False The axis is not gearing.
HomingStatus False The axis is not homing.
TuneStatus False The axis is not running a tuning process.
TestStatus False The axis is not running a testing process.

155
Estrutura Motion Instruction, Rotina de Falha
Motion State
– Motion Axis Shutdown Reset (MASR)

• Usar a instrução MASR para mudar o estado de um eixo em


shutdown para o estado de ready (pronto). Se todos os eixos do
servo módulo forem removidos do estado de shutdown como
resultado da instrução, o relé de contato do OK para o módulo irá
fechar.

156
Estrutura Motion Instruction, Rotina de Falha
Motion State
– Motion Axis Shutdown Reset (MASR)

Operand: Type: Format: Description:


Axis Axis tag axis structure
Motion Control MOTION_INSTRUCTION tag motion structure

157
Estrutura Motion Instruction, Rotina de Falha
Motion State

– Motion Axis Shutdown Reset (MASR)

MASR Changes to Axis Status Bits


Bit Name State Meaning
ServoActStatus False Axis is in the axis ready state
Servo loop is inactive.
DriveEnableStatus False The drive enable output is inactive.
ShutdownStatus False The axis is not in the shutdown state.

158
Estrutura Motion Instruction, Rotina de Falha
Motion State
• Instruções State
– Motion Direct Drive On (MDO)
• Use a instrução MDO para habilitar o servo drive e ajustar o nível de tensão da
saída output voltage do eixo.

• Usos comuns para esta instrução:


– Criar um controle em malha aberta para referência de velocidade para um
drive
– Testar um servo drive que será utilizado em uma operação em malha
fechada.

• A saída output voltage não é limitada pelo parâmetro da configuração output


limit e não é afetada pelo bit de polaridade.

159
Estrutura Motion Instruction, Rotina de Falha
Motion State
– Motion Direct Drive On (MDO)

Operand: Type: Format: Description:


Axis Axis tag axis structure
Motion Control MOTION_INSTRUCTION tag motion structure
Drive output SINT, INT, DINT, REAL immediate the new output voltage or
or tag percent value for the axis
Drive Units DINT Immediate 0=volts
1=% of maximum output limit

160
Estrutura Motion Instruction, Rotina de Falha
Motion State
– Motion Direct Drive On (MDO)

MDO Changes to Axis Status Bits


Bit Name State Meaning
DriveEnableStatus True The axis is in the drive control state
The drive enable output is active.

TechnoFact 5: Se o servo amplificador está configurado para modo


torque, tenha cuidado quando utilizar a instrução MDO, se o eixo
estiver sem carga. No modo torque, o sistema irá gerar uma
velocidade muito maior que a requerida para que seja possível atingir
o torque desejado.

161
Estrutura Motion Instruction, Rotina de Falha
Motion State

• Motion Direct Drive Off (MDF)


• Use a instrução MDF para desativar o servo drive e setar a tensão de
saída para a tensão voltage to the output offset voltage. A output
offset voltage é a tensão de saída que gera nada ou o mínimo de
movimento no eixo.
• Usos comuns para esta instrução:
– Parar um movimento iniciado por uma instruçãoMotion
Direct Drive On (MDO).
– Mudar um eixo de direct drive control para eixo pronto
para operar.

TechnoFact 6: Use a instrução MDF


para desativar uma instrução MDO,
não usar stop no eixo.

162
Estrutura Motion Instruction, Rotina de Falha
Motion State
– Motion Direct Drive Off (MDF)

Operand: Type: Format: Description:


Axis Axis tag axis structure
Motion Control MOTION_INSTRUCTION tag motion structure

163
Estrutura Motion Instruction, Rotina de Falha
Motion State
– Motion Direct Drive Off (MDF)

MDF Changes to Axis Status Bits


Bit Name State Meaning
DriveEnableStatus False The axis is in the axis ready state
The drive enable output is inactive.

164
Estrutura Motion Instruction, Rotina de Falha
Motion State
Motion Group Shutdown (MGSD)
• Use a instrução MGSD para forçar todos os eixos de um grupo para o
modo shutdown. O estado de shutdown em um eixo significa:
– O servo é desabilitado
– A saída drive enable é imediatamente desativada
– A saída servo output level é setada para o valor de
output offset
– O contato dos sevos modules OK são abertos

165
Estrutura Motion Instruction, Rotina de Falha
Motion State
– Motion Group Shutdown (MGSD)

Operand: Type: Format: Description:


Group MOTION_GROUP tag group structure
Motion Control MOTION_INSTRUCTION tag motion structure

166
Estrutura Motion Instruction, Rotina de Falha
Motion State

– Motion Group Shutdown (MGSD)

MASR Changes to Axis Status Bits


Bit Name State Meaning
ServoActStatus False Axis is in the axis ready state
Servo loop is inactive.
DriveEnableStatus False The drive enable output is inactive.
ShutdownStatus False The axis is not in the shutdown state.
AccelStatus False The axis is not accelerating
DecelStatus False The axis is not decelerating
StoppingStatus False The axis is not stopping
JogStatus False The axis is not jogging
MoveStatus False The axis is not moving
GearingStatus False The axis is not gearing

167
Estrutura Motion Instruction, Rotina de Falha
Motion State
– Motion Group Shutdown (MGSD)

MASR Changes to Axis Status Bits (continued)


Bit Name State Meaning
HomingStatus False The axis is not homing
TuneStatus False The axis is not tuning
TestStatus False The axis is not running a testing process
GearLockedStatus False The axis is not clutching to a new gear speed
PositionCamStatus False Pcam motion profile is not in progress
TimeCamStatus False Tcam motion profile is not in progress
PositionCamLockedStatus False The Pcam is stopped and the lock is cleared
TimeCamLockedStatus False The Tcam is stopped and the lock is cleared
PositionCamPendingStatus False The pending PCAM profile is cancelled
TimeCamPendingStatus False The pending TCAM profile is cancelled

168
Estrutura Motion Instruction, Rotina de Falha
Motion State

– Motion Group Shutdown Reset (MGSR)


• Use a instrução MGSR para mudar um grupo de eixos do
estado de shutdown para pronto para operar.

Operand: Type: Format: Description:


Group MOTION_GROUP tag group structure
Motion Control MOTION_INSTRUCTION tag motion structure

169
Estrutura Motion Instruction, Rotina de Falha
Motion State
– Motion Group Shutdown Reset (MGSR)

MGSR Changes to Axis Status Bits


Bit Name State Meaning
ShutdownStatus False The axis is not in the shutdown
state

170
Estrutura Motion Instruction, Rotina de Falha
Motion State
– Motion Group Strobe Position (MGSP)
• Use a instrução MGSP para guardar o corrente command e
actual position de todos os eixos do grupo. Estes valores são
guardados nos atributos StrobeActualPosition e
StrobeCommandPosition attributes. Você pode ler estes
valores utilizando a instução GSV.

Operand: Type: Format: Description:


Group MOTION_GROUP tag group structure
Motion Control MOTION_INSTRUCTION tag motion structure

171
Estrutura Motion Instruction, Rotina de Falha
Motion State

– Motion Group Stop (MGS)

• Utilize a instrução MGS para executar um stop em um grupo de eixos.


A instrução MGS utiliza o process type timing. Para utilizar a instrução
MGS, o grupo deve estar configurado.

172
Estrutura Motion Instruction, Rotina de Falha
Motion State
– Motion Group Stop (MGS)

Operand: Type: Format: Description:


Group MOTION_GROUP tag group structure
Motion Control MOTION_INSTRUCTION tag motion structure
Inhibit DINT immediate Select whether the group
of axes servo loops are
opened after they stop:
disabled
enabled

TechnoFact 7: Se você selecionar a


opção inhibit na instrução MGS, a
instrução MGS mudará os bits
ServoActStatus e o DriveEnableStatus.

173
Estrutura Motion Instruction, Rotina de Falha
Motion State
– Motion Group Stop (MGS)
MGS Changes to Axis Status Bits
Bit Name State Meaning
StoppingStatus True The axis is stopping
JogStatus False The axis is not jogging
MoveStatus False The axis is not moving
GearingStatus False The axis is not gearing
HomingStatus False The axis is not homing
DecelStatus True The axis is decelerating
ServoActStatus False The axis is in the axis ready state. The servo
loop is inactive
DriveEnableStatus False The enable output is inactive
PositionCamStatus False Pcam motion profile is not in progress
TimeCamStatus False Tcam motion profile is not in progress
PositionCamLockedStatus False The Pcam is stopped and the lock is cleared
TimCamLockedStatus False The Tcam is stopped and the lock is cleared
PositionCamPendingStatus False The pending PCAM profile is cancelled
TimeCamPendingStatus False The pending Tcam profile is cancelled

174
Estrutura Motion Instruction, Rotina de Falha
Motion State

– Motion Group Programmed Stop (MGPS)

• Utilize a instrução MGPS para executar stop em todos os eixos de


um grupo. A instrução para cada eixo da forma como lhe foi
configurado. O método de parada está contido dentro do atributo
ProgrammedStopMode. Para utilizar a instrução MGPS o grupo deve
estar configurado.

175
Estrutura Motion Instruction, Rotina de Falha
Motion State
– Motion Group Programmed Stop (MGPS)

Operand: Type: Format: Description:


Group MOTION_GROUP tag group structure
Motion Control MOTION_INSTRUCTION tag motion structure

TechnoFact 8: Quando utilizar a instrução MGPS, os bits


ShutdownStatus, ServoActStatus e DriveEnableStatus são setados ou
resetados, dependendo do tipo de stop programado e selecionado para
cada eixo.

176
Estrutura Motion Instruction, Rotina de Falha
Motion State
– Motion Group Programmed Stop (MGPS)

MGPS Changes to Axis Status Bits


Bit Name State Meaning
StoppingStatus True The axis is stopping
JogStatus False The axis is not jogging
MoveStatus False The axis is not moving
GearingStatus False The axis is not gearing
HomingStatus False The axis is not homing
AccelStatus False The axis is accelerating
TuneStaus False The axis is not running a tuning
process
TestStatus False The axis is not running a testing
process
DecelStatus True The axis is decelerating
TimeCamPending False The pending Tcam profile is cancelled
Status

177
Estrutura Motion Instruction, Rotina de Falha
Motion State
– Motion Group Programmed Stop (MGPS)

MGPS Changes to Axis Status Bits


Bit Name State Meaning
ShutdownStatus True/False Depends on the programmed stop
mode for each axis
ServoActStatus True/False Depends on the programmed stop
mode for each axis
DriveEnableStatus True/False Depends on the programmed stop
mode for each axis
PositionCamStatus False Pcam motion profile is not in progress
TimeCamStatus False Tcam motion profile is not in progress
PositionCamLockedStatus False The Pcam is stopped and the lock is
cleared
TimCamLockedStatus False The Tcam is stopped and the lock is
cleared
PositionCamPendingStatus False The pending PCAM profile is
cancelled
GearingLockedStatus False The axis is not clutching to a new gear
speed

178
Instruções Básicas de Motion

• Até agora, vimos como criar um novo projeto, configurar o hardware e


software para uma aplicação Motion, utilize as instruções GSV/SSV para
modificar e monitorar os parâmentros do motion, técnicas de
manipulação de falhas e usar e programar as instruções.

179
Instruções Básicas de Motion
• Após completar esta lição você estará apto a programar e testar
instruções básicas de motion, completando as seguintes tarefas:

– Entender o uso e a temporização para as instruções básicas de motion.

– Implementar instruções básicas de motion para a plataforma ControlLogix.

180
Instruções Básicas de Motion
• Instruções Básicas de Motion

• Motion Axis Home (MAH),


• Motion Axis Jog (MAJ),
• Motion Axis Move (MAM)
• Motion Axis Stop (MAS)
• Motion Axis Gear (MAG)
• Motion Change Dynamics (MCD)
• Motion Redefine Position (MRP)

– Estes são os blocos básicos para aplicações de Controle de Movimento, para a plataforma
ControlLogix.

181
Instruções Básicas de Motion

• Motion Axis Home (MAH)


– Utiliza a instrução MAH para fazer um homing de um eixo.
– São disponíveis dois tipos de homings:
• Ativo— o eixo executa o home configurado e estabelece uma posição absoluta para o
eixo.
• Passivo—o eixo espera pelo próximo pulso de marker para estabelecer a posição de
home.
– A instrução MAH ligará o eixo caso o eixo esteja desligado quando o comando for dado.
– A instrução MAH utiliza diagrama de tempo de mensagem e processo.

182
Instruções Básicas de Motion
• Motion Axis Home (MAH)

MAH Operand Description:


Operand: Type: Format: Description:
Axis AXIS tag axis structure
Motion control MOTION_ tag motion structure
INSTRUCTION

TechnoFact : A instrução MAH


habilita automaticamente a malha de
posição, setando o bit xxxx.Drive
EnableStatus bit.

183
Instruções Básicas de Motion
• Motion Axis Home (MAH)

MAH Motion_Instruction Structure Description:


EN The enable bit indicates when the instruction is enabled. It remains set until
servo messaging completes and the rung-condition-in goes false.
ER The error bit indicates when the instruction detects an error, such as if the
axis is not configured.
IP The in process bit sets when the jog process is successfully initiated
It resets when one of the following events occurs
The MAH instruction completes
Homing is aborted.
A Motion Axis Stop (MAS) instruction terminates the MAH instruction.
A servo fault occurs.

DN The done bit indicates when the instruction initiates an axis home operation
PC The process complete bit sets when the instruction completes an axis home
operation.

184
Instruções Básicas de Motion

• Motion Axis Home (MAH)

MAH Changes to Axis Status Bits:


Bit Name: State: Meaning:
ClutchStatus False The axis is not clutching.
1
JogStatus False/True The axis is not jogging.
1
MoveStatus False/True The axis is not moving.
1
AccelStatus True The axis is accelerating.
1
DecelStatus True The axis is decelerating.
GearingStatus False The axis is not gearing.
HomingStatus True The axis is homing.
1
If you select active homing, this status bit will be true.

185
Instruções Básicas de Motion

• Motion Axis Jog (MAJ)


• Motion Axis Jog (MAJ)
– Utilize a instrução MAJ para iniciar um jog em um
eixo.
– A instrução utiliza tipo de temporização imediata e
por processo.
– Para utilizar a instrução MAJ:
• Configure o eixo como servo.
• Assegure que o eixo esteja em estado servo
on.
– Dica: Para parar um jog, utilize uma instrução MAJ
(Motion Axis Jog) com velocidade 0, ou utilize a
instrução MAS (Motion Axis Stop).

186
Instruções Básicas de Motion
• Motion Axis Jog (MAJ)

MAJ Instruction Operand Description:


Operand: Type: Format: Description:
Axis AXIS tag axis structure
Motion MOTION_INSTRUCTION tag motion structure
control
Direction SINT, INT, or DINT immediate direction of the jog
or tag 0=forward jog
1=reverse jog
Speed SINT, INT, DINT, or immediate speed to move the axis
REAL or tag
Speed units DINT immediate the units for the speed field
0=% of maximum speed
1=units per sec
Accel rate SINT, INT, DINT, or immediate Acceleration rate of the axis
REAL or tag
Accel units DINT immediate The units for the acceleration
field
0=% of maximum accel
2
1=units per sec

187
Instruções Básicas de Motion
• Motion Axis Jog (MAJ)
MAJ Instruction Operand Description (continued):
Operand: Type: Format: Description:
Decel rate SINT, INT, immediate deceleration rate of the axis
DINT, or or tag
REAL
Decel units DINT immediate the units for the deceleration field
0=% of maximum decel
2
1=units per sec
Profile DINT immediate velocity profile to run the jog
0=trapezoidal
1=S-curve
Merge DINT immediate select whether or not to turn all axis movement
into pure jog
0=disabled
1=enabled
Merge speed DINT immediate if you selected merge, this field determines the
speed of the jog profile.
0=programmed value in the speed field
1=current axis speed

188
Instruções Básicas de Motion
• Motion Axis Jog (MAJ)

MAJ Motion_Instruction Structure Description:


EN The enable bit indicates when the instruction is enabled. It remains set until
servo messaging completes and the rung-condition-in goes false.
ER The error bit indicates when the instruction detects an error, such as if the axis is
not configured.
IP The in process bit sets when the jog process is successfully initiated
It resets when one of the following events occurs
Another MAJ instance supersedes the current instruction
The jog is aborted
A Motion Axis Stop (MAS) instruction, a merge operation, or a servo fault
terminates the MAJ instruction.
DN The done bit indicates when the instruction initiates an axis jog

189
Instruções Básicas de Motion
• Motion Axis Jog (MAJ)

MAJ Changes to Axis Status Bits:


Bit Name: State: Meaning:
JogStatus True The axis is jogging.
1
MoveStatus False The axis is not moving.
1
GearingStatus False The axis is not gearing.
AccelStatus True The axis is accelerating.
DecelStatus True The axis is decelerating.
1
If you select the merge option, the MAJ instruction will change
these status bits

190
Instruções Básicas de Motion
• Motion Axis Move (MAM)
– Utilize a instrução MAM para iniciar um perfil de
movimento em um eixo.
– A instrução MAM utiliza tipo de temporização
imediata e processo.
– Para utilizar a instrução MAM:
• Configure o eixo como servo.
– Assegure que o eixo esteja no estado servo on.

TechnoFact : O servo deve estar habilitado para que


se possa executar a instrução MAM. Caso o servo não
esteja habilitado utilize a instrução MSO para habilitá-
lo. É uma boa prática de projeto, testar se o bit
xxxx.DriveEnableStatus) está setado antes de enviar
um comando motion.

191
Instruções Básicas de Motion
Move Instruction Operand Description:
Operand: Type: Format: Description:
Axis AXIS tag axis structure
Motion control MOTION tag motion structure
_INSTRUCTION
Move Type SINT, INT, or immediate Type of move operation
DINT or tag 0=absolute move 1=incremental
move 2=rotary shortest path 3=rotary
positive move 4=rotary negative move
Position SINT, INT, DINT, immediate Value of the absolute position to move to or
or REAL or tag for incremental movement, the value of the
distance to move from the current command
position
Speed SINT, INT, DINT, immediate speed to move the axis
or REAL or tag
Speed units DINT immediate the units for the speed field
0=% of maximum speed
1=units per sec

192
Instruções Básicas de Motion
Move Instruction Operand Description (continued):
Operand: Type: Format: Description:
Accel rate SINT, INT, DINT, immediate Acceleration rate of the axis
or REAL or tag
Accel units DINT immediate The units for the acceleration field
0=% of maximum accel
1=units per sec2
Decel rate SINT, INT, DINT, immediate deceleration rate of the axis
or REAL or tag
Decel units DINT immediate the units for the deceleration field
0=% of maximum decel
1=units per sec2
Profile DINT immediate velocity profile to run the move
0=trapezoidal
1=S-curve
Merge DINT immediate select whether or not to turn all axis movement
into pure move
0=disabled
1=enabled
Merge speed DINT immediate if you selected merge, this field determines the
speed of the move profile.
0=programmed value in the speed field
1=current axis speed

193
Instruções Básicas de Motion

MAM Motion_Instruction Structure Description:


EN The enable bit indicates when the instruction is enabled. It remains set
until servo messaging completes and the rung-condition-in goes false.
ER The error bit indicates when the instruction detects an error, such as if
the axis is not configured.
IP The in process bit sets when the move process is successfully initiated
It resets when one of the following events occurs
The MAM instruction completes.
The move is aborted
A Motion Stop Axis (MAS) instruction, a merge operation, or a servo
fault terminates the MAM instruction.
DN The done bit indicates when the instruction initiates an axis move
PC The process complete bit sets when the instruction completes an axis
move.

194
Instruções Básicas de Motion

MAM Changes to Axis Status Bits:


Bit Name: State: Meaning:
1
JogStatus False The axis is not jogging.
MoveStatus True The axis is moving.
1
GearingStatus False The axis is not gearing.
AccelStatus True The axis is accelerating.
DecelStatus True The axis is decelerating.
1
If you select the merge option, the MAM instruction will
change these status bits

195
Instruções Básicas de Motion

• Motion Axis Stop (MAS)


– Utilize a instrução MAS para fazer um stop
controlado do eixo de qualquer movimento que
vinha sendo executado no mesmo. Se não há
movimento no eixo quando a instrução é executada,
o MAS não tem efeito.
– A instrução MAS utiliza temporização imediata e por
processo.
– Para utilizar a instrução MAS, configure o eixo como
servo.

196
Instruções Básicas de Motion

• Motion Axis Stop (MAS)


MAS Operand Description:
Operand: Type: Format: Description:
Axis AXIS tag axis structure
Motion MOTION_ IN tag motion structure
control STRUCTION
Stop Type DINT immediate Type of stop operation
0=stop all motion
1=stop jogging 2=stop moving 3=stop
gearing 4=stop homing 5=stop tuning 6=stop
test
Change Decel DINT immediate Select whether or not to change the deceleration
0=no 1=yes
Decel rate SINT, INT, immediate deceleration rate of the axis
DINT, or REAL or tag
Decel units DINT immediate the units for the deceleration field
0=% of maximum decel
1=units per sec2

197
Instruções Básicas de Motion
MAS Motion_Instruction Structure Description:
EN The enable bit indicates when the instruction is enabled. It remains set until
servo messaging completes and the rung-condition-in goes false.
DN The done bit indicates when the instruction initiates an axis stop
ER The error bit indicates when the instruction detects an error, such as if the axis
is not configured.
IP The in process bit sets when the stop process is successfully initiated
It resets when one of the following events occurs
The MAS instruction completes.
A servo fault terminates the MAS instruction.
PC The process complete bit sets after the stop operation completes

MAS Changes to Axis Status Bits:


Bit Name: State: Meaning:
ClutchStatus True The axis is stopping.
JogStatus False The axis is not jogging.
MoveStatus False The axis is not moving.
GearingStatus False The axis is not gearing.
AccelStatus False The axis is not accelerating.
DecelStatus True The axis is decelerating.

198
Instruções Básicas de Motion
• Motion Axis Gear (MAG)
– Utilize a instrução MAG para executar uma
engrenagem eletrônica entre dois eixos.
– A instrução MAG utiliza o tipo de
temporização imediata e processo.
– Para utiliza a instrução MAG:
• Configure o eixo mestre como servo ou
virtual.
• Assegure que o eixo escravo esteja no
estado servo on.

199
Instruções Básicas de Motion
• Motion Axis Gear (MAG)
MAG Instruction Operand Description:
Operand: Type: Format: Description:
Axis AXIS tag axis structure
Motion control MOTION_ tag motion structure
INSTRUCTION
Direction SINT, INT, or immediatedirection of the slave axis relative to the
DINT or tag master axis
0=slave axis moves in the same direction
as the master axis
1=slave axis moves in the opposite
direction of its current direction
2=slave axis changes between the
opposite (0) and same (1) options.
3=slave axis to continues its current
direction
Ratio SINT, INT, or immediate signed, real value of the gear ratio of slave
DINT or tag units per master units

200
Instruções Básicas de Motion
MAG Instruction Operand Description (continued):
Operand: Type: Format: Description:
Slave counts SINT, INT, or immediate the slave encoder counts for an integer
DINT or tag fraction
Master counts SINT, INT, or immediate the master encoder counts for an integer
DINT or tag fraction
Master DINT immediate master position source
reference 0=actual source
1=command source
Ratio format DINT immediate format of the ratio between the slave and the
master axis
0=real gear ratio
1=integer fraction of slave encoder counts to
master encoder counts
Clutch DINT immediate select whether or not to ramp the slave axis
to gearing speed using the acceleration value
0=disabled
1=enabled
Accel rate SINT, INT, immediate acceleration of the slave axis
DINT, or REAL or tag
Accel units DINT immediate the units for the acceleration field
0=% of maximum accel
1=units per sec2

201
Instruções Básicas de Motion

• Motion Axis Gear (MAG)


Gear Motion_Instruction Structure Description:
EN The enable bit indicates when the instruction is enabled. It remains
set until servo messaging completes and the rung-condition-in goes
false.
DN The done bit indicates when the instruction initiates an axis gear
ER The error bit indicates when the instruction detects an error, such
as if the axis is not configured.
IP The in process bit sets when the gear process is successfully
initiated
It resets when one of the following events occurs
The gear is aborted.
A Motion Stop Axis (MAS) instruction, a merge operation, or a
servo fault terminates the MAG instruction.

202
Instruções Básicas de Motion

• Motion Axis Gear (MAG)

MAG Changes to Axis Status Bits:


Bit Name: State: Meaning:
1
ClutchStatus True The axis is clutching.
GearingStatus True The axis is gearing.
AccelStatus True The axis is accelerating to reach the new speed.
DecelStatus True The axis is decelerating to reach the new speed.
1
If you selected the clutch option, the MAG instruction will change this
status bit if the master current speed does not equal the slave current
speed.

203
Instruções Básicas de Motion
• Motion Change Dynamics (MCD)
– Utilize a instrução MCD para mudar a velocidade,
aceleração ou desaceleração de um perfil de
movimento executado por uma instrução MAM ou
MAJ em progresso. A instrução MCD utiliza tipo de
temporização imediata.
– Para utilizar a instrução MCD:
 Configure o eixo como servo.
 Assegure que o eixo esteja no estado servo on.
– Se o eixo não estiver executando um move ou um
jog, quando executar a instrução MCD, a mesma
não terá efeito.

TechnoFact : A instrução MCD pode ser


utilizada para mudar características de
movimento trapezoidal e de curva-s

204
Instruções Básicas de Motion

• Motion Change Dynamics (MCD)


MCD Instruction Operand Description:
Operand: Type: Format: Description:
Axis AXIS tag axis structure
Motion control MOTION_ tag motion structure
INSTRUCTION
Motion type DINT immediate
motion profile to change
0=jog
1=move
Change speed DINT immediate select whether or not to change the
speed
0=no
1=yes
Speed SINT, INT, immediate the new speed of the axis
DINT, or REAL or tag

205
Instruções Básicas de Motion
• Motion Change Dynamics (MCD)
MCD Instruction Operand Description (continued):
Operand: Type: Format: Description:
Change accel DINT Immediate select this check box to change the acceleration
0=no
1=yes
Accel rate SINT, INT, immediate acceleration rate of the axis
DINT, or REAL or tag
Change decel DINT immediate select this check box to change the deceleration
0=no
1=yes
Decel rate SINT, INT, immediate deceleration rate of the axis
DINT, or REAL or tag
Speed units DINT immediate the units of the speed field
0=% of maximum speed
1=units per sec
Accel units DINT immediate the units for the acceleration field
0=% of maximum accel
1=units per sec2

206
Instruções Básicas de Motion
• Motion Change Dynamics (MCD)

MCD Motion_Instruction Structure Description:


EN The enable bit indicates when the instruction is enabled. It remains set
until servo messaging completes and the rung-condition-in goes false.
DN The done bit indicates when the instruction changes the axis dynamics
ER The error bit indicates when the instruction detects an error, such as if the
axis is not configured.

207
Instruções Básicas de Motion
• Motion Redefine Position (MRP)
– Utilize a instrução MRP para mudar a command ou actual position de um eixo. Esta instrução
não causa movimento no eixo, a posição é simplesmente redefinida.
– O controlador pode calcular a nova posição de duas maneiras:
• Absoluta, onde o controlador assume a corrente posição como actual ou command
position.
• Relativa, onde o controlador adiciona um valor de posição para a corrente actual ou
command position.
– A instrução MRP utiliza tipo de temporização por mensagem.
– Para utilizar a instrução MRP, configure o eixo como servo ou como position-only servo

208
Instruções Básicas de Motion

Redefine Position Instruction Operand Description:


Operand: Type: Format: Description:
Axis AXIS tag axis structure
Motion control MOTION_ tag motion structure
INSTRUCTION
Type DINT immediate type of redefinition operation
0=absolute
1=relative
Position select DINT immediate select whether to perform the
redefinition operation on the current:
0=actual position
1=command position
Position SINT, IN, DINT, immediate value to change the axis position
or REAL or tag

209
Instruções Básicas de Motion

Redefine Position Motion_Instruction Structure Description:


EN The enable bit indicates when the instruction is enabled. It remains set
until servo messaging completes and the rung-condition-in goes false.
DN The done bit indicates when the instruction redefines the axis position.
ER The error bit indicates when the instruction detects an error, such as if
the axis is not configured.

210
Instruções Motion Event

• Até aqui, vimos como criar um novo projeto, configurar o hardware e


software para uma aplicação de motion, utilizar as instruções GSV/SSV
para modificar e monitorar parâmentros, técnicas para manipular falhas,
programar instruções do tipo Motion State e instruções básicas.

211
Instruções Motion Event

• Esta lição tratará das Instruções de Event Motion (eventos). Após o


término desta lição, você será capaz de programar e testar instruções
Event Motion, completando as seguintes tarefas:
– Entender o uso e o tempo de execução para as instruções Event Motion

– Implementar instruções event motion na plataforma ControlLogix

212
Instruções Motion Event
• Instruções Motion Event

– Até este ponto discutimos as instruções Motion State, Motion Group e Motion
Move. Esta lição introduzirá o assunto, instruções Motion Event:

• Motion Axis Watch (MAW)

• Motion Disarm Watch (MDW)

• Motion Arm Registration (MAR)

• Motion Disarm Registration (MDR)

213
Instruções Motion Event
• Motion Arm Watch (MAW)
– Utilize a instrução MAW para armar o cheque de watch-position para um eixo.
– A instrução MAW utiliza temporização de mensagem e processo.
– Para utilizar a instrução MAW, configure o eixo como servo, virtual ou position
only.

TechnoFact : A instrução MAW é


muito utilizada em aplicações de
transferência.

214
Instruções Motion Event

•Motion Arm Watch (MAW)


MAW Operand Description:
Operand: Type:
Format: Description:
Axis AXIS tag axis structure
Motion control MOTION_ tag motion structure
INSTRUCTION
Trigger DINT immediate Select the watch-event
Condition trigger condition:
Forward
The servo module looks for the actual
position to change from less than the
watch position to greater than the
watch position.
Reverse
The servo module looks for the actual
position to change from greater than
the watch position to less than the
watch position.
Position SINT, INT, immediate new value for the watch position
DINT, or REAL or tag

215
Instruções Motion Event

•Motion Arm Watch (MAW)


MAW Motion_Instruction Structure Description:
EN The enable bit indicates when the instruction is enabled. It remains set until
servo messaging completes and the rung-condition-in goes false.
DN The done bit indicates when the instruction initiates an axis home operation

ER The error bit indicates when the instruction detects an error, such as if the
axis is not configured.
IP The in process bit sets when the MAW process is successfully initiated
It resets when one of the following events occurs:
A watch event occurs
Another MAW instruction supersedes the current instruction
A Motion Disarm Watch (MDW) instruction terminates the MAW
instruction
PC The process complete bit sets when the watch event occurs.

216
Instruções Motion Event

•Motion Arm Watch (MAW)

MAW Changes to Axis Status Bits:


Bit Name: State: Meaning:
WatchEvArmStatus True The axis is looking for a watch position event.
WatchEvStatus False The previous watch event is cleared.

217
Instruções Motion Event

• Motion Disarm Watch (MDW)


– Utilize a instrução MDW para desarmar o cheque de watch-position para um eixo.
A instrução MAW utiliza temporização de mensagem. Para utilizar a instrução
MDW, configure o eixo como servo, virtual ou position only.

218
Instruções Motion Event

•Motion Disarm Watch (MDW)


MDW Operand Description:
Operand: Type: Format: Description:
Axis AXIS tag axis structure
Motion control MOTION_ tag motion structure
INSTRUCTION

MDW Motion_Instruction Structure Description:


EN The enable bit indicates when the instruction is enabled. It remains set
until servo messaging completes and the rung-condition-in goes false.
DN The done bit indicates when the instruction initiates an axis home
operation
ER The error bit indicates when the instruction detects an error, such as if
the axis is not configured.

219
Instruções Motion Event

•Motion Disarm Watch (MDW)


MDW Changes to Axis Status Bits:
Bit Name: State: Meaning:
WatchEvArmStatus False The axis is not looking for a watch position event.
WatchEvStatus False The previous watch event is cleared.

220
Instruções Motion Event

• Motion Arm Registration (MAR)


– Utilize a instrução MAR para pegar um evento na entrada registration do
módulo servo para um eixo.

– A instrução MAR utiliza temporização de mensagem e processo.

– Para utilizar a instrução MAR, configure o eixo como servo ou position


only.

TechnoFact : Entradas
Registration são entradas sem
filtro e têm uma taxa de
atualização de 1 sec.

221
Instruções Motion Event

•MAR
Motion ArmType: Registration
Operand Description:
Operand: Format:
(MAR)
Description:
Axis AXIS tag axis structure
Motion control MOTION_ INS tag motion structure
TRUCTION
Trigger DINT immediate Select the input condition that
Condition defines the registration event:
Trigger on positive edge
Trigger on negative edge
Windowed registration DINT immediate Select whether the registration
position is within the position
window:
disabled
enabled

222
Instruções Motion Event

•Motion Arm Registration (MAR)


MAR Operand Description:
Operand: Type: Format: Description:
Min. position SINT, INT, immediate Minimum position for windowed
DINT, or REAL or tag registration event checking.

The registration position must be


greater than this value before the
controller accepts the registration
event
Max. position SINT, INT, immediate Maximum position for windowed
DINT, or REAL or tag registration event checking.

The registration position must be


less than this value before the
controller accepts the registration
event

223
Instruções Motion Event

•MAR
Motion Arm Registration (MAR)
Motion_Instruction Structure Description:
EN The enable bit indicates when the instruction is enabled. It remains set until servo
messaging completes and the rung-condition-in goes false.
DN The done bit indicates when the instruction initiates an axis home operation

ER The error bit indicates when the instruction detects an error, such as if the axis is
not configured.
IP The in process bit sets when the arm registration is successfully initiated
It resets when one of the following events occurs:
A registration event occurs
Another MAR instruction supersedes the current instruction
A Motion Disarm Registration (MDR) instruction terminates the MAR instruction
PC The process complete bit sets when the registration event occurs.

224
Instruções Motion Event

•Motion Arm Registration (MAR)


MAR Changes to Axis Status Bits:
Bit Name: State: Meaning:
RegEvArmStatus True The axis is looking for a registration event.
RegEvStatus False The previous registration event is cleared.

225
Instruções Motion Event

•Motion Disarm Registration (MDR)

• Motion Disarm Registration (MDR)


– Utilize a instrução MDR para desarmar a verificação de ocorrência de um
evento na entrada registration de um eixo.

– A instrução MDR utiliza temporização por mensagem.

– Para utilizar a instrução MDR, configure o eixo como servo ou position


only.

226
Instruções Motion Event

•Motion Disarm Registration (MDR)

MDR Operand Description:


Operand: Type: Format: Description:
Axis AXIS tag axis structure
Motion control MOTION_ tag motion structure
INSTRUCTION

227
Instruções Motion Event

•Motion Disarm Registration (MDR)


MDR Motion_Instruction Structure Description:
EN The enable bit indicates when the instruction is enabled. It remains set until
servo messaging completes and the rung-condition-in goes false.
DN The done bit indicates when the instruction initiates an axis home operation

ER The error bit indicates when the instruction detects an error, such as if the
axis is not configured.

MDR Changes to Axis Status Bits:


Bit Name: State: Meaning:
RegEvArmStatus False The axis is not looking for a registration event.
RegEvStatus False The previous registration event is cleared.

228

Você também pode gostar