Qual a melhor forma de ligar sensores?

Software e Hardware para linha ARM

Moderadores: 51, guest2003, Renie, gpenga

Qual a melhor forma de ligar sensores?

Mensagempor jeff » 07 Jan 2009 12:12

Boa Tarde Pessoal,
Qual a melhor forma de ligar 24 sensores ópticos ao microcontrolador STM32F103RBT6 com 45 pinos de I/O
Esses sensores estao simultaneamente efetuando a contagem de peças e enviando esses dados para um display LCD.

Agradeço pelas opinioes.
Abraços
Jeff
jeff
Byte
 
Mensagens: 389
Registrado em: 20 Out 2006 10:14
Localização: Uberlândia/MG

Mensagempor xultz » 07 Jan 2009 15:29

A que distância estes sensores estarão da placa com o microcontrolador?
98% das vezes estou certo, e não estou nem aí pros outros 3%.
Avatar do usuário
xultz
Dword
 
Mensagens: 3001
Registrado em: 13 Out 2006 18:41
Localização: Curitiba

Re: Qual a melhor forma de ligar sensores?

Mensagempor andre_luis » 07 Jan 2009 17:50

São sensores nalógicos ou digitais ?
alimentados por 5V, 24V, ect...

+++
"Por maior que seja o buraco em que você se encontra, relaxe, porque ainda não há terra em cima."
Avatar do usuário
andre_luis
Dword
 
Mensagens: 5447
Registrado em: 11 Out 2006 18:27
Localização: Brasil - RJ

Mensagempor jeff » 08 Jan 2009 13:58

Serão alimentados com 12V e a saida é uma onda retangular digital.
Esses sensores ficarao aproximadamente uns 03 metros da placa microcontrolada.
:)
jeff
Byte
 
Mensagens: 389
Registrado em: 20 Out 2006 10:14
Localização: Uberlândia/MG

Mensagempor xultz » 08 Jan 2009 14:21

Bom, é dificil dar pitaco assim sem conhecer a situação do aparelho.
Eu acho que 3m, sinal digital do sensor pode ser um pepino, sem contar que 24 sensores x 3m é fio prá cacilda. Eu vou dar uma sugestão, veja se é possível: coloca neste sensor um microcontrolador bem cretino, tipo PIC12F675, que tem USART. Liga neste PIC um 75176 que converte para RS485, e passa um único barramento com 4 fios que percorre todos os sensores, sendo dois para alimentação (12V e GND) e dois para rede 485, e o microcontrolador principal fica em loop lendo a informação dos sensores, um por um. É uma solução elegante. Se essa informação vai para um computador, pode até esquecer o microcontrolador principal e ligar esta rede 485 diretamente ao computador.
Se você puder detalhar melhor a aplicação, fica mais fácil dar uma sugestão mais precisa.
98% das vezes estou certo, e não estou nem aí pros outros 3%.
Avatar do usuário
xultz
Dword
 
Mensagens: 3001
Registrado em: 13 Out 2006 18:41
Localização: Curitiba

Mensagempor andre_luis » 08 Jan 2009 19:20

Pessoal,

Com todo respeito, talvez se esteja fazendo tempestade num copo dágua.
Já vi contador operando à uma distancia de 60m do sensor.

Alguns fatores interferem na integridade do sinal :
- Frequencia da contagem.
- Magnitude do sinal ( 3,3v, 5v, 12v, 24v ).
- Tipo de sinal ( digital/analógico ).
- Cabeamento ( trançado, blindado, tri-coaxial, etc... ).
- Aterramento/Impedancia de entrada do dispositivo.

Pra falar a verdade, foram poucos os casos práticos que vi que apresentaram problemas mesmo em se tomando todas essas precauções.

Se não for informação sigilosa, dá uma dica do tipo de sensor, aplicação, etc..., pois assim poderemos avaliar melhor a criticidade do seu problema.

+++
"Por maior que seja o buraco em que você se encontra, relaxe, porque ainda não há terra em cima."
Avatar do usuário
andre_luis
Dword
 
Mensagens: 5447
Registrado em: 11 Out 2006 18:27
Localização: Brasil - RJ

Mensagempor RobL » 09 Jan 2009 08:05

60m?? Só com loop de corrente de 4 a 20mA e sei lá.
Devido ao número de cabos a proposta do xultz é a qual eu usaria.
Já fiz para essa distância, em torno de 3m (com 3 fios) até recebendo com 74HC595 com resistores de baixo valor nas linhas de sinais, a fim de provocar corrente na faixa de 5mA por linha, mas tecnicamente (padrão) não recomendo, pois não é diferencial como em um RS485 (75176).
Para tal teria que usar 3 chips 74HC595 em cascata, no lado receptor( e somente 3 fios para os sinais entre os sensores e o receptor 74hc595).
O software ficaria simples: coletar 3 bytes com informações de todos os sensores e transmitir via SPI ou UART sincrona para o 74HC595.
Do lado receptor sairia em paralelo direto para 22 portas.
RobL
Dword
 
Mensagens: 1546
Registrado em: 20 Fev 2007 17:56

Mensagempor andre_luis » 09 Jan 2009 13:56

Como disse antes, cada caso é um caso.

Tomando algumas providencias, pode-se até alcançar uma distancia superior a essa sem perda relevante da integridade do sinal, mas aí o nosso amigo Jeff teria de abrir alguma informação para avaliarmos melhor.

Realmente, se ligar 5v direto no sensor, com cabeamento bifilar, não daria pra tanta distancia, porém se puder usar um cabo tri-coaxial
(caro pra cacilda) essa distancia aumenta consideravelmente.

+++
"Por maior que seja o buraco em que você se encontra, relaxe, porque ainda não há terra em cima."
Avatar do usuário
andre_luis
Dword
 
Mensagens: 5447
Registrado em: 11 Out 2006 18:27
Localização: Brasil - RJ

Mensagempor jeff » 09 Jan 2009 16:43

Oi Pessoal,
valeu pelas dicas, achei a ideia do PIC e do RS485 interessante, mas aí pode aumentar meu custo por unidade sensora.
Editado pela última vez por jeff em 29 Mai 2009 16:03, em um total de 1 vez.
jeff
Byte
 
Mensagens: 389
Registrado em: 20 Out 2006 10:14
Localização: Uberlândia/MG

Mensagempor msamsoniuk » 09 Jan 2009 17:27

vc vai apenas detectar se o sensor esta obstruido ou nao, certo ? acho que eh bem mais simples ainda o negocio... uma vez eu fiz um sistema experimental similar, mas que fazia a medicao a distancia por um laser e um espelho. conforme o laser era obstruido, eu recebia um pulso em um foto-diodo, que era conectado apenas a um simples resistor de ajuste e a uma porta TTL, acho que uma 74LS05.

bom, como eh um sistema digital, 24 fios nao seriam muita coisa, mas claro, dah para dar uma melhorada nisso. uma solucao seria multiplexar, por exemplo, se vc tivesse 16 sensores, vc poderia montar um array 4x4 (4 saidas x 4 entradas), reduzindo de 16 para 8 fios. no caso de 24 sensores, poderia montar um array 4x5, assim reduz de 24 para 9 fios e ainda fica com potencial para chegar a 32 sensores.

obviamente vc precisa fazer uma varredura no array, combinando saidas e entradas uma a uma para checar o estado de determinado sensor. mas isso pode ser feito muito rapidamente, de fato, muito mais rapido do que os objetos conseguem passar na frente dos sensores, assim vc pega com precisao quando o sensor esta obstruido ou nao e incrementa a contagem.

chutando que vc consiga fazer pelo menos 100 mil varreduras completas por segundo, para vc perder um grao ele teria que passar seus 5 mm em menos de 1/100000 de segundo, o que deve dar uns 140km/h, se eh q eu nao errei tudo as contas, afinal jah eh sexta-feira depois das 18h! :) hehehe
Avatar do usuário
msamsoniuk
Dword
 
Mensagens: 2935
Registrado em: 13 Out 2006 18:04

Mensagempor xultz » 09 Jan 2009 19:03

Marcelo, tua idéia faz sentido somente se todos os sensores ficarem bem pertinhos uns dos outros, mas se eles ficarem distante, é melhor puxar um cabo para um, principalmente porque fica muito mais fácil de instalar e dar manutenção. Num flat de 3m, ambiente industrial, 100kHz pode ser brabo de conseguir, daí teria que usar cabo manga e ainda assim torcer. O ideal é baixar a impedância da linha, daí a foto sensor pode perder sensibilidade porque consequentemente baixa o ganho. Pode colocar um transístor na saída para dar ganho, etc, daí contorna um pouco o problema, mas dificilmente um sinal quadrado com certa potência atinge esta frequência. a experiência que tive com sensores até hoje, me leva para o caminho de diminuir ao máximo dos máximos o percurso que ele vai percorrer, digitalizar esta informação logicamente, e transmitir ela serialmente dentro de um protocolo seguro e redundante. Por isso, eu ainda sou simpático à minha idéia inicial.
98% das vezes estou certo, e não estou nem aí pros outros 3%.
Avatar do usuário
xultz
Dword
 
Mensagens: 3001
Registrado em: 13 Out 2006 18:41
Localização: Curitiba

Mensagempor andre_luis » 09 Jan 2009 21:58

Pessoal,

Pra voces terem uma noção, deem uma olhada nos cabos-padrão dos principais fabricantes de sensores industriais ( balluff, baumer, ifm, sick, etc... ) e voces verão no catálogo, cabos de 5m a 15m para sensores cuja saída é PNP, NPN, ou push-pull.

Esses cabos, na maioria dos casos, não são blindados. Segundo informação que tive de um fornecedor, eles até poderiam fornecer um cabo customizado de 30m para um determinado sensor, mas não seria certificado, embora ele garantisse que funcionaria para a taxa de amostragem da contagem em questão.

Tudo bem que era para 24v, mas não era cabo blindado. Por isso, acho que o buraco não é tão fundo assim; tem margem para trabalhar com folga sim.

Jeff, sugiro que voce avalie melhor com um osciloscópio, se tiver como fazer isso. Tem certas coisas que só vendo pra crer mesmo.

+++
"Por maior que seja o buraco em que você se encontra, relaxe, porque ainda não há terra em cima."
Avatar do usuário
andre_luis
Dword
 
Mensagens: 5447
Registrado em: 11 Out 2006 18:27
Localização: Brasil - RJ

Mensagempor msamsoniuk » 09 Jan 2009 22:28

acho que no caso de sinais analogicos sim xultz, o melhor eh digitalizar no sensor e transmitir digital. de fato, jah existem diversos sensores com barramentos digitais disponiveis e assim vc ateh dispensa um mcu junto ao sensor. mas como o foto-diodo essencialmente gera um trem de pulsos digitais e o cabo nao eh muito longo, acho que existem solucoes robustas que podem ser mais simples e diretas em relacao a um mcu dedicado por sensor. por exemplo, podia usar um transceiver diferencial. e como o comprimento e numero de cabos nao eh muito grande, acho que seria perfeitamente possivel usar par trancado blindado.

bom, uma outra solucao bem tecnologica seria usar fibra optica hehehe :)
Avatar do usuário
msamsoniuk
Dword
 
Mensagens: 2935
Registrado em: 13 Out 2006 18:04

Mensagempor xultz » 10 Jan 2009 10:50

Marcelo, uma coisa que me preocupou foi a quantidade de cabos, 24 cabos formam um chicote grosso e ruim de manusear durante a manutenção.
Porém, ontem o Jeff conversou comigo via MSN, me passou mais detalhes da aplicação, e ele me contou que na verdade o sensor varia de 3m a 6m de distância da CPU. Porém, o projeto tem algumas incertezas técnicas que sugeri que ele resolvesse primeiro, depois tem alguns questionamentos mercadológicos do produto que sugeri que ele levantasse também, para só depois se preocupar com este tipo de dúvida.
98% das vezes estou certo, e não estou nem aí pros outros 3%.
Avatar do usuário
xultz
Dword
 
Mensagens: 3001
Registrado em: 13 Out 2006 18:41
Localização: Curitiba

Mensagempor Viktor » 10 Jan 2009 15:01

Transmite o sinal em loop de corrente 4/20mA. 4mA=nível 0, 20mA = nível 1 e 0mA circuito aberto/defeituoso
Viktor
Byte
 
Mensagens: 281
Registrado em: 12 Out 2006 11:33

Próximo

Voltar para ARM

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

x