 Utilização do editor de textos

Este capítulo só descreve as características e os comandos do editor de texto ISaGRAF, particularmente quando utilizado para entrar no código fonte de programas ST e IL..

Comandos de Edição

Opções

Comandos do menu "Ferramentas"

Chamando outras ferramentas ISaGRAF

Parâmetros do programa

Outros comandos do menu "Arquivo"

Atualização do arquivo de diário do programa

Seleção de uma variável do dicionário

Depurando programas ST e IL

O editor de texto ISaGRAF também é utilizado para inserir a descrição de projeto, editar o arquivo de diário, observações técnicas (documentação online) para elementos de biblioteca e toda vez que um documento do tipo texto tem que ser inserido pelo usuário.

Definindo recursos


Comandos de Edição

Os comandos do menu "Editar" são utilizados para trabalhar no texto editado. A maioria destes comandos atua sobre os caractere selecionados no diagrama ou executam uma ação no local atual do sinal de circunflexo (^).

 	Recortar e colar

Localizar e substituir

Ir para linha

Inserir símbolo do dicionário

Inserir arquivo


 	Recortar e colar

A tecla DEL pode ser utilizada para remover o texto selecionado. Utilize o comando "Editar / Desfazer" para restaurar elementos após um comando DEL. Os comandos "Recortar", "Copiar", "Colar" do menu "Editar" são utilizados para mover ou copiar texto no programa, ou inserir pedaços de textos copiados na área de transferência através de outros aplicativos.


Localizar e substituir

 Os comandos de menu "Editar / Localizar" e "Editar / Substituir" são utilizados para localizar e substituir textos no programa. Qualquer cadeia de caractere pode ser localizada. A pesquisa pode ser executada para frente ou para trás, começando no local atual do sinal de circunflexo (^). Não executa um "loop" quando são alcançados os limites do programa.


Ir para linha

O comando "Editar / Ir para linha" é utilizado para mover o sinal de circunflexo a um número de linha específico. Isto pode ser muito útil para o acesso a uma linha com um erro descoberto pelo compilador ISaGRAF em um programa ST ou  IL e referenciado por um número de linha.


Inserir símbolo do dicionário

 Utilize o comando "Editar / Inserir variável" para inserir, na posição atual do sinal de circunflexo, o símbolo de uma variável ou objeto declarado no dicionário de projeto. O símbolo é selecionado pela caixa de seleção de variável comum descrita no capítulo " Outros comandos dos editores de programa " neste documento.


Inserir arquivo

 O comando "Editar / Inserir arquivo" insere todo o conteúdo de um arquivo no local atual do sinal de circunflexo (^). Note que somente os arquivos texto ASCII puros podem ser controlados por este comando.


Opções

Os comandos do menu "Opções" são utilizados para exibir ou esconder a barra de ferramentas de edição e selecionar a fonte de caractere. A fonte de caractere selecionada será utilizada para qualquer edição de texto em todo o Ambiente de Trabalho ISaGRAF.

Quando utilizado para entrar no código fonte de um programa ST / IL, o comando "Opções / Exibir palavras-chave" é utilizado para exibir ou esconder uma barra de ferramentas que agrupa as palavras chaves mais comuns de linguagem ST ou IL. Clique duas vezes sobre um botão na barra de ferramentas para inserir a palavra chave correspondente ou operador no local atual do sinal de circunflexo.


Chamando outras ferramentas ISaGRAF

Verifica (compila) o programa

 	Simular ou depurar o aplicativo

Editando o dicionário de variáveis


Verifica (compila) o programa

 O comando "Arquivo / Verificar" executa o gerador de código ISaGRAF para verificar a sintaxe de programa atualmente editado. No caso de linguagem SFC, ambos nível 1 e 2 são conferidos. Quando a verificação de sintaxe estiver completa, a janela de gerador de código deve ser fechada para continuar o trabalho no programa. Se há só um programa no aplicativo (o editado) o código de aplicativo é gerado se nenhum erro de sintaxe é detectado. O comando "Opções / Opções do compilador" é utilizado para configurar a compilação e otimização de parâmetros. Refira-se ao capítulo "Utilização do gerador de código" neste documento para informação adicional sobre compilação e geração de código.


 	Simular ou depurar o aplicativo

 Os comandos "Arquivo / Simular" e "Arquivo / Depurar" executam o depurador gráfico ISaGRAF ou no modo simulação ou no modo realmente conectado e reabre o programa SFC editado no modo depurar. Utilizado no modo depurar, nenhuma modificação pode ser inserida no programa.


Editando o dicionário de variáveis

 O comando "Arquivo / Dicionário" é utilizado para editar o dicionário de variáveis para o aplicativo atual e o programa atual. Também contém os pontos de entrada para editar as palavras definidas pelo usuário. As declarações locais ou palavras definidas referem-se ao programa atualmente editado.


Parâmetros do programa

Quando o programa editado é uma função, um bloco de função ou um subprograma, o comando "Arquivo / Parâmetros" é utilizado para definir os seus parâmetros de chamada e de retorno. Este comando não tem nenhum efeito se o programa editado é um programa SFC ou de mais alto nível da seção Início ou Fim.

Subprogramas, funções ou blocos de função podem ter até 32 parâmetros (entrada ou saída). Uma função ou subprograma sempre tem um (e somente um) parâmetro de retorno que tem que ter o mesmo nome da função para conformar com as convenções de escrita de linguagem ST.

A lista no canto superior esquerdo da janela mostra os parâmetros, na ordem do modelo de chamada: primeiro os parâmetros de chamada, por último os parâmetros de retorno. A parte inferior da janela mostra a descrição detalhada do parâmetro selecionado na lista. Qualquer um dos tipos de dados ISaGRAF pode ser utilizado para um parâmetro. Os parâmetros de retorno devem estar localizados após os parâmetros de chamada na lista. Os parâmetros de nome devem seguir às seguintes regras:

•	o comprimento do nome não pode exceder 16 caracteres

•	o primeiro caractere deve ser uma letra

•	os demais caracteres devem ser letras, algarismos ou caractere de sublinha (_)

•	o nome não distingue entre maiúscula/minúscula

O comando "Inserir" é utilizado para inserir um novo parâmetro antes do parâmetro selecionado. O comando "Apagar" é utilizado para apagar o parâmetro selecionado. O comando "Organizar" automaticamente rearranja (classifica) os parâmetros, de forma que os parâmetros de retorno sejam colocados no fim da lista.


Outros comandos do menu "Arquivo"

Os seguintes comandos estão disponíveis no menu "Arquivo" de todos os editores de programas:

Abrir outro programa

Imprimindo o programa


Abrir outro programa

O comando "Arquivo / Abrir" permite ao usuário fechar o programa que está sendo editado e iniciar a edição de outro programa do projeto selecionado com a mesma linguagem. Esta função não pode ser utilizada para editar um programa escrito em outra linguagem. O novo programa selecionado substitui o programa apresentado na janela de edição.


Imprimindo o programa

O comando "Arquivo / Imprimir" imprime o programa editado na impressora. Quando editando um programa ST ou IL este comando executa o gerador de documento ISaGRAF para imprimir o programa editado e variáveis locais anexadas.

Para alguns programas gráficos (SFC, FBD and Quick LD) pode-se utilizar o comando "Editar / Copiar desenho (metafile)" para copiar para a área de transferência o desenho do gráfico, no formato metarquivo, para poder ser colado em outros aplicativos tais como processadores de texto. Para programas SFC, somente a informação de nível 1 (gráfico, numeração e comentário de nível 1) aparece no metarquivo copiado.


Atualização do arquivo de diário do programa

O arquivo de diário atrelado ao programa editado pode ser inserido manualmente utilizando o comando "Arquivo / Diário". O arquivo de diário é atualizado automaticamente com mensagens de saída de verificação de sintaxe sempre que o programa é compilado. Saídas compiladas são completadas com a informação de data e hora da compilação.

Se o modo "Atualizar diário" é selecionado no menu "Opções" do editor de programas, a caixa de diálogo "Diário" é aberta sempre que o programa é salvo em disco.

Se o botão OK é pressionado, a nota de texto inserida é então armazenada no fim do arquivo de diário com informação de data e hora atual. Esta característica é muito útil para manutenção de programas completos, bem como fornece ajuda útil sobre o ciclo de vida de programa.


Seleção de uma variável do dicionário

 Ao editar um programa texto (ST ou IL) o "Editar / Inserir variável" permite a seleção do nome de uma variável declarada a ser inserida na posição atual do sinal de circunflexo (^). Ao editar programa LD ou FBD, a seleção variável é requerida para a descrição de bobinas de contatos, bloco parâmetros de E/S ou caixas de variáveis FBD. Em ambos os casos, a seguinte caixa de diálogo "Selecionar" é aberta para selecionar uma variável declarada.

A caixa de seleção "Escopo" é utilizada para selecionar entre variáveis globais e locais. A caixa de seleção à direita permite a seleção do tipo de dados. Ícones pequenos ao lado da caixa de seleção de tipo são botões que podem ser utilizados como atalhos para selecionar a maioria dos tipos de dados atuais:

Booleano

Inteiro / Real

Temporizador

Mensagem

Para selecionar uma variável, clique duas vezes sobre o seu nome na lista. São exibidos então o seu nome e o comentário no topo da lista. Pressione então botão "OK" para confirmar sua seleção. Também é possível entrar um nome de variável diretamente dentro do controle de edição sem utilizar a lista.


Definindo recursos

O comando "Recursos" do menu "Opções" permite que o usuário defina recursos. Um recurso são quaisquer dados definidos pelo usuário (configuração de rede, de hardware...) de qualquer formato (arquivo, lista de valores) que tem que ser combinado com o código gerado e com ele ser carregado no PLC destino. Tais dados não são operados diretamente pelo núcleo ISaGRAF e são normalmente dedicados a outros softwares instalados no PLC destino. Refira-se ao seu manual de hardware para informação adicional sobre recursos disponíveis.

Arquivo de definição de recurso

Linguagem de referência

Exemplo

Compilar recursos

Implementação


Arquivo de definição de recurso

Os recursos estão definidos em um "Arquivo de definição de recurso" armazenado com outros arquivos do projeto ISaGRAF. Este é um arquivo texto ASCII puro, processado pelo Compilador de Recurso ISaGRAF. Este compilador é executado automaticamente quando o código de aplicativo é construído. Esta seção explica a sintaxe deste arquivo. O arquivo de definição de recurso utiliza regras léxicas da linguagem ST. Comentários, começando com  os caracteres"(*" e terminando com "*)" podem ser inseridos em qualquer lugar no texto. Cadeias são delimitadas através de apóstrofes simples. Refira-se à segunda parte deste manual para mais explicações sobre os formatos léxicos utilizados para inserir valores numéricos.


Linguagem de referência

A seguir, a lista de palavras chaves e declarações utilizadas num arquivo de definição de recurso.

ULONGDATA

VARLIST

BINARYFILE

TEXTFILE

TARGET

ANYTARGET

FROM

TO


ULONGDATA

Significado:	Especifica um recurso que é uma lista de valores inteiros. Os valores são armazenados no código destino como inteiros sem sinal de 32 bits. Os valores são armazenados na ordem especificada no arquivo de definição de recurso. Os valores devem ser separados através de vírgulas. O nome do recurso não pode exceder 15 caracteres.

Sintaxe:	ULONGDATA '< nome_recurso>'

BEGIN

... seleção_destino...

... lista de valores...

END

Exemplo:	ULongData 'MYDATA'

Begin

...

0, -1, 100_000,	(* decimal *)

16#A0B1, 2#1011_0101	(* hexadecimal, binary *)

End


VARLIST

Significado:	Especifica um recurso que é uma lista de endereços de variáveis. As variáveis são identificadas por seus nomes no arquivo de definição de recurso. Os endereços de variáveis são armazenados no código destino como inteiros sem sinal de 16 bits. Os endereços são armazenados na ordem especificada no arquivo de definição de recurso. As variáveis devem ser separadas por vírgulas. O nome do recurso não pode exceder 15 caracteres.

Sintaxe:	VARLIST '< nome_recurso>'

BEGIN

... seleção_destino...

...lista de nomes de variáveis...

END

Exemplo:	VarList 'LIST'

Begin

...

Var100, MyParameter, Command, Alarm

End


BINARYFILE

Significado:	Especifica um recurso Arquivo Binário. Os dados de fonte são armazenados em um arquivo MS-DOS. A definição do recurso destino é complementada com um nome do caminho destino. Caracteres de fim de linha (EL) não são convertidos pelo Compilador de Recurso ISaGRAF. O nome do recurso não pode exceder 15 caracteres.

Sintaxe:	BINARYFILE '<nome_recurso>'

BEGIN

...seleção_destino...

FROM '<nome_do_caminho_fonte>'

TO '<nom_do_caminho_destino>'

END

Exemplo:	BinaryFile 'MYFILE'

Begin

...

From 'c:\user\config.bin'

To '/dd/user/appl/config.dat'

End


TEXTFILE

Significado:	Especifica um recurso Arquivo Texto. Os dados de fonte são armazenado num arquivo ASCII. A definição de recurso destino é complementada com um nome do caminho destino. Os caracteres de fim de linha (EL) são convertidos pelo Compilador de Recurso ISaGRAF de acordo com as convenções do sistema host destino. O nome do recurso não pode exceder 15 caracteres.

Sintaxe:	TEXTFILE '<seleção_destino>'

BEGIN

...seleção destino...

FROM '<nome_do_caminho_fonte>'

TO '<nome_do_caminho_destino>'

END

Exemplo:	TextFile 'MYFILE'

Begin

...

From 'c:\user\config.bin'

To '/dd/user/appl/config.dat'

End


TARGET

Significado:	Especifica o nome do código destino que tem que incluir o recurso. Refira-se à seção anterior (opções de compilador) para informação adicional sobre destinos controlados. A declaração "Target" pode aparecer mais de uma vez no mesmo bloco de recurso para selecionar vários destinos. Esta declaração não pode ser usada se a declaração "AnyTarget" está especificada.

Sintaxe:	TARGET '<nome_destino>'

Exemplo:	BinaryFile 'MYFILE'

Begin

Target 'ISA86M'

Target 'ISA68M'

...

End


ANYTARGET

Significado:	Especifica que o recurso deve ser combinado com todos os códigos destino criados pelo Gerador de Códigos. O Gerador de Código ISaGRAF pode produzir vários códigos destino durante o mesmo comando "Compilar". Esta declaração não pode ser utilizada se uma ou várias declarações "Target" são especificadas.

Sintaxe:	ANYTARGET

Exemplo:	ULongData 'MYDATA'

Begin

AnyTarget

...

End


FROM

Significado:	Especifica o nome do caminho fonte (no PC em que o Ambiente de Trabalho ISaGRAF está instalado) de um recurso BinaryFile ou TextFile. Os caracteres utilizados para isolar os componentes do nome do caminho (unidade, diretório, prefixo, sufixo) tem que estar conforme as convenções do sistema MS-DOS.

Sintaxe:	FROM '<nome do caminho destino>'

Exemplo:	BinaryFile 'MYFILE'

Begin

...

From 'c:\user\config.dat'

To '/dd/user/appl/config.dat'

End


TO

Significado:	Especifica o nome do caminho destino (no sistema destino) de um recurso BinaryFile ou TextFile. Os caracteres utilizados para isolar os componentes do nome do caminho (unidade, diretório, prefixo, sufixo) têm que estar conforme as convenções do sistema host destino.

Sintaxe:	TO '<nome do caminho destino>'

Exemplo:	TextFile 'MYFILE'

Begin

...

From 'c:\user\config.dat'

To '/dd/user/appl/config.dat'

End


Exemplo

A seguir, um exemplo completo de um arquivo de definição de recurso:

(* resource definition file *)

ULongData 'DATA1'	(* lista de valores *)

Begin

   Target 'ISA86M'	(* apenas para este "target" *)

   1, 0, 16#1A2B3C4D, +1, -1	(* valores numéricos *)

End

VarList 'VLIST1'	(* lista de variáveis *)

Begin

   Target 'ISA86M'	(* apenas para este "target" *)

   Valve1, StateX, Command, Alrm1	(* nome das variáveis *)

End

BinaryFile 'FILE1'	(* definição do arquivo binário *)

Begin

   AnyTarget	(* dedicado a todos "targets" *)

   From 'c:\user\updatef.bin'	(* arquivo fonte no PC *)

   To 'updatef.cfg'	(* arquivo "target" no PLC *)

End

TextFile 'FILE2'	(* definição do arquivo texto *)

Begin

   Target 'ISA68M'

   From 'c:\nw\nwbd.txt'	(* arquivo fonte no PC *)

   To '/nw/dat/nwbd'	(* arquivo "target" no PLC *)

End


Compilar recursos

Se recursos foram inseridos em arquivo de definição de recurso, uma caixa de diálogo é apresentada ao término da geração de código ISaGRAF. Pressione o botão "Compilar" para executar o compilador de recurso. Mensagens de saída e erros serão exibidas no controle principal. Pressione "Fechar" para evitar a compilação de recurso. Neste caso, não serão acrescentados recursos ao código ISaGRAF.


Implementação

O número de recursos, o tamanho das linhas de dados e arquivos não estão limitados pelo ISaGRAF. Os recursos são armazenados ao término do código gerado, com um diretório de recurso. A seguir, o formato (utilizando notações em C) do formato de diretório de recurso:

__RESOURCE:

{

  long nbres;	/* número de recursos definidos */

  {

    char name[16];	/* nome do recurso */

    long type;	/* tipo do dado */

    long size;	/* tamanho exato do bloco de dados */

    void *data;

    char *path_offset;	/* pontos para uma "string" */

  } /*nb of records */

}

A seguir, os possíveis valores do "tipo" de campo:

1 = arquivo binário

2 = arquivo texto

3 = dados de ulong (o campo path_offset não é utilizado neste caso)

4 = lista de variável (o campo path_offset não é utilizado neste caso)

Para arquivos texto, os caracteres de fim de linha (EL) são traduzidos pelo compilador de recurso, de acordo com as convenções de sistema destino. Todos os ponteiros são offsets de 32 bits do endereço da estrutura correspondente. Todos os nomes de recurso e nomes de caminhos são cadeias terminadas por NULL. Os nomes dos caminhos e os dados seguem o diretório de recurso.


A janela de incidentes

Os comandos a seguir estão disponíveis no menu "Ferramentas" de todos os editores de linguagem. São utilizados para apresentar as informações em uma pequena lista texto na parte inferior da janela de edição e utilizada para a navegação pelo programa.

Exibir saída do compilador	apresenta na janela de incidentes as mensagens de erro da última compilação 	do programa editado.

(somente para programa ST/IL)

Localizar no texto	localiza as ocorrências de um texto em todo o texto e as apresenta na janela 	de 	incidentes.

Esconder lista de saída	fecha a janela de incidentes

Quando mensagens de erro ou ocorrências forem apresentadas na janela de incidentes, clique duas vezes sobre uma linha para mover a seleção diretamente para o local correspondente.


Depurando programas ST e IL

Durante simulação ou depuração online de programa  ST e IL, nenhuma modificação pode ser inserida no texto de programa.

IL	Para programas IL, as instruções são formatadas em uma lista. O valor atual de uma variável utilizada em uma instrução é exibido na mesma linha. Você pode clicar duas vezes em uma instrução para mudar o valor da variável correspondente.

ST	Para programas ST, a janela Spy List está incorporada à janela do editor. Você pode redimensioná-la arrastando com o mouse a linha de separação entre elas.

Salvando a lista no disco rígido

 	Inserindo variáveis na lista

Modificando a variável selecionada

Zoom

Para cada variável da lista, o ISaGRAF exibe seu nome, seu valor atual e seu texto de comentário. As colunas podem ser redimensionadas arrastando as linhas de separação com o mouse na barra de título de lista.


Salvando a lista no disco rígido

O comando "Arquivo / Salvar" salva as listas de variáveis no disco, sob o mesmo nome, como o programa editado. Esta lista será automaticamente recarregada toda vez que o programa ST ou IL estiver aberto no modo depurar. Esta lista também pode ser livremente aberta e modificada utilizando a ferramenta Lista de Monitoração (Spy List) executada pelo comando "Ferramentas / Spy list" da janela depurador.


 	Inserindo variáveis na lista

 O comando "Editar / Inserir variável" insere outra variável na lista. O nome da variável é selecionado na lista de objetos definida no dicionário de projeto. Deste modo o usuário não tem que entrar no identificador manualmente. A variável é inserida antes da variável atual selecionada na lista. A lista não pode conter mais de 32 variáveis. A mesma variável não pode aparecer mais de uma vez na mesma lista.

 Quando o nome da variável está destacado no texto ST, pressione este botão na barra de ferramentas ou execute o comando "Editar / Monitorar Seleção" para enviar diretamente a variável para a lista de monitoração incorporada.


Modificando a variável selecionada

O comando "Editar / Alterar variável" substitui a variável selecionada por outra variável. Você também pode utilizar o comando "Apagar variável" para remover a variável selecionada da lista.


Dump display
Zoom

A qualquer hora, você pode trocar o modo de visualização entre lista e "Dump". Pressione o botão "zoom" na barra de ferramentas ou utilize o comando "Opções / Dump" para trocar o modo de visualização.

No modo "Dump", é exibido só um valor variável. Seu valor é exibido no formato numérico/simbólico no topo da janela, e também é exibido no formato "dump" binário. Este modo permite a monitoração do valor hexadecimal de cada byte no valor da variável.

A exibição "Dump" é muito útil para monitorar e compreender cadeias de mensagem contendo caracteres não imprimíveis.