Página 1 de 1

Comunicação PIC x PIC mais de 200 metros

MensagemEnviado: 09 Mar 2010 09:31
por Alesandro F Zagui
Estou desenvolvendo um projeto de automação para um motel. A portaria tem que ter o controle das portas (cliente e serviço), chave geral de energia e mais umas coisas de cada quarto individualmente.

Hoje eles tem um sistema bem antigo, usam 3 cabos com 50 fios cada. Minha idéia era usar I2C para eliminar esse chumaço de cabo.

O ultimo quarto fica a mais de 200 metros da portaria e são aproximadamente 80 quartos.

Gostaria de saber se nessa distancia da para usar I2C, se esse protocolo seria o mais recomendado, e as técnicas de hw para garantir essa comunicação.

Estamos na fase de projetos, então qualquer idéia é bem vinda.

Obrigado

MensagemEnviado: 09 Mar 2010 10:05
por tcpipchip

MensagemEnviado: 09 Mar 2010 10:11
por fabim
ai minha cabeça...

MensagemEnviado: 09 Mar 2010 10:42
por Sergio38br
Alesandro deixaria de lado o I2C e escolheria a RS422(full) ou RS485(half) pelo uso externo dos dispositivos.

[ ]'s
Sergio

MensagemEnviado: 09 Mar 2010 10:43
por xultz
Alessandro, I2C não é a melhor opção para teu caso, o I2C foi pensando em comunicação de chips numa mesma placa. O teu caso claramente sugere usar RS485, que é muito simples de implementar (ele é um padrão elétrico para porta serial USART do microcontrolador), um drive muito fácil de achar no comércio é o 75176, e você pode pendurar muitos devices num único par de fios.
Se rolar um patrocínio, que permita usar a suíte luxo algumas vezes na faixa, eu ajudo mais no teu projeto :P

MensagemEnviado: 09 Mar 2010 13:26
por Alesandro F Zagui
Valeu pessoal, vou estudar RS485 e tentar usar pela USART do Pic.

Xults, pelo jeito num vai rola uma permuta nem pra mim. :cry:, mas vou tentar. hehehe

abraco

MensagemEnviado: 09 Mar 2010 14:46
por polesapart
Motel é um mercado sacana: Se um camarada resolve montar um motel só precisa do terreno, se ele oferece vale pernoite com café da manhã na faixa com validade de 1 ano q seja, ele acha o povo pra construir tudo, pintar, colocar a fachada, informatizar... será q não estamos no ramo errado? :P

Mas assim, voltando ao que é sério, RS-485 a dois fios é uma ótima. Eletricamente é facin de operar, a 200 metros vc pode usar fio de telefone :P E como o Xultz falou, vc pendura vários dispositivos no mesmo par.

Conforme o transceiver escolhido, o limite vai de 16 a 32 ou mais dispositivos por par. Coisa fina.

MensagemEnviado: 11 Mar 2010 09:20
por BolhaDigital
Oi alexandro,


Uma boa dica é vc utilizar cabeamento blindado com uma malha e dois vivos, sendo um para tx e outro para rx...

Utilize Max 485 da maxim é um buffer para longas distancias, no manual é garantido um alcance de mil metros...

Essa norma 485 é utilizada em equipamentos de iluminação (o ambiente é hiper ruidoso)...já trabalhei muito com esses c.i.s e numca tive problemas de interferencia.

Outra ótima dica é vc utilizar o protocolo MDX512 para fazer a comunicação, tanto rx quanto tx...

Esse protocolo funciona muito bem e é muito rápido, simples e eficiente:

O transmissor envia pacotes de dados somente quando vc desejar fazer uma comunicação com os periféricos que estarão pendurados na linha (detalhe vc utiliza somente uma linha de comunicação "imaginando ser apenas uma central de envio de comandos e nos quartos os receptores"), vc pode pendurar até 512 periféricos na mesma linha, cada periférico terá um endereço (eu prefiro fazer esse endereçamento através de dipswitch, assim vc pode selecionar com mais comodidade, porém nada impede desse endereço ficar gravado nos receptores, ok)....basicamente os receptores só ficam escutando o transmissor principal e pegam somente as informações pertinentes ao canal que estão sintonizados, imagine um vagão de trem, onde a locomotiva é o transmissor e os vagões são os pacotes de informações, onde cada vagão corresponde a um endereço de receptor, e dentro deste vagão esta o dado que vc quer que determinado receptor receba, o trem vai passando e cada receptor fica atento afim de pegar o conteudo do vagão que é dele, a velocidade dessa transmissão é de 250kbps...

Uma opnião de quem já trabalhou muito com isso, pode ir sem medo de errar...se vc programa em assembler para pic, eu posso te arrumar as rotinas de comunicação para esse protocolo..ok....

Até mais,

O galera, eu sou o vonnilmam, meu nick não acessa mais essa bagaça....

MensagemEnviado: 16 Mar 2010 08:17
por Alesandro F Zagui
Porque essa limitação de até 32 dispositivos na RS485? É uma limitação de hw ou de sw de alguns dispositivos? Pois preciso de 72 quartos.

polesapart, depois do motel montado, não tem calote, ou paga ou num sai de dentro. O dono do motel só aluga o quarto, e o cliente é quem trabalha. hehehehe

vonnilmam, eu ja havia lido algo sobre DMX512, como seria o esquema do hw dele?

MensagemEnviado: 16 Mar 2010 09:09
por xultz
Alessandro, a limitação de dispositivos é de hw, mas varia enormemente conforme o fornecedor do chip tranceiver, da velocidade e da distância. Dá uma procurada num livro ótimo chamado Serial Port Complete da Jan Axelson (acho que é assim o nome da mulher), tem milhares de pdf desse livro, tem um capítulo muito bom sobre 485 e 422. E existem transceiver para mais dispositivos. Na pior das hipóteses, você pode implementar repetidores.

MensagemEnviado: 17 Mar 2010 06:11
por jeanfernandes
Cara

Voce faz um chuck de seriais 485, com multiplas portas ....
Bem tranquilao, claro vinculado a um unico porem:
O protocolo tem que ser endereçado a dispositivos, ou seja apenas um vai responder por vez....

Magina ce tem 120 devices pendurados. Ce precisa ai vai de um set de 4 conversores 485, na origem. Com 4 sets, da pra pendurar tudo num unico cabo CAT-5 (um par para cada enlace). ou usar varios cabos.....

Buenas...

Pra transmissao eh mole: Do pino do Mcu (Txd), voce dispara para todos os conversores, e ativa o controle de direcao (se quiser ainda faz um controle de direcao individual por canal). Bufferiza o sinal de Tx se quiser:
Todo mundo vai ouvir....
Considerando que so um vai responder ...voce faz o seguinte:

Pega todos os os pinos RX do receptor, e faz uma AND antes de entrar no RXD do mcu.....

Prontinho ...sem muita frescura.... eheheheheheh

Se quiser ser mais específico, pega um demultiplex 1:8 para os sinais de tx e direcao, e um multiplex 8:1 pra volta : pronto... com 4 gpios adicionais a bagaça já era....

Dá uma olhada nos chips 74HCT238 (Transmissao), 74HCT4051 (Recepcao), que voce vai ter a ideia decente.... funciona que eh uma beleza.

No caso do 238.... voce pode usar um pino adicional pra bloquear a transmissao.... pena que voce vai perder a transmissao em broad. Mas por software da pra fazer um pseudo broad.... meno male....

Bom eh por ae...

Nao esquece de por a bagaça das protecoes nas saidas do MAX485, senao eh fuba.....
PTC/Tranzorb

(Fabim posta ae um esquema que eu to com preguiça...)....



ATENÇÃO : USE POR CONTA E RISCO. E NÃO VEM ME CULPAR SE DER CERTO !!!! SE DER ERRADO CULPA DO PROEX/FABIM. E DO SAMSONIUK QUE AMA PIC.

ATENÇÃO: NÃO FUNCIONA SE FIZER O PROGRAMA NO CCS!!! KKKKKK

CLICA AQUI PRA VER O PROEX NU MOSTRANDO O ESQUEMA

MensagemEnviado: 17 Mar 2010 09:54
por jeanfernandes
Sim

Pelo amor de Sao Proex. Nada de usar cabo CCI de telefone pra 485. Vamo com calma na reza ae. CCI é um cabo // (Paralelo). Pode até funcionar, mas corre um risco altissimo de dar paulis.... Tem que ser par trançado.

Eu sugiro um cabo tipo AFD da KMP (ou Fisabyte da Furukawa) no minimo 22 AWG, com blindagem individual. É caro mas é o cabo que 200 em cada 100 eng. especificam pra este tipo de aplicação. Tem de 1 a 4 pares.

Se a taxa for baixa, e tiver um cuidado bom, da pra usar um Cabo CAT-5, no problem. Mas ae é se o orcamento tiver apertado.