collapse

* Posts Recentes

Amplificador - Rockboard HA 1 In-Ear por almamater
[Ontem às 19:13]


O que é isto ? por KammutierSpule
[26 de Março de 2024, 19:35]


Bateria - Portátil por almamater
[25 de Março de 2024, 22:14]


Emulador NES em ESP32 por dropes
[13 de Março de 2024, 21:19]


Escolher Osciloscópio por jm_araujo
[06 de Fevereiro de 2024, 23:07]


TP4056 - Dúvida por dropes
[31 de Janeiro de 2024, 14:13]


Leitura de dados por Porta Serie por jm_araujo
[22 de Janeiro de 2024, 14:00]


Distancia Cabo por jm_araujo
[08 de Janeiro de 2024, 16:30]


Meu novo robô por josecarlos
[06 de Janeiro de 2024, 16:46]


Laser Engraver - Alguém tem? por almamater
[16 de Dezembro de 2023, 14:23]

Autor Tópico: visual basic + arduino  (Lida 17676 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline dio123

  • Mini Robot
  • *
  • Mensagens: 1.032
visual basic + arduino
« em: 29 de Março de 2010, 14:49 »
bem  gostaria de saber se alguem já conseguiu com o visual basic criar um programa que comunique com o arduino atraves do cabo usb?
se sim alguem me pode umas luzes

já vi este site mas ainda nao consegui fazer nada.
http://www.acraigie.com/programming/firmatavb/firmatavb_downloads.html   

agradecia

Offline jp_

  • Mini Robot
  • *
  • Mensagens: 188
Re: visual basic + arduino
« Responder #1 em: 29 de Março de 2010, 15:44 »
Pois também eu queria... quer seja com arduino quer seja com outr micro qualquer...
imagina que estou a estudar VB.net ou VB2008 e pedi ao Prof que me ensina-se como comunicar com a porta «COM» e nada.
No livro de visual tem lá um capiulo dedicado ao System.IO mas resume-se a saber quantas portas tem o PC relativamente ao que interessa enviar e receber pelas portas parece que é coisa muito complicada porque nem faz parte do conteudo do livro.
depois dizem mal dos alunos, na minha opinião são um espelho dos formadores...

jp_

Offline Ricardo

  • Mini Robot
  • *
  • Mensagens: 110
Re: visual basic + arduino
« Responder #2 em: 29 de Março de 2010, 15:51 »
Boas.

Nas brincadeiras que tenho feito com o arduino, tenho utilizado o VB.net (vs 2008) sem problemas de maior.
Tudo se resume à utilização do objecto SerialPort com uma ou outra configuração especifica, e receber e enviar dados pela porta serie associada.

Vou tentar encontrar um programa simples para por aqui.

Offline delphi

  • Mini Robot
  • *
  • Mensagens: 217
Re: visual basic + arduino
« Responder #3 em: 29 de Março de 2010, 16:45 »
www.saborapalco.com - Companhia de Teatro Amador
www.megavaquinha.com - Uma mega aposta no euromilhões de um grupo de mega amigos

Offline msr

  • Mini Robot
  • *
  • Mensagens: 798
Re: visual basic + arduino
« Responder #4 em: 29 de Março de 2010, 19:17 »
Tenho 2 posts mais ou menos sobre isto no meu blog:
http://bravomofo.blogspot.com/search/label/Arduino

Foi feito em C# mas é muito facilmente adaptável a VB. Dá uma vista de olhos no código que disponibilizo!

Offline y0d3t0

  • Mini Robot
  • *
  • Mensagens: 13
Re: visual basic + arduino
« Responder #5 em: 30 de Março de 2010, 21:59 »
eu tenho andado a trabalhar com visual basic para controlar o arduino e é muito simples...

deixo aqui como o fiz

apenas precisas do
-visual basic
-firmataVB.extended
-e do programa que vem com o arduino, o skecth


no skecth inseres um exemplo  =  Examples>Firmata>Standarfirmata , fazes upload...

2º abres o firmata no visual basic, carregas em play abre aquele painel com os controles, defines a porta e as rates > conect

depois é sempre a andar

Boa Sorte




Offline dio123

  • Mini Robot
  • *
  • Mensagens: 1.032
Re: visual basic + arduino
« Responder #6 em: 31 de Março de 2010, 19:01 »
y0d3t0, como disseste não consegui fazer nada.
Standarfirmata passei para o arduino, mas depois com o programa aberto no vb , configuro a porta e as rate no 115200.
O led rx do arduino pisca mas depois nao acende o led 12 que tenho ligado no arduino.

qual e a diferença entre visual basic e visual basic.net, e que na wikipedia não me exclareceu esta duvida
« Última modificação: 31 de Março de 2010, 19:04 por dio123 »

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: visual basic + arduino
« Responder #7 em: 31 de Março de 2010, 21:03 »
Desce o baud rate para 9600 e certifica-te que é igual no arduino e no teu programa em VB.
Avr fanboy

Offline dio123

  • Mini Robot
  • *
  • Mensagens: 1.032
Re: visual basic + arduino
« Responder #8 em: 08 de Abril de 2010, 10:40 »
bem já consegui fazer com o visual basic 6.0 e o visual basic 2008 comunica-se com o arduino.
Estou a preparar um pequeno projecto, e depois vou por aqui como tutorial.

tenho um lcd de 14 pinos que é o HD44780A00, mas estive a experimentar uns exemplos que o programa arduino trás, mas tenho uma pequena duvida:

no exemplos- LiquidCrystal- SerialDisplay-  o programa apenas escreve na 1º linha e eu gostaria de escrever  nas duas linhas, já comecei por tentar escrever só na 2ºlinha mas ainda nao consegui.?

Alguem sabe como fazer?

agradecia
 

Offline Pedro Ferrer

  • Mini Robot
  • *
  • Mensagens: 35
Re: visual basic + arduino
« Responder #9 em: 28 de Outubro de 2010, 15:46 »
Boa tarde

Enviar info usando o VB6 para o Arduino até foi fácil, usando o objecto MScomm1...
Agora a grande questão é receber a info correcta por parte do Arduino... dá-me caracteres esquisitos... tipo "o\".
Alguém sabe, usando o VB6 receber dados de forma correcta por parte do Arduino?

Grato pela atenção
Pedro Ferrer

Offline GnGz

  • Mini Robot
  • *
  • Mensagens: 665
Re: visual basic + arduino
« Responder #10 em: 28 de Outubro de 2010, 16:36 »
Sim é por serial ... facil mesmo...

Offline Pedro Ferrer

  • Mini Robot
  • *
  • Mensagens: 35
Re: visual basic + arduino
« Responder #11 em: 28 de Outubro de 2010, 16:51 »
Boa tarde

Sim... enviar é fácil... o receber correctamente é que está complicado...
Alguém sabe a forma correcta?

Grato pela atenção
Pedro Ferrer

Offline GnGz

  • Mini Robot
  • *
  • Mensagens: 665
Re: visual basic + arduino
« Responder #12 em: 28 de Outubro de 2010, 17:16 »
Sim receber é mais dificil... ainda nao percebi muito bem...

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: visual basic + arduino
« Responder #13 em: 28 de Outubro de 2010, 22:14 »
Depende do que queres receber, que quantidade de bytes vais receber, e como queres tratar os dados, dá mais informação sobre os teus problemas.
Avr fanboy

Offline Pedro Ferrer

  • Mini Robot
  • *
  • Mensagens: 35
Re: visual basic + arduino
« Responder #14 em: 29 de Outubro de 2010, 08:31 »
Bom dia

Graças a umas dicas daqui e dali, já recebo correctamente a info proveniente do Arduino!

#NO VB6

'\\
Private Sub Form_Load()

With MSComm1 'sets up COM settings
    .Handshaking = 0
    .RThreshold = 1
    .RTSEnable = False
    .CommPort = 2
    .Settings = "9600,n,8,1"
    .DTREnable = False
    .PortOpen = True
End With

End Sub

'\\BOTAO PARA ENVIAR INFO ARDUINO
'\\VAMOS ENVIAR A LETRA 'T'
Private Sub Command10_Click()

Me.Text1 = ""
MSComm1.Output = "T" + Chr(13)

End Sub

'\\
Private Sub MSComm1_OnComm()

Dim ReceivedData As String
Dim Command As String
Dim strDump As String
Dim strChr As String

Do While MSComm1.InBufferCount > 0
    If MSComm1.InBufferCount > 0 Then 'check for something in buffer
        strChr = MSComm1.Input ' copy to string
        If Asc(strChr) = 13 Then ' end if string
            Exit Do
        ElseIf Asc(strChr) = 10 Then ' remove chr(10) from string
        Else
            strDump = strDump & strChr ' connect chr to string
        End If
    End If
    DoEvents
Loop

ReceivedData = strDump
Dim i As Integer
For i = 1 To Len(ReceivedData)
    If Mid(ReceivedData, i, 1) = vbCr Then
        Command = Mid(ReceivedData, 1, i)
        ReceivedData = Mid(ReceivedData, i + 1, Len(ReceivedData))
    End If
Next i
Me.Text1 = Me.Text1 & ReceivedData

End Sub


#NO ARDUINO
int command = 0;

void setup() {
  Serial.begin(9600);
}

void loop() {     
if (Serial.available()) {     
   command = Serial.read();
   if (command == 'T') {   
      Serial.println("TU TAS LA");
      delay(5000);
      Serial.println("TU TAVAS LA");
      command=0;
   }     
}
}

No final, na caixa de texto vamos ter "TU TAS LA" vbcrlf "TU TAVAS LA". Não se esqueçam de colocar a text1 com multiline=true...
Claro está, que agora falta fazer algo mais racional, pois a resposta que queremos do Arduino não será esta...

Abraço
Pedro Ferrer