Estou fazendo um projeto em que requer controle de 10.000 E / S.
Saída 5000 - Para 5000 LED, onde apenas 1 LED acenderá por vez
Entrada 5000 - Para o sensor 5000, onde ele sente a presença de um objeto.
Basicamente, estou fazendo um sistema de armazenamento (algo semelhante ao buraco dos pombos) pelo qual uma pequena caixa será colocada nesse buraco dos pombos. Atualmente, tenho cerca de 5000 caixas colocadas em 20 racks. Cada rack possui 250 furos (10 colunas x 25 linhas).
Cada um desses orifícios terá um LED e um sensor. portanto, preciso de 5000 LED e 5000 sensores.
todos os sensores e LEDs serão conectados a um sistema. Quando precisar colocar a caixa no buraco do pombo, digitalizarei o código de barras da caixa e o registrarei no sistema. O sistema procurará um slot vazio em qualquer rack e acenderá o LED. Vou colocar a caixa no buraco do pombo e o LED apaga.
Se eu precisar recuperar qualquer caixa, digite o número da caixa e o LED do local exato acenderá.
Não tenho muita certeza de como começar. Gostaria de saber que tipo de hardware possui essa quantidade de portas de E / S.
fonte
Respostas:
A melhor abordagem é colocar seus LEDs em uma matriz de 64x80 . Como apenas 1 LED precisa acender a qualquer momento, você pode usar desmultiplexadores para linhas e colunas. Para as linhas que você deseja 1 linha baixa, para as colunas 1 linha alta.6 <80 <27 ) Você precisará de alguma lógica adicional para derivar as entradas de controle para cada 74HC138 desse endereço. Para as colunas, você precisará de oito 74HC238 s, que é semelhante ao 74HC138, mas com sua saída ativa alta. Aqui você precisa apenas de 6 linhas de endereço (64 = 26 ) Portanto, você terá um total de 13 linhas de endereço.
Uma solução é usar dez 74HC138 s para as linhas, controladas por 7 linhas de endereço (2
Outra abordagem é usar um CPLD . 13 linhas de endereço, 64 colunas + 80 linhas. São 157 E / Ss. A Altera possui alguns dispositivos MAX3000 que atendem às exigências .
Se você não tiver uma apresentação compacta para os LEDs como um painel sinóptico, convém conduzi-los com uma corrente mais alta para obter melhor visibilidade. Nesse caso, você precisará de transistores extras nas saídas.
fonte
Whooo, garoto ... Este não será um projeto barato!
Concordo com Ranieri no conceito geral de dividir o projeto em "blocos" repetidos.
Dado que você tem 20 racks de 10 colunas x 25 linhas; Eu suspeito que o que você deseja é um controlador mestre para cada rack (que também lidaria com a distribuição de energia) emparelhado com uma "unidade de prateleira" para cada linha, responsável por acionar os LEDs das 10 colunas e detectar a caixa. O controlador mestre também pode acionar uma luz mestre na parte superior do rack, para que o rack de destino possa ser facilmente detectado.
Considerando as distâncias envolvidas, não acho que você deva usar o USB como sua interconexão com os racks - o USB não gosta de percorrer longas distâncias. Em vez disso, uma interface isolada como Ethernet ou ala MIDI opto-isolada é provavelmente a melhor aposta. A interface dentro do rack, no entanto, pode ser feita com praticamente qualquer abordagem.
fonte
Dispositivos XMOS são frequentemente usados para controlar matrizes muito grandes de LEDs. Os LEDs são agrupados em "blocos", com cada bloco controlado por um chip XMOS e registros de deslocamento adequados. Os dispositivos XMOS podem ser conectados via XLinks ou Ethernet de alta velocidade e podem se comunicar com um sistema host via Ethernet ou USB. Os dispositivos XMOS podem implementar USB e Ethernet de alta velocidade em software, exigindo apenas chips PHY adequados.
As 5.000 entradas podem ser conectadas de maneira semelhante.
fonte
É realmente difícil fazer recomendações claras, sem uma idéia mais precisa do que todo o sistema deve estar fazendo ou de como os leds e os sensores devem ser organizados, mas vou tentar.
Você não encontrará um único componente com 10000 portas de E / S digitais, e mesmo se você fizesse o circuito de driver / buffer / polarização dos leds e sensores ocuparia uma quantidade enorme de imóveis na placa. Sua melhor aposta é dividir e conquistar - crie um número de "peças" que lidam com uma subtarefa específica e as conecte.
Por exemplo, se os leds e os sensores precisarem ser co-localizados, cada bloco pode ter, por exemplo, 100 leds e 100 sensores, (des) -multiplexadores e um microcontrolador simples. Em seguida, você montaria 50 dessas peças, elevando o total até 5000 leds e 5000 sensores. Em seguida, você conecta cada um desses blocos a uma "placa mãe" que pode endereçar as placas individuais, conversar com o microprocessador nelas e escrever / ler os leds e os valores do sensor.
Uma das principais decisões de projeto será a "potência" do sistema mãe, bem como o circuito de interconexão. Por exemplo, se você estiver disposto a controlar a coisa de um laptop (ou similar), poderá usar o USB como interconexão. Em seguida, você pode executar uma pilha USB de software, como VUSB, nos blocos para manter o custo baixo. Outras opções podem ser CAN, I2C e até Ethernet. Mais uma vez, as especificidades do seu sistema determinam o que usar.
Para usos específicos, existem atalhos significativos disponíveis. Por exemplo, se os leds forem usados como exibição, você provavelmente poderá controlá-los a partir de um único microcontrolador usando uma configuração de matriz e um buffer de quadro simples.
fonte
Existem alternativas
e / ou
Enquanto isso, acho que você pode jogar com o Rainbowduino e a matriz de LED 8 * 8 RGB, que controla 192 LEDs (3 * 8 * 8).
fonte
Como você precisa transferir o código de barras para a estação central de computação, é necessário configurar um barramento. Dependendo do tamanho das caixas, a distância desempenha um papel importante na seleção do ônibus.
O cabeamento analógico com multiplexação por LED não é uma boa idéia em configurações de grandes áreas onde os LEDs não estão próximos (esforço de cabeamento, resistência de cabeamento diferente, etc.).
Vamos supor que você queira mantê-lo barato. Talvez tente o I2C e torne-o hierárquico. Haveria nós do roteador que conversariam com o computador mestre e roteariam mensagens de e para os nós folha, dos quais haveria um por caixa.
Um nó folha pode ler o código de barras, acender um led e executar vários outros recursos, se necessário, lendo ou enviando mensagens para o nó do roteador.
Essa configuração provavelmente está na mesma liga financeira que um cabeamento central para LEDs de 5k e sensores de 5k, mesmo que modularizados. O AVR ATtiny4 mais barato, com 4 GPIOs, custa 0,6 EUR em números.
fonte