Sei sulla pagina 1di 5

Arduíno e MATLAB

Neste tutorial iremos abordar alguns comandos básicos. Conecte seu arduíno, se tudo
foi instalado corretamente irá aparecer esta mensagem ao plugar o arduíno.

Experimente!!
Digite no console:
>>arduino
Agora digite:
>> arduinosetup
Experimente também:
>>seriallist
Lembre-se de sempre excluir os arduínos já armazenados com o comando ‘clear all’

SERIAL

Sintaxe:

>> obj = serial('porta')

>> obj = serial('porta',’NomePropriedade1',ValorPropriedade1 ,...)

Em ambientes Windows portas serão mostradas na formatação ao lado “COM13”, “COM7”.

Exemplo:

Vamos criar um objeto serial, sabendo que o arduíno está conectado na porta COM7.

ATENÇÃO DESCUBRA ONDE SEU ARDUINO ESTÁ CONECTADO COM O COMANDO ‘seriallist’

>>obj = serial(‘COM7’);

Com a adição de parâmetros

>>obj = serial('COM7','BaudRate',1200,'DataBits',7);

Se tudo der certo será criado um objeto serial que pode ser visto na janela ‘workspace’.
Funções
delete (serial) Remover objeto de porta serial da memória
fclose (serial) Desconectar objeto da porta serial do dispositivo
fgetl (serial) Ler a linha do texto ASCII do dispositivo e
descartar o terminador
fgets (serial) Leia a linha de texto do dispositivo e inclua o
terminador
fopen (serial) Conecte o objeto da porta serial ao dispositivo
fprintf (serial) Escrever texto no dispositivo
fread (serial) Ler dados binários do dispositivo
fscanf (serial) Ler dados ASCII do dispositivo e formatar como texto
fwrite (serial) Escreva dados binários para o dispositivo
get (serial) Propriedades do Objeto da Porta Serial
isvalid (serial) Determine se os objetos da porta serial são válidos
readasync Ler dados de forma assíncrona do dispositivo
serial Criar objeto de porta serial
serialbreak Enviar pausa para o dispositivo conectado à porta
serial
seriallist Lista de portas seriais conectadas ao seu sistema
set (serial) Configurar ou exibir propriedades do objeto de porta
serial
stopasync Parar operações de leitura e gravação assíncronas
clear (serial) Remover objeto de porta serial do espaço de trabalho
do MATLAB
disp (serial) Informações de resumo do objeto de porta serial
instrcallback Informação de evento quando o evento ocorrer
instrfind Ler objetos de porta serial da memória para o espaço
de trabalho do MATLAB
instrfindall Encontre objetos de porta serial visíveis e ocultos
load (serial) Carregar objetos e variáveis da porta serial no
espaço de trabalho do MATLAB
length (serial) Comprimento da matriz de objetos da porta serial
record Registre dados e informações de eventos para
arquivar
save (serial) Salvar objetos e variáveis da porta serial para
arquivar
size (serial) Tamanho da matriz de objeto da porta serial
Conhecendo as funções da SERIAL Observe que no quesito
‘Comunication State’
A função ‘serial’ vem por padrão no
‘ Status : closed ’
MATLAB, no entanto necessita de um skecth já
programado no Arduíno para controle. Conforme Isto significa que a porta se encontra
os comandos listados acima percebemos que não fechada, para isso devemos utilizar um comando
podemos controlar portas especificas. para habilitar e abrir a porta serial que se
Iniciar conexão encontra já alocada na variável ‘s’.

Conecte seu Arduino em seguida insira o >>fopen(s);


comando no Command Window.
Para encerrar a comunicação e fechar a porta
>>seriallist novamente devemos utilizar outro comando.

>>fclose(s);

Vamos agora conhecer o próximo


comando, este comando irá fazer a leitura de
dados que estão sendo emitidos na serial por um
Este comando irá listar as portas seriais sketch já predefinido no arduíno.
disponíveis conectadas ao sistema, a porta deverá
ser mostrada, em seguida como mostra a figura >>dados = fgetl(s)
acima. Este comando lê os dados da serial ‘s’ e
Agora vamos criar uma variável que irá armazena os dados na variável ‘dados’.
receber a serial conectada na porta “COM13”. A
variável ‘s’ irá receber a serial, observe o comando Exemplo 1 - Leitura:
abaixo.
Vamos elaborar um script no Arduino para
>>s = serial(‘COM13’) emitir um “Olá mundo” na serial e capturar essa
frase via MATLAB.

Script Arduíno

O próximo passo é criar um script em


MATLAB com tudo que aprendemos até agora
para exibir o valor obtido na serial.
Script MATLAB

Este script faz a leitura dos dados da serial


durante 30 segundos através do loop “while”, que
com o comando “pause” que faz uma pausa de 1
segundo a cada iteração. O comando “instrfind”
localiza todos os instrumentos implementados no
MATLAB e logo em seguida fechamos todas as
conexões existentes para evitar erros.

O resultado esperado será mostrado a seguir:

Exemplo 2- Leitura de dados do sensor e gráfico

Neste exemplo iremos plotar o gráfico da variação na entrada analógica com um


potenciômetro.

Script Arduíno Script MATLAB


Experimentos
Experimento 1 (Necessário Support Package) – Piscar Led

Neste experimento iremos emitir comando ao arduíno através do MATLAB.

1º Passo
Declare o objeto ‘arduino’ em uma variável *Resultado esperado

>> a = arduino

Agora observe que o arduino está conectado na porta


‘COM13’ e o modelo é o ‘Uno’.

2º Passo
Agora vamos usar o comando que escreve um valor em
uma porta digital.

>> writeDigitalPin(a,'D13',1);

Este comando escreve na porta digital 13 (D13) um valor alto (1), no arduíno ‘a’.
Agora experimente!!

>> writeDigitalPin(a,'D13',0);

Este comando escreve na porta digital 13 (D13) um valor baixo (0), no arduíno ‘a’.

*Resultado esperado

Led da placa acende ao utilizar o primeiro comando, e apaga ao substituir o ‘1’ pelo ‘0’.

Agora é sua vez! Escreva um script que seja capaz de piscar o led de forma
intermitente em um intervalo de 1 segundo. Dica: utilize a função pause()!

Potrebbero piacerti anche