Quanto tempo entre o pino digital do Arduino e o IC?


9

Meu projeto atual envolve o uso de registradores de deslocamento 74HC595 para controlar uma tela de LED, no entanto, a tela pode estar a até 5 metros ou mais da placa Arduino. O plano é usar alguns cabos DB9 / RS232 entre uma caixa com o Arduino e um gabinete com a tela. O comprimento seria muito longo para o sinal digital se deslocar dos pinos de saída digital para o registro de deslocamento sem degradação?


Qual é a taxa de bits / velocidade da transmissão? Você já tentou e olhou para as ondas em um osciloscópio?
Endolith

Obrigado a todos por suas respostas, especialmente Mark e justjeff. Eu não tenho um osciloscópio real para fazer algumas medições, então comprarei algum fio amanhã e verei o que acontece.

Respostas:


7

O 74HC595 é uma tecnologia CMOS, portanto, não deve ser necessário quase nada em termos de corrente para acioná-lo, portanto a queda do IR não seria uma preocupação.

Enquanto você mantiver a frequência dos sinais abaixo, digamos 100kHz, não precisará se preocupar com os efeitos da linha de transmissão. Supondo que o observador pretendido para os LEDs seja o olho humano, você não precisa se preocupar com as altas velocidades. Por exemplo, 8 dígitos em 7 segmentos e um ponto decimal cada um são 64 elementos de LED e a meros 9600 bps, você pode atualizar a exibição em pouco menos de 7 ms.

A única coisa com que me preocuparia é se o nível de alta saída digital do Arduino será registrado como uma entrada alta no seu registro de turno. Enquanto o registro de turno estiver funcionando com uma fonte de 5V (e não algo estranho como 6), você também deve ficar bem. (e se isso fosse um problema, ele se manifestaria sobre meros 10 cm de fio, facilitando a verificação)

Resposta curta: probabilidade muito alta, você pode ir do arduino ao cabo até 74HC595s sem problemas.


5

Meu sentimento é que você deve ficar bem nesse comprimento. Sua melhor aposta pode ser tentar e ver se funciona.

Se não funcionar, há algumas coisas que você pode fazer para ajudar: - use cabos de pares trançados ou blindados ou torça os cabos juntos. - Coloque uma tampa pequena (0,01 uF ou aproximadamente) no final. Isso deve ajudar a cancelar parte do ruído (o uso de um capacitor muito grande não funcionará; portanto, maior não é melhor neste caso). - Use resistores com valores ligeiramente mais baixos do que você normalmente usaria para suas pulldowns. - Use cabo de baixa impedância.

Como ponto de dados, um Arduino pode executar 9600 serial por cabo não blindado por 50 pés (talvez mais?).


5

Você deve defini-lo de qualquer maneira para garantir o desempenho correto, mas aqui está o processo / matemática de pensamento que você precisa levar em consideração para determinar os efeitos da linha de transmissão.

  • Tempo de subida e descida da borda, em oposição ao que alguns postaram aqui, a frequência do sinal não importa em nada ao determinar quando você precisa levar em consideração os efeitos da linha de transmissão. É geralmente verdade que os sinais de alta frequência têm tempos de subida / queda mais rápidos, mas os sinais de baixa frequência também podem ter tempos de subida e queda muito rápidos se estiverem sendo conduzidos em baixa frequência por um transceptor com uma alta taxa de giro. Como sempre use os tempos de subida / queda mais lentos possíveis para ficar dentro das especificações das peças que você está usando, você pode reduzir os tempos de subida e queda com um filtro RC na fonte. Em geral, é necessário considerar os efeitos da linha de transmissão se o comprimento do fio for maior que Tr / (2 * Td) com Tr = no tempo de subida do sinal na fonte e Td = no atraso de propagação por unidade de comprimento do cabo. estão usando. Você também pode precisar finalizar corretamente as linhas de sinal em cabos mais curtos, se a carga for altamente capacitiva, isso é difícil de calcular antecipadamente, pois existem muitos itens com efeitos capacitivos em um sistema assim. Se você tiver esse problema, notará um toque (filmagem inferior e superior nas bordas) no sinal.

  • Corrente no cabo, isso será definido na folha de especificações do IC receptor como a corrente de entrada. Isso combinado com a resistência do cabo indicará se a queda de tensão é aceitável, dadas as especificações do IC receptor. Este é apenas um valor atual médio. A corrente de pico real pode depender do tipo de terminação usada e precisa ser considerada ao decidir se o IC de condução pode lidar com a carga ou se você precisa de um driver de linha. A corrente de pico deve durar apenas enquanto o atraso de propagação de ida e volta do circuito.

Se você precisar levar em consideração os efeitos da linha de transmissão, também precisará saber a impedância característica do cabo e a impedância de saída do IC de acionamento.

Se você precisar lidar com os efeitos da linha de transmissão, existem algumas opções para o estilo de terminação. Os únicos dois que eu consideraria são a terminação da fonte e a terminação final com tendência AC.

Na terminação da fonte, você precisa colocar um resistor o mais próximo possível do IC de acionamento, com valor igual à impedância característica do cabo menos a impedância de saída do IC de acionamento, talvez seja necessário ajustar isso um pouco para atingir as especificações a impedância dos conectores do cabo também afetará o sistema e, como sempre, os CIs de condução e recebimento o mais próximo possível dos conectores para reduzir os reflexos. Este é provavelmente o método mais fácil e provavelmente o melhor método neste caso. A corrente de pico será (Vhigh - Vlow) / (2 * Z0) com Z0 = à impedância característica do cabo.

Na terminação com polarização CA, você conecta à linha de sinal o mais próximo possível do IC receptor, um resistor em série com um capacitor com o capacitor ligado ao terra. O valor do resistor deve ser a impedância característica do cabo, o valor do capacitor é determinado pela frequência do sinal (os R e C formam um filtro passa-baixo). A corrente de pico do inversor é a mesma da terminação da fonte. A corrente média do inversor depende do ciclo de trabalho do sinal; se estiver muito próximo de 50%, será aproximadamente igual à corrente de entrada do IC receptor; se estiver acima de 50%, a corrente média do inversor será maior. . Como os R e C formam um filtro passa-baixo, esse estilo de terminação filtrará algum ruído de alta frequência.

Lembre-se de outras coisas:

  • O uso de pares trançados para sinais de extremidade única não reduz a captação de ruído. Isso resulta em uma impedância característica mais consistente para a linha de transmissão. Isso pode fazer com que a saída pareça melhor se você realmente deveria ter finalizado o sinal corretamente, mas não o fez. Não faz nada para reduzir o ruído externo de EM na linha.

  • O uso de cabo blindado em um sistema de extremidade única é duvidoso. Muitas vezes, você pode criar uma situação em que o ruído externo se acopla capacitivamente à blindagem, resultando em um fluxo de corrente na blindagem que então acopla ao fio de sinal. Eu não me incomodaria em usar um cabo blindado, a menos que você esteja usando sinalização diferencial. Além disso, a utilidade de uma blindagem em ruídos de alta frequência depende da indutância ao terra, os caminhos de baixa indutância geralmente requerem conectores especiais.

Você pode usar praticamente o mesmo processamento de pensamento em qualquer linha, seja um cabo ou um traço PCB de 2 polegadas.


Tenho alguns comentários, mas apenas um que tenho tempo para digitar agora. Quando digo frequência do sinal, estou me referindo aos componentes de frequência do meu sinal. Isso é determinado completamente pelo tempo de subida / descida de um sinal digital.
Kortuk 17/05/19

Eu assumo um sinal digital para todo o meu post e quando digo a "frequência" de um sinal digital, estou me referindo à frequência de comutação máxima do sinal. embora seja comum discutir o conteúdo de sinais analógicos no domínio da frequência, geralmente não é tão útil discutir sinais digitais nesse domínio.
Mark

4

Você provavelmente precisará de buffers para controlar esse comprimento de cabo - algo como o driver de buffer / linha 74HC244 deve ser adequado.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.