6. Results and analysis part 3: The qualitative in-depth study
6.1. I in argumentative writing
6.2.1. Results
Existem protocolos gerir a transferida de informação entre processadores e circuitos integrados, em canais de uma maneira estruturada e organizada. Estes protocolos dividem- se em dois grupos, o primeiro em comunicação em paralelo e o segundo em série, por sua vez subdividem-se entre comunicação sincronizada e assíncrona.
Sensores são considerados dispositivos periféricos de um sistema de aquisição de dados e os protocolos de comunicação mais populares que se podem encontrar são: Serial
Peripheral Interface (SPI); Inter-integrated Circuit (I²C); Serial comunication, mas existem
outros.
Existem inúmeras diferenças entre os protocolos, ambos com as suas vantagens e desvantagens. Só vão ser abordadas algumas dessas diferenças, para se tenha uma perceção das possibilidades, vantagens e limitações e entre protocolos.
As características observadas em cada protocolo foram de natureza prática, relacionadas com velocidade de transmissão, quantidade de conexões possíveis por cada protocolo,
quantidade de periféricos possíveis ligar-se a num único sistema e distância máxima de transmissão de dados entre os periféricos e sistema de aquisição de dados.
Os protocolos mais usados são o SPI e I²C, são protocolos que utilizam informação sincronizada. Isto quer dizer que o relógio interno da unidade de processamento é que regula o ciclo do sistema, e ritmo da comunicação, evitando que comunicação seja feita fora de tempo, e que assim não se perca.
Durante o processo de transmissão de dados é necessário definir que dispositivo transmite e que dispositivo recebe um determinado pacote de dados dentro de uma frequência de tempo definido pelo relógio da unidade processamento.
Caso isso não aconteça a comunicação pode ser transmitida pelo periférico, e não ser rececionada corretamente pelo processador, existindo assim perda de informação. Os protocolos SPI e I²C têm mecanismos que previnem essas falhas.
Em termos de velocidade de transmissão com o protocolo I²Cé possível verificar em determinados periféricos e em determinadas condições uma velocidade de transmissão de superior a 3,4Mbps. Com o protocolo SPI pode ter uma velocidade de transmissão de vários MBps/s, dependendo em grande medida da velocidade do relógio da unidade de processamento, por exemplo se o relógio da unidade de processamento for 16MHz a velocidade de transmissão pode atingir os 2Mbps.
No caso do protocolo de comunicação Serial, este distingue-se dos anteriores por ser assíncrono. Este é mais complexo em termos de programação, oferece possibilidades diferentes dos protocolos anteriores, no entanto, a velocidade transmissão está condicionada a frequência do relógio da unidade processamento. Este protocolo é capaz de enviar grandes quantidades de informação por segundo, mas o sistema que recebe a informação tem que estar também preparado para receber à mesma velocidade a que esta esta a ser enviada. Assim a frequência do relógio da unidade de processamento limita a velocidade de transmissão de dados.
A distância entre periféricos e unidade de aquisição de dados é condiciona ao tipo de comunicação sincronizada ou assíncrona. A comunicação sincronizada limita a distância a poucos metros, enquanto o segundo tipo de comunicação usada, pode em determinadas circunstâncias obter comunicação a dezenas de metros com conexões físicas.
Um dos motivos da grande diferença é que as ligações sincronizadas foram desenvolvidas para grande velocidade, a curta distância, com poucas ligações e protocolos simplificados. Outro motivo que limita a distância é a resistência do fio elétrico a passagem de corrente elétrica, quanto maior for a distância, maior é o tempo necessário a transmissão de dados.
Ainda de referir a situação da quantidade de conexões usadas em cada protocolo e a sua possibilidade de uni ou bidirecionalidade da comunicação nas conexões. Na figura 3.5 ilustram-se três diagramas que ilustram as conexões necessárias para cada um dos três principais protocolos.
No caso dos protocolos SPI e I²C que a comunicação é sincronizada, existindo um dispositivo que controla todo o processo e transmite o sinal do relógio, que se designa por
Master ou mestre. Este controlar os vários periféricos que se designam por Slave ou
escravos. Para simplificar o conceito só se apresenta um mestre e um escravo.
Os vários acrónimos inscritos nas figuras, são os que se encontram inscritos nos periféricos e a traduzem-se da seguinte forma:
• Rx – Receive ou receber, este canal destina-se a receber informação;
• Tx – Transmite ou transmitir;
• SCL e SCK – Clock ou relógio, este canal destina-se ao sinal de relógio;
• SDA – Data Signal sinal de dados, este canal serve para transmitir e receber informação alternadamente, sendo assim bidirecional;
• MISO – Master In Slave Out, este canal destina-se a transmissão de informação do dispositivo mestre para o dipositivo escravo;
• MOSI – Master Out Slave In, este canal destina-se a receção de informação do dispositivo escravo para o dipositivo mestre;
• SS – Slave Select, seleção do escravo, este canal é utilizado pelo dispositivo mestre para definir com que dispositivo escravo pretende comunicar.
O protocolo Serial permite a receção de informação de vários dispositivos periféricos à vez. Caso a programação de envio de informação para o processador não estiver coordenada é possível que vários dispositivos enviem informação em simultâneo, inviabilizando toda a informação. Esta situação deve à falta de uma conexão para gerir o envio da informação, ao contrário dos protocolos SPI e I²C, tornando-a mais complicada de programar entre os vários sistemas.
Os protocolos SPI e I²C permitem várias conexões a vários dispositivos periféricos. O protocolo I²C permite mais de 1000 dispositivos ligarem-se a um dispositivo mestre, mas por só ter uma conexão de comunicação bidirecional, necessita que cada periférico tenha uma morada atribuída, distinta dos restantes periféricos do sistema. Caso isso não aconteça, quando se solicita informação para uma morada específica, vários periféricos com a mesma morada enviam informação em simultâneo ocorrendo multiplicação de envio de informação e inutilizado a informação enviada.
Com o protocolo SPI também é possível a ligação de vários dispositivos ao mesmo dispositivo mestre, no entanto este controla os dispositivos escravos através de uma conexão designada por SS, o dispositivo mestre necessita de uma para cada um desses dispositivos, assim limitando o número de dispositivos ligados a ele.
Serial I2C SPI Protocolo de comunicação Gnd Tx Device 1 Rx Gnd Tx Device 2 Rx SCL SDA Master SCL SDA Slave Master SCK MOSI MISO SS Slave SCK MOSI MISO SS
Todos os protocolos anteriormente referidos são válidos neste projeto, tendo apenas que ter atenção as especificidades de cada um deles. Há que ter atenção à escolha do dispositivo mestre, neste caso um microcontrolador, este tem que executar os mesmos protocolos de comunicação que os periféricos que se interligam a ele.