Ir ao conteúdo

Automação residencia e comercial por voz utilizando a porta paralela


Ranan

Posts recomendados

Postado

Eu, junto com mais 2 pessoas, estou desenvolvendo um projeto no qual se aplica um comando em um microfone instalado em um pc, e através de uma porta paralela conectada no pc e em um hardware desenvolvido por nós, conseguimos controlar dispositivos como lampadas, ventiladores etc.

O nosso projeto em base consiste na area da programação para desenvolver os motores de reconhecimento de voz para interpretar a fala humana e transforma-la em dados para passar para a porta paralela, e na area eletronica para desenvolver o hardware que vai interpretar os dados vindos da porta paralela e ligar ou desligar os dispositivos.

Estamos com um duvida na area da eletronica para desenvolver o hardware, pois para desenvolve-lo temos que utilizar um circuito digital. Inicialmente iriamos utilizar uma sequencia de flip flop, porém conversei com 2 professores, e um sugeriu a utilização de um microcontrolador, e outro a utilização de um decodificador.

No caso do decodificador, o maximo de dispositivos que poderiamos controlar seriam 256 (em uma primeira apresetação, seria mais que o suficiente, ja que temos o intuito de utilizar apenas 15 dispositivos entre lampadas, ventilador, tv e som), porém, em um pensamento futuro, se utilizassemos esse sistema em um conjunto de apartamentos, apenas 256 dispositivos seriam pouco.

Fazendo o hardware com flip flops, só precisariamos adicionar mais flip flops para controlar mais dispositivos, mas por outro lado, o tamanho e o custo do hardware também aumentaria com isso.

Nos 3 casos, tanto do hardware sendo montado com um microcontrolador, quanto com o decodificador, quanto com os flip flops, creio que o circuito ficaria relativamente complicado para montar, por isso venho aqui pedir ajuda a vocês no desenvolvimento do hardware, tanto na parte do desenvolvimento do circuito digital, quando do custo, beneficio, duvidas, etc.

Apesar de utilizar a porta paralela, essa porta ira fucionar como uma porta serial, pois em cada pino sera setado atraves da programação o dispositivo que ele irá controlar, e a cada pulso de clock ele irá mandar um bit para a saída, e o conjunto de bits correspondentes de cada dispositivo irá ativar ou desativar o dispositivo.

DESDE JÁ AGRACEÇO A ATENÇÃO.

  • Membro VIP
Postado

Pela serial, usando microcontrolador, com apenas 2 bytes você poderia controlar até 65536 dispositivos. Estes bytes seriam o endereço de 16 bits dos 'receptores' que controlam os equipamentos. Mas isto não precisaria ficar limitado a 2 bytes, poderia ter um terceiro ou quarto.

Já ouviu falar em DMX-512 ?

Dá pra controlar até 512 equipamentos e 256 comandos para cada um.

você poderia usar este protocolo para controlar os equipamentos. Pode até mudar o protocolo para sua necessidade.

Entre no meu site e entenda melhor. É apenas uma sugestão...

Outra seria pe

Postado

A eletrônica nesse caso, nem é muito problema, o problema maior é fazer o software identificar voz, e traduzir isso daí pro digital!

Com um MCU é simples. Pela serial você envia o comando e o dispositivo a ser controlado.

No discreto o circuito vai ficar bem maior! A paralela é usada, na maioria das vezes, pra fazer comunicação.... SERIAL!!! ehehehehehehe

[]'s

  • Membro VIP
Postado
Eu, junto com mais 2 pessoas, estou desenvolvendo um projeto no qual se aplica um comando em um microfone instalado em um pc, e através de uma porta paralela conectada no pc e em um hardware desenvolvido por nós, conseguimos controlar dispositivos como lampadas, ventiladores etc.

Afinal, o que já está pronto e o que falta fazer???

tenho que concordar com o maurício quando diz que a parte mais difícíl é o reconhecimento de voz, mas se não fazem perguntas a este respeito, acredito que já tenham pronto!

Só não entendo como conseguiram fazer a parte mais complicada e não conseguem a parte mais simples, que é decodificar comandos enviados de PC, seja pela paralela ou pela serial...

Postado

isso me parece projeto de final de curso técnico... essa rapaziada vai penar.

Por favor, refaça a pergunta mostrando os pontos que vocês ja conseguiram atingir e quais ainda faltam.

Postado

Bom, primeiro eu gostaria de pedir desculpas pela demora para postar aqui novamente, pois eu trabalho o dia inteiro e ainda faço faculdade a noite, então fica meio demorado.

Eu faço faculdade de engenharia de telecomunicações, estou no 4º ano mas ainda faço matéria do 3º e do 2º anos. (Alem de ser difícil, eu ainda não estudo.) Na faculdade eu estudei uma materia que chama Sistemas digitais, que justamente explica circuitos digitais e agora estou estudando uma materia que chama Sistemas Microprocessados. Esse projeto que estou desenvolvendo junto com as outras 2 pessoas é projeto para a faculdade.

Na parte do reconhecimento de voz, estamos usando 2 motores para o reconhecimento: um é da Microsoft, que chama Microsoft Speech que reconhece apenas palavras em inglês, e o outro motor, nós mesmos estamos desenvolvendo e irá reconhecer palavras em portugues. O Fucionamento deles é da seguinte forma: o Microsoft speech ficara o tempo todo ativado, reconhecendo e escutando todo o tipo de som, porém ele só sera ativado, quando escutor um comando (em inglês) que nós iremos setar na programação. Quando ele escutar esse comando, ele irá ativar o segundo motor que vai reconhecer o comando em portugues e manda-lo para a porta paralela.

Ex: "Mr John, acender luz da sala1."

Nesse comando, quando o speech, que esta monitorando todos os sons do ambiente, escutar a palavra "Mr John", ele irá ativar o segundo motor. "Acender luz da sala1" é o comando que o segundo motor (que nós estamos fazendo) irá interpretar e mandar para o pino correspondente Da "luz da sala1" na porta paralela. Qualquer outra palavra que que o Speech escute, que não seja "Mr John", ele ira ignorar, fazendo com que o segundo motor não ative, e fazendo com diminua a quantidade de erro. Por isso, no exemplo acima, todo o comando devera começar com a palavra "Mr John"

Essa parte dos motores de reconhecimento, nós ja estamos desenvolvendo. O problema é o seguinte: para reconhecer a voz, os 2 motores utilizam 3 tipos de calculo: um chama transformada de fourrier, o outro chama transformada de wavlet, e o outro pontecia espectral. Esses 3 tipos de calculo é o que faz os motores reconhecerem aquele comando especifico que foi setado neles, no caso "Mr John" no Speech, e "acender luz da sala1", no nosso motor. porém, são 3 calculos bastante pesados, exigindo bastante do computador. Nesse caso, ate o 2 motores entenderem o comando especifico, mandarem para o pino correspondente da porta paralela, e esse pino mandar o comando para a saida especifica onde esta o aparelho, pode demorar bastante, causando um tipo de delay.

Essa programção ja esta sendo feita. O motor que estamos desenvolvendo já começou a ser feito

A parte do circuito digital do hardware ainda não começou a ser feita. Eu não sei se o melhor seria usar flip flops, microcontrolador ou decodificador, e alem disso, eu ainda não sei fazer o circuito sozinho, usando um deles.

Para piorar a situação, a porta paralela tem 25 pinos. Os pinos de dados são 8, porém a quantidade de aparelhos que iremos utilizar, serão uns 15. Nesse caso, cada pino da porta paralela terá de comportar pelo menos 2 aparelhos, entre eles luzes, ventiladores, som, tv etc. No caso, para ligar cada aparelho, teriamos que usar uma sequencia de 3 bits para cada.

Ex: aparelho 1 -> 001

aparelho 2 -> 010

aparelho 3 -> 011

Não sei o que vocês acham, mas eu creio que não é um prjeto simples. Por isso estou precisando de ajuda. E isso é a parte básica do nosso sistema. Apenas para controlar os aparelhos, pois ainda iremos criar uma inteface de interação entre o usuário e maquina.

Ex: Usuário: "Mr John, acender luz sala1"

Máquina: "Entendido, luz da sala 1 acesa".

Por tanto, alem de conversarmos com a maquina, ela também iria conversar com a gente.

Também iriamos criar um sistema de usuários, e cada um com niveis diferentes e restrições.

Ex: Usuário nivel 1: Programadores do sistema

Usuário nivel 2: Administradores do sistema (os pais da casa, por exemplo)

Usuário nivel 3: Usuários do sistema (filhos dos pais da casa).

A medida que formos discutindo o sistema, e vocês forem precisando de mais detalhes, eu vou lhes dando, pois como podem ver, é complexo e grande.

CONTO COM A AJUDA E COMPREENSÃO DE TODOS.

Postado

Belo projeto! Belo, mesmo!

Cara! A parte de interface do seu projeto é o menor problema.

Eu sou suspeito pra falar, porque pra quase tudo, a minha recomendação é MCU.

Trabalhar com a paralela é chato pacas! É melhor você enviar seus comandos todos pela serial. Coloca um MCU na outra ponta e xau, já era! Um protocolozim de comunicação e foi pra conta!

[]'s

Postado

Ta, um microcontrolador eu sei o que é, agora um MCU, eu não iria imaginar que seria a abreviação de um microcotrolador... tantas abreviações que se tem hoje, eu não vou saber ou lembrar cada uma... huahuahuauha

Mas as questões mais importante ainda não foram respondidas: "Como fazer, Por que usar, e como usar..."

Não importa se vai ser um microcontrolador, flip flop, um decodificador, pela paralela ou pela serial... O IMPORTANTE É O PROJETO FUCIONAR!!! O importante é você poder dar os comandos e os aparelhos ligarem e desligarem... vamos utilizar 15 aparelhos. então o que importa é você poder dar 30 comandos diferentes, pra ligar e desligar 15 aparelhos. 15 comandos pra ligar e 15 comandos para desligar. então a sequencia de bits que devera passar pelo circuito para ligar e desligar o dispositivo deverá ser a mesma. se 001 liga o aparelho então 001 também ira desliga-lo. o programa de voz irá identificar em qual estado esta o aparelho: se o aparelho esta ligado, e você mandar liga-lo, ele continuara ligado, se ele estiver desligado e você mandar liga-lo, ele ira ligar, e vice-versa.

Mas não importa o que será usado. o mais importante é ele fucionar.

O Maurício deu a ideia de usar um microcontrolador. Tudo bem. Mas todos concordam com ele? Alguem tem alguma outra sugestão para usar outra coisa sem ser um microcontrolador? e se tiver alguma outra opinião, então o que seria importante seria dizer porque a sugestão dele seria melhor, qual a vantagem, qual a desvantagem, E COMO FAZER O CIRCUITO.

Caso a opinião do Maurício seja a melhor maneira de se projetar o circuito para que ele realize tudo o que citei, eu gostaria também de saber qual a vantagem de utilizar um microcontrolador, qual a desvatagem pensando tambem no que se pode utilizar e desenvolver esse circuito no futuro (por exemplo: para apresentar no projeto, apenas 15 aparelhos seriam o suficiente, mas e para controlar 10 mil aparelhos de uma vez? e o tempo de resposta entre o comando dito e ele executado pelo hardware? e a capacidade que o computador e o proprio hardware deverá ter para controlar e monitorar 15 dispositivos diferentes? tudo isso deve ser levado em consideração) e o mais importante, é que eu também preciso de dicas e ajuda para FAZER O PROJETO propriamente dito.

Eu utilizo o multisim e o MMLogic para projetar circuitos. Eu precisaria de bastante ajuda para projetar um circuito como esse.

Temos de pensar também na quantidade de coisas onde um sistema como esses poderia ser empregado, e a quantidade de recursos que ainda poderiam ser adcionados a ele.

Mais adiante irei passar algumas ideias que tive que poderiam ser adcionadas nesse projeto.

OBRIGADO!

  • Membro VIP
Postado

Ranan,como o maurício disse, também concordo que usar microcontrolador é a forma mais fácil e econômica para este projeto.

Muitos aqui têm capacidade de criar um projeto desse hardware, mas a questão é como integrá-lo ao seu software. Tudo dependo do que você vai mandar para a porta paralela ou serial para que o circuito externo faça a sua parte.

Teríamos que saber exatamente o formato dos dados que seu programa vai enviar para a saída.

Enfim, não é má vontade, mas ajudar a distância é difícil mesmo para os mais experientes.

Tem que ver se há tempo hábil para vocês estudarem e programarem um microcontrolador.

Postado

Assim como o SOSCHIP disse, muitos aqui, (modéstia à parte, inclusive eu) podem fazer sem problemas o circuito e até mesmo o programa do MCU sem dificuldades, circuito de potência, porque é tudo basicamente "padrão", alguns circuitos se repetem dezenas de milhares de vezes em esquemas elétricos e acabam virando clichê...

usando protocolo de comunicação série você poderá usar centenas de aparelhos ligados à saída do hardware... imagino que o mais fácil seria ter a maioria dos interruptores e tomadas dos equipamentos ligados à um sistema central da casa de contatores ou a um PLC para trabalhar ja sem precisar de muitos circuitos de driver (ou sem nenhum circuito de driver)... o software no pc será seu maior problema infelizmente, assim que ele estiver resolvido seu problema será apenas com mau-contatos e se tiver alguma placa, soldas frias!

Dou uma dica, faça com que o seu programa de identificação de ação por voz aceite o comando e guarde-o num acumulador (variável)... DEPOIS que ele tiver funcionando você injeta isso na porta-paralela ou na serial... mas primeiro arranje o programa funcionando assim "80%" que seus problemas estarão "semi" resolvidos

Postado

Ranan

Seguindo as suas indicações e se o objectivo é académico e como tal testar o princípio de funcionamento de todo o projecto , julgo que poderia usar circuito bem simples.

Um simples encoder controlado pela porta paralela e os decoders respectivos para cada dispositivo a controlar.

Os 8 bits da porta paralela são mais que suficientes para controlar 15 ou mais dispositivos.

Veja por exemplo os mais simples :

Encoder MC145026

Decoder MC145027

No site que indiquei tem lá tudo no projecto "LPTWIRELESS módulos RT4 e RR3 " , incluindo programas para testar.

http://www.rogercom.com/

Postado

Antes de tudo, venho agradecer a todos pela ajuda e empenho.

Vou tentar dar outros detalhes, para ver se ajudo. La vai:

Na verdade, esse projeto que nós estamos fazendo é a implementação de um projeto ja feito por nós. A diferença do primeiro projeto, para esse que estamos implementando é que no primeiro a gente usava apenas um motor de reconhecimento de voz, que era o Microsoft speech. Nós controlavamos apenas 4 aparelhos e o circuito era analogico. Na verdade nosso circuito era basicamente esse circuito que o proprio Clube do Hardware tem para mostrar o controle de dispositivos pela porta paralela. Nós estamos implementando porque o projeto inicial ficou bom. Então resolvemos aprimora-lo pra ficar mais bonito, robusto, etc. Nessa implementação, estmos utilizando um circuito digital porque ele é bem melhor visto, do que um circuito analógico. Estamos usando 2 motores de reconhecimento nesse, porque no primeiro projeto, o reconhecimento de voz estava causando alguns erros: como Microsoft Speech fica ativo o tempo todo, reconhecendo todos os sons do ambiente, as vezes ele confundia uma palavra com a outra, então dependendo, se tivesse alguem conversando perto do microfone, as vezes o aparelho ligava sozinho, porque o Speech reconhecia a palavra dita, com o comando que foi setado nele para ligar o aparelho.

Com esse segundo motor que estamos desenvolvendo essa quantidade de erros diminui (bom, pelo menos essa é a intenção), pois mesmo que o microsoft Speech reconheça uma palavra qualquer, com um comando setado nele, o segundo motor, que é o que estamos desenvolvendo, tambem tera de reconhecer o comando. Só assim o dispositivo será ativado ou desativado.

No primeiro projeto, nós utilizando o dot net visual basic para programar e setar os comandos no microsoft speech. Nessa implementação, como o segundo motor nós mesmo que estamos desenvolvendo, nós utilizamos o matlab para programar.

Como nosso programação não tem acesso direto ao hardware do pc ou seus perifericos, então nossa programação tem de mandar o WINDOWS ativar a porta paralela.

Pelo o que sei, o que sai da porta paralela não importa, o que importa é por qual porta paralela sai. Na programação, nós realmente SETAMOS os pinos que nós queremos que saiam os dados. É tanto que se a gente desse o comando pra sair pela porta 2, e o dispositivo estivesse na porta 3, ele não ligava. Mas se a gente colocasse qualquer dispositivo na porta 2, ele ligava.

Por exemplo: se o comando "Ligar ventilador" fosse setado no pino 2, mas o ventilador ficasse a gente ligasse o ventilador no pino 3, não acontecia nada. Todos os outros dispositivos que estivessem nas outras portas continuariam da mesma forma, sem alterar seu formato. Se ligassemos o ventilador no pino 2 e dessemos o comando, apenas o ventilador ligava. Mas se fosse colocado uma lampada no pino 2 e o ventilador no pino 3 e repetissemos o comando "Ligar ventilador", apenas a lampada acenderia, e o ventilador e todos os outros dispositivos permaneceriam sem alteraçã. Isso porque "ligar ventilador" estava setado no pino 2, e ao receber o comando "ligar ventilador", todo o dispositivo que estivesse no pino 2, e apenas no pino 2, ativaria.

Ou seja, no caso dessa implementação que estamos desenvolvendo, ficaria mais ou menos assim:

pino 2 == ligar ventilador/desligar ventilador

pino 2 == acender luz sala1/apagar luz sala1

ligar ventilador/desligar ventilador = 001

acender luz sala1/apagar luz sala1 = 010

pino 3 == acender luz sala2/apagar luz sala2

pino 3 == acender luz sala3/apagar luz sala3

acender luz sala2/apagar luz sala2 = 011

acender luz sala3/apagar luz sala3 = 100

a programação ficará mais ou menos assim. Então um unico pino receberia 4 comandos diferentes: 2 pra ligar e desligar um aparelho e os outros 2 para ligar e desligar outro aparelho. Tanto o comando para ligar quanto para desligar o aparelho receberiam a mesma sequencia de bits. No mesmo pino passaria 2 sequencias diferentes de bits, e um unico pino controlaria dois aparelhos diferentes. Então pelo que vejo, não importa o que vai sair pela porta paralela, e sim como fazer chegar a sequencia correta de bits em cada saida correspondente.

Tomara que esses detalhes tenham ajudado. obrigado

Postado

Se usar o tipo de encoder/decoder como os que citei vai ser mais simples.

Cada comando pode corresponder a um código de 8 bits apenas .

O seu programa apenas precisa de enviar para a porta paralela esse byte , sem ter que transformar em série .

O próprio encoder faz essa operação , o decoder do receptor faz a operação inversa.

Cada linha da porta paralela liga a linha de controlo do encoder.

Colocando um byte na porta paralela faz o encoder transmitir o codigo respectivo, apenas com uma operação de escrita na porta paralela.

A definição do código de cada aparelho a ligar pode ser a que desejar.

Veja a página que indiquei que vai ver como pode ser simples controlar 32 aparelhos diferentes com esse circuitos.

E se desejar controlar mais de 32 aparelhos pode facilmente chegar a 96 .

Explorando todas as possibilidades do encoder e da porta paralela pode chegar a muito maior número de aparelhos a comandar.

Exemplo :

Ligar o aparelho 1 > byte 1000 0001

Desligar o aparelho 1 > byte 0000 0001

Ligar o aparelho 2 > byte 1000 0010

Desligar o aparelho 2 > byte 0000 0010

Ligar o aparelho 3 > byte 1000 0011

Desligar o aparelho 3 > byte 0000 0011

...

...

...

Postado

No caso, ao invés de usar um 1 byte, não seria mais fácil fazer com 4 bits? já que o mesmo comando que vai ligar o aparelho, tambem ira desliga-lo? porque no exemplo acima, o comando que liga e desliga o mesmo dispositivo usam bytes diferentes, mas não daria pra ligar e desligar usando os mesmos bits?

E usando o encoder e decoder, como seria o circuito?

Alguem tem alguma outra ideia alem de usar o encoder e decoder?

VOU APROVEITAR PARA POSTAR A IDEIA BASE DESSE SEGUNDO PROJETO QUE ESTAMOS DESENVOLVENDO.(IMPLEMENTAÇÃO)

OBJETIVOS:

- Criar um sistema de interação “usuário e máquina”: Utilizar um sistema onde você aplica um comando e o sistema abre um leque de opções, onde essas opções são oferecidas por uma voz (que no caso seria do sistema).

- Criar um cadastro de usuários: Criar um cadastro de usuários por nível: do nível 1, 2, e 3. Os usuários do nível 3, seriam os programadores e criadores do projeto. Teriam acesso ilimitado ao sistema, poderiam criar todos os outros níveis de usuário e fazer todo o tipo de mudança que quiserem, tanto na utilização quando na estrutura física e lógica do sistema. Os usuários do nível 2, seriam os administradores do sistema. Teriam pequenas restrições, poderiam criar apenas usuários do nível 1 e fazer apenas modificações de como utilizar o sistema. Os usuários do nível 1, não poderiam criar nenhum usuário, seriam os mais restritos e não poderiam fazer nenhum tipo de modificação. O sistema iria dar preferência ao nível de hierarquia do usuário: Caso um usuário de um nível mais baixo dê algum comando, e um usuário de um nível mais alto não aceite, ou rejeite este comando, o sistema irá aceitar o comando passado pelo usuário do nível mais alto.

- Criar um sistema digital, para colocar aparelhos mais sofisticados, como tv.

- Criar um nome para o sistema.

- Criar uma palavra chave para o sistema iniciar cada comando. Ex: palavrachave acender luz sala 1.

- Introduzir outras formas de repassar os comandos, como por exemplo via bluetooth e via internet: Ex: Colocar um celular para se comunicar com o sistema e através dele realizar os comandos.

- Criar pacotes: Ex: ambiente de festa, onde as luzes piscam aleatoriamente simulando um ambiente de festa.

Postado
No caso, ao invés de usar um 1 byte, não seria mais fácil fazer com 4 bits? já que o mesmo comando que vai ligar o aparelho, tambem ira desliga-lo? porque no exemplo acima, o comando que liga e desliga o mesmo dispositivo usam bytes diferentes, mas não daria pra ligar e desligar usando os mesmos bits?

Salve, Ranan.

Não. Não, é. Com 4 bits você só consegue controlar 16 dispositivos.

Como o pessoal já explicou, o interessante é que cada dispositivo externo que você for controlar, tenha o seu código de ativação/desativação, conforme as dicas do Zurca. É mais simples dessa forma!

Com 8 bits, você pode, teoricamente, ligar e desligar até 128 dispositivos, usando D7 para marcar a operação p. ex:

0000 0000 ==> desliga dispositivo 1;

1000 0000 ==> liga dispositivo 1;

Sacou?

Utilizar um MCU é mais prático, no seu caso, porque MCUs já apresentam em um único integrado, praticamente tudo o que você precisa pra fazer atividades de controle. Por isso é que o nome do cara é "microcontrolador", eheheheheheh

MCUs já apresentam canais de comunicação em vários padrões, temporizadores e diversos pinos de entrada/saída, usados exatamente para controlar dispositivos externos.

O único inconveniente, é que você precisa tb, saber programá-los.

Com MCU e serial, com 3 fios você controla infinitos dispositivos.

Sem usar MCU, o site do Rogério tem várias interfaces utilizando as portas: serial, paralela e até mesmo USB. Dá uma olhada lá!

[]'s

Postado

Ranan

Compreendo e posso concordar que em condições diferentes o uso de MCU pode ser a melhor hipótese.

Segundo o que Você disse não me perece realista controlar um número infinito de aparelhos .

Tem que estudar os circuitos indicados e se servem as suas necessidades.

Terá que ver o site que indiquei pois tem lá os exemplos , e se tiver dúvidas poderemos ajudar.

Pelo que indicou os circuitos que indiquei podem controlar 32 da forma bem simples.

Se desejar mais pode usar as linhas de data e controlar outros dispositivos.

Agora se não definir e estudar quer o seu projecto quer as propostas é difícil ajudar.

E claro depois cada pessoa tenta ajudar e vai dar a sua opinião , que sendo válida , é baseada em coisas que não estão bem definidas.

Resumindo :

Já definiu o seu projecto ? Torna-se difícil ajudar sobre dados que variam de dia para dia.

Já viu como funcionam os encoders/decoders ?

Já pensou na opção de microcontrolador ?

Já viu as impicações das diferentes opcões?

Note que escreveu acima :

"Não importa se vai ser um microcontrolador, flip flop, um decodificador, pela paralela ou pela serial... O IMPORTANTE É O PROJETO FUCIONAR!!! O importante é você poder dar os comandos e os aparelhos ligarem e desligarem... vamos utilizar 15 aparelhos. então o que importa é você poder dar 30 comandos diferentes, pra ligar e desligar 15 aparelhos. 15 comandos pra ligar e 15 comandos para desligar. então a sequencia de bits que devera passar pelo circuito para ligar e desligar o dispositivo deverá ser a mesma.

"

Perante isto sinceramente não vejo necessidade de usar microcontrolador , isto sem desprimor para quem indicou essa opção .

PF decida o que quer fazer e as específicaçõrs do seu projecto.

Postado

Caramba!!! O projeto já está nos datasheet dos MC45026/27/28 ...:muro:

O que mais pode ser ensinado aqui que não se possa aprender sozinho com um pouco de estudo que em 2 anos de faculdade parece que ainda não despertou interesse em praticar um pouco fora da sala de aula.

2008-06-21_193106.jpg

Postado

Agora imaginem só, se esse vai projeto vai pra frente, e a gente consegue um patrocinio, alguma coisa assim?!?! ja pensaram a quantidade de coisa que da pra se fazer com isso?!?! ja pensaram no futuro disso?

A gente começa apenas controlando alguns equipamentos. porém, mas pra frente, isso pode ser o futuro de uma casa totalmente inteligente, como se a propria casa tivesse vida.

A gente poderia criar um sistema de segurança biomédico. Onde a porta da residencia seria aberta apos o reconhecimento de retina e da voz do dono da casa. pode se colocar um sistema de microcameras em cada comodo, e quando você sai da residencia, você ativa o sistema de segurança da residencia por monitoramento de movimento: caso tenha algum movimento dentro da casa, a propria casa aciona o alarme.

você bota o mesmo tipo de programa em seu celular, sua residencia e seu carro. e atraves de uma rede wimax, você pode se conectar nos 3 dispositivos. aí você pode estar dirigindo o seu carro e conversando com uma pessoa que esta na sua residencia, atraves da microcameras instaladas nela.

você tem um jardim, e bota a sua propria casa para monitorar o seu jardim. ele faz uma analise do tamanho das plantas, mudanças ocorridas nela, etc, atraves do que você setou na programação. e um dia quando o jardim estiver grande e precisar ser podado (atraves do monitoramento feito pelo programa) ele te avisa que esta na hora de podar e abre um leque de opções das formas que você poderia podar.

você iria poder mudar os canais da sua tv por comando de voz. Com sua residencia conectada na internet atraves desse dispositivo e da wimax, pedir para sua propria residencia falar a programação de todos os canais da sua tv.

você poderia criar um servidor de dados conectado a sua residencia e sempre atualizar esse servidor. a medida que você fosse atualizando o servidor, sua casa e amprendendo cada vez mais. fazendo tudo isso atraves de uma especie de rede neural.

você poderia ativar um comando na residencia, e a medida que você fosse passando pelos comandos, as luzes acenderem no comando que você esta entrando e apagar do comando que você esta saindo.

Sua casa iria controlar a sua festa. você diria: "festa com musicas atuais". sua casa iria mudar todo o ambiente para uma festa, com luzes piscando, musicas animadas.

você poderia escolher taxas de iluminação: 10%, 50%, 90%.

poderia monitorar sua casa pelo celular, pelo carro...

HÁ UM LEQUE DE POSSIBILIDADES!!!

Postado

Menos impolgação Ranan, essa ideia ja é velha, e não é prática a menos que a implementação seja barata e a confiabilidade do sistema seja alta... na minha escola técnica todo ano aparecem pelo menos 5 projetos de casa inteligênte... isso como projeto de segundo ano, e esse ano teve 1 projeto de casa inteligênte usando RF e um controle remoto como projeto final... a quatro anos teve um de ativação por voz, e ano passado teve dois de ativação por linha telefonica, além de uma pré-programada (definia horário de luzes, calculava gasto de água, etc...) e uma autônoma que ajusta iluminação de acordo com iluminação externa, fecha janela se estiver chovendo, apaga as luzes se não tiver ninguém no recinto, acende de noite quando detecta pessoa no local (não movimento, pessoa mesmo, detecção de calor por infra-vermelho) apagava as luzes no quarto com interruptor mesmo, mas depois de tarde/noite elas acendiam automático se tivesse alguém...

esse por voz eu me lembro de um projeto assim na televisão e vi um tipo esse só que muito precário, que apenas ligava e desligava um objeto.

PORÉM, acredito eu que, se você vai usar o pc... não há necessidade de MCU nenhum, ja que o PC pode fazer o papel de tudo! não precisa de hardware, só de driver de potência e buffer, além de sensores e microfones.

  • Membro VIP
Postado

Só o fato de usar um PC já deixa de ser um projeto viável. Fiz um projeto de casa ''inteligente'' em 1988, no segundo ano de curso técnico em eletrônica. Projetos assim sempre são sucesso, mas só como apresentação em feiras.

Para ser prático, acho que cada equipamento deveria funcionar de forma independente, ou ter mini centrais de comando muito confiáveis, porque uma pane só prejudicaria um setor da casa. Já uma pane num PC controlando tudo, imaginem o resultado...

Outra coise que há de se pensar é se o comando é por reconhecimento de uma palavra para qualquer pessoa ou só daquelas que têm sua voz previamente gravada.

Também tem que se considerar que a voz da pessoa pode mudar dependendo do seu estado físico ou emocional.

Veja estes vídeos que se parecem muito com o que pretende fazer.

http://www.youtube.com/watch?v=xpxDqAotpAg

Mais exemplos:

http://www.youtube.com/results?search_query=comando+de+voz&search_type=

Postado

Vou dar a minha sugestão...

A porta paralela tem oito bits. Você pode usar parte deles como endereços, parte como dados.

Os bits menos significantes (B0, B1, B2 e B3) funcionam como endereço. Assim, você consegue endereçar vários aparelhos, conforme abaixo:

B0 | B1 | B2 | B3 | Aparelho endereçado

0 | 0 | 0 | 0 | Aparelho 1

1 | 0 | 0 | 0 | Aparelho 2

0 | 1 | 0 | 0 ! Aparelho 3

1 | 1 | 0 | 0 | Aparelho 4

0 | 0 | 1 | 0 | Aparelho 5

1 | 0 | 1 | 0 | Aparelho 6

etc...

Com um bit da parte mais significante do dado enviado para a porta paralela, você pode enviar o status para o aparelho que está sendo endereçado. Assim, se você usar o bit B4 (0 desliga o aparelho; 1 liga o aparelho), seria algo assim:

00001000 - Liga o aparelho 1

10001000 - Liga o aparelho 2

01001000 - Liga o aparelho 3

01000000 - Desliga o aparelho 3

etc...

Concordo com o que já foi sugerido antes que o uso do microcontrolador simplifica o circuito eletrônico (você usa menos componentes), mas não é obrigatório

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...