sábado, 7 de julio de 2012

Como controlar Arduino con visual basic 2010

 

Hoy compartiremos este proyecto que es ideal para comprender como una PC puede controlar un Arduino utilizando el puerto USB. Este proyecto te permite seleccionar el puerto de comunicación, sin la necesidad de hacer cambios en el programa de Visual Basic 2010, También puedes compilarlo y instalarlo en una memoria USB Portable y utilizarlo en cualquier computadora que no tenga visual Basic.

PCtoUSBArduinoControlPin13

Arduino Sketch


//
// By apcexpert.blogspot.com
int ledPin = 13; // the number of the LED pin
void setup() {
Serial.begin(9600); // set serial speed
pinMode(ledPin, OUTPUT); // set LED as output
digitalWrite(ledPin, LOW); //turn off LED
}

void loop(){
while (Serial.available() == 0); // do nothing if nothing sent
int val = Serial.read() – ’0’; // deduct ascii value of ’0′ to find numeric value of sent number
if (val == 1) { // test for command 1 then turn on LED
Serial.println(“LED on”);
digitalWrite(ledPin, HIGH); // turn on LED
}
else if (val == 0) // test for command 0 then turn off LED
{
Serial.println(“LED OFF”);
digitalWrite(ledPin, LOW); // turn off LED
}
else // if not one of above command, do nothing
{
//val = val;
}
Serial.println(val);
Serial.flush(); // clear serial port
}


Codigo fuente para Visual basic 2010


Imports System.IO
Imports System.IO.Ports
Imports System.Threading
Public Class PcArduinoUsbPin13OnOff
Shared _continue As Boolean
Shared _serialPort As SerialPort

Private Sub PcArduinoUsbPin13OnOff_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
ComboBox1.Items.Add(“com0”)
ComboBox1.Items.Add(“com1”)
ComboBox1.Items.Add(“com2”)
ComboBox1.Items.Add(“com3”)
ComboBox1.Items.Add(“com4”)
ComboBox1.Items.Add(“com5”)
ComboBox1.Items.Add(“com6”)
ComboBox1.Items.Add(“com7”)
ComboBox1.Items.Add(“com8”)
ComboBox1.Items.Add(“com9”)
ComboBox1.Items.Add(“com10”)
ComboBox1.Items.Add(“com11”)
ComboBox1.Items.Add(“com12”)
ComboBox1.Items.Add(“com13”)
ComboBox1.Items.Add(“com14”)
ComboBox1.Items.Add(“com15”)

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
SerialPort1.Open()
SerialPort1.Write(“1”)
SerialPort1.Close()

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
SerialPort1.Open()
SerialPort1.Write(“0”)
SerialPort1.Close()
End Sub

Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
End Sub

Private Function Val() As String
Throw New NotImplementedException
End Function

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click

SerialPort1.PortName = ComboBox1.Text ‘change com port to match your Arduino port
SerialPort1.Close()
SerialPort1.BaudRate = 9600
SerialPort1.DataBits = 8
SerialPort1.Parity = Parity.None
SerialPort1.StopBits = StopBits.One
SerialPort1.Handshake = Handshake.None
SerialPort1.Encoding = System.Text.Encoding.Default ‘very important!
End Sub

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
If SerialPort1.IsOpen = True Then
SerialPort1.Close()
End If
End Sub
End Class

———————————————————————————————————————————-

Podras bajar el archivo si desean o si tienen algun problema.

APC Expert Files

(PcArduinoUsbPin13OnOff)

6 comentarios:

Unknown dijo...

Holaa... tengo el arduino uno y el Sketch me marca error :/

APC dijo...

Para poder ayudarte, nesecito mas informacion sobre tu problema.
Me puedes escribir a apruna@gmail.com

Edgard HC dijo...

Hola, cómo podría enviar un pulso de voltaje a una electrovàlvula que no mas le de clic en un botón, mande esa señal a un determinado tiempo y luego se apague el sòlo. Gracias, muy buen blog. saludos

APC dijo...

Hola Jose edgardo, si pudieras darme mas informacion de tu proyecto te podria ayudar, quieres que sea atrabes de Visual basic o solo arduino. espero tu respuesta.
Gracias por comentar.

Unknown dijo...

hola estoy haciendo una practica para detectar la humedad temperatura (dht11) y la humedad de suelo con arduino y necesito programarlo con visual Stuido 2010. para presentarlo y me gustaria saber que codigo anexar para que me corra el programa si me pueden ayudar se los agradecere mucho. ya tengo el codigo de arduino pero no se como programarlo con visual me podrian ayudar.

Unknown dijo...

Hola quería preguntarte como puedo generar un pwm en un arduino atravez del v basic o sea necesito hacer funcionar un driver de motor paso a paso donde tengo la señal de habilitación giro y pulsos y desde V basic necesitaría decirle desde un text box cuantos pulsos le enviaré al motor o driver, gracias por tu colaboración muy bueno tu sitio.