Comunicação serial entre computador industrial e sistema de controle distribuído de escravos mestres de chip único

Jan 05, 2022

Deixe um recado

Design da interface de hardware O sistema de controle descrito neste artigo é composto por computador industrial e vários computadores at89C2051 de chip único. A transmissão de dados entre mestre e escravo usa comunicação serial assíncrola. Uma vez que a porta de comunicação serial do computador industrial é uma interface RS-232C, seu nível lógico é simétrico ao solo, o que é diferente da saída de nível TTL pela porta serial do microcomputador at89C2051. Portanto, é necessário garantir uma transmissão confiável de dados entre os dois. Um conversor de nível deve ser conectado à linha de comunicação. Os chips conversores de nível comum incluem chips ICL232 e MAX232. Este texto usa o chip de conversão de nível MAX232.

Múltiplos circuitos de comunicação de computador de chip único design de software 2.1 AT89C2051 função de comunicação de computador de computador de chip único AT89C2051 microcomputador de chip único tem: buffer de envio/recebimento serial (SBUF), registro de controle de porta serial (SCON), registro de função especial (PCON). Existem 4 modos de trabalho por definição de SCON, entre os quais os modos de trabalho 2 e 3 são adequados para comunicação multi-computador. O modo de comunicação serial 3 do microcomputador at89C2051 é um modo de comunicação assíncrono de dados de 9 bits com uma taxa de baud variável, e também é o modo mais amplamente utilizado na comunicação multicomputador no momento. Aqui, AT89C2051 transmite um quadro de informações com 11 bits no total: 1 bit inicial, 8 bits de dados, 1 bit pode ser programado para ser o nono bit de "1" ou "0" e 1 bit de parada, entre os quais o nono bit de dados pode ser usado como um bit de paridade, e também pode ser usado como uma bandeira de identificação para "quadro de endereço" e "quadro de dados".

Função de comunicação industrial de computador O computador industrial é equipado com uma porta de comunicação assíncroda serial (endereço de porta COM1 é 3f8H, endereço de porta CM2 é 2f8H), e o receptor/transmissor assíncroto universal (UART) na placa de interface é um pedaço de 8250 ou uma peça de estrutura, método de programação Mesmo chip como 8250 com 10 registros dentro. Programação de comunicação serial do PC, os programadores só precisam usar comandos de entrada/saída para inserir/saída dos registros no UART, de modo a definir a taxa de comunicação serial, formato de transmissão de dados, se permitir interrupções, enviar ou receber dados Aguarde.

Um novo método de comunicação multi-máquina No método convencional de comunicação multi-máquina, o bit de paridade tem sido usado como a parte característica do código de endereço de envio (número de canal) ou dados, e a verificação da comunicação de dados adota o método de acumulação e verificação. O uso deste método não só aumenta a sobrecarga do software e a quantidade de dados para comunicação, mas também afeta o desempenho em tempo real. 2.3.1 Princípios Básicos de Comunicação

Os dados são 5 2 - definidos diretamente para "0" e tornam +, claro, então não importa qual seja o valor dos dados de nono bit (+9 8) é, o computador inferior pode gerar interrupção de recepção serial, de modo que o nono bit pode ser usado como bit de paridade de detecção de erro também. Por exemplo, quando o computador superior se comunica com um computador inferior, o código de endereço é enviado primeiro e, em seguida, o comando de dados é enviado após o aperto de mão ser bem sucedido. Neste momento, a bandeira do computador inferior está definida como "1", que equivale ao "bolso" da máquina foi aberta. O computador busca continuamente dados do computador de posição inferior e emite um comando para restaurar o FLAG no computador de posição inferior para "0" depois de buscar sem erro perceber "fechar o bolso".

Quando o computador inferior envia dados para o computador superior, ele primeiro envia o comprimento dos dados para serem transmitidos e, em seguida, começa a enviar dados válidos.

Concorda-se que 00H é o comando fetch, 0FFH é o comando reset, a comunicação adota até paridade, e a taxa de baud está definida para 2400b/s. O fluxograma da função principal do PC é dado acima, como mostrado. O programa de comunicação para PC é escrito em linguagem VC+++6.0. O módulo de comunicação do microcomputador de chip único inferior inclui o programa principal e o programa de serviço de interrupção, e seu fluxograma de programa é mostrado dentro e, respectivamente. Como realizar a comunicação um-para-um entre o computador superior e o computador inferior com o endereço de envio correspondente? O método de software pode ser usado. O método específico é o seguinte: um FLAG variável flag é configurado no programa de computador inferior, e o FLAG é definido como "0" durante a inicialização. Quando o computador superior envia dados, cada computador inferior gerará uma interrupção de recebimento, e a rotina de serviço de interrupção primeiro julga o valor do FLAG local. . Se o FLAG for "0", compare os dados recebidos com o endereço local, se for consistente, defina o FLAG para 6", e envie de volta o código de endereço local como resposta, caso contrário, pule da rotina de serviço de interrupção imediatamente; se o FLAG for "1", indicando que o comando de controle enviado pelo computador superior é transferido para o programa de processamento de comando correspondente, e finalmente sai da rotina de serviço de interrupção e retorna ao programa principal. Após a comunicação entre o computador superior e o computador inferior ser concluída, o SINALIZADOR do computador inferior é definido como "0". Se o aperto de mão falhar, o computador superior envia um comando de reset para o computador inferior e, em seguida, inicia o aperto de mão novamente, se falhar três vezes, ele se transformará em processamento de erro.

Método de implementação e medidas de confiabilidade do software de computador industrial (1)Numerar cada computador inferior e usá-lo como código de endereço do computador.

Conclusão Este artigo descreve apenas um método de interface serial do sistema de controle distribuído, mas existem muitos métodos de interface de comunicação entre cada máquina, tais como: conexão direta da porta serial (quando a distância é curta), conexão através de modem, etc. Em termos de programação de software, a máquina escrava é diretamente escrita na linguagem de montagem do microcomputador de chip único; e o módulo de subrotina de comunicação do computador industrial também pode ser implementado em uma variedade de idiomas. Portanto, no desenho específico do sistema, um dos métodos pode ser selecionado de acordo com a situação real, e a tecnologia de detecção de erros e correção de erros pode ser considerada na programação, e a comunicação confiável pode ser concluída.

Enviar inquérito