Tutorial Arduino Matlab

8
Arthur Schuler da Igreja Página 1 TUTORIAL ARDUINO + MATLAB 1 INTRODUÇÃO Tutorial referente à integração entre a plataforma de desenvolvimento de projetos embarcados Arduino e o software Matlab. Ao realizar tal integração o Arduino torna-se uma interface de entradas e saídas digitais e analógicas para o Matlab com código otimizado. Com isso o projetista pode contar com todos os recursos de programação e Toolbox do Matlab e Simulink e rapidamente realizar testes com sensores e atuadores. Além disso, com o uso de Shields, que são expansões acopladas no Arduino, o projeto pode ganhar funcionalidades como controle de servo- motores, motores de passo, controle de displays gráficos, dentre outros. Figura 1 Arduino versão duemilanove. 2 ARQUIVOS NECESSÁRIOS São necessários dois pacotes de arquivo: Kit de programação para o Arduino e drive de comunicação e o Kit de interface com o Matlab. O primeiro pode ser obtido em (http://arduino.cc/en/Main/Software ) com versões disponíveis para Windows, Mac e Linux sendo que as versões passadas continuam disponíveis caso aconteça algum problema de compatibilidade. Para o presente tutorial foi utilizada a versão Arduino 0022. Figura 2 Download do Kit de programação e drive de comunicação.

description

Arduino comunicar com matlab

Transcript of Tutorial Arduino Matlab

Arthur Schuler da IgrejaPgina 1 TUTORIAL ARDUINO + MATLAB 1INTRODUO Tutorial referente integrao entre a plataforma de desenvolvimento de projetos embarcados Arduino e o software Matlab. Ao realizar tal integrao o Arduino torna-se uma interface de entradas e sadas digitais e analgicas para oMatlabcomcdigootimizado.Comissooprojetistapodecontarcomtodos osrecursosdeprogramaoeToolboxdoMatlabeSimulinkerapidamente realizar testes com sensores e atuadores.Almdisso,comousodeShields,quesoexpansesacopladasno Arduino,oprojetopodeganharfuncionalidadescomocontroledeservo-motores, motores de passo, controle de displays grficos, dentre outros. Figura 1 Arduino verso duemilanove. 2ARQUIVOS NECESSRIOS Sonecessriosdoispacotesdearquivo:Kitdeprogramaoparao Arduino e drive de comunicao e o Kit de interface com o Matlab. O primeiro podeserobtidoem(http://arduino.cc/en/Main/Software)comversesdisponveis paraWindows,MaceLinuxsendoqueasversespassadascontinuam disponveiscasoaconteaalgumproblemadecompatibilidade.Parao presente tutorial foi utilizada a verso Arduino 0022. Figura 2 Download do Kit de programao e drive de comunicao. Arthur Schuler da IgrejaPgina 2 OKitdeinterfacecomoMatlabpodeserobtidoem (http://www.mathworks.com/academia/arduino-software/arduino-matlab.html),paraque odownloadsejafeitonecessrioqueousuriopossuaumacontana Mathworkssendoqueocadastrogratuito.ValelembrarqueoMatlabdeve ser da verso 2008a ou superior. Figura 3 Download do Kit de interface com o Matlab. 3INSTALAO DO ARDUINO AoconectaroArduinoemumaportaUSBdocomputador,eleno reconhecido automaticamente e a seguinte tela surgir: Figura 4 Assistente para adicionar hardware no Windows. Deve-se selecionar a opo No, no agora na primeira tela, clicar em Avanar,selecionaraopoInstalardeumalistaoulocalespecfico (avanado) e clicar em Avanar. Naprximateladeve-semarcaraopoIncluirestelocalna pesquisa:, e clicar em Procurar conforme a Figura 5. Arthur Schuler da IgrejaPgina 3 Figura 5 Instalado drive para o Arduino. Em seguida deve-se selecionar a pasta arduino-0022/drivers/FTDI USB Drivers que foi baixada anteriormente do site do Arduino e confirmar em OK, em seguida, clicar em Avanar. O processo de instalao deve continuar at que a tela da Figura 6 aparea. Figura 6 Drive instalado com sucesso. Umnovopedidodeinstalaoaparecerondetodosospassos anterioresdevemserrepetidoseumatelasimilarvistanaFigura6surgir confirmando a instalao de uma porta serial. Arthur Schuler da IgrejaPgina 4 4DOWNLOAD DO DRIVER PARA MATLAB NO ARDUINO necessriogravarumarquivoparaqueoArduinovireumainterface comandadapeloMatlab.Paraissodeve-seacessarapastaarduino-0022e executar o arquivo arduino.exe. Figura 7 Interface de programao do Arduino. EssainterfaceJavaresponsvelpelodesenvolvimentodesistemas queficamembarcadosnoArduinoejcontmumasriedeprojetosde exemplo.ParagravarabibliotecadoMatlabdeve-seacessaraopo File/OpeneprocurardentrodoKitobtidonositedaMathworks,napasta adiosrv o arquivo adiosrv.pde, sem seguida confirmar em Abrir.ParaenviaroprogramabastaclicarnobotoUploadconformea Figura 8. Figura 8 Envio do programa para o Arduino. Arthur Schuler da IgrejaPgina 5 CasooenvioforbemsucedidoamensagemDoneuploadingser exibida na barra de status do programa. Figura 9 Fim do envio. Casooenvionosejabemsucedido,deve-severificaromodelode placautilizadaemTools/BoardetambmaportaserialemTools/Serial Port. 5ADICIONANDO KIT DE SOFTWARE NO MATLAB OprimeiropassoadicionarapastaobtidanositedaMathworksno diretriopadrodoMatlab,paraissoacessa-seFile/SethPath...noMatlab. Em seguida clica-se em Add folder e seleciona-se a pasta obtida conforme a Figura 10. Figura 10 Selecionando pasta com arquivos da Mathworks. Clica-se em OK e na tela anterior em Save e finalmente em Close. Arthur Schuler da IgrejaPgina 6 6CONECTANDO AO ARDUINO ParaconectaraoArduinonecessita-sesaberqualonmerodaporta serialutilizada,paraoexemploaportaserialCOM9.NoMatlabbasta digitar: >> a=arduino('COM9') Apsumperodoondeacomunicaoaberta,aseguintetela exibida: Figura 11 Comunicao estabelecida. 6.1LEITURA DE ENTRADA DIGITAL Paraquesefaaaleituradostatusdeumaentradadigitaldeve-se informarqueopinoserumaentrada,paraoexemploissoserfeitocomo pino 4: >> a.pinMode(4,'input'); Em seguida para realizar a leitura: >> input4=a.digitalRead(4); Onde a varivel input4 recebe o valor 0 ou 1 conforme o circuito ligado na entrada 4. Arthur Schuler da IgrejaPgina 7 6.2ESCRITA DE SADA DIGITAL Amesmaconfiguraodoitemanteriordeveserfeitapormindicando queopinodesada,paraoexemploissoserfeitonopino13jqueeste pino tem um LED na placa do Arduino para testes simples. >> a.pinMode(13,'output'); Para ligar a sada: >> a.digitalWrite(13,1); Ouseja,foiindicadoqueparaasada13deseja-seonvellgico1, neste momento o LED deve acender-se. 6.3LEITURA DE ENTRADA ANALGICA Paraaleituradeentradaanalgicaopinodeveserconfiguradocomo entrada conforme item 6.1. A leitura ser feita no pino 5: >> entrada=a.analogRead(5); Ondeavarivelentradarecebeovalorcorrespondentedoconversor A/D da placa. So permitidos sinais entre 0 e 5 Volts VDC. 6.4ESCRITA DE SADA ANALGICA Paraaescritaopinodeveserconfiguradocomosadaconformeitem 6.2. Para o exemplo ser utilizado o pino 5. >> a.pinMode(5,'output'); Em seguida especifica-se o valor desejado variando entre 0 e 254 (A/D com resoluo de 8 bits). >> a.analogWrite(5,132); 6.5ENCERRANDO A COMUNICAO Concludo o uso deve-se encerrar a comunicao com o Arduino atravs do comando: >> delete(a); Arthur Schuler da IgrejaPgina 8