1. arping -c2 192.168.0.1
 

Se você que usa o MATLAB nunca passou pelo problema de a comunicação serial travar e ser necessário reiniciar o mesmo, pode ter certeza que vai passar isso.
Mas hoje vou deixar um dica de como desalocar o uso da serial dentro do script sem que o mesmo feche o script ou trave o uso da porta serial.

Usaremos a instrução INSTRFIND , esse comando é responsável por verificar se algum objeto está conectado a porta serial.

Para efetuar a desconexão do objeto usaremos a função FCLOSE, da seguinte forma:

  1. fclose(instrfind)

 

Abaixo deixo um fragmento do script que efetua o fechamento da porta sem efetuar o termino do script, utilizando é claro o método de tratamento de erro, conforme explique em outro post.

 

  1. %Script responsável por efetuar a conexão a porta serial
  2. %Nome do script: conecta_serial.m
  3. %Forma de uso: conecta_serial(‘COM1′)
  4.  
  5. function [ viRetorno ] = conecta_serial ( vsCom )
  6.    viControle = 1;
  7.    while(viControle == 1)
  8.       try
  9.           voSerial = serial(vsCom);
  10.           fopen(voSerial);
  11.          disp(‘Serial conectada…’);
  12.          viControle = 0;
  13.      catch
  14.          disp(‘Erro ao conectar na serial’);
  15.          fclose(instrfind);
  16.          disp(‘Serial sendo reconectada…’);
  17.         viControle = 1;
  18.      end
  19.   end %fim while
 

Formulas matemáticas no BROffice

On 22/03/2011, in TCC, by hjssena

Como acadêmico de engenharia, necessito escrever muitos trabalhos onde há a necessidade de adicionar formulas em relatórios e afins. Para facilitar o uso dessas formulas no BROffice utilizo o plugin COMPPAD. Plugin esse que adiciona uma barra (conforme a imagem abaixo) no menu, facilitando a inserção e edição das formulas.

toolbar.png

A instalação do plugin é bem simples, basta efetuar o download da ultima versão no site da comppad de extensão “oxt“.
Depois basta apenas abrir a extensão com o broffice que o mesmo já fara a instalação (não sabe com? veja aqui).

Caso tenha algum problema na instalação veja se a solução não está em: http://sourceforge.net/apps/trac/comppad/wiki/FrequentlyAskedQuestions

Abaixo deixo algumas apostilas encontradas na net para utilização do gerador de formulas.

 

Meu trabalho de conclusão de curso

On 22/03/2011, in TCC, by hjssena

Como pode ser visto no menu lateral aqui do blog onde escrevo “futuro engenheiro”, falta menos de 1 ano para que isso ocorra, mas para concretizar essa fase é necessário passar pelo TCC. E para que as coisas que estou aprendendo possa ser útil a outras pessoas, irei postando o transcorrer do trabalho, como dicas referente ao teor do TCC e ferramentas utilizadas para a sua produção.

Espero ter tempo pra postar!!!! :)

 

Dicas MATLAB – Barra de progresso

On 22/03/2011, in Matlab, by hjssena

image003.png

Enquanto matlab está sendo executado uma função por muito tempo ou em algum laço de repetição, o usuário não tem idéia de quando será concluída. Ao implementar uma barra de progresso, o usuário será capaz de ver o status da função e quando ela será concluída. Neste tutorial, você aprenderá como implementar uma barra de progresso para o seu script GUI ou em alguma função. Este comando é normalmente usado dentro de uma loop que executa um cálculo muito longo. Embora seja possível usar o waitbar, não é tão flexível como essa barra de progresso personalizado por três razões:

  1. Não mostra a percentagem concluída

  2. Não mostra tempo restante antes da conclusão

  3. Se o usuário fecha a barra, antes de esperar que ela seja concluída, ocorrerá um erro

Fonte: http://blinkdagger.com/matlab/matlab-gui-tutorial-progress-status-bar/

 

Dicas MATLAB – Tratamento de exceções

On 22/03/2011, in Matlab, by hjssena

Durante o desenvolvimento de um programa, podem existir alguns casos no qual não temos a certeza que um pedaço do código irá funcionar corretamente, ou porque acessa recursos que não existem ou porque sai de um limite esperado.

Esses tipos de situações anômalas estão incluídas no que consideramos exceções.
Abaixo segue o link da utilização dos operadores no matlab.

Fonte: http://www.mathworks.com/help/techdoc/ref/try.html

obs: Dá pra usar com a comunicação serial, pra saber se foi aberta ou não, sem terminar a execução do script com algum erro.

Segue um exemplo abaixo:
[sourcecode language="matlab"]
try
fopen(erty);
disp(Não Ocorreu um erro);
catch
disp(Ocorreu um erro);
end
[/sourcecode]

 

Dicas MATLAB – Threads

On 21/03/2011, in Matlab, by hjssena

Thread é uma forma de um processo dividir a si mesmo em duas ou mais tarefas que podem ser executadas concorrentemente.

Em diversas liguagens de programação é possivel efetuar threads utilizando modulos especificos da linguagem, onde é passado para algum modulo a função ou classe que será executada em paralelo ao programa principal.

No caso do MATLAB não é bem uma thread mas com um pouco de criatividade é possivel simular algumas caracteristicas de uma thread real. Como por exemplo efetuar visão de maquina de um robo onde o movimento do robo ocorre em um script, enquanto em outro script é efeuado a aquisição da imagem de um objeto mediante a uma camera.

Com um pouco de criatividade da pra fazer chuver.
Principalmente se usar variáveis globais, pois dessa forma da pra fazer interação entre os scripts paralelos.

Fonte: http://blogs.mathworks.com/pick/2008/05/05/advanced-matlab-timer-objects/

 

Os números de 2010

On 02/01/2011, in Diversos, by hjssena

Os duendes das estatísticas do WordPress.com analisaram o desempenho deste blog em 2010 e apresentam-lhe aqui um resumo de alto nível da saúde do seu blog:

Healthy blog!

O Blog-Health-o-Meter™ indica: Este blog é fantástico!.

Números apetitosos

Imagem de destaque

Um Boeing 747-400 transporta 416 passageiros. Este blog foi visitado cerca de 1,700 vezes em 2010. Ou seja, cerca de 4 747s cheios.

Em 2010, escreveu 9 novo artigo, aumentando o arquivo total do seu blog para 95 artigos. Fez upload de 23 imagens, ocupando um total de 3mb. Isso equivale a cerca de 2 imagens por mês.

O seu dia mais activo do ano foi 18 de outubro com 49 visitas. O artigo mais popular desse dia foi Arduino + MATLAB.

De onde vieram?

Os sites que mais tráfego lhe enviaram em 2010 foram google.com.br, linuxbsd.com.br, guiadohardware.net, twitter.com e friendfeed.com

Alguns visitantes vieram dos motores de busca, sobretudo por como instalar glade windows, acaraje turbinado, gtk dev c++, acarajé turbinado e ldmicro

Atracções em 2010

Estes são os artigos e páginas mais visitados em 2010.

1

Arduino + MATLAB outubro, 2010
3 comentários

2

Tutorial de instalação do Dev-C++ com suporte a GTK/GLADE setembro, 2007
25 comentários

3

Configurar Print server Dlink DP-300U no Cups novembro, 2007
4 comentários

4

Elevador Microcontrolado janeiro, 2009

5

Método dos Mínimos quadrados para Ajuste de Curva julho, 2008
1 comentário

 

Eclipse + Arduino

On 07/11/2010, in Arduino, by hjssena

Não é que a IDE do Arduino seja ruim, mas quando estamos desenvolvendo um projeto maior que simplesmente o piscar de um LED, particularmente sinto falta de algumas opções como auto-complete de código, browser de navegação entre funções, integração com controlador de versão entre outros.
Por isso fui atras de efetuar o desenvolvimento dos meus projetos utilizando os microcontroladores AVR em uma IDE mais completa e familiar para mim, que no caso é o Eclipse.

Segue o link de um tutorial de como utilizar o Eclipse como IDE de desenvolvimento de firmware para o Arduino.

http://www.chipkin.com/articles/using-eclipse-with-arduino-duemilanove

Observações:

1 – Para adicionar o plugin AVR-Eclipse utilizei o modo de instalação pela própria IDE.

Pela IDE Eclipse acesse:

[sourcecode language="python"]
(Help > Software Updates > Find and install… > Search for new features to install -> New Remote Site)
[/sourcecode]

E adicione os seguintes dados:

[sourcecode language="python"]
Name: AVR Eclipse Plugin
URL: http://avr-eclipse.sourceforge.net/updatesite/
[/sourcecode]

2 – Ao adicionar os dados AVR C++ Linker => Libraries foi necessário também adicionar o caminho em library path (L) onde estava a library .a que no meu caso estava dentro do RELEASE do ArduinoCore indicado no tutorial.