Você está na página 1de 9

06/01/13

Blog do Luciano Reis


Um pouco da minha vida geek e outras nerdices Incio About

Type text to search here...

Incio > Computadores e Internet > Automao Indutrial + Computao Mvel

Automao Indutrial + Computao Mvel


22/12/2008 informago Deixe um comentrio Go to comments Durante os ltimos anos venho ministrando palestras sobre diversos temas, dentre os quais: computao mvel e automao industrial. Agora, para concluir o curso de graduao em Cincia da Computao na Universidade Veiga de Almeida preciso apresentar uma monografia que, teoricamente, deve ser sobre um tema bem original. Pensei em um dos dois temas citados anteriormente, mas a oportunidade me levou a algo melhor e completamente original: a soma dos dois.

Objetivo O tema da monografia foi "Comparativo de Linguagens de Programao para Dispositivos Mveis". Depois de avaliadas as linguagens fiz um experimento com o objetivo de demonstrar o potencial da plataforma .NET para o desenvolvimento de aplicaes mveis. Ao final, o projeto consistiu da construo de um elevador que se move a partir de comandos enviados pelos telefones celulares da platia, integrando computao mvel e automao industrial envolvendo diversas tecnologias como XML Webservices, protocolos de comunicao, trfego HTTP, conexo direta via TCP/IP, comunicao serial, troca de mensagens via SMS, envio de e-mails e outras correlatas.

O Experimento Para desenvolver e implementar o projeto utilizando duas horas de trabalho por dia, durante dez dias dividimos os esforos em trs frentes distintas: Elevador Uma equipe de seis pessoas se dedicou a construir fisicamente o elevador, e fazer toda a instalao eltrica e eletrnica necessria. A maquete foi feita em madeira, possuindo 1,6m de altura por 0,7m de largura. Na parte superior, ou seja, acima do "prdio" estava toda toda o equipamento necessrio para o perfeito funcionamento do experimento:

inf ormago.wordpress.com/2008/12/22/automacao-indutrial-computacao-mov el/

1/9

06/01/13 Automao Indutrial + Computao Mv el Blog do Luciano Reis

- Motor eltrico: Para efetivamente movimentar o elevador. - Encoder ptico de 100 pulsos por volta: Conectado ao eixo do motor, envia pulsos ao microcontrolador, para que dessa forma este possa ter referncia do posicionamento atual do elevador. - Microcontrolador, que nesse caso far o papel de CLP (Controlador Lgico Programvel). Optamos pela utilizao do microcontrolador pois o mesmo est sendo lanado pela empresa que me cedeu todo o material e pessoal necessrio execuo do projeto. - Inversor para comandar o motor do elevador, variando direo e velocidade. Vale lembrar que, no experimento, o elevador ir variar a velocidade a cada chamada de andar. - Modem GSM. Em processos tradicionais a comunicao entre CLP e computador feita atravs de cabo serial conectado porta RS-232. Nesse caso, adotamos um modem que se conecta Internet atravs do canal GPRS padro de qualquer operadora GSM. Uma vez que tenha um IP vlido o modem abre um canal de escuta, no qual todo o trfego enviado quela porta direcionado para a sua porta serial que est conectada ao CLP ou microcontrolador. Para enviar as mensagens, o computador deve faz-lo diretamente sobre TCP/IP para o endereo e porta especificados e ento estas chegaro ao CLP ou microcontrolador. Logicamente perde-se no tempo de latncia, mas ganha-se na flexibilidade da comunicao sobre Internet. - Transformador de voltagem, uma vez que todo o equipamento funciona em 220V. - IHM (Interface Homem Mquina), que afixada parte superior da construo mostra informaes do microcontrolador como o IP que o modem ganhou e, na hora da exibio, o nome do solicitante, o andar e a velocidade.

Depois de montada a estrutura de madeira foi envernizada. O elevador um caixote de madeira menor que se movimenta no interior da estrutura correndo pendurado por um cabo de ao e alinhado a outros dois cabos fixos que funcionam como trilhos. O contrapeso do elevador foi feito com uma garrafa de PET cheia de gua. Dentro do pequeno caixote do elevador tambm h um peso, para que o mesmo se movimente eficientemente.

inf ormago.wordpress.com/2008/12/22/automacao-indutrial-computacao-mov el/

2/9

Automao Indutrial + Computao Mv el Blog do Luciano Reis

Software do Hardware de Controle O brilhante Bernardo Almeida desenvolveu o software de controle do microcontrolador em linguagem C++, bem como programao da EPROM utilizando linguagem Ladder. O software do microcontrolador faz a discagem pelo modem GSM e assim que est conectado Internet aciona o servio IPService criado exclusivamente para essa aplicao. Como a comunicao do referido dispositivo acontece em nvel muito baixo, no h como instalar clients de servios como No-IP ou DynDNS. Tal recurso importante para que o computador descubra qual o endereo IP do modem GSM para estabelcer a comunicao. Parece simples mas, como disse, a programao baixssimo nvel. Foi necessrio escrever a camada de comunicao HTTP para instanciar o servio. Observe o trecho de cdigo que faz isso:
{ r e s p o s t a = t r u e ; o u t p u t _ h i g h ( p i n _ c 0 ) ; b u f f [ p o n t 2 ] = 0 ; f p r i n t f ( i h m , " % s \ r " , b u f f ) ; d e l a y _ m s ( 5 0 0 ) ; f p r i n t f ( g s m , " a t + c i p s t a r t = % c T C P % c , % c 7 2 . 3 6 . 1 7 6 . 1 2 3 % c , % c 8 0 % c \ r " , 0 2 2 , 0 2 2 , 0 2 2 , 0 2 2 , 0 2 2 , 0 2 2 ) ; o k ( ) ; o k ( ) ; f p r i n t f ( g s m , " a t + c i p s e n d \ r " ) ; d e l a y _ m s ( 5 0 0 ) ; f p r i n t f ( g s m , " G E Th t t p : / / i p s e r v i c e . l a r s o f t . n e t / i p s e t . a s p x ? i d = B e c a p e H T T P / 1 . 0 \ r \ n A c c e p t :* / * \ r \ n A c c e p t :t e x t / h t m l \ r \ n \ r \ n % c " , 0 x 1 A ) ; d e l a y _ m s ( 1 0 5 0 0 ) ; f p r i n t f ( g s m , " a t + c i p c l o s e \ r " ) ; d e l a y _ m s ( 1 0 0 ) ; } b r e a k ;

A comunicao com o modem feita atravs dos tradicionais comandos "AT". No momento da conexo no h como resolver endereos atravs de DNS, por isso o comando IPStart acessa o servidor diretamente pelo IP. Na parte de IHM, o microcontrolador envia para a mesma a informao do nome da pessoa que est solicitando o andar, o andar selecionado e a velocidade que o elevador se mover.
inf ormago.wordpress.com/2008/12/22/automacao-indutrial-computacao-mov el/ 3/9

06/01/13 Automao Indutrial + Computao Mv el Blog do Luciano Reis

Tudo isso no esquecendo que, quando o elevador est movendo o encoder ptico est enviando ao microcontrolador pulsos para que, atravs desses pulsos ele saiba a posio atual. Durante este processo a CPU monotarefa do equipamento no capaz de receber informaes do modem, ou pararia de contar o movimento - Mais um importante detalhe que tinha de ser lembrado na confeco dos softwares. O desenvolvimento de toda essa camada de baixo nvel tomou todos os 10 dias de trabalho que dedicamos execuo do projeto. Detalhes tcnicos sero enviados MSDN.

Software Cliente e Servidor Pronta toda a camada de hardware descrita at agora, dediquei-me criao de alguns softwares para preparar o ambiente, todos feitos utilizando plataforma .NET: - IPService: Lembra que o microcontrolador no possui uma camada de Sistema Operacional para executar aplicativos client como o No-IP ou o DynDNS? O primeiro software para viabilizar a comunicao entre computador e modem GSM foi um gerenciador de IP Dinmico. O IPService pode ser visto funcionando utilizando os seguintes comandos (trocando <Seu Nome> pelo nome que voc inventar, sem espaos: Para setar o seu IP utilize: http://ipservice.larsoft.net/IPSet.aspx?Id=<Seu Nome> Igualmente, para descobrir qual foi o IP registrado utilize: http://ipservice.larsoft.net/IPGet.aspx?Id=<Seu Nome> - Cadastra Participantes: Programa feito para plataforma Windows para que, um digitador na entrada do evento, cadastre todos os participantes com nome, e-mail e telefone celular. Importante lembrar que este programa no faz acesso direto ao banco de dados, todas as operaes so feitas via webservice e o BD est em um servidor web. - UVA XML Webservice XML Webservice com toda a camada de negcios para manipulao do cadastro de participantes e mais um mtodo "MostraIP", que tem como parmetro o nome da estao que foi setado no IPService. Desta
inf ormago.wordpress.com/2008/12/22/automacao-indutrial-computacao-mov el/ 4/9

06/01/13 Automao Indutrial + Computao Mv el Blog do Luciano Reis

forma ser necessrio instanciar apenas um webservice na aplicao que comanda o elevador.

Software do Smartphone Agora sim chegamos ao software objetivo final deste experimento. Com a capacidade dos smartphones de rodar Windows Mobile, .NET Framework e acessibilidade Internet, fiz um programa que unifica todas as tecnologias ditas at o momento. Detalharei aqui as etapas do programa: 1. Utilizando o XML webservice, mostra a lista de participantes do evento. 2. Com o recurso IPService, conecta-se ao microcontrolador do elevador via TCP/IP. 3. Envia SMS personalizado a todos os participantes do evento. 4. Trata as SMS recebidas, e pesquisa o nmero do telefone remetente na tabela de participantes. 5. Envia comando ao microcontrolador sobre TCP/IP, informando o primeiro nome da pessoa solicitante, o andar solicitado e a velocidade do elevador. 6. Envia e-mail personalizado a todos os participantes. Com todas as caractersticas acima, o programa lana mo das seguintes tecnologias: - Consumo de XML Webservices - Conexo direta sobre TCP/IP - Manipulao de SMS - Protocolos proprietrios de comunicao - Manipulao de e-mail Depois de feitos diversos testes em laboratrio, estvamos com todo o sistema pronto para fazer o show no dia da apresentao de monografia.

A Apresentao Agora que toda a tecnologia empregada em minha apresentao j foi apresentada, posso descrever sucintamente o que foi a apresentao. Infelizmente o nico vdeo feito ficou muito ruim. No dia da apresentao tambm houveram alguns problemas com a falta de cobertura da operadora TIM no local do
inf ormago.wordpress.com/2008/12/22/automacao-indutrial-computacao-mov el/ 5/9

06/01/13 Automao Indutrial + Computao Mv el Blog do Luciano Reis

evento, o que levou a alguns improvisos. A apresentao havia sido ensaiada para acontecer dentro de 15 minutos, que o tempo concedido pela instituio, ento fiz tudo de forma bem sucinta, para entrar em detalhes depois, no tempo das perguntas. Mesmo com todos os problemas e imprevistos acontecidos no dia consegui atrasar apenas 5 minutos conseguindo assim a nota mxima. Vou detalhar como foi o ensaio: O pblico que ia chegando era cadastrado por um recepcionista que estava com um notebook conectado a Internet via rede de telefonia celular. Lembre-se que nosso assunto era computao mvel, ento tudo remetia a essa idia. Nos cinco primeiros minutos eu fiz a introduo e a concluso da palestra utilizando apenas dois slides de Power Point, nos quais se lia somente "Introduo" e "Concluso". Neste tempo narrei as diversas plataformas de computao mvel e, na concluso valorizava o Java por sua extrema portabilidade e o .NET por extrair todo o poder computacional de um dispositivo mvel. Ainda neste tempo, peguei um telefone dos modelos mais antigos da platia e mostrei que Java muito portvel e que poderia utilizar essa plataforma para desenvolver software para aquele aparelho obsoleto, mas se fizesse um programa em Java que explorasse as sofisticadas capacidades grficas dos novos dispositivos, ento a portabilidade seria comprometida, visto que aquela aplicao no rodaria no aparelho antigo. De uma certa forma, mostrei que a plataforma propicia portabilidade, mas que no a soluo dos problemas da humanidade. Logo no incio do prximo bloco de 5 minutos eu simplesmente saa da sala. Alegando que iria perguntar alguma coisa ao digitador que ficou l na entrada. Detalhe importante: antes de comear a palestra eu pedia que todos deixassem seus celulares ligados e com volume, porque eu iria envia "uma" SMS para "algum". Enquanto saa, discretamente dava o comando de disparo de SMS, que enviava a seguinte mensagem para cada um dos participantes: <Fulano>, vamos aproveitar que o Luciano saiu da sala para fazermos uma brincadeira. Responda com um numero e o elevador se movera ate ele. No filme "O Passageiro do Futuro" (The Lawnomer Man), o vilo faz uma promessa que, se conseguir penetrar na rede mundial de computadores, ele faria todos os telefones do mundo tocarem a meia-noite para comemorar sua vitria. Foi isso que aconteceu naquela sala. Quando eu cheguei do lado de fora, os celulares tocaram todos quase ao mesmo tempo. Foi uma sinfonia da vitria. A cano ficou completa com o rudo do elevador se movendo para cima e para baixo em diferentes velocidades, fruto das respostas das mensagens do participantes. Com isso eu voltava para a sala e comentava o que estava acontecendo. O ltimo bloco de cinco minutos foi dedicado a mostrar e explicar cdigo fonte do programa, demonstrando a simplicidade com a qual todas aquelas tecnologias foram mescladas, dando nfase que "um telefone celular" havia aberto um canal de comunicao TCP/IP direto com um dispositivo embarcado, e que a comunicao entre eles estava acontecendo com base em um protocolo proprietrio. Rapidamente demonstrei no cdigo fonte o uso de Regular Expressions (estava validando os e-mails da lista), o uso da coleo de "Parameters" de um objeto SQLClient, o uso de For Each para colees de objetos e mais algumas gracinhas Encerrava minha participao informando aos participantes que, para ler o material tcnico referente a apresentao, deveriam baixar do meu site. "Ah! Mas ningum precisa anotar o meu site, porque o smartphone agora vai enviar para todos vocs um e-mail com todos os meus dados", e durante essa frase, corria um barra de progresso mostrando o envio de e-mails.
inf ormago.wordpress.com/2008/12/22/automacao-indutrial-computacao-mov el/ 6/9

06/01/13 Automao Indutrial + Computao Mv el Blog do Luciano Reis

O feedback de aplausos da platia mostrava que meu dever estava cumprido. Agora, meu prximo passo, ser publicar artigos referentes ao experimento na MSDN. Abraos e at l.

About these ads

Gostei Seja o primeiro a gostar disso. CategoriasComputadores e Internet Comentrios (5) Trackbacks (0) Deixe um comentrio Trackback 1. Kelly 25/12/2008 s 22:48 | #1 Comentar | Citao Foi linda sua apresentao, o tema tambem foi timo, parabns pela sua vitria, que cada dia mais o Senhor possa lhe abenoar com mais e mais vitrias. Te amo Anjinho 2. JULIANA 29/12/2008 s 20:08 | #2 Comentar | Citao
inf ormago.wordpress.com/2008/12/22/automacao-indutrial-computacao-mov el/ 7/9

06/01/13 Automao Indutrial + Computao Mv el Blog do Luciano Reis

Adorei saber que h pessoas que estudam seriamente o conceito de mobilidade envolvendo tecnologias Microsoft.Na minha opinio o seu projeto devia ser expandido no sentido de controle de peso de pessoas no elevador e tambm no sentido de deixar o elevador mais seguro contra acidentes . 3. Eduardo 29/12/2008 s 20:12 | #3 Comentar | Citao Show de Bola camarada, muito bem bolado o seu projeto, de qualidade mesmo. Est merecendo um imagine cup ;). 4. Ramon 13/01/2009 s 11:08 | #4 Comentar | Citao Muito Legal!!! As pessoas ainda no tem a devida viso da mobilidade. Congratulations!!! 5. Jonathan 27/01/2009 s 14:52 | #5 Comentar | Citao Ol Luciano, finalmente consegui terminar de ler todo o contedo do seu post. Sua monografia certamente a melhor que a UVA j viu at hoje, pelo menos na informtica. Parabns, continue trazendo mais novidades e solues pra gente.Abraos, Jonathan 1. Nenhum trackbacks ainda.

Deixe uma resposta


Escreva o seu comentrio aqui...

Community Launch: Virtualization Passeio Ciclstico Igreja Batista do Recreio 2008 RSS feed

inf ormago.wordpress.com/2008/12/22/automacao-indutrial-computacao-mov el/

8/9

06/01/13

ltimos Posts
As Mentiras da Apple As 16 Pontes Mais Incrveis do Mundo Dicas para Aprovao na ACL do Windows 8 Protegido: A Fragilidade do Windows Live ID Como um engenheiro conta histria para o filho dormir Instalando o Windows em um VHD Entrevista para o Jornal Atual em 15/03/2012 Campus Party Brasil 2011 Campus Party Brasil 2011Preliminares Sorteio de Natal do Baboo

Twitter Luciano
As Mentiras da Apple wp.me/p15Ivn-8k 6 days ago I favorited a @YouTube video youtu.be/ctLZE6HoiD4?a [1080p] Rihanna Live at iHeartRadio Festival 2012 (Las Vegas) 21.09.2012 Full HD 1 week ago I liked a @YouTube video youtu.be/ctLZE6HoiD4?a [1080p] Rihanna Live at iHeartRadio Festival 2012 (Las Vegas) 21.09.2012 Full HD 1 week ago I favorited a @YouTube video from @rihannaviddy youtu.be/-23XWDTb3Dw?a HD Rhianna Diamonds LIVE Victoria's Secret Fashion Show 2012 1 week ago I favorited a @YouTube video youtu.be/OV13VLjOYTU?a VS Angels Try to Sing "Jingle Bells" (Holiday 2011) 1 week ago I liked a @YouTube video youtu.be/OV13VLjOYTU?a VS Angels Try to Sing "Jingle Bells" (Holiday 2011) 1 week ago Topo WordPress Blog no WordPress.com. Tema: INove por NeoEase.

inf ormago.wordpress.com/2008/12/22/automacao-indutrial-computacao-mov el/

9/9